ผู้เขียน หัวข้อ: สอบถามการเขียน vn_pre_script  (อ่าน 2868 ครั้ง)

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

ออฟไลน์ Bond_007

  • Hero Member
  • *****
  • กระทู้: 1,533
  • เมื่อก่อนเคยรักมากเท่าไหร่มันยังคงรักมากเท่านั้น
  • Respect: +2
    • ดูรายละเอียด
สอบถามการเขียน vn_pre_script
« เมื่อ: กรกฎาคม 31, 2013, 11:50:29 AM »
0
ได้ลองหัดเขียนครับ  แต่ปัญหาคือ ส่วนที่ผมเพิ่มใหม่ไม่ออกครับ ต้องไปแก้ที่ตรงไหนครับ
var
  fvn,fcomputername,fdepartment,fhn, scrcl, sgfr, sLastCrDate,fvn1,fcomputername1,fdepartment1,fhn1 : string;
  crcl, gfr, bw, LastCr, age_y, sex, a, factor : double;
  LastCrDate : date;
  cc:integer;

    total:integer;
begin

  fvn:= GetGlobalValue('VN');
  fdepartment := GetGlobalValue('CURRENT_DEPCODE');
  fhn:=getsqldata('select hn from ovst where vn = "'+fvn+'"');


  if getsqldata('select depcode from kskdepartment where depcode in ("001","002","003","004","005","006","007","008","103","022","014","112") and depcode="'+fdepartment+'"')=''+fdepartment+'' then

      bw:=getsqldata('select bw from opdscreen where hn="'+fhn+'" order by vn desc limit 1');

      LastCr:=getsqldata('select lo.lab_order_result from lab_head lh, lab_order lo '+
      ' where lh.lab_order_number=lo.lab_order_number and lo.lab_items_code="155" and lh.hn="'+fhn+'" '+
      ' order by lh.order_date desc, lh.order_time desc limit 1');

      LastCrDate:=getsqldata('select lh.order_date from lab_head lh, lab_order lo '+
      ' where lh.lab_order_number=lo.lab_order_number and lo.lab_items_code="155" and lh.hn="'+fhn+'" '+
      ' order by lh.order_date desc, lh.order_time desc limit 1');

      age_y:=getsqldata('select age_y from vn_stat where vn="'+fvn+'"');

      //factor:=getsqldata('select if(sex=1,1,0.85) as factor from patient where hn="'+fhn+'"');

      factor:=getsqldata('select if(sex=1,1,0.742) as factor from patient where hn="'+fhn+'"');

      //crcl:=(140-age_y)*bw*factor/(72*LastCr);

      gfr:=186*exp(-1.154*ln(LastCr))*exp(-0.203*ln(age_y))*factor;

      ///scrcl:=FormatFloat('#.##', crcl);

      sgfr:=FormatFloat('#.##', gfr);

      sLastCrDate:=FormatDatetime('d/mm/yyyy',LastCrDate);

       if getsqldata('select count(lo.lab_order_result) as cc from lab_head lh, lab_order lo '+
      ' where lh.lab_order_number=lo.lab_order_number and lo.lab_items_code="155" and lh.hn="'+fhn+'"')>0 then

       begin
       if gfr>=90 then
    showmessage('GFR ÅèÒÊØ´ (àÁ×èÍ '+sLastCrDate+') ¢Í¤¹ä¢éÃÒ¹Õé = '+FloatToStr(sgfr)+' (ÃÐÂзÕè 1 äµ»¡µÔ)')
       else if gfr>=60 then
    showmessage('GFR ÅèÒÊØ´ (àÁ×èÍ '+sLastCrDate+') ¢Í¤¹ä¢éÃÒ¹Õé = '+FloatToStr(sgfr)+' (ÃÐÂзÕè 2 äµ¼Ô´»¡µÔ GFR Å´ÅàÅ硹éÍÂ)')
       else if gfr>=30 then
    showmessage('GFR ÅèÒÊØ´ (àÁ×èÍ '+sLastCrDate+') ¢Í¤¹ä¢éÃÒ¹Õé = '+FloatToStr(sgfr)+' (ÃÐÂзÕè 3 äµ¼Ô´»¡µÔ GFR ŴŻҹ¡ÅÒ)')
       else if gfr>=15 then
    showmessage('GFR ÅèÒÊØ´ (àÁ×èÍ '+sLastCrDate+') ¢Í¤¹ä¢éÃÒ¹Õé = '+FloatToStr(sgfr)+' (ÃÐÂзÕè 4 äµ¼Ô´»¡µÔÁÒ¡ GFR Å´ÅÁÒ¡)')
       else if gfr<15 then
    showmessage('GFR ÅèÒÊØ´ (àÁ×èÍ '+sLastCrDate+') ¢Í¤¹ä¢éÃÒ¹Õé = '+FloatToStr(sgfr)+' (ÃÐÂзÕè 5 äµÇÒÂÃÐÂÐÊØ´·éÒ GFR Å´ÅÁÒ¡·ÕèÊØ´)');
       end;
  end;





//total : double;

//////////////////////////////////////////////////////////////ส่วนที่เขียนใหม่ครับ

 begin
     fvn1:= GetGlobalValue('VN');
  fdepartment1 := GetGlobalValue('CURRENT_DEPCODE');
  total := getsqldata('select sum(sum_price)as cc from opitemrece where pttype = "28" and vn = "'+fvn1+'" ');


     if  total > 250 then
       showmessage('¤èÒÂÒà¡Ô¹ 250');
   end;
        end;


end;

     end.


โรงพยาบาลศิริเวชลำพูน
Hosxp version 3.53.7.16
ขอขบคุณ อาจารย์ชัยพร,อ.อ็อด,อ.เกื้อ,พี่เอก,พี่กิติศักดิ์,พี่เข้ม,พี่ไสว,พี่ terminator 2010,พี่pikepid,พี่udomchock ,พี่ขวด,พี่เจมส์,ป๋าJdadmin,พี่กานดา admin ทุกๆท่าน และนางฟ้า BMS

ทำเพื่อใครสักคนฉันได้ทำเพื่อความรัก
ร้องให้สักคนฉันก็ร้องจากหัวใจ
รักที่มันต้องจบมันก็ยังงดงาม ฉันยังจำไว้

Nologo How to be hosxp star

ออฟไลน์ usa0823

  • Hero Member
  • *****
  • กระทู้: 773
  • Respect: +9
    • ดูรายละเอียด
Re: สอบถามการเขียน vn_pre_script
« ตอบกลับ #1 เมื่อ: กรกฎาคม 31, 2013, 15:16:29 PM »
0
//begin
     fvn1:= GetGlobalValue('VN');
  fdepartment1 := GetGlobalValue('CURRENT_DEPCODE');
  total := getsqldata('select sum(sum_price)as cc from opitemrece where pttype = "28" and vn = "'+fvn1+'" ');


     if  total > 250 then
       showmessage('¤èÒÂÒà¡Ô¹ 250');
  // end;
   //     end;


end;
***************************************
นายศรัญญู  ชูเมือง
จพ.เภสัชกรรมชำนาญงาน
ดูแลระบบ โรงพยาบาลลานสกา
E-mail  Sarunyu0823@hotmail.com
..............................................................................
** HOSxP ver. 3.56.11.19d
** MySQL 5.6.17
** Activated 2560