01. DADOS GERAIS
Produto: | Solucoes_totvs |
---|
Solucao | TOTVS Logística WMS |
---|
|
Solucoes_totvs_parceirosexptotvs |
---|
|
|
---|
Linha de Produto: | |
---|
Segmento: | |
---|
Módulo: |
---|
SIGAWMS - Gestão de ArmazenagemTOTVS WMS - Linha Protheus - WMS Protheus (SIGAWMS) |
Função: | WMSV085 |
---|
- Coletor.PRW |
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 no Recebimento ou na Transferência via Coletor RF, sendo executado após exibir 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 exibidas 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, retorne à tela que efetua a confirmação do produto. Além disso, as informações não estarão mais disponíveis em tela quando for informado 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.
...
User Function WMSV085PPR()
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
------
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>
|