Árvore de páginas

01. DATOS GENERALES


Producto

TOTVS Backoffice

Línea de producto: 

Línea Protheus

Segmento:

Backoffice

Módulo:SIGACOM - Compras
Función:
RutinaNombre TécnicoFecha
LOCXNFNotas Fiscales19/06/2022
Rutina relacionadaNombre Técnico
LOCXNF2Funciones Genéricas de Notas Fiscales
LOCXARGFunciones Genéricas de Notas Fiscales para Argentina
LOCXMEXFunciones Genéricas de Notas Fiscales para México
LOCXPERFunciones Genéricas de Notas Fiscales para Perú
LOCXCOLFunciones Genéricas de Notas Fiscales para Colombia
LOCXBOLFunciones Genéricas de Notas Fiscales para Bolivia
LOCXDOMFunciones Genéricas de Notas Fiscales para República Dominicana
País:México
Ticket:14524812
Requisito/Story/Issue (informe el requisito vinculado):DMINA-16086


02. SITUACIÓN/REQUISITO

Al realizar el ExecAuto de la rutina de Remitos de Entrada (MATA102N), el campo Costo Orig. (D1_CUSORI ) de la tabla SD1 - Ítems de las Fact. de Entrada, no es informado.

Información

Al realizar el proceso de generación de Remito de Entrada en el módulo Compras (SIGACOM) desde el menú Actualizaciones | Movimientos | Remisión (MATA102N), el campo Costo Orig. (D1_CUSORI ) sí es informado.

03. SOLUCIÓN

En la rutina de Notas Fiscales (LOCXNF), se modifica la función que Busca el costo para un ítem de una Nota Fiscal (NfGravaCusto); para que la grabación de los campos de Costos solo atienda funcionalidad del parámetro MV_CUSDESP, para la ejecución del ExecAuto solo para generación de documentos desde Despachos (MATA143) o Pedimentos (MATA447).


  1. Realizar un respaldo del repositorio del ambiente (archivo .rpo).
  2. Aplicar el parche generado para la issue DMINA-16086.
  3. Validar que las rutinas estén actualizadas de acuerdo a la Fecha mencionada en la sección 01. DATOS GENERALES.
  4. En el módulo Compras (SIGACOM) desde el menú Actualizaciones | Archivos | Proveedores (MATA020)
    • Configurar un Proveedor, para la generación del Remito de Entrada por medio del ExecAuto.
  5. En el módulo Compras (SIGACOM) desde el menú Actualizaciones | Archivos | Productos (MATA010)
    • Configurar un Producto, para la generación del Remito de Entrada por medio del ExecAuto.
  6. En el módulo Compras (SIGACOM) desde el menú Actualizaciones | Archivos | Tipos de Entrada y Salida (MATA080)
    • Configurar un Tipo de Entrada (TES), para la generación del Remito de Entrada por medio del ExecAuto.
  7. Compilar la rutina que contenga la Función de Usuario con el ExecAuto a la rutina MATA102N (Ver ejemplo en la sección 04. INFORMACIÓN ADICIONAL)
  8. En el módulo Configurador (SIGACFG) desde el menú Entorno| Archivos | Menú (CFGX013)
    • Incluir en el menú la rutina para generación de Remitos de Entrada por medio de ExecAuto.
  1. Ir al menú donde se agregó la rutina con la Función de Usuario y ejecutar el proceso.
  2. Una vez finalizado, verificar la grabación del campo Costo Orig. (D1_CUSORI ) de la tabla SD1 - Ítems de las Fact. de Entrada.

04. INFORMACIÓN ADICIONAL

Ejemplo de Execauto a rutina MATA102N:

ExecAuto
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"   
 
User Function xMta102n()
    Local _aCabec       := {}    //Array com dados do cabecalho
    Local _aItens       := {}    //Array com dados do item
    Local aLinha        := {}    //Array de trabalho
    Local cDoc          := ""

    Private aRecsSF1    := {}    //Array para vinculo de Notas
    Private lMsErroAuto := .F.   //Controle de execucao da Rotina
 
    cDoc :=  FWInputBox("Número documento", "") 
 
    //Cabecalho
    aadd(_aCabec,{"F1_FILIAL","01"})
    aadd(_aCabec,{"F1_DOC",cDoc})
    aadd(_aCabec,{"F1_SERIE","REM"})
    aadd(_aCabec,{"F1_FORNECE","000001"})
    aadd(_aCabec,{"F1_LOJA","01"})
    aadd(_aCabec,{"F1_TIPO","N"})
    aadd(_aCabec,{"F1_FORMUL","N"})
    aadd(_aCabec,{"F1_EMISSAO",dDataBase})
    aadd(_aCabec,{"F1_TXMOEDA",1})
    aadd(_aCabec,{"F1_TIPODOC","60"})
 
    //Itens
    aadd(_aItens,{"D1_COD","000000000000000000000000000010",nil})
    aadd(_aItens,{"D1_QUANT",1,nil})
    aadd(_aItens,{"D1_VUNIT",712.00,nil})
    aadd(_aItens,{"D1_TOTAL",712.00,nil})
    aadd(_aItens,{"D1_TES","001",nil})
    aadd(_AItens,{"D1_TIPO","N",nil}) 
    aadd(_AItens,{"D1_CUSTO",712.00,NIL})
    aadd(_AItens,{"D1_CUSORI",712.00,NIL})
    aadd(aLinha,_aItens)
    MsExecAuto({|x, y, z| Mata102N(x, y, z)}, _aCabec, aLinha, 3)  
 
    If lMsErroAuto   
        MostraErro()
    else
        msgInfo("Remito de Entrada incluido: " + cDoc, "ExecAuto MATA102N")
    Endif    
 
Return Nil



¡IMPORTANTE!

La solución aplica para versión 12.1.27 o superior.


05. ASUNTOS RELACIONADOS

Remito de entrada (MATA102N - SIGACOM)