วันเสาร์ที่ 4 พฤศจิกายน พ.ศ. 2560

Query คำนวนราคาขาย(ยา) ในโปรแกรม JHCIS

Query คำนวนราคาขาย(ยา) ในโปรแกรม JHCIS
ปรับราคาขายยาให้ถูกต้อง แค่ใช้ query นี้
   UPDATE
cdrug
inner JOIN
(SELECT # สุดท้ายเอาทศนิยมมาบวกกับราคาจำนวนเต็มตามราคาทุน
tmp3.drugcode,
tmp3.drugname,
tmp3.cost,
tmp3.sell,
tmp3.drugcost,
case when tmp3.cost <10 then tmp3.sumcost+tmp3.point10
     when tmp3.cost between 10.01 and 100 then tmp3.sumcost+tmp3.point100 else tmp3.sumcost+tmp3.point1000 end as resultsell
FROM
(SELECT #select ที่ 3 ให้เป้น tmp3 เพื่อจัดการกับทศนิยม
tmp2.drugcode,
tmp2.drugname,
tmp2.cost,
tmp2.sell,
tmp2.drugcost,
tmp2.sumcost,
tmp2.pointcost,
case when tmp2.pointcost < 0.12 then 0
   when tmp2.pointcost between 0.13 and 0.37 then 0.25
   when tmp2.pointcost between 0.14 and 0.62 then 0.5
   when tmp2.pointcost between 0.63 and 0.87 then 0.75 else 1 end as point10,
case when tmp2.pointcost < 0.25 then 0
   when tmp2.pointcost between 0.26 and 0.75 then 0.5 else 1 end as point100,
case when tmp2.pointcost < 0.5 then 0 else 1 end as point1000
from
(SELECT #select ที่สอง เพื่อให้หาจุดทศนิยาไปคำนวน ให้เป็น tmp2
tmp.*,
floor(tmp.drugcost) as sumcost,
tmp.drugcost-floor(tmp.drugcost) as pointcost
from
(SELECT #Select ที่ 1 เพื่อให้เป็น tmp1
cdrug.drugcode,
cdrug.drugname,
cdrug.cost,
cdrug.sell,
CASE when cdrug.cost between 0 and 0.2 then 0.5
   when cdrug.cost between 0.21 and 0.5 then 1.0
   when cdrug.cost between 0.51 and 1.0 then 1.5
   when cdrug.cost between 1.01 and 10.00 then 1.5+((cdrug.cost-1)*1.25)
   when cdrug.cost between 10.01 and 100.00 then 13+((cdrug.cost-10)*1.2)
   when cdrug.cost between 100.01 and 1000.00 then 126+((cdrug.cost-100)*1.15)
   when cdrug.cost > 1000.00 then 1161+((cdrug.cost-1000)*1.1) else 0 end as drugcost
FROM
cdrug) as tmp
order by tmp.drugname) as tmp2) as tmp3) as drugsell
on cdrug.drugcode = drugsell.drugcode
set cdrug.sell = drugsell.resultsell
where cdrug.drugtype = '01'

วันจันทร์ที่ 5 มิถุนายน พ.ศ. 2560

ค้นหารหัสยา 24 หลัก (ยาแผนปัจจุบัน+ยาสมุนไพร)

การค้นหารหัสยา 24 หลัก สามารถค้นได้จากเว็บตามลิ้งนี้
http://drug.nhso.go.th/DrugCode/searchDrug.zul

การค้นหาจะได้ตรงกับยามากและง่ายหากค้นจากเลขทะเบียนยา เช่นตัวอย่างดังรูป

วันอังคารที่ 7 มีนาคม พ.ศ. 2560

SQL เพิ่มหัตถการแพทย์แผนไทยใหม่

SQL เพิ่มหัตถการแพทย์แผนไทยใหม่ แบบว่า JHCIS ไม่อนุญาติให้เพิ่มหัตถการ ถ้าชอบแบบ คลิกเดียวเสร็จก็นี่เลย โหลดไปแตกไฟล์แล้วรันที่เครื่อง jhcis server https://www.dropbox.com/s/otvfdynn07pv5hq/sqltest.rar?dl=0
 ##################################  
 INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007834', 'การแช่ยาสมุนไพร', 50.00, 70.00, NULL, NULL, 1, '02', '4', '900-78-34', '1', '1', '9007834', '11', '000000');
INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007835', 'การพอกยาสมุนไพร', 50.00, 100.00, 1.00, 100.00, 1, '02', '4', '900-78-35', NULL, '1', '9007835', '11', '000000');
INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007836', 'การเผายาสมุนไพร', 50.00, 70.00, NULL, NULL, 1, '02', '4', '900-78-36', '1', '1', '9007836', '11', '000000');
INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007837', 'การย่างสมุนไพร', 50.00, 70.00, NULL, NULL, 1, '02', '4', '900-78-37', '1', '1', '9007837', '11', '000000');
INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007838', 'การใช้ยาบำบัดวิธีอื่นที่ทั่วร่างกาย', 1.00, 1.00, 1.00, 1.00, 1, '02', '4', '900-78-38', '1', '2', '9007838', '11', '000000');
INSERT IGNORE cdrug (cdrug.drugcode,cdrug.drugname,cdrug.cost,cdrug.sell,cdrug.costcaldrugstore,cdrug.sellcaldrugstore,cdrug.amountdefaultpay,cdrug.drugtype,cdrug.drugtypesub,cdrug.drugcodeaccountdept,cdrug.stockempty,cdrug.drugflag,cdrug.drugcodeold,cdrug.chargeitem,cdrug.chargelist) VALUES ('9007839', 'การใช้ยาบำบัด ไม่ระบุวิธีที่ทั่วร่างกาย', 1.00, 1.00, 1.00, 1.00, 1, '02', '4', '900-78-39', '1', '2', '9007839', '11', '000000');