MP_TITJSON

📌 Documentação do Ponto de Entrada MP_TITJSON

🧩 Identificação

  • Nome do Ponto de Entrada: MP_TITJSON
  • Objetivo: Ponto de entrada para manipulação de titulos, retornando um Json para envio mercos.
  • Programa: U_JobMped1 ( sincronização de Entidades de Saida )
  • Localização: Apos a montagem do Json para envio mercos.

📥 Parâmetros Recebidos (PARAMIXB)

  • PARAMIXB[1]: Array contas "MERCOS"
  • PARAMIXB[2]: Filial da conta "MERCOS".
  • PARAMIXB[3]: Filial da conta "MERCOS".
  • PARAMIXB[4]: Código da conta "MERCOS".
  • PARAMIXB[4]: Json Padrao para envio Mercos

Estrutura tabela temporaria TMP posicionada

                E1_CLIENTE
                E1_LOJA
                E1_PEDIDO
                E1_BAIXA
                E1_FILIAL,E1_PREFIXO,E1_NUM,E1_PARCELA,E1_TIPO
                E1_VENCREA
                E1_SALDO
                E1_VALOR
                SE1.D_E_L_E_T_ AS DEL
                SE1.R_E_C_N_O_ AS REC

🔁 Retorno

  • A função deve retornar o Json em string de acordo com estrutura Api Mercos conforme link abaixo. https://mercos.docs.apiary.io/#reference/0/titulos

Exemplo:

User Function MP_TITJSON
    local aContas   := PARAMIXB[1]  // ARRY COM CONTAS
    local cFilMp     := PARAMIXB[2]  // FILIAL ATIVA
    local cCtaMp   := PARAMIXB[3]  // CODIGO DA CONTA
    local nz            := PARAMIXB[4]  // POSIÇÃO DO ACONTAS
    local cJson       := PARAMIXB[5]  // cJson

   
     cDoc  := padr(TMP->E1_PREFIXO,TAMSX3("E1_PREFIXO")[1])+;
                 padr(TMP->E1_NUM,    TAMSX3("E1_NUM")[1]    )+;
                 padr(TMP->E1_PARCELA,TAMSX3("E1_PARCELA")[1])+;
                 padr(TMP->E1_TIPO,   TAMSX3("E1_TIPO")[1])
       
        cIdPed  := U_GetIdEnt(cFilMp,cCtaMp,"PEDIDO",TMP->E1_PEDIDO)
        cExclui := IIF( TMP->del == '*' ,'true','false')
        cIdCli  := U_GetIdEnt(cFilMp,cCtaMp,"CLIENTE",TMP->(E1_CLIENTE+E1_LOJA))
        cRecn   := TMP->REC
        cDtBx   := if(empty(TMP->E1_BAIXA),"", SUBSTR(TMP->E1_BAIXA,1,4)+'-'+SUBSTR(TMP->E1_BAIXA,5,2)+'-'+SUBSTR(TMP->E1_BAIXA,7,2) )
       
        cJson := ' {'
        cJson += '    "cliente_id":'+cIdCli+','
        if !empty(cIdPed)
            cJson += '    "pedido_id":'+cIdPed+','
        endif
        cJson += '    "data_vencimento":"'+SUBSTR(TMP->E1_VENCREA,1,4)+'-'+SUBSTR(TMP->E1_VENCREA,5,2)+'-'+SUBSTR(TMP->E1_VENCREA,7,2)+'", '
        cJson += '    "data_pagamento":"'+cDtBx+'", '
        cJson += '    "numero_documento":"'+ cDoc +'",'
        //cJson += '    "observacao":"",'
        cJson += '    "valor":'+CVALTOCHAR(TMP->E1_VALOR) +","
        //cJson += '    "link_pdf":"",'
        //cJson += '    "arquivo_pdf":"",'"
        cJson += '    "excluido": '+cExclui  
        cJson += ' }'

Return(cJson)

Você achou esse artigo útil?

  • PE: MP_CABECPV

    📌 Documentação do Ponto de Entrada MP_CABECPV 🧩 Identificação ...
  • PE: MP_ITEMPV

    📌 Documentação do Ponto de Entrada MP_ITEMPV 🧩 Identificação N...
  • PE: MP_AITEMS

    📌 Documentação do Ponto de Entrada MP_AITEMS 🧩 Identificação N...
  • PE: MP_CATPGRV

    📌 Documentação do Ponto de Entrada MP_CATPGRV 🧩 Identificação ...
  • PE: MP_CATPSQL

    📌 Documentação do Ponto de Entrada MP_CATPSQL 🧩 Identificação ...