Árvore de páginas

Versões comparadas

Chave

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


01. DADOS GERAIS

Produto:

Solucoes_totvs
SolucaoTOTVS Logística WMS

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
LinhaLinha Protheus

Segmento:

Segmentos_totvs
SegmentoLogística

Módulo:SIGAWMS - Gestão de ArmazenagemTOTVS WMS - Linha Protheus - WMS Protheus (SIGAWMS)
Função:-
País:Todos Países
Ticket:-

13983776

Requisito/Story/Issue (informe o requisito relacionado) :DLOGWMSMSP-13863


02. DESCRIÇÃO

Este Ponto de Entrada permite manipular os registros da Movimentos Serviços WMS (D12) gerados no momento da execução do serviço.

03. LOCALIZAÇÃO

Localizado ao final da função responsável pela geração do movimento da tabelas D12 na execução do Serviço WMSna função LawExecute(), responsável por avaliar as regras para convocação do serviço e disponibilizar os Movimentos Serviços WMS (D12) a serem manipulados.

04. PARÂMETROS

...

NomeTipoDescriçãoObrigatório
aLibD12 ArrayContêm dados da tabela Movimentos Serviços WMS (D12)Sim

05. RETORNO

Recebe retorno de um Array.

NomeTipoDescriçãoObrigatório
aLibD12ArrayContêm dados da tabela Movimentos Serviços WMS (D12) após a modificação.Sim

  

06. VERSÕES

Protheus 12.1.17 27 ou superiores.

07. OBSERVAÇÃO

Todos os parâmetros são recebidos na User Function via PARAMIXB, conforme consta em Execblock / Customização.

08. EXEMPLO

------

#INCLUDE

...

'TOTVS.CH'


/*/{Protheus.doc} WMSALIBX
Ponto de entrada para manipular a tabela D12, no momento da geração do serviço, antes de liberar para convocação
@type function
@version V.12
/*/
User Function WMSALIBX() //{Self:aLibD12}
    Local aAreaAtu := GetArea()
    Local aLibD12  := PARAMIXB[1]
    Local nI

...

Local nI := 0
Local nQtdOper := 0
Local nQtdAtivi := 0
Local nPorOper := 0
Local nConta := 0
Local nOper := 0

If Len(aLibD12) > 0
   

...

nQtdOper  := 2
   

...

nQtdAtivi := 0

...

    For nI := 1 To Len(aLibD12)
       

...

If aLibD12[nI,4] == "301" //Serviço de Separação
           

...

nQtdAtivi++
       

...

Endif
   

...

Next

...

   

...

If nQtdAtivi > 0 .And. nQtdOper > 0
       

...

nPorOper := Round(nQtdAtivi/nQtdOper,0)

...

        nConta   := 0

...

        nOper    := 1

...

       

...

For nI := 1 To Len(aLibD12)
           

...

If aLibD12[nI,4] == "301" //Serviço de Separação
               

...

D12->(dbGoTo(aLibD12[nI,2]))
               

...

If D12->(!Eof())

...

                    RecLock('D12',.F.)
                   

...

D12->D12_RECEMB := StrZero(nOper,6)

...

                    D12->(MsUnlock())

...

                    nConta++

...

                EndIf

...

                If nConta >= nPorOper
                   

...

nConta := 0
                   

...

nOper  ++
               

...

Endif

...

           

...

Endif
       

...

Next

...

    Endif

...

Endif

...

RestArea(aAreaAtu)

Return(aLibD12)

------


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>