Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Totvs custom tabs box
tabsConfiguraciones Previas, Flujo de Prueba, Punto de Entrada
idspaso1,paso2,paso3
Totvs custom tabs box items
defaultyes
referenciapaso1
  1. Por medio del módulo Configurador, opción Base de Datos (SIGACFG >> Base de Datos | Diccionario) crear campos de usuario para las tablas SC5/SC6 y SF2/SD2.
  2. Por medio del módulo Configurador, opción Usuarios (SIGACFG >> Usuario | Contraseñas) dar de alta dos usuarios.
  3. Desarrollar y compilar el punto de entrada M462FIM. En el punto de entrada desarrollar el tratamiento para grabar la información en los campos específicos.
  4. Por medio de la rutina Clientes (SIGAFAT >> Actualizaciones | Archivos) incluir dos clientes.
  5. Por medio de la rutina Productos (SIGAFAT >> Actualizaciones | Archivos) incluir 3 productos.
  6. Por medio de la rutina Tipos de Entrada y Salida (SIGAFAT >> Actualizaciones | Archivos) incluir una TES de salida.
  7. Por medio de la rutina Pedidos de Venta (SIGAFAT >> Actualizaciones | Pedidos) realizar la inclusión de 4 pedidos de venta (000001, 000002, 000003 y 000004). Los pedidos de venta deben generar remitos de venta.
  8. Efectuar las aprobaciones correspondientes para permitir la generación de los remitos de venta.
Totvs custom tabs box items
defaultno
referenciapaso2
  1. Ingresar al sistema con el usuario 1.
  2. Ingresar a la rutina Generación de Remitos (SIGAFAT >> | Generac. de Remitos), seleccionar los pedidos de venta 000001 y 000002, para la generación de los remitos.Ingresar al sistema con el usuario 2.
  3. Ingresar a la rutina Generación de Remitos (SIGAFAT >> | Generac. de Remitos), seleccionar los pedidos de venta 000003 y 000004, para la generación de los remitos.
  4. Para el usuario 1, dar clic en la opción “+Gen. Remito” para confirmar la generación del remito de venta.
  5. Para el usuario 2, dar clic en la opción “+Gen. Remito” para confirmar la generación del remito de venta. La rutina toma inicialmente el mismo número de documento asignado al remito generado por el usuario 1, pero realiza el cambio al grabar el documento.
  6. Una vez generados los documentos, verificar que los campos específicos del pedido de venta sean trasladados de manera correcta al remito de venta.
Totvs custom tabs box items
defaultno
referenciapaso3
Informações
iconfalse
titleEjemplo:


UserFunctionM462FIM()
LocalaRem      := ParamIxb[1]
Local_aArea    := GetArea()
LocalaAreaSC5  := SC5->(GetArea())
LocalaAreaSC6  := SC6->(GetArea())
LocalaAreaSD2  := SD2->(GetArea())
LocalaAreaSF2  := SF2->(GetArea())
LocalnRem      := 0
LocallCpoMNota := (SF2->(ColumnPos("F2_MENNOTA") ) > 0.And.SC5->(ColumnPos("C5_MENNOTA") ) > 0)
LocallCpoXDes  := (SD2->(ColumnPos("D2_XDESCRI")) > 0.And.SC6->(ColumnPos("C6_XDESCRI")) > 0)



    SF2->(DbsetOrder(1))
    SD2->(DbsetOrder(3))
    SC5->(DbsetOrder(1))
    SC6->(DbsetOrder(1))

    FornRem := 1toLen(aRem)    
        IfSF2->(DbSeek(xFilial("SF2") + aRem[nRem,2] + aRem[nRem,1]))

            /*Encabezado documento*/
            IfSD2->(DbSeek(xFilial("SD2") + SF2->(F2_DOC + F2_SERIE + F2_CLIENTE + F2_LOJA)))
                IfSC5->(DbSeek(xFilial("SC5") + SD2->D2_PEDIDO))
                    IfRecLock("SF2",.F.)
                        IflCpoMNota
                            If !Empty(SC5->C5_MENNOTA)
                                ReplaceSF2->F2_MENNOTAwithSC5->C5_MENNOTA
                            EndIf
                        EndIf
                    SF2->(MsUnlock())
                    EndIf
                EndIf

                /*Ítems documento*/
                DoWhileSD2->(!EOF()) .And.SD2->(D2_FILIAL + D2_DOC + D2_SERIE + D2_CLIENTE + D2_LOJA) == xFilial("SD2") + SF2->(F2_DOC + F2_SERIE + F2_CLIENTE + F2_LOJA)
                    IfSC6->(DbSeek(xFilial("SC6")+SD2->D2_PEDIDO+SD2->D2_ITEMPV))
                        IfRecLock("SD2",.F.)
                            IflCpoXDes
                                ReplaceSD2->D2_XDESCRIwithSC6->C6_XDESCRI
                            Endif
                            SD2->(MsUnlock())
                        Endif
                    Endif  
                    SD2->(DbSkip())
                EndDo
            EndIf
           
        Endif

    NextnRem

    SF2->(RestArea(aAreaSF2))
    SD2->(RestArea(aAreaSD2))
    SC5->(RestArea(aAreaSC5))
    SC6->(RestArea(aAreaSC6))
    RestArea(_aArea)

Return {aRem}

...