Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ช่วยดูให้หน่อยค่ะ ถ้าต้องการรวมค่าแบบนี้ ต้องทำยังไงคะ



 

ช่วยดูให้หน่อยค่ะ ถ้าต้องการรวมค่าแบบนี้ ต้องทำยังไงคะ

 



Topic : 109257



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์




จากรูปในช่อง คงเหลือและ cancel เป็นค่าเดียวกันคือ ถ้า status (ช่องสุดท้าย) เป้น P ให้ใส่ในช่อง คงเหลือ แต่ถ้า status=C ให้ใส่ในช่อง cancel
สิ่งที่ต้องการคือ ต้องการรวมค่าแยกทั้ง 2 ช่อง ตอนนี้ค่ามันรวมกันทั้ง 2 ช่องเลยค่ะ

balance



Tag : PHP, MySQL, Ms SQL Server 2008, HTML/CSS







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-06-17 17:02:03 By : AnnYZaa View : 824 Reply : 5
 

 

No. 1



โพสกระทู้ ( 937 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

ขอดูcodeหน่อยค่ะจะได้แนะนำถูก






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-06-17 17:12:34 By : LuckyStar
 


 

No. 2



โพสกระทู้ ( 335 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

คงต้องนำค่าที่ได้ มายัดไว้ใน valueของ input type'hidden' แล้วใช้จาวาสคริป + textfiled ละมั้งนะ

ผิดพลาดตรงไหนขออภัยด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-06-18 08:49:18 By : benzsara
 

 

No. 3



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


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">&nbsp;</td>
    <td width="75">รวมทั้งสิ้น</td>
    <td width="80"><?php echo $num; ?></td>
    <td width="90">รายการ</td>
    <td width="310" align="right">รวมเงินทั้งสิ้น &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</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
 


 

No. 4



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าผมเข้าใจไม่ผิดคือคุณ 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
 


 

No. 5



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : Alan เมื่อวันที่ 2014-06-18 11:23:55
รายละเอียดของการตอบ ::
ทำได้แล้วค่ะ ขอบคุณมากๆๆ เลยนคะ ^_^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-06-18 11:55:22 By : AnnYZaa
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดูให้หน่อยค่ะ ถ้าต้องการรวมค่าแบบนี้ ต้องทำยังไงคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่