BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: panus_t ที่ มิถุนายน 25, 2014, 10:31:26 AM

หัวข้อ: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: panus_t ที่ มิถุนายน 25, 2014, 10:31:26 AM
ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);

แต่มีปัญหาว่าถ้าพิมพ์รายงานดังกล่าว แล้ววันจำหน่ายคนไข้ เป็นค่าว่าง มันจะแสดงวันจำหน่ายเป็น 30 ธันวาคม 2542 จะแก้ไขอย่างไรครับ    ;D
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: pop_hosxp ที่ มิถุนายน 25, 2014, 11:03:44 AM
ลองแบบนี้ครับ

โค๊ด: Delphi
  1. If [date2]=''
  2. then Value:=''
  3. else
  4. Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: panus_t ที่ มิถุนายน 25, 2014, 11:40:55 AM
ลองแบบนี้ครับ

โค๊ด: Delphi
  1. If [date2]=''
  2. then Value:=''
  3. else
  4. Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);
ขอบคุณครับ
ตอนแรกทำแบบนี้ครับ
 if DBPipeline['date2']="" then
    begin
      Value := 'ยังไม่จำหน่ายออก';
    end
 else
    begin
      Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);
    end;
แต่ไม่ Work ไม่ทราบว่ามันผิดตรงไหนครับ  ;D
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: panus_t ที่ มิถุนายน 25, 2014, 11:58:05 AM
Error ครับ
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: Terminator2015 ที่ มิถุนายน 25, 2014, 11:58:14 AM
 ;) ระบบแสดงรูปแบบวันที่ครับ จึงแสดงเป็นข้อความไม่ได้ครับ ปรับเป็นค่าว่าง ตาม อ.ป๊อบ ดีกว่าครับ
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: panus_t ที่ มิถุนายน 25, 2014, 12:01:52 PM
;) ระบบแสดงรูปแบบวันที่ครับ จึงแสดงเป็นข้อความไม่ได้ครับ ปรับเป็นค่าว่าง ตาม อ.ป๊อบ ดีกว่าครับ

"ยังไม่จำหน่ายออก" คำนี้แสดงออกในรายงานอยู่ครับ
แต่ Error ที่ Post เป็น Error จากคำสังของคุณ pop_hosxp ครับ
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: panus_t ที่ มิถุนายน 25, 2014, 12:10:35 PM
ถ้าใช้คำสั่ง
 if DBPipeline['date2'] is null then
    begin
      Value := '';
    end
 else
    begin
      Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);
    end;

จะเข้าเงื่อนไขที่ 2 ครับ
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: udomchok ที่ มิถุนายน 30, 2014, 12:14:46 PM

ตอนแรกทำแบบนี้ครับ
 if DBPipeline['date2']="" then
    begin
      Value := 'ยังไม่จำหน่ายออก';
    end
 else
    begin
      Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);
    end;
แต่ไม่ Work ไม่ทราบว่ามันผิดตรงไหนครับ  ;D


ใช้ "" ไม่ได้ครับ ต้องเป็น '' (single quote 2 ตัว ติดกัน)

===============================================
แนะนำว่าไม่ต้องใช้ begin/end กรณีมี 1 expression ครับ
เช่น
if DBPipeline['date2']='' then
   Value := 'ยังไม่จำหน่ายออก'
 else
   Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);

แค่นี้พอ สังเกต นิพจน์ (expression) หลัง then จะไม่มี ; ปิดท้ายบรรทัดนะครับ
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: udomchok ที่ มิถุนายน 30, 2014, 14:59:35 PM
ลองศึกษาจากตัวอย่างนี้ครับ
CUSTOM-TestDateFormat_UDC
หัวข้อ: Re: ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
เริ่มหัวข้อโดย: khaimok ที่ กรกฎาคม 09, 2014, 09:50:17 AM
ผมทำวันจำหน่ายผู้ป่วยในเป็น Variable เพื่อให้แสดงวันจำหน่ายเป็นปี พ.ศ. ดังนี้
Value := FormatThaiDate('d mmmm yyyy',DBPipeline['date2']);

แต่มีปัญหาว่าถ้าพิมพ์รายงานดังกล่าว แล้ววันจำหน่ายคนไข้ เป็นค่าว่าง มันจะแสดงวันจำหน่ายเป็น 30 ธันวาคม 2542 จะแก้ไขอย่างไรครับ    ;D
ลอง แบบนี้ดูครับ
Value := FormatThaiDate('d mmmm',DBPipeline['date2'])+' '+FormatThaiDate('yyyy',DBPipeline['date2']);