Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

scope of variable

Nagappan Murugappan February 26, 2021

 

I am quite new to groovy scripting. I have a following code

 

def results

def dbConn ()

{

//all db connection parameters

        results = sql.rows("SELECT * FROM jira.APP_USER au WHERE LOWER_USER_NAME = 'abc'")

}

 

def sendEmail

{

//email sending parameters 

           email.setBody(results)

}

I am able to access the results variable inside the both the methods, how do i declare a variable globally so that i can access it through out the code. 

Exception  : 

ERROR [common.UserScriptEndpoint]: Script console script failed: groovy.lang.MissingPropertyException: No such property: results for class: Script754 at Script754.sendEmail(Script754.groovy:121) at Script754$_run_closure3.doCall(Script754.groovy:102) at Script754.run(Script754.groovy:62)

 

2 answers

1 accepted

1 vote
Answer accepted
Martin Bayer _MoroSystems_ s_r_o__
Community Champion
February 26, 2021

Hi @Nagappan Murugappan it will be quite simplified but it should work:

def getResults () {

//all db connection parameters

return sql.rows("SELECT * FROM jira.APP_USER au WHERE LOWER_USER_NAME = 'abc'")

}


def sendEmail() {

//email sending parameters

def results = getResults()

email.setBody(results)

}

sendEmail()
0 votes
Nagappan Murugappan February 26, 2021
Martin Bayer _MoroSystems_ s_r_o__
Community Champion
February 26, 2021

you are welcome :)

Suggest an answer

Log in or Sign up to answer