[firebase-br] Procedure Do firebase no Oracle

Márcio Konrath marcio em altero.com.br
Qua Jun 21 11:51:28 -03 2006


Ola pessoal alguem sabe como fazer esta procedure que segue abaixo no Oracle 10g?
Quais comando usados como converter ela?


CREATE PROCEDURE PED_CNS_CLIENTE(
    ACLI_FANTASIA VARCHAR(20),
    ACLI_ID INTEGER,
    ATPS_ID INTEGER,
    ASIT_ID INTEGER,
    ACLI_RZSOCIAL VARCHAR(50),
    AGRA_ID INTEGER,
    ASTC_ID INTEGER,
    AGRP_ID INTEGER,
    ACLI_CGC VARCHAR(14))
RETURNS (
    CLI_ID INTEGER,
    CLI_RZSOCIAL VARCHAR(50),
    CLI_FANTASIA VARCHAR(20),
    SIT_ID INTEGER,
    SIT_NOME VARCHAR(30),
    GRA_ID INTEGER,
    GRA_NOME VARCHAR(30),
    STC_ID INTEGER,
    STC_NOME VARCHAR(30),
    CLI_ENDCIDADE VARCHAR(50),
    UF_SIGLAEND VARCHAR(2),
    GRP_ID INTEGER,
    GRP_NOME VARCHAR(50))
AS
BEGIN

    FOR SELECT
        CLI.CLI_ID,
        CLI.CLI_RZSOCIAL,
        CLI.CLI_FANTASIA,
        CLI.SIT_ID,
        SIT.SIT_NOME,
        CLI.GRA_ID,
        GRA.GRA_NOME,
        CLI.STC_ID,
        STC.STC_NOME,
        CLI.CLI_ENDCIDADE,
        CLI.UF_SIGLAEND,
        CLI.GRP_ID,
        GRP.GRP_NOME

    FROM        PED_TBD_CLIENTE CLI

    LEFT JOIN        SIS_TBS_CLIENTESITUACAO SIT
    ON        (CLI.SIT_ID = SIT.SIT_ID)

    LEFT JOIN        SIS_TBS_CLIENTEGRAU GRA
    ON        (CLI.GRA_ID = GRA.GRA_ID)

    LEFT JOIN        SIS_TBS_CLIENTESTATUS STC
    ON        (CLI.STC_ID = STC.STC_ID)

    LEFT JOIN        PED_TBD_GRUPOECONOMICO GRP
    ON        (CLI.GRP_ID = GRP.GRP_ID)

    WHERE
        (
        (CLI.CLI_FANTASIA CONTAINING :ACLI_FANTASIA OR :ACLI_FANTASIA IS NULL)
    AND
        (CLI.CLI_ID = :ACLI_ID OR :ACLI_ID IS NULL)
    AND
        (CLI.TPS_ID = :ATPS_ID OR :ATPS_ID IS NULL)
    AND
        (CLI.SIT_ID = :ASIT_ID OR :ASIT_ID IS NULL)
    AND
        (CLI.CLI_RZSOCIAL CONTAINING :ACLI_RZSOCIAL OR :ACLI_RZSOCIAL IS NULL)
    AND
        (CLI.GRA_ID = :AGRA_ID OR :AGRA_ID IS NULL)
    AND
        (CLI.GRP_ID = :AGRP_ID OR :AGRP_ID IS NULL)
    AND
        (CLI.CLI_CGC = :ACLI_CGC OR :ACLI_CGC IS NULL)
    AND
        (CLI.STC_ID = :ASTC_ID OR :ASTC_ID IS NULL)
        )

    ORDER BY
        CLI.CLI_RZSOCIAL

    INTO
        :CLI_ID,
        :CLI_RZSOCIAL,
        :CLI_FANTASIA,
        :SIT_ID,
        :SIT_NOME,
        :GRA_ID,
        :GRA_NOME,
        :STC_ID,
        :STC_NOME,
        :CLI_ENDCIDADE,
        :UF_SIGLAEND,
        :GRP_ID,
        :GRP_NOME

    DO
    SUSPEND;

end


Márcio Konrath
Depto TI - CPD - Altero Design


Mais detalhes sobre a lista de discussão lista