BMS-HOSxP Community

HOSxP => Report Exchange => ข้อความที่เริ่มโดย: panus_t ที่ ตุลาคม 12, 2010, 15:36:50 PM

หัวข้อ: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: panus_t ที่ ตุลาคม 12, 2010, 15:36:50 PM
แก้ไขรายงานให้ด้วยครับ
อยากรู้จังว่าทำไม มัน error   ???

select * from vn_stat       where vstdate between "2009-10-01" and "2010-09-30" and pdx in ('J441','J449') and ((op0="9394")  or  (op1="9394")  or (op2="9394")  or (op3="9394")  or (op4="9394")  or (op5="9394"))  group by hn

จาก คำสั่งด้านบน จะได้จำนวนผู้ป่วย

select sum(income) from vn_stat       where vstdate between "2009-10-01" and "2010-09-30" and pdx in ('J441','J449') and ((op0="9394")  or  (op1="9394")  or (op2="9394")  or (op3="9394")  or (op4="9394")  or (op5="9394"))  group by hn

จาก คำสั่งด้านบน จะได้ค่าใช่จ่ายรวม

ถ้าต้องการเขียน Variable ให้ ค่าใช้จ่ายรวม หาร จำนวนผู้ป่วยต้องทำไงครับ

 ;D
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: Khuad ที่ ตุลาคม 12, 2010, 17:18:53 PM

.. อันดับแรกนะครับ ...  :D ...

    คำสั่งจำนวนผู้ป่วยต้องเป็น
   
    select count(distinct hn) as cc from vn_stat
    where vstdate between "2009-10-01" and "2010-09-30"
    and pdx in ('J441','J449') and ((op0="9394")  or  (op1="9394")
    or (op2="9394")  or (op3="9394")  or (op4="9394")  or (op5="9394"))

   
    ค่าใช้จ่ายรวมต้องเป็น

    select sum(income) as cc from vn_stat
    where vstdate between "2009-10-01" and "2010-09-30"
    and pdx in ('J441','J449') and ((op0="9394")  or  (op1="9394")
    or (op2="9394")  or (op3="9394")  or (op4="9394")  or (op5="9394"))
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: Khuad ที่ ตุลาคม 12, 2010, 17:20:21 PM

... ค่าใช้จ่ายรวม หาร จำนวนผู้ป่วย ก็จะเป็น

    select sum(income)/count(distinct hn) as cc from vn_stat
    where vstdate between "2009-10-01" and "2010-09-30"
    and pdx in ('J441','J449') and ((op0="9394")  or  (op1="9394")
    or (op2="9394")  or (op3="9394")  or (op4="9394")  or (op5="9394"))


...  :D ...
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: Khuad ที่ ตุลาคม 12, 2010, 17:28:32 PM
... ที่นี้ถ้าจะใช้ variable ในรายงาน
 
     ก็ให้เอาคำสั่งแสดง จำนวนค่าใช้จ่ายรวม กับ จำนวนผู้ป่วย ไปแยกวางใน variable แต่ละตัวได้เลยครับ
 
     โดยใช้ฟังค์ชั่น GetSQLIntegerData เพื่อให้ข้อมูลเป็น integer

     สมมุติว่า จำนวนค่าใช้จ่ายรวม เป็น variable1
     ส่วน จำนวนผู้ป่วย เป็น variable2


     ที่นี้ถ้าเราต้องการทราบจำนวน ค่าใช้จ่ายรวม หารด้วย จำนวนผู้ป่วย  ก็สร้าง variable ขึ้นมาอีกตัว(ให้สร้างขึ้นมาหลังจากสร้าง variable1 และ variable2 แล้วนะครับ) 
    โดยมีคำสั่งเป็น

     Value := variable1.value/variable2.value;

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

...  :D ...
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: Khuad ที่ ตุลาคม 12, 2010, 17:45:36 PM

... เกือบลืมไปครับ

    ผมลอง download  รายงานที่แนบมาดูแล้ว
   
    ท่าน panus_t คงต้องตรวจสอบดูเรื่องการเว้นช่องไฟ ตรงรอยต่อในแต่ละบรรทัดของคำสั่งที่อยู่ในรายงานด้วยนะครับ
    แถวๆ ข้างหน้า  '+ ที่อยู่ตรงท้ายๆ บรรทัด 
    หรือหลัง '   ที่ต้นบรรทัด ตรงให้มีช่องไฟเหลืออยู่ด้วย ตรงไหนก็ได้ใน 2 จุดที่บอก(หรือเว้นทั้ง 2 จุดเลยก็ได้)

    ไม่งั้นคำสั่งมันจะไม่ถูกต้องครับ ตัวอย่างประมาณในรูปที่แนบครับ..  :D ...
   
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: nahos ที่ ตุลาคม 12, 2010, 17:52:32 PM
แก้เรียบร้อยแล้ว เอามาแจกด้วยนะครับ

 :D :D
หัวข้อ: Re: แก้ไขรายงานให้ด้วยครับ
เริ่มหัวข้อโดย: panus_t ที่ ตุลาคม 13, 2010, 15:46:06 PM
ขอบคุณครับ  เสร็จแล้วจะนำมาแจกอีกทีครับ... ;)