01. DATOS GENERALES

Producto:

TOTVS Mantenimiento de activos

Línea de producto:

Línea Protheus

Segmento:

Manufactura

Módulo:

TOTVS Manufactura (Línea Protheus) - Mantenimiento de activos (SIGAMNT)

Función:

MNTUTIL_OS


02. DESCRIPCIÓN

Descripción:

Punto de entrada que permite incluir nuevos campos o cambiar el contenido de cualquier campo al generar una S.A.

Parámetros:

Posición

Tipo

Descripción

1

array

Lista de los campos del encabezado del pedido de compra que se generará.

[1] Nombre del campo

[2] Contenido

[3] Nil

2

array

Lista de los campos para los ítems del pedido de compra que se generará.

[1] Nombre del campo

[2] Contenido

[3] Nil

Devolución:

Tipo

Descripción

array

Lista que contiene los campos de ítems y encabezado,

[1] Campos del encabezado del pedido

[2] Campos de los ítems del pedido

[3] Prorrateo de centro de costos

03. OTRAS INFORMACIONES

Ejemplo: P.E. NGUTIL51
#Include 'Protheus.ch'
 
User Function NGUTIL51()

    Local aCabec := ParamIXB[1]
    Local aItens := ParamIXB[2]
    Local aRatCC := {}
    Local nInd1  := 0
    Local nPos   := 0

    If ( nPos := aScan( aCabec, { |x| x[1] == 'C7_CONTATO' } ) ) > 0

        aCabec[nPos,2] := 'PE NGUTIL51'

    EndIf

    For nInd1 := 1 To Len( aItens )
        
        aAdd( aRatCC, Array( 2 ) )

        aRatCC[nInd1,1] := PadL( nInd1, FWTamSx3( 'CH_ITEMPD' )[1], '0' )
        aRatCC[nInd1,2] := {}

        aCC := {}
        aAdd( aCC, { 'CH_FILIAL' , FWxFilial( 'SCH' )                      , Nil } )
        aAdd( aCC, { 'CH_ITEM'   , PadL( 1, FWTamSx3( 'CH_ITEM' )[1], '0' ), Nil } )
        aAdd( aCC, { 'CH_PERC'   , 50                                      , Nil } )
        aAdd( aCC, { 'CH_CC'     , '001'                                   , Nil } )
        aAdd( aCC, { 'CH_CONTA'  , '000001'                                , Nil } )
        aAdd( aCC, { 'CH_ITEMCTA', 'IC001'                                 , Nil } )
        aAdd( aCC, { 'CH_CLVL'   , 'CV001'                                 , Nil } )

        aAdd( aRatCC[nInd1,2], aClone( aCC ) )

        aCC := {}
        aAdd( aCC, { 'CH_FILIAL' , FWxFilial( 'SCH' )                      , Nil } )
        aAdd( aCC, { 'CH_ITEM'   , PadL( 2, FWTamSx3( 'CH_ITEM' )[1], '0' ), Nil } )
        aAdd( aCC, { 'CH_PERC'   , 50                                      , Nil } )
        aAdd( aCC, { 'CH_CC'     , '002'                                   , Nil } )
        aAdd( aCC, { 'CH_CONTA'  , '000001'                                , Nil } )
        aAdd( aCC, { 'CH_ITEMCTA', 'IC001'                                 , Nil } )
        aAdd( aCC, { 'CH_CLVL'   , 'CV001'                                 , Nil } )

        aAdd( aRatCC[nInd1,2], aClone( aCC ) )


        /*-------------------------------------------------------------------------------------+
        | Para utilizar el prorrateo de costos, se deben retirar los siguientes campos de la integración |
        +-------------------------------------------------------------------------------------*/
        If ( nPos := aScan( aItens[nInd1], { |x| x[1] == 'C7_CLVL' } ) ) > 0

            aDel( aItens[nInd1], nPos )
            
            aSize( aItens[nInd1], Len( aItens[nInd1] ) - 1 )

        EndIf

        If ( nPos := aScan( aItens[nInd1], { |x| x[1] == 'C7_ITEMCTA' } ) ) > 0

            aDel( aItens[nInd1], nPos )
            
            aSize( aItens[nInd1], Len( aItens[nInd1] ) - 1 )

        EndIf

        If ( nPos := aScan( aItens[nInd1], { |x| x[1] == 'C7_CC' } ) ) > 0

            aDel( aItens[nInd1], nPos )
            
            aSize( aItens[nInd1], Len( aItens[nInd1] ) - 1 )

        EndIf

    Next nInd1

Return { aCabec, aItens, aRatCC } 


04. ASUNTOS RELACIONADOS

  • No se aplica