Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - TOTVS BackOffice (Línea Protheus) - MI - Compras (SIGACOM) - MATA094 - Ejemplo de rutina automática para la liberación de documentos


Duda

¿Cómo utilizar la rutina automática para la liberación de documentos MATA094?


Ambiente
Cross Segmentos - TOTVS Backoffice (Línea Protheus) - MI - Compras (SIGACOM) - Todas las versiones 12

Pais: Todos

Solución

Esta rutina automática se ejecuta en MVC:

Ejemplo de Rutina automática MATA094

#INCLUDE 'RWMAKE.CH'
#INCLUDE 'TBICONN.CH'
#INCLUDE 'PROTHEUS.CH'
#INCLUDE 'FWMVCDEF.CH'
 
User Function MyExec094()
 
    Local oModel094 := Nil      //-- Objeto que recibirá el modelo de la MATA094
    Local cNum      := "PMSA02" //-- Recibe el número del documento que se evaluará
    Local cTipo     := "PC"     //-- Recibe el tipo del documento que se evaluará
    Local cAprov    := "000003" //-- Recibe el código del aprobador del documento
    Local nLenSCR   := 0        //-- Control de tamaño de campo del documento
    Local lOk       := .T.      //-- Control de validación y commit
    Local aErro     := {}       //-- Recibe msg de error de procesamiento
 
    //-- Inicia el entorno
    PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01" USER "Administrador" PASSWORD "*" MODULO "COM"
     
    nLenSCR := TamSX3("CR_NUM")[1] //-- Obtiene tamaño del campo CR_NUM
    DbSelectArea("SCR")
    SCR->(DbSetOrder(3)) //-- CR_FILIAL+CR_TIPO+CR_NUM+CR_APROV
 
    If SCR->(DbSeek(xFilial("SCR") + cTipo + Padr(cNum, nLenSCR) + cAprov))
 
        //-- Códigos de operaciones posibles:
        //--    "001" // Liberado
        //--    "002" // Revertir
        //--    "003" // Superior
        //--    "004" // Transferir Superior
        //--    "005" // Rechazado
        //--    "006" // Bloqueo
        //--    "007" // Visualización
 
        //-- Selecciona la operación de aprobación de documentos
        A094SetOp('001')
 
        //-- Carga el modelo de datos y selecciona la operación de aprobación (UPDATE)
        oModel094 := FWLoadModel('MATA094')
        oModel094:SetOperation( MODEL_OPERATION_UPDATE )
        oModel094:Activate()
 
        //-- Valida el formulario
        lOk := oModel094:VldData()
 
        If lOk
            //-- Si validó, graba el formulario
            lOk := oModel094:CommitData()
        EndIf
 
        //-- Evalua errores
        If !lOk
            //-- Busca el Error del Modelo de Datos
            aErro := oModel094:GetErrorMessage()
                 
            //-- Elabora el texto que se mostrará en la pantalla
            AutoGrLog("Id del formulario de origen:" + ' [' + AllToChar(aErro[01]) + ']')
            AutoGrLog("Id del campo de origen: "     + ' [' + AllToChar(aErro[02]) + ']')
            AutoGrLog("Id del formulario de error: "  + ' [' + AllToChar(aErro[03]) + ']')
            AutoGrLog("Id del campo de error: "       + ' [' + AllToChar(aErro[04]) + ']')
            AutoGrLog("Id del error: "                + ' [' + AllToChar(aErro[05]) + ']')
            AutoGrLog("Mensaje del error: "          + ' [' + AllToChar(aErro[06]) + ']')
            AutoGrLog("Mensaje de la solución:"        + ' [' + AllToChar(aErro[07]) + ']')
            AutoGrLog("Valor atribuido: "           + ' [' + AllToChar(aErro[08]) + ']')
            AutoGrLog("Valor anterior: "            + ' [' + AllToChar(aErro[09]) + ']')
 
            //-- Muestra el mensaje de error
            MostraErro()
        EndIf
 
        //-- Desactiva el modelo de datos
        oModel094:DeActivate()
 
    Else
        MsgInfo("Documento no encontrado!", "MyExec094")
    EndIf
     
    //-- Finaliza el entorno
    RESET ENVIRONMENT
 
Return Nil

 

Conozca más.

¿Fue útil este artículo?
Usuarios a los que les pareció útil: 0 de 0

0 Comentarios

Inicie sesión para dejar un comentario.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Rellene los campos siguientes para iniciar el chat:

Chat _