01. DATOS GENERALES
Línea de producto: | Microsiga Protheus® |
---|
Segmento: | Backoffice |
---|
Módulo: | Financiero |
---|
Idiomas: | Portugués |
---|
Función: | Portal del cliente |
---|
02. DESCRIPCIÓN
El punto de entrada PCINVQRY permite informar una query personalizada para listar las facturas en el Portal del cliente - SIGAFIN.
Parámetros puestos a disposición en el punto de entrada:
PARAMIXB | Tipo | Descripción |
---|
1º Posición | Carácter | Query estándar utilizada para listar las facturas en el Portal del cliente. |
2º Posición | Array | Contiene un Array con las claves (SUCURSAL+CÓDIGO+TIENDA) de los clientes seleccionados en el portal. - Cada posición del Array contiene un objeto Json con las propiedades: sucursal, código y tienda.
|
Devolución del punto de entrada:
El punto de entrada debe devolver la query personalizada respetando los campos definidos por estándar:
Tipo | Obligatoriedad | Descripción |
---|
Carácter | Obligatorio | Query personalizada para listar las facturas del Portal del cliente (La query obligatoriamente debe devolver los campos descritos a continuación). |
Campos obligatorios:
Campos que obligatoriamente deben ser devueltos en la query personalizada:
Campo | Tabla | Descripción |
---|
F2_FILIAL | SF2 | Sucursal del sistema. |
F2_CLIENTE | SF2 | Código del cliente. |
F2_LOJA | SF2 | Tienda del cliente. |
F2_DOC | SF2 | Número del Docto. de Salida. |
F2_SERIE | SF2 | Serie del documento. |
F2_VALBRUT | SF2 | Valor bruto de la factura. |
F2_MOEDA | SF2 | Moneda de la factura. |
F2_CHVNFE | SF2 | Clave de la e-Fact. FISCO. |
F2_NFELETR | SF2 | Factura electrónica. |
F2_EMISSAO | SF2 | Fecha de emisión de la factura. |
F2_HORA | SF2 | Hora. |
F2_CODNFE | SF2 | Código de verificación e-Fact. |
03. EJEMPLO DE UTILIZACIÓN
#include 'Protheus.ch'
/*/{Protheus.doc} User Function PCINVQRY
Se utiliza para modificar la query responsable por la lista
de las facturas en el Portal del cliente - FIN.
Parámetros:
- Paramixb[1] (Character) = Query creada hasta el momento para la lista.
- Paramixb[2] (Array) = Lista con la clave de los clientes seleccionados en el portal.
Devolución:
- cNewQuery (Character) = Query con los filtros aplicados.
Obs: La query del punto de entrada obligatoriamente
debe devolver los campos descritos en la documentación.
@type Function
@author Totvs
@since 10/10/2023
@version 1.0
@see https://tdn.totvs.com/pages/viewpage.action?pageId=794384769
/*/
User Function PCINVQRY() As Character
Local cOriginQry := Paramixb[1] As Array
Local aCustomers := Paramixb[2] As Array
Local cStartQry := "" As Character
Local cCustomQry := "" As Character
Local cEndQry := "" As Character
Local cNewQuery := "" As Character
// Graba la parte inicial de la query
cStartQry := Substr(cOriginQry, 1, AT("ORDER BY", cOriginQry) -1 )
// Logica para personalización de la query (Condicional WHERE)
cCustomQry := " AND SF2.F2_DOC <> '000001' "
// Graba la parte final de la query
cEndQry := Substr(cOriginQry, AT("ORDER BY", cOriginQry))
// Aplica la parte personalizada en la query principal
cNewQuery := cStartQry + cCustomQry + cEndQry
Return cNewQuery