Páginas filhas
  • Cabec - Impressão de cabeçalho personalizado

Função: Cabec - Impressão de cabeçalho personalizado
Versões: 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 Cabec() imprime um cabeçalho personalizado nos relatórios.
Programa Fonte:
APLIB080.PRW
Sintaxe:

Cabec - Impressão de cabeçalho personalizado ( cTitulocCabec1cCabec2cProgramacTamanho [ nFormato ] [ uPar7 ] [ lPerg ] [ cLogo ] ) --> nLin

Retorno:
    nLin(numerico)
  • Número da linha
Observações

Parâmetro

lPerg

Caso o parâmetro lPerg não seja passado, o sistema verifica o parâmetro MV_IMPSX1 no SX6.

  • Se MV_IMPSX1 for igual a S, lPerg será .T.
  • Se MV_IMPSX1 for igual a N, lPerg será .F.

 

O logo impresso no cabeçalho é uma imagem de extensão ".bmp", cujo nome está associado com a empresa corrente. Ex: "LGRL01.BMP", "01" é a empresa.
 

Exemplos
O exemplo abaixo mostra a utilização da função SetPrint com as 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 Relatórios"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| 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:
Nome Tipo Descrição Default Obrigatório Referência
cTitulo Caracter Título do relatório X
cCabec1 Caracter Primeira linha do cabeçalho X
cCabec2 Caracter Segunda linha do cabeçalho X
cPrograma Caracter Nome do relatório X
cTamanho Caracter Tamanho da página: P, M, G X
nFormato Numérico Para imprimir comprimido informe 15
uPar7 Qualquer Parâmetro reservado
lPerg Lógico Se verdadeiro, (.T.) imprime as perguntas no início do relatório.
cLogo Caracter Nome do bitmap de logotipo para impressão via windows

  • Sem rótulos