Descrição

Ponto de entrada FINA460A substitui os pontos de entrada abaixo.

  • A460VALLIN: Executado na inclusão de linhas de parcelas da liquidação a receber;
  • F460BOT: Executado para inclusão de botões no botão Ações Relacionadas da liquidação a receber;
  • F460CAN: Executado no cancelamento da tela de geração de liquidação a receber;
  • F460CON: Executado no cancelamento da tela de geração de liquidação a receber;
  • F460GRV: Executado após a gravação de dados da geração de liquidação a receber; 
  • F460SAID: Executado no cancelamento da tela de geração de liquidação a receber; 
  • F460TOK: Executado na validação de toda tela de geração de liquidação a receber; 
  • FA460CON: Executado na confirmação da tela de geração de liquidação a receber; 
  • FA460LOK: Executado na validação da linha de parcelas da liquidação a receber.

Localização

Contas a Receber / Liquidação

Idioma

Português(Brasil)

Versões

Microsiga_Protheus12

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Retorno

O retorno é de acordo com o bloco/ponto de entrada desejado.

Programa Fonte

FINA460.PRW/FINA460A.PRW

User Function FINA460A()

Local aParam := PARAMIXB
Local xRet := .T.
Local oObj := ''
Local cIdPonto := ''
Local cIdModel := ''
Local nLinha := 0
Local nQtdLinhas:= 0
Local cMsg := ''
Local cClasse := ""

If aParam <> NIL
    oObj := aParam[1]
    cIdPonto := aParam[2]
    cIdModel := aParam[3]

    If cIdPonto == 'MODELPOS' // Bloco substitui o ponto de entrada F460TOK e FA460CON
        cMsg := 'Chamada na validação total do formulário (MODELPOS).' + CRLF
        cMsg += 'ID ' + cIdModel + CRLF
        If cClasse == 'FWFORMGRID' // Bloco substitui o ponto de entrada FA460LOK, validação do Grid, utilizar o ID de Model 'TITGERFO2'
            nQtdLinhas := oObj:Length()
             nLinha := oObj:GetLine()

            cMsg += 'É um FORMGRID com ' + Alltrim( Str( nQtdLinhas ) ) + ' linha(s).' + CRLF
            cMsg += 'Posicionado na linha ' + Alltrim( Str( nLinha ) ) + CRLF

        EndIf

        If !( xRet := ApMsgYesNo( cMsg + 'Continua ?' ) )
            Help( ,, 'Help',, 'O MODELPOS retornou .F.', 1, 0 )
        EndIf
    ElseIf cIdPonto == 'MODELCANCEL' // Bloco substitui os pontos de entrada F460CAN, F460CON e F460SAID no cancelamento da tela de geração de liquidação.
        cMsg := 'Chamada no Botão Cancelar (MODELCANCEL).' + CRLF + 'Deseja Realmente Sair ?'
        If !( xRet := ApMsgYesNo( cMsg ) )
            Help( ,, 'Help',, 'O MODELCANCEL retornou .F.', 1, 0 )
        EndIf
    ElseIf cIdPonto == 'FORMLINEPRE' // Bloco substitui o ponto de entrada A460VALLIN.
        If cIdModel == 'TITGERFO2'
            nQtdLinhas := oObj:Length()
            nLinha := oObj:GetLine()
            If aParam[5] == 'DELETE' // Deleção de Linha do Grid
                cMsg := 'Chamada na pre validação da linha do formulário (FORMLINEPRE).' + CRLF
                cMsg += 'Onde esta se tentando deletar uma linha' + CRLF
                cMsg += 'É um FORMGRID com ' + Alltrim( Str( nQtdLinhas ) ) + ' linha(s).' + CRLF
                cMsg += 'Posicionado na linha ' + Alltrim( Str( nLinha ) ) + CRLF
                cMsg += 'ID ' + cIdModel + CRLF

                If !( xRet := ApMsgYesNo( cMsg + 'Continua ?' ) )
                    Help( ,, 'Help',, 'O FORMLINEPRE retornou .F.', 1, 0 )
                EndIf
            EndIf
        EndIf
    ElseIf cIdPonto == 'FORMLINEPOS' // Substitui o ponto de entrada FA460LOK
        If cIdModel == 'TITGERFO2'
            nQtdLinhas := oObj:Length()
            nLinha := oObj:GetLine()
            cMsg := 'Chamada na validação da linha do formulário (FORMLINEPOS).' + CRLF
            cMsg += 'ID ' + cIdModel + CRLF
            cMsg += 'É um FORMGRID com ' + Alltrim( Str( nQtdLinhas ) ) + ' linha(s).' + CRLF
            cMsg += 'Posicionado na linha ' + Alltrim( Str( nLinha ) ) + CRLF

            If !( xRet := ApMsgYesNo( cMsg + 'Continua ?' ) )
                Help( ,, 'Help',, 'O FORMLINEPOS retornou .F.', 1, 0 )
            EndIf
        EndIf
    ElseIf cIdPonto == 'MODELCOMMITNTTS' // Bloco substitui o ponto de entrada F460GRV.
        ApMsgInfo('Chamada apos a gravação total do modelo e fora da transação (MODELCOMMITNTTS).' + CRLF + 'ID ' + cIdModel)
    ElseIf cIdPonto == 'BUTTONBAR' // Bloco substitui o ponto de entrada F460BOT.
        ApMsgInfo('Adicionando Botao na Barra de Botoes (BUTTONBAR).' + CRLF + 'ID ' + cIdModel )
        xRet := { {'Salvar', 'SALVAR', { || Alert( 'Salvou' ) }, 'Este botao Salva' } }
    EndIf
EndIf

Return xRet