Histórico da Página
01. DATOS GENERALES
Producto |
| ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Línea de producto: |
| ||||||||||||||||||||||||||||||||||||
Segmento: |
| ||||||||||||||||||||||||||||||||||||
Módulo: | SIGAFIN - Financiero. | ||||||||||||||||||||||||||||||||||||
Función: |
| ||||||||||||||||||||||||||||||||||||
País: | Argentina. | ||||||||||||||||||||||||||||||||||||
Ticket: | 17959588. | ||||||||||||||||||||||||||||||||||||
Requisito/Story/Issue (informe el requisito vinculado): | DMICNS-18275. |
02. SITUACIÓN/REQUISITO
Se solicita implementar que el dato tome del grabado en tabla SE2, pudiendo agregar los campos personalizados a la query y a la grabación de la tabla temporal F855TMP, para que sea implementado este tratamiento en generación del Archivo temporal en la función A855SE2() del FINA855.
03. SOLUCIÓN
Se implementa el tratamiento para traer la información del campo indicado en el Punto de entrada de forma automática, para este escenario es la información del campo descripción de modalidad de la tabla Cuentas por pagar(SE2)el campo puede ser variable a la personalización deseada, sin embargo, el campo debe de estar creado en la base de datos en la tabla correspondiente para poder cumplir con su función.
Totvs custom tabs box | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
04. INFORMACIÓN ADICIONAL
Punto de Entrada
Descripción: | FA855CPOS() | ||||||||
Ubicación: | Financiero | ||||||||
Eventos: | - | ||||||||
Programa Fuente: | FINA855.PRW | ||||||||
Función: | FINA855() | ||||||||
Respuesta: |
|
Ejemplo:
#Include 'Protheus.ch'
/*/{Protheus.doc} FA855CPOS
Carga campos que seran incluidos en la solapa.
@Type User Function
@Author Microsiga Protheus
@Since
@Version P12.1.2310
@Param
@Return aRet: Campos que serán agregados en la solapa.
/*/
User Function FA855CPOS
Local _aArea := GetArea()
Local aRet := {}
// X3_TITULO, X3_CAMPO, X3_PICTURE, X3_TAMANHO, X3_DECIMAL, X3_VALID, "", X3_TIPO, "", "Campo en FJL"})
Aadd(aRet,{{RetTitle("E2_XDESNAT"), "E2_XDESNAT", PesqPict("SE2","E2_XDESNAT"), TamSX3("E2_XDESNAT")[1], TamSX3("E2_XDESNAT")[2],'u_UpdCampo("E2_XDESNAT")', "", "C", "", ""}, {"FJL_XDESNA"}})
RestArea( _aArea )
Return(aRet)
Informações |
---|
Es importante que el campo que sea utilizado para el punto de entrada exista creado en la base de datos en las dos tablas informadas en el arreglo aRet, para el ejemplo de arriba es necesario contar con el campo E2_XDESNAT exista creado en la tabla SE2 , de igual forma y el campo FJL_XDESNA creado en la tabla FJL. Al momento de incluir la Preorden de pago la información será cargada inicialmente del campo del primer bloque del arreglo (, para el ejemplo de arriba es el campo E2_XDESNAT ), después, al realizar las acciones de modificar, visualizar, borrar, esta información será consultada del campo FJL_XDESNA. |
/*/{Protheus.doc} UpdDesNat
Actualiza valor en tabla tamporal FA855SE2.
@Type User Function
@Author Microsiga Protheus
@Since
@Version P12.1.2310
@Param cCampo: Nombre del campo.
@Return lRet: (.T.) Indica que se actualizó el valor y que la validación fue correcta.
/*/
User Function UpdDesNat(cCampo)
Local lRet := .F.
Local cDesNat := ""
If FA855SE2->(DbSeek(xFilial("SE2")+cFornece+cLoja+GdFieldGet("E2_PREFIXO")+GdFieldGet("E2_NUM")+GdFieldGet("E2_PARCELA")+GdFieldGet("E2_TIPO")))
cDesNat := Posicione("SED",1,xFilial("SE1")+FA855SE2->E2_NATUREZ,"ED_DESCRIC")
RecLock("FA855SE2",.F.)
FA855SE2->E2_XDESNAT := cDesNat//GdFieldGet(cCampo)
FA855SE2->(MsUnlock())
lRet := .T.
EndIf
oBrwTit:Refresh()
Return lRet
/*/{Protheus.doc} UpdCampo
Actualiza valor en tabla tamporal FA855SE2.
@Type User Function
@Author Microsiga Protheus
@Since
@Version P12.1.2310
@Param cCampo: Nombre del campo.
@Return lRet: (.T.) Indica que se actualizó 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 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()
Return lRet
05. ASUNTOS RELACIONADOS
- 3320927_DMICNS-3677_DT_Punto_de_Entrada_FA855CPOS_PreOrden_ARG
Templatedocumentos
...