PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Executar script com TIBQuery #383449

11/08/2010

0

Olá pessoal estou tentando executar o seguinte script via TIBQuery:

#Código
        SQL.Clear;
        SQL.Add(
                'ALTER PROCEDURE RETORNACOMPROMISSOS '+
                '( '+
                '  TIPO_PESSOA_PF INTEGER, '+
                '  TIPO_PESSOA_PJ INTEGER, '+
                '  TIPO_PESSOA_C_PJ INTEGER, '+
                '  TEXTO_ VARCHAR(100) CHARACTER SET WIN1252, '+
                '  NOME VARCHAR(100) CHARACTER SET WIN1252, '+
                '  DATA_01 DATE, '+
                '  DATA_02 DATE, '+
                '  OPCAO_01 INTEGER, '+
                '  OPCAO_02 INTEGER, '+
                '  OPCAO_03 INTEGER '+
                ') '+
                'RETURNS '+
                '( '+
                '  IDENTIFICADOR" INTEGER, '+
                '  DATA DATE, '+
                '  HORA TIME, '+
                '  TEXTO VARCHAR(30000) CHARACTER SET WIN1252, '+
                '  OPCAO INTEGER, '+
                '  PUBLICO INTEGER, '+
                '  LOGIN VARCHAR(10) CHARACTER SET WIN1252, '+
                '  QUEM VARCHAR(10) CHARACTER SET WIN1252 '+
                ') '+
                'AS '+
                'BEGIN '+
                'FOR '+
                'SELECT C.IDENTIFICADOR, C.DATA, C.HORA, C.TEXTO, C.OPCAO, C.PUBLICO, C.LOGIN, C.QUEM FROM COMPROMISSO C '+
                'LEFT JOIN PESS0A_COMPROMISSO PC ON PC.ID_COMPROMISSO = C.IDENTIFICADOR '+
                'LEFT JOIN PESSOAFISICA PF ON PF.IDENTIFICADOR = PC.ID_PESSOA AND PC.TIPO_PESSOA = :TIPO_PESSOA_PF '+
                'LEFT JOIN PESSOAJURIDICA PJ ON PJ.IDENTIFICADOR = PC.ID_PESSOA AND PC.TIPO_PESSOA = :TIPO_PESSOA_PJ '+
                'LEFT JOIN CONTATO_PJ C_PJ ON C_PJ.IDENTIFICADOR = PC.ID_PESSOA AND PC.TIPO_PESSOA = :TIPO_PESSOA_C_PJ '+
                'WHERE '+
                'C.DATA BETWEEN :DATA_01 AND :DATA_02 AND '+
                'COALESCE(C.TEXTO,'') CONTAINING :TEXTO_ AND '+
                'COALESCE(PJ.NOME,'')||COALESCE(PF.NOME,'')||COALESCE(C_PJ.NOME,'') CONTAINING :NOME AND '+
                'C.OPCAO IN (:OPCAO_01, :OPCAO_02, :OPCAO_03) '+
                'INTO :IDENTIFICADOR, :DATA, :HORA, :TEXTO, :OPCAO, :PUBLICO, :LOGIN, :QUEM '+
                'DO '+
                'SUSPEND; '+
                'END;');

        EXECSQL;
        Transacao.CommitRetaining;


Ocorre que após a execução do mesmo... vou no IBConsole ver o metadados gerado aparece assim:

#Código
ALTER PROCEDURE "RETORNACOMPROMISSOS"
(
  "TIPO_PESSOA_PF" INTEGER,
  "TIPO_PESSOA_PJ" INTEGER,
  "TIPO_PESSOA_C_PJ" INTEGER,
  "TEXTO_" VARCHAR(100) CHARACTER SET WIN1252,
  "NOME" VARCHAR(100) CHARACTER SET WIN1252,
  "DATA_01" DATE,
  "DATA_02" DATE,
  "OPCAO_01" INTEGER,
  "OPCAO_02" INTEGER,
  "OPCAO_03" INTEGER
)
RETURNS
(
  "IDENTIFICADOR" INTEGER,
  "DATA" DATE,
  "HORA" TIME,
  "TEXTO" VARCHAR(30000) CHARACTER SET WIN1252,
  "OPCAO" INTEGER,
  "PUBLICO" INTEGER,
  "LOGIN" VARCHAR(10) CHARACTER SET WIN1252,
  "QUEM" VARCHAR(10) CHARACTER SET WIN1252
)
AS
BEGIN EXIT; END
 ^


Onde estou errando?
Carlos Phelippe

Carlos Phelippe

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar