Histórico da Página
...
- Descrição
- Localização
- Programa Fonte
- Parâmetros
- Retorno
- Exemplo de utilização
- Assuntos Relacionados
...
03. PROGRAMA FONTE
MATC040.PRX
04. PARÂMETROS
Parâmetros | Tipo | Descrição |
---|---|---|
PARAMIXB[1] | Numérico | Saldo Lote/Sub-Lote |
PARAMIXB[2] | Numérico | Saldo Total Lote |
PARAMIXB[3] | Array | ListBox das movimentacoes dos Lote/SubLote |
05. RETORNO
Tela de configuração da impressão e impressão dos movimentos.
...
06. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE 'Protheus.ch' User Function MC040IMP() Local nSaldo := PARAMIXB[1] Local nSaldoLote:= PARAMIXB[2] Local aRegs := PARAMIXB[3] Local cTitulo := "Rastreamento de Lotes/Sub-Lotes" Local cDesc1 := "Este programa ira imprimir a Consulta do Produto selecionado" Local cDesc2 := "informando o Rastreamento do seu Lote/Sub-Lote." Local cString := "SB8" Local cTamanho := "G" Local cPergRel := " " Local cNomeProg := "MC040IMP" Local aRegAnt Private aReturn := {"Zebrado", 1,"Administracao", 1, 2, 1, "", 1 } Private nLastKey:= 0 Private wnrel := "MATC040" If nSaldo <= 0 Aviso("Atencao !!!","Saldo do produto menor ou igual a zero !!!",{"OK"}) Else aRegAnt := GetArea() wnRel := SetPrint(cString,wnrel,cPergRel,@cTitulo,cDesc1,cDesc2,"",.F.,"",.F.,cTamanho) RestArea(aRegAnt) If nLastKey == 27 dbClearfilter() Else SetDefault( aReturn, cString ) If nLastKey == 27 dbClearfilter() Else RptStatus({|lEnd| U_TestRel(@lEnd,cTitulo,wnRel,nSaldo,nSaldoLote,cTamanho,cNomeProg,aRegs)},cTitulo) EndIf EndIf EndIf Return .T. User Function TestRel(lEnd,cTitulo,wnRel,nSaldo,nSaldoLote,cTamanho,cNomeProg,aRegs) Local cCabec1, cCabec2 Local cRodaTxt := oemtoansi("Rodapé") Local nCntImpr := 0 Local nI := 1 Local cPicB8Sld:= PesqPictQT("B8_SALDO",14) Local nTipo li := 80 m_pag := 1 // Inicializa os códigos de caracter Comprimido da impressora nTipo := 15 // Monta os Cabecalhos cCabec1 := "Rastreamento de Lotes/SubLotes" cCabec2 := "" SetRegua(Len(aRegs)) For nI:=1 to Len(aRegs) If lEnd @PROW()+1,001 PSAY "Cancelado pelo operador" Exit EndIf Incregua() If li > 60 li := cabec( cTitulo, cCabec1, cCabec2, cNomeProg, cTamanho ) li++ @ li, 005 PSAY OemtoAnsi("Lote") + " " + SB8->B8_LOTECTL If Rastro(SB1->B1_COD, "S") @ li,030 PSAY OemtoAnsi("Sub-Lote") + " " + SB8->B8_NUMLOTE EndIf @ li++,050 PSAY "Validade:" + " " + DtoC(SB8->B8_DTVALID) @ li++,005 PSAY OemtoAnsi("Produto/Descricao") + " " + SB8->B8_PRODUTO + " - " + SB1->B1_DESC @ li++,005 PSAY OemtoAnsi("Almoxarifado") + " " + SB8->B8_LOCAL @ li, 005 PSAY OemtoAnsi("Saldo") @ li++,011 PSAY If(Rastro(SB1->B1_COD, "L"), nSaldo, nSaldoLote) Picture cPicB8Sld @ li++,000 PSAY __PrtThinLine() li ++ @ li,000 PSAY __PrtThinLine() li ++ EndIf Next nI If li != 80 li++ roda(nCntImpr,cRodaTxt,cTamanho) EndIf If aReturn[5] = 1 Set Printer To dbCommitAll() ourspool(wnrel) EndIf MS_FLUSH() Return .T. |
...
07. ASSUNTOS RELACIONADOS
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas