Autor Tópico: EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK  (Lida 7843 vezes)

Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Online: Dezembro 18, 2013, 04:25:16 pm »
Olá, pessoal.

Tenho percebido a necessidade de alguns em trabalhar com relatórios PDF.

Assim como alguns aqui do fórum, tentei utilizar as apps do tipo Report PDF, mas percebi algumas restrições.

Como já conhecia a FPDF, passei a gerar meus relatórios utilizando apps do tipo Blank, pois me permitem maior personalização sobre tudo:

Cabeçalho, rodapé, título, múltiplas linhas, vários layouts, cores etc.

Seguem alguns modelos que tenho produzido:

http://wennys.com.br/sistemas/modelos/fpdf/listagem_subselect_scriptcase/

http://wennys.com.br/sistemas/modelos/fpdf/listagem_simples_scriptcase/

Vou disponibilizar os códigos de alguns relatórios pra servir de exemplo.

Vi que muitos aqui no fórum utilizam consultas formato livre para impressão de algumas coisas, mas acho que nada substitui um PDF quando se fala em impressão.


Wennys Carlos
Wennys Carlos

Leandro Bitencourt

  • Iniciante
  • **
  • Mensagens: 96
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #1 Online: Dezembro 19, 2013, 11:35:16 am »
Olá, pessoal.

Tenho percebido a necessidade de alguns em trabalhar com relatórios PDF.

Assim como alguns aqui do fórum, tentei utilizar as apps do tipo Report PDF, mas percebi algumas restrições.

Como já conhecia a FPDF, passei a gerar meus relatórios utilizando apps do tipo Blank, pois me permitem maior personalização sobre tudo:

Cabeçalho, rodapé, título, múltiplas linhas, vários layouts, cores etc.

Seguem alguns modelos que tenho produzido:

http://wennys.com.br/sistemas/modelos/fpdf/listagem_subselect_scriptcase/

http://wennys.com.br/sistemas/modelos/fpdf/listagem_simples_scriptcase/

Vou disponibilizar os códigos de alguns relatórios pra servir de exemplo.

Vi que muitos aqui no fórum utilizam consultas formato livre para impressão de algumas coisas, mas acho que nada substitui um PDF quando se fala em impressão.


Wennys Carlos

Concordo plenamente Wennys Carlos, e afinal parabéns ficou maravilhosos os exemplos.
Leandro Bitencourt
Programmer
Skype: leandro.bittencourt79
www.copaminformatica.com.br

sintese

  • Novato
  • *
  • Mensagens: 4
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #2 Online: Janeiro 20, 2014, 09:39:52 pm »
Olá Wennys Carlos, tudo bem?

Vi seus relatórios em PDF e ficaram bem legais! Você comentou que estaria disponibilizando alguns códigos para servir de exemplo, seria possível esta ajuda? Os códigos destes dois que enviou como modelo seria bastante interessante, se possível, é claro.

Att. Edison Corrêa

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #3 Online: Janeiro 20, 2014, 10:11:02 pm »
Wennys,


Pode descrever as restrições do report pdf?

O que você faz numa blank que não consegue fazer numa report pdf?

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #4 Online: Janeiro 21, 2014, 12:45:23 pm »
Bem, vou descrever aqui minha experiência com relatórios pdf.

Eu uso Report PDF.

Diferença em usar em blank: Muitas...

RPDF: Possui Filtro   
BLANK: Tem que criar uma app de controle e passar parametros

RPDF: Campos pré formatados:
BLANK: tem que aplicar formatações, mascaras...

RPDF: Debug  funcional
BLANK: com a classe fpdf o debug não funciona adequadamente..

RPDF: Facilmente adaptável classes extras a classe fpdf.

RPDF: Loop do SELECT (SQL)  principal automático. 
BLANK: Tem que fazer o loop na unha.

RPDF: Definições das dimensões e estilo em Configurações.
BLANK: Tem que definir com código.

RPDF: Liberdade Total, basta criar um método e programar livremente nesse método como programa na onExecute da Blank, e chamar esse método em LayOut/Código.

RESTRIÇÃO ÚNICA DO RPDF:  Remover todos os campos criados inicialmente em Layout/Interface.

Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #5 Online: Janeiro 21, 2014, 02:13:54 pm »
Haroldo, você tem razão em relação a algumas vantagens que existem na App ReportPDF, porém a documentação e exemplos da mesma são muito ruins.

Creio que isso tenha afastado muitos usuários que já utilizavam a FPDF(meu caso, por exemplo), que sentiram dificuldade em fazer algumas coisas que faziam sem maiores problemas.

Dificuldades que tive no início:

Como personalizar cabeçalho e rodapé para todos os relatórios criados no projeto sem precisar ficar copiando e colando para cada aplicação?

Como definir largura dos campos(colunas) sem aquela régua?

Como definir borda e cor de fundo para as colunas?

Tudo o que citei acima consigo fazer sem dificuldades numa blank.

Eu adoraria não precisar usar blank, mas não consegui ver nenhum exemplo de uma app ReportPDF que resolvesse isso de forma simples.

Wennys Carlos

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #6 Online: Janeiro 21, 2014, 02:24:11 pm »
É como eu disse, da mesma forma que vc tem a liberdade de desenvolver numa Blank você faz o mesmo no reporte pdf em um método, a mesma programação.

Wennys Carlos

  • Avançado
  • ****
  • Mensagens: 254
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #7 Online: Janeiro 21, 2014, 02:27:35 pm »
Creio que sim, Haroldo.

Se puder mostrar pra gente um exemplo de um método que vc tenha feito seria legal.

Wennys Carlos

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #8 Online: Janeiro 21, 2014, 03:51:03 pm »
http://iw.servehttp.com:86/sc/7.1/app/ERP_V7/vendasPedido_pdf/vendasPedido_pdf_teste.php

selecione pedido 13.

SQL Principal:
SELECT
p.Id,
p.Status,
c.cl_codigo,
c.cl_razao,
c.cl_cnpj,
c.cl_ieim,
c.ra_codigo,
c.cl_cep,
c.cl_uf,
c.cl_cidade,
c.cl_bairro,
c.cl_endereco,
c.NroComp,
c.cl_contato,
c.cl_dddfone,
c.Fax,
c.cl_email,
p.DataEmissao,
p.DataEntrega,
p.observacoes,
p.CondPagId,
p.TransportId,
e.em_logo,
e.em_cep,
e.em_bairro,
e.em_endereco,
e.em_uf,
e.em_fone,
e.Email,
e.em_cidade,
e.em_compl,
e.em_razao,
e.em_site,
p.ValorTotal,
(p.ValorTotal-p.Desconto+p.ValorFrete) as TotalPed,
p.Desconto
, p.ValorFrete
, p.notafiscal
, p.nroitens as total_itens
, v.NomeReduzido
, v.email
, c.apelido
FROM
  pedido p
  INNER JOIN clientes c ON p.ClienteId = c.cl_codigo
  LEFT JOIN vendedor v ON p.vendedorid = v.id,
empresas e
WHERE
(p.Id='[pedidoid]')
and (e.em_codigo='1')



LayOutPDf/Interface: vazia

LayOutPDF/Codigo:

$this->Codigo();

Metodo Codigo:


$PEDIDOID=[pedidoid];
$_sql="SELECT ProdutoCodigo,Descricao,Quantidade,Unidade,PrecoUnitario"
        .",ROUND((1-(ValorItem/(Quantidade*PrecoUnitario)))*100.00,2),ValorItem"
." FROM pedido_itens"
." WHERE PedidoId = '$PEDIDOID'";

sc_select(ds,$_sql);
If (!Empty($ds)){
  while (!$ds->EOF){
     $LINHA++;
     $ITENS++;
     IF ($LINHA==1) {
       MontaPreImpresso($PAGINA);
       MontaCabecalho();
     }
     $LINHA=$LINHA+(MontaItem($ds->fields[0],$ds->fields[1],$ds->fields[2],$ds->fields[3],$ds->fields[4],$ds->fields[5],$ds->fields[6],$LINHA)); 
     IF ($LINHA>=[maxlines]) {
       IF ($PAGINA==1) MontaTotais();
       $PAGINA++;
       [maxlines]=38;
       PrintCell(05,290,'Pag '.$this->Pdf->PageNo().'/@TotPag',200,2,'C',"Arial,I,8");
       PrintCell(05,290,"Continua na proxima página-->",205,2,"R","Arial,I,7,90");
       IF ($ITENS<{total_itens}) $this->Pdf->AddPage();
       $LINHA=0;
     }
     $ds->MoveNext();
  }
  $ds->Close();
}
IF ($PAGINA==1 && $LINHA<[maxlines] ) MontaTotais();
PrintCell(05,290,'Pag '.$this->Pdf->PageNo().'/@TotPag',205,2,'C',"Arial,I,8");
     

Métodos PHP :
         
Codigo   
         
MontaCabecalho   
         
MontaItem   
         
MontaPreImpresso   
         
MontaTotais   
         
PrintCell   
         
RoundedRect   
         
_Arc


Você pode criar bibliotecas para padronizar seus cabeçalhos, rodapé.


paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #9 Online: Junho 18, 2014, 11:40:07 pm »
Olá, pessoal.

Tenho percebido a necessidade de alguns em trabalhar com relatórios PDF.

Assim como alguns aqui do fórum, tentei utilizar as apps do tipo Report PDF, mas percebi algumas restrições.

Como já conhecia a FPDF, passei a gerar meus relatórios utilizando apps do tipo Blank, pois me permitem maior personalização sobre tudo:

Cabeçalho, rodapé, título, múltiplas linhas, vários layouts, cores etc.

Seguem alguns modelos que tenho produzido:

http://wennys.com.br/sistemas/modelos/fpdf/listagem_subselect_scriptcase/

http://wennys.com.br/sistemas/modelos/fpdf/listagem_simples_scriptcase/

Vou disponibilizar os códigos de alguns relatórios pra servir de exemplo.

Vi que muitos aqui no fórum utilizam consultas formato livre para impressão de algumas coisas, mas acho que nada substitui um PDF quando se fala em impressão.


Wennys Carlos


Wennys show de bola mas não achei os fontes, ou seja as apps exportadas.

paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #10 Online: Junho 19, 2014, 07:14:31 pm »
http://iw.servehttp.com:86/sc/7.1/app/ERP_V7/vendasPedido_pdf/vendasPedido_pdf_teste.php

selecione pedido 13.

SQL Principal:
SELECT
p.Id,
p.Status,
c.cl_codigo,
c.cl_razao,
c.cl_cnpj,
c.cl_ieim,
c.ra_codigo,
c.cl_cep,
c.cl_uf,
c.cl_cidade,
c.cl_bairro,
c.cl_endereco,
c.NroComp,
c.cl_contato,
c.cl_dddfone,
c.Fax,
c.cl_email,
p.DataEmissao,
p.DataEntrega,
p.observacoes,
p.CondPagId,
p.TransportId,
e.em_logo,
e.em_cep,
e.em_bairro,
e.em_endereco,
e.em_uf,
e.em_fone,
e.Email,
e.em_cidade,
e.em_compl,
e.em_razao,
e.em_site,
p.ValorTotal,
(p.ValorTotal-p.Desconto+p.ValorFrete) as TotalPed,
p.Desconto
, p.ValorFrete
, p.notafiscal
, p.nroitens as total_itens
, v.NomeReduzido
, v.email
, c.apelido
FROM
  pedido p
  INNER JOIN clientes c ON p.ClienteId = c.cl_codigo
  LEFT JOIN vendedor v ON p.vendedorid = v.id,
empresas e
WHERE
(p.Id='[pedidoid]')
and (e.em_codigo='1')



LayOutPDf/Interface: vazia

LayOutPDF/Codigo:

$this->Codigo();

Metodo Codigo:


$PEDIDOID=[pedidoid];
$_sql="SELECT ProdutoCodigo,Descricao,Quantidade,Unidade,PrecoUnitario"
        .",ROUND((1-(ValorItem/(Quantidade*PrecoUnitario)))*100.00,2),ValorItem"
." FROM pedido_itens"
." WHERE PedidoId = '$PEDIDOID'";

sc_select(ds,$_sql);
If (!Empty($ds)){
  while (!$ds->EOF){
     $LINHA++;
     $ITENS++;
     IF ($LINHA==1) {
       MontaPreImpresso($PAGINA);
       MontaCabecalho();
     }
     $LINHA=$LINHA+(MontaItem($ds->fields[0],$ds->fields[1],$ds->fields[2],$ds->fields[3],$ds->fields[4],$ds->fields[5],$ds->fields[6],$LINHA)); 
     IF ($LINHA>=[maxlines]) {
       IF ($PAGINA==1) MontaTotais();
       $PAGINA++;
       [maxlines]=38;
       PrintCell(05,290,'Pag '.$this->Pdf->PageNo().'/@TotPag',200,2,'C',"Arial,I,8");
       PrintCell(05,290,"Continua na proxima página-->",205,2,"R","Arial,I,7,90");
       IF ($ITENS<{total_itens}) $this->Pdf->AddPage();
       $LINHA=0;
     }
     $ds->MoveNext();
  }
  $ds->Close();
}
IF ($PAGINA==1 && $LINHA<[maxlines] ) MontaTotais();
PrintCell(05,290,'Pag '.$this->Pdf->PageNo().'/@TotPag',205,2,'C',"Arial,I,8");
     

Métodos PHP :
         
Codigo   
         
MontaCabecalho   
         
MontaItem   
         
MontaPreImpresso   
         
MontaTotais   
         
PrintCell   
         
RoundedRect   
         
_Arc


Você pode criar bibliotecas para padronizar seus cabeçalhos, rodapé.


Haroldo estou tentando usar o reportPDF, porém a imagem de plano de fundo fica com a qualidade ruim, você poderia dar uma dica de como você trabalha com a imagem, extensão, tamanho, qualidade, qual programa você usa e qual tamanho da imagem para um relatório de tamanho A4.

FredKeyster

  • Expert
  • *****
  • Mensagens: 1702
  • DEWENNINMEN
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #11 Online: Junho 20, 2014, 09:19:44 am »
Eu não tive uma boa experiência com o RepoprtPDF. No blank achei mais produtivo. Cada um tem seu ponto de vista de acordo com seu nível de conhecimento.
Um exemplo que fiz na Blank e não consegui nem a paw fazer com RPDF:

http://www.tickimg.com.br/uploads/_imagem_(1).png
F. A.
Analista de Sistemas

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #12 Online: Junho 20, 2014, 09:48:56 am »
O ReportPdf eh tão livre quando uma Blank.

Mas com a pre formatação dos campos, com filtro, e alguns eventos.

paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #13 Online: Junho 20, 2014, 09:52:34 am »
O ReportPdf eh tão livre quando uma Blank.

Mas com a pre formatação dos campos, com filtro, e alguns eventos.

Haroldo, estou tentando usar o reportPDF, porém a imagem de plano de fundo fica com a qualidade ruim, você poderia dar uma dica de como você trabalha com a imagem, extensão, tamanho, qualidade, qual programa você usa e qual tamanho da imagem para um relatório de tamanho A4. Vi seu exemplo e a qualidade da imagem que você utiliza é muito boa.

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:EXEMPLOS DE RELATÓRIOS PDF UTILIZANDO APPS BLANK
« Responder #14 Online: Junho 20, 2014, 09:57:14 am »
Não utilizo imagem de fundo, pesa muito o arquivo e a imagem distorce.

Eu desenho todo o formulário com os comandos do fpdf.