BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: ittipol ที่ พฤษภาคม 16, 2013, 14:56:39 PM

หัวข้อ: GetDateRangeDialog
เริ่มหัวข้อโดย: ittipol ที่ พฤษภาคม 16, 2013, 14:56:39 PM
อาจารย์ครับ
ช่วยอธิบายเรื่องการใช้งาน GetDateRangeDialog
และการนำไปใช้งานใน Report Builder ด้วยครับ
ถ้าเราไม่มีต้องทำยังงัยครับ
ขอบคุณครับ
หัวข้อ: Re: GetDateRangeDialog
เริ่มหัวข้อโดย: chaiyahos ที่ พฤษภาคม 16, 2013, 16:00:24 PM
ลองดูตัวอย่างครับ http://hosxp.net/smf/index.php?topic=16996.msg197329;topicseen#msg197329
หัวข้อ: Re: GetDateRangeDialog
เริ่มหัวข้อโดย: bmsKeang-Sonata ที่ พฤษภาคม 16, 2013, 16:28:33 PM

สวัสดีคะ

         
           ขออธิบายแบบบ้านๆ นะคะ อย่าถือสานะคะ

           ฟังก์ชั่น   GetDateRangeDialog เป็นฟังก์ชั่นในการสร้างตัวเลือกวันที่ให้กับรายงานคะ  เวลาที่เราต้องการดูผลลัพธ์ของรายงาน มักจะมีเรื่องของช่วงวันที่ที่เราต้องการดูข้อมูลคะ  เพราะถ้าเราไม่ระบุ จะหมายถึงเราต้องการดูข้อมูลทั้งหมดที่เรามีในฐานข้อมูลคะ

           การสร้างตัวเลือกวันที่ให้กับรายงาน เราจะเรียกใช้ ฟังก์ชั่น GetDateRangeDialog  คะ
1. โดยการเรียกฟังก์ชั่นนี้จะได้    GetDateRangeDialog(date1, date2);  ซึ่ง date1 และ date2 คือตัวแปรที่จะเก็บค่าวันที่ตอนที่เราเลือกช่วงวันที่คะ
2. date 1 และ date 2  มีประเภทเป็น datetime;  ซึ่งผลที่ได้มันจะแสดงเป็นวันเดือนปีคะ
3. เราต้องนำตัวแปร date1 และ date2 มาเปลี่ยนรูปแบบ  ให้เป็น ปี เดือน วัน แทน  เพื่อใช้เป็นเงื่อนไขในคำสั่ง SQL ได้
4. ใช้ฟังก์ชั่น  FormatDateTime('YYYY-MM-DD', date1);
                      FormatDateTime('YYYY-MM-DD', date2);
     หมายถึงเปลี่ยนรูปแบบวันที่ทั้ง 2 ช่วงคะ  แต่เปลี่ยนรูปแบบต้องนำไปเก็บไว้ในตัวแปรใด ตัวแปรหนึ่งด้วย

                     ds1:=FormatDateTime('YYYY-MM-DD', date1);
                     ds2:=FormatDateTime('YYYY-MM-DD', date2);

5.  กำหนดเงื่อนไขในคำสั่ง SQL เช่น where vstdate between "'+ds1+'" and "'+ds2+'" 

             ออๆๆ อย่าลืมไปประกาศตัวแปรที่ Declarations  > Variable  นะคะ

                date1,date2 :datetime;
                ds1, ds2       : string;

                              ไม่ยากใช่มั้ยคะ   ลองทำดูนะคะ   

                                                          บะบายคะ
                                                         ขอบคุณคะ
                                                            กัลยา
   
หัวข้อ: Re: GetDateRangeDialog
เริ่มหัวข้อโดย: Bond_007 ที่ พฤษภาคม 16, 2013, 16:55:13 PM
แจ่มแจ้งเลยครับ  ;D

สวัสดีคะ

         
           ขออธิบายแบบบ้านๆ นะคะ อย่าถือสานะคะ

           ฟังก์ชั่น   GetDateRangeDialog เป็นฟังก์ชั่นในการสร้างตัวเลือกวันที่ให้กับรายงานคะ  เวลาที่เราต้องการดูผลลัพธ์ของรายงาน มักจะมีเรื่องของช่วงวันที่ที่เราต้องการดูข้อมูลคะ  เพราะถ้าเราไม่ระบุ จะหมายถึงเราต้องการดูข้อมูลทั้งหมดที่เรามีในฐานข้อมูลคะ

           การสร้างตัวเลือกวันที่ให้กับรายงาน เราจะเรียกใช้ ฟังก์ชั่น GetDateRangeDialog  คะ
1. โดยการเรียกฟังก์ชั่นนี้จะได้    GetDateRangeDialog(date1, date2);  ซึ่ง date1 และ date2 คือตัวแปรที่จะเก็บค่าวันที่ตอนที่เราเลือกช่วงวันที่คะ
2. date 1 และ date 2  มีประเภทเป็น datetime;  ซึ่งผลที่ได้มันจะแสดงเป็นวันเดือนปีคะ
3. เราต้องนำตัวแปร date1 และ date2 มาเปลี่ยนรูปแบบ  ให้เป็น ปี เดือน วัน แทน  เพื่อใช้เป็นเงื่อนไขในคำสั่ง SQL ได้
4. ใช้ฟังก์ชั่น  FormatDateTime('YYYY-MM-DD', date1);
                      FormatDateTime('YYYY-MM-DD', date2);
     หมายถึงเปลี่ยนรูปแบบวันที่ทั้ง 2 ช่วงคะ  แต่เปลี่ยนรูปแบบต้องนำไปเก็บไว้ในตัวแปรใด ตัวแปรหนึ่งด้วย

                     ds1:=FormatDateTime('YYYY-MM-DD', date1);
                     ds2:=FormatDateTime('YYYY-MM-DD', date2);

5.  กำหนดเงื่อนไขในคำสั่ง SQL เช่น where vstdate between "'+ds1+'" and "'+ds2+'" 

             ออๆๆ อย่าลืมไปประกาศตัวแปรที่ Declarations  > Variable  นะคะ

                date1,date2 :datetime;
                ds1, ds2       : string;

                              ไม่ยากใช่มั้ยคะ   ลองทำดูนะคะ  

                                                          บะบายคะ
                                                         ขอบคุณคะ
                                                            กัลยา