View Full Version : pdf invoice date
Adamski
03-10-07, 04:25 PM
I'm trying to add the invoice creation date to my pdf invoice using:
$pdf->Cell(0,6,$_LANG["invoicesdatecreated"].': '.$datecreated.'',0,1,'L','1');
I see the text but it doesn't input the creation date so i have:
Invoice Date:
Any advice greatly appreciated - as ever it will be something stupid that I am doing!
Ad :D
koivumagi
03-22-07, 07:33 PM
Heya.
I have made it so:
includes/pdfconfig.php
after <?php
add:
$a1=mysql_query("SELECT SQL_CACHE date FROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
$ajakesekene=explode('-', $a['date']);
$ajake=$ajakesekene[2].'/'.$ajakesekene[1].'/'.$ajakesekene[0];
Then add this next lines where you want show your creating date:
$pdf->SetFont('Arial','',10);
$pdf->Cell(0,6,$_LANG["invoicesdatecreated"].': '.$ajake,0,1,'R','0');
I hope its helping you.
This was good worked for me. Thanks, I was also interested in trying to add the payment portion like the invoice itself on the bottom showing in PDF the transaction portion when paid or blank if not paid. Can this be done?
koivumagi
03-27-07, 03:41 PM
You think in this file? viewinvoice.php?id=InvoiceNumber
That in pdf file end it showing same transactions and so...?
I think this is possible...
I write something and copy here then :shock:
Thanks that will be great this way clients can view when and maybe how it was paid when they save for thier records.
Again thanks in advance.
koivumagi
03-27-07, 08:34 PM
Hey,
Im now back :lol:
so... here is what you use:
Added "status" to:
$a1=mysql_query("SELECT SQL_CACHE id,date,status FROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
Then bottom before ?>
add:
if($a['status']=='Paid'){
$pdf->Ln(10);
$pdf->SetFont('Arial','b',9);
$pdf->Cell(0,4,$_LANG['invoicestransactions'],0,1,'L','0');
$pdf->Ln(5);
$pdf->Cell(40,4,$_LANG['invoicestransdate'],1,0,'C','1');
$pdf->Cell(58,4,$_LANG['invoicestransgateway'],1,0,'C','1');
$pdf->Cell(50,4,$_LANG['invoicestransid'],1,0,'C','1');
$pdf->Cell(40,4,$_LANG['invoicestransamount'],1,0,'C','1');
$pdf->Ln();
$trans1=mysql_query("SELECT SQL_CACHE userid,gateway,date,amountin,transid,invoiceid FROM tblaccounts WHERE invoiceid='".$invoiceid."'")
or die(mysql_error());
while($trans = mysql_fetch_assoc($trans1))
{
$trans2=mysql_query("SELECT SQL_CACHE gateway,setting,value FROM tblpaymentgateways WHERE gateway='".$trans['gateway']."' AND setting='name' LIMIT 1")
or die(mysql_error());
$tra=mysql_fetch_array($trans2);
$pdf->SetFont('Arial','',9);
$pdf->Cell(40,4,$trans['date'],1);
$pdf->Cell(58,4,$tra['value'],1,0,'C');
$pdf->Cell(50,4,$trans['transid'],1,0,'C');
$pdf->Cell(40,4,$trans['amountin'],1,0,'C');
$pdf->Ln();
}
}
If you want more down this then
1st line change this:
if($a['status']=='Paid'){
$pdf->Ln(10); <<<--- 10 to 20 like :P
And finish..
I hope its helping you....
koivumagi
03-27-07, 08:40 PM
I have used this system now.. i think 5 days :roll: and i like this :D .
but yes...too much is crypted...but if you can little think and know php you can make anything :twisted:
WHMCS RULZ :twisted:
koivumagi
03-27-07, 09:02 PM
I found one good code more :P
If you dont like this bottom Page 1/1 and your web address..
then add to bottom before ?>
this:
$pdf->Open(0,7,'');
Thanks will try tonight and get back to you
koivumagi
I understand what to do with the second part of the code.
But where do I put the first code ---Added "status" to ?
I tryed it a couple of ways but I cant see anything only the original pdf.
koivumagi
03-28-07, 08:24 AM
Ok..
if you added this date function then u know that top you have added this :
after <?php
$a1=mysql_query("SELECT SQL_CACHE id,dateFROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
now remove this and add:
or you only add status to here: SELECT SQL_CACHE id,date,status <<< here
$a1=mysql_query("SELECT SQL_CACHE id,date,status FROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
Here is what it looks like I dont see any added feature when I download it.
<?php
//Logo
$a1=mysql_query("SELECT SQL_CACHE id,date,status FROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
$ajakesekene=explode('-', $a['date']);
$ajake=$ajakesekene[2].'/'.$ajakesekene[1].'/'.$ajakesekene[0];
$pdf->Ln(5);
//Status
if ($status=="") {
$status="paid";
}
$pdf->Image(dirname(__FILE__).'/../images/invoices/'.strtolower($status).'.png',120,65,50);
//Arial bold 15
$pdf->SetFont('Arial','B',15);
//Move to the right
$pdf->SetFillColor(239);
$pdf->Cell(0,8,$_LANG["invoicestitle"].$invoiceid,0,1,'L','1');
$pdf->SetFont('Arial','',10);
$pdf->Cell(0,6,$_LANG["invoicesdatecreated"].': '.$ajake,0,1,'L','1');
$pdf->Cell(0,6,$_LANG["invoicesdatedue"].': '.$duedate.'',0,1,'R','2');
//Line break
$pdf->Ln(1);
# Company Details
$pdf->SetFont('Arial','',13);
$pdf->Cell(0,6,$companyname,0,1,'L');
$pdf->SetFont('Arial','',8);
foreach ($companyaddress AS $addressline) {
$pdf->Cell(0,4,$addressline,0,1,'L');
}
$pdf->Ln(10);
# Clients Details
$pdf->SetFont('Arial','',11);
if ($clientsdetails["companyname"]) {
$pdf->Cell(0,4,$clientsdetails["companyname"],0,1,'L');
$pdf->Cell(0,5,"ATTN: ".$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'L');
} else {
$pdf->Cell(0,5,$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'L');
}
$pdf->SetFont('Arial','',8);
$pdf->Cell(0,4,$clientsdetails["address1"],0,1,'L');
if ($clientsdetails["address2"]) {
$pdf->Cell(0,4,$clientsdetails["address2"],0,1,'L');
}
$pdf->Cell(0,4,$clientsdetails["city"].", ".$clientsdetails["state"].", ".$clientsdetails["postcode"],0,1,'L');
$pdf->Cell(0,4,$clientsdetails["country"],0,1,'L');
$pdf->Ln(10);
$pdf->SetFont('Arial','B',10);
$pdf->SetFillColor(239);
$pdf->Cell(148,7,$_LANG["invoicesdescription"],1,0,'C','1');
$pdf->Cell(40,7,$_LANG["invoicesamount"],1,0,'C','1');
$pdf->Ln();
$pdf->SetFont('Arial','',10);
foreach ($invoiceitems AS $item) {
if (strlen($item["description"])>85) {
#$pdf->MultiCell(148,6,$item["description"],1);
$pdf->Cell(148,6,substr($item["description"],0,85),1);
$pdf->Cell(40,6,$currencysymbol.$item["amount"],1,0,'C');
$pdf->Ln();
$pdf->Cell(148,6,substr($item["description"],85),1);
$pdf->Cell(40,6,"",1,0,'C');
} else {
$pdf->Cell(148,6,$item["description"],1);
$pdf->Cell(40,6,$currencysymbol.$item["amount"],1,0,'C');
}
$pdf->Ln();
}
$pdf->SetFont('Arial','B',10);
$pdf->Cell(148,7,$_LANG["invoicessubtotal"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$subtotal,1,0,'C','1');
$pdf->Ln();
$pdf->Cell(148,7,$_LANG["invoicescredit"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$credit,1,0,'C','1');
$pdf->Ln();
if ($CONFIG["TaxEnabled"]) {
$pdf->Cell(148,7,$taxrate."% ".$_LANG["invoicestax"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$tax,1,0,'C','1');
$pdf->Ln();
}
$pdf->Cell(148,7,$_LANG["invoicestotal"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$total,1,0,'C','1');
$pdf->Ln();
$pdf->Ln();
if($a['status']=='Paid'){
$pdf->Ln(10);
$pdf->SetFont('Arial','b',9);
$pdf->Cell(0,4,$_LANG['invoicestransactions'],0,1,'L','0');
$pdf->Ln(5);
$pdf->Cell(40,4,$_LANG['invoicestransdate'],1,0,'C','1');
$pdf->Cell(58,4,$_LANG['invoicestransgateway'],1,0,'C','1');
$pdf->Cell(50,4,$_LANG['invoicestransid'],1,0,'C','1');
$pdf->Cell(40,4,$_LANG['invoicestransamount'],1,0,'C','1');
$pdf->Ln();
$trans1=mysql_query("SELECT SQL_CACHE userid,gateway,date,amountin,transid,invoiceid FROM tblaccounts WHERE invoiceid='".$invoiceid."'")
or die(mysql_error());
while($trans = mysql_fetch_assoc($trans1))
{
$trans2=mysql_query("SELECT SQL_CACHE gateway,setting,value FROM tblpaymentgateways WHERE gateway='".$trans['gateway']."' AND setting='name' LIMIT 1")
or die(mysql_error());
$tra=mysql_fetch_array($trans2);
$pdf->SetFont('Arial','',9);
$pdf->Cell(40,4,$trans['date'],1);
$pdf->Cell(58,4,$tra['value'],1,0,'C');
$pdf->Cell(50,4,$trans['transid'],1,0,'C');
$pdf->Cell(40,4,$trans['amountin'],1,0,'C');
$pdf->Ln();
}
}
?>
koivumagi
03-28-07, 03:45 PM
Ok here is my full file:
It has invoice created date, reference number and transaction in pdf.
<?php
$a1=mysql_query("SELECT SQL_CACHE id,date,status FROM tblinvoices WHERE id='".$invoiceid."' LIMIT 1") or die(mysql_error());
$a=mysql_fetch_array($a1);
$ajakesekene=explode('-', $a['date']);
$ajake=$ajakesekene[2].'/'.$ajakesekene[1].'/'.$ajakesekene[0];
$number = $invoiceid;
if (!isset($number)) $number = "1234567890";
$kordaja = 7;
$algarv = $number;
do {
$kontrolljark = $kontrolljark + (($number % 10) * $kordaja);
if ($kordaja == 7) $kordaja = 3;
else if ($kordaja == 3) $kordaja = 1;
else if ($kordaja == 1) $kordaja = 7;
} while ((int)$number /= 10);
$kontrolljark = 10 - ($kontrolljark % 10);
if ($kontrolljark == 10){$kontrolljark = 0;}
$viitenumber = $algarv.$kontrolljark;
# Company Details
$pdf->SetFont('Arial','',13);
$pdf->Cell(0,6,$companyname,0,1,'L');
$pdf->SetFont('Arial','',8);
foreach ($companyaddress AS $addressline) {
$pdf->Cell(0,4,$addressline,0,1,'L');
}
//Line break
//Logo
$pdf->Image(dirname(__FILE__).'/../images/logo.jpg',140,8,50);
$pdf->Ln(10);
//Line break
//Arial bold 15
$pdf->SetFont('Arial','B',12);
//Move to the right
$pdf->SetFillColor(239);
$pdf->Cell(0,6,$_LANG["invoicestitle"].' '.$invoiceid,0,1,'R','0');
$pdf->SetFont('Arial','',10);
$pdf->Cell(0,6,$_LANG["invoicesdatecreated"].': '.$ajake,0,1,'R','0');
$pdf->SetFont('Arial','',10);
$pdf->Cell(0,6,$_LANG["invoicesdatedue"].': '.$duedate,0,1,'R','0');
$pdf->SetFont('Arial','',10);
$pdf->Cell(0,6,'Viitenumber: '.$viitenumber,0,1,'R','0');
//Line break
$pdf->Ln(10)
;
# Clients Details
$pdf->SetFont('Arial','',11);
if ($clientsdetails["companyname"]) {
$pdf->Cell(0,4,$clientsdetails["companyname"],0,1,'L');
$pdf->Cell(0,5,"Kontakt: ".$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'L');
} else {
$pdf->Cell(0,5,$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'L');
}
$pdf->SetFont('Arial','',8);
$pdf->Cell(0,4,$clientsdetails["address1"],0,1,'L');
if ($clientsdetails["address2"]) {
$pdf->Cell(0,4,$clientsdetails["address2"],0,1,'L');
}
$pdf->Cell(0,4,$clientsdetails["city"].", ".$clientsdetails["state"].", ".$clientsdetails["postcode"],0,1,'L');
$pdf->Cell(0,4,$clientsdetails["country"],0,1,'L');
$pdf->Ln(10);
$pdf->SetFont('Arial','B',10);
$pdf->SetFillColor(239);
$pdf->Cell(148,7,$_LANG["invoicesdescription"],1,0,'C','1');
$pdf->Cell(40,7,$_LANG["invoicesamount"],1,0,'C','1');
$pdf->Ln();
$pdf->SetFont('Arial','',10);
foreach ($invoiceitems AS $item) {
if (strlen($item["description"])>85) {
$pdf->MultiCell(148,6,$item["description"],1);
$pdf->Cell(148,6,"",1);
$pdf->Cell(40,6,$currencysymbol.$item["amount"],1,0,'C');
} else {
$pdf->Cell(148,6,$item["description"],1);
$pdf->Cell(40,6,$currencysymbol.$item["amount"],1,0,'C');
}
$pdf->Ln();
}
$pdf->SetFont('Arial','B',10);
$pdf->Cell(148,7,$_LANG["invoicessubtotal"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$subtotal,1,0,'C','1');
$pdf->Ln();
$pdf->Cell(148,7,$_LANG["invoicescredit"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$credit,1,0,'C','1');
$pdf->Ln();
if ($CONFIG["TaxEnabled"]) {
$pdf->Cell(148,7,$taxrate."% ".$_LANG["invoicestax"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$tax,1,0,'C','1');
$pdf->Ln();
}
$pdf->Cell(148,7,$_LANG["invoicestotal"].":",1,0,'R','1');
$pdf->Cell(40,7,$currencysymbol.$total,1,0,'C','1');
$pdf->Ln();
$pdf->Ln();
if($a['status']=='Paid'){
$pdf->Ln(10);
$pdf->SetFont('Arial','b',9);
$pdf->Cell(0,4,$_LANG['invoicestransactions'],0,1,'L','0');
$pdf->Ln(5);
$pdf->Cell(40,4,$_LANG['invoicestransdate'],1,0,'C','1');
$pdf->Cell(58,4,$_LANG['invoicestransgateway'],1,0,'C','1');
$pdf->Cell(50,4,$_LANG['invoicestransid'],1,0,'C','1');
$pdf->Cell(40,4,$_LANG['invoicestransamount'],1,0,'C','1');
$pdf->Ln();
$trans1=mysql_query("SELECT SQL_CACHE userid,gateway,date,amountin,transid,invoiceid FROM tblaccounts WHERE invoiceid='".$invoiceid."'")
or die(mysql_error());
while($trans = mysql_fetch_assoc($trans1))
{
$trans2=mysql_query("SELECT SQL_CACHE gateway,setting,value FROM tblpaymentgateways WHERE gateway='".$trans['gateway']."' AND setting='name' LIMIT 1")
or die(mysql_error());
$tra=mysql_fetch_array($trans2);
$pdf->SetFont('Arial','',9);
$pdf->Cell(40,4,$trans['date'],1);
$pdf->Cell(58,4,$tra['value'],1,0,'C');
$pdf->Cell(50,4,$trans['transid'],1,0,'C');
$pdf->Cell(40,4,$trans['amountin'],1,0,'C');
$pdf->Ln();
}
}
?>
Adamski
03-28-07, 03:57 PM
koivumagi,
This is GREAT thanks. Have got it working nicely!
One thing you might be able to help with - may date is backwards. Instead of 15/3/2007 it is 2007-03-15. Is there anyway of changing this?
Thanks,
Ad
Adamski
03-28-07, 04:05 PM
This has also helped me to change my messages on the invoice depending on whether it is paid or unpaid. Excellent!
koivumagi
Thats it, GREAT JOB!!
Thanks
koivumagi
03-28-07, 08:05 PM
koivumagi,
This is GREAT thanks. Have got it working nicely!
One thing you might be able to help with - may date is backwards. Instead of 15/3/2007 it is 2007-03-15. Is there anyway of changing this?
Thanks,
Ad
You change this
$ajake=$ajakesekene[2].'/'.$ajakesekene[1].'/'.$ajakesekene[0];
$ajakesekene[2] this is day
$ajakesekene[1] this is month
$ajakesekene[0] this is year
koivumagi
03-28-07, 08:06 PM
If somebody need this function to pdf invoice...
Its writing numbers to text.
Like 10$ its write down Ten dollar :twisted:
koivumagi
03-28-07, 08:28 PM
...
Adamski
03-28-07, 10:10 PM
Sorry I meant for the transaction date ;)
Thanks,
Yes That worked great.
This is how i did mine onestopad
$ajake=$ajakesekene[1].'/'.$ajakesekene[2].'/'.$ajakesekene[0];
minadreapta
09-22-07, 09:39 PM
anybody tried and succeeded the following thing?
i am trying to put the Customer's details on the left and My Company's details on the right and the logo on the middle.
i mean not like customer up and to the left and company down and to the right.
something like this:
==========
Bill To ---------------Logo---------------My Company
==========
i want to put them at the same height...
any ideeas?
thanks.
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.