Árvore de páginas

Carregando...

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO

  1. Descrição
  2. Localização
  3. Programa Fonte
  4. Parâmetros
  5. Retorno
  6. Exemplo de utilização
  7. Formato XML
  8. Formato JSON
  9. Outras Informações

01. DESCRIÇÃO

Este Ponto de Entrada permite adicionar e/ou manipular a mensagem única de produtos (MATA010) de envio com campos customizados ou padrões nas mensagem de EAI.

02. LOCALIZAÇÃO

Quando ativado envio de mensagem única MATA010, na versão 24.001, 000 em formato JSON e XML.

03. PROGRAMA FONTE

MATI010.PRX

04.

...

Retorno: variável do tipo caracter.

...

PARÂMETROS

VariavelTipoDescrição
PARAMIXB[1]CaracterInformações de produtos a serem enviada em formato JSON

05. RETORNO

VariavelTipoDescrição
cJsonCaracterInformações de produtos que pode ter sido ou não customizada a ser enviada em formato JSON

06. EXEMPLO DE UTILIZAÇÃO

...

Bloco de código
languagejava
themeMidnight
titleExemplo
linenumberstrue
#INCLUDE 'Protheus.ch'
 

User Function MT010Jin()

Local cParam1 cAddXml  := ""
Local cJsonData := ""
Local uRet
Local oModel    := FWModelActive()
Local lMVC      := TableInDic("G3Q", .F.) .And. oModel <> Nil .And. oModel:cSource == "MATA010"
Local cCod      := ""
Local aArea     := GetArea()

IfLocal lMVCoJson
	cCod  
cParam1 := AllTrim(oModel:GetValue("SB1MASTER","B1_COD"))
	cDesc  PARAMIXB[1]

oJson := AllTrimJsonObject(oModel):GetValue("SB1MASTER","B1_DESC")) + " MT010Jin"
else
	cCod  New()

uRet := M->B1_COD
	cDesc  := M->B1_DESC + " MT010Jin"
Endif

cAddXml := '<CustomInfoProd>'
cAddXml +=      '<CustomCodProd>' + cCod + '|' + cDesc + '</CustomCodProd>'
cAddXml +=      '<CustomDescProd>' + cDesc + '</CustomDescProd>'
cAddXml += '</CustomInfoProd>'

RestArea(aArea)
Return cAddXml

B - Formato JSON

Bloco de código
languagejava
themeMidnight
titleExemplo
linenumberstrue
#INCLUDE 'Protheus.ch' 

User Function MT010Jin()

Local cJson     := ""
Local ret       := ""
Local oModel    := FWModelActive()
Local lMVC      := TableInDic("G3Q", .F.) .And. oModel <> Nil .And. oModel:cSource == "MATA010"
Local cCod      := ""
Local aArea     := GetArea()

If lMVC
    oJson:FromJson(cParam1)

if ValType(uRet) == "U"
    If lMVC
        cCod   := AllTrim(oModel:GetValue("SB1MASTER","B1_COD"))
        cDesc  := AllTrim(oModel:GetValue("SB1MASTER","B1_DESC")) + " MT010Jin"
    else
        cCod   := M->B1_COD
        cDesc  := M->B1_DESC + " MT010Jin"
    Endif
    
cJson += '{'
cJson += ' oJson["Content"]["TcOrthers"] : {'
cJson +=     '"Cust1":= JsonObject():New()
    oJson["Content"]["TcOrthers"]["Cust1"] := "TESTE DE CUSTOMIZADO1",'
cJson +=     'oJson["Content"]["TcOrthers"]["TESPROD": ['
cJson +=             '{'
cJson +=             '"TESTECOD": "' +   cCod + '"
cJson +=             '},'
cJson +=             '{'
cJson +=             '"TESTEDESC": "' +  cDesc + '"
cJson +=             '}' 
cJson +=   ']}'
cJson += '}'

oJson := JsonObject():New()
ret := oJson:FromJson(cJson)

] := JsonObject():New()
    oJson["Content"]["TcOrthers"]["TESTECOD"] := cCod
    oJson["Content"]["TcOrthers"]["TESTEDESC"] := cDesc    
    
    cJsonData := oJson:toJSON(cParam1)
    
    If ValType(ret) == "C"
        //Falha ao transformar texto em objeto json
        cJsoncJsonData := ''
    Endif

EndIf 
RestArea(aArea)
FreeObj(oJson)

Return cJsoncJsonData

07. OUTRAS INFORMAÇÕES

Classe JsonObject