Page tree
Skip to end of metadata
Go to start of metadata

Função: OurSpool - Gerenciador de impressão
Versões: Advanced Protheus 5.07 , Advanced Protheus 5.08 , Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10
Compatível Países: Todos
Sistemas Operacionais: Todos
Compatível às Bases de Dados: Todos
Nível de Acesso: Nível 1 (Acesso Clientes)
Idiomas: Espanhol , Inglês
Descrição:

A função OurSpool() executa o gerenciador de impressão do Siga, carregando os relatórios gerados no diretório configurado através parâmetro MV_RELT no dicionário SX6. Para visualizar um relatório específico, informe o nome no parâmetro cFile.

Programa Fonte:
APLIB280.PRW
Sintaxe:

OurSpool - Gerenciador de impressão ( [ cFile ] ) --> Nil

Retorno:
    Nil(nulo)
  • Nil
Exemplos
O exemplo abaixo mostra a utilização da função SetPrint com a utilização das funções SetDefault(), RptStatus(), SetRegua(), IncRegua(), Cabec(), Roda(), OurSpool() e MS_FLUSH().#include "protheus.ch"User Function TestImprime()                                             Local wnrelLocal cString  := "SA1"Local titulo   := "Teste Impressão de Relatorios"Local NomeProg := "XXX"                               Local Tamanho := "M"PRIVATE aReturn := { "Zebrado", 1,"Administracao", 1, 2, 1, "",1 }wnrel:=SetPrint(cString,NomeProg,"",@titulo,"", "", "",.F.,.F.,.F.,Tamanho,,.F.)SetDefault(aReturn,cString)RptStatus({|lEnd| U_TestRel(@lEnd,wnRel,cString,Tamanho,NomeProg)},titulo)Return User Function TestRel(lEnd,WnRel,cString,Tamanho,NomeProg)LOCAL cabec1,cabec2LOCAL cRodaTxt := oemtoansi("Rodapé")Local nCntImpr Local nTipo                   nCntImpr := 0li := 80 m_pag := 1//³ Inicializa os codigos de caracter Comprimido da impressora ³nTipo := 15//³ Monta os Cabecalhos                                          ³titulo:= oemtoansi("Lista de Clientes")cabec1:= oemtoansi("COD LOJA NOME                                     NOME FANTASIA        ")cabec2:=""        dbSelectArea("SA1")dbGoTop()SetRegua(LastRec())While !Eof()    IncRegua()    If Li > 60		cabec(titulo,cabec1,cabec2,nomeprog,tamanho,15)		@ Li,0 PSAY __PrtThinLine()					Endif    nCntImpr++   	Li++    @ Li,01 PSAY A1_COD    @ Li,05 PSAY A1_LOJA    @ Li,10 PSAY A1_NOME    @ Li,51 PSAY A1_NREDUZ    If Li > 60        Li:=66    Endif		    dbSkip()EndDOIf li != 80   	Roda(nCntImpr,cRodaTxt,Tamanho)EndIfSet Device to ScreenIf aReturn[5] = 1   	Set Printer To    	dbCommitAll()   	OurSpool(wnrel)EndifMS_FLUSH()Return
Parâmetros:
NomeTipoDescriçãoDefaultObrigatórioReferência
cFileCaracterRelatório em disco a ser visualizado

  • No labels