Compreensão das regras empresariais do Flex

O Flex SQL é um método de aplicação usado para criar ativadores de banco de dados (post-insert ou post-update) para validar, inserir ou atualizar todos os objetos do banco de dados do Infor EAM. O Flex SQL é usado manualmente por meio da definição de instruções SQL*Plus ou PL/SQL. A função primária dessas instruções é criar e atualizar detalhes da conta para transações de interface quanto à conformidade de processos de negócios e personalizar o Infor EAM para atender às necessidades da sua organização.

Especificamente, a criação e a atualização de detalhes da conta são necessárias para qualquer transação originada no Infor EAM que será interligada ao aplicativo externo (de terceiros). Consulte estes tópicos:

Definição de requisitos de detalhes da conta para a Contabilidade geral da Oracle

Definição de processos da contabilidade geral

Definição de referências da contabilidade geral

O Flex SQL deve ser gravado em sintaxe SQL*Plus ou PL/SQL. O SQL*Plus é a ferramenta da Oracle para emissão de comandos de programação no nível do banco de dados e baseia-se em Structured Query Language - SQL (linguagem de consulta estruturada). O SQL permite que você insira, atualize, consulte ou exclua registros do banco de dados com uma sintaxe de linguagem simples. As instruções SQL começam com uma palavra de comando, seguida por uma especificação de qual informação selecionar no comando e, em seguida, o objeto do qual selecionar a informação. A consulta normalmente é encerrada com um ponto e vírgula (;). Para fins de uso do Flex SQL, o terminador ponto e vírgula (;) sempre deve ser omitido. A sintaxe é compilada dinamicamente e executada de maneira a não exigir o terminador.

Consulte o exemplo de sintaxe a seguir:

insert into r5accountdetail
                      (acd_code, acd_rentity, acd_segment1, acd_segment2)
                     select rql_acd, 'REQL', '01', rql_expensetype
                     from r5requislines
                      where rowid = :rowid

O Flex SQL também utiliza um segundo tipo de linguagem de consulta estruturada chamada Programming Language/Structured Query Language (PL/SQL). A PL/SQL é usada para processar comandos em blocos em vez de usar instruções SQL individuais. Blocos são grupos de instruções SQL relacionadas que podem ser sobrepostas em blocos maiores, o que permite a organização da sintaxe SQL para a execução de vários comandos de uma vez.

Consulte o exemplo de sintaxe PL/SQL a seguir:

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 o exemplo de SQL*Plus quanto o de PL/SQL seriam inseridos na instrução SQL do formulário do Flex SQL. Nestes exemplos, a tabela R5REQUISLINES está sendo ativada; o exemplo de SQL*Plus é um acionador post-insert, e o exemplo de PL/SQL é um ativador post-update.