X++ language supports a number of ways to execute native SQL against any SQL data source.
Note: don't forget to set RunOn Property to Server of the class. Job:
static void BillingQuery(Args _args)
{
RunSqlQuery q = new RunSqlQuery();
q.RunSqlQueryMethod();
}
Class:
class RunSqlQuery
{
}
public void RunSqlQueryMethod()
{
str sql;
Connection conn;
SqlStatementExecutePermission permission;
Statement Stmt;
ResultSet R;
str result;
;
sql = "select ACCOUNTNUM from custTable";
conn = new Connection();
permission = new SqlStatementExecutePermission(sql);
permission.assert();
Stmt = conn.createStatement();
R = Stmt.executeQuery(sql);
while ( R.next() )
{
result = R.getString(1);
}
// the permissions needs to be reverted back to original condition.
CodeAccessPermission::revertAssert();
}
Below the useful links.
http://blog.rahulsharma.in/2010/04/dynamics-ax-sqlstatementexecutepermissi.html
https://msdax.wordpress.com/2010/06/21/executing-sql-directly-from-x/
Note: don't forget to set RunOn Property to Server of the class. Job:
static void BillingQuery(Args _args)
{
RunSqlQuery q = new RunSqlQuery();
q.RunSqlQueryMethod();
}
Class:
class RunSqlQuery
{
}
public void RunSqlQueryMethod()
{
str sql;
Connection conn;
SqlStatementExecutePermission permission;
Statement Stmt;
ResultSet R;
str result;
;
sql = "select ACCOUNTNUM from custTable";
conn = new Connection();
permission = new SqlStatementExecutePermission(sql);
permission.assert();
Stmt = conn.createStatement();
R = Stmt.executeQuery(sql);
while ( R.next() )
{
result = R.getString(1);
}
// the permissions needs to be reverted back to original condition.
CodeAccessPermission::revertAssert();
}
Below the useful links.
http://blog.rahulsharma.in/2010/04/dynamics-ax-sqlstatementexecutepermissi.html
https://msdax.wordpress.com/2010/06/21/executing-sql-directly-from-x/
No comments:
Post a Comment