Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

NomeTipoDescrição

nLinha

NuméricoPróxima linha disponível no coletor para o Ponto de Entrada exibir as informações.
lTemLoteLógicoIndica 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.
nTemSubLotLógicoIndica 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éricoQuantidade do movimento conferido
nQtdeNuméricoQuantidade do produto caso seja informado Código de Barra do produto

05. RETORNO

Deve ser retornado o conteúdo de nLinha.

...

Utilize o exemplo para apoio neste controle.

08. EXEMPLO

------


#INCLUDE

...

'PROTHEUS.CH

...

'
#INCLUDE 'APVT100.CH'



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

------


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>