Perguntas Pontos de Entrada

Mais
5 anos 9 meses atrás #32604 por JamesWesTRP
Pessoal bom dia!

To tentando criar um ponto de entrada aqui em Padrão MVC para rotina MATA110 (MT110TOK).

O antigo não valida mais (MT110tok) quando retornado .F. (passa direto e salva).

Falei na "Tortus" e me disseram que agora é padrão MVC.

Criei o fonte, sendo user function com nome de "MATA110". Porém o PARAMIXB vem nulo. Não seria este o nome ? Teria que usar outro ?

Ou (pior) esta rotina não é Padrão MVC ?

Segue meu fonte, caso queiram ver...
#INCLUDE "TOTVS.CH"
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TOPCONN.CH"

USER FUNCTION MATA110()

Local aParam   := PARAMIXB //Parâmetros passados pelo ponto de entrada.
Local xRet     := .T. //Retorno da função.
Local oObj     := '' //Objeto que receberá o modelo.
Local cIdPonto := '' //Identificador da chamada do ponto de entrada.
Local cIdModel := '' //Identificador do modelo utilizado.
Local cModel   := '' //Identifica o modelo utilizado e receberá o seu identificador.   

If aParam <> NIL //Identifica que foram enviado os parâmetros.
    
    oObj     := aParam[1] //Modelo ativado.
    cIdPonto := aParam[2] //Determina o ponto de chamada.
    cIdModel := aParam[3] //Identificador do modelo.
 
    If cIdPonto == 'MODELPOS' //Pós-Valid
         
        cModel := cIdModel+'_'+"SC1" //Concatena o identificado do modelo com o identificador da tabela.
         
        If oObj:GetModel(cModel):HasField('C1_NUMOS') //Verifica se campo existe no modelo.
             
            If Empty(oObj:GetValue(cModel,'C1_NUMOS')) //Verifica se o campo foi preenchido.
              
                 //Help('',1,"PE MT110TOK" ,,"Campo"+Space(1)+"C7_NUMOS"+Space(1)+;
                //"não foi preenchido e é obrigatório.",2,0,,,,,,{"Preencha o campo C7_NUMOS (NRO.OS)"}) //Mensagem help que será apresentada em tela.  
                
                Alert("Nro. da OS não Preenchido!!")
           
                xRet := .F. //Determina o retorno .F., barrando a gravação do modelo.
           
            EndIf
        EndIf
    EndIf
EndIf

Return xRet

Por favor Acessar ou Registrar para participar da conversa.

Mais
5 anos 9 meses atrás #32606 por admin
Respondido por admin no tópico Pontos de Entrada
Brother estranho, acabei de verificar o fonte da versão 12 e continua o mesmo ponto de entrada sim:



If (ExistBlock("MT110TOK"))
lRetorno := ExecBlock("MT110TOK",.F.,.F.,{lRetorno,dA110Data})
If ValType(lRetorno) <> "L"
lRetorno := .T.
EndIf
EndIf

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.089 segundos
Joomla templates by a4joomla