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 Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
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 Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
February 26, 2021

you are welcome :)

Suggest an answer

Log in or Sign up to answer