Comprensión de reglas de Flex Business
Flex SQL es un método de aplicación para crear activadores de base de datos (posinserción o posactualización) para validar, insertar o actualizar todos los objetos de la base de datos de Infor EAM. Flex SQL se usa manualmente a través de la definición de las instrucciones SQL*Plus o PL/SQL. La función principal de estas instrucciones es crear y actualizar los detalles de la cuenta para las transacciones de interfaz, validar transacciones para el cumplimiento de procesos comerciales y personalizar Infor EAM para que cumpla con las necesidades del proceso comercial de su organización.
La creación y actualización de los detalles de cuenta es obligatorio para cualquier transacción que se origine en Infor EAM y que será conectada a una aplicación externa (terceros). Consulte estos temas:
Definición de los requisitos de los detalles de la cuenta para el Libro Mayor de Oracle
Definición de procesos de libro mayor
Definición de referencias de libro mayor
Flex SQL debe escribirse con una sintaxis SQL*Plus o PL/SQL. SQL*Plus es la herramienta de Oracle para emitir comandos de programación a nivel de base de datos y se basa en el Lenguaje de consulta estructurado (SQL). SQL le permite insertar, actualizar, consultar o eliminar registros de la base de datos con una sintaxis del lenguaje sencilla. Las instrucciones SQL empiezan con una palabra de comando, seguida de una especificación de qué información seleccionar dentro del comando, seguida del objeto del que seleccionar la información. La consulta generalmente se termina con un punto y coma (;). Con el fin del uso de Flex SQL, el terminador de punto y coma (;) siempre debe dejarse fuera. La sintaxis se compila y ejecuta dinámicamente por lo que no se necesita el terminador.
Consulte el siguiente ejemplo de sintaxis:
insert into r5accountdetail
(acd_code, acd_rentity, acd_segment1, acd_segment2)
select rql_acd, 'REQL', '01', rql_expensetype
from r5requislines
where rowid = :rowid
Flex SQL también utiliza un segundo tipo de lenguaje de consulta estructurado llamado Lenguaje de programación/Lenguaje de consulta estructurado (PL/SQL). PL/SQL se usa para procesar comandos en bloques en vez de utilizar instrucciones SQL individuales. Los bloques son grupos de instrucciones SQL relacionadas que se han anidado en bloques más grandes, lo que le permite organizar su sintaxis SQL para realizar varios comandos de una sola vez.
Consulte el siguiente ejemplo de sintaxis PL/SQL:
DECLARE
cpar r5parts.par_code%type;
cref r5catalogue.cat_ref%type;
csupp r5companies.com_code%type;
cursor rql is
select rql_ref, rql_part, rql_supplier, rql_rstatus
from r5requislines
where rowid = :rowid;
BEGIN
OPEN rql;
FETCH rql into cref, cpar, csupp, crstat;
CLOSE rql;
IF cref is not null
AND crstat = 'A' THEN
UPDATE r5catalogue
SET cat_ref = cref
WHERE cat_part = cpar
AND cat_supplier = csupp;
END IF;
END;
Tanto el ejemplo de SQL*Plus como el de PL/SQL deben situarse en la Instrucción SQL en el formulario Flex SQL. En estos ejemplos, la tabla R5REQUISLINES se activa; el ejemplo de SQL*Plus es un activador posinserción y el ejemplo de PL/SQL es un activador posactualización.