BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: narongsuk ที่ กุมภาพันธ์ 14, 2013, 10:32:48 AM

หัวข้อ: โค้ดผิดตรงไหนอ่ะคับ
เริ่มหัวข้อโดย: narongsuk ที่ กุมภาพันธ์ 14, 2013, 10:32:48 AM
รบกวนด้วยคับ

procedure GlobalOnCreate;
begin
  GetDateRangeDialog(date1, date2);
  bdate := FormatDateTime('yyyy-mm-dd', date1);
  edate := FormatDateTime('yyyy-mm-dd', date2);

  ChangeReportSQL('select concat(p.pname,p.fname,"   ",p.lname)as pt_name,p.cid,d.strength,o.qty,'+
     'o.unitprice,o.sum_price,o.rxdate,v.*,d.name as dr_name'+
     'from vn_stat v '+
     'left join patient p on p.hn=v.hn'+
     'left join opitemrece o on o.vn=v.vn'+
     'left join drugitems d on d.icode=o.icode'+
     'where v.vstdate between "'+bdate+'" and "'+edate+'" and d.name like "%morphin%"');

end;
หัวข้อ: Re: โค้ดผิดตรงไหนอ่ะคับ
เริ่มหัวข้อโดย: udomchok ที่ กุมภาพันธ์ 14, 2013, 10:47:05 AM
รบกวนด้วยคับ

procedure GlobalOnCreate;
begin
  GetDateRangeDialog(date1, date2);
  bdate := FormatDateTime('yyyy-mm-dd', date1);
  edate := FormatDateTime('yyyy-mm-dd', date2);

  ChangeReportSQL('select concat(p.pname,p.fname,"   ",p.lname)as pt_name,p.cid,d.strength,o.qty,'+
     'o.unitprice,o.sum_price,o.rxdate,v.*,d.name as dr_name'+
     'from vn_stat v '+
     'left join patient p on p.hn=v.hn'+
     'left join opitemrece o on o.vn=v.vn'+
     'left join drugitems d on d.icode=o.icode'+
     'where v.vstdate between "'+bdate+'" and "'+edate+'" and d.name like "%morphin%"');

end;
ลองเว้นวรรคหน้า as สักนิดนะครับ และตรวจสอบตอนปิดท้ายบรรทัด แนะนำว่าควรเว้นวรรคก่อน แล้วค่อยใส่ '+
แนะนำเพิ่มเติม ไม่จำเป็นต้องใช้ vn_stat ก็ได้ครับ เพราะเราสามารถใช้ vstdate หรือ rxdate จาก opitemrece ได้
หัวข้อ: Re: โค้ดผิดตรงไหนอ่ะคับ
เริ่มหัวข้อโดย: narongsuk ที่ กุมภาพันธ์ 14, 2013, 13:25:06 PM
รับทราบคับ เดียวลองแก้ดูคับ