Produto: | |
---|---|
Linha de Produto: | |
Segmento: | |
Módulo: | TOTVS WMS - Linha Protheus - WMS Protheus (SIGAWMS) |
Função: | |
País: | Todos Países |
Ticket: | 14545124 |
Requisito/Story/Issue (informe o requisito relacionado) : | DLOGWMSMSP-14221 |
Este Ponto de Entrada permite preencher campos customizados na tabela D14 após atualização de saldo.
Localizado na rotina WMSDTRCESTOQUEENDEREÇO (METHOD UpdSaldo).
Nome | Tipo | Descrição |
---|---|---|
cTipo | Caracter | Tipo de movimento gerado (499 - Entrada / 999 - Saída). |
lEstoque | Lógico | Considerar quantidade em estoque. |
lEntprev | Lógico | Considerar quantidade de entrada prevista. |
lSaiprev | Lógico | Considerar quantidade de saída prevista. |
lEmpenho | Lógico | Considerar quantidade empenhada. |
lBloqueio | Lógico | Considerar quantidade bloqueada. |
lEmpPrev | Lógico | Considerar quantidade empenho previsto. |
self:nquant | Objeto | Objeto com dados da quantidade do produto (Tabela D14) |
nQtd2UM | Numérico | Unidade de medida a se considerada(1 - Primeira unidade / 2 - Segunda unidade) |
Self:oEndereco | Objeto | Objeto com dados do endereço do produto (Tabela SBF) |
Self:oProdLote | Objeto | Objeto com dados do lote do produto (Tabela SB8) |
Não se aplica.
Protheus 12.1.17 ou superiores.
Não se aplica.
------
#
#INCLUDE 'TOTVS.CH'
/*/{Protheus.doc} WMSATD14
Ponto de entrada após a atualização do saldo no D14
@type function
@version V.12.1.27
@author Reinaldo Dias
@since 16/06/2022
/*/
User Function WMSATD14() //{cTipo,lEstoque,lEntPrev,lSaiPrev,lEmpenho,lBloqueio,lEmpPrev,Self:nQuant,nQtd2UM,Self:oEndereco,Self:oProdLote}
Local aArea := { GetArea(), SBE->(GetArea()) }
Local cTipo := PARAMIXB[1]
Local lEstoque := PARAMIXB[2]
Local lEntPrev := PARAMIXB[3]
Local lSaiPrev := PARAMIXB[4]
Local lEmpenho := PARAMIXB[5]
Local lBloqueio := PARAMIXB[6]
Local lEmpPrev := PARAMIXB[7]
Local nQuant := PARAMIXB[8]
Local nQtd2UM := PARAMIXB[9]
Local oEndereco := PARAMIXB[10]
Local oProdLote := PARAMIXB[11]
If (D14->D14_QTDEST > 0 .Or. D14->D14_QTDEPR > 0 .Or. D14->D14_QTDSPR > 0 .Or. D14->D14_QTDEMP > 0 .Or. D14->D14_QTDPEM > 0 .Or. D14->D14_QTDBLQ > 0)
SBE->(DBSetOrder(1))//BE_FILIAL+BE_LOCAL+BE_LOCALIZ+BE_ESTFIS
If SBE->(DBSeek(xFilial("SBE")+D14->D14_LOCAL+D14->D14_ENDER+D14->D14_ESTFIS)) .And. SBE->BE_STATUS == "1"
RecLock("SBE",.F.)
SBE->BE_STATUS := "2"
MsUnlock()
Endif
Endif
If FunName() == "QIEA215" .and. FWIsInCallStack ("MakeArmaz") .and. D14->(!Eof()) .and. cTipo == "499" .and. lEstoque .and. !lEntPrev .and. lSaiPrev .and. D14->D14_LOCAL <> "98" .and. Alltrim(D14->D14_ENDER) $ "R010101|R010102"
RecLock("D14",.F.)
D14->D14_QTDEPR += nQuant
D14->D14_QTDEP2 += nQtd2UM
MsUnlock()
Endif
AEval(aArea, {|area| RestArea(area)})
Return Nil
------
<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> |