[RESOLVIDO] AXSEP017 incluir xPed

Discussão em 'EMS , HCM e Totvs 11' iniciado por adriana.aura, Julho 3, 2012.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. adriana.aura

    adriana.aura Sem Pontuação

    Boa tarde Pessoal,

    Preciso fazer uma upc para incluir o campo ZB01 - xPed, e o campo I30 - xPed dentro do xml.

    Alguém me ajuda?
  2. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Adriana,

    Conseguiu resolver seu problema, caso não, por acaso é o Pedido do Cliente informado no Item da Nota Fiscal, se for segue a lógica que possa ajuda-la:

    Código:
    
    /*****************************************************************************************************
    
        Programa........: axsep017-upc.p  
        
        Objetivo........: EPC para manipular informações impressas no XML - Envio NF-e
        
        Versão..........: 17/07/2012 - Eduardo Batista Leite
                              
    *****************************************************************************************************/
    
    {cdp/cdcfgdis.i}
    {include/i-epc200.i1}
    
    def input        param p-ind-event as char no-undo.
    def input-output param table for tt-epc.
        
    define variable h-ttTrab     as widget-handle   no-undo.
    define variable hquerybuffer as widget-handle   no-undo.
    define variable h-query      as widget-handle   no-undo.
    define variable h-cprod      as widget-handle   no-undo.
    define variable h-campo      as widget-handle   no-undo.
    
    def var c-desc-prod-exc      as character       no-undo.
    
    def var h-cod-estabel        as handle          no-undo.
    def var h-serie              as handle          no-undo.
    def var h-nr-nota-fis        as handle          no-undo.
    def var h-it-codigo          as handle          no-undo.
    def var h-nr-seq-fat         as handle          no-undo.
    
    def var cod-estabel          as character       no-undo.
    def var serie                as character       no-undo.
    def var nr-nota-fis          as character       no-undo.
    def var it-codigo            as character       no-undo.
    def var nr-seq-fat           as integer         no-undo.
    
    def var c-cod-estabel        as char            no-undo.
    def var c-serie              as char            no-undo.
    def var c-nr-nota-fis        as char            no-undo.
    
    def var c-return-value       as char            no-undo.
    
    /**********************************************************************************************************/
    
    def new global shared var v_cod_usuar_corren as character no-undo.
    
    /***** Atualiza dados da nfe - Inserir informações das tags customizadas *****/
    if p-ind-event = "AtualizaDadosNFe":u then do:
    
        /***** Verificando a tabela de detalhes para informar as tag's de InfAdprod *****/
        for each tt-epc no-lock
           where tt-epc.cod-event     = p-ind-event
             and tt-epc.cod-parameter = "ttDet":u      /***** Informações Itens da NF        *****/:
    
            assign h-ttTrab     = widget-handle(tt-epc.val-parameter)
                   hquerybuffer = h-ttTrab:default-buffer-handle.
    
            if  valid-handle(hquerybuffer) then do:
    
                create query h-query.
    
                h-query:set-buffers(hquerybuffer).
                h-query:query-prepare('for each ' + h-ttTrab:name + ' no-lock').
                h-query:query-open().
    
                h-query:get-first() no-error.
    
                repeat on error undo, leave:
    
                    assign c-return-value = "".
    
                    /* exemplo de leitura da tabele it-nota-fisc a partir do buffer ttdet */
                    case tt-epc.cod-parameter:
    
                        /***** Busca Informações *****/
                        when "ttDet":u then do:
    
                            assign h-cod-estabel = hquerybuffer:buffer-field('CodEstabelNF') no-error.
                            assign h-serie       = hquerybuffer:buffer-field('SerieNF')      no-error.
                            assign h-nr-nota-fis = hquerybuffer:buffer-field('NrNotaFisNF')  no-error.
                            assign h-it-codigo   = hquerybuffer:buffer-field('ItCodigoNF') no-error.
                            assign h-nr-seq-fat  = hquerybuffer:buffer-field('NrSeqFatNF') no-error.
    
                            find first it-nota-fisc
                                 where it-nota-fisc.cod-estabel = h-cod-estabel  :buffer-value
                                   and it-nota-fisc.serie       = h-serie        :buffer-value
                                   and it-nota-fisc.nr-nota-fis = h-nr-nota-fis  :buffer-value
                                   and it-nota-fisc.it-codigo   = h-it-codigo    :buffer-value
                                   and it-nota-fisc.nr-seq-fat  = h-nr-seq-fat   :buffer-value no-lock no-error.
    
                            assign cod-estabel = it-nota-fisc.cod-estabel
                                   serie       = it-nota-fisc.serie      
                                   nr-nota-fis = it-nota-fisc.nr-nota-fis
                                   it-codigo   = it-nota-fisc.it-codigo  
                                   nr-seq-fat  = it-nota-fisc.nr-seq-fat no-error. 
    
                            /***** xPed *****/
                            assign h-campo = hquerybuffer:buffer-field('xPed':U) no-error.
                            assign h-campo:buffer-value = "" /***** Coloque aqui o Valor do Xped para o Item da Nota Fiscal *****/.
    
                        end.
    
                    end.
    
                    h-query:get-next() no-error.
    
                    if h-query:query-off-end then leave.
    
                end.
    
            end.
    
        end.
    
    end.
    
    return "ok":u.
    
    
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página