|
|
|
ช่วยดูให้หน่อยค่ะ ถ้าต้องการรวมค่าแบบนี้ ต้องทำยังไงคะ |
|
|
|
|
|
|
|
ขอดูcodeหน่อยค่ะจะได้แนะนำถูก
|
|
|
|
|
Date :
2014-06-17 17:12:34 |
By :
LuckyStar |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คงต้องนำค่าที่ได้ มายัดไว้ใน valueของ input type'hidden' แล้วใช้จาวาสคริป + textfiled ละมั้งนะ
ผิดพลาดตรงไหนขออภัยด้วย
|
|
|
|
|
Date :
2014-06-18 08:49:18 |
By :
benzsara |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
include("conn.php");
$strSQL = " select
pohd.DocuNo,
CONVERT( VARCHAR( 20 ), pohd.DocuDate, 103 ) as DocuDate ,
pohd.RefDocuNo,
EMDept.Deptcode,
EMVendor.VendorName ,
pohd.SumGoodAmnt,
pohd.BillDiscAmnt,
pohd.BillAftrDiscAmnt,
pohd.NetAmnt,
SUM(POInvDT.TotaExcludeAmnt) as ToUse,
SUM(POInvHD.AftrAdvnAmnt) as crnote,
pohd.DocuStatus,
pohd.CancelFlag
FROM POHD pohd
left join EMVendor EMVendor on pohd.VendorID = EMVendor.VendorID
left join emdept emdept on pohd.deptid=emdept.deptid
left join poinvdt on poinvdt.poid=pohd.poid
left join POInvHD on POInvHD.LastInvNo=POInvDT.RefeNo
where pohd.docudate between '2013/01/25' and '2013/01/31'
and pohd.docutype='305' and pohd.MultiCurr = 'N' and pohd.docustatus in ('p','c')
GROUP BY
pohd.DocuNo,
pohd.DocuDate,
pohd.RefDocuNo,
EMDept.Deptcode,
EMVendor.VendorName ,
pohd.SumGoodAmnt,
pohd.BillDiscAmnt,
pohd.BillAftrDiscAmnt,
pohd.NetAmnt,
pohd.DocuStatus,
pohd.CancelFlag,
poinvdt.PONo
order by pohd.docuno " ;
$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>
<div class="warp">
<div class="header">
<div class="name">บริษัท ควอลิเทค เอ็นจิเนียริ่ง แอนด์ คอนสตัคชั่น จำกัด<br>รายงานใบสั่งซื้อ - เรียงตามเลขที่เอกสาร (แบบสรุป)</div>
<div class="cond">จากวันที่ 1/1/0.2013 ถึง 4/1/2013</div>
</div>
<div class="dateprint"><? echo "พิมพ์วันที่ : " . date('d/m/y H:i:s'); ?></div>
<table width="100%" cellspacing="0" cellpadding="3" class="title">
<tr>
<td width="85">เลขที่เอกสาร</td>
<td width="60">วันที่เอกสาร</td>
<td width="85">เลขที่อนุมัติซื้อ</td>
<td width="30">แผนก</td>
<td width="350">ชื่อผู้ขาย</td>
<td width="70" align="right">จำนวนเงิน</td>
<td width="70" align="right">ส่วนลดบิล</td>
<td width="70" align="right">เงินก่อนภาษี</td>
<td width="70" align="right">ใช้ไป</td>
<td width="70" align="right">คงเหลือ</td>
<td width="70" align="right">Cancel</td>
<td width="70" align="right">รวมทั้งสิ้น(v)</td>
<td width="10" align="center">s</td>
</tr>
<?
$SSumGoodAmnt = 0;
$SBillDiscAmnt = 0;
$SBillAftrDiscAmnt = 0;
$SToUse = 0;
$SCancel = 0;
$SNetAmnt = 0;
while($objResult = mssql_fetch_array($objQuery)){
$DocuDate = $objResult["DocuDate"];
$SumGoodAmnt = $objResult["SumGoodAmnt"];
$BillDiscAmnt = $objResult["BillDiscAmnt"]; ;
$BillAftrDiscAmnt = $objResult["BillAftrDiscAmnt"];
$ToUse = $objResult["ToUse"];
$crnote = $objResult["crnote"];
$NetAmnt = $objResult["NetAmnt"];
$SSumGoodAmnt = $objResult["SumGoodAmnt"] + $SSumGoodAmnt;
$SBillDiscAmnt = $objResult["BillDiscAmnt"] + $SBillDiscAmnt;
$SBillAftrDiscAmnt =$objResult["BillAftrDiscAmnt"] + $SBillAftrDiscAmnt ;
$SNetAmnt = $objResult["NetAmnt"] + $SNetAmnt;
$TotalUse=$ToUse-$crnote-$BillDiscAmnt;
$STotalUse = $TotalUse + $STotalUse;
$Cancel=$BillAftrDiscAmnt-$TotalUse;
$Balance=$BillAftrDiscAmnt-$TotalUse;
$SCancel = $SBillAftrDiscAmnt - $STotalUse -$Balance ;
$SBalance = $Balance + $SBalance - $crnote ;
?>
<tr>
<td><?=$objResult["DocuNo"]; ?></td>
<td><?=$objResult["DocuDate"]; ?></td>
<td><?=$objResult["RefDocuNo"];?></td>
<td><?=$objResult["Deptcode"];?></td>
<td><?=$objResult["VendorName"];?></td>
<td align="right"><? echo number_format($SumGoodAmnt, 2, '.', ','); ?></td>
<td align="right"><? echo number_format($BillDiscAmnt, 2, '.', ','); ?></td>
<td align="right"><? echo number_format($BillAftrDiscAmnt, 2, '.', ','); ?></td>
<td align="right">
<? echo number_format($TotalUse, 2, '.', ','); ?>
</td>
<td align="right"><?
$Docustatus=$objResult["DocuStatus"];
$cancelflag=$objResult["CancelFlag"];
if($Docustatus =='P' && $cancelflag =='N')
{ echo number_format($Balance, 2, '.', ',');}
else { echo "0.00";}
;
?></td>
<td align="right">
<?
$Docustatus=$objResult["DocuStatus"];
$cancelflag=$objResult["CancelFlag"];
if($Docustatus =='P' && $cancelflag =='Y')
{ echo number_format($Cancel, 2, '.', ',');}
else if($Docustatus =='N' && $cancelflag =='Y')
{ echo number_format($Cancel, 2, '.', ',');}
else { echo "0.00";} ;
?>
</td>
<td align="right"><? echo number_format($NetAmnt, 2, '.', ','); ?></td>
<td align="center">
<?
$Docustatus=$objResult["DocuStatus"];
$cancelflag=$objResult["CancelFlag"];
if($Docustatus =='P' && $cancelflag =='Y')
{ echo "C";}
else if($Docustatus =='N' && $cancelflag =='Y')
{ echo "C";}
else if($Docustatus =='P' && $cancelflag =='N')
{ echo "P";}
else { echo "";}
;
?>
<?php /*?><?=$objResult["DocuStatus"]; ?><?php */?></td>
</tr>
<?
$num++;
}
?>
</table>
<table width="100%" cellspacing="0" cellpadding="3" class="total">
<tr>
<td width="100"> </td>
<td width="75">รวมทั้งสิ้น</td>
<td width="80"><?php echo $num; ?></td>
<td width="90">รายการ</td>
<td width="310" align="right">รวมเงินทั้งสิ้น </td>
<td width="70" align="right"><? echo number_format($SSumGoodAmnt, 2, '.', ','); ?></td>
<td width="70" align="right"><? echo number_format($SBillDiscAmnt, 2, '.', ','); ?></td>
<td width="70" align="right"><? echo number_format($SBillAftrDiscAmnt, 2, '.', ','); ?></td>
<td width="70" align="right"><? echo number_format($STotalUse, 2, '.', ','); ?></td>
<td width="70" align="right">
<?
echo number_format($Balance, 2, '.', ',');
?>
<?php /*?><? echo number_format($SBalance, 2, '.', ','); ?><?php */?></td>
<td width="70" align="right">
<?php /*?> <?
if($Cancel != "0.00"){
$SSCancel = $Cancel+$SCancel-$SBalance;
echo number_format($SSCancel, 2, '.', ',');}
?><?php */?>
<? echo number_format($SCancel, 2, '.', ','); ?></td>
<td width="70" align="right"><? echo number_format($SNetAmnt, 2, '.', ','); ?></td>
<td width="10" align="center"></td>
</tr></table>
<?
mssql_close($objConnect);
?>
|
ประวัติการแก้ไข 2014-06-18 08:54:09
|
|
|
|
Date :
2014-06-18 08:52:32 |
By :
AnnYZaa |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าผมเข้าใจไม่ผิดคือคุณ AnnYZaa ต้องการให้ผลรวมของช่อง คงเหลือ รวมเฉพาะ 5,736 + 710,300 เป็น 716,036
และผลรวมของช่อง Cancel รวมเฉพาะ 3,417 + 12,000 + 142,200 เป็น 157,617
งั้นผมขอให้ลองตามนี้ บรรทัดที่ 98 และ 99 ให้ comment ไว้
Code (PHP)
$STotalUse = $TotalUse + $STotalUse;
$Cancel=$BillAftrDiscAmnt-$TotalUse;
$Balance=$BillAftrDiscAmnt-$TotalUse;
/*$SCancel = $SBillAftrDiscAmnt - $STotalUse -$Balance ;
$SBalance = $Balance + $SBalance - $crnote ;*/
?>
แล้วก็เพิ่มตามนี้
Code (PHP)
<td align="right"><?
$Docustatus=$objResult["DocuStatus"];
$cancelflag=$objResult["CancelFlag"];
if($Docustatus =='P' && $cancelflag =='N')
{ echo number_format($Balance, 2, '.', ',');
$SBalance += $Balance;} //+++++++++++++++++++++++++ เพิ่ม
else { echo "0.00";}
;
?></td>
<td align="right">
<?
$Docustatus=$objResult["DocuStatus"];
$cancelflag=$objResult["CancelFlag"];
if($Docustatus =='P' && $cancelflag =='Y')
{ echo number_format($Cancel, 2, '.', ',');
$SCancel += $Cancel;} //+++++++++++++++++++++++++ เพิ่ม
else if($Docustatus =='N' && $cancelflag =='Y')
{ echo number_format($Cancel, 2, '.', ',');
$SCancel += $Cancel;} //+++++++++++++++++++++++++ เพิ่ม
else { echo "0.00";} ;
?>
</td>
บรรทัดที่ 176 ก็เปลี่ยน $Balance เป็น $SBalance
Code (PHP)
echo number_format($SBalance, 2, '.', ',');
ลองดูก่อนนะครับ
|
ประวัติการแก้ไข 2014-06-18 11:28:39 2014-06-18 11:29:20
|
|
|
|
Date :
2014-06-18 11:23:55 |
By :
Alan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|