|
|
|
ถามเรื่องการ Export รายงาน เป็น Excel ใน Column ที่ข้อมูลเป็น ตัวเลข |
|
|
|
|
|
|
|
ใส่ ' ข้างหน้าครับ แต่มันน่าจะมีวิธีที่ถูกต้องกว่านี้ครับ หาเจอแล้วเดียวจะมาบอกครับ
|
|
|
|
|
Date :
2010-09-21 17:26:54 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใส่ ' ข้างหน้าแล้ว มัน error อะครับ ไม่ทราบว่า ต้องใส่ตรงไหน ของ $worksheet->write("B$xlsRow",$result["PDCode"], $xlsCellDesc);
** ผมใส่ ' ตรง $worksheet->write("B$xlsRow",'$result["PDCode"], $xlsCellDesc); ด้านหน้า $result นะครับ ที่ error แล้วก็ ลองย้ายทุกที่แล้วก็ error ตลอดเลยอะครับ
ขอบคุณมากๆนครับ
|
ประวัติการแก้ไข 2010-09-21 17:40:27
|
|
|
|
Date :
2010-09-21 17:32:13 |
By :
muaeenth99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เมื่อก่อนเคยใช้ .value = " '0123456 ";
แต่อ่านใน Manual เมื่อกี่สามารถใช้ .value = " =Text( '0123456', '0' )"
|
|
|
|
|
Date :
2010-09-21 17:34:26 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองใส่ (string) ไปข้างหน้า
$worksheet->write("B$xlsRow",(string) $result["PDCode"], $xlsCellDesc);
ไ่ม่รู้ได้อ่ะป่าว
|
|
|
|
|
Date :
2010-09-21 17:36:09 |
By :
petch.it24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอโทดทีนะครับ ที่ไม่ได้เอา Code ให้ดู ขอโทดจริงๆครับ
Code (PHP)
<?
require_once "class/class.writeexcel_workbook.inc.php";
require_once "class/class.writeexcel_worksheet.inc.php";
include("connect.php");
$sdate=$_POST["sdate"];//2010-05-05
$nsdate=$_POST["sdate"];
$nsy=substr($nsdate,0,4);
$nsm=substr($nsdate,5,2);
$nsd=substr($nsdate,8,2);
$nsdate=$nsd."/".$nsm."/".$nsy;
$edate=$_POST["edate"];
$nedate=$_POST["edate"];
$ney=substr($nedate,0,4);
$nem=substr($nedate,5,2);
$ned=substr($nedate,8,2);
$nedate=$ned."/".$nem."/".$ney;
$outcode=$_POST["outcode"];
$sqloutname="select * from outlet where outcode='$outcode'";
$queryoutname=mysql_query($sqloutname);
$rows=mysql_fetch_array($queryoutname);
$token = md5(uniqid(rand(), true));
$fname= "Report.xls";
$workbook =& new writeexcel_workbook($fname);
$worksheet =& $workbook->addworksheet("รายงานการขาย");
$worksheet->set_margin_right(0.50);
$worksheet->set_margin_bottom(1.10);
## Set Format ##
$xlscelldesc_header =& $workbook->addformat();
$xlscelldesc_header->set_font('Angsana New');
$xlscelldesc_header->set_size(14);
$xlscelldesc_header->set_color('blue');
$xlscelldesc_header->set_bold(1);
$xlscelldesc_header->set_text_v_align(1);
$xlscelldesc_header->set_merge(1);
$xlsCellDesc =& $workbook->addformat();
$xlsCellDesc->set_font('Angsana New');
$xlsCellDesc->set_size(12);
$xlsCellDesc->set_color('black');
//$xlsCellDesc->set_bor(1);
$xlsCellDesc->set_align('left');
$xlsCellDesc->set_text_v_align(1);
## End of Set Format ##
## Set Column Width & Height กำหนดความกว้างของ Cell
$worksheet->set_column('A:A', 6.5);
$worksheet->set_column('B:B', 7.6 );
$worksheet->set_column('C:C', 5);
$worksheet->set_column('D:D', 5);
$worksheet->set_column('E:E', 12);
$worksheet->set_column('F:F', 12);
$worksheet->set_column('G:G', 12);
$worksheet->set_column('H:H', 12);
$worksheet->set_column('I:I', 15);
$worksheet->set_column('J:J', 8.5);
$worksheet->set_column('K:K', 9);
$worksheet->set_column('L:L', 10);
$worksheet->set_column('M:M', 12);
$worksheet->set_column('N:N', 13);
$worksheet->set_column('O:O', 13);
$celldesc_h = 16.50;
## Writing Data เพิ่มข้อมูลลงใน Cell
# กำหนดความสูงของ Cell
$worksheet->set_row(1, $celldesc_h);
$worksheet->set_row(2, $celldesc_h);
$worksheet->set_row(3, $celldesc_h);
$worksheet->set_row(4, $celldesc_h);
$worksheet->set_row(5, $celldesc_h);
$worksheet->write(G3, " รายงานการขายประจำวันที่ : ".$nsdate. " ถึงวันที่ ".$nedate." ห้าง ".$rows["OutName"], $xlscelldesc_header);
$worksheet->write_blank(F6,$xlscelldesc_header);
$worksheet->write(A5,"วันที่", $xlscelldesc_header);
$worksheet->write(B5,"รหัสสินค้า", $xlscelldesc_header);
$worksheet->write(C5,"ชื่อสินค้า", $xlscelldesc_header);
$worksheet->write(D5,"จำนวน", $xlscelldesc_header);
$worksheet->write(E5,"ราคาขายปลีกต่อชิ้น", $xlscelldesc_header);
$worksheet->write(F5,"ส่วนลดต่อชิ้น (บาท)", $xlscelldesc_header);
$worksheet->write(G5,"ราคาเก็บเงินต่อชิ้น", $xlscelldesc_header);
$worksheet->write(H5,"จำนวนเงินรวมที่เก็บได้", $xlscelldesc_header);
$worksheet->write(I5,"ส่วนลดการค้า", $xlscelldesc_header);
$worksheet->write(J5,"ส่วนลด (%)", $xlscelldesc_header);
$worksheet->write(K5,"ส่วนลดคูปอง (%)", $xlscelldesc_header);
$worksheet->write(L5,"ส่วนลดคูปอง ( บาท )", $xlscelldesc_header);
$worksheet->write(M5,"หมายเหตุ", $xlscelldesc_header);
$worksheet->write(N5,"รหัสจุดขาย", $xlscelldesc_header);
$worksheet->write(O5,"ชื่อจุดขาย", $xlscelldesc_header);
$worksheet->write(P5,"วันที่บันทึก", $xlscelldesc_header);
$worksheet->write(Q5,"PC", $xlscelldesc_header);
//$worksheet->write_blank(E6,$xlscelldesc_header);
//$worksheet->write(F6,"$price ", $xlscelldesc_header);
$xlsRow = 6;
# ตรงนี้คือดึงข้อมูลจาก mysql มาใส่ใน Cell
if($outcode=="0000000"){
$sql="select *
from saler s
inner join outlet o on (s.outcode=o.outcode)
inner join user u on (s.user_name=u.user_name)
inner join product p on (p.pdcode = s.pdcode)
inner join discount d ON (d.discode = s.discode)
where onsale between '$sdate' and '$edate'
order by s.onsale,s.discode,s.pdcode asc ";
}else{
$sql="select *
from saler s
inner join outlet o on (s.outcode=o.outcode)
inner join user u on (s.user_name=u.user_name)
inner join product p on (p.pdcode = s.pdcode)
inner join discount d ON (d.discode = s.discode)
where onsale between '$sdate' and '$edate'
and o.outcode='$outcode'
order by s.onsale,s.discode,s.pdcode asc ";
}
$query=mysql_query($sql);
$num=mysql_num_rows($query);
if($num==0){
echo "<script language='javascript'>alert('ไม่พบข้อมูล');</script>";
print "<meta http-equiv=refresh content=0;URL=admin_1.php>";
exit();
}else{
while($result= mysql_fetch_array($query)){
$ndate=$result["Onsale"];//2010-03-01
$y=substr($ndate,0,4);
$m=substr($ndate,5,2);
$d=substr($ndate,8,2);
$onsale=$d."/".$m."/".$y;
$ondate=$result["Onrecord"];
$oy=substr($ondate,0,4);
$om=substr($ondate,5,2);
$od=substr($ondate,8,2);
$onrecord=$od."/".$om."/".$oy;
$namena=$result["UName"];
$testna=$result["Outcode"];
if($testna==00000000){
$testna=$namena;
}else{
$testna="";
}
++$i;
$test=$result["PDCode"];
$test=$test;
$worksheet->set_row($xlsRow, 19.80);
$worksheet->write("A$xlsRow",$onsale, $xlsCellDesc);
$worksheet->write("B$xlsRow",(string)$result["PDCode"], $xlsCellDesc);
$worksheet->write("C$xlsRow", $result["PDName"], $xlsCellDesc);
$worksheet->write("D$xlsRow", $result["Quantity"], $xlsCellDesc);
$worksheet->write("E$xlsRow", $result["Price"], $xlsCellDesc);
$worksheet->write("F$xlsRow", $result["Dis_baht"], $xlsCellDesc);
$worksheet->write("G$xlsRow", $result["PricePerPiece"], $xlsCellDesc);
$worksheet->write("H$xlsRow", $result["Amount"], $xlsCellDesc);
$worksheet->write("I$xlsRow", $result["DisName"], $xlsCellDesc);
$worksheet->write("J$xlsRow", $result["Dispercent"], $xlsCellDesc);
$worksheet->write("K$xlsRow", $result["couponspercent"], $xlsCellDesc);
$worksheet->write("L$xlsRow", $result["couponsbaht"], $xlsCellDesc);
$worksheet->write("M$xlsRow", $result["Note"], $xlsCellDesc);
$worksheet->write("N$xlsRow","\r".$result["OutCode"], $xlsCellDesc);
$worksheet->write("O$xlsRow", $result["OutName"], $xlsCellDesc);
$worksheet->write("P$xlsRow", $onrecord, $xlsCellDesc);
$worksheet->write("Q$xlsRow", $testna, $xlsCellDesc);
$xlsRow++;
}
}
# เสร็จแล้วก็ส่งไฟล์ไปยัง Browser ครับแค่นี้ก็เสร็จแล้ว
$workbook->close();
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition: attachment; filename=".basename("DreamtoyReport.xls").";");
header("Content-Transfer-Encoding: binary\r\n");
header("Content-Length: ".filesize($fname));
readfile($fname);
unlink($fname);
exit();
?>
ผมไม่มีในส่วนของ Wraptext ทำไงดีอะครับ TT
ขอบคุณมากๆนะครับ
|
|
|
|
|
Date :
2010-09-21 17:52:01 |
By :
muaeenth99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|