Ejecución de Procedimientos Almacenados de Usuario en Transacciones
Configuración y uso

Ayuda: Ejecución de GBPScripts en transacciones

La funcionalidad Ejecución de Procedimientos Almacenados Particulares del Usuario en Transacciones permite ejecutar scripts SQL personalizados dentro de transacciones del sistema.
Se utiliza para agregar validaciones, actualizar datos y devolver mensajes según la lógica de negocio requerida.

Requisitos

  1. Se requiere el módulo #73. GlobalBluePoint© Scripts - Ampliación del Lenguaje del Framework WEB + otros usos .
  2. Para completar la configuración y el uso correcto, se debe leer la ayuda disponible al entrar al detalle de cada GBPScript .

Ejecución desde la API del Framework WEB

La función disponible es:

  • funScript(strScriptLabel,JSonParameters)

Recibe dos parámetros:

  1. strScriptLabel : la etiqueta del script a ejecutar.
  2. JSonParameters : un JSON con los parámetros a recuperar desde el script SQL.

Dentro del script se usa la variable:

  • @strParamOUT

Esta variable recibe el JSON de entrada y también devuelve el resultado a la API JS.

Errores posibles

Si ocurre un error, se devuelve un número menor a cero según el punto de cancelación:

  1. -4 = Error General
  2. -3 = No se encontró el Script
  3. -9 = No se retornó ningún dato desde el Script en la variable @strParamOUT

Uso con JSON

El script puede leer el JSON de entrada con OPENJSON, procesar los datos y devolver el resultado en @strParamOUT.



Ejecución de GBPScripts en transacciones ( Compras, Ventas, Pagos, Cobranzas, etc.)

La documentación contempla la ejecución de scripts dentro de transacciones usando etiquetas y variables reemplazables.

Variables disponibles

  1. @intComp_ID = ID de Compañía
  2. @intBra_ID = ID de Sucursal
  3. @intUser_ID = ID de Usuario
  4. @intProf_ID = ID de Perfil
  5. @intBra_Soh_ID = ID de Sucursal del Pedido
  6. @intSoh_ID = ID de Pedido
  7. @intDf_ID = ID de Documento
  8. @intLang_ID = ID de Lenguaje
  9. @intCt_Transaction_ID = ID de Transacción
  10. @guid = GUID
  11. @intSupplierDoc_ID = SD_ID de Movimiento de Compra
  12. @intCustSupp_ID = ID de Cliente/Proveedor
  13. @intBa_ID = ID de Sucursal
  14. @datDate1 = Fecha 1
  15. @datDate2 = Fecha 2
  16. @datDate3 = Fecha 3
  17. @datDate4 = Fecha 4
  18. @bolCHK_1 = Valor Boolean 1
  19. @bolCHK_2 = Valor Boolean 2
  20. @intValue_1 = Valor Entero 1
  21. @intValue_2 = Valor Entero 2
  22. @intSm_ID = Vendedor en página #20
  23. @intTis_ID = tis_id de tabla tbTempItemStock
  • aplica a Alta, Modificación y Baja de Items de Pedido
  • usa @guid

Ejemplo de validación

La documentación incluye un ejemplo para no permitir Guardar como Pedido si la Condición de Venta del documento asignado al GBPScript tiene ID 42.

Presionar Ayuda (?) sobre el detalle de un GBPScript en el archivo correspondiente para ver los ejemplos.   Configuración, GlobalBluePoint Scripts




Ejecución mediante Web Services

También se puede ejecutar mediante Web Services en el módulo 16 + 73 con el servicio:

  • wsBasicQuery

Métodos disponibles:

  1. wsGBPScriptExecute(ByVal strScriptLabel As String, ByVal strJSonParameters As String) As String
  2. wsGBPScriptExecute4Dataset(ByVal strScriptLabel As String, ByVal strJSonParameters As String) As XML Dataset

Contenido Relacionado