Dear All
please help me!
I use javawm. I am trying to pass a resultset to the function of java.When I convert from java to pb, it is java_resutset parameter. I want the resultset parameter of pb java_resultset = resultset of the powerbuilder. Please give me an example below how it will handle
powerbuilder
datastore ds_datastore
resultset lrs_resultset
integer li_rc
ds_datastore = CREATE DataStore
ds_datastore.dataobject = "d_data"
ds_datastore.SetTransObject (SQLCA)
IF ds_datastore.Retrieve() = -1 THEN
END IF
li_rc = ds_datastore.GenerateResultSet(lrs_resultset)
IF li_rc <> 1 THEN
END IF
JavaVM lJavaVM
EJBConnection lEJBConn
pbexcel lnv_pbexcel
Long ll_return
String ls_classpath, ls_arrnull[]
Any la_return
boolean lb_return
java_resultset ljava_resultset
lJavaVM = Create JavaVM
ls_classpath = "D:\teeeeeee\JavaClass"
ll_return = lJavaVM.CreateJavaVM(ls_classpath, False)
Choose Case ll_return
Case 1
Case 0
Case -1
MessageBox ( "", "jvm.dll was not found in the classpath.")
Return -1
Case -2
MessageBox ( "", "pbejbclient190.jar file was not found." )
Return -1
Case Else
MessageBox ( "", "Unknown result (" + String (ll_return ) + ")" )
Return -1
End Choose
If ll_return < 0 Then
Destroy lJavaVM
Return -1
End If
lEJBConn = Create EJBConnection
ll_return = lEJBConn.CreateJavaInstance( lnv_pbexcel, "pbexcel")
If ll_return <> 0 Then
MessageBox("", "CreateJavaInstance returned " +String(ll_return))
Destroy lEJBConn
Return -1
Else
Try
lb_return = lnv_pbexcel.pbresultset( ljava_resultset)
if lb_return then
MessageBox("", "ok")
else
MessageBox("", "false")
end if
Catch (CreateException ce)
MessageBox( "Create Exception", ce.getMessage() )
Return -1
Catch (Throwable t)
MessageBox(" Other Exception", t.getMessage())
Return -1
End Try
End If
java
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
public class PBExcel {
public PBExcel() {
}
public static String sayHello(String a) {
return "Hello world" + a;
}
public static boolean PBResultSet(ResultSet rs) {
boolean breturn = true;
try {
String filetext;
filetext = "C:\\Users\\BAOGA\\Desktop\\ga.text";
BufferedWriter fileWriter = new BufferedWriter(new FileWriter(filetext));
ResultSetMetaData rsmdsc = rs.getMetaData();
int numcol = rsmdsc.getColumnCount();
while (rs.next()) {
for (int colIndex = 1; colIndex <= numcol; colIndex++) {
String value = rs.getString(colIndex);
//System.out.println(value);
fileWriter.write(value);
fileWriter.newLine();
}
}
fileWriter.close();
} catch (Exception e) {
breturn = false;
}
return breturn;
}
public static void main(String[] args) {
System.out.println(PBExcel.sayHello("ggaaaga"));
}
}
Thanks!