Ir para conteúdo
Fórum CódigoFonte.net
Fadweb

Trabalhando com o FPDF e Asp e Bd Access

Recommended Posts

Ola a todos estou com problemas em utilizar o fpdf quero fazer um relatório em PDF consultando o Bando de dados e criando o arquivo Pdf no servidor.

Mas to com esse erro e nem consegui salvar no servidor

%PDF-1.3 3 0 obj <> endobj 4 0 obj <> stream 2 J 0.57 w BT /F1 12.00 Tf ET 1.13 w 19.84 700.16 m 566.93 700.16 l S BT 19.84 714.33 Td (Id) Tj ET BT 59.53 714.33 Td (Parceiro) Tj ET BT 119.06 714.33 Td (CPF) Tj ET BT 181.42 714.33 Td (E-Mail) Tj ET BT 300.47 714.33 Td (Atualização) Tj ET BT 425.20 714.33 Td (Situação) Tj ET BT 19.84 708.66 Td (3098) Tj ET BT 59.53 708.66 Td (Administrador) Tj ET BT 119.06 708.66 Td (11111111111) Tj ET BT 181.42 822.05 Td (fadmkt) Tj ET BT 300.47 708.66 Td (Tue Apr 6 17:02:05 UTC-0300 2010) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3114) Tj ET BT 59.53 708.66 Td (Aline Cristina Teles Frias) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td ([email protected]) Tj ET BT 300.47 708.66 Td (Fri Aug 28 17:01:31 UTC-0300 2009) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3103) Tj ET BT 59.53 708.66 Td (Exemplo: Elaine Priscila da Silva) Tj ET BT 119.06 708.66 Td (07802035694) Tj ET BT 181.42 822.05 Td ([email protected]) Tj ET BT 300.47 708.66 Td (Mon Aug 17 19:13:31 UTC-0300 2009) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3105) Tj ET BT 59.53 708.66 Td (Lúcia) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td (Tema261) Tj ET BT 300.47 708.66 Td (Mon Dec 22 17:46:51 UTC-0200 2008) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3115) Tj ET BT 59.53 708.66 Td (Paula Rodrigues) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td () Tj ET BT 300.47 708.66 Td (Fri Aug 28 17:06:48 UTC-0300 2009) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3106) Tj ET BT 59.53 708.66 Td (Rita) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td (Tema262) Tj ET BT 300.47 708.66 Td (Mon Dec 22 21:10:57 UTC-0200 2008) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3113) Tj ET BT 59.53 708.66 Td (Roseli S. Moreira) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td (Tema301) Tj ET BT 300.47 708.66 Td (Thu Aug 13 13:28:39 UTC-0300 2009) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3107) Tj ET BT 59.53 708.66 Td (Solange da Silva) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td (tema2) Tj ET BT 300.47 708.66 Td (Mon Dec 22 21:11:46 UTC-0200 2008) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3116) Tj ET BT 59.53 708.66 Td (teste ) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td () Tj ET BT 300.47 708.66 Td (Tue Mar 9 11:24:12 UTC-0300 2010) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET BT 19.84 708.66 Td (3112) Tj ET BT 59.53 708.66 Td (Yara do Nascimento) Tj ET BT 119.06 708.66 Td () Tj ET BT 181.42 822.05 Td (Tema300) Tj ET BT 300.47 708.66 Td (Thu Aug 13 13:27:52 UTC-0300 2009) Tj ET BT 425.20 708.66 Td (Ativo) Tj ET endstream endobj 1 0 obj <> endobj 5 0 obj <> endobj 2 0 obj <<< ImageI] ImageC ImageB Text PDF [>> >> endobj 6 0 obj << /Producer (FPDF for ASP v.0.01 beta by Lorenzo Abbati [www.aspxnet.it]) /CreationDate (D:2010415163311) >> endobj 7 0 obj << /Type /Catalog /Pages 1 0 R /OpenAction [3 0 R /FitH null] /PageLayout /OneColumn >> endobj xref 0 8 0000000000 65535 f 0000002815 00000 n 0000003000 00000 n 0000000009 00000 n 0000000087 00000 n 0000002902 00000 n 0000003088 00000 n 0000003213 00000 n trailer << /Size 8 /Root 7 0 R /Info 6 0 R >> startxref 3316 %%EOF

<%option explicit%>

<!-- #include file = "include/generico_data.inc" -->

<%dim nr_processo

nr_processo=1

%>

<!-- #include file = "include/valida_acesso.inc" -->

<!--#include file=fpdf.asp"-->

<%

dim rsParceiro, sql, qt_email

DIm sqlT

'Traz registro

sql = "SELECT * from vw_parceiro where 1=1 "

sqlT = "SELECT count (*) AS totalReg from vw_parceiro where 1=1 "

if request("id_parceiro") <> "" then

sql = sql & " and id_parceiro = " & request("id_parceiro")

sqlT = sqlT & " and id_parceiro = " & request("id_parceiro")

end if

if request("nome") <> "" then

sql = sql & " and nome like '" & request("nome") & "%'"

sqlT = sqlT & " and nome like '" & request("nome") & "%'"

end if

if request("email") <> "" then

sql = sql & " and email like '%" & request("email") & "%'"

sqlT = sqlT & " and email like '%" & request("email") & "%'"

end if

if request("fl_email_mkt") <> "" then

sql = sql & " and fl_email_mkt = " & request("fl_email_mkt") & ""

sqlT = sqlT & " and fl_email_mkt = " & request("fl_email_mkt") & ""

end if

if request("dt_ini") <> "" then

sql = sql & " and dt_cadastro >= #" & month(cdate(Request("dt_ini"))) & "/" & day(cdate(Request("dt_ini"))) & "/" & year(cdate(Request("dt_ini"))) & "#"

sqlT = sqlT & " and dt_cadastro >= #" & month(cdate(Request("dt_ini"))) & "/" & day(cdate(Request("dt_ini"))) & "/" & year(cdate(Request("dt_ini"))) & "#"

end if

if request("dt_fim") <> "" then

sql = sql & " and dt_cadastro <= #" & month(cdate(Request("dt_fim"))) & "/" & day(cdate(Request("dt_fim"))) & "/" & year(cdate(Request("dt_fim"))) & "#"

sqlT = sqlT & " and dt_cadastro <= #" & month(cdate(Request("dt_fim"))) & "/" & day(cdate(Request("dt_fim"))) & "/" & year(cdate(Request("dt_fim"))) & "#"

end if

if request("mes_aniversario") <> "" then

sql = sql & " and month(dt_nascimento) = " & Request("mes_aniversario")

sqlT = sqlT & " and month(dt_nascimento) = " & Request("mes_aniversario")

end if

if request("id_situacao_parceiro") <> "" then

sql = sql & " and id_situacao = " & request("id_situacao_parceiro")

sqlT = sqlT & " and id_situacao = " & request("id_situacao_parceiro")

dim rsSituacao

'Traz registro de Situacao

set rsSituacao = GetRS("SELECT * FROM situacao_parceiro where id_situacao_parceiro = " & request("id_situacao_parceiro"))

end if

if request("tipo") <> "" then

sql = sql & " and tipo = '" & request("tipo") & "'"

sqlT = sqlT & " and tipo = '" & request("tipo") & "'"

dim rstipo

'Traz registro de Situacao

set rstipo = GetRS("SELECT * FROM dominio where ds_dominio = 'tipo_parceiro' and ds_valor = '" & request("tipo") & "'")

end if

if request("sexo") <> "" then

sql = sql & " and sexo = '" & request("sexo") & "'"

sqlT = sqlT & " and sexo = '" & request("sexo") & "'"

dim rsSexo

'Traz registro de Situacao

set rsSexo = GetRS("SELECT * FROM dominio where ds_dominio = 'sexo' and ds_valor = '" & request("sexo") & "'")

end if

sql = sql & " order by nome"

'sqlT = sqlT & " order by nome"

'response.write sql

' response.end

set rsParceiro = GetRS(sql)

'========================================= GERA RELATORIO =================================

Dim rsParceiroR

set rsParceiroR = GetRS(sql)

'rsLancamento

if not rsParceiroR.eof then

'Move para o primeiro registro

rsParceiroR.MoveFirst

' define o nome do arquivo XLS a ser criado

Dim arquivo_excel

arquivo_excel= "RelatorioCadastros.xls"

' cria o arquivo file system object

Dim FSO, act

set fso = createobject("scripting.filesystemobject")

' Cria um arquivo texto no servidor com o nome do time no mesmo diretorio da aplicacao

Set act = fso.CreateTextFile(server.mappath(arquivo_excel), true)

' define o cabecalho da tabela

act.WriteLine("<html><body>")

act.WriteLine("<table border=""1"">")

act.WriteLine("<tr>")

act.WriteLine("<th nowrap>Id</th>")

act.WriteLine("<th nowrap>Parceiro</th>")

act.WriteLine("<th nowrap>CPF</th>")

act.WriteLine("<th nowrap>E-Mail</th>")

act.WriteLine("<th nowrap>Atualização</th>")

act.WriteLine("<th nowrap>Situação</th>")

act.WriteLine("</tr>")

' No laco For next vamos criar uma linha para cada time com os dados da sua classificacao

Dim documents

Dim ContadorRelatorio

Dim rsContadorRelatorio

Dim var_IdParceiro, var_Parceiro, var_ParceiroCPF, var_email, var_dt_cadastro, var_Situacao

set rsContadorRelatorio= GetRS(sqlT)

ContadorRelatorio = rsContadorRelatorio("totalReg")

for documents= 1 to ContadorRelatorio

var_IdParceiro = rsParceiroR("id_parceiro")

var_Parceiro = rsParceiroR("nome")

var_ParceiroCPF = rsParceiroR("CPF")

var_email = rsParceiroR("email")

var_dt_cadastro = rsParceiroR("dt_cadastro")

var_Situacao = rsParceiroR("ds_situacao_parceiro")

Act.WriteLine("<tr>")

act.WriteLine("<td align=""right"">"& var_IdParceiro & "</td>")

act.WriteLine("<td align=""right"">"& var_Parceiro & "</td>")

act.WriteLine("<td align=""right"">"& var_ParceiroCPF & "</td>")

act.WriteLine("<td align=""right"">"& var_email & "</td>")

act.WriteLine("<td align=""right"">"& var_dt_cadastro & "</td>")

act.WriteLine("<td align=""right"">"& var_Situacao & "</td>")

act.WriteLine("</tr>")

' move para o proximo registro

rsParceiroR.movenext

' volta a criar a proxima linha da tabela para o time

next

' fecha as tags HTML

act.WriteLine("</table></body></html>")

' fecha o objeto Excel

act.close

'response.write "Classificação do Brasileirão - 2004 : Cinco primeiros colocados. (Formato MS-Excel)<P>"

'response.write "Para ver classificação no Excel clique no link abaixo <P>"

' Escreve um link para o novo arquivo XLS criado

'response.write "<a href='classificacao.xls'>Classificação</a> (.xls) foi criado em " & now() & "<br>"

'========================================= GERA RELATORIO FIM =================================

'========================================= GERA RELATORIO EM PDF =================================

set rsParceiro = GetRS(sql)

'rsLancamento

if not rsParceiro.eof then

'Move para o primeiro registro

rsParceiro.MoveFirst

dim pdf, i

'// criando o pdf

set pdf=CreateJsObject("FPDF")

'// aki poderemos adcionar várias funções como titulos padroes para todas as páginasm numeração de páginas e etc.

'// montando o corpo do pdf, setando o tipo da folha, tipo de medida e o tamanho da folha

pdf.CreatePDF "P","mm","A4"

pdf.SetPath("fpdf/")

pdf.Open()

'// adcionando página

pdf.AddPage()

'// setando fonte e tamanho

pdf.SetFont "Times","",12

'// setando grossura da linha

pdf.SetLineWidth(0.4)

'// setando linhas, reapare que, as medidas são feitas em x1, y1, x2 e y2, començando no ponto inicial de x e y e finalizando nos mesmo.

pdf.Line "7","50","200","50"

'// criamos aki uma linha horizontal, a linha pode ser feita de qualquer jeito, vertical, diagonal e td mais, somente setando os valores de x e y.

'// escrevendo um texto

'//pdf.Text "7","49","Merda de pdf "

pdf.Text "7","45","Id"

pdf.Text "21","45","Parceiro"

pdf.Text "42","45","CPF"

pdf.Text "64","45","E-Mail"

pdf.Text "106","45","Atualização"

pdf.Text "150","45","Situação"

'// na linha acima setamos primeiro a função Text, depois aonde começamos a escrever apartir do x e y e por fim o texto a ser adcionado

'// presta-se atenção aki, pois quem precisa fazer uma leitura de banco de dados ou resgatar uma session para ser impressa no pdf, n se pode usar as ' ' na função de texto

for i =1 to 10

'//var_IdParceiro = rsParceiroR("id_parceiro")

'//var_Parceiro = rsParceiroR("nome")

'//var_ParceiroCPF = rsParceiroR("CPF")

'//var_email = rsParceiroR("email")

'//var_dt_cadastro = rsParceiroR("dt_cadastro")

'//var_Situacao = (rsParceiroR("ds_situacao_parceiro"))

pdf.Text "7", "47" ,(rsParceiro("id_parceiro"))

pdf.Text "21", "47" ,(rsParceiro("nome"))

pdf.Text "42", "47" ,(rsParceiro("CPF"))

pdf.Text "64", "7" ,(rsParceiro("email"))

pdf.Text "106","47" ,(rsParceiro("dt_cadastro"))

pdf.Text "150", "47" ,(rsParceiro("ds_situacao_parceiro"))

rsParceiro.movenext

next

'// fechando o pdf

pdf.Close()

pdf.Output()

'//pdf.Output([string arquivo.pdf, string F])

'//pdf.Output(["arquivo.pdf", "F])

end if

%>

<%end if%>

<html>

<style type="text/css">

<!--

.style1 {font-family: Arial, Helvetica, sans-serif}

-->

</style>

<a name="topo"></a>

<head>

<title>&nbsp;</title>

<link rel="stylesheet" href="styles/style.css" type="text/css" title="style">

</head>

<FORM name="frmPrincipal">

<H1>Cadastro - Lista</H1>

<%if request("nome") <> "" or _

request("email") <> "" or _

request("fl_email_mkt") <> "" or _

request("id_parceiro") <> "" or _

request("tipo") <> "" or _

request("sexo") <> "" or _

request("dt_ini") <> "" or _

request("dt_fim") <> "" or _

request("mes_aniversario") <> "" or _

request("id_situacao_parceiro") <> "" then%>

<H2>Filtro</H2>

<TABLE width = 100%>

<%if request("id_parceiro") <> "" then%>

<TR>

<TD class=label width=100px>Código</TD>

<TD class=normal><%=request("id_parceiro")%></TD>

</TR>

<%end if%>

<%if request("nome") <> "" then%>

<TR>

<TD class=label width=100px>Nome</TD>

<TD class=normal><%=request("nome")%></TD>

</TR>

<%end if%>

<%if request("email") <> "" then%>

<TR>

<TD class=label width=100px>E-Mail</TD>

<TD class=normal><%=request("email")%></TD>

</TR>

<%end if%>

<%if request("fl_email_mkt") <> "" then%>

<TR>

<TD class=label width=100px>E-Mail Marketing</TD>

<TD class=normal><%=request("fl_email_mkt")%></TD>

</TR>

<%end if%>

<%if request("dt_ini") <> "" or request("dt_fim") <> "" then%>

<TR>

<TD class=label width=100px>Data Cadastro</TD>

<TD class=normal><%=request("dt_ini")%> até <%=request("dt_fim")%></TD>

</TR>

<%end if%>

<%if request("id_situacao_parceiro") <> "" then%>

<TR>

<TD class=label width=100px>Situação</TD>

<TD class=normal><%=rsSituacao("ds_situacao_parceiro")%></TD>

</TR>

<%end if%>

<%if request("tipo") <> "" then%>

<TR>

<TD class=label width=100px>Tipo</TD>

<TD class=normal><%=rstipo("ds_descricao")%></TD>

</TR>

<%end if%>

<%if request("sexo") <> "" then%>

<TR>

<TD class=label width=100px>Sexo</TD>

<TD class=normal><%=rsSexo("ds_descricao")%></TD>

</TR>

<%end if%>

<%if request("mes_aniversario") <> "" then%>

<TR>

<TD class=label width=100px>Mês Aniversário</TD>

<TD class=normal><%=request("mes_aniversario")%></TD>

</TR>

<%end if%>

</TABLE>

<%end if%>

<H2>Lista</H2>

<H3>Encontrado(s): <%=rsParceiro.recordcount%> registro(s)</H3>

<TABLE width = 100%>

<TR>

<TD class=label>&nbsp;</TD>

<TD class=label>Id</TD>

<TD class=label>Parceiro</TD>

<TD class=label>CPF</TD>

<TD class=label>E-Mail</TD>

<TD class=label>Atualização</TD>

<TD class=label>Situação</TD>

</TR>

<%do while not rsParceiro.eof%>

<TR>

<%if request("cd_lookup") = "" then %>

<TD class="normal">

<%if rsParceiro("email") <> "" and rsParceiro("fl_email_mkt") = true then%>

<%qt_email = qt_email + 1%>

<%end if%>

</TD>

<TD class="normal" nowrap><a href="cadastro_detalhe.asp?id_parceiro=<%=rsParceiro("id_parceiro")%>"><%=rsParceiro("id_parceiro")%></a></TD>

<%else%>

<TD></TD>

<TD class="normal" align=center><IMG alt="Click para Selecionar" src="FIGURAS/sucesso.gif" style="CURSOR: hand" onClick="vb script: Seleciona <%=rsParceiro("id_parceiro")%>, '<%=trim(rsParceiro("nome"))%>'"></TD>

<%end if%>

<TD class="normal"><%=rsParceiro("nome")%></TD>

<TD class="normal"><%=rsParceiro("CPF")%></TD>

<TD class="normal"><%=rsParceiro("email")%></TD>

<TD class="normal"><%=rsParceiro("dt_cadastro")%></TD>

<TD class="normal"><%=rsParceiro("ds_situacao_parceiro")%></TD>

</TR>

<%rsParceiro.movenext%>

<%loop%>

</TABLE>

<!--#include file="include/refresh_pagina.inc" -->

<!-- Botoes -->

<HR>

<span class="style1">Relat&oacute;rio de Cadastros em Formato MS-Excel<br>

Para ver no Excel clique no icone: <a href='RelatorioCadastros.xls' target='_blank' class='style1'><img src="figuras/excelexport.png" alt="Clique para salvar ou abrir o relat&oacute;rio no seu computador." width="30" height="30" border="none"></a></span><br>

<br>

<%if request("cd_lookup") = "" then %>

<input type=button name=btnVoltar value="Voltar" onClick="window.history.go(-1)">

<!--#include file="rodapefadsys.asp" -->

<%if qt_email>0 then%>

<input type=button name="btnMarcarTodos" id="btnMarcarTodos" value="Selecionar Todos">

<input type=button name=btnEmail value="Enviar E-Mail Mkt">

<%end if%>

<%else%>

<input type=button name=btnVoltar value="Voltar" onClick="parent.window.close">

<%end if%>

</form>

</HTML>

<%

'Esvazia variaveis da memoria

set rsParceiro = nothing

%>

<script LANGUAGE=VBSCRIPT>

sub Seleciona(cd, ds)

parent.window.opener.document.all("<%=request("fld1")%>").value = cd

parent.window.opener.document.all("<%=request("fld2")%>").value = ds

parent.window.close

end sub

sub btnMarcarTodos_onclick()

dim i

for i = 0 to frmprincipal.chkEmail.length - 1

if frmPrincipal.btnMarcarTodos.value ="Desmarcar Todos" then

frmprincipal.chkEmail(i).checked = false

else

frmprincipal.chkEmail(i).checked = true

end if

next

if frmPrincipal.btnMarcarTodos.value ="Desmarcar Todos" then

frmPrincipal.btnMarcarTodos.value = "Selecionar Todos"

else

frmPrincipal.btnMarcarTodos.value = "Desmarcar Todos"

end if

end sub

sub btnEmail_onclick()

dim i, iMarcados

iMarcados = 0

<%if qt_email > 1 then%>

for i = 0 to frmprincipal.chkEmail.length - 1

if frmprincipal.chkEmail(i).checked = true then

iMarcados = iMarcados + 1

end if

next

<%elseif qt_email = 1 then%>

if frmprincipal.chkEmail.checked = true then

iMarcados = 1

end if

<%end if%>

if iMarcados = 0 then

msgbox "Nenhum item selecionado", 48

else

if msgbox("Deseja enviar Email para os cadastros selecionados?",4 + 32 + 256) = 6 then

frmprincipal.action = "email_marketing.asp"

frmPrincipal.method = "POST"

frmprincipal.submit

end if

end if

end sub

</SCRIPT>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×
×
  • Criar Novo...