Duda
¿Cómo poder filtrar las Ordenes de Pago en la rutina de Anulación (FINA086)?
Ambiente
Cross Segmentos - TOTVS BackOffice (Línea Protheus) - MI - Financiero (SIGAFIN) - A partir de la versión 11
Solución
El punto de entrada FA086FLT permite agregar condiciones en la consulta para la anulación de las ordenes de pago. Este punto de entrada no recibe ningún valor como parámetro.
Para este punto de entrada, se puede crear un grupo de preguntas, para que permita filtrar las ordenes de pago de manera dinámica.
A continuación se incluye un ejemplo de punto de entrada con el uso de un grupo de preguntas creado por el usuario.
#Include "PROTHEUS.CH"
User Function FA086FLT()
Local cFA086FLT := "FA086FLT"
Local cQry086 := ""
Local aAreaFA086 := GetArea()
// El grupo PAG018 tiene 6 preguntas por estandar //
/* Respaldar el valor del grupo de preguntas PAG018 */
Local nBck_01 := MV_PAR01
Local nBck_02 := MV_PAR02
Local nBck_03 := MV_PAR03
Local cBck_04 := MV_PAR04
Local cBck_05 := MV_PAR05
Local nBck_06 := MV_PAR06
Pergunte(cFA086FLT, .T.)
cQry086 := " AND EK_FORNECE >= '" + MV_PAR01 + "' AND EK_FORNECE <= '" + MV_PAR02 + "'"
RestArea(aAreaFA086)
/* Restaura el valor del grupo de preguntas PAG018 */
MV_PAR01 := nBck_01
MV_PAR02 := nBck_02
MV_PAR01 := nBck_03
MV_PAR02 := cBck_04
MV_PAR01 := cBck_05
MV_PAR02 := nBck_06
Return cQry086
Ejemplo del grupo de preguntas FA086FLT

Importante
Cuando es usado un grupo de preguntas en el punto de entrada FA086FLT , se deben respaldar los valores de las variables MV_PAR01, MV_PAR02, ... , MV_PARN, posteriormente se deben regresar los valores a estas variables. Esto se debe realizar porque inicialmente estas variables tienen asignado el valor del grupo de preguntas PAG018. Si no se realiza esta acción, se van a presentar inconsistencias en el proceso.
0 Comentarios