ผู้เขียน หัวข้อ: ขอคำสั่งแปลผลค่า BMI ใน OPD card  (อ่าน 8516 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ navyNP

  • Hero Member
  • *****
  • กระทู้: 933
  • Respect: +3
    • ดูรายละเอียด
ขอคำสั่งแปลผลค่า BMI ใน OPD card
« เมื่อ: มกราคม 09, 2010, 19:21:41 PM »
0
คือผมต้องการเพิ่มค่าการแปลผล BMI ใน OPD card โดยเอา field BMI ไปแปลผลเป็น
ถ้า bmi น้อยกว่า 18.5 ให้แสดงผลเป็น "ผอม"
ถ้า bmi มากกว่า 18.5 แต่น้อยกว่า 23.0 ให้แสดงผลเป็น "ปกติ"
ถ้า bmi มากกว่า 23.0 แต่น้อยกว่า 25.0 ให้แสดงผลเป็น "น้ำหนักเกิน"
ถ้า bmi มากกว่า 25.0 แต่น้อยกว่า 30.0 ให้แสดงผลเป็น "อ้วนระดับที่ 1"
ถ้า bmi มากกว่า 30.0 ให้แสดงผลเป็น "อ้วนระดับที่ 2"
โดยผมลองเอา fieid BMI ในตาราง opdscreen ไปสร้างคำสั่งใน OnGetText เป็น
begin
  If  DBPipeline['bmi'] <'18.5'  then
   Text := 'ผอม'
 else
   Text := '';
end;

ได้แค่ค่าเดียว แล้วค่าที่เหลือจะต้องทำอย่างไรครับถึงจะแสดงค่าครบ ขอคำแนะนำด้วยครับ ;D
เคยเป็น Admin รพ.อาภากรเกียรติวงศ์ สัตหีบ ชลบุรี(250 เตียง)
Implement by อ.MN & อ.suchai  ขึ้นระบบ 29 ก.ค.48
Server : RH Enterprise Linux AS release 3(taroon)
Client : winXP , Slave : winXP , MySQL 4.1
LIS : CST
version ปัจจุบัน 3.54.1.22

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,138
  • Respect: +40
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #1 เมื่อ: มกราคม 09, 2010, 21:46:32 PM »
0
ลองแบบนี้ดูครับ

begin
  If  DBPipeline['bmi'] <'18.5'  then
   Text := 'ผอม';
  If DBPipeline['bmi'] >'18.5'  then
   Text := 'ปกติ';
  If DBPipeline['bmi'] >'23.0'  then
   Text := 'น้ำหนักเกิน';
  If DBPipeline['bmi'] >'25.0'  then
   Text := 'อ้วนระดับที่ 1';
  If DBPipeline['bmi'] >'30.0'  then
   Text := 'อ้วนระดับที่ 2'
 else
   Text := '';
end;

pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด https://pnphos.moph.go.th/hosweb/

ออฟไลน์ navyNP

  • Hero Member
  • *****
  • กระทู้: 933
  • Respect: +3
    • ดูรายละเอียด
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #2 เมื่อ: มกราคม 10, 2010, 08:54:12 AM »
0
ขอบคุณครับ แต่ผมว่ามันไม่น่าจะได้หรือเปล่าครับ
สมมุติว่าค่า BMI = 25.5 มันจะแปลผลเป็นอะไรครับ "ปกติ" , "น้ำหนักเกิน" หรือ "อ้วน" ครับ เพราะมันใช่ทุกค่าคือ >18.5, >23.0 และ >23.0(พอดียังไม่ได้ลองดูจริงๆ เพราะไม่ได้อยู่ รพ.ฯ ครับ เดี๋ยวไว้ไปลองกับเครื่องที่บ้านครับ ;D)
เคยเป็น Admin รพ.อาภากรเกียรติวงศ์ สัตหีบ ชลบุรี(250 เตียง)
Implement by อ.MN & อ.suchai  ขึ้นระบบ 29 ก.ค.48
Server : RH Enterprise Linux AS release 3(taroon)
Client : winXP , Slave : winXP , MySQL 4.1
LIS : CST
version ปัจจุบัน 3.54.1.22

doramon

  • บุคคลทั่วไป

doramon

  • บุคคลทั่วไป
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #4 เมื่อ: มกราคม 10, 2010, 09:15:53 AM »
0
คือผมต้องการเพิ่มค่าการแปลผล BMI ใน OPD card โดยเอา field BMI ไปแปลผลเป็น
ถ้า bmi น้อยกว่า 18.5 ให้แสดงผลเป็น "ผอม"
ถ้า bmi มากกว่า 18.5 แต่น้อยกว่า 23.0 ให้แสดงผลเป็น "ปกติ"
ถ้า bmi มากกว่า 23.0 แต่น้อยกว่า 25.0 ให้แสดงผลเป็น "น้ำหนักเกิน"
ถ้า bmi มากกว่า 25.0 แต่น้อยกว่า 30.0 ให้แสดงผลเป็น "อ้วนระดับที่ 1"
ถ้า bmi มากกว่า 30.0 ให้แสดงผลเป็น "อ้วนระดับที่ 2"
โดยผมลองเอา fieid BMI ในตาราง opdscreen ไปสร้างคำสั่งใน OnGetText เป็น
begin
  If  DBPipeline['bmi'] <'18.5'  then
   Text := 'ผอม'
 else
   Text := '';
end;

ได้แค่ค่าเดียว แล้วค่าที่เหลือจะต้องทำอย่างไรครับถึงจะแสดงค่าครบ ขอคำแนะนำด้วยครับ ;D


เงื่อนไข if ซ้อน if แบบต่อเนื่อง

        ใน บางครั้งเราต้องตรวจสอบเงื่อนไขไปเรื่อยๆ ทีละเงื่อนไขว่าจริงหรือไม่ ก็จะเป็นการใช้งานแบบ if ซ้อน if ไปเรื่อยๆ กี่ชั้นก็ได้ ซึ่งมีรูปแบบ ดังนี้

        รูปแบบ

        if เงื่อนไข then

           ทางเลื่อกที่ 1 เมื่อเงื่อนไขเป็นจริง

        else

           if เงื่อนไข then

              ทางเลื่อกที่ 2 เมื่อเงื่อนไขเป็นจริง

           else

              if เงื่อนไข then

                 ทางเลื่อกที่ 3 เมื่อเงื่อนไขเป็นจริง

              else

                 if เงื่อนไข then

                    ทางเลื่อกที่ 4 เมื่อเงื่อนไขเป็นจริง


แบบนี้สอนให้ก่อนแล้วกัน  ทดสอบเอามาใส่ดูครับ


ออฟไลน์ navyNP

  • Hero Member
  • *****
  • กระทู้: 933
  • Respect: +3
    • ดูรายละเอียด
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #5 เมื่อ: มกราคม 10, 2010, 09:29:18 AM »
0
ได้แล้วครับ ตามที่ อ.pop_hosxp แนะนำ ขอบคุณ อ.ทั้งสองมากครับ แล้วถ้าต้องการให้ font เปลี่ยนสีได้เมื่อผิดปกติล่ะครับ มันจะทำได้เหมือน Excel ไหมครับ(อันนี้ถามประดับความรู้เฉยๆ ครับ ;D เผื่อจะได้เอาไปปรับใช้งานกับฟอร์มอื่นๆ ครับ ตอนนี้กำลังเตรียมจะทำระบบตรวจสุขภาพประจำปีข้าราชการกองทัพเรืออยู่ ในเวลาอันใกล้นี้คงจะได้ไปเยี่ยม อ.MN สักครา ;D)
« แก้ไขครั้งสุดท้าย: มกราคม 10, 2010, 09:53:14 AM โดย navyNP »
เคยเป็น Admin รพ.อาภากรเกียรติวงศ์ สัตหีบ ชลบุรี(250 เตียง)
Implement by อ.MN & อ.suchai  ขึ้นระบบ 29 ก.ค.48
Server : RH Enterprise Linux AS release 3(taroon)
Client : winXP , Slave : winXP , MySQL 4.1
LIS : CST
version ปัจจุบัน 3.54.1.22

doramon

  • บุคคลทั่วไป
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #6 เมื่อ: มกราคม 10, 2010, 10:01:40 AM »
0
ได้แล้วครับ ตามที่ อ.pop_hosxp แนะนำ ขอบคุณ อ.ทั้งสองมากครับ แล้วถ้าต้องการให้ font เปลี่ยนสีได้เมื่อผิดปกติล่ะครับ มันจะทำได้เหมือน Excel ไหมครับ(อันนี้ถามประดับความรู้เฉยๆ ครับ ;D เผื่อจะได้เอาไปปรับใช้งานกับฟอร์มอื่นๆ ครับ ตอนนี้กำลังเตรียมจะทำระบบตรวจสุขภาพประจำปีข้าราชการกองทัพเรืออยู่ ในเวลาอันใกล้นี้คงจะได้ไปเยี่ยม อ.MN สักครา ;D)

ได้ครับ

แต่ต้องอ้างอิง สี ด้วยครับ 


เดียวจะหาตัวอย่างมาให้  พี่ส่งฟอร์มขึ้นมาแล้วกัน

 ;D

ออฟไลน์ navyNP

  • Hero Member
  • *****
  • กระทู้: 933
  • Respect: +3
    • ดูรายละเอียด
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #7 เมื่อ: มกราคม 10, 2010, 10:09:47 AM »
0
ขอบคุณล่วงหน้าครับ อ.อ๊อด ;D
เคยเป็น Admin รพ.อาภากรเกียรติวงศ์ สัตหีบ ชลบุรี(250 เตียง)
Implement by อ.MN & อ.suchai  ขึ้นระบบ 29 ก.ค.48
Server : RH Enterprise Linux AS release 3(taroon)
Client : winXP , Slave : winXP , MySQL 4.1
LIS : CST
version ปัจจุบัน 3.54.1.22

ออฟไลน์ pop_hosxp

  • Hero Member
  • *****
  • กระทู้: 3,138
  • Respect: +40
    • ดูรายละเอียด
    • Phanomphrai Hospital
Re: ขอคำสั่งแปลผลค่า BMI ใน OPD card
« ตอบกลับ #8 เมื่อ: มกราคม 10, 2010, 16:39:46 PM »
0
ได้แล้วครับ ตามที่ อ.pop_hosxp แนะนำ ขอบคุณ อ.ทั้งสองมากครับ แล้วถ้าต้องการให้ font เปลี่ยนสีได้เมื่อผิดปกติล่ะครับ มันจะทำได้เหมือน Excel ไหมครับ(อันนี้ถามประดับความรู้เฉยๆ ครับ ;D เผื่อจะได้เอาไปปรับใช้งานกับฟอร์มอื่นๆ ครับ ตอนนี้กำลังเตรียมจะทำระบบตรวจสุขภาพประจำปีข้าราชการกองทัพเรืออยู่ ในเวลาอันใกล้นี้คงจะได้ไปเยี่ยม อ.MN สักครา ;D)

ผมได้ลองทดสอบแล้วครับว่าถูกต้องหรือเปล่า เพราะทีแรกก็ไม่แน่ใจเหมือนกันว่าจะถูกหรือเปล่า สุดท้ายก็ได้อย่างที่เห็น นั่งงมอยู่นานเหมือนกันเพราะเจ้า semicolon ตัวเดียว

ปล.กด accept หรือ thank เบา ๆ ก็ได้ครับ ;D ;D
pop434241@gmail.com
รพ.พนมไพร จ.ร้อยเอ็ด https://pnphos.moph.go.th/hosweb/