Ponto de Entrada

Línea de producto: 

 Protheus

Segmento:

 Manufactura

Módulo: 

 SIGACOM - Compras

Descripción:

El punto de entrada PEF041 permite agregar campos personalizados en la pantalla de visualización de los datos de registro del proveedor en el portal del proveedor. El array se debe montar con base en la estructura del WebServices y con los campos que serán agregados por el usuario.

Atención:
Al incluir o modificar el array del encabezado o de los ítems del pedido, el array devuelto debe contener todos los campos que deben aparecer en el Browse, incluso los que son estándar del sistema, según el ejemplo de la documentación.
Los campos que no existen en el WebServices deben estar mencionados en el array con el nombre del atributo en la base de datos, y debe estar realizado el tratamiento adicional en el punto de entrada WsUsrField, para que el título de la columna aparezca correctamente.

Obs.: Es imprescindible utilizar el punto de entrada WSUSRFIEL, para agregar los campos. 

Enlace documentación del PE: WSUSRFIELD - Reconoce los campos fuera del estándar en el sistema 

Ubicación:

El punto de entrada se ejecutará en el genérico, datos de registro

Eventos:

Portal del proveedor

Programa fuente:

PWSF040.PRW - Visualización de los datos de registro del proveedor

Función:

 PWSF040 - Pantalla de datos de registro

 Parámetros:

Nombre

Tipo

Descripción

Obligatorio

nTipo

Numérico

Número de la opción que indica el momento en que el punto de entrada se está ejecutando.
Opciones:
1 - En el montaje de los datos de registro 
2 - En el montaje de los datos dirección comercial  

Respuesta:

Nombre

Tipo

Descripción

Obligatorio

 aReturn

 Array

Array con la estructura del WebServices y con los campos personalizados que aparecerán en la pantalla del pedido de compra.

 Sí

Ejemplo:

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