Grava temp-table

Discussão em 'Progress 4GL' iniciado por lunho, Abril 27, 2012.

  1. lunho

    lunho Membro Participativo

    Pessoal, criei uma temp-table que guarda valores criados por uma função que gera data de pagamento.
    Criei um botão e faço um for-each nessa temp-table, e dentro do for-each coloquei um create de uma tabela
    que vai guadar os dados da temp-table.
    so que não esta acontecendo nada no evento choose desse botão, não retorna nenhum erro e não grava nada na tabela.
    alguém ja passou por isso antes?

    segue exemplo:

    Código:
     FOR EACH tt-parcelas:
         
          DEF VAR prox AS INT.
          FIND LAST fechamento.
          IF AVAIL fechamento THEN
               prox = fechamento.id + 1.
          ELSE
            prox = 1.
    
          CREATE fechamento.
            ASSIGN fechamento.id = prox.
                   fechamento.data-fech = TODAY. 
                   fechamento.id-cliente =  idc. 
                   fechamento.id-fechamento = INPUT fnf. 
                   fechamento.parcela = tt-parcelas.ctt-parcela. 
                   fechamento.valorp = ROUND (tt-parcelas.ctt-vr2,2).
                   fechamento.valort = INPUT fill-valor.
                   fechamento.dt-vcto = tt-parcelas.ctt-vcto.
     
        END.
    
    
    
  2. lima

    lima Membro Participativo

    Amigo,

    Coloque o código abaixo dentro do seu botão e faça um teste.

    Abraços.

    Código:
    DEFINE VARIABLE prox AS INTEGER     NO-UNDO.
    
    FOR EACH tt-parcelas:
        FIND LAST fechamento NO-LOCK NO-ERROR.
        IF AVAIL fechamento THEN
            ASSIGN prox = fechamento.id + 1.
        ELSE
            ASSIGN prox = 1.
    
        CREATE fechamento.
        ASSIGN fechamento.id            = prox
               fechamento.data-fech     = TODAY 
               fechamento.id-cliente    = idc 
               fechamento.id-fechamento = INPUT fnf
               fechamento.parcela       = tt-parcelas.ctt-parcela 
               fechamento.valorp        = ROUND (tt-parcelas.ctt-vr2,2)
               fechamento.valort        = INPUT fill-valor
               fechamento.dt-vcto       = tt-parcelas.ctt-vcto.
    
        IF ERROR-STATUS:ERROR THEN
            MESSAGE 'tem erro'
                VIEW-AS ALERT-BOX INFO BUTTONS OK.
    END.
    
  3. lunho

    lunho Membro Participativo

    Não entendo. não retornou erro nenhum, e não gravou nada, o pior, que tenho outra programa do mesmo jeito, que funciona perfeitamente e nesse tá dando essa zica.
  4. LeandroSantos

    LeandroSantos Membro Participativo

    Não vejo nada de errado no seu codigo, voce tem certeza de que esta mesmo populando esta temp-table?

    Coloca uma mensagem dentro do for each só para se certificar que tem registros na temp-table, exemplo:
    Código:
    FOR EACH tt-parcelas:
        message "passei" view-as alert-box.
        FIND LAST fechamento NO-LOCK NO-ERROR.
        IF AVAIL fechamento THEN
            ASSIGN prox = fechamento.id + 1.
        ELSE
            ASSIGN prox = 1.
    
        CREATE fechamento.
        ASSIGN fechamento.id            = prox
               fechamento.data-fech     = TODAY 
               fechamento.id-cliente    = idc 
               fechamento.id-fechamento = INPUT fnf
               fechamento.parcela       = tt-parcelas.ctt-parcela 
               fechamento.valorp        = ROUND (tt-parcelas.ctt-vr2,2)
               fechamento.valort        = INPUT fill-valor
               fechamento.dt-vcto       = tt-parcelas.ctt-vcto.
    
        IF ERROR-STATUS:ERROR THEN
            MESSAGE 'tem erro'
                VIEW-AS ALERT-BOX INFO BUTTONS OK.
    END.
    
  5. jdchaves

    jdchaves Membro Participativo

    coloque mensagem na hora que vc da o create na tt, para verificar se realmente esta populando...

    se for simples o programa, disponibiliza para download aqui ;)
  6. lunho

    lunho Membro Participativo

    Valeu pela ajuda pessoal, mais por enquanto não esta enviando os dados para a tabela.
    vou refazer essa tela novamente.

Compartilhe esta Página