Script SQL

Lire une base SQL (sqlQuery)

var departement = getValue("Department");
if (departement != null) {
 var myQuery = "select BU_CODE, LIMIT from SERVICE where NAME = ' "+  departement  + " ' ";
 var tableauRes = sqlQuery("VersNorthwind", myQuery);
 if (tableauRes != null && tableauRes.length != 0) {
   setValue("BillingCode", tableauRes[0][0]);
 }
}

Lire une base SQL (executeQuery)

var requeteSQL = "SELECT TOTO FROM TABLE";
var portalModule = Packages.com.axemble.vdoc.sdk.Modules.getPortalModule();
  
var connectionDefinition = portalModule.getConnectionDefinition( iWorkflowModule.getContextByLogin("sysadmin"), "BaseProcess" );
if (connectionDefinition != null ) {
  var connection = connectionDefinition.getConnection();
  var ps = connection.prepareStatement(requeteSQL);
  var rs = ps.executeQuery();
    
  Packages.com.axemble.vdoc.sdk.Modules.releaseModule(portalModule);
  if (rs.next())   {
    var premiereValeurRetournee = rs.getString(1);
  }
}

Écrire dans une base SQL (sqlUpdate)

var champ = getValue("VDPG_ChampCommentaire");
var myQuery = "INSERT INTO HISTO VALUES (  getdate() , ' "+ champ +" ' )";
sqlUpdate("VersNorthwind", myQuery);

Astuces

  • getdate() est une fonction SQL Server qui retourne la date et l’heure
  • pour écrire une quote dans la requête, il faut la doubler : SELECT * FROM MaTable WHERE Valeur = 'C''est top chez vous !'

Source : https://wiki.myvdoc.net/xwiki/bin/view/Dev+Floor/RefScriptsSQL