Árvore de páginas

Ponto de Entrada

Linha de Produto:  Protheus
Segmento: Manufatura
Módulo:  SIGACOM - Compras

Descrição:

O ponto de entrada PEF041 permite adicionar campos customizados na tela de visualização dos dados cadastrais do Fornecedor no Portal do Fornecedor. O array deverá ser montado com base na estrutura do WebServices e com os campos que serão adicionados pelo usuário.

Atenção:
Ao incluir ou alterar o array do cabeçalho ou dos itens do pedido, o array retornado deverá conter todos os campos que devem aparecer no Browse, mesmo os que são padrão do sistema, conforme exemplo da documentação.
Campos não existentes no WebServices devem ser referenciados no array com o nome do atributo na base de dados e efetuado tratamento adicional no ponto de entrada WsUsrField a fim de aparecer corretamente o título da coluna.

Obs.: É imprescindível a utilização do ponto de entrada WSUSRFIEL, para adicionar os campos. 

Link documentação do PE: WSUSRFIELD - Reconhece os campos fora do padrão no sistema 


Localização:

O Ponto de Entrada será executado ao em genérico, dados cadastrais

Eventos:

Portal do Fornecedor

Programa Fonte:

PWSF040.PRW - Visualização dos dados cadastrais do Fornecedor

Função:

 PWSF040 - Tela dados cadastrais

 Parâmetros:
NomeTipoDescriçãoObrigatório
nTipoNumérico

Número da opção que indica o momento em que o ponto de entrada está sendo executado.
Opções:
1 - Na montagem dados cadastrais 
2 - Na montagem dos dados endereço comercial  

Sim

Retorno:

Nome

Tipo

Descrição

Obrigatório

 aReturn

 Array

Array com a estrutura do WebServices e com os campos customizados que serão exibidos na tela de pedido de compra.

 Sim

Exemplo:

1ª parte:

#Include 'Protheus.ch'
#Include "RwMake.ch"

User Function PEF041()
   
Local aWebCols := {}
Local nTipo := PARAMIXB[1]

Do case

Case nTipo == 1
    aAdd( aWebCols, { "SUPPLIERCODE"     , "D" } )
    aAdd( aWebCols, { "UNITSUPPLIERCODE" , "D" } )
    aAdd( aWebCols,   "NAME"             )
    aAdd( aWebCols,   "NICKNAME"         )
    aAdd( aWebCols, { "FEDERALID"        , "D" } )
    aAdd( aWebCols, {  "STATEID"         , "D" } )
    aAdd( aWebCols, { "DISTRICTID"       , "D" } )
    aAdd( aWebCols,   "HOMEPAGE"         )
    aAdd( aWebCols,   "EMAIL"            )
    aAdd( aWebCols,   "A2_BANCO"       ) //CAMPO INCLUSO 
    aAdd( aWebCols,   "A2_AGENCIA")  //CAMPO INCLUSO      
    aAdd( aWebCols,   "A2_DVAGE") //CAMPO INCLUSO 
    aAdd( aWebCols,   "A2_NUMCON") //CAMPO INCLUSO 

Case nTipo == 2

    aAdd( aWebCols, "ADDRESS" )
    aAdd( aWebCols, "ADDRESSNUMBER" )
    aAdd( aWebCols, "DISTRICT" )
    aAdd( aWebCols, { "STATE", "N", { "GETUF", ;
    { "CSTATE", "CCODE" };
     }, ;
    { "CCODE", "CDESCRIPTION" } } )
    aAdd( aWebCols, "ZIPCODE" )
    aAdd( aWebCols, "ZONE" )


Endcase


2ª parte:

#INCLUDE "RWMAKE.CH"
#INCLUDE "PROTHEUS.CH"
#INCLUDE "APWEBEX.CH"



User Function WsUsrField()
Local cAlias := PARAMIXB[1]
Local aReturn := {}

Do Case    

    Case cAlias == "SA2"
        aAdd( aReturn,"A2_BANCO")      
        aAdd( aReturn,"A2_AGENCIA")
        aAdd( aReturn,"A2_DVAGE")
        aAdd( aReturn,"A2_NUMCON")  

End Case

Return aReturn