Histórico da Página
01. DADOS GERAIS
Produto: |
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linha de Produto: |
| ||||||||||||||||
Segmento: |
| ||||||||||||||||
Módulo: | SIGAWMS - Gestão de Armazenagem | ||||||||||||||||
Função: | WMSV090 - Conferência do Recebimento (Coletor) | ||||||||||||||||
País: | Todos Países | ||||||||||||||||
Ticket: | - | ||||||||||||||||
Requisito/Story/Issue (informe o requisito relacionado) : | - |
02. DESCRIÇÃO
Este Ponto de Entrada permite validar a quantidade na Conferência de Recebimento.
03. LOCALIZAÇÃO
Localizado na digitação da quantidade a ser conferida.
04. PARÂMETROS
Nome | Tipo | Descrição |
---|---|---|
cConferen | Caractere | Código da conferência de recebimento |
cProduto | Caractere | Produto a ser conferido |
cLote | Caractere | Lote a ser conferido |
cSublote | Caractere | Sublote a ser conferido |
nQuant | Numérico | Quantidade a ser conferida |
dDtValidade | Data | Data de validade do lote a ser conferido |
05. RETORNO
Lógico - .T. ou .F.
06. VERSÕES
Protheus 12.1.17 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 "PROTHEUS.CH"
User Function WV090VLQ()
Local aAreaAnt := GetArea()
Local lRet := .T.
Local cConferen := PARAMIXB[1]
Local cProduto := PARAMIXB[2]
Local cLote := PARAMIXB[3]
Local cSubLote := PARAMIXB[4]
Local nQuant := PARAMIXB[5]
Local cAliasQry := GetNextAlias()
Local cQuery := ""
Local aTamSX3 := {}
cQuery := "SELECT SUM(DCY_QTORIG) DCY_QTORIG,"
cQuery += " SUM(DCY_QTCONF) DCY_QTCONF"
cQuery += " FROM " + RetSqlName('DCY')
cQuery += " WHERE DCY_FILIAL = '"+xFilial('DCY')+"'"
cQuery += " AND DCY_EMBARQ = '"+cConferen+"'"
cQuery += " AND DCY_PROD = '"+cProduto+"'"
cQuery += " AND DCY_PRDORI = '"+cProduto+"'"
cQuery += " AND (DCY_LOTE = '"+cLote+"'"
cQuery += " OR DCY_LOTE = ' ')" // Pré-nota sem informar lote
cQuery += " AND (DCY_SUBLOT = '"+cSubLote+"'"
cQuery += " OR DCY_SUBLOT = ' ')"
cQuery += " AND D_E_L_E_T_ = ' '"
cQuery := ChangeQuery(cQuery)
DbUseArea(.T.,'TOPCONN',TcGenQry(,,cQuery),cAliasQry,.F.,.T.)
// Ajusta o tamanho dos campos no cursor
aTamSX3 := TamSx3('DCY_QTORIG')
TcSetField(cAliasQry,'DCY_QTORIG','N',aTamSX3[1],aTamSX3[2])
TcSetField(cAliasQry,'DCY_QTCONF','N',aTamSX3[1],aTamSX3[2])
If !(cAliasQry)->(Eof())
If QtdComp((cAliasQry)→ DCY_QTORIG) <= 0
WmsMessage("Produto/lote nao pertence a conferencia!")
lRet := .F.
ElseIf QtdComp((cAliasQry)->DCY_QTORIG) < QtdComp((cAliasQry)->DCY_QTCONF + nQuant)
WmsMessage("Quantidade informada mais a conferida ultrapassa o total do(s) documento(s)!")
lRet := .F.
EndIf
EndIf
RestArea(aAreaAnt)
Return lRet
------
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> |