BMS-HOSxP Community
HOSxP => การเขียน SQL Script => ข้อความที่เริ่มโดย: Knott ที่ มกราคม 16, 2009, 15:08:39 PM
-
ผมกำลังจะทำรายงานแต่อยากได้วิธีการเขียนสคลิ๊ป ที่สามารถให้ผู้ทำงานงานเลือกช่วงรายงาน เป็น เดือนและปี โดยไม่ต้องเลือกวัน จะสามารถทำได้มั้ยครับ อยากขอดูตัวอย่างหน่อยครับ
-
ผมกำลังจะทำรายงานแต่อยากได้วิธีการเขียนสคลิ๊ป ที่สามารถให้ผู้ทำงานงานเลือกช่วงรายงาน เป็น เดือนและปี โดยไม่ต้องเลือกวัน จะสามารถทำได้มั้ยครับ อยากขอดูตัวอย่างหน่อยครับ
ผมว่าถ้าเขียนให้เลือกเดือนอย่างเดียวปีต่อไปรายงานตัวนี้อาจจะนะครับ(อาจจะใช้ประโยชน์ไม่ได้ในปีต่อไป)แต่ถ้าเราเขียนให้เลือกปีแล้วเปรียบเทียบแต่ละเดือนน่าจะเป็นประโยชน์ในปีต่อๆไปและย้อนหลังด้วย ยังไงรอ อ.อ็อด อ.MN อ.นาจ อ.วุธ อ.ขวด comment อีกทีครับ ;D ;D
ร่ายยาวแต่จะบอกว่าตัวเองเขียนได้เฉพาะเลือกปีครับ :'( :'( อยากเขียนเลือกได้ทั้งเดือน ทั้งปี ได้เหมือนกันรบกวนท่าน อ.ทั้งหลาย แนะนำด้วยครับ :o :o
อันนี้คือตัวอย่างแบบมั่วๆ ของผมครับ :D :D
begin
d1 :=GetSQLDateData('select min(refer_date) from referout');
d2 :=GetSQLDateData('select max(refer_date) from referout');
ds1 := formatdatetime('yyyy-mm-dd',d1);
ds2 := formatdatetime('yyyy-mm-dd',d2);
fyear := GetPickupList('select distinct(year(refer_date)) + 543 as cc ,refer_date from referout'+
' where refer_date between "'+ds1+'" and "'+ds2+'"'+
' group by cc'+
' order by cc' );
year := fyear;
fyear := inttostr(strtoint(fyear) - 543) ;
fyear := inttostr(strtoint(fyear) - 1) ;
fyear := inttostr(strtoint(fyear) + 1) ;
m1 := fyear+'-01-01" and "'+ fyear+'-01-31';
m2 := GetSQLStringData('select Date_Add("'+ fyear+'-01-31",interval 1 month) as d');
m2 := fyear+'-02-01" and "'+ m2 ;
m3 := fyear+'-03-01" and "'+ fyear+'-03-31';
m4 := fyear+'-04-01" and "'+ fyear+'-04-30';
m5 := fyear+'-05-01" and "'+ fyear+'-05-31';
m6 := fyear+'-06-01" and "'+ fyear+'-06-30';
m7 := fyear+'-07-01" and "'+ fyear+'-07-31';
m8 := fyear+'-08-01" and "'+ fyear+'-08-31';
m9 := fyear+'-09-01" and "'+ fyear+'-09-30';
m10 := fyear+'-10-01" and "'+ fyear+'-10-31';
m11 := fyear+'-11-01" and "'+ fyear+'-11-30';
m12 := fyear+'-12-01" and "'+ fyear+'-12-31';
-
ขอบคุณคุณ golf_win ครับ ขอลองมั่วต่อจากคุณ golf_win ละกัน รอจนกว่าจะมี อ.ท่านอื่นๆ มาตอบต่อ ;D ;D
-
:D ;D นี่ขนาดมั่วนะเนี่ย :D :D ;D :D
-
:D ;D นี่ขนาดมั่วนะเนี่ย :D :D ;D :D
;D ;D ;D ;D ;D