Ponto de Entrada - LJ901SA1
Este Ponto de Entrada é executado nas rotinas LOJA901 e LOJA901A, para informação dos dados a serem cadastrados na rotina de geração de Clientes (MATA030).
Descrição: | Atualizações\Cadastros |
Localização: | E-commerce |
Eventos: | Monitor Serv. CiaShop |
Programa Fonte: | LOJA901 - Compradores LOJA901A - Pedidos |
Função: | Protheus |
Parâmetos: | Nome | Tipo | Descrição | nOrigem | Numérico | Indicativo da rotina em execução, onde: 1 - LOJA901 - Compradores ou 2- LOJA901A - Geração de Cliente com Endereço de Entrega | aCli | Array | Array dos Campos a serem inseridos pela rotina automática | oAComp | Objeto | Objeto XML do Comprador, caso a origem seja 1 | oAPed | Objeto | Objeto do XML do Pedido de Venda, caso a origem seja 2 |
|
Retorno: | Nome | Tipo | Descrição | Obrigatório | aCli | Array | Campos a serem inseridos na rotina automática; se não tiver campos a inserir, retornar array vazio | Sim |
|
Exemplo:
#Include 'Protheus.ch'
User Function LJ901SA1()
Local nOrigem := NIL
Local aCli := {}
Local oAComp := NIL
local oAPed := {}
Local aAreaSA1 := {}
Local cCPFCli := ""
Local nPos := 0
//Tratamento dos parâmetros de entrada
If ValType(PARAMIXB) == "A" .AND. Len(PARAMIXB) >= 4 .AND. ;
ValType(PARAMIXB[1]) == "N" .AND. ValType(PARAMIXB[2]) == "A"
nOrigem := PARAMIXB[1]
aCli := aClone(PARAMIXB[2])
If nOrigem == 1 .AND. ValType(PARAMIXB[3]) == "O"
//Chamada pela rotina de inclusão de Compradores -LOJA901
oAComp := PARAMIXB[3]
//Chamada pela origem de compradores
aAdd(aCli, {"A1_SEXO" , oAComp:_SEXO:TEXT, ""})
ElseIf nOrigem == 2 .AND. ValType(PARAMIXB[4]) == "O"
//Chamada pela rotina de Pedido - loja901A - ENDEREÇO DE ENTREGA
oAPed := PARAMIXB[4]
nPos := aScan(aCli, { |l| l[1] == "A1_CGC"})
If nPos > 0
cCPFCli := aCli[nPos, 02]
EndIf
If !Empty(cCPFCli)
aAreaSA1 := SA1->(GetArea())
SA1->(DbSetOrder(3)) //A1_FILIAL + A1_CGC
If SA1->(DbSeek(xFilial("SA1") + cCPFCli))
aAdd(aCli, {"A1_SEXO" , SA1->A1_SEXO, ""})
EndIf
RestArea(aAreaSA1)
EndIf
EndIf
EndIf
Return aCli