Árvore de páginas

Os programas de consulta permitirão que o aprovador detalhe as pendências no momento da aprovação/rejeição.

Para que o programa consulta a ser executado detalhe o documento correto, é necessário que seja desenvolvida uma pré-chamada para este programa.

Nesta “pré-chamada” conterá uma lógica para primeiramente fazer com que seja posicionado no registro correto e, em seguida, execute a consulta selecionada pelo aprovador.

Programa para consulta da cotação
/**  Programa para consulta da cotação
    ***
    **/
    
    def input parameter p-rowid-mla-doc-pend-aprov as rowid no-undo.
    def new global shared var gr-ordem-compra as rowid no-undo.
    
    def var i-chave as integer no-undo.
    def var c-chave as char    no-undo. 
    find first mla-doc-pend-aprov where
        rowid(mla-doc-pend-aprov) = p-rowid-mla-doc-pend-aprov
        no-lock no-error.
    if available mla-doc-pend-aprov then do:
        find first cotacao-item where
  cotacao-item.numero-ordem = integer(substring(mla-doc-pend-aprov.chave-doc,1,8)) and
  cotacao-item.cod-emitente = integer(substring(mla-doc-pend-aprov.chave-doc,9,9)) and
  cotacao-item.it-codigo    = substring(mla-doc-pend-aprov.chave-doc,18,16)        and
  cotacao-item.seq-cotac    = integer(substring(mla-doc-pend-aprov.chave-doc,34,3)) 
            no-lock no-error.
        if available cotacao-item then do:
            find first ordem-compra where
                ordem-compra.numero-ordem = cotacao-item.numero-ordem
                no-lock no-error.
            if available ordem-compra then do:
                assign gr-ordem-compra = rowid(ordem-compra).
                run ccp/cc0505.w.
            end.
        end.
    end.