Produto: | |
---|---|
Linha de Produto: | |
Segmento: | |
Módulo: | SIGAOMS - Gestão de Distribuição |
Função: | - |
País: | Todos Países |
Ticket: | - |
Requisito/Story/Issue (informe o requisito relacionado) : | - |
A partir dos Pontos de Entrada OM200CAR e OM200QRY é permitido modificar o filtro de Pedidos válidos para inclusão em montagem de carga. Desta forma, é possível selecionar os Pedidos bloqueados, situação não permitida na busca padrão.
Na liberação desses Pedidos bloqueados ocorre o processo de estorno, necessário para definir quais lotes serão utilizados para atender o Pedido e, então, uma nova inclusão da liberação do Pedido. Durante esse estorno, há a remoção dos Pedidos das montagens de carga e, não existindo mais Pedidos na montagem de carga, esta é excluída.
Assim, este Ponto de Entrada permite armazenar as informações do Pedido estornado e não excluir a montagem de carga.
Os processos de estorno e reinclusão da liberação dos Pedidos continuam sendo executados.
Para o funcionamento completo deste Ponto de Entrada é necessário gerar o Ponto de Entrada M440SC9I. O exemplo para o funcionamento, conforme a necessidade, será exibido mais abaixo.
Localizado durante o estorno do Pedido, executado na liberação de estoque/crédito, antes de apagar as informações da carga da liberação do Pedido (SC9) e de remover o relacionamento entre o Pedido e a montagem de carga.
Não se aplica.
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
lRet | Lógico | Se verdadeiro, não efetua a exclusão da montagem de carga (DAK). | Sim |
12.1.27 ou superiores
Todos os parâmetros são recebidos na User Function via PARAMIXB, conforme consta em Execblock / Customização
#INCLUDE "PROTHEUS.CH" Static cFilCarPE := '' //Filial da carga Static cCargaPE := '' //Número da carga Static cSeqCarPE := '' //Sequencia da carga Static cSeqEntPE := '' //Sequencia de entrega Static nQtdeLib := 0 //Qtde a ser liberada Static aDAI := {} //informações da DAI a ser excluída temporariamente User Function OMSNEDAK() Local nX := 0 cFilCarPE := ParamIXb[1] cCargaPE := ParamIXb[2] cSeqCarPE := ParamIXb[3] cSeqEntPE := ParamIXb[4] nQtdeLib := ParamIxb[5] For nX := 1 to DAI->(FCount()) Aadd(aDAI, {DAI->(Field(nX)), DAI->(FieldGet(nX))}) Next nX Return .T. //=========================================== User Function M440SC9I() Local nX Local cCampo := '' If Len(aDAI) > 0 .And. !Empty(cFilCarPE).And. !Empty(cCargaPE) .And. !Empty(cSeqCarPE) .And. !Empty(cSeqEntPE) //Grava as informações da carga na liberação do pedido. SC9->C9_CARGA := cCargaPE SC9->C9_SEQCAR := cSeqCarPE SC9->C9_SEQENT := cSeqEntPE nQtdeLib -= SC9->C9_QTDLIB //Inclui a DAI. A SC9 estará posicionada e a DAK já existirá. DAI->(dbSetOrder(1)) //DAI_FILIAL+DAI_COD+DAI_SEQCAR+DAI_SEQUEN+DAI_PEDIDO If !DAI->(dbSeek(cFilCarPE + cCargaPE + cSeqCarPE + cSeqEntPE + SC9->C9_PEDIDO)) RecLock("DAI",.T.) For nX := 1 to len(aDAI) cCampo := aDAI[nX,1] DAI->&(cCampo) := aDAI[nX,2] Next nX DAI->DAI_PESO := 0 DAI->DAI_CAPVOL := 0 MsUnlock() EndIf //Atualiza os acumulados do DAI OsAvalDAI("DAI",1,,,,cFilCarPE) If nQtdeLib == 0 aSize(aDAI,0) cFilCarPE := '' cCargaPE := '' cSeqCarPE := '' cSeqEntPE := '' EndIf EndIf Return |
<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> |