...
- An org.joget.apps.form.model.FormRowSet object which contains one org.joget.apps.form.model.FormRow object.
Samples:
Load user data using jdbc.
| Code Block | ||
|---|---|---|
| ||
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.joget.apps.app.service.AppUtil;
import org.joget.apps.form.model.Element;
import org.joget.apps.form.model.FormData;
import org.joget.apps.form.model.FormRow;
import org.joget.apps.form.model.FormRowSet;
import org.joget.commons.util.LogUtil;
public FormRowSet load(Element element, String username, FormData formData) {
FormRowSet rows = new FormRowSet();
if (username != null && !username.isEmpty()) {
Connection con = null;
try {
// retrieve connection from the default datasource
DataSource ds = (DataSource)AppUtil.getApplicationContext().getBean("setupDataSource");
con = ds.getConnection();
// execute SQL query
if(!con.isClosed()) {
PreparedStatement stmt = con.prepareStatement("SELECT username, firstName, lastName, email from dir_user where username=?");
stmt.setObject(1, username);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
FormRow row = new FormRow();
System.out.println(rs.getObject("username") );
row.setProperty("username", (rs.getObject("username") != null)?rs.getObject("username").toString():"");
row.setProperty("firstName", (rs.getObject("firstName") != null)?rs.getObject("firstName").toString():"");
row.setProperty("lastName", (rs.getObject("lastName") != null)?rs.getObject("lastName").toString():"");
row.setProperty("email", (rs.getObject("email") != null)?rs.getObject("email").toString():"");
rows.add(row);
break;
}
}
} catch(Exception e) {
LogUtil.error("Sample app - Form 1", e, "Error loading user data in load binder");
} finally {
//always close the connection after used
try {
if(con != null) {
con.close();
}
} catch(SQLException e) {/* ignored */}
}
}
return rows;
}
//call load method with injected variable
return load(element, primaryKey, formData); |
Use as Form Options Binder
...
Use as Form Post Submission Processing Tool
Injected Variables:
- workflowAssignment - The workflow activity assignment object of the saving form. Null when the form is not an assignment form. (org.joget.workflow.model.WorkflowAssignment)
- pluginManager - Plugin Manager service bean for convenient usage. (org.joget.plugin.base.PluginManager)
- appDef - App definition of the process. (org.joget.apps.app.model.AppDefinition)
- request - Http Request object of current Http Request. (javax.servlet.http.HttpServletRequest)
Expected Return Object:
- None
Samples:
Use as Process Participant
Injected Variables:
- pluginManager - Plugin Manager service bean for convenient usage. (org.joget.plugin.base.PluginManager)
- workflowActivity - Workflow Activity that trying to retrieves assignee. (org.joget.workflow.model.WorkflowActivity)
Expected Return Object:
- A java.util.Collection of username in java.lang.String to be assign to the Workflow Activity.
...
Use as Process Tool
Injected Variables:
...
- workflowAssignment - The workflow tool activity assignment object. (org.joget.workflow.model.WorkflowAssignment)
- pluginManager - Plugin Manager service bean for convenient usage. (org.joget.plugin.base.PluginManager)
- appDef - App definition of the process. (org.joget.apps.app.model.AppDefinition)
- request - Http Request object of current HTTP Request. Not available if the tool is trigger by Deadline. (javax.servlet.http.HttpServletRequest)
Expected Return Object:
- None
Samples:
Use as Userview Permission
...
| Code Block | ||
|---|---|---|
| ||
try {
//do something
} catch (Exception e) {
LogUtil.error("CRM app - Backend userview", e, "Error retrieving user department in Report category permission");
} |
More samples
| Children Display |
|---|