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 > .NET Framework > Forum > Crystal Report อยากให้ออก เป็นตัวอักษร จากผลรวม ต้องเขียนยังงัยหรอค่ะ



 

Crystal Report อยากให้ออก เป็นตัวอักษร จากผลรวม ต้องเขียนยังงัยหรอค่ะ

 



Topic : 091505



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



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



Crystal Report อยากให้ออก เป็นตัวอักษร จากผลรวม ต้องเขียนยังงัยหรอค่ะ

หน้าตาที่ออกแบบไว้

Code
Local stringVar array D:= ["","สิบ","ร้อย","พัน","หมื่น","แสน"];
Local stringVar array e:= ["หนึ่ง","สอง","สาม","สี่","ห้า","หก","เจ็ด","แปด","เก้า"];
Local stringVar array Mn;
Local stringVar array Ar1;
Local stringVar Arr;
Local numberVar F;
Local numberVar R;
Local numberVar j;
Local numberVar k;
Local numberVar u;
Local numberVar j2;
Local stringVar Bh;
Local numberVar F2;
Local numberVar j3;
Local numberVar u1;
Local numberVar m3;
Local stringVar Bh3;
//แบ่งจำนวนเต็มและทศนิยมออกจากกัน แล้วเก็บในตัวแปรอาร์เรย์ sm
Ar1:=Split (CStr({dtCharges.CharPrice},2,""),".");
//นำจำนวนเต็มมาแบ่งตัวเลขออกชุดละหกหลัก ในที่นี้ใช้กับจำนวนหลักสูงสุด 18 หลัก แต่ละชุดที่แบ่งใช้ตัอักษร : คั่น
F:=Len(Ar1[1]);
If F<=6 then Arr:=Ar1[1];
If F>6 and F<=12 then Arr:=Left(Ar1[1],Len(Ar1[1])-6)+":"+Right(Ar1[1],6);
If F>12 and F<=18 then Arr:=Left(Ar1[1],Len(Ar1[1])-12)+":"+Mid(Ar1[1],F-12+1,6)+":"+Right(Ar1[1],6);
//จากนั้นให้มาแยกและเก็บในตัวแปรอาร์เรย์ Mn
Mn:=Split(Arr,":");
//แล้วนำตัวเลขในแต่ละชุดมาสร้างข้อความค่าของเงิน เริ่มจากชุดหลักที่มากที่สุด
For j2:=1 to UBound (Mn) do (
//เริ่มสร้างข้อความค่าของเงินในแต่ละชุดตัวเลข
F2:=Len(Mn[j2]);
//สำหรับตัวเลขสองเป็นยี่ และหลักสิบที่ไม่มีหน่วย
For j:= 1 To F2 do (
If Mid(Mn[j2],j,1)="2" And F2+1-j=8 Then e[2]:="ยี่";
If Mid(Mn[j2],j,1)="1" And F2+1-j=8 Then e[1]:="";
If Mid(Mn[j2],j,1)="2" And F2+1-j=2 Then e[2]:="ยี่";
If Mid(Mn[j2],j,1)="1" And F2+1-j=2 Then e[1]:="";
If Mid(Mn[j2],j,1)="1" And F2+1-j=1 Then e[1]:="เอ็ด";
//สร้างข้อความค่าของเงิน
For R:= 1 To 9 do (
  u:= Val(Mid (Mn[j2],j,1));
  If u = R Then Bh:= Bh+e[R]+D[F2+1-j];
);
//เปลี่ยนหน่วย ยี่ มาเป็นสอง หลักสิบเป็นหนึ่ง เพื่อใช้ในชุดต่อไป
e[2]:= "สอง";
e[1]:= "หนึ่ง";
);
//สำหรับชุดตัวเลขที่มากกว่าหนึ่งชุด จะต้องเติมคำว่า ล้าน
If j2 <> Ubound(Mn) Then Bh:= Bh+"ล้าน";
Mn[j2]:=Bh;
Bh:="";
);
//มาสร้างข้อความค่าเงิน สำหรับจุดทศนิยม ด้วยวิธีเดียวกันกับจำนวนเต็ม
For j3:=1 To 2 do(
If Mid(Ar1[2],j3,1) ="2" And j3=1 Then e[2]:= "ยี่";
If Mid(Ar1[2],j3,1) ="1" And j3=1 Then e[1]:= "";
If Mid(Ar1[2],j3,1) ="1" And j3=2 Then e[1]:= "เอ็ด";
For m3:=1 To 9 do (
u1:=Val(Mid(Ar1[2],j3,1));
If u1=m3 Then Bh3:=Bh3+e[m3]+D[3-j3];
);
e[2]:="สอง";
e[1]:="หนึ่ง";
);
//รวมข้อความค่าของเงินที่จำนวนเต็มและทศนิยม
If Mn[1]<>"" and Bh3<>"" then
Join (Mn,"")+"บาท"+Bh3+"สตางค์"
Else if Mn[1]<>"" and Bh3="" then
Join (Mn,"")+"บาทถ้วน"
Else If Mn[1]="" and Bh3<>"" then 
Bh3+"สตางค์"
Else
""

ที่เขียนไว้ค่ะ รบกวนผู้รู้ด้วยนะค่ะ



Tag : ASP.NET Ms SQL Server 2005, VS 2008 (.NET 3.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-02-26 22:45:36 By : Snooky View : 3614 Reply : 3
 

 

No. 1



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

สมาชิกที่ใส่เสื้อไทยครีเอท

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


Dim R1 As New CrystalReport1
R1.SetParameterValue("txtbath", จำนวนเงิน)


ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-27 09:32:00 By : Downrung
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

มีคนตอบไว้แล้วน่ะครับ 2 บทความนี้ครับ

Go to : ต้องการให้ Crystal Report แสดงเป็นจำนวนเงินเป็นตัวหนังสือไทย
Go to : ช่วยเหลือหน่อยครับ crystal report formula แปลงเงินเป็นตัวอักษร Vs2010 c#
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-27 09:35:06 By : mr.win
 

 

No. 3



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



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

ขอบคุณนะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-03-03 22:01:24 By : Snooky
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Crystal Report อยากให้ออก เป็นตัวอักษร จากผลรวม ต้องเขียนยังงัยหรอค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
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 อัตราราคา คลิกที่นี่