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

NomeTipoDescrição
cConferenCaractereCódigo da conferência de recebimento
cProdutoCaractereProduto a ser conferido
cLoteCaractereLote a ser conferido
cSubloteCaractereSublote a ser conferido
nQuantNuméricoQuantidade a ser conferida

05. RETORNO

Lógico - .T. ou .F.

06. VERSÕES

12.1.7 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




<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>