Punto de Entrada FA855CPOS en la Pre-Orden de Pago

Características del Requisito

Línea de Producto:

Microsiga Protheus.

Segmento:

Servicios & Juridico - Mercado Internacional.

Módulo:

Libros Fiscales - SIGAFIS.

Rutina:

Rutina

Nombre Técnico

FINA855.PRW

Pre Orden de Pago

Rutina(s) involucrada(s)

Nombre Técnico

FINA850.PRW

Orden de Pago Mod II

FINRETARG.PRWCálculo de retenciones
FINA847.PRWOrden de Pago Mod II

Llamados vinculados:

3320927

Requisito/Story/Issue:DMICNS-3677

País(es):

Argentina

Base(s) de Datos:

Todas

Tablas utilizadas:

FJK - Encabezado Pre orden de Pago

FJL - Item Pre orden de Pago

SE2 - Cuentas por Pagar.

Sistema(s) operativo(s):

Todos

Versión:

12.1.17



Descripción 

Se crea el punto de entrada FA855CPOS, que permite agregar campos en la pestaña “Orden Previa” en la rutina Pre-Orden de Pago.


Punto de Entrada

Descripción:

FA855CPOS()

Ubicación:

Financiero

Eventos:

-

Programa Fuente:

FINA855.PRW

Función:

FINA855()

Respuesta:

Nombre

Tipo

Descripción

Obligatorio

 aCpos

Array

Campos a incluir en grid de pestaña de Orden Previa.

El arreglo (aCpos) en el cual se agregan los campos es a dos posiciones:

  1. En la primera posición se incluye un arreglo con el campo y las propiedades que va a tener en el grid de la pestaña de “Orden Previa”.

    Importante: Para que el campo sea grabado, en la posición 6 del arreglo (X3_VALID) adicional a las validaciones de usuario, se debe grabar en el contenido del nuevo campo en la tabla temporal (FA855SE2), como se muestra en el ejemplo UpdCampo(cCampo), en caso de no grabarlo, no será actualizado en la FJL.

  2. En la segunda posición se informa el nombre del campo de la tabla FJL en el cual será grabado el valor.


Importante:

 


Ejemplo:

#Include 'Protheus.ch'


/*/{Protheus.doc} FA855CPOS
Carga campos que seran incluidos en la solapa.

@Type User Function
@Author Microsiga Protheus
@Since 08/08/2018
@Version P12.1.17
@Param
@Return aCpos: Campos que serán agregados en la solapa.
/*/
User Function FA855CPOS()

Local aCpos := {}


// X3_TITULO, X3_CAMPO, X3_PICTURE, X3_TAMANHO, X3_DECIMAL, X3_VALID, "", X3_TIPO, "", ""}) Campo en FJL

Aadd(aCpos,{{"Campo Prueba", "FJL_TESTE", PesqPict("FJL","FJL_TESTE"), TamSX3("FJL_TESTE")[1], TamSX3("FJL_TESTE")[2], 'u_UpdCampo("FJL_TESTE")', "", "C", "", ""}, {"FJL_TESTE"}})

Return aCpos


/*/{Protheus.doc} UpdCampo
Actualiza valor en tabla tamporal FA855SE2.

@Type User Function
@Author Microsiga Protheus
@Since 08/08/2018
@Version P12.1.17
@Param cCampo: Nombre del campo.
@Return lRet: (.T.) Indica que se actualizo el valor y que la validación fue correcta.
/*/
User Function UpdCampo(cCampo)

Local lRet := .F.

GdFieldPut(cCampo, M->&(cCampo))


//Validación de usuario para el campo FJL_TESTE

If Valtype(M->&(cCampo)) == "N" .Or. !(Alltrim(GdFieldGet(cCampo)) $ ("0123456789"))

If FA855SE2->(DbSeek(xFilial("SE2")+cFornece+cLoja+GdFieldGet("E2_PREFIXO")+GdFieldGet("E2_NUM")+GdFieldGet("E2_PARCELA")+GdFieldGet("E2_TIPO")))

RecLock("FA855SE2",.F.)

FA855SE2->&(cCampo) := GdFieldGet(cCampo)

FA855SE2->(MsUnlock())

lRet := .T.

EndIf

oBrwTit:Refresh()

Endif


Return lRet



 ASUNTOS RELACIONADOS

¡Hola, te tenemos buenas noticias!, pensando en tu necesidad, ahora el Punto de Entrada FA855CPOS, tuvo una actualización, ya puede utilizar campos personalizados de la tabla SE2 en la primera dimensión del arreglo aCpos, para saber mas sobre ello consulte el siguiente documento técnico:   17959588 DMICNS-18275 DT PE FA855CPOS Inclusión de pre orden de pago ARG