Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
languagecpp
titleExemplo:
#INCLUDE 'PROTHEUS.CH'
#INCLUDE "FWMVCDEF.CH"
 
User Function M040OEAI()

   Local aArea       := GetArea()

   Local aParam      := PARAMIXB

   Local aRet        := aParam[1]
   Local nPosIni     := 0
   Local nPosFim     := 0
   Local cContIni    := ""
   Local cConteudo   := ""

   //Buscara a posição inicial do dado customizado (Ex: Custom) na string Json
   nPosIni := At( 'Custom', PARAMIXBaParam[3])+Len('Custom')+3 //Somando o tamanho da descrição e caractes especiais temos a posição inicial do conteúdo
   
   If nPosIni > 0
      //Recortamos os dados da string a partir da posição do dado que buscamos
      cContIni := Substr(PARAMIXBaParam[3],nPosIni)
   
      //Encontramos o fim do dado que buscamos
      nPosFim := At('"',cContIni) 

      //Recortamos apenas o dado que buscavamos da string
      cConteudo := SubStr(PARAMIXBaParam[3], nPosIni, nPosFim-1)

      //Adicionamos o campo customizado e o conteudo fornecido pela string do json ao array de retorno
      aAdd(aParam[1]aRet,{"A3_CUSTOM",cConteudo,Nil})
   EndIF

   RestArea(aArea)

Return aParam[1]aRet