Ir para conteúdo
Fórum Script Brasil
  • 0

Trabalhando com o FPDF e Asp e Bd Access


Fad Web

Pergunta

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 (alice.freitas@ig.com.br) 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 (fad@fadmarketing.com.br) 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>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...