e o mais estranho é q na hora de visualizar não salta essa pagina,so na hora de imprimir msm
estou usando:
#include "FiveWin.ch"
#include "relatorio.ch"
#define TAM_PAG 55

Moderador: Moderadores
#include "FiveWin.ch"
#include "relatorio.ch"
#define TAM_PAG 55
METHOD Build() class ImpFolha13Adiant
REST FROM &(::bancos:arqParam) ADDI
::nPag := 0
::state := .T.
::folha:XMES := KWMES
::folha:XDTI := KWDATINI
::folha:XDTF := KWDATFIM
GO TOP
::StartPage()
::BuildRel()
::EndPage()
IF(::state)
MsgAlert("Não há registros para este Relatório.", "FOLHA DE ADIANTAMENTO")
RETURN .F.
ELSE
return .T.
ENDIF
METHOD BuildRel() class ImpFolha13Adiant
local subdir, n, vxY
REST FROM &(::bancos:arqParam) ADDI
::folha:XMES := KWMES
::folha:XDTI := KWDATINI
::folha:XDTF := KWDATFIM
::folha:xultdatas := ULTIMODIA( "/"+STRZERO(val(::folha:xmpavos),2)+RIGHT(DTOC(KWDATFIM),5) )
::vper := DTOC(::folha:XDTI)+" a "+DTOC(::folha:XDTF)
::VAI := "S"
::xtpfol := IF(::vtipofol=1, "8", if(::vtipofol=2, "6", "7"))
subdir := ::bancos:getSubDir()
::Xdentrotot := .f.
DO WHILE !EOF() .AND. ::VAI = "S"
::NPAG := 0
::VAI := IF( ::XIG = "S", ::VAI, "N" )
IF ::XIG = "S"
IF SN#"S" ...
::Write(::lin, 3, ::pc[n]+" "+LEFT(4->descricao,20)+if( ::PC[N]="000".AND.::XIMPH="N" , "", IF(::pq[n]>0," ("+STR(::pq[n],6,2)+")"," " ) ), .F., .T.)
::Write(::LIN, 39, cValtoStr(::pv[n], "@E 99,999.99"))
End
End
IF ::LIN >= TAM_PAG
::LIN := 99
::CABEC02()
ENDIF
skip
EndDo
METHOD CABEC02() class ImpFolha13Adiant
IF ::LIN >= TAM_PAG + 3 //58
IF ::state
::state := .F.
::Write(1, 1, ::pdrimp+REPLICATE("=",96), .T., .T.)
ELSE
::EndPage()
::StartPage()
::Write(1, 1, REPLICATE("=",96))
ENDIF
::nPAG++
::Write(2, 1, ::xnomefol+SPACE(5))
IF ::XNEGRITO = "S"
::setFont(::oFont2)
ENDIF
::Write(2, 6+LEN(::xnomefol), compete())
::setFont(::oFont1)
::Write(2, 81, "DATA: "+DTOC(DATE()))
IF ::XNEGRITO = "S"
::setFont(::oFont2)
ENDIF
::Write(3, 1, ::EMPRESA, .F., .T.)
::setFont(::oFont1)
::Write(3, 82, "FOLHA: "+STRZERO(::NPAG,3))
::Write(4, 1, TRANCGC(13->CGC,13->CGCEI)+" - "+alltrim(::VCID)+" - "+::VESTAD, .F., .T.)
::LIN := 4
IF ::XIMPRESUMO="N"
IF ::XTCC="S"
if ::Xdentrotot
*if 1->CCUSTO+1->CCUSTO1 <> xccant
3->( DBSEEK( ::xccant ) )
IF ::XNEGRITO = "S"
::setFont(::oFont2)
ENDIF
::Write(::LIN+=1, 1, "Centro de Custo: "+LEFT(::XCCANT,3)+"."+RIGHT(::XCCANT,3)+" - "+3->DESCRICAO, .F., .T.)
::setFont(::oFont1)
else
3->( DBSEEK( 1->CCUSTO+1->CCUSTO1 ) )
IF ::XNEGRITO = "S"
::setFont(::oFont2)
ENDIF
::Write(::LIN+=1, 1, "Centro de Custo: "+1->CCUSTO+"."+1->CCUSTO1+" - "+ 3->DESCRICAO, .F., .T.)
::setFont(::oFont1)
endif
ENDIF
ENDIF
::Write(::LIN+=1, 1, REPLICATE("=",96))
::Write(::LIN+=1, 11, "P R O V E N T O S")
::Write(::LIN , 49, "|")
::Write(::LIN , 61, "D E S C O N T O S")
::Write(::LIN+=1, 1 , REPLICATE("=",96))
::LIN++
ENDIF
RETURN
DO WHILE !EOF() .AND. ::VAI = "S"
::NPAG := 0
::VAI := IF( ::XIG = "S", ::VAI, "N" )
IF ::XIG = "S"
IF SN#"S" ...
::Write(::lin, 3, ::pc[n]+" "+LEFT(4->descricao,20)+if( ::PC[N]="000".AND.::XIMPH="N" , "", IF(::pq[n]>0," ("+STR(::pq[n],6,2)+")"," " ) ), .F., .T.)
::Write(::LIN, 39, cValtoStr(::pv[n], "@E 99,999.99"))
Endif
Endif
// PARE O PROGRAMA AQUI E VEJA SE NAO E NECESSARIO DESLIGAR E LIGAR A PAGINA
IF ::LIN >= TAM_PAG
::LIN := 99
::CABEC02()
ENDIF
skip
EndDo
IF ::LIN >= TAM_PAG + 3 //58 // DIMINUA PARA 55 LINHAS, FORMATO A-4
IF ::state
// PARE O PROGRAMA AQUI E VEJA SE NAO E NECESSARIO DESLIGAR E LIGAR A PAGINA
::state := .F.
::Write(1, 1, ::pdrimp+REPLICATE("=",96), .T., .T.)
ELSE // IGUAL AQUI
::EndPage()
::StartPage()
::Write(1, 1, REPLICATE("=",96))
ENDIF
..
FUNCTION IMPRIMECOT( DeOndeVem, lAppend, DbEstoque, DbCotacao, ;
DbFornece, DbClientes, ;
oLbxCota )
LOCAL cAlias, oImagem, gcFile
LOCAL ResColuna, ResLinha
LOCAL oPrn, oFont, oFontLogo, oFontDivi, oFontList, ;
oFontCurs, oPen1, oPen2, oPen3, oFontSubl
LOCAL nLinha, nColuna // Linha e coluna da Descicao
LOCAL nDinheiro, nCheque, nChequePre, nTickets, nCartaoCred,;
nCartaoDebi, nContraVale, nPagina, nTotalGeral, xDataLista
LOCAL nSomaGeral, nTotGeral
PUBLIC XNOMEEMP, XENDDIR, XCIDDIR, XBAIDIR, XTELDIR, XEMAILEMP, XSITEEMP
PUBLIC XNOMEOPERAD
XDATALISTA := ALLTRIM(XCIDDIR)+ ", " + ;
LTRIM( STR( DAY( DATE() ) ) ) + ;
" de " + ;
OemToAnsi(CMONTH( DATE() )) + ;
" de " + ;
STR( YEAR( DATE() ) ) + ;
"."
nTotGeral := 0
SELECT( DbCotacao:cAlias )
GO TOP
cAlias := ALIAS() // DbPedidos
WHILE( .NOT. EOF() )
SYSREFRESH()
CURSORWAIT()
nSomaGeral := ( ( cAlias )->VALOR_UNIT ) * ( ( cAlias )->QUANTIDADE )
nTotGeral := nTotGeral + nSomaGeral
SKIP
ENDDO
GO TOP
IF DeOndeVem = [FORNECEDOR]
SELECT( DbFornece:cAlias )
SET ORDER TO 01
GO TOP
SEEK VAL( ( cAlias )->CODFORNE )
IF FOUND()
lImprimeForn := .T.
ELSE
lImprimeForn := .F.
ENDIF
SELECT( DbCotacao:cAlias )
GO TOP
ELSE // Clientes
SELECT( DbClientes:cAlias )
SET ORDER TO 01
GO TOP
SEEK VAL( ( cAlias )->CODFORNE )
SELECT( DbCotacao:cAlias )
GO TOP
ENDIF
//-> Mostra o Relatorio... Preview da Cotacao
PRINT oPrn NAME "Fluxo do Caixa Discriminado" PREVIEW MODAL
IF EMPTY( oPrn:hDC )
RETURN NIL // Printer was not installed or ready
ENDIF
DEFINE FONT oFont NAME "Courier New" SIZE 0, -8 OF oPrn
DEFINE FONT oFontDivi NAME "Courier New" SIZE 0, -12 BOLD OF oPrn
DEFINE FONT oFontCurs NAME "Courier New" SIZE 0, -14 BOLD OF oPrn
DEFINE FONT oFontSubl NAME "Courier New" SIZE 0, -16 BOLD UnderLine OF oPrn
//-> Problemas com o Windows XP - Formato da FONTE Nao Reconhecido
IF IsWinNT() .OR. IsWin2000() // Para Windows XP/NT e 2000 / 2003
DEFINE FONT oFontLogo NAME "Courier New" SIZE 0, -16 BOLD OF oPrn
DEFINE FONT oFontList NAME "Courier New" SIZE 0, -20 BOLD OF oPrn
ELSE //-> 95/98/ME
DEFINE FONT oFontLogo NAME "Courier New" SIZE 0, -20 BOLD OF oPrn
DEFINE FONT oFontList NAME "Courier New" SIZE 0, -22 BOLD OF oPrn
ENDIF
//-> Caneta do Preview
DEFINE PEN oPen1 WIDTH 4 COLOR CLR_BROWN OF oPrn
DEFINE PEN oPen2 WIDTH 2 COLOR CLR_BROWN OF oPrn
DEFINE PEN oPen3 WIDTH 5 COLOR CLR_BLACK OF oPrn
oPrn:SetPage(9) //-> A4 //9
oPrn:SetPortrait() //-> Vertical(Retrato)
//oPrn:SetLandscape() //-> Horizontal
//- Como Imprimir em Centimetros sem errar e em qualquer Impressora
ResLinha := oPrn:nVertRes() / 40
ResLinha := oPrn:nLogPixely() / 2.54
ResColuna := oPrn:nLogPixelx() / 2.54
nPagina := 1
IF DeOndeVem = [FORNECEDOR] // Impressao dos Fornecedores
PAGE
// Fornecedores
// oPrn:SayImage( 0, 0, oImagem )
// oPrn:SayBitmap( 0, 0, "c:\fwh..\bitmaps\fivewin.bmp" )
nLinha := 0.50
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFontDivi,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 08.05
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XENDDIR), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XBAIDIR) +" - "+ ALLTRIM(XCIDDIR), ;
oFont,, CLR_BLACK,, PAD_CENTER )
// XTELDIR
nLinha += 0.30
nColuna := 09.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XTELDIR), oFont,, CLR_BLACK,, PAD_CENTER )
// XEMAILEMP
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XEMAILEMP), oFont,, CLR_BLACK,, PAD_CENTER )
// XSITEEMP
nLinha += 0.30
nColuna := 08.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XSITEEMP), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
// Se tiver Fornecedor no banco das COTACOES, mostrara
IF lImprimeForn
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Fornecedor: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->RAZAO ) + ;
OemToAnsi( " - C¢digo: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->MATRICULA ), oFont,,;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Endere‡o..: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->END ) + ;
OemToAnsi( " - Bairro: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->BAI ), oFont,,;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cidade....: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->CID ) + ;
OemToAnsi( " - Cep: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->CEP ), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
//XNOMEOPERAD
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Comprador: " ) + ALLTRIM(XNOMEOPERAD), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "A/C: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->VEN ) + ;
OemToAnsi( " - Fone: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->TEL+" - "+ ;
( DbFornece:cAlias )->TEL2+" - "+ ;
( DbFornece:cAlias )->TEL3 ), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
ENDIF
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
//-> Cabecalho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "QUANT. " + SPACE(07) + ;
"UNID. " + SPACE(05) + ;
"CÃ DIGO " + SPACE(14) + ;
"DESCRIۂO " + SPACE(16) + ;
"PRE€O INIT. " + SPACE(12) + ;
"TOTAL ÖTEM " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
//-> Vou imprimir os produtos
WHILE ( .NOT. EOF() )
SYSREFRESH()
IF EOF()
EXIT
ENDIF
IF nLinha >= 27 // Nova Pagina = 54 Linhas
ENDPAGE // Fecho a Pagina Anterior, Para Nao Quebrar o Metafile
PAGE // Nova Pagina - Abro uma nova pagina
nPagina := nPagina + 1
// aqui cabecalho
// Fornecedores
// oPrn:SayImage( 0, 0, oImagem )
// oPrn:SayBitmap( 0, 0, "c:\fwh..\bitmaps\fivewin.bmp" )
nLinha := 0.50
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFontDivi,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 08.05
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XENDDIR), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XBAIDIR) +" - "+ ALLTRIM(XCIDDIR), ;
oFont,, CLR_BLACK,, PAD_CENTER )
// XTELDIR
nLinha += 0.30
nColuna := 09.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XTELDIR), oFont,, CLR_BLACK,, PAD_CENTER )
// XEMAILEMP
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XEMAILEMP), oFont,, CLR_BLACK,, PAD_CENTER )
// XSITEEMP
nLinha += 0.30
nColuna := 08.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XSITEEMP), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
// Se tiver Fornecedor no banco das COTACOES, mostrara
IF lImprimeForn
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Fornecedor: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->RAZAO ) + ;
OemToAnsi( " - C¢digo: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->MATRICULA ), oFont,,;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Endere‡o..: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->END ) + ;
OemToAnsi( " - Bairro: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->BAI ), oFont,,;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cidade....: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->CID ) + ;
OemToAnsi( " - Cep: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->CEP ), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
//XNOMEOPERAD
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Comprador: " ) + ;
ALLTRIM(XNOMEOPERAD), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "A/C: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->VEN ) + ;
OemToAnsi( " - Fone: " ) + ;
ALLTRIM( ( DbFornece:cAlias )->TEL+" - "+ ;
( DbFornece:cAlias )->TEL2+" - "+ ;
( DbFornece:cAlias )->TEL3 ), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
ENDIF
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
//-> Cabecalho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "QUANT. " + SPACE(07) + ;
"UNID. " + SPACE(05) + ;
"CÃ DIGO " + SPACE(14) + ;
"DESCRIۂO " + SPACE(16) + ;
"PRE€O INIT. " + SPACE(12) + ;
"TOTAL ÖTEM " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
ENDIF
nColuna := 2.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
TRANSF( ( cAlias )->QUANTIDADE, "9999999999.999" ), ;
oFont,, CLR_BLACK,, PAD_RIGHT )
nColuna := 3.25
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
( cAlias )->UNIDADE, oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 4.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
( cAlias )->CODIGO, oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 7.25
//-> Nome do Produto
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
SUBSTR(( cAlias )->DESCRICAO,1,30), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
SKIP // Proximo Produto
nLinha += 0.50 //-> Pula a Linha Para o Proximo Produto
ENDDO
ENDPAGE
ELSE // Impressao Clientes
PAGE
//oPrn:SayImage( 0, 0, oImagem )
//oPrn:SayBitmap( 0, 0, "c:\fwh1101\bitmaps\fivewin.bmp" )
nLinha := 0.50
nColuna := 10.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFontDivi,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 08.05
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XENDDIR), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XBAIDIR) +" - "+ ALLTRIM(XCIDDIR), ;
oFont,, CLR_BLACK,, PAD_CENTER )
// XTELDIR
nLinha += 0.30
nColuna := 09.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XTELDIR), oFont,, CLR_BLACK,, PAD_CENTER )
// XEMAILEMP
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XEMAILEMP), oFont,, CLR_BLACK,, PAD_CENTER )
// XSITEEMP
nLinha += 0.30
nColuna := 08.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XSITEEMP), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cliente.: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->DEST_NOME ) + ;
OemToAnsi( " - C¢digo: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->RAZ_MATRIC ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Endere‡o: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->END+", "+ ;
ALLTRIM( ( DbClientes:cAlias )->NUMERO )+" "+ ;
ALLTRIM( ( DbClientes:cAlias )->COMPLEMENT ) ) + ;
OemToAnsi( " - Bairro: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->BAI ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cidade..: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CID ) + ;
OemToAnsi( " - Uf: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->UF ) + ;
OemToAnsi( " - Cep: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CEP ), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Vendedor: " ) + ALLTRIM(XNOMEOPERAD), ;
oFont,, CLR_BLACK,, PAD_LEFT )
//XNOMEOPERAD
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "A/C: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CONTATO ) + ;
OemToAnsi( " - Fone: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->TEL+" - "+ ;
( DbClientes:cAlias )->TEL2+" - "+ ;
( DbClientes:cAlias )->TEL3 ), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
//-> Cabecalho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "QUANT. " + SPACE(07) + ;
"UNID. " + SPACE(05) + ;
"CÃ DIGO " + SPACE(14) + ;
"DESCRIۂO " + SPACE(16) + ;
"PRE€O INIT. " + SPACE(12) + ;
"TOTAL ÖTEM " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
//-> Vou imprimir os produtos
WHILE ( .NOT. EOF() )
SYSREFRESH()
CURSORWAIT()
IF EOF()
EXIT
ENDIF
IF nLinha >= 27 // Nova Pagina = 54 Linhas
ENDPAGE // Fecho a Pagina Anterior, Para Nao Quebrar o Metafile
PAGE // Nova Pagina - Abro uma nova pagina
nPagina := nPagina + 1
// aqui cabecalho novo da proxima pagina
//oPrn:SayImage( 0, 0, oImagem )
//oPrn:SayBitmap( 0, 0, "c:\fwh1101\bitmaps\fivewin.bmp" )
nLinha := 0.50
nColuna := 10.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFontDivi,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 08.05
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XENDDIR), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XBAIDIR) +" - "+ ALLTRIM(XCIDDIR), ;
oFont,, CLR_BLACK,, PAD_CENTER )
// XTELDIR
nLinha += 0.30
nColuna := 09.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XTELDIR), oFont,, CLR_BLACK,, PAD_CENTER )
// XEMAILEMP
nLinha += 0.30
nColuna := 08.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XEMAILEMP), oFont,, CLR_BLACK,, PAD_CENTER )
// XSITEEMP
nLinha += 0.30
nColuna := 08.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XSITEEMP), oFont,, CLR_BLACK,, PAD_CENTER )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cliente.: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->DEST_NOME ) + ;
OemToAnsi( " - C¢digo: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->RAZ_MATRIC ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Endere‡o: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->END ) + ;
OemToAnsi( " - Bairro: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->BAI ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Cidade..: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CID ) + ;
OemToAnsi( " - Uf: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->UF ) + ;
OemToAnsi( " - Cep: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CEP ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Vendedor: " ) + ALLTRIM(XNOMEOPERAD), ;
oFont,, CLR_BLACK,, PAD_LEFT )
//XNOMEOPERAD
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "A/C: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->CONTATO ) + ;
OemToAnsi( " - Fone: " ) + ;
ALLTRIM( ( DbClientes:cAlias )->TEL+" - "+ ;
( DbClientes:cAlias )->TEL2+" - "+ ;
( DbClientes:cAlias )->TEL3 ), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
//-> Cabecalho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "QUANT. " + SPACE(07) + ;
"UNID. " + SPACE(05) + ;
"CÃ DIGO " + SPACE(14) + ;
"DESCRIۂO " + SPACE(16) + ;
"PRE€O UNIT. " + SPACE(12) + ;
"TOTAL ÖTEM " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.30
ENDIF
nColuna := 2.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
TRANSF( ( cAlias )->QUANTIDADE, "9999999999.999" ), ;
oFont,, CLR_BLACK,, PAD_RIGHT )
nColuna := 3.25
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
( cAlias )->UNIDADE, oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 4.75
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
( cAlias )->CODIGO, oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 7.25
//-> Nome do Produto
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
SUBSTR(( cAlias )->DESCRICAO,1,30), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 13.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
TRANSF((( cAlias )->VALOR_UNIT), "@E 999,999,999.99" ), ;
oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 16.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
CALCULAR_TOTAL_ITEM( cAlias ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.30 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
SKIP // Proximo Produto
nLinha += 0.50 //-> Pula a Linha Para o Proximo Produto
ENDDO
GO TOP // Para Mostrar a Condicao de Pagamento e outros
IF nLinha <= 27 // Nova Pagina = 54 Linhas
nColuna := 14.50
nLinha += 0.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "TOTAL GERAL: " ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nColuna := 16.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
TRANSF( nTotGeral, "@E 999,999,999,999.99" ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
IF nLinha > 26
ENDPAGE
PAGE
nPagina := nPagina + 1
nColuna := 1.00
nLinha := 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
ELSE
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
ENDIF
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Condi‡äes.......: " + ;
ALLTRIM( ( cAlias )->COND_PAGTO ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Prazo de Entrega: " + ;
ALLTRIM( ( cAlias )->PRAZO_PGTO ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Validade........: " + ;
ALLTRIM( ( cAlias )->VALIDADE ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",040), oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 19.25
nLinha += 0.30
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFont,, CLR_BLACK,, PAD_RIGHT )
nColuna := 1.00
nLinha += 0.70 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
IF .NOT. EMPTY( ( cAlias )->OBS1 )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Obs.: " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS1 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS2 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS3 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS4 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS5 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS6 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS7 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS8 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
ENDIF
ELSE // se nao couber na pagina
nColuna := 14.50
nLinha += 0.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "TOTAL GERAL: " ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nColuna := 16.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
TRANSF( nTotGeral, "@E 999,999,999,999.99" ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
IF nLinha >= 27
ENDPAGE
PAGE
nPagina := nPagina + 1
nColuna := 1.00
nLinha := 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nLinha += 0.50
nColuna := 1.00
//-> Data de Hoje
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Data: " + DTOC( DATE() ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 10.00
//-> Cabe‡alho
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
"COTAÇÃO Nº "+ STRZERO( ( cAlias )->COTACAO ), ;
oFontDivi,, CLR_BLACK,, PAD_CENTER )
nColuna := 17.50
//-> Pagina
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "PÂ gina: " + STRZERO( nPagina ) ), oFont,, ;
CLR_BLACK,, PAD_CENTER )
nLinha += 0.50
nColuna := 1.00
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
ELSE
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
ENDIF
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Condi‡äes.......: " + ;
ALLTRIM( ( cAlias )->COND_PAGTO ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Prazo de Entrega: " + ;
ALLTRIM( ( cAlias )->PRAZO_PGTO ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Validade........: " + ;
ALLTRIM( ( cAlias )->VALIDADE ) ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 12.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",040), oFont,, CLR_BLACK,, PAD_LEFT )
nColuna := 19.25
nLinha += 0.30
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM(XNOMEEMP), oFont,, CLR_BLACK,, PAD_RIGHT )
nColuna := 1.00
nLinha += 0.70 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
REPLICATE("-",110), oFont,, CLR_BLACK,, PAD_LEFT )
IF .NOT. EMPTY( ( cAlias )->OBS1 )
nColuna := 1.00
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
OemToAnsi( "Obs.: " ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS1 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS2 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS3 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS4 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS5 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS6 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS7 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
nColuna := 2.50
nLinha += 0.50 //-> Pula a Linha
oPrn:Say( nLinha * ResLinha, nColuna * ResColuna, ;
ALLTRIM( ( cAlias )->OBS8 ), oFont,, ;
CLR_BLACK,, PAD_LEFT )
ENDIF
ENDIF
ENDPAGE
ENDIF
ENDPRINT
oFont:End()
oFontLogo:End()
oFontDivi:End()
oFontList:End()
oFontCurs:End()
oFontSubl:End()
oPen1:End()
oPen2:End()
oPen3:End()
oLbxCota:GoTop()
oLbxCota:Refresh()
lImprimeForn := .F.
RETURN NIL
Usuários vendo este fórum: Nenhum usuário registrado online e 9 visitantes