Diferencia entre revisiones de «BEA Aqualogic BPM 5.7 (Fuego)»

De Dos Ideas.
Saltar a: navegación, buscar
(Segundo paso)
(Segundo paso)
Línea 31: Línea 31:
  
 
   logMessage("campo3: "+e["campo3"], severity : INFO);
 
   logMessage("campo3: "+e["campo3"], severity : INFO);
 +
 +
  logMessage("campo3: "+e["nombreColumna"], severity : INFO);
  
 
}
 
}

Revisión del 13:55 24 ene 2011

Comunicando con Base de Datos con PBL (Process Business Language)

Para ejecutar comandos SQL en Aqualogic BPM 5.7 hay que seguir los siguientes pasos:

Primer paso

Se debe crear nuevo "External Resource", haciendo click derecho en el directorio del proyecto "External Resources", del tipo "SQL Database". Los campos se deben completar con la información de la base de datos que queremos consultar y con un nombre significativo.

Segundo paso

Se debe crear un nuevo "BPM Object", haciendo click derecho sobre el modulo deseado en el directorio de "Catalog", y luego crear un método en nuestro objeto, haciendo click derecho sobre el objeto y seleccionando la opción "New Method". Ahora se debe editar el nuevo método, expandiendo el objeto bpm y haciendo doble click sobre el nombre del método creado. Ahora podemos editarlo e incluir el código necesario para comunicarnos con la BD a través de una clase propia de Fuego, un ejemplo de implementación puede ser el siguiente:

String queryAEjecutar ="SELECT campo1, campo2, campo3 FROM nombreTabla WHERE nombreColumna in (?,?)";

String nombreDeLaBDCreada = "NombreBD";

String[] arrayDeParametros = {"valor1", "valor2"};

Iterator iterator = DynamicSQL.executeQuery(sentence : queryAEjecutar, implname : nombreDeLaBDCreada, inParameters : arrayDeParametros);

Como se puede observar, el resultado de realizar la consulta va a ser un iterador, que luego puede ser recorrido con un "foreach".

foreach (e in iterator) {

  logMessage("campo1: "+e["campo1"], severity : INFO);
  logMessage("campo2: "+e["campo2"], severity : INFO);
  logMessage("campo3: "+e["campo3"], severity : INFO);
  logMessage("campo3: "+e["nombreColumna"], severity : INFO);

}

Ver también