Imprimi Página | Fechar janela |
Ajudar com relatorio Impresso de: Helpfacil - Portal do conhecimento Nome do Forum: ADVPL Descrição do Forum: Dúvidas sobre a programação em ADVPL URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=1&TopicID=42531 Data da Impressão: sexta-feira, 19 de abril de 2024 at 11:33 Topico: Ajudar com relatorio Postado por: IVAN26 Assunto: Ajudar com relatorio Data Postagem: quinta-feira, 7 de fevereiro de 2019 at 08:50 Ola pessoal, sou leigo na parte de ADVPL e não estou conseguindo fazer o meu relatorio pular de pagina. Esse relatorio é um relatorio onde imprimi o pedido de venda. Quando coloco mais de 1 pedido para puxar nos parametros ele não pula a pagina. Alguem poderia me ajudar? #INCLUDE "RWMAKE.CH" #include "TbiConn.ch" #include "TbiCode.ch" #INCLUDE "AP5MAIL.CH" #INCLUDE "PROTHEUS.CH" #INCLUDE "FONT.CH" #include "topconn.ch" /* Descri??o ³Impressao do Pedido de Vendas - TmsPrinter */ User Function PEDPCP() //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ Declaracao de Variaveis ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ LOCAL oDlg := NIL LOCAL cString := "SC7" PRIVATE titulo := "" PRIVATE nLastKey:= 0 PRIVATE cPerg := "FATR05" PRIVATE nomeProg:= FunName() Private nTotal := 0 Private nSubTot := 0 AjustaSx1() If ! Pergunte(cPerg,.T.) Return Endif //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ Variaveis utilizadas para parametros ³ //³ mv_par01 // Numero da PT ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ wnrel := FunName() //Nome Default do relatorio em Disco PRIVATE cTitulo := "Impressão do Pedido de Vendas" PRIVATE oPrn := NIL PRIVATE oFont1 := NIL PRIVATE oFont2 := NIL PRIVATE oFont3 := NIL PRIVATE oFont4 := NIL PRIVATE oFont5 := NIL PRIVATE oFont6 := NIL Private nLastKey := 0 Private nLin := 1650 // Linha de inicio da impressao das clausulas contratuais DEFINE FONT oFont1 NAME "Times New Roman" SIZE 0,20 BOLD OF oPrn DEFINE FONT oFont2 NAME "Times New Roman" SIZE 0,14 BOLD OF oPrn DEFINE FONT oFont3 NAME "Times New Roman" SIZE 0,14 OF oPrn DEFINE FONT oFont4 NAME "Times New Roman" SIZE 0,14 ITALIC OF oPrn DEFINE FONT oFont5 NAME "Times New Roman" SIZE 0,14 OF oPrn DEFINE FONT oFont6 NAME "Courier New" BOLD oFont08 := TFont():New("Arial",08,08,,.F.,,,,.T.,.F.) oFont08N := TFont():New("Arial",08,08,,.T.,,,,.T.,.F.) oFont10 := TFont():New("Arial",10,10,,.F.,,,,.T.,.F.) oFont11 := TFont():New("Arial",11,11,,.F.,,,,.T.,.F.) oFont14 := TFont():New("Arial",14,14,,.F.,,,,.T.,.F.) oFont16 := TFont():New("Arial",16,16,,.F.,,,,.T.,.F.) oFont10N := TFont():New("Arial",10,10,,.T.,,,,.T.,.F.) oFont12 := TFont():New("Arial",10,10,,.F.,,,,.T.,.F.) oFont12N := TFont():New("Arial",10,10,,.T.,,,,.T.,.F.) oFont16N := TFont():New("Arial",16,16,,.T.,,,,.T.,.F.) oFont14N := TFont():New("Arial",14,14,,.T.,,,,.T.,.F.) oFont06 := TFont():New("Arial",06,06,,.F.,,,,.T.,.F.) oFont06N := TFont():New("Arial",06,06,,.T.,,,,.T.,.F.) //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ Tela de Entrada de Dados - Parametros ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ nLastKey := IIf(LastKey() == 27,27,nLastKey) If nLastKey == 27 Return Endif //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ Inicio do lay-out / impressao ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ oPrn := TMSPrinter():New(cTitulo) oPrn:Setup() oPrn:SetLandsCape()//SetPortrait() //SetLansCape() oPrn:StartPage() Imprimir() oPrn:EndPage() oPrn:End() DEFINE MSDIALOG oDlg FROM 264,182 TO 441,613 TITLE cTitulo OF oDlg PIXEL @ 004,010 TO 082,157 LABEL "" OF oDlg PIXEL @ 015,017 SAY "Esta rotina tem por objetivo imprimir" OF oDlg PIXEL Size 150,010 FONT oFont6 COLOR CLR_HBLUE @ 030,017 SAY "o impresso customizado:" OF oDlg PIXEL Size 150,010 FONT oFont6 COLOR CLR_HBLUE @ 045,017 SAY "Pedido de Venda" OF oDlg PIXEL Size 150,010 FONT oFont6 COLOR CLR_HBLUE @ 06,167 BUTTON "&Imprime" SIZE 036,012 ACTION oPrn:Print() OF oDlg PIXEL @ 28,167 BUTTON "Pre&view" SIZE 036,012 ACTION oPrn:Preview() OF oDlg PIXEL @ 49,167 BUTTON "Sai&r" SIZE 036,012 ACTION oDlg:End() OF oDlg PIXEL ACTIVATE MSDIALOG oDlg CENTERED oPrn:End() Return /*/ _____________________________________________________________________________ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ ¦¦+-----------------------------------------------------------------------+¦¦ ¦¦¦Descriçào ¦ Impressao Pedido de Vendas ¦¦¦ ¦¦+----------+------------------------------------------------------------¦¦¦ ¦¦¦Uso ¦ Pelkote ¦¦¦ ¦¦+-----------------------------------------------------------------------+¦¦ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ /*/ STATIC FUNCTION Imprimir() Orcamento() Ms_Flush() Return /*/ _____________________________________________________________________________ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ ¦¦+-----------------------------------------------------------------------+¦¦ ¦¦¦Descriçào ¦ Impressao ¦¦¦ ¦¦+----------+------------------------------------------------------------¦¦¦ ¦¦¦Uso ¦ Pelkote ¦¦¦ ¦¦+-----------------------------------------------------------------------+¦¦ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ /*/ STATIC FUNCTION Orcamento() cDia := SubStr(DtoS(dDataBase),7,2) cMes := SubStr(DtoS(dDataBase),5,2) cAno := SubStr(DtoS(dDataBase),1,4) cMesExt := MesExtenso(Month(dDataBase)) cDataImpressao := cDia+" de "+cMesExt+" de "+cAno cPercICMS := GetMv("MV_ESTICM") oPrn:StartPage() cBitMap := "P:Logo1.Bmp" oPrn:SayBitmap(1200,1200,cBitMap,2400,1700) // Imprime logo da Empresa: comprimento X altura oPrn:Say(0030,0100,SM0->M0_NOMECOM ,oFont14N) oPrn:Box(0180,0050,0630,2300) dbSelectArea("SC5") dbSetOrder(01) dbSeek(xFilial("SC5")+mv_par01) While !Eof() .And. C5_NUM >= mv_par01 .and. C5_NUM <= mv_par02 dbSelectArea("SA1") dbSetOrder(01) dbSeek(xFilial("SA1")+SC5->C5_CLIENTE+SC5->C5_LOJACLI) dbSelectArea("SA4") dbSetOrder(01) dbSeek(xFilial("SA4")+SC5->C5_TRANSP) dbSelectArea("SA3") dbSetOrder(01) dbSeek(xFilial("SA3")+SC5->C5_VEND1) dbSelectArea("DA0") dbSetOrder(01) dbSeek(xFilial("DA0")+SC5->C5_TABELA) dbSelectArea("SF4") dbSetOrder(01) dbSeek(xFilial("SF4")+SC6->C6_TES) dbSelectArea("SE4") dbSetOrder(01) dbSeek(xFilial("SE4")+SC5->C5_CONDPAG) dbSelectArea("SC6") dbSetOrder(01) dbSeek(xFilial("SC6")+SC5->C5_NUM) dbSelectArea("SC9") dbSetOrder(01) dbSeek(xFilial("SC9")+SC9->C9_PEDIDO) cEstICM := SA1->A1_EST nPosICM := AT(cPercICMS,cEstICM) nPercICMS := VAL(SubStr(cPercICMS,(nPosICM+2),2)) oPrn:Box(0030,1770,0130,2350) oPrn:Say(0030,1370, "Pedido No",oFont14N) oPrn:Say(0040,1890,OemToAnsi(SC5->C5_NUM),oFont14) dataHora:=Time() oPrn:Say(0030,2800,dataHora,oFont14N) oPrn:Box(0180,2350,0630,3350) oPrn:Say(0200,0100,"Cliente:",oFont12N) oPrn:Say(0200,0280,OemToAnsi(SA1->A1_COD),oFont12) oPrn:Say(0200,0480,OemToAnsi(SA1->A1_NOME),oFont12) oPrn:Say(0250,0100,"Endereco:",oFont12N) oPrn:Say(0250,0280,OemToAnsi(SA1->A1_END),oFont12) oPrn:Say(0250,1200,OemToAnsi(SA1->A1_BAIRRO),oFont12) oPrn:Say(0250,1600,OemToAnsi(SA1->A1_MUN),oFont12) ESTADO:=SA1->A1_EST oPrn:Say(0250,2000,OemToAnsi(SA1->A1_EST),oFont12) oPrn:Say(0480,2500,"Data",oFont14N) dData:=Dtoc(SC5->C5_EMISSAO) oPrn:Say(0540,2500,OemToAnsi(Ddata),oFont14) oPrn:Say(0300,0100,"C.G.C:",oFont12N) oPrn:Say(0300,0280,Transform(Alltrim(SA1->A1_CGC),"@R 99.999.999/9999-99"),oFont12) oPrn:Say(0300,0800,"Inscricao Estadual:",oFont12N) oPrn:Say(0300,1150,Transform(Alltrim(SA1->A1_INSCR),"@R 999.999.999.999"),oFont12) oPrn:Say(0350,0100,"CEP: ",oFont12N) oPrn:Say(0350,0280,OemToAnsi(SA1->A1_CEP),oFont12) oPrn:Say(0350,0940,"Telefone:" ,oFont12N) oPrn:Say(0350,1150,OemToAnsi(SA1->A1_DDD),oFont12) oPrn:Say(0350,1250,OemToAnsi(SA1->A1_TEL),oFont12) oPrn:Say(0400,0100,"Transp:",oFont12N) oPrn:Say(0400,0280,OemToAnsi(SA4->A4_COD),oFont12) oPrn:Say(0400,0460,OemToAnsi(SA4->A4_NOME),oFont12) oPrn:Say(0400,1100,OemToAnsi(SA4->A4_BAIRRO),oFont12) oPrn:Say(0400,1490,OemToAnsi(SA4->A4_TEL),oFont12) /* oPrn:Say(0280,2500,"Emitente",oFont14N) oPrn:Say(0340,2500,OemToAnsi(SC5->C5_XEMIT),oFont14) ncred:=0 */ oPrn:Say(0280,2500,"DATA LIB ECO",oFont12N) dData:=Dtoc(SC5->C5_UDTLECO) if !Empty (dData)//Incluido por ivan 05.02 oPrn:Say(0340,2575,"Nao Liberado",oFont12) Else oPrn:Say(0340,2575,OemToAnsi(Ddata),oFont12) End if oPrn:Say(0280,2950,"CREDITO",oFont12N) ncred := Posicione("SC9",1,xFilial("SC9")+SC6->C6_NUM,"C9_BLCRED") // if !Empty(ncred) oPrn:Say(0340,2950,"BLOQUEADO",oFont14N) else oPrn:Say(0340,2950,"LIBERADO",oFont14N) end if oPrn:Say(0480,2950,"ESTOQUE",oFont12N) nest := Posicione("SC9",1,xFilial("SC9")+SC6->C6_NUM,"C9_BLEST") if !Empty(nest) oPrn:Say(0520,2950,"BLOQUEADO",oFont14N) ELSE oPrn:Say(0520,2950,"LIBERADO",oFont14N) ENDIF oPrn:Say(0450,0100,"Vendedor:" ,oFont12N) oPrn:Say(0450,0280,OemToAnsi(SA3->A3_COD),oFont12) oPrn:Say(0450,0480,OemToAnsi(SA3->A3_NREDUZ),oFont12) oPrn:Say(0450,1000,"Tabela:" ,oFont12N) oPrn:Say(0450,0280,OemToAnsi(DA0->DA0_CODTAB),oFont12) oPrn:Say(0450,0460,OemToAnsi(DA0->DA0_DESCRI),oFont12) finalidade:=0 oPrn:Say(0500,0100,"Natureza:" ,oFont12N) finalidade := Posicione("SF4",1,xFilial("SF4")+SC6->C6_TES,"F4_FINALID") oPrn:Say(0500,0460,finalidade,oFont12) oPrn:Say(0550,0100,"Frete:" ,oFont12N) oPrn:Say(0550,0300,OemToAnsi(SC5->C5_TPFRETE),oFont12) oPrn:Box(0650,0050,0750,3350) oPrn:Say(0680,0100,"Codigo" ,oFont12N) oPrn:Say(0680,0330,"Descricao" ,oFont12N) //oPrn:Say(0680,1500,"Fabricante" ,oFont12N) oPrn:Say(0680,1500,"Quantidade" ,oFont12N) //oPrn:Say(0680,2180,"Peso" ,oFont12N) //oPrn:Say(0680,2180,"Pr.Unitario" ,oFont12N) //oPrn:Say(0680,2380,"Pr. Total" ,oFont12N) //oPrn:Say(0680,2570,"%Ipi" ,oFont12N) //oPrn:Say(0680,2780,"Vlr Ipi" ,oFont12N) //oPrn:Say(0680,2950,"Peso" ,oFont12N) //oPrn:Say(0680,3080,"Classificacao" ,oFont12N) dbSelectArea("SC6") dbSetOrder(01) dbSeek(xFilial("SC6")+SC5->C5_NUM) nLin :=0780 //nSubTot := nTotIPI := nVlrIPI := nICMS := nTotICMS := nTotalGeral := nPesoItem := nTotalItem := nTotalNota := 0 nSubTot := nTotIPI := nVlrIPI := nICMS := nTotICMS := nTotalGeral := nPesoItem := nTotalItem := nTotalNota := 0 While !Eof() .And. C6_NUM ==SC5->C5_NUM //cFabricante:=SC6->C6_XFABRIC nIPI := Posicione("SF4",1,xFilial("SF4")+SC6->C6_TES,"F4_IPI") nICMS := Posicione("SF4",1,xFilial("SF4")+SC6->C6_TES,"F4_ICM") nPesoItem := Posicione("SB1",1,xFilial("SB1")+SC6->C6_PRODUTO,"B1_PESO") nPercIPI := Posicione("SB1",1,xFilial("SB1")+SC6->C6_PRODUTO,"B1_IPI") cClassific:= Posicione("SB1",1,xFilial("SB1")+SC6->C6_PRODUTO,"B1_POSIPI") nPercICMS := Iif(Empty(nPercICMS),Posicione("SB1",1,xFilial("SB1")+SC6->C6_PRODUTO,"B1_PICM"),nPercICMS) nVlrIPI := Iif(nIPI=="S",(SC6->C6_VALOR*nPercIPI)/100,0) nTotalItem:= (SC6->C6_QTDVEN*nPesoItem) nSubTot := nSubTot + SC6->C6_VALOR nTotIPI := nTotIPI + nVlrIPI nTotalNota:= nTotalNota + nTotalItem oPrn:Say(nLin,0050,OemToAnsi(SC6->C6_PRODUTO), oFont08) oPrn:Say(nLin,0330,OemToAnsi(SC6->C6_DESCRI), oFont08) //cFabric2:=substr(cFabricante,01,08) //oPrn:Say(nLin,1500,OemToAnsi(cFabric2), oFont08) // oPrn:Say(nLin,1750,Transform(SC6->C6_UNSVEN,"@E 9999"), oFont08) oPrn:Say(nLin,1500,Transform(SC6->C6_QTDVEN,"@E 9,999,999.99"), oFont08) //oPrn:Say(nLin,2200,Transform(SC6->C6_PRCVEN,"@E 9,999,999.99",), oFont08) //oPrn:Say(nLin,2370,Transform(SC6->C6_VALOR,"@E 9,999,999.99",), oFont08) //IF nIPI=="S" // oPrn:Say(nLin,2550,Transform(nPercIpi,"@E 9,999,999.99",), oFont08) // oPrn:Say(nLin,2750,Transform(nVlrIPI,"@E 9,999,999.99",), oFont08) // else // nPerIPI:=0 // nVlrIpi:=0 //oPrn:Say(nLin,2550,Transform(nPercIpi,"@E 9,999,999.99",), oFont08) // oPrn:Say(nLin,2750,Transform(nVlrIPI,"@E 9,999,999.99",), oFont08) // endif //admin adminoPrn:Say(nLin,2900,Transform(nTotalItem,"@E 9,999,999.99"), oFont10N) //oPrn:Say(nLin,3170,OemToAnsi(cClassific), oFont10) nLin+=0050 DBSKIP() ENDDO //oPrn:Say(1400,0680,OemToAnsi(SC5->C5_MENNOTA),oFont12) // oPrn:Box(1600,0050,2300,1500) // oPrn:Box(1600,1520,2300,3350) //oPrn:Say(1650,0660,"Titulos Previsao" ,oFont14N) //oPrn:Say(1700,0150,"Prazo de Pagamento:",oFont12N) //oPrn:Say(1800,0150,OemToAnsi(SE4-> E4_DESCRI),oFont14) cprazo1:=substr(SE4->E4_COND,01,02) cPrazo2:=substr(SE4->E4_COND,04,02) cPrazo3:=substr(SE4->E4_COND,07,02) cPrazo4:=substr(SE4->E4_COND,10,02) cPrazo5:=substr(SE4->E4_COND,13,02) prazo1:=date() +VAL(cprazo1) prazo2:=date() +VAL(cprazo2) prazo3:=date() +VAL(cprazo3) prazo4:=date() +VAL(cprazo4) prazo5:=date() +VAL(cprazo5) //oPrn:Say(2000,0100,"Titulos: Vencimentos",oFont12N) if prazo1==date() else //oPrn:Say(2050,0140,"1",oFont12N) //oPrn:Say(2050,0250,Transform(prazo1, "@E 99/99/9999",), oFont12N) endif if prazo2==date() else //oPrn:Say(2100,0140,"2",oFont12N) //oPrn:Say(2100,0250,Transform(prazo2, "@E 99/99/9999",), oFont12N) endif if prazo3==date() else //oPrn:Say(2150,0140,"3",oFont12N) //oPrn:Say(2150,0250,Transform(prazo3, "@E 99/99/9999",), oFont12N) endif if prazo4==date() else //oPrn:Say(2200,0140,"4",oFont12N) //oPrn:Say(2200,0250,Transform(prazo4, "@E 99/99/9999",), oFont12N) endif if prazo5=date() else //oPrn:Say(2250,0140,"5",oFont12N) //oPrn:Say(2250,0250,Transform(prazo5, "@E 99/99/9999",), oFont12N) endif //oPrn:Say(1700,1100,"CFOP:",oFont12N) //oPrn:Say(1800,1100,OemToAnsi(SC6->C6_CF),oFont14) //oPrn:Say(1630,1600,"Frete" ,oFont12N) //oPrn:Say(1630,3000,Transform(SC5->C5_FRETE,"@E 9,999,999.99",),oFont12) //oPrn:Say(1700,1600,"Sub-Total" ,oFont12N) //oPrn:Say(1700,3000,Transform(nSubTot,"@E 9,999,999.99",),oFont12) //oPrn:Say(1770,1600,"Total Geral" ,oFont12N) nTotalGeral:=nSubTot+nTotIPI+SC5->C5_FRETE //oPrn:Say(1770,3000,Transform(nTotalGeral,"@E 9,999,999.99",),oFont12) //oPrn:Say(1850,1600,"Base do ICMS" ,oFont12N) nPercIcm:=0 IF ESTADO$("SP,RS") .AND. nICMS=="S" //oPrn:Say(1850,3100,OemToAnsi("18 %",),oFont12 ) nPercIcm:=(nTotalGeral/100)*18 ENDIF IF ESTADO$("MG,RJ") .AND. nICMS=="S" //oPrn:Say(1850,3100,OemToAnsi("12 %",),oFont12 ) nPercIcm:=(nTotalGeral/100)*12 ENDIF IF ESTADO$("AC,AL,AM,AP,BA,CE,DF,ES,GO,MA,MS,MT,PA,PB,PE,PI,PR,RN,RO,RR,SC,SE,TO") .AND. nICMS=="S" //oPrn:Say(1850,3100,OemToAnsi("17 %",),oFont12 ) nPercIcm:=(nTotalGeral/100)*17 ENDIF //oPrn:Say(1920,1600,"ICMS" ,oFont12N) //oPrn:Say(1920,3000,Transform(nPercIcm,"@E 9,999,999.99",),oFont12) //oPrn:Say(1990,1600,"IPI" ,oFont12N) oPrn:Say(0780,2380,Transform(nTotIPI,"@E 9,999,999.99",),oFont12) oPrn:Say(0680,2380,"Peso Liquido" ,oFont12N) oPrn:Say(0780,2800,Transform(nTotalNota,"@E 9,999,999.99",),oFont12) oPrn:Say(0680,2800,"Peso Bruto" ,oFont12N) //oPrn:Say(0780,3100,Transform(nTotalNota,"@E 9,999,999.99",),oFont12) oPrn:Say(0680,3100,"Volumes" ,oFont12N) oPrn:Say(0780,3100,Transform(SC5->C5_VOLUME1,"@E 9,999,999.99",),oFont12) //oPrn:Box(2200,0050,3200,0590) dbSelectArea("SC5") dbSkip() EndDo oPrn:EndPage() Return /* Descri??o ³ Ajusta perguntas do SX1 */ Static Function AjustaSX1() Local aArea := GetArea() PutSx1(cPerg,"01","No Pedido Vendas ?"," "," ","mv_ch1","C",6,0,0, "G",""," ","","","mv_par01"," "," "," ","", " "," "," "," "," "," ", " "," "," "," ", " "," ",{"Informe numero do Pedido Vendas"},{"Informe o numero do Pedido de Vendas de"},{"Informe o Numero do Pedido de Vendas"}) PutSx1(cPerg,"02","Pedido Vendas Ate ?"," "," ","mv_ch2","C",6,0,0, "G",""," ","","","mv_par02"," "," "," ","", " "," "," "," "," "," ", " "," "," "," ", " "," ",{"Informe o numero do Orcamento"},{"Informe o numero do Pedido de Vendas ate"},{"Informe o Numero do Pedido de Compras ate"}) RestArea(aArea) Return //Processo para salvar relatório como imagem aCaminho := {"\192.168.1.8teste.jpg"} filepath := "192.168.1.8" nwidthpage := 630 nheightpage := 870 aFiles := Directory(aCaminho[1]) For i:=1 to Len(aFiles) fErase("\192.168.1.8"+aFiles[1]) Next i oPrint:SaveAllAsJpeg(filepath,nwidthpage,nheightpage,100) //Gera arquivos JPEG na Pasta Protheus_dataImages aFiles := {} aFiles := Directory(aCaminho[1]) //Visualizacao e finalizacao do relatorio oPrint:Setup() oPrint:Preview() oPrint:EndPage() MS_FLUSH() Return Respostas: Postado Por: IVAN26 Data Postagem: segunda-feira, 11 de fevereiro de 2019 at 08:45 Alguem me ajuda... Postado Por: MARCELLOW Data Postagem: segunda-feira, 11 de fevereiro de 2019 at 10:05 // nVlrIpi:=0 //oPrn:Say(nLin,2550,Transform(nPercIpi,"@E 9,999,999.99",), oFont08) // oPrn:Say(nLin,2750,Transform(nVlrIPI,"@E 9,999,999.99",), oFont08) // endif //admin adminoPrn:Say(nLin,2900,Transform(nTotalItem,"@E 9,999,999.99"), oFont10N) //oPrn:Say(nLin,3170,OemToAnsi(cClassific), oFont10) nLin+=0050 // comeca aqui o controle de pagina. // aqui vc tem q ver mais ou menos quantas linhas tem a sua pagia, entao //fica mais ou menos assim if nLin > 0600 oPrn:EndPage() oPrn:StartPage() endif //caso vc queira reimprimir o inicio do pedido sc5. // vc precisa chamar o fonte novamente do sc5 Cabeçario DBSKIP() |
Imprimir Página | Fechar Janela |