Árvore de páginas

Descrição

O ponto de entrada F486PRT permite a impressão de um relatório personalizado feito pelo usuário, no programa de cadastro de recibos modelo II

Observações

O relatório deve ser desenvolvido pelo usuário

Exemplos

#INCLUDE "SIGAWIN.CH"
User Function F486PRT

SetPrvt("CDESC1,CDESC2,CDESC3,TITULO,ARETURN,NOMEPROG")

titulo := "TITULO RELAT"
cDesc1 := "iMPRESÃO RELAT PERS"
cDesc2 := ""
cDesc3 := ""
//"Especial","Administracion"
aReturn := { OemToAnsi("Especial"), 1,OemToAnsi("Administracion"), 1, 1,1,"",1 }

cPerg := ""
nLastKey := 0
lContinua:= .T.
nLin := 0
wnrel := "RPT_PER"

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Tamanho do formulario ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
nTamRm := 72 // Apenas Informativo
cString := "SEL"

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Envia controle para a funcao SETPRINT ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
wnrel:=SetPrint(cString,wnrel,cPerg,Titulo,cDesc1,cDesc2,cDesc3,.F.,,.F.,,,.F.)

If nLastKey == 27
Return
Endif

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Verifica posicao do formulario na impressora ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
SetDefault(aReturn,cString)

If nLastKey == 27
Return
Endif


RptStatus({|| RptDetail()})

Return


Static Function RptDetail()

Local nX := 0
@ 01,000 PSAY "====================================================================================="
@ 02,000 PSAY "| "+AllTrim(SM0->M0_NOMECOM)
@ 02,008 PSAY OemToAnsi("Relatório Personalizado")
@ 02,084 PSAY "|"
@ 03,000 PSAY "====================================================================================="
@ 05,01 PSAY OemToAnsi("Recibo : "+FJT->FJT_RECIBO )
@ 06,01 PSAY OemToAnsi("DATA : "+DTOC(FJT->FJT_DTDIGI) )
@ 07,01 PSAY OemToAnsi("SERIE : "+FJT->FJT_SERIE )
SA1->( dbSeek(xFilial("SA1") + FJT->FJT_CLIENT + FJT->FJT_LOJA ))
@ 08,01 PSAY OemToAnsi("Cliente : "+SA1->A1_NOME )
@ 09,000 PSAY "_________________________Detalhes____________________________________________________"
DbSelectArea("SEL")
DbSetOrder(8)
DbSeek(FwxFilial("SEL")+FJT->FJT_SERIE+FJT->FJT_RECIBO)
nX:=11
Do While FwxFilial("SEL")==EL_FILIAL.AND. FJT->FJT_RECIBO==EL_RECIBO .AND. FJT->FJT_SERIE==EL_SERIE
@ nX,02 PSAY OemToAnsi("Tipo : "+SEL->EL_TIPO )
nX++
@ nX,02 PSAY OemToAnsi("Valor : "+TransForm(SEL->EL_VALOR,PesqPict("SEL","EL_VALOR")) )
nX++
DbSkip()
nX++
EndDo
@ nX,000 PSAY "_____________________________________________________________________________________"



Set Device To Screen

If aReturn[5] == 1
Set Printer TO
dbcommitAll()
ourspool(wnrel)
Endif

MS_FLUSH()
Return

Idioma

Português(Brasil)

Versões

Versões_Anteriores

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Eventos de chamada do Ponto de Entrada

ADD OPTION aRotina Title STR0013 Action 'IIf(ExistBlock("F486PRT"),ExecBlock("F486PRT",.f.,.f.),FINR087())' OPERATION 8 ACCESS 0 //VERIFICAR COMO CHAMAR PARA QUE IMPRIMA O RECIBO POSICIONADO // 'Imprimir'

Programa Fonte

FINA846.PRW

  • Sem rótulos