Thursday, October 21, 2010

Axapta : Execute SQL command

Axapta มีคำสั่ง SQL รวมอยู่ใน X++ อยู่แล้ว
แต่ถ้าอยากใช้คำสั่ง SQL อื่น ๆ เช่น ใช้ประโยชน์จาก NewID() ของ MS SQL Server เพื่อ random ก็ทำได้ ดังตัวอย่าง
static void Job3(Args _args)
{
LogInProperty Lp = new LogInProperty();
OdbcConnection myConnection;
Statement myStatement;
ResultSet myResult;
str sqlQuery;
;

sqlQuery = 'SELECT TOP 10 * FROM CustTable ORDER BY NewID()';

LP.setServer("Server");
LP.setDatabase("db");
Lp.setUsername("user");
Lp.setPassword("password");

try{
myConnection = new OdbcConnection(LP);
}
catch{
info("Check username/password.");
return;
}

myStatement = myConnection.createStatement();
myResult = myStatement.executeQuery(sqlQuery);

while (myResult.next()){
box::info(myResult.getString(1));
}
}

No comments: