Inserir dados no banco

    //Como realizar um insert no banco de dados

    //insert data base

    //Aba de rotinas

    //---------------------------------------------------

    SUB CriarLinhasParaInsert

      //Limpando variáveis utizadas para seguir índice e criar script de inserção

      LET linha = 1;

      LET dados = '';

      //Criando índice de linhas a serem processadas

      Linhas: LOAD Concat(DISTINCT linha, ',', linha) as linhas Resident tabela;

      LET linhas = FieldValue('linhas',1);

      DROP Table Linhas;

    ENDSUB

     

     

    //***************************************************************************************************

     

     

    NULLASVALUE *;

    SET nulldisplay = 'null';

     

     

    //***************************************************************************************************

     

     

    SUB InserirLinhas

      //Percorrendo cada linha do índice criado anteriormente

      FOR Each linha in $(linhas)

      //Lendo cada linha concatenada de acordo com o índice

      LET dados = Replace(Peek('campo',$(linha)-1,'tabela'), Chr(39) & 'null' & Chr(39), 'null');

      //Inserindo a linha na base

      SQL $(linhaDados)

      VALUES (

      $(dados)

      );

      SQL Commit;

     

      LET vInsertAtual = '$(linha)' & ' / ' & NoOfRows('tabela') & ' - ' & '$(vTabela)';

     

      TRACE $(vInsertAtual);

     

      NEXT

      DROP Table tabela;

    ENDSUB

     

    //=========================================================================

    //Aba da tabela

    //***************************************************************************************************

    LET linha = 1;

    LET dados = '';

    LET linhaDados = '';

    LET vTabela = 'F02478.QV_STG_RF_BDV02_CAIXA';

    //***************************************************************************************************

    LET linhaDados = 'INSERT INTO F02478.QV_STG_RF_BDV02_CAIXA

      (

      "REFERENCIA RF",

      "DATA CAIXA",

      "PATROCINADORA / PLANO",

      COMPROMISSADA,

      COMPROMISSADA1,

      JUROS,

      RECEBIMENTO,

      PAGAMENTOS,

      PRÉVIA,

      Patrimônio,

      ITAPOA,

      filename

      )';

     

     

     

     

    tabela:

    LOAD

      RowNo() as linha,

      Chr(39) & [REFERENCIA RF] & Chr(39) & ',' &

      Chr(39) & [DATA CAIXA] & Chr(39) & ',' &

      Chr(39) & [PATROCINADORA / PLANO] & Chr(39) & ',' &

      Chr(39) & COMPROMISSADA & Chr(39) & ',' &

      Chr(39) & COMPROMISSADA1 & Chr(39) & ',' &

      Chr(39) & JUROS & Chr(39) & ',' &

      Chr(39) & RECEBIMENTO & Chr(39) & ',' &

      Chr(39) & PAGAMENTOS & Chr(39) & ',' &

      Chr(39) & PRÉVIA & Chr(39) & ',' &

      Chr(39) & Patrimônio & Chr(39) & ',' &

      Chr(39) & ITAPOA & Chr(39) & ',' &

      Chr(39) & filename()   & Chr(39) as campo

    FROM

    [$(vDiretorio)$(vArquivo)]

    (ooxml, embedded labels, header is 4 lines, table is CAIXA)

    WHERE len([REFERENCIA RF]) > 0

    ;

       

    CALL CriarLinhasParaInsert;

     

    CALL InserirLinhas;

       

    //***************************************************************************************************