Punto-de-Entrada: MT120OK - Validaciones específicas de usuario


Versiones:

Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Microsiga Protheus 10

Compatible Países:

Todos

Sistemas operativos:

Todos

Compatible a las bases de datos:

Todos

Idiomas:

Español , Inglés


Descripción:

LOCALIZACIÓN: Function A120TudOk() responsable por la validación de todos los ítems de la GetDados del Pedido de Compras / Autorización de Entrega.

EN QUÉ PUNTO: El punto se encuentra al final de la función y se activa tras confirmar los ítems de la GetDatos y antes del pie de página de la Dialog del PC, se debe utilizar para validaciones específicas del usuario donde se controlará por la respuesta del punto de entrada, si este fuera .F. el proceso se interrumpirá y si fuera .T. se validará.

Eventos


 

Programa fuente

MATA120.PRX

Sintaxis

MT120OK - Validaciones específicas de usuario ( ) --> lRetorno

Respuesta

lRetorno

(lógico)

Si fuera .T. línea validada sigue el proceso
Si fuera .F. interrumpe el proceso

Observaciones

Ejemplo
#INCLUDE "TOTVS.ch"
#INCLUDE "rwmake.ch"
#INCLUDE "TBICONN.ch"
#INCLUDE "FWMVCDEF.CH"


User Function  MT120OK()
    Local nPosPrd    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_PRODUTO'})
    Local nPosQtd    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_QUANT'})
    Local nPosPrc    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_PRECO'})
    Local lValido   := .T.
    Local nX        := 0 
    
    For nX :=1 To Len( aCols )     
        If ( !aCols[nx][Len(aCols[nX])] .And. !Empty(aCols[nX][nPosPrd]) )         
            If ( Empty(aCols[nX][nPosQtd]) .Or. Empty(aCols[nX][nPosPrc]) )             
                lValido := .F.             
                Exit         
            EndIf     
        EndIf
    Next nX
    
Return(lValido)


Ejemplos

User Function  MT120OK()Local nPosPrd    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_PRODUTO'})Local nPosQtd    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_QUANT'})Local nPosPrc    := aScan(aHeader,{|x| AllTrim(x[2]) == 'C7_PRECO'})Local lValido := .T.Local nX       := 0 For nX :=1 To Len( aCols )     If ( !aCols[nx][Len(aCols[nX])] .And. !Empty(aCols[nX][nPosPrd]) )         If ( Empty(aCols[nX][nPosQtd]) .Or. Empty(aCols[nX][nPosPrc]) )             lValido := .F.             Exit         EndIf     EndIfNext nXReturn(lValido)