วิธีการ Mapping ข้อมูล TMT (วิธี manual)
1 โพสต์
• หน้า 1 จากทั้งหมด 1
- pakeesai
- โพสต์: 5
- ลงทะเบียนเมื่อ: จันทร์ 28 ก.ค. 2014 10:23 am
วิธีการ Mapping ข้อมูล TMT (วิธี manual)
ในระหว่างที่หน้าจอโปรแกรมยังพัฒนาไม่เสร็จ รพ.สมาชิกที่ต้องการส่งรหัสยา TMT สามารถใช้วิธีดังต่อไปนี้
1.เปิดเครื่องมือสำหรับติดต่อฐานข้อมูล เช่น aqua data studio หรือ Navicat
ใช้คำสั่ง SQL ต่อไปนี้
1.1 ค้นหารหัส b_item_subgroup_id
SQL >>
select * from b_item_subgroup where item_subgroup_description like '%ในบัญชี%'
1.2 แทนที่รหัส id ในตัวอักษรสีแดงด้วย id ที่ได้จากข้อ 1.1 แล้ว run คำสั่ง
select distinct
--b_site.b_visit_office_id as hcode
b_item.item_number as "HospDrugCode"
,'' as "ProductCat"
,'' as "TMTID"
,'' as "SpecPrep"
,b_item.item_common_name as "GenericName"
,b_nhso_drugcode24.tradename as "Tradename",
'' as "DSFcode"
,b_item_drug_dosage_form.form_name as "Dosage Form"
,(b_item_drug.item_drug_strength|| ' ' ||b_item_drug_strength_unit.unit_name) as "Strength"
,item_unit_packing_qty as "Content"
,q2.item_price as "UnitPrice"
,b_nhso_drugcode24.company as "Distributor"
,b_nhso_drugcode24.company as "Manufacture"
,case when b_item_subgroup.b_item_subgroup_id ='1300000000001' then 'E' else 'N' end as "ISED"
,b_nhso_drugcode24.drugcode24 as "NDC24"
,'' as Packsize
,'' as PackPrice
,'A' as Updateflag
,substr(current_date::text, 9, 2) ||'/'||substr(current_date::text, 6, 2)||'/'||substr(current_date::text, 1, 4) ||' '||'00:00' as "Datechange"
,case when substr(q1.active_date ,12,5) <> '' then substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||substr(q1.active_date ,12,5)
else substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||'00:00' end as "DateUpdate"
,case when substr(q1.active_date ,12,5) <> '' then substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||substr(q1.active_date ,12,5)
else substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||'00:00' end as "DateEffective"
from
(select b_item_id,max(item_price_active_date) as active_date from b_item_price
group by b_item_id) as q1
INNER JOIN
(select b_item_id,item_price_active_date,item_price,item_price_cost from b_item_price
group by b_item_id,item_price_active_date,item_price,item_price_cost) as q2
ON
q1.b_item_id = q2.b_item_id
and q1.active_date = q2.item_price_active_date
inner join b_item
on q2.b_item_id = b_item.b_item_id
inner join b_item_price on b_item.b_item_id = b_item_price.b_item_id
left join b_nhso_map_drug on b_item.b_item_id = b_nhso_map_drug.b_item_id
left join b_nhso_drugcode24 on b_nhso_map_drug.b_nhso_drugcode24_id = b_nhso_drugcode24.b_nhso_drugcode24_id
left join b_item_drug on b_item.b_item_id = b_item_drug.b_item_id
left join b_item_drug_dosage_form on b_item_drug.b_item_drug_dosage_form_id = b_item_drug_dosage_form.b_item_drug_dosage_form_id
left join b_item_drug_strength_unit on b_item_drug.b_item_drug_strength_unit_id = b_item_drug_strength_unit.b_item_drug_strength_unit_id
inner join b_item_subgroup on b_item_subgroup.b_item_subgroup_id = b_item.b_item_subgroup_id
cross join b_site
where b_item_subgroup.f_item_group_id IN ('1') and b_item.item_active = '1'
2.บันทึกผลลัพธ์เป็นไฟล์ .xls ตามตัวอย่าง >> Drug Catalog 2014 >> download --> https://copy.com/TuiCtkdpSUg4HuxH
3.ดาวโหลดโปรแกรม สำหรับ mapping >> Mapping_TMT_kamol_07082014 >> download --> https://copy.com/nY3fzdDSHm0sYkUp
4.นำเข้าไฟล์ข้อ 2 เข้าโปรแกรม mapping ข้อ 3 (คู่มือการ mapping อยู่ในโฟลเดอร์โปรแกรม ข้อ 3)
5.ส่งออกข้อมูล mapping จากข้อ 4 โดยสามารถเพิ่มข้อมูลในไฟล์ได้ (ตามต้องการ) บันทึกแล้วส่งออก ตามตัวอย่าง 10859DrugN001 >> download --> https://copy.com/Gk6gAiqaaCKmeCtx
---------------สิ้นสุดการทำงาน--------------------------------------------
ขอบคุณตัวอย่างไฟล์และโปรแกรม Mapping จากพี่คมสันต์และพี่ชุมสินค่ะ
1.เปิดเครื่องมือสำหรับติดต่อฐานข้อมูล เช่น aqua data studio หรือ Navicat
ใช้คำสั่ง SQL ต่อไปนี้
1.1 ค้นหารหัส b_item_subgroup_id
SQL >>
select * from b_item_subgroup where item_subgroup_description like '%ในบัญชี%'
1.2 แทนที่รหัส id ในตัวอักษรสีแดงด้วย id ที่ได้จากข้อ 1.1 แล้ว run คำสั่ง
select distinct
--b_site.b_visit_office_id as hcode
b_item.item_number as "HospDrugCode"
,'' as "ProductCat"
,'' as "TMTID"
,'' as "SpecPrep"
,b_item.item_common_name as "GenericName"
,b_nhso_drugcode24.tradename as "Tradename",
'' as "DSFcode"
,b_item_drug_dosage_form.form_name as "Dosage Form"
,(b_item_drug.item_drug_strength|| ' ' ||b_item_drug_strength_unit.unit_name) as "Strength"
,item_unit_packing_qty as "Content"
,q2.item_price as "UnitPrice"
,b_nhso_drugcode24.company as "Distributor"
,b_nhso_drugcode24.company as "Manufacture"
,case when b_item_subgroup.b_item_subgroup_id ='1300000000001' then 'E' else 'N' end as "ISED"
,b_nhso_drugcode24.drugcode24 as "NDC24"
,'' as Packsize
,'' as PackPrice
,'A' as Updateflag
,substr(current_date::text, 9, 2) ||'/'||substr(current_date::text, 6, 2)||'/'||substr(current_date::text, 1, 4) ||' '||'00:00' as "Datechange"
,case when substr(q1.active_date ,12,5) <> '' then substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||substr(q1.active_date ,12,5)
else substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||'00:00' end as "DateUpdate"
,case when substr(q1.active_date ,12,5) <> '' then substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||substr(q1.active_date ,12,5)
else substr(q1.active_date ,9,2)||'/'||substr(q1.active_date ,6,2)||'/'||cast(substr(q1.active_date ,1,4) as numeric)-543 ||' '||'00:00' end as "DateEffective"
from
(select b_item_id,max(item_price_active_date) as active_date from b_item_price
group by b_item_id) as q1
INNER JOIN
(select b_item_id,item_price_active_date,item_price,item_price_cost from b_item_price
group by b_item_id,item_price_active_date,item_price,item_price_cost) as q2
ON
q1.b_item_id = q2.b_item_id
and q1.active_date = q2.item_price_active_date
inner join b_item
on q2.b_item_id = b_item.b_item_id
inner join b_item_price on b_item.b_item_id = b_item_price.b_item_id
left join b_nhso_map_drug on b_item.b_item_id = b_nhso_map_drug.b_item_id
left join b_nhso_drugcode24 on b_nhso_map_drug.b_nhso_drugcode24_id = b_nhso_drugcode24.b_nhso_drugcode24_id
left join b_item_drug on b_item.b_item_id = b_item_drug.b_item_id
left join b_item_drug_dosage_form on b_item_drug.b_item_drug_dosage_form_id = b_item_drug_dosage_form.b_item_drug_dosage_form_id
left join b_item_drug_strength_unit on b_item_drug.b_item_drug_strength_unit_id = b_item_drug_strength_unit.b_item_drug_strength_unit_id
inner join b_item_subgroup on b_item_subgroup.b_item_subgroup_id = b_item.b_item_subgroup_id
cross join b_site
where b_item_subgroup.f_item_group_id IN ('1') and b_item.item_active = '1'
2.บันทึกผลลัพธ์เป็นไฟล์ .xls ตามตัวอย่าง >> Drug Catalog 2014 >> download --> https://copy.com/TuiCtkdpSUg4HuxH
3.ดาวโหลดโปรแกรม สำหรับ mapping >> Mapping_TMT_kamol_07082014 >> download --> https://copy.com/nY3fzdDSHm0sYkUp
4.นำเข้าไฟล์ข้อ 2 เข้าโปรแกรม mapping ข้อ 3 (คู่มือการ mapping อยู่ในโฟลเดอร์โปรแกรม ข้อ 3)
5.ส่งออกข้อมูล mapping จากข้อ 4 โดยสามารถเพิ่มข้อมูลในไฟล์ได้ (ตามต้องการ) บันทึกแล้วส่งออก ตามตัวอย่าง 10859DrugN001 >> download --> https://copy.com/Gk6gAiqaaCKmeCtx
---------------สิ้นสุดการทำงาน--------------------------------------------
ขอบคุณตัวอย่างไฟล์และโปรแกรม Mapping จากพี่คมสันต์และพี่ชุมสินค่ะ
1 โพสต์
• หน้า 1 จากทั้งหมด 1
ผู้ใช้งานขณะนี้
กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 1 ท่าน