Skip to Main Content
V+
Tài liệu
2654:
MIMS: HƯỚNG DẪN MAPPING DỮ LIỆU MIMS ↔ HIS
Nội dung
<h1>HƯỚNG DẪN MAPPING DỮ LIỆU MIMS ↔ HIS (IMPORT EXCEL + SQL)</h1> <div><hr></div> <table border="1" style="border-collapse: collapse; width: 100.032%;"><colgroup><col style="width: 54.9203%;"><col style="width: 45.0719%;"></colgroup> <tbody> <tr> <td> <h2>1. Mục tiêu</h2> <p class="isSelectedEnd">Tài liệu này hướng dẫn đầy đủ các bước:</p> <ul data-spread="false"> <li>Thiết kế file Excel mapping</li> <li>Import dữ liệu vào hệ thống</li> <li>Thực hiện mapping vào bảng <code dir="ltr">HIS_MIMS_MAPPING</code></li> <li><strong>Đồng bộ dữ liệu MIMS ↔ HIS (<code>HIS_MEDICINE_TYPE</code>, <code>HIS_ACTIVE_INGREDIENT</code>)</strong></li> <li>Kiểm tra và validate dữ liệu</li> </ul> </td> <td> <h2>Quy trình tổng thể</h2> <pre dir="ltr" class=""><code>Excel ↓ TMP_MIMS_MAPPING ↓ MERGE → HIS_MIMS_MAPPING ↓ UPDATE → HIS_MEDICINE_TYPE / HIS_ACTIVE_INGREDIENT ↓ Kiểm tra</code></pre> </td> </tr> </tbody> </table> <div><hr></div> <h2>2. Nguyên tắc mapping</h2> <h3>2.1 Mapping theo CODE (không theo tên)</h3> <table> <tbody> <tr> <th>HIS</th> <th>MIMS</th> </tr> <tr> <td>MEDICINE_TYPE_CODE</td> <td>MIMS_GUID</td> </tr> <tr> <td>ACTIVE_INGREDIENT_CODE</td> <td>MIMS_GUID</td> </tr> </tbody> </table> <div><hr></div> <h3>2.2 Phân loại mapping</h3> <table> <tbody> <tr> <td>MAPPING_TYPE</td> <td>Ý nghĩa</td> </tr> <tr> <td>1</td> <td>Medicine (CDS)</td> </tr> <tr> <td>2</td> <td>Active Ingredient (CDS)</td> </tr> </tbody> </table> <div><hr></div> <h3>2.3 Giá trị MIMS_TYPE</h3> <table> <tbody> <tr> <td>Giá trị</td> <td>Ý nghĩa</td> </tr> <tr> <td>1</td> <td>GGPI</td> </tr> <tr> <td>2</td> <td>Product</td> </tr> <tr> <td>3</td> <td>GenericItem</td> </tr> <tr> <td>4</td> <td>Molecule</td> </tr> <tr> <td>5</td> <td>SubstanceClass</td> </tr> </tbody> </table> <div><hr></div> <h2>3. Thiết kế file Excel</h2> <table> <tbody> <tr> <td>MAPPING_TYPE</td> <td>HIS_CODE</td> <td>MIMS_GUID</td> <td>MIMS_NAME</td> <td>MIMS_TYPE</td> <td>MIMS_TYPE_STR</td> <td>VN_ITEM_CODE</td> <td>VN_ITEM_NAME</td> </tr> <tr> <td>1</td> <td>T123</td> <td>guid-aaa</td> <td>Panadol</td> <td>2</td> <td>Product</td> <td>VN001</td> <td>Panadol VN</td> </tr> <tr> <td>2</td> <td>PARA</td> <td>guid-bbb</td> <td>Paracetamol</td> <td>4</td> <td>Molecule</td> <td>VN002</td> <td>Paracetamol VN</td> </tr> </tbody> </table> <div><hr></div> <h2>4. Bảng tạm</h2> <p><code>CREATE TABLE TMP_MIMS_MAPPING (</code><br><code> MAPPING_TYPE NUMBER,</code><br><code> HIS_CODE VARCHAR2(50),</code><br><code> MIMS_GUID VARCHAR2(100),</code><br><code> MIMS_NAME NVARCHAR2(500),</code><br><code> MIMS_TYPE NUMBER,</code><br><code> MIMS_TYPE_STR VARCHAR2(50),</code><br><code> VN_ITEM_CODE VARCHAR2(100),</code><br><code> VN_ITEM_NAME NVARCHAR2(500),</code><br><code> MAPPING_SOURCE VARCHAR2(50)</code><br><code>);</code></p> <div><hr></div> <h2>5. Import Excel → TMP</h2> <ul data-spread="false"> <li>Dùng SQL Developer → Import Data</li> <li>Set mặc định: <ul data-spread="false"> <li><code dir="ltr">MAPPING_SOURCE = 'EXCEL'</code></li> </ul> </li> </ul> <div><hr></div> <h2>6. Mapping vào HIS_MIMS_MAPPING</h2> <p class="isSelectedEnd">(giữ nguyên như phần trước – MERGE)</p> <div><hr></div> <h2>7. <strong>Đồng bộ dữ liệu sang HIS_MEDICINE_TYPE</strong></h2> <p class="isSelectedEnd">👉 Đây là bước <strong>bắt buộc</strong> để runtime sử dụng nhanh (không phải join mapping)</p> <div><hr></div> <h3>7.1 Update từ mapping → MEDICINE_TYPE</h3> <pre dir="ltr" class=""><code>UPDATE HIS_MEDICINE_TYPE MT SET ( MT.MIMS_GUID, MT.MIMS_NAME, MT.MIMS_TYPE, MT.IS_MIMS_MAPPED, MT.MIMS_MAPPING_STATUS, MT.MIMS_LAST_SYNC_TIME ) = ( SELECT M.MIMS_GUID, M.MIMS_NAME, M.MIMS_TYPE, 1, M.MAPPING_STATUS, TO_NUMBER(TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')) FROM HIS_MIMS_MAPPING M WHERE M.MEDICINE_TYPE_ID = MT.ID AND M.IS_DELETE = 0 AND M.MAPPING_TYPE = 1 ) WHERE EXISTS ( SELECT 1 FROM HIS_MIMS_MAPPING M WHERE M.MEDICINE_TYPE_ID = MT.ID AND M.IS_DELETE = 0 AND M.MAPPING_TYPE = 1 );</code></pre> <div><hr></div> <h2>8. Đồng bộ sang HIS_ACTIVE_INGREDIENT</h2> <pre dir="ltr" class=""><code>UPDATE HIS_ACTIVE_INGREDIENT AI SET ( AI.MIMS_GUID, AI.MIMS_NAME, AI.MIMS_TYPE, AI.IS_MIMS_MAPPED, AI.MIMS_MAPPING_STATUS, AI.MIMS_LAST_SYNC_TIME ) = ( SELECT M.MIMS_GUID, M.MIMS_NAME, M.MIMS_TYPE, 1, M.MAPPING_STATUS, TO_NUMBER(TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS')) FROM HIS_MIMS_MAPPING M WHERE M.ACTIVE_INGREDIENT_ID = AI.ID AND M.IS_DELETE = 0 AND M.MAPPING_TYPE = 2 ) WHERE EXISTS ( SELECT 1 FROM HIS_MIMS_MAPPING M WHERE M.ACTIVE_INGREDIENT_ID = AI.ID AND M.IS_DELETE = 0 AND M.MAPPING_TYPE = 2 );</code></pre> <div><hr></div> <h2>9. Kiểm tra sau khi đồng bộ</h2> <h3>9.1 MEDICINE_TYPE đã có MIMS</h3> <pre dir="ltr" class=""><code>SELECT * FROM HIS_MEDICINE_TYPE WHERE IS_MIMS_MAPPED = 1;</code></pre> <div><hr></div> <h3>9.2 ACTIVE_INGREDIENT đã có MIMS</h3> <pre dir="ltr" class=""><code>SELECT * FROM HIS_ACTIVE_INGREDIENT WHERE IS_MIMS_MAPPED = 1;</code></pre> <div><hr></div> <h3>9.3 So sánh lệch dữ liệu</h3> <pre dir="ltr" class=""><code>SELECT MT.MEDICINE_TYPE_CODE, MT.MIMS_GUID, M.MIMS_GUID FROM HIS_MEDICINE_TYPE MT JOIN HIS_MIMS_MAPPING M ON M.MEDICINE_TYPE_ID = MT.ID WHERE MT.MIMS_GUID <> M.MIMS_GUID;</code></pre> <div><hr></div> <h2>10. Lưu ý quan trọng</h2> <ul data-spread="false"> <li>Chỉ sync khi <code dir="ltr">MAPPING_STATUS = 1</code></li> <li>Không overwrite nếu đã xác nhận:</li> </ul> <pre dir="ltr" class=""><code>AND (MT.MIMS_MAPPING_STATUS IS NULL OR MT.MIMS_MAPPING_STATUS <> 2)</code></pre> <div><hr></div> <h2>11. Quy trình tổng thể</h2> <pre dir="ltr" class=""><code>Excel ↓ TMP_MIMS_MAPPING ↓ MERGE → HIS_MIMS_MAPPING ↓ UPDATE → HIS_MEDICINE_TYPE / HIS_ACTIVE_INGREDIENT ↓ Kiểm tra</code></pre> <div><hr></div>
Tệp đính kèm
Tên
Kích Thước
Tải về
Xem
Ảnh
Thời Gian Tạo
Người Tạo
District7_HIS_MIMS_VN_Import_Database.xlsx
67KB
Download
Xem
3 weeks ago
ANHNH2
1 - 1