Beruflich Dokumente
Kultur Dokumente
O ponto de entrada criado recebe via parmetro (PARAMIXB) um vetor com informaes referentes ao fonte. Estes
parmetros variam para cada situao, em comum todos eles tem os 3 primeiros elementos que so listados
abaixo, no quadro seguinte existe a relao de parmetros de cada ID:
Posies do array de parmetros comuns a todos os IDs:
POS.
TIPO
DESCRIO
ID do formulrio
Como j foi dito, o ponto de entrada chamado em vrios momentos dentro do fonte, na 2 posio da estrutura
do vetor passado um ID que identifica qual este momento. Ela pode ter como contedo:
ID
MODELPRE
O
C
C
Retorno:
Requer um retorno lgico
MODELPOS
O
C
C
Retorno:
Requer um retorno lgico
FORMPRE
O
C
C
Retorno:
Requer um retorno lgico
FORMPOS
O
C
C
Retorno:
Requer um retorno lgico
FORMLINEPRE
O
C
C
N
C
C
Retorno:
Requer um retorno lgico
FORMLINEPOS
O
C
C
N
Retorno:
Requer um retorno lgico
MODELCOMMITTTS
O
C
C
Retorno:
No espera retorno
MODELCOMMITNTTS
O
C
C
Retorno:
No espera retorno
FORMCOMMITTTSPRE
O
C
C
L
Retorno:
No espera retorno
FORMCOMMITTTSPOS
O
C
C
L
Retorno:
No espera retorno
FORMCANCEL
No cancelamento do boto.
Parmetros Recebidos:
1
2
3
O
C
C
Retorno:
Requer um retorno lgico
BUTTONBAR
C
C
B
C
Parmetros Recebidos:
1
2
3
O
C
C
Retorno:
Requer um array de retorno com estrutura pr definida
Observaes:
Quando o modelo de dados possui vrios componentes (por exemplo, vrios FWFORMGRIDs), a 3
posio do vetor trar o ID deste componente
Quando o tipo de retorno de um determinado momento de execuo no for passado ou for passado com o
tipo errado ser exibida uma mensagem no console avisando sobre isso. Todos IDs que esperam retorno
devem ser tratado no ponto de entrada
Ao se escrever um fonte em MVC que ser uma User Function, cuidado ao se atribuir o ID do modelo de
dados (Model), pois ele no poder ter o mesmo nome do fonte. Se o fonte tiver o nome FONT001, o ID do
Modelo de Dados (Model) no poder ser tambm FONT001,
Exemplo:
User Function JURA001()
Local aParam := PARAMIXB
Local xRet
:= .T.
Local oObj
:= ''
Local cIdPonto := ''
Local cIdModel := ''
Local lIsGrid := .F.
Local nLinha := 0
Local nQtdLinhas := 0
Local cMsg
:= ''
cIdPonto == 'MODELPOS'
cMsg := 'Chamada na validao total do modelo (MODELPOS).' + CRLF
cMsg += 'ID ' + cIdModel + CRLF
If !( xRet := ApMsgYesNo( cMsg + 'Continua ?' ) )
Help( ,, 'Help',, 'O MODELPOS retornou .F.', 1, 0 )
EndIf
cClasse == 'FWFORMGRID'
cMsg += ' um FORMGRID com ' + Alltrim( Str( nQtdLinhas ) ) + ;
' linha(s).' + CRLF
cMsg += 'Posicionado na linha ' + Alltrim( Str( nLinha
ElseIf cClasse == 'FWFORMFIELD'
cMsg += ' um FORMFIELD' + CRLF
EndIf
) ) + CRLF
) ) +; CRLF