Histórico da Página
01. DADOS GERAIS
Produto: |
| ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Linha de Produto: |
| ||||||||||||||||
Segmento: |
| ||||||||||||||||
Módulo: |
TOTVS WMS - Linha Protheus - WMS Protheus (SIGAWMS) | |
Função: | WMSV030 - Coletor |
---|---|
País: | Todos Países |
Ticket: |
13559106 | |
Requisito/Story/Issue (informe o requisito relacionado) : | DLOGWMSMSP-13564 |
---|
02. DESCRIÇÃO
Este Ponto de Entrada permite complementar a tela que solicita a coleta de produtos de produtos no Apanhe ou na Separação via Coletor RF, sendo executado após
apresentar o código do produto e antes da linha que solicita que o usuário confirme o código do produto.
...
- É possível exibir uma ou mais informações logo após o código do produto (dependendo da quantidade de linhas disponíveis na tela do coletor). Estas informações serão apresentadas na tela enquanto for informado o produto, o lote e a quantidade.
- Outra opção é criar uma tela auxiliar que permite o uso de toda a tela do coletor. Entretanto, para esta opção será necessário pressionar a tecla Enter
para que a mesma seja fechada e, então, retornar à tela, que efetua a confirmação do confirmação do produto. Além disso, as informações não estarão mais disponíveis em tela ao informar o produto, o lote e a quantidade.
...
Nome | Tipo | Descrição |
---|---|---|
nLinha | Numérico | Próxima linha disponível no coletor para o Ponto de Entrada exibir as informações. |
lTemLote | Lógico | Indica que no produto padrão será exibido o lote, o que reduz em 1 a quantidade de linhas disponíveis para o Ponto de Entrada. |
nTemSubLot | Lógico | Indica que no produto padrão será exibido o sublote, o que reduz em 1 a quantidade de linhas disponíveis para o Ponto de Entrada. |
nQtdTot | Numérico | Quantidade do movimento conferido. |
nQtde | Numérico | Quantidade do produto, caso seja informado o Código de Barra do produto. |
05. RETORNO
Deve ser retornado o conteúdo de nLinha.
...
Se for criada uma nova tela é necessário informar nLinha com o mesmo valor enviado para o Ponto de Entrada.
06. VERSÕES
Protheus 12.1.27 ou superiores.
07. OBSERVAÇÃO
...
Utilize o exemplo para apoio neste controle.
08. EXEMPLO
------
#INCLUDE "PROTHEUS.CH"
#INCLUDE 'APVT100.CH'
User Function WMSV030PPR()
Local nLinha := ParamIxb[1] //Última linha usada pelo produto padrão
Local lTemLote := ParamIxb[2] //Indica se será exibido o lote no produto padrão
Local lTemSubLot := ParamIxb[3] //Indica se será exibido o sublote no produto padrão
Local nQtdTot := ParamIxb[4] //Indica a quantidade do documento conferido
Local nQtde := ParamIxb[5] //Quantidade do produto caso seja usado Codigo de Barra
Local nQtMaxRow := VTMaxRow() + 1 //Qtde máxima de linhas do coletor
Local nLinPE := 0 //Qtde de linhas que o PE pode usar
Local aTelaAnt := {}
//até 8 linhas são usadas pelo programa padrão, caso haja lote e sublote.
nLinPE := nQtMaxRow - 8
//Se não houver lote, pode ser adicionada uma linha
If !lTemLote
nLinPE++
EndIf
//Se não houver sublote, pode ser adiciona uma linha
If !lTemSubLot
nLinPE++
EndIf
If nLinPE > 0
//Complementa a tela padrão com documento se houver ao menos 1 linha disponível
@ nLinha++,00 VTSay PadR('Documento: ' + D12->D12_DOC, VTMaxCol())
If nLinPE > 1
//Complementa a tela padrão com quantidade se houver ao menos 2 linhas disponíveis
@ nLinha++,00 VTSay PadR('Qtde: ' + AllTrim(Str(D12->D12_QTDORI)), VTMaxCol())
EndIf
Else
//Se não houver linhas suficientes há a possibilidade de criar uma nova tela para exibir
//todas as informações e fechál-la com um <Enter>
aTelaAnt := VTSave(00, 00, VTMaxRow(), VTMaxCol())
For nLinPE := 0 to VTMaxRow()
VTSay(nLinPE,0,Space(VtMaxCol()+1))
Next
WMSVTCabec('Dados do Produto',.F.,.F.,.T.)
@ 01,00 VTSay PadR('Produto: ' + D12->D12_PRODUT, VTMaxCol())
@ 02,00 VTSay PadR('Docto: ' + D12->D12_DOC, VTMaxCol())
@ 03,00 VTSay PadR('Qtde: ' + AllTrim(Str(D12->D12_QTDORI)), VTMaxCol())
WMSVTRodPe()
VTRestore(00, 00, VTMaxRow(), VTMaxCol(), aTelaAnt)
EndIf
Return nLinha
------
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> |