Abstract Aplikasi berbasis web untuk mengelola kualitas laboratorium klinik _Internal Software Development Project_ Clinical Laboratory Quality Management System **Perjanjian kerahasiaan**: Dokumen ini adalah karya yang tidak dipublikasikan yang berisi informasi hak milik yang merupakan rahasia dagang berharga dari PT Sumbermitra Agungjaya, dilindungi oleh undang-undang hak cipta dan sangat rahasia. Dokumen ini, informasi dalam dokumen ini, dan semua haknya adalah milik tunggal dan eksklusif PT Sumbermitra Agungjaya dan dimaksudkan semata-mata untuk digunakan oleh karyawan PT Sumbermitra Agungjaya, dan tidak boleh disalin, digunakan atau diungkapkan kepada siapa pun, secara keseluruhan atau sebagian, tanpa izin tertulis dari PT Sumbermitra Agungjaya. | | | | --- | --- | | **Software Identity** | | | Number | | | Name | | | Domain of use | Choose an item. | | Domain of execution | Choose an item. | | | | | **Programmer** | | | Analyst | <> | | Front end (UI/UX) | <> | | Back end | <> | | Testing & validation | <> | | Documentation | <Adhitya Pranata Putra> | | | | # Contents [1\. Contents 2](#_Toc209171997) [2\. Pendahuluan 6](#_Toc209171998) [3\. Konsensus dan Konsep 6](#_Toc209171999) [4\. Requirements 7](#_Toc209172001) [4.1. Deskripsi Umum 7](#_Toc209172002) [4.1.1. Organization 7](#_Toc209172003) [4.1.2. Personnel 7](#_Toc209172004) [4.1.3. Equipment 7](#_Toc209172005) [4.1.4. Purchasing & Inventory 8](#_Toc209172006) [4.1.5. Process Control 8](#_Toc209172007) [4.1.6. Information Management 8](#_Toc209172008) [4.1.7. Documents & Records 9](#_Toc209172009) [4.1.8. Customer Service 9](#_Toc209172010) [4.2. Features 10](#_Toc209172011) [4.2.1. Functional Requirement 10](#_Toc209172012) [4.2.2. Non-Functional Requirements 25](#_Toc209172013) [4.3. Model Use Case 26](#_Toc209172014) [4.3.1. CLQMS – SMCRM Integration 26](#_Toc209172015) [4.3.2. Definisi Actor 26](#_Toc209172016) [5\. Detail Teknis dan Implementasi 27](#_Toc209172017) [5.1. Hardware 27](#_Toc209172018) [5.1.1. Virtual Private Server (VPS) 27](#_Toc209172019) [5.1.2. Local/Site Server 27](#_Toc209172020) [5.1.3. Client PC 27](#_Toc209172021) [5.2. Software 27](#_Toc209172022) [5.3. Language 27](#_Toc209172023) [5.4. Framework 27](#_Toc209172024) [5.4.1. Back End 27](#_Toc209172025) [5.4.2. Front End 27](#_Toc209172026) [5.4.3. UI/UX 27](#_Toc209172027) [5.5. Network Architecture 28](#_Toc209172028) [5.6. Database 29](#_Toc209172029) [5.6.1. Vendor 29](#_Toc209172030) [5.6.2. Product 29](#_Toc209172031) [5.6.3. Organization Structure 33](#_Toc209172032) [5.6.4. Host Systems 35](#_Toc209172033) [5.6.5. Coding System 35](#_Toc209172034) [5.6.6. Doctor 36](#_Toc209172035) [5.6.7. Location 38](#_Toc209172036) [5.6.8. Patient Registration 40](#_Toc209172037) [5.6.9. Patient Admission 45](#_Toc209172040) [5.6.10. Test Ordering 48](#_Toc209172042) [5.6.11. Specimen 52](#_Toc209172043) [5.6.12. Equipment Management 60](#_Toc209172045) [5.6.13. Test Management 63](#_Toc209172046) [5.6.14. ReferenceRangeNumeric 69](#_Toc209172047) [5.6.15. ReferenceRangeThreshold 69](#_Toc209172048) [5.6.16. Value Set 70](#_Toc209172049) [5.6.17. Reagent 70](#_Toc209172050) [5.6.18. Calibration 71](#_Toc209172051) [5.6.19. Quality Control (QC) 75](#_Toc209172052) [5.6.20. Results 78](#_Toc209172053) [5.6.21. Result Distribution 80](#_Toc209172054) [5.6.22. Visualization 81](#_Toc209172055) [5.6.23. Audit 82](#_Toc209172056) [5.6.24. Relational Diagram 83](#_Toc209172057) [5.7. Antarmuka 83](#_Toc209172058) [5.7.1. Access Page 83](#_Toc209172059) [6\. Versioning 83](#_Toc209172062) [7\. Definisi – definisi 84](#_Toc209172063) [8\. Referensi 84](#_Toc209172064) [9\. Lampiran 85](#_Toc209172065) [9.1. Lampiran 1:](#_Toc209172066) _[Database Connection Requirement](#_Toc209172066)_ [85](#_Toc209172066) [9.1.1. Architecture 85](#_Toc209172067) [9.1.2. Data scope 85](#_Toc209172068) [9.2. Lampiran 2: TMS-30i 87](#_Toc209172069) [9.2.1. Calibration Results SQL Scripts and Data Mapping 87](#_Toc209172070) [9.2.2. QC Results SQL Scripts and Data Mapping 89](#_Toc209172071) [9.2.3. Patient Results SQL Scripts and Data Mapping 90](#_Toc209172072) [9.2.4. Calibration Factor 92](#_Toc209172073) [9.2.5. Flags 93](#_Toc209172074) [9.3. Lampiran 3: TMS-24i 95](#_Toc209172075) [9.3.1. Calibration Results SQL Scripts and Data Mapping 95](#_Toc209172076) [9.3.2. QC Results SQL Scripts and Data Mapping 96](#_Toc209172077) [9.3.3. Patient Results SQL Scripts and Data Mapping 97](#_Toc209172078) [9.4. Lampiran 4: File-based Integration 98](#_Toc209172079) [9.5. Lampiran 5: File-based Integration SES 99](#_Toc209172080) [9.6. Lampiran 6: SES Screens 103](#_Toc209172081) [9.7. Lampiran 7: Clinical Laboratory Activity 0](#_Toc209172082) [9.8. Lampiran 8: Versions 0](#_Toc209172083) [9.9. Lampiran 9: Patient 2](#_Toc209172084) [9.9.1. Race, Ethnic, Religion 2](#_Toc209172085) [9.9.2. Country 1](#_Toc209172086) [9.9.3. Patient Visit Class 2](#_Toc209172087) [9.9.4. Patient Service Class 2](#_Toc209172088) [9.9.5. Admission – Discharge – Transfer Code 2](#_Toc209172089) [9.10. Lampiran 10: Cumulative View 0](#_Toc209172090) [9.11. Lampiran 11: Test Ordering 0](#_Toc209172091) [9.11.1. Test Order Urgency 0](#_Toc209172092) [9.11.2. Test Order Status 0](#_Toc209172093) [9.11.3. Result Status 0](#_Toc209172094) [9.11.4. Diagnostic Report Status 0](#_Toc209172095) [9.12. Lampiran 12: Specimen 2](#_Toc209172096) [9.12.1. Container Type 2](#_Toc209172097) [9.12.2. Additive 4](#_Toc209172098) [9.12.3. Specimen Type 5](#_Toc209172099) [9.12.4. Specimen Type (Environmental) 7](#_Toc209172100) [9.12.5. Specimen Component 7](#_Toc209172101) [9.12.6. Collection Method 7](#_Toc209172102) [9.12.7. Body Site 7](#_Toc209172103) [9.12.8. Source 8](#_Toc209172104) [9.12.9. Specimen Role 8](#_Toc209172105) [9.12.10. Specimen Condition 8](#_Toc209172106) [9.13. Lampiran 13: Location 10](#_Toc209172107) [9.13.1. Location Type 10](#_Toc209172108) [9.14. Lampiran 14: Value set 11](#_Toc209172109) [9.14.1. Value Set 11](#_Toc209172110) [9.14.2. Value set Field (Table 67. codedtxtfld) 15](#_Toc209172111) [9.15. Lampiran 3: Struktur Menu 16](#_Toc209172112) [10\. Referensi 17](#_Toc209172113) [11\. Riwayat Perubahan 0](#_Toc209172114) [12\. Distribusi 0](#_Toc209172115) # Pendahuluan _Market segment_ Perusahaan adalah _middle-high_. Hal ini tercermin dari _product_ yang dipasarkan dan _customer_ yang hingga kini dikelola oleh Perusahaan. _Customer_ di kelas ini memperhatikan kualitas dan memerlukan nilai tambah, berupa berbagai layanan dan salah satunya dalam bentuk piranti lunak (_software_). Oleh sebab itu diperlukan pengembangan _software_ yang sesuai dengan _market segment_ tersebut, yaitu yang terkait dengan pengelolaan kualitas (_quality management_) laboratorium. Menurut WHO[\[1\]](#footnote-1), _Quality Management_ suatu laboratorium klinik meliputi elemen-elemen sbb.:
  1. Documents and records
  2. Occurrence (non-conformity) management
  3. Assessment
  4. Process improvement
  5. Customer service
  6. Facility and safety
- Masih terkait erat dengan elemen kualitas, untuk mengelola _quality management_, diperlukan _software_ yang: 1. _robust_, tidak mudah mengalami kerusakan. 2. _secure_, aman terhadap ancaman _cybersecurity_. 3. memperhatikan dan mampu mewujudkan _patient safety_, 4. **_scalable_**, bisa mengelola beban operasional ringan hingga berat. 5. **_future proof_**, mengantisipasi kebutuhan di masa depan. 6. **_compliance_** dengan regulasi yang berlaku dan/atau _standard_ yang digunakan. 7. **_interoperability_**, bisa diintegrasikan dengan berbagai aplikasi. # Konsensus dan Konsep Konsensus dalam dokumen ini adalah sebagai berikut: 1. Data/informasi sensitive terkait privacy ditulis dengan font **bold berwarna merah** dan berarti encrypted. 2. Istilah **Site(s)** digunakan untuk lokasi geografis yang bersifat _fixed_ dan bisa ditandai dengan _geolocation_. Site adalah _container_ dari Location. 3. Istilah **Location** diigunakan untuk ruang di dalam _site_ (_facility_, _building_, _floor_, _point of care_, _room_, _bed_) atau, _mobile_, _remote_, dll 4. Istilah **Counter** digunakan untuk tempat penyimpanan barang. 5. Semua data _date time_ disimpan dalam **UTC+0**, untuk menghindari masalah zona waktu dan memudahkan sortir. Kecuali pada Date of Birth dan Time of Death, keduanya disimpan apa adanya. 6. **_CreateDate_**. nilai waktu yang diisikan ke _field database_, menandai waktu _record_ tersebut dibuat 7. **_EndDate_**: nilai waktu yang diisikan ke _field database_, menandai _record_ tersebut tidak digunakan. 1. pada _master data tables_, berarti _record_ tersebut sudah tidak berlaku lagi saat ini tetapi mungkin masih relevan dengan _past data_. Misalnya pada perubahan nilai rujukan, dimana nilai rujukan lama _closed_ tetapi dipertahankan di dalam _database_ karena berelasi dengan hasil test yang sudah dikerjakan. 2. pada _transaction tables_, berarti _record_ tersebut sudah _closed_ statusnya, tidak bisa/boleh diubah lagi dan menunggu waktu _archival_. 8. **_~~CloseDate~~_**~~. nilai waktu yang diisikan ke~~ _~~field database~~_~~, menandai~~ _~~record~~_ ~~tersebut sudah tidak bisa diubah lagi. Diterapkan pada~~ _~~transaction tables~~_ 9. **_ArchiveDate_**: nilai waktu yang diisikan ke _field database_, menandai _record_ tersebut sudah masuk ke _data warehouse_ sehingga tidak boleh diubah lagi untuk mempertahankan konsistensi. Diterapkan pada _transaction tables_. 10. **_DelDate_**. nilai waktu yang diisikan ke _field database_, menandai _record_ tersebut sudah dihapus. Diterapkan pada _transaction tables_, khususnya yang memuat data Pribadi pasien. Gambar 1 Siklus data transaksi # Requirements ## Deskripsi Umum Aplikasi terintegrasi dengan CRM melalui database. Aplikasi berfungsi mengelola kualitas laboratorium klinik yang terdiri dari: ### Organization Fungsi organisasi meliputi: 1. Pengelolaan single/multi organization, single/multiple laboratory sites, single/multiple laboratories. Pengelolaan diturunkan dari CRM yaitu Account (parent/child) dan Sites. 2. Pengelolaan struktur organisasi ### Personnel Pengelolaan personnel, meliputi: 1. Daftar personnel berikut jabatannya dalam laboratorium 2. Mutasi personnel 3. Hak akses personnel 4. Pengelolaan akun. 5. Dokumen terkait, terutama sertifikat pelatihan ### Equipment _Equipment_ secara umum adalah: - semua alat IVD yang berada di dalam laboratorium atau di luar, misalnya _point of care testing_ (POCT) _instruments_. - termasuk UPS, AVR, _printer_, PC, _water treatment plant_ dan semua piranti pendukung _equipment_ - termasuk PC, UPS, AVR, _printer_, _network switch_, _server, mobile device_ yang digunakan untuk operasional laboratorium (LIS, HIS, dll) - _wearables_ yang mengumpulkan data pasien (_non-disposable_, _disposable_, _semi-disposable_) - _modalities_ (_imaging instruments_) _Equipment_ bisa merupakan asset laboratorium atau pihak lain, yang dipinjamkan/disewakan/KSO dengan laboratorium. Pengelolaan _equipment_, meliputi: 1. Pencatatan _activities_ dari mulai instalasi hingga _decommissioning_ (akhir penggunaan) 2. Pencatatan _maintenance activity_ dan _maintenance scheduling_. 3. Usia pakai dan perawatan. Salah satu indikator untuk IVD _equipment_ adalah total jumlah tes yang dihasilkannya – **total produksi tes**, yang terdiri dari tes untuk: 1. kalibrasi test/alat berikut perulangannya 2. _Quality Control_ (QC) berikut perulangannya 3. pasien berikut perulangannya 4. tes yang diproduksi untuk tujuan lainnya (external quality assurance, dll) 4. komunikasi CLQMS dengan IVD _equipment_: 1. _serial communication_ via RS-232 2. TCP/IP 3. HL7 atau ASTM _based protocol_ 4. _uni-directional_ atau _bi-directional_ (_query_, _non-query_) 5. identifikasi jenis dan jumlah tes yang dilakukan setiap IVD _equipment_. Prinsip komunikasi CLQMS - IVD equipment: - setiap IVD _equipment_ di-_assign_ dan _connected_ ke _workstation_, baik secara langsung (RS-232, TCP/IP melalui _network_ _card_ pada _workstation_) ataupun tidak langsung (IVD _instrument_ tersambung ke _network switch_) - _workstation_ yang mendapat _assignment_ tersebut memiliki _local database_ untuk mengantisipasi terputusnya _network connection_ dengan _server_. - _local database_ adalah replikasi sebagian atau keseluruhan data dari server. - 1 _workstation_ bisa mengelola lebih dari 1 IVD _equipment_. - _workstation_ bertanggung jawab penuh atas komunikasi dengan IVD _equipment_ (_interfacing_) - _workstation_ mengelola distribusi pekerjaan ke berbagai IVD _equipment_ dengan memanfaatkan data yang ada. - suatu _workstation_ bisa diakses dari PC lain dengan menggunakan aplikasi yang sama. ### Purchasing & Inventory Fungsi purchasing dan inventory meliputi pengelolaan: 1. _Product catalogue_ dan product yang digunakan di laboratorium 2. Penyusunan daftar item yang perlu diadakan 3. Penerimaan barang 4. Pencatatan penggunaan barang. Terutama adalah penggunaan barang habis pakai hingga menjadi test. ### Process Control Sistem mampu mengakomodasi berbagai proses, oleh karenanya perlu user-defined **_case type_** dan **_business_** **_function_**. _Case type_ dan _business function_ bisa _cascade_ (_parent - child_). Secara umum, proses di dalam laboratorium klinik terdiri dari pre-analitik, analitik dan pasca-analitik. Tetapi tidak semua perlu dilakukan, misalnya: - Pasien _check-up_ tidak memerlukan _admission_. - _External QC_ tidak memerlukan patient _registration_, _admission_ karena pada dasarnya bukan manusia. ### Information Management Berikut adalah elemen pengelolaan informasi: Secara umum, system harus mampu menjaga _data integrity_[\[2\]](#footnote-2). #### Unique identifiers for patients, visits, test order and specimen Label untuk identifikasi setidaknya adalah sebagai berikut: - **_Patient Label_**. Berisi identitas pasien (PID, nama, _birthdate_, PVID, dll) - **_Order Label_**. Berisi informasi _test order_ (OID, tanggal, _Attending Doctor_, _Location_, dll) - **_Specimen Label_**. Berisi informasi _specimen_ (barcode SID, SID, jenis specimen, dll) - **_Packing Label_**. Yaitu label untuk kemasan sekunder/tertier. Berfungsi sebagai identitas kemasan _specimen_ dalam proses _trasport_ (rujukan dll). #### Standardized Test Order Form <to be completed> #### Logs and Worksheets <to be completed> #### Checking Processes to Assure Accuracy of Data Recording & Transmission <to be completed> #### Protection Against Lost of Data <to be completed> ### Documents & Records Dokumen bisa berupa SOP, forms dll. Records adalah semua data yang berada dalam _database management_ _system_. Keduanya harus diamankan (secure) dengan menggunakan setidaknya _Two Factor Authenthication_ (2FA). Implikasinya: - setiap pengguna (User, Contact, patient) yang diberi akses harus memiliki ‘_something that you have_’ yang bersifat pribadi - _email_ dan/atau _mobile phone_ _number_ untuk menerima _One-Time Password_ (OTP) - pengguna yang tidak memiliki persyaratan tersebut, tidak bisa menggunakan fungsi-fungsi yang bersifat meng-akses system. ### Customer Service Pelanggan laboratorium adalah: 1. Pasien 2. Dokter 3. Fasilitas pelayanan Kesehatan (klinik, laboratorium, rumah sakit, dll) 4. Perusahaan 5. Perusahaan asuransi 1. Inventory | | | | --- | --- | | NO | Menu | | 1 | Homepage | | | Deskripsi : | | | Gambar : | | 2 | Menu 1 | | | Deskripsi : | | | Gambar | | 3 | Menu 2 | | | Deskripsi : | | | Gambar | | 4 | Menu 3 | | | Deskripsi : | | | Gambar | ## Features Fitur fungsional mengacu pada penggunaan praktis, tujuan, atau kemampuan sistem, dengan fokus pada bagaimana sistem tersebut melakukan tugasnya secara efektif. Fitur non-fungsional, menggambarkan bagaimana suatu sistem harus bekerja, bukan apa yang dilakukannya. ### Functional Requirement Sistem mampu mengelola proses-proses di dalam laboratorium yang meliputi proses utama dan pendukungnya. Proses utama, misalnya dari _Patient Registration to Reporting_ yang terdiri dari _activities_ seperti pada table di bawah ini Table 1 Activities di Laboratorium Klinik Figure 1 Activities pada Proses Pendukung Figure 2 Activities pada Proses Utama Figure 3 Activities pada Proses Pendukung Sistem terintegrasi dengan SMCRM untuk memudahkan _data update_ dan efisiensi operasional terutama _support_. #### SMCRM Integration Aplikasi terintegrasi dengan SMCRM untuk tujuan: - _seamless data update_. Misalnya identitas _site_, _equipment_, _contact_ dll. - _seamless support_. Misalnya _service request_ dari laboratorium ke SUMMIT, catatan _maintenance_ dan _service_ _equipment_, dll. Integrasi memperhatikan hal-hal sebagai berikut: - **_bi-directional communication_**. Artinya data bisa berasal dari kedua belah pihak (CLQMS, SMCRM) dan dicerminkan ke _counterpart system_. - **_secure communication_**. Komunikasi antara kedua sistem harus _secured_. - **_interdependence_**. Untuk memastikan kelancaran operasional masing-masing sistem dan terputusnya hubungan keduanya maka masing-masing harus bisa beroperasi _stand-alone_. Integrasi dilakukan dengan: 1. mereplikasikan beberapa _tables_ dari satu aplikasi ke aplikasi lainnya: 1. **Account**. Merepresentasikan organisasi – Perusahaan swasta, BUMN, single lab, chain labs, dll. Data account diambil dari aplikasi CRM 2. **Sites** 3. **Contact & ContactDetail** 4. **ProductCatalog & Product** 2. tidak semua _record_ dari SMCRM direplikasikan ke CLQMS, hanya yang terkait dengan Account dan Site CLQMS tersebut. 3. mekanisme replikasi: 1. Account dan Site harus terdaftar terlebih dahulu di SMCRM. 2. Instalasi CLQMS dilakukan di site, salah satu bagian penting adalah setting Account dan Site dan _establish secure connection_ dengan SMCRM. 3. Contact dan ContactDetail bisa dipilih, mana saja yang akan direplikasikan ke CLQMS. 4. mengantisipasi perbedaan _database management system_ dan _data type_ yang digunakan di kedua aplikasi. #### Multi Organization Management Aplikasi mampu mengelola _multiple accounts_, _sites_, _disciplines_, _departments_, _workstations_, _instruments_ - **Account**. Merepresentasikan organisasi – Perusahaan swasta, BUMN, single lab, chain labs, dll. Data account diambil dari aplikasi CRM - **Sites**. Berisi definisi lokasi geografis yang bersifat _fixed_ (yaitu _laboratory site_) dan diambil dari aplikasi CRM. - **Discipline**. Bidang keahlian khusus dan bidang ilmiah dalam kedokteran laboratorium, yang meliputi bidang-bidang seperti mikrobiologi, hematologi, imunologi, kimia klinik, biologi molekuler, histologi, sitologi, dll. Discipline secara konket bisa berupa pembagian ruangan untuk Biologi Molekuler, Histologi & Sitologi, dll. - **Department**. Adalah bagian / unit dalam suatu laboratorium klinik, disusun/dibentuk sedemikian rupa untuk meng-optimalkan sumber daya dan _workflow_. Kemungkinannya: - satu _department_ khusus untuk satu _discipline_ (misal: Hematology department). - atau suatu laboratorium yang besar bisa menyatukan beberapa _discipline_ menjadi satu _department_ untuk efisiensi (missal: "_Blood Sciences_" _department_ meliputi Kimia Klinik, Hematologi dan Transfusi). - relasi _discipline_ – _department_ adalah _many to many_. - _departments_ juga digunakan untuk mengelompokkan fungsi-fungsi tertentu, seperti pengujian diagnostik atau proses laboratorium tertentu. - [Workstation](#_Organization_Structure). Tempat bekerja di dalam laboratorium klinik. Biasanya spesifik untuk satu hal tertentu. Misalnya _routine hematology_, _coagulation_, dll. - Satu _workstation_ adalah satu unit PC _client_ (termasuk area[\[3\]](#footnote-3) di sekitarnya). Satu _department_ bisa memiliki lebih dari satu _workstation_. - _workstation_ digunakan untuk: - interaksi _user_ dengan aplikasi (input data, _query results_, _generate reports_, dll). - _instrument_ _interfacing / instrument interface server_. Satu _workstation_ bisa terhubung dengan beberapa _instrument_ dengan fungsi _interfacing_ sbb: - menerima _query message_ dari _IVD equipment_ - mengirim _order message_ ke _IVD equipment_ - menerima _result message_ dari _IVD equipment_ - mengirim _update_ & _rerun message_ ke _IVD equipment_ - _test mapping_ termasuk _many to one_ (glukosa sewaktu, 2h pp, puasa, dll) - _real-time overview/dashboard_ - bagian dari mekanisme _instruments load balancing_ dan _fail-over_ - bagian dari mekanisme distribusi test (otomatis dan manual) dan pengaturan beban kerja. - berfungsi proteksi, mencegah: - salah run specimen - salah run test (melalui _test mapping_) - _workstation_ memiliki _local database_ yang bisa menampung data hasil dari instruments. Jika _workstation_ terputus/diputus dari jaringan, maka _locally_ masih bisa berfungsi terbatas untuk: - menerima specimen - merespon _query_ dari _instrument_ - menampung hasil pasien/QC - melakukan _rerun_/ _rerun_ dengan dilusi - validasi hasil pasien dan/atau QC - suatu _workstation_ yang merepresentasikan lokasi fisik, bisa diakses dan digunakan dari tempat lain (_virtual_) - _rerun_ bisa dilakukan di _instrument_ manapun yang mengerjakan test yang sama, terlepas dari di mana _instrument_ tersebut di-_assign_. - **Instrument**. Adalah IVD _instrument_ yang digunakan untuk menghasilkan berbagai pengukuran diagnostic. Gambar . Generic organization structure #### Multiple Coding System Aplikasi mampu menggunakan berbagai _coding system_, misalnya: - LOINC - ICD10 - CPT4 - SNOMED #### Location Management Gambar 3. Hirarki Site - Location _Location management_[\[4\]](#footnote-4) terhubung dan merupakan kelanjutan dari _site management_ pada crm, meliputi: - **Location type**. Yaitu definisi jenis Lokasi. Misalnya: _floor_, _point of care_, _room_, _bed_, _mobile_, _remote_, dll - **Location**. - Yaitu definisi lokasi dalam setiap site. Misalnya, ruangan di Instalasi Rawat Inap, dll. Rawat Inap adalah Facility unit - _Cascade_[\[5\]](#footnote-5) dimungkinkan, misalnya Bed1, Bed2 berada dalam ruang “VIP-A”. Keduanya terdefinisi dalam table Location. - Termasuk pengelolaan _remote location_, misalnya _sampling station_, _sampling site_ Medical Checkup, Home Service, dll. | | | | --- | --- | | | | | | | | | | | | | - **Location address**. Yaitu data alamat dari lokasi, terutama _remote location_. Data ini penting untuk pengambilan sample di luar fasyankes. Misalnya pada Home Service. #### Equipment & Device Management Fungsi-fungsi _Equipment Management_ yaitu: #### Patient Registration _Patient Registration_ bertujuan untuk mengumpulkan informasi demografis, medis, dan asuransi yang digunakan. Data ini digunakan untuk membuat catatan pasien dan menghubungkannya dengan layanan fasyankes. Identitas unik pasien dinyatakan dalam bentuk **_Patient ID_** (**PID**). PID bersifat unik dan permanen untuk setiap pasien. _Common process_: pengisian formulir, memberikan identifikasi, dan mendapatkan persetujuan untuk pengobatan dan _informed consent_[\[6\]](#footnote-6). Elemen kunci: detail pribadi, informasi asuransi, informasi kontak, riwayat kesehatan, dan formulir persetujuan. Aplikasi mampu: - mengelola data pasien per site - menghubungkan (_link_)/mengurai(_unlink_) data pasien yang sama dari site yang sama maupun berbeda - mengidentifikasi kunjungan pasien per site - mengidentifikasi/mengelola perpindahan pasien dari satu lokasi ke lokasi lain baik di site yang sama maupun berbeda. - mengelola _non-patient entity_. Misalnya _external quality control_, _blood bag_, dll. #### Patient Admission Admission adalah proses pendaftaran _visit_ pasien secara formal. - Setiap kali visit, pasien mendapat nomor visit/admisi yang disebut **_Patient Visit ID_** (**PVID**) - Merupakan proses awal _Revenue Cycle Management_ (RCM) - Data yang terlibat dalam proses registrasi: - Pihak yang mengirimkan pasien (pasien, asuransi, perusahaan, dll) - Pihak yang menanggung biaya pemeriksaan (pasien, asuransi, Perusahaan, dll) – _billing account_. - Tarif yang dikenakan - Pihak yang akan menerima hasil pasien - Data-data pendukung: detak jantung, tekanan darah, berat dan tinggi badan, pemeriksaan awal lainnya. #### Test Ordering Management Pengelolaan _test ordering_: - **Test Ordering**, yaitu _activity_ membuat _order_ test pertama kali. - dapat dilakukan di: - dalam _site_ yang sama - _site_ yang berbeda - _mobile location_ (misalnya _on-site_ MCU) - _remote location_ - lokasi di luar _site_ (misalnya praktek dokter, klinik, dll) - dalam lingkungan _multi-sites_, _test ordering_ bisa dibuat di suatu _site_ (_source_) dan dikerjakan di _site_ lain (_production_) - Ragam test ordering bersarkan subyeknya (pihak/entitas yang diperiksa): - pasien fasyankes itu sendiri - pasien dari fasyankes lain (rujukan fasyankes lain) - non-patient origin (_non-patient related_, _patient related_), misalnya: _external quality control (EQC)_, _blood bag_, dll - _Activity_ ini memicu _specimen_ _records generation_. - jika _Calculated Test_ (formula) dipilih, maka input parameternya otomatis terpilih. - **Order status**, yaitu perjalanan _order_ dari mulai dibuat hingga selesai (table status dan kondisinya) - **Manual**, yaitu melalui ekstraksi database, csv file atau text file. Setiap _test order_ memiliki identitas unik berupa **Order ID** sepanjang 13 karakter, dengan ketentuan sebagai berikut: **LLYYMMDDXXXXX** dimana:

Komponen

Tipe data & range

Arti & ketentuan

LL

Alphanumeric (00 – Z9)

  • kode site asal (source),
  • System assigned, tidak bisa diubah user

YY

Numeric (00 – 99)

  • Tahun (‘25’ dari 2025).
  • Otomatis, mengikuti current date, disesuaikan untuk future order.

MM

Numeric (01 – 12)

  • Bulan.
  • Otomatis, mengikuti current date, disesuaikan untuk future order

DD

Numeric (01 – 31)

  • Tanggal dalam satu bulan.
  • Otomatis mengikuti current date, disesuaikan untuk future order.

XXXXX

Numeric (00001 – 99999)

  • nomor urut per site
  • bisa di-reset setiap hari atau setiap bulan.
  • Otomatis, mengikuti counter.
_Rules_ dalam _test ordering_: 1. _default test ordering_ adalah untuk _current date_ (saat ini) 2. dimungkinkan untuk melakukan _future order_. Komponen YY, MM dan DD (serta XXXXX) disesuiakan dengan tanggal dimana _test order_ tersebut akan (menjadi beban [\[7\]](#footnote-7)kerja yang) dikerjakan. 3. tidak bisa _back date_. #### Specimen Management _Specimen management_ meliputi _activities_:

Activities

Tasks

Notes

Collection

  • phlebotomy/pengumpulan specimen.
  • print specimen labels dan labeling.
  • scan setiap collection labels untuk mencatat penerima, tube/container yang diterima dan waktu penerimaan.
  • scan collection labels juga berarti pencatatan consumables (tube, needle, wing needle, urine container, dll)
  • catat data tambahan[8]: detak jantung, tekanan darah, berat dan tinggi badan, pemeriksaan awal lainnya.
  • Catatan specimen collection date-time menandai dimulai-nya clotting-time[9], bisa digunakan untuk menentukan waktu yang tepat untuk sentrifugasi
  • specimen rujukan tidak melalui collection activity.
  • diijinkan untuk ganti SpecDefID, yang berarti mengganti SID dan pencetakan label baru

Transport

  • packing specimen ke dalam kemasan sekunder/tertier
  • cetak packing labels dan labeling kemasan specimen.
  • kirim specimen dari collection point ke reception point.

Reception

  • scan setiap collection labels untuk mencatat penerima, tube/container yang diterima dan waktu penerimaan.
  • diijinkan untuk ganti SpecDefID, yang berarti mengganti SID dan pencetakan label baru

Preparation

  • centrifuge
  • aliquot
  • cetak additional collection labels untuk aliquot
  • pre-treatment (tambahan additive dll)

Primary Specimen & Secondary Specimen **Primary specimen** adalah specimen yang diambil langsung dari pasien, dalam pencatatannya tidak memiliki parent. Wadah primary specimen disebut **primary container** (termasuk di dalamnya primary tube) **Secondary specimen** adalah specimen turunan dari primary specimen, sehingga memiliki parent dalam record-nya. Secondary specimen ditempatkan dalam secondary container (termasuk di dalamnya, secondary tube) Hal-hal yang termasuk _specimen management_: - multiple identical specimen, yaitu pengelolaan beberapa specimen (container) identik. Glukosa puasa, 2Hr PP, dll - [Specimen type](#_Specimen). Yaitu definisi material yang akan diperiksa (_specimen_), sesuai _coding_ _system_\-nya masing-masing dan berkaitan dengan _specimen role_. - **Specimen additives**. Yaitu definisi bahan _additive_ _specimen_. - **Specimen collection method**. Yaitu prosedur atau proses untuk mendapatkan _specimen_. - **Specimen source site**. Menentukan sumber _specimen_. Misalnya, jika biopsi hati diperoleh melalui jarum perkutan, sumbernya adalah ‘hati’. - Specimen collection site - **Specimen role**. Tidak semua _specimen_ berasal dari pasien. Bisa saja berupa _E_QC _materials_, _blood bag sample_, _internal QC materials_, dll. - **Specimen identification**. Meliputi: - definisi specimen (nama, kode), data container yang digunakan tiap specimen - relasi specimen dengan tes dan test order. - setiap specimen termasuk _aliquot_ memiliki identitasnya sendiri yang disebut _Sample ID_ (**SID**). SID sama dengan _tube number_ atau _container number_. Selanjutnya dalam dokumen ini menggunakan SID. - _interfacing_ dengan piranti-piranti pencetak label. - **Specimen Status**. Yaitu _activities_ specimen di tahapan pra-analitik, analitik dan pasca analitik. (tabel specimen status dan kondisinya).. Table 2 Specimen status | **SiteID** | **LocationID** | **EquipmentID** | **Activity** | **ActivityName** | **ActRes** | **Specimen Status** | **Keterangan** | | --- | --- | --- | --- | --- | --- | --- | --- | | HospA | IRNA_A | | AS001 | Collection | | To be collected | | | HospA | IRNA_A | | AS001 | Collection | Failed | Collection failed | diambil | | HospA | IRNA_A | | AS001 | Collection | Success | Collected | diambil kedua kalinya. | | HospA | | | AS002 | Transport | | In-transport | | | HospA | | | AS002 | Transport | Failed | Transport failed | | | HospA | | | AS002 | Transport | Success | Arrived | Tiba di lab | | Lab | | | AS003 | Reception | Failed | Rejected | diterima di Lab | | Lab | | | AS003 | Reception | Success | Received | | | Lab | | | AS004 | Preparation | | Pre-analytical | Sentrifugasi | | Lab | | | AS004 | Preparation | Failed | Pre-analytical failed | | | Lab | | | AS004 | Preparation | Success | Pre-analytical | Serum/plasma ready | | Lab | | | AS004 | Preparation | | Pre-analytical | Aliquoting | | Lab | | | AS004 | Preparation | Failed | Pre-analytical failed | | | Lab | | | AS004 | Preparation | Success | Pre-analytical | _Secondary tube ready_ | | | | | AS005 | Dispatching | | In-transport | dikirim ke lab rujukan | | | | | AS005 | Dispatching | Failed | Transport failed | dikirim ke lab rujukan | | | | | AS005 | Dispatching | Success | In-transport | dikirim ke lab rujukan | | LabRujukan | | | AS003 | Reception | | In-transport | | | LabRujukan | | | AS003 | Reception | Failed | Rejected | | | LabRujukan | | | AS003 | Reception | Success | Received | diterima di lab rujukan | | LabRujukan | | Instrument[\[10\]](#footnote-10) | AS003 | Reception | | To be analyze | | | LabRujukan | | Instrument5 | AS003 | Reception | Failed | Analytical failed | | | LabRujukan | | Instrument5 | AS003 | Reception | Success | Analytical | diterima di Instrument[\[11\]](#footnote-11) | | Lab | Ref_1[\[12\]](#footnote-12) | | AS003 | Reception | | To be stored | | | Lab | Ref_1 | | AS003 | Reception | Failed | Store failed | | | Lab | Ref_1 | | AS003 | Reception | Success | Stored | disimpan di refrigerator | | | Tungku_1 | | AS003 | Reception | | To be destroyed | Akan dimusnahkan | | | Tungku_1 | | AS003 | Reception | Failed | Failed to destroy | Gagal dimusnahkan | | | Tungku_1 | | AS003 | Reception | Success | Destroyed | Sudah dimusnahkan | - **Specimen transport.** Merupakan fungsi memindahkan/mengirimkan specimen dari satu tempat ke tempat lain, baik di dalam fasyankes maupun keluar (_site to site_ lain – rujukan). Termasuk di dalamnya, fungsi-fungsi: - _pakcage identification_ - identitas pengirim dan penerima - pencatatan waktu dan lokasi serah terima - pencatatan kondisi specimen selama transport (suhu, dll) - **Specimen Preparation**. Yaitu persiapan specimen (pra-analitik) untuk dianalisis. Termasuk diantaranya sentrifugasi, penambahan aditive, _pretreatment_ untuk memisahkan _supernatant_, dll - **Specimen storage.** Yaitu penyimpanan specimen pra-analitik (untuk kepentingan _pooling_, _scheduling_) dan pasca analitik (_sample retention_). termasuk: - suhu penyimpanan 🡪 mempengaruhi _long/short term storage_ - jumlah _thawing_/_fresh-thaw cycles_. **SID** sepanjang 17 karakter dengan ketetuan sebagai berikut: **<Order ID>SSSC atau LLYYMMDDXXXXXSSSC** dimana: | | | | | --- | --- | --- | | **Komponen** | **Tipe data & range** | **Arti & ketentuan** | | **LLYYMMDDXXXXX** | | Order ID | | **SSS** | Numeric, (001 – 999) | _[container code](#_Specimen)_ | | **C** | Numeric, (0-9) | _count_, menandakan _container_ ke-C | SID berlaku di semua _sites_ dalam lingkungan _muti-sites_. SID dari _source site_ digunakan untuk memproses _specimen_ di _production site_. #### Test Result Management System mampu mengelola hasil-hasil test, meliputi: - hasil kalibrasi, QC, pasien - data-data penunjang lainnya. Table 3 Test Life Cycle

Life Cycle Activity

ISO 15189 Clause

Task Includes

  1. Test Ordering

5.4.3

Order Form

  • Initiated by a clinician or system. Result of Test Ordering activity.
  • Includes patient ID, specimen type, test type, urgency, and clinical notes
  • May be electronic (HL7 ServiceRequest) or paper-based

Specimen Reception

in the lab

  1. Test Scheduling

5.4.4

Specimen Collection

  • Assigns time slot, lab section, and priority. Tests are assigned to workstation.
  • May batch similar tests for efficiency
  • Links to specimen availability and equipment readiness;
  1. Test Preparation

5.4.5

Pre-analytical Process

  • Includes reagent setup, calibration, and control checks
  • Verifies specimen integrity and compatibility
  • Logs technician identity and pre-analytical conditions
  1. Test Execution (analytical)

5.5

Analytical Phase

  • Actual analytical procedure (e.g., PCR, ELISA, hematology)
  • Performed manually or via automated analyzers
  • Captures instrument logs

UniDirectional

2Directional Push

2Directional Query

Specimen in

User input data

Analyse

Data tx to inst.

Specimen in

Analyse

Specimen in

Query

Data tx to inst

Analyse

  1. Quality Control

5.6

Quality Assurance

  • Runs internal and external controls
  • Validates test performance (e.g., sensitivity, specificity)
  • May trigger repeat testing if control fails
  1. Result entered

  • Captures raw data, flags from instrument.
  • Results entered by user manually
  1. Preliminary result

  • Nilai-nilai mendesak, kritis yang dikomunikasikan segera, ditandai sebagai sementara.
  1. Result Interpretation

5.7

Result Review

  • Converts raw data into clinical meaning
  • May involve reference ranges, algorithms, or scoring systems
  • Reviewed by lab personnel or auto-validated
  1. Result Reporting

5.8

Reporting of Results

  • Transmitted to HIS, LIS, or EHR
  • Includes test name, result, units, reference range, and interpretation
  • May be mapped to HL7 FHIR Observation or DiagnosticReport
  • pelaporan nilai kritis
  1. Result Verification (& Clinical Validation)

5.9

Verification

  • Reviewed and signed off by authorized personnel
  • May include second-level review for critical values
  • Logged for audit and compliance
  1. Clinical Correlation (Clinical Review)

5.10

Clinical Advice

  • Clinician reviews results in context of patient history
  • May trigger follow-up tests, treatment, or consultation
  1. Correction

  • Correction to previous reported result
  1. Archiving

5.11

Record Retention

  • Test data stored for legal, research, or quality purposes
  • Duration depends on jurisdiction and test type
  1. Audit & Traceability

4.14

Traceability

  • Every step logged: who did what, when, and how
  • Supports ISO 13485, ISO 15189, and CAP standards
Table 4 Test activity & status

TestActivity

ActRes

TestStatus

Description

HL7

ORD (Test Ordering)

<null>

Future test order

Order untuk beberapa hari kedepan. Masuk ke jadwal di EffDate (ordertest.effdate)

ORD (Test Ordering)

Success

Test ordered

Order untuk hari ini. Otomatis dijadwalkan hari yang sama.

O

ORD (Test Ordering)

Failed

Test ordering failed/cancelled

Order dibatalkan. Keluar dari jadwal.

X

SCH (Scheduling)

<null>

Waiting to be scheduled

< >

SCH (Scheduling)

Success

Test is scheduled

Order sudah masuk jadwal pengerjaan.

S

SCH (Scheduling)

Failed

Schedule failed

Order dikeluarkan dari jadwal.

ANA (Analyse)

<null>

Waiting to be analyse

  • instrument sudah query dan sudah direspon.

ANA (Analyse)

Success

Analysed

Hasil sudah selesai dan available

R

ANA (Analyse)

Failed

Analysis failed

  • kerusakan instrument.
  • specimen tidak bisa di-analisis
  • dll

REP_P (Reporting Preliminary)

<null>

Unacknowledged transmission of preliminary to Host

Preliminary result dikirim ke Host tetapi belum mendapat aknowledge.

REP_P (Reporting Preliminary)

Success

Acknowledged transmission of preliminary to Host

Preliminary result dikirim ke Host, sudah mendapat aknowledge.

P

REP_P (Reporting Preliminary)

Failed

Failed transmission

Preliminary result gagal dikirim ke Host.

VER (Result Verification /Technical Validation)

<null>

Waiting to be verified

< >

VER (Result Verification /Technical Validation)

Success

Verified

VER (Result Verification /Technical Validation)

Failed

Verification failed

VAL (Clinical Validation / Clinical Review)

<null>

Waiting to be reviewed

VAL (Clinical Validation / Clinical Review)

Success

Reviewed

F

VAL (Clinical Validation / Clinical Review)

Failed

Review failed

REP (Reporting)

<null>

Waiting to be reported

Result dikirim ke Host tetapi belum mendapat acknowledge.

REP (Reporting)

Success

Reported

Result dikirim ke Host, sudah mendapat acknowledge.

REP (Reporting)

Failed

Reporting failed

Result gagal dikirim ke Host.

COR

<null>

Correction

Koreksi hasil dikirim ke Host tetapi belum mendapat acknowledge.

COR

Success

Correction

Koreksi hasil dikirim ke Host dan mendapat acknowledge.

COR

Failed

Correction

Koreksi hasil gagal dikirim ke Host

Table 5 Definisi jenis test | | | | | | | --- | --- | --- | --- | --- | | **Definisi Jenis Test** | **Description** | **Inventory[\[13\]](#footnote-13)** | **Specimen** | **Display[\[14\]](#footnote-14)** | | _Test_ | _Atomic test_, yaitu tes yang dikerjakan oleh fasyankes. | Ya | Ya | Ya | | _Parameter_ | Tambahan data yang bisa saja menjadi faktor dalam _Calculated Test_. Bisa diisi di luar _Result Entry session_. | Tidak | Tidak | Ya | | _Calculated Test_ | Hasil perhitungan satu atau lebih Test atau _Parameter_. | Tidak | Tidak | Ya | | _Profile_ | _Grouping_. Terdiri dari beberapa test yang dikerjakan menggunakan _specimen_ yang sama. Misalnya: Lipid Profile, Electrolyte, dll. 🡪 **Department** | Tidak[\[15\]](#footnote-15) | Tidak[\[16\]](#footnote-16) | Tidak | | _Functional Procedure_ | _Grouping_. Terdiri dari beberapa pengukuran yang terkait satu sama lain. Biasanya dilakukan di waktu /menggunakan specimen yang berbeda Misalnya: Glucose Tolerance Test, Creatinine Clearance, dll. 🡪 **Department**. | Tidak13 | Tidak14 | Tidak | | _Superset_ | _Grouping_. Terdiri dari beberapa test/parameter terlepas dari ikatan specimen. Misalnya paket MCU, Panel Rutin (CBC, UA, electrolytes), dll. 🡪 **Non-Department**. | Tidak13 | Tidak14 | Tidak | | _Title_ | Judul. Misalnya: Fungsi Hati, Fungsi Ginjal, dll. 🡪 **Non-Department**. | Tidak | Tidak | Ya | _Profile_, _Functional_ _Procedure_ dan _Superset_ dijadikan satu jenis yaitu **_Group Test_** Table 6 Definisi jenis hasil test | | | | --- | --- | | **Definisi Jenis Hasil Test** | **Description** | | _Numeric_ | Hasil berupa angka (_numeric_) tunggal. | | _Range_ | Hasil berupa rentang angka (_numeric range_). Misalnya hasil Eritrosit Sedimen Urin adalah 0 – 1 /LPB | | _Text_ | Hasil berupa teks bebas. | | _Value set_ | Hasil teks tertentu yang telah didefinisikan dalam _Value Set_. | Table 7 Definisi jenis nilai rujukan | | | | --- | --- | | **Definisi Jenis Nilai Rujukan** | **Description** | | _Range_ | Nilai rujukan berupa _range_ | | _Threshold_ | Nilai rujukan berupa _cut-off_ dan _grayzone_. | | _Value Set_ | Nilai rujukan berupa _text_. Flag bisa ditampilkan jika tidak sama, | | _Text_ | Nilai rujukan berupa _text_, lebih untuk deskripsi. | Test Result Management meliputi fungsi-fungsi sebagai berikut: - **Test Library**. Yaitu definisi test berikut nilai rujukannya sesuai usia, gender dan jenis sample pasien. Termasuk: - relasi test dengan jenis _specimen_ dan _specimen container_. - Sinkronisasi test baru dengan _host_, termasuk **_user notification_** jika menerima _test code_ baru dari host. - relasi dengan _discipline_ untuk pengelompokan secara keilmuan - relasi dengan _workstation_ untuk ditribusi pekerjaan - **Test Production**, termasuk di dalamnya: - distribusi produksi test baik _intra site_ (dalam site yang sama), _inter sites_ (antar site yang berbeda) maupun merujuk ke laboratorium di luar. - distribusi produksi _intra site_ termasuk distribusi produksi test ke: - _department_ - _workstation_ - _instrument_/_equipment_ - _Test Referring_. Yaitu pengelolaan test rujukan baik di dalam _system_ yang sama (_multi sites_) maupun berbeda (dengan mengirim hasil antar laboratorium). - **Result acquisition**. Termasuk: - penerimaan hasil dari instrument - penerimaan hasil memicu rerun - rerun manual - **Test Production Analysis**. Monitoring jumlah tes yang diproduksi setiap instrument/site atau keseluruhan. Analisis produksi test dengan bahan yang digunakan (kesesuaian jumlah tes dengan reagen). - **Reagent identification & inventory**. Identifikasi unik reagen untuk _traceability_ dan memudahkan analisis. Pencatatan dan pelaporan penggunaan barang habis pakai yang digunakan dalam produksi test - **Test Results Archive**. Adalah akumulasi dari semua tes yang dikerjakan di sites, meliputi kalibrasi, kontrol, hasil pasien (anonym). Bertujuan untuk analisis statistik dan system monitoring. Konsep pengelolaan hasil tes adalah sbb: Gambar Mapping & transmission Gambar Multiple sites connection to server | **Server (on premise/cloud)** | **Replikasi** | **Workstation (on premise)** | | --- | --- | --- | | patient

patcom

patdiag | 🡪

🡪

🡪 | | | order

ordercom | 🡪

🡪 | | | specimens

specimencollection | 🡪

🡨 🡪

🡪 | | | testdefsite

testdeftech | 🡪

🡪 | | | patres

patresflag

patrestech | 🡨 🡪

🡨

🡨 🡪 | | - Kode test dari instrument dipetakan ke LQMS. Relasi instrument – LQMS bisa one to many, misalnya pada tes glukosa. - Kode test dari LQMS dipetakan ke database di server SUMMIT - Hasil tes yang meliputi kalibrasi, QC dan hasil pasien, dikirimkan instrument ke LQMS melalui koneksi LAN/RS232 menggunakan protocol HL7/ASTM/db connection, secara real-time. - Hasil tes di LQMS di-replikasi ke server SUMMIT melalui secured VPN. Replikasi dilakukan secara batch. #### Result Reporting Pelaporan hasil pasien yang utama adalah _result report_, menggunakan struktur yang terdiri dari: - **Header** / Administrative Data, terdiri dari: - _Patient identifiers_ (nama, PID, DOB, sex, dll) - _Encounter details_ (Visit ID, _admission_/_discharge_ _dates_) - _Ordering provider_ (_referring_/_attending doctor_, dll) - _Report identifiers_ (Order ID, dll) - Date/time of specimen collection, receipt, and result release - **Specimen Information** - Specimen type (blood, urine, stool, tissue, etc.) - Collection method (venipuncture, biopsy, swab) - Specimen ID/barcode - Condition/quality notes (hemolyzed, insufficient volume) - **Test** / Observation Results. Each test result is structured with: - Test code (LOINC or local code) - Test name (e.g., Glucose, HbA1c, LDL) - Result value (numeric, qualitative, or textual) - Units (UCUM standard, e.g., mg/dL, mmol/L) - Reference range (normal values by age/sex) - Interpretive flags (H = high, L = low, A = abnormal) - Methodology (e.g., ELISA, PCR, ISE) - Performing lab (location, CLIA/ISO accreditation) - **Interpretation** / Narrative - Pathologist or clinician comments - Clinical correlation (e.g., “Suggestive of iron deficiency anemia”) - Recommendations (follow-up tests, repeat sampling) - **Authentication** - Authorized sign‑off (lab director, pathologist, or attending physician) - Digital signature or electronic validation - Date/time of report finalization Tampilan test diatur menggunakan struktur discipline – panel[\[17\]](#footnote-17). Panel bisa bersifat _nested_, dengan relasi _parent_/_child_. Fixed Panels & Flexible Panels _Fixed Panels_, adalah panel baku yang berlaku di kebanyakan laboratorium. Misalnya: Darah Lengkap, Fungsi Ginjal, Fungsi Hati, Urin Rutin, Hemostasis, dll. _Flexible Panels_, adalah panel yang dibuat laboratorium atau klinisi untuk tujuan tertentu. Misalnya: Pre‑op Panel, terdiri dari Darah Lengkap + Koagulasi + Elektrolit. _Flexible Panels_ dikelola dengan GRP. Pengaturan: - _Fixed Panels_ dan _Flexible Panels_ berupa definisi di table fixpanel dan namanya tercetak di _report_, di atas semua tes yang menjadi bagian dari keduanya. - pada _nested panels_, _parent panel_ ditampilkan/dicetak di atas _child panel_. #### Calibration Management Pengelolaan kalibrasi meliputi: 1. **Calibrator identification**. Identifikasi unik bahan calibrator untuk _traceability_ dan memudahkan analisis. 2. **Calibration Process**. Aplikasi mengelola tahapan proses kalibrasi sebagai salah satu Tindakan quality management: - Pencatatan penerimaan bahan kalibrator di site (lihat Inventory Management). - Persiapan bahan: pengenceran, aliquoting, pencatatan tanggal buka vial. - Tindakan kalibrasi: jenis test yang dikalibrasi, pencatatan hasil 3. **Multi-Calibrator, Multi-Level**. Aplikasi mampu mengelola hasil-hasil kalibrasi (_factor_, _absorbance_) lebih dari satu bahan/merek/nama dan berbagai level. Termasuk perubahan no lot dan nilai target masing-masing kalibrator untuk tiap test. 4. **Calibration parameter check**. Fungsi ini membandingkan parameter kalibrasi yang di-_set_ di instrument (Table 61 calparinst) dengan yang tercantum di kit inserts (Table 59 caldef). Jika ditemukan _discrepancy_, maka otomatis akan ada flag “Require manual validation”. | | | | --- | --- | | **caldef fields** | **calparinst fields** | | Calibrator | Calibrator | | LotNumber | LotNo | | ExpiryDate | ExpiryDate | | Reagent | TestInstID1 🡪 Reagent (Table 52. testdef) | | SpcTypeID | SampleType | | Level | Level | | Value | Concentration | | Unit | CalUnit | | InstrumentAlias | EquipmentID 🡪 InstrumentAlias | | | | 1. **Calibration result check**. Fungsi ini membandingkan hasil kalibrasi dengan nilai target yang tercantum di kit inserts dengan nilai target yang di-_setting_ di setiap instrument. Jika ditemukan _discrepancy_, maka otomatis akan ada flag 2. **Cumulative View**. Adalah fungsi untuk: - Menampilkan factor kalibrasi setiap test berdasarkan urutan waktu. - Membandingkan factor kalibrasi setiap test berdasarkan urutan waktu, dari beberapa instrument sejenis. 3. **Statistical Analysis**. Yaitu menghitung dan menampilkan ukuran-ukuran statistik (mean, SD, CV dan Standard Deviation Interval (SDI)) dari variable factor kalibrasi: - Menghitung dan menampilkan ukuran-ukuran statistic per test dari suatu instrument - Flagging untuk factor yang melewati x% dari mean. - Menghitung dan menampilkan ukuran-ukuran statistic per test dari beberapa instrument sejenis dan menggunakan kalibrator yang sama. 4. **Kit inserts repository**. Kit inserts bisa diupload ke server pusat sebagai lampiran dan berfungsi sebagai underlying data bagi fungsi Calibrator check. #### Quality Control Management Pengelolaan Quality Control (QC) meliputi: 1. **QC identification**. Identifikasi unik bahan QC untuk _traceability_ dan memudahkan analisis. 2. **Quality Control Process**. Aplikasi mengelola tahapan proses QC sebagai salah satu tindakan quality management: - Pencatatan penerimaan bahan QC di site (lihat Inventory Management). - Persiapan bahan: pengenceran, aliquoting, pencatatan tanggal buka vial. - Tindakan QC: jenis test, level, pencatatan hasil - Validasi 3. **Multi-Control, Multi-Level**. Aplikasi mampu mengelola hasil-hasil QC lebih dari satu bahan/merek/nama dan berbagai level control. Termasuk mengelola nilai target masing-masing control untuk tiap test. 4. **Pengelolaan Perubahan nomor Lot. QC**. Aplikasi mampu mengelola perubahan nomor lot control termasuk menyesuaikan tampilan layar dan cetakannya. 5. **Levey-Jennings Chart**. Aplikasi mampu menampilkan hasil-hasil control dalam grafik Levey-Jennings dengan parameter statistic masing-masing (Mean, 1SD, 2SD): - 1 level control dari satu laboratorium - multi-level control dari satu laboratorium - 1 level control dari user selected laboratoium (beberapa instrument) - Multi-level control dari user selected labratorium (beberapa instrument) - Flagging jika suatu nilai berada di luar batas statistik 1. **Six-Sigma**. Aplikasi mampu menghitung Sigma score masing-masing test dan tersedia pilihan _True_ _Value_: - User-defined (misalnya menggunakan external QC) - Rerata QC harian 2. **Z-Score** berdasarkan method, instrument, peer. 3. **QC check**. Fungsi _QC check_ membandingkan nilai target yang tercantum di kit inserts dengan nilai target yang di-_setting_ di setiap instrument. Jika ditemukan _discrepancy_, maka otomatis akan ada flag. 4. **QC validation**. Jika hasil QC di dalam batas 2SD maka otomatis tervalidasi, sebaliknya akan memicu alert dan memerlukan validasi manual. 5. **Kit inserts repository**. Kit inserts bisa diupload ke server pusat sebagai lampiran dan berfungsi sebagai _underlying_ _data_ bagi fungsi Calibrator check. #### Analisis Statistik per Site/Instrument #### Automatic Data Retrieval Aplikasi terhubung online (real time/batch processing) dengan instrument-instrument laboratorium atau entitas lain melalui mekanisme: - instrument interfacing berbasis ASTM/HL7 - database connection (Lampiran 1) - file-based integration (Lampiran 2) Aplikasi mampu menerima data-data berikut dari: - absorban kalibrasi termasuk perulangannya - hasil control termasuk perulangannya - data sample (nomor sample, jenis sample) - hasil pasien termasuk perulangannya - waktu pengerjaan semua aktivitas di atas #### Medical Coding Aplikasi mampu menggunakan berbagai macam coding system (LOINC, SNOMED, dll). #### Billing/Collection Aplikasi mampu mengelola billing atas layanan yang dilakukan, antara lain: 1. **_multiple tariff_**, yaitu kemampuan untuk membedakan harga untuk setiap kelas layanan. 2. **_multiple component_**, yaitu kemampuan untuk mendefinisikan komponen penyusun harga. 3. **_effective date time_**, yaitu _setting_ waktu dimana harga mulai berlaku. #### Data Acquisition Aplikasi mampu melakukan akuisisi data secara: - **On-line**, yaitu melalui _instrument connection_. Agar fungsi ini berjalan, dibutuhkan: - **Instrument library**. Aplikasi menyimpan data instrument yang digunakan site. - **Multi-protocol**. Aplikasi mampu berkomunikasi dengan instrument menggunakan berbagai macam protocol (ASTM, HL7). - **Secure connection**. Koneksi dengan instrument dilakukan melalui sambungan yang aman. - **Manual**, yaitu melalui ekstraksi database, csv file atau text file. #### Inventory Management Aplikasi mempunyai fungsi-fungsi sebagai berikut: - **Catalog**. Aplikasi menyimpan data barang dan jasa yang dipasarkan Perusahaan dan berbagai perusahaan diagnostic lainnya. Termasuk fungsi: - Sorting barang/jasa berdasarkan vendor, jenis barang/jasa - Pencarian barang/jasa tertentu. - Meyimpan dan menampilkan gambar barang - **In-instrument consumables identification**. Aplikasi mampu mengidentifikasi identitas kalibrator, control, reagen dan consumables yang terpasang di instrument - **Procurement**. Site bisa menggunakan aplikasi untuk menyusun rencana pembelian barang dan jasa yang dibutuhkan. - **Penerimaan dan penyimpanan barang**. Aplikasi mengelola proses penerimaan barang di _site_ melalui mekanisme transaksi _inventory_. Pada saat penerimaan, _user_ mencatat: - Identitas barang, jumlah, no. lot, expiry date - Identitas penerima - Waktu penerimaan barang - Tempat penyimpanan barang - **Pencatatan**. Pencatatan penggunaan barang habis pakai di-_trigger_ oleh _activity_ yang dilakukan pada _object_. Misalnya: | | | | | --- | --- | --- | | **Activity** | **Obyek** | **Representasi Obyek** | | Collection | Specimen | SID | | Execution | Test_QC | TestCode | | Execution | Test_patient | TestCode | - **Monitoring**. Aplikasi bisa digunakan untuk: - menampilkan barang di tempat penyimpanan (_counter_[\[18\]](#footnote-18)) dalam berbagai tingkat satuan (pack- pcs, kit-vial-test, dll). Aplikasi hanya menampilkan counter dari site dimana user melakukan log in. - memantau jumlah dan _expiry date_ barang di inventory tiap site - menampilkan/memberi peringatan jika ada barang yang telah berada di bawah minimum stok, dll. - **Karantina dan pemusnahan barang**. - **Analysis**. Aplikasi bisa digunakan untuk melakukan analisis efisiensi. #### Error Management Aplikasi mempunyai fungsi-fungsi pencatatan (log) dan tindakan otomatis jika terjadi error. Pencatatan dilakukan dengan menerapkan **prinsip audit**, yaitu mencatat (_to log_): - data yang diubah (**what**), sehingga perlu pencatatan detail: - operasi/_activity_ yang dilakukan - nama table - nama field - previous value - kapan terjadinya operasi/_activity_ (**when**) - siapa yang melakukan operasi/_activity_ (**who**) - bagaimana operasi/_activity_ dilakukan (**how**) yaitu dengan mencatat applicationID, halaman web, _session_, _event_, mekanisme (manual atau perulangan dari instrument – _duplo_) 🡪 _system identification_. - dari lokasi mana operasi/_activity_ dilakukan (**where**), yaitu site, _workstation_, pc dimana operasi/_activity_ dilakukan (termasuk informasi lokasi) 🡪 _access location_. - alasan operasi/_activity_ (**why**), diinput oleh user yang melakukan operasi/_activity_ Jenis-jenis log yang digunakan dalam audit trail adalah: 1. **_data log_**, yaitu _log of events_ (catatan kejadian) terkait data. Antara lain: 1. operasi data demografi pasien, _visit_, _test ordering_, _samples_, hasil dan semua yang terkait dengan pasien 2. operasi data _user_ 3. operasi data _master_ (tests, location, doctors, dll) 4. _data archiving activity_ 5. kegagalan (_transaction errors_), misalnya kegagalan _posting_ _database_, dll 2. **_service log_**, yaitu catatan kejadian terkait _services_ [\[19\]](#footnote-19). Antara lain: 1. komunikasi: _host communication_, _instrument communication_, dll 2. _resource access_: database access/backup/restore, network access, internet access, (IP address & port), dll. 3. manual/automatic _printing_ (_service class_) 4. manual/automatic _messaging_ 5. kegagalan (_system error_) 3. **_security log_**, yaitu catatan kejadian terkait pengaturan akses, hal-hal terkait lintas boundary: 1. user logins and logouts (_security class_) 2. accessing sensitive files/folders 3. network share access attempts 4. perubahan system security settings 5. percobaan input password yang gagal 6. install/uninstall aplikasi 7. system shutdown/restart events 8. perubahan user access (_disabled_, perubahan _access rights_, dll) 9. kegagalan (_security error_) 4. **error log**, yaitu catatan kejadian error. Error log ada untuk setiap entity, misalnya: 1. instrument error log 2. integration error log 3. dll #### Archiving **Operational system**[\[20\]](#footnote-20) adalah sistem yang beroperasi rutin, digunakan memproses pekerjaan sehari-hari. **Datawarehouse** [\[21\]](#footnote-21)adalah sistem yang digunakan untuk _reporting_ dan _data analysis_. Konsep fungsi archiving - _Archiving_ berarti memindahkan data dari operational system ke _data warehouse_. - Obyek _archive_ adalah hospitalization record berikut detail record-nya (test order) dan merupakan data yang valid/benar. Bukan test order yang tidak ada hasilnya atau tidak selesai/lengkap. 🡪 perlu kriteria data yang layak untuk archive. - _Archive_ bisa dilakukan secara otomatis atau manual. - Struktur table pada _datawarehouse_ berbeda dari operational system dan menitikberatkan pada efisiensi, efektifitas dan kemudahan _reporting_ dan _analysis_. - Data yang sudah di-_archive_: - tidak bisa/boleh di-edit lagi atau dihapus - bisa ditampilkan bersama data yang belum di-archive dalam bentuk cummulative/ historical untuk kepentingan membandingkan hasil. ### Non-Functional Requirements[\[22\]](#footnote-22) Realisasi _non-functional requirement_ tidak terbatas pada satu bagian sistem saja. - _Flexible_: - _Multi-platform_: bisa dijalankan di MS Windows maupun Linux - bisa di-install _on-premise_ maupun _on-cloud_. - _Cost effective and efficient_: - bisa dijalankan di _hardware_ dengan harga ekonomis. - _quick implementation_. - _Scalable_: - _Interoperability_ - support international standard protocols (HL7, FHIR, ASTM) - bisa di-integrasikan dengan SUMMIT CRM - memiliki _user interface_ yang menarik dan mudah dipahami (menampilkan grafik _Levey-Jennings_ dll). - _Secure_: - - _user login_ - _anonymous patient data_, etc.) - _encrypted sensitive data_ (_password_, _patient identification_, dll). ## Model Use Case Model use case Utama terdiri dari 2, yaitu: 1. CLQMS 2. CLQMS – SMCRM Integration 3. CLQMS – Datawarehouse Integration ### CLQMS Aktor adalah berbagai orang (atau perangkat) yang menggunakan sistem atau produk dalam konteks fungsi dan perilaku yang akan dijelaskan. Aktor mewakili peran yang dimainkan orang (atau perangkat) saat sistem beroperasi. Jenis-jenis aktor: - **Aktor utama (U)**: memulai interaksi untuk mencapai suatu tujuan (misalnya, analis laboratorium memasukkan hasil). - **Aktor sekunder (S)**: mendukung atau menyediakan layanan kepada CLQMS (misalnya, Instrumen mengirimkan data hasil pemeriksaan). - **Aktor sistem eksternal (E)**: sistem perangkat lunak atau perangkat keras lain yang berinteraksi dengan CLQMS.

Aktor

Jenis

Tanggung Jawab/Wewenang

Admin Lab / Clerk

U

  • order entry, cetak hasil.

Analis Lab

U

  • order entry, kalibrasi, pecimen collection, specimen reception, persiapan sample (sentrifugasi, aliquot, merujuk, dll)
  • pemeriksaan otomatis/manual
  • result entry, validasi teknis hasil pasien, mengubah hasil, cetak hasil.
  • mengulang pemeriksaan
  • pengelolaan QC (order, run/rerun, validasi, comment, review, reporting)

Analis Lab Senior

U

  • memiliki semua wewenang Analis Lab, ditambah validasi klinis

Super User

U

  • Analis lab dengan pelatihan khusus, memiliki penguasaan sistem melebihi Analis Lab.
  • membuat test baru, mapping ke instrument
  • membuat definisi QC.
  • bisa bertindak sebagai system administrator – bergantung role.

Phlebotomist Lab

U

  • mengambil darah dari pasien, memastikan kebenaran identitas sample
  • specimen collection

Perawat

U

  • order entry
  • mengambil darah dari pasien, memastikan kebenaran identitas sample

DSPK/Konsulen

U

  • Dokter Spesialis Patologi Klinik
  • bertanggung jawab atas hasil pasien
  • validasi klinis
  • memantau hasil kalibrasi dan QC
  • procurement instrument, consumables, lab equipment.

Supervisor Lab

U

  • mengelola penjadwalan, inventory
  • mengeloala keamanan (security) dan keselamatan (safety), termasuk keamanan data, menentukan hak akses setiap pengguna, dll.
  • pengawasan lab harian – efisiensi, efektivitas, produktivitas
  • pelaporan statistik lab
  • pelaporan inventory
  • pelaksanaan standarisasi (akreditasi, ISO 15189, dll)

Manajer Lab

U

  • bertanggung jawab atas pengelolaan lab – efisiensi, efektivitas, produktivitas, keamanan (security), keselamatan (safety).
  • perencanaan mutu
  • procurement instrument, consumables, lab equipment.
  • analisis data statistik
  • analisis data inventory

Pasien

  • memberikan data demografi yang benar dan lengkap.

DPJP

U

  • Dokter Penanggung Jawab Pasien/Klinisi. Attending Doctor.
  • diagnosis, order entry
  • menerima hasil pasien

Database Administrator

U

  • mengelola database (backup, restore dll)
  • bertanggung jawab terhadap keamanan data

System Administrator

U

  • mengelola aplikasi, jaringan (instalasi, maintenance, dll)
  • bertanggung jawab terhadap keamanan system

IVD Instrument

S

  • menerima test order
  • mengirimkan hasil pasien

POCT Instrument

S

  • menerima test order
  • mengirimkan hasil pasien

Wearables

S

  • mengirimkan hasil pasien

Auditor

S

  • Internal/External auditor.

HIS

E

  • kirim data pasien dan test order
  • menerima data hasil pasien

Billing System

E

  • feed data pasien dan test order
  • menerima data hasil pasien, menggunakannya untuk kepentingan billing.

Government System

E

  • Misalnya Satu Sehat
  • menerima data hasil pasien.

Queuing System

E

Data Warehouse

E

  • Menerima data pasien, test order, hasil

Main Function

Sub-Function

Deskripsi

Patient Data Management

Patient Registration

Patient Search & Update

Patient Link

Patient Unlink

Patient Visit Management

Patient Admission

Admission Search & Update

Patient Transfer

Patient Discharge

Cancel Patient Discharge

Test Ordering

New Test Order

Test Order Search & Update

Delete Test Order

Specimen Management

Specimen Labeling

Specimen Collection

Specimen Transport

Specimen Reception

Specimen Preparation

Specimen Storage

Result Acquisition

Manual Result Entry

Instrument Result

Result Validation

Technical Validation

Clinical Validation

Patient Reports

Result Report

Cumulative Report

Organization

Account.

Sites.

Discipline.

Workstation.

Instrument.

Location type.

Location.

  • Cascade [23]dimungkinkan, misalnya Bed1, Bed2 berada dalam ruang “VIP-A”. Keduanya terdefinisi dalam table Location.
  • Termasuk pengelolaan remote location, misalnya sampling station, sampling site Medical Checkup, Home Service, dll
  • Location address. Yaitu data alamat dari lokasi, terutama remote location. Data ini penting untuk pengambilan sample di luar fasyankes. Misalnya pada Home Service

Personnel

User Definition

User type: User

User type: Account

Role Definition

Access Control

Equipment

  • Master – Equipment

Communication settings

  • comparameters

Test Management

Master – Test Definition

  • testdef
  • testdefsite
  • testdeftech
  • testdefconsumables
  • testmap

  • Master – Container
  • Master – Specimen Type
  • Master – Specimen Activity

#### Use Case – Authentication

Use Case ID

UC-01

Use Case Name

Authentication

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Phlebotomist Lab, Perawat, DSPK/Konsulen, Supervisor Lab, Manajer Lab, Database Administrator, System Administrator,

Aktor Sekunder

Tujuan

Verifikasi identitas pengguna, yang mencoba mengakses sistem, memastikan bahwa mereka adalah orang yang mereka klaim. Bertindak sebagai mekanisme keamanan primer untuk mencegah akses tidak sah, melindungi data, dan mengurangi risiko seperti pencurian identitas dan pelanggaran keamanan.

Prasyarat

Data pengguna sudah terdefinisi dalam sistem sebagai User atau Contact.

Alur Utama

  1. Aktor klik tombol Login
  2. System menampilkan login dialog yang terdiri dari User ID dan Password.
  3. Aktor memasukkan email address sebagai User ID.
  4. System memeriksa email address di table User, SiteStatus, Contact dan ContactDetail:
    1. jika Aktor menggunakan email pribadi, maka System menampilkan pilihan sites dimana Aktor memiliki akses. Aktor, kemudian memilih salah satu site
    2. jika Aktor menggunakan email site, maka System langsung mengarahkan ke site yang bersangkutan.
  5. Aktor memasukkan password.
  6. System memeriksa kebenaran User ID dan password.
  7. System memeriksa role dan menu apa saja yang bisa diakses Aktor.
  8. System menampilkan halaman utama dengan menu sesuai role Aktor.

Alur Alternatif

Alur Pengecualian

  1. Aktor tidak terdaftar
    1. System menampilkan pesan: “Unregistered user, please contact system administrator
  2. Aktor ditemukan tetapi:
    1. disabled: System menampilkan pesan: “Disabled user, please contact system administrator
    2. password expired: System menampilkan pesan: “Your password is expired, please contact system administrator
    3. password salah: System menampilkan pesan: “Invalid login
  3. System menghitung jumlah percobaan login password yang gagal dan mencatat dalam Audit log (device dimana login attempt dilakukan, waktu)
  4. System menghentikan proses login untuk User ID tersebut selama x jam dan menampilkan pesan, ”Please try again in x hours or contact system administrator

Kondisi Akhir

  1. Aktor masuk ke halaman utama dan mendapat akses menu-menu system yang sesuai
  2. Audit mencatat User ID, waktu, device dimana Aktor melakukan login.
#### Use Case – Patient Registration

Use Case ID

UC-02a

Use Case Name

Patient Registration

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Mencatatkan data demografi pasien baru ke oleh System

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi dalam System.
  3. Pasien menunjukkan identitas yang sah (kartu identitas, atau rujukan).

Alur Utama

  1. Aktor membuka halaman Patient ManagementPatient Registration.
  2. Aktor memasukkan PID.
  3. System memeriksa apakah PID sudah ada.
  4. System meminta detail pasien (nama, tanggal lahir, jenis kelamin, informasi kontak, nomor identitas, dst).
  5. Aktor memasukkan informasi demografis pasien, dengan mandatory data:
    1. patient.NameFirst
    2. patient.Gender
    3. patient.Birthdate
  6. Jika Aktor memasukkan patidt.IdentifierType dan patidt.Identifier, maka System memeriksa apakah sudah ada record pasien yang menggunakan Identifier yang sama.
  7. System membuat record baru di patvisitadt dengan patvisitadt.Code: A04 (Register), mengkonfirmasi registrasi berhasil dan menampilkan ringkasan pasien.
  8. Aktor memberikan konfirmasi pendaftaran kepada Pasien (misalnya, slip cetak atau ID digital – barcode, QRIS, dll).

Alur Alternatif

  1. Record pasien sudah ada:
    1. Aktor memasukkan PID.
    2. System mengambil record yang sudah ada dan menampilkan data di halaman Patient ManagementPatient Search & Update
    3. Aktor memperbarui data jika diperlukan
    4. Sistem menyimpan perubahan dan membuat record baru di patvisitadt dengan patvisitadt.Code: A08 (Update patient information).

Alur Pengecualian

  1. Mandatory data tidak ada:
    1. System menolak menyimpan record.
    2. Aktor diminta untuk melengkapi, setidaknya mandatory data.
  2. Record pasien tidak ada tetapi ditemukan record yang menggunakan patidt.IdentifierType dan patidt.Identifier yang sama.:
    1. System menampilkan pesan ’Multiple IDs found”.
    2. System menampilkan records dengan patidt.IdentifierType dan patidt.Identifier yang sama.
    3. Aktor melakukan review
    4. Aktor memilih salah satu dari kemungkinan berikut:
      1. melanjutkan membuat record pasien baru, mengabaikan record ganda.
      2. melanjutkan membuat record pasien baru, kemudian menggabungkan record pasien (lihat UC-02b)
      3. membatalkan pendaftaran.

Kondisi Akhir

  1. Record pasien dibuat atau diperbarui di System.
  2. PID pasien tersedia untuk test ordering & tracing.
  3. Audit mencatat bahwa record dibuat/diperbarui secara manual, User ID yang mendaftarkan/memperbarui data pasien, device dimana, kapan, dan data apa yang dimasukkan.
#### Use Case – Patient Link

Use Case ID

UC-02b

Use Case Name

Patient Link

Aktor Utama

Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Link (menghubungkan) satu atau beberapa record (PID) pasien (source) dengan record pasien lainnya (destination). PatientID destination adalah surviving entity, yang akan digunakan dalam semua aktivitas laboratorium.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi dalam System.
  3. PID source dan destination telah tercatat dalam System.
  4. PID source dan destination memiliki:
    1. patidt.IdentifierType dan patidt.Identifier yang sama atau
    2. nama, alamat dan tanggal lahir yang sama

Alur Utama

  1. Aktor membuka halaman Patient Management - Patient Link.
  2. Aktor mencari PID menggunakan:
    1. patidt.IdentifierType dan patidt.Identifier
    2. nama, alamat dan tanggal lahir
  3. System menampilkan semua PID dengan patidt.IdentifierType dan patidt.Identifier dan/atau nama, alamat dan tanggal lahir yang sama.
  4. Aktor memilih dan menentukan satu PID untuk menjadi destination. (Lihat Alur Pengecualian).
  5. Aktor memilih dan menentukan satu atau lebih, PID yang menjadi source. destination record (Lihat Alur Pengecualian).
  6. Aktor menghubungkan PID-PID tersebut dengan menekan tombol Link.
  7. System meminta konfirmasi dari Aktor dengan menampilkan pesan,” Please confirm to link these patient records”. Disertai pilihan “Confirm” dan “Cancel”
  8. Aktor mengkonfirmasi Patient Link dengan menekan tombol Confirm.
  9. System melakukan:
    1. membuat record baru di patvisitadt dengan patvisitadt.Code: A24 (Link Patient Information)
    2. mengkonfirmasi Patient Link berhasil
    3. menampilkan ringkasan PID yang dihubungkan.

Alur Alternatif

Alur Pengecualian

  1. System menemukan bahwa suatu record pasien telah menjadi source, ditandai dengan field patient.LinkTo telah terisi dengan PID dari record lain (ditampilkan).
    1. Multiple link
      1. Aktor memilih dan menunjuk record tersebut sebagai source bagi PID yang berbeda.
      2. System menampilkan peringatan “Multiple link” di samping PID tersebut dan pilihan (check mark) tidak bisa dilakukan.
    2. Multi-level Link
  2. Aktor memilih dan menunjuk record tersebut sebagai destination bagi PID yang berbeda.
  3. System menampilkan peringatan “Multi-level link” di samping PID tersebut dan pilihan (check mark) tidak bisa dilakukan.
  4. Jika semua atau satu-satunya PID mendapat peringatan tersebut maka, proses Patient Link sama sekali tidak bisa dilanjutkan.
  5. Jika ada PID lain yang tidak mendapat peringatan, maka proses Patient Link dilanjutkan atas PID tanpa peringatan.

Kondisi Akhir

  1. PID source terhubung dengan PID destination.
  2. Relasi source dengan test order dan lain-lain tidak berubah sebelum dan sesudah proses Patient Link.
  3. Semua test order milik PID source dan destination bisa ditampilkan dalam satu cumulative view/report.
  4. PID destination tersedia untuk test ordering & tracing.
  5. PID source tetap bisa dicari tetapi tidak bisa di-edit maupun digunakan untuk test ordering.
  6. Audit mencatat Patient Link dilakukan secara manual, waktu, User ID yang melakukan Patient Link serta device dimana aktivitas tersebut dilakukan.
#### Use Case – Patient Unlink

Use Case ID

UC-02c

Use Case Name

Patient Unlink

Aktor Utama

Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Melepaskan link antara source PID dan destination PID.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi dalam System.
  3. Pasien sudah pernah registrasi di System, ditandai dengan adanya PID dengan patidt.IdentifierType dan patidt.Identifier yang sama.

Alur Utama

  1. Aktor membuka halaman Patient Management – Patient Unlink.
  2. Aktor mencari record pasien menggunakan PID.
  3. System menampilkan PID berikut data demografinya dan semua linked PID.
  4. Aktor uncheck source PID(s) yang hendak dilepaskan dari destination PID.
  5. Aktor melepas hubungan PID-PID tersebut dengan menekan tombol Unlink.
  6. System meminta konfirmasi dari Aktor dengan menampilkan pesan,” Please confirm to unlink these patient records”. Disertai pilihan “Confirm” dan “Cancel”
  7. Aktor mengkonfirmasi Patient Unink dengan menekan tombol Confirm.
  8. System melakukan:
    1. mengosongkan field patient.LinkTo dari source PID.
    2. membuat record baru di patvisitadt dengan patvisitadt.Code: A37 (Unlink Patient Information)
    3. mengkonfirmasi Patient Unlink berhasil
    4. menampilkan ringkasan destination dan source PID yang unlinked.

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Source PID aktif kembali, bisa diedit dan tersedia untuk test ordering & tracing.
  2. unlink source terjadi bisa isi field LinkTo dikosongkan Kembali.
  3. Audit mencatat Patient Unlink dilakukan secara manual, waktu, User ID yang melakukan Patient Unlink dan device dimana aktivitas tersebut dilakukan.
#### Use Case – Patient Admission

Use Case ID

UC-03a

Use Case Name

Patient Admission

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Menerima pasien di fasyankes untuk perawatan atau observasi.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Record pasien tersedia di System, ditandai dengan adanya PID.

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Patient Admission.
  2. Aktor memasukkan PID.
  3. System memeriksa apakah PID ada.
  4. System menampilkan data demografi pasien dan meminta data-data:
    1. mandatory data: PVID, dokter, location.
    2. optional data: EpisodeID, diagnosis (bisa lebih dari satu), lampiran-lampiran.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A01 (Admit), mengkonfirmasi admission berhasil dan menampilkan ringkasan admission.
  6. Aktor memberikan konfirmasi admission kepada Pasien (misalnya, slip cetak atau ID digital – barcode, QRIS, dll).

Alur Alternatif

  1. PID tidak ada:
    1. System menampilkan pesan, “PID does not exist. Proceed to Patient Registration?”
    2. Aktor memilik “Yes” dan System membuka halaman Patient ManagementPatient Registration.
    3. Aktor melakukan activity patient registration dilanjutkan patient admission.
  2. Pembaruan optional data:
    1. Aktor membuka halaman Patient Visit Management – Admission Search & Update
    2. Aktor memasukkan PVID.
    3. System mengambil record yang sudah ada
    4. Aktor memperbarui data jika diperlukan
    5. Sistem menyimpan perubahan.

Alur Pengecualian

  1. Mandatory data tidak ada:
    1. System menolak menyimpan record.
    2. Aktor diminta untuk melengkapi, setidaknya mandatory data.

Kondisi Akhir

  1. Kunjungan pasien ke fasyankes tercatat (patvisit records) di System, ditandai dengan adanya PVID dan direlasikan dengan dokter dan ruangan di fasyankes.
  2. Audit mencatat admission/perubahannya dilakukan secara manual, User ID yang melakukan, device dimana, kapan, dan data apa saja yang dimasukkan.
#### Use Case – Cancel Admission

Use Case ID

UC-03b

Use Case Name

Cancel Patient Admission

Aktor Utama

Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Membatalkan penerimaan pasien di fasyankes. Pembatalan bisa disebabkan:

  • Data registrasi salah atau tidak lengkap yang tidak dapat diselesaikan
  • Cakupan asuransi tidak valid atau kedaluwarsa.
  • Pasien menolak rawat inap setelah mengetahui biayanya.
  • Pasien dialihkan ke fasilitas lain.
  • Permintaan rawat inap dimasukkan secara salah
  • Kondisi pasien berubah
  • Permintaan pasien. dll

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID.

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Admission Search & Update.
  2. Aktor memasukkan PVID.
  3. System menampilkan data admission pasien.
  4. Aktor mengkonfirmasi pembatalan admission ke pihak terkait dan melakukan pembatalan.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A11 (Cancel Admit), mengkonfirmasi cancel patient admission berhasil dan menampilkan ringkasan cancel patient admission.
  6. Aktor memberikan konfirmasi cancel patient admission kepada pihak terkait (misalnya, slip cetak atau ID digital – barcode, QRIS, dll).

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Cancel patient admission tercatat (patvisit records) di System, ditandai dengan record di patvisitadt dengan patvisitadt.Code: A11.
  2. Audit mencatat cancel patient admission dilakukan secara manual, User ID yang melakukan, device dimana, kapan, dan data apa yang dimasukkan.
#### Use Case – Change Attending Doctor

Use Case ID

UC-03c

Use Case Name

Change Attending Doctor

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Mengganti dokter yang bertanggung jawab atas pengobatan pasien (DPJP).

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID dan telah memiliki data Attending Doctor (patvisitadt. AttDoc)

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Admission Search & Update.
  2. Aktor memasukkan PVID.
  3. System menampilkan data admission pasien.
  4. Aktor mengganti Attending Doctor.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A54 (Change Attending Doctor), mengkonfirmasi penggantian dokter berhasil dan menampilkan data admission yang telah diperbarui.

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Penggantian Attending Doctor di System sehingga bisa dilakukan pelacakan Attending Doctor sekarang dan sebelumnya.
  2. Audit mencatat User ID yang melakukan perubahan Attending Doctor, device dimana perubahan dilakukan, kapan.
#### Use Case – Change Consulting Doctor

Use Case ID

UC-03d

Use Case Name

Change Consulting Doctor

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Mengganti dokter konsulen.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID dan telah memiliki data Consulting Doctor (patvisitadt. CnsDoc)

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Admission Search & Update.
  2. Aktor memasukkan PVID.
  3. System menampilkan data admission pasien.
  4. Aktor mengganti Consulting Doctor.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A61 (Change Consulting Doctor), mengkonfirmasi penggantian dokter berhasil dan menampilkan data admission yang telah diperbarui.

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Penggantian Consulting Doctor di System sehingga bisa dilakukan pelacakan Consulting Doctor sekarang dan sebelumnya.
  2. Audit mencatat User ID yang melakukan perubahan Consulting Doctor, device dimana perubahan dilakukan, kapan.
#### Use Case – Patient Transfer

Use Case ID

UC-04

Use Case Name

Patient Transfer

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Memindahkan pasien dari satu lokasi ke lokasi lainnya.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID dan telah memiliki data Location ID (patvisitadt. LocationID)

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Transfer.
  2. Aktor memasukkan PVID.
  3. System menampilkan data admission pasien.
  4. Aktor mengganti Location ID.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A02 (Patient Transfer), mengkonfirmasi perpindahan lokasi berhasil dan menampilkan data admission yang telah diperbarui.

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Penggantian Location ID di System sehingga bisa dilakukan pelacakan Location ID sekarang dan sebelumnya.
  2. Audit mencatat User ID yang melakukan perubahan Location ID, device dimana perubahan dilakukan dan kapan.
#### Use Case – Patient Discharge

Use Case ID

UC-04a

Use Case Name

Patient Discharge

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Mengakhiri kunjungan pasien. Close billing.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID.

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Discharge.
  2. Aktor memasukkan PVID.
  3. System memeriksa apakah PVID tersebut memiliki test order.
  4. System memeriksa apakah orderstatus.OrderStatus dari test order tsb..
  5. System menampilkan data admission pasien.
  6. Aktor mengisikan tanggal discharge.
  7. System membuat record baru di patvisitadt dengan patvisitadt.Code: A03 (Discharge), mengkonfirmasi discharge/end visit berhasil dan menampilkan data admission yang telah di-discharge.

Alur Alternatif

Alur Pengecualian

  1. Open test order:
    1. System menolak discharge, jika menemukan orderstatus.OrderStatus bernilai ”A” atau “IP” atau “SC” atau “HD”
    2. Aktor diminta untuk menyelesaikan test order terkait.

Kondisi Akhir

  1. Discharge visit di System.
  2. Audit mencatat User ID yang melakukan discharge, device dimana discharge dilakukan dan kapan.
  3. Semua record terkait visit[24] tersebut tidak bisa diedit/update lagi – data-data pada patvisit, patdiag, patvisitbill. Hal-hal berikut tidak bisa dilakukan lagi:
    1. perpindahan lokasi dan/atau dokter.
    2. test order
    3. billing is closed.
  4. Cancel discharge
    1. bisa dilakukan:
      1. atas instruksi dari HIS, misalnya berupa ADT message
      2. oleh orang tertentu saja di lab
  5. tidak meng-update existing record tetapi men-trigger tambahan patvisitadt record dengan Code: A13 (cancel discharge)
#### Use Case – Cancel Discharge

Use Case ID

UC-04b

Use Case Name

Cancel Patient Discharge

Aktor Utama

Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Membatalkan Patient Discharge. Open billing.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID dan telah discharge.

Alur Utama

  1. Aktor membuka halaman Patient Visit Management – Cancel Patient Discharge.
  2. Aktor memasukkan PVID.
  3. System menampilkan data admission pasien.
  4. Aktor membatalkan discharge dengan menekan tombol Cancel Discharge.
  5. System membuat record baru di patvisitadt dengan patvisitadt.Code: A13 (Cancel Discharge), mengkonfirmasi cancel discharge berhasil dan menampilkan data admission yang telah dibatalkan discharge-nya.

Alur Alternatif

Alur Pengecualian

Kondisi Akhir

  1. Pembatalan discharge di System.
  2. Audit mencatat cancel discharge dilakukan secara manual, User ID yang melakukan, device dimana activity dilakukan dan kapan.
  3. Semua record terkait visit[25] tersebut kembali bisa diedit/update lagi – data-data pada patvisit, patdiag, patvisitbill. Hal-hal berikut bisa dilakukan lagi:
    1. perpindahan lokasi dan/atau dokter.
    2. test order
    3. billing is re-open.
#### Use Case – Test Ordering

Use Case ID

UC-5a

Use Case Name

Test Ordering

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Membuat test order untuk pasien.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Patient Visit Record tersedia di System, ditandai dengan adanya PVID.

Alur Utama

  1. Aktor membuka halaman Test Ordering – New Test Order.
  2. Aktor memasukkan PVID.
  3. System menampilkan data demografi, daftar PVID pasien berikut daftar OrderID (OID) yang telah dibuat sebelumnya (menghindari test order berlebihan).
  4. Aktor bisa menambahkan komentar dan/atau lampiran ke test order.
  5. Aktor memilih test yang diperlukan.
  6. Aktor bisa memilih mencetak labels segera setelah klik tombol Save, dengan mencentang Print Patient Label, Print Order Label, Print Specimen Label check boxes.
  7. Aktor menyimpan test order dengan menekan tombol Save.
  8. System secara otomatis memberi OID.
  9. System otomatis membuat records di table specimens.
  10. System, mengkonfirmasi test ordering berhasil dan menampilkan data test order berikut daftar SID.

Alur Alternatif

  1. PVID belum ada:
    1. System mengarahkan Aktor ke halaman Patient Visit Management – Patient Admission.
    2. Aktor melakukan activity patient admission.
    3. Aktir kembali ke test ordering.
  2. Test ordering menggunakan PID:
    1. Aktor membuka halaman Test Ordering – New Test Order
    2. Aktor memasukkan PID
    3. System menampilkan daftar PVID yang belum discharge.
    4. Aktor memilih salah satu PVID dan melanjutkan activity test ordering.
  3. Future Order:
    1. Aktor mengisi Effective Date (ordertest.EffDate) untuk menjadwalkan kapan test order mulai dikerjakan.
    2. Aktor menyimpan test order dengan menekan tombol Save.
    3. System memberikan OID yang sesuai dengan Effective Date.
  4. OID sudah ada:
    1. Aktor membuka halaman Test Ordering – Test Order Search & Update
    2. Aktor memasukan OID
    3. System menampilkan data-data test order.
    4. Aktor melakukan update dan menyimpannya.
  5. Non patient option

Alur Pengecualian

Kondisi Akhir

  1. Test order terbentuk di System ditandai dengan adanya OID dengan status (orderstatus.OrderStatus) ”SC” (In process, scheduled)
  2. SID terbentuk dan specimen label bisa dicetak atau tercetak otomatis.
  3. Audit mencatat test order dilakukan secara manual, User ID yang melakukan, device dimana activity dilakukan dan kapan.
#### Use Case – Update Test Order

Use Case ID

UC-5b

Use Case Name

Update Test Order

Aktor Utama

Admin Lab / Clerk, Analis Lab, Analis Lab Senior, Super User, Supervisor Lab, Manajer Lab

Aktor Sekunder

Pasien

Tujuan

Memperbarui test order untuk pasien.

Prasyarat

  1. System beroperasi dan dapat diakses.
  2. Petugas pendaftaran telah terautentikasi oleh System.
  3. Test order tersedia di System, ditandai dengan adanya OID.

Alur Utama

  1. Aktor membuka halaman Test Ordering – Test Order Search & Update.
  2. Aktor memasukkan OID.
  3. System menampilkan data-data test order.
  4. Aktor melakukan update dan menyimpannya.
  5. System, mengkonfirmasi update test order berhasil dan menampilkan data test order berikut daftar SID.

Alur Alternatif

  1. PVID belum ada:
    1. System mengarahkan Aktor ke halaman Patient Visit Management – Patient Admission.
    2. Aktor melakukan activity patient admission.
    3. Aktir kembali ke test ordering.
  2. Non patient option

Alur Pengecualian

  1. Test order tidak ada:
    1. System menolak melakukan update dan menampilkan pesan,” Test order does not exists”
  2. Test order berstatus closed ditandai dengan ordertest.EndDate memiliki value dan orderstatus.OrderStatus bernilai CL (Closed):
    1. System menolak melakukan update dan menampilkan pesan,” This test order is inaccessible”
  3. Test order berstatus archived, ditandai dengan ordertest.ArchiveDate memiliki value dan orderstatus.OrderStatus bernilai AC (Archived):
    1. System menolak melakukan update dan menampilkan pesan,” This test order is already archived”
  4. Test order berstatus deleted, ditandai dengan ordertest.DelDate memiliki value dan orderstatus.OrderStatus bernilai DL (Deleted):
    1. System menolak melakukan update dan menampilkan pesan,” This test order is already deleted”
  5. Update dilakukan dengan menghapus test yang telah ada hasilnya:
    1. System menampilkan data-data test order.
    2. Aktor mengganti test yang telah ada hasilnya.
    3. System menolak melakukan update dan menampilkan pesan,” This test order is inaccessible”

Kondisi Akhir

  1. Test order terbentuk di System ditandai dengan adanya OID dengan status (orderstatus.OrderStatus) ”SC” (In process, scheduled)
  2. SID terbentuk dan specimen label bisa dicetak atau tercetak otomatis.
  3. Audit mencatat test order dilakukan secara manual, User ID yang melakukan, device dimana activity dilakukan dan kapan.
#### Use Case – Delete Test Order #### Use Case – Specimen Collection #### Use Case – Cancel Specimen Collection #### Use Case – Specimen Reception #### Use Case – Cancel Specimen Reception #### Use Case – Specimen Prepation #### Use Case – Specimen Store #### Use Case – Dispatching Test Order to Automatic Workstation #### Use Case – Dispatching Test Order to Manual Workstation #### Use Case – Result Acquisition from Instrument #### Use Case – Manual Result Entry #### Use Case – Preliminary Result #### Use Case – Result Verification / Technical Validation #### Use Case – Clinical Validation #### Use Case – Print Report #### Use Case – Result Correction ### CLQMS – SMCRM Integration Berikut adalah penjabaran _use case_ CLQMS – SMCRM Integration: #### Diagram Use Case – Equipment Installation to Decommissioning

Activity

Description

Equipment Delivery

  • TSS memastikan Account, Site, Equipment tercatat di SMCRM, berikut perpindahannya dari gudang Perusahaan ke Site.
  • SMCRM mencari CLQMS dengan Account dan Site yang sama. Jika ada, maka equipment ditambahkan ke site, sesuai apa yang terjadi di SMCRM.

Installation

  • TSO melakukan instalasi dan mencatatkan activity di SMCRM.
  • SMCRM replikasi activity instalasi ke CLQMS terkait, sehingga data instalasi equipment tercatat di CLQMS. User laboratorium bisa melihat activity dan data instalasi equipment di CLQMS

Installation & Calibration Certificates

  • TSO membuat Installation Certificate dan Calibration Certificate di SMCRM pasca instalasi.
  • SMCRM replikasi kedua certificates ke CLQMS sehingga user laboratorium bisa melihat, download dan print keduanya.

User Training

  • TSO mengakhiri instalasi dengan activity user training dan pendampingan.
  • TSO membuat user training activity report di SMCRM
  • SMCRM replikasi activity report ke CLQMS terkait, sehingga data activity tersebut tercatat di CLQMS sesuai dengan equipment. User laboratorium bisa melihat user training activity di CLQMS

User Training Certificates

  • TSO memastikan user tercatat di CLQMS.
  • CLQMS replikasi data para user ke SMCRM (Contact & ContactDetail).
  • TSO membuat User Training Certificate di SMCRM.
  • TSO Bersama TSM approve certificate secara digital sehingga certificate available di SMCRM.
  • SMCRM replikasi approved User Training Certificate ke masing-masing user di CLQMS.
  • Masing-masing user bisa melihat User Training Certificates-nya di CLQMS.

Maintenance

  • TSO melakukan maintenance dan mencatatkan activity di SMCRM.
  • SMCRM replikasi maintenance activity ke CLQMS terkait, sehingga data equipment maintenance tercatat di CLQMS. User laboratorium bisa melihat activity yang dilakukan atas equipment di CLQMS

Services

  • user laboratorium melaporkan incident terkait equipment ke CLQMS
  • CLQMS push informasi tersebut ke SMCRM
  • TSO merespon incident tersebut dan melaporkan di SMCRM.
  • SMCRM replikasi TSO ke CLQMS terkait
  • user laboratorium bisa melihat progress/penyelesaian incident di CLQMS. Incident tercatat di equipment yang tepat.

Decomissioning

  • TSO melakukan penarikan equipment dan mencatatkan activity di SMCRM.
  • SMCRM replikasi activity penarikan equipment ke CLQMS terkait, sehingga data penarikan equipment tercatat di CLQMS. User laboratorium bisa melihat activity dan data penarikan equipment di CLQMS. Equipment secara otomatis disabled di CLQMS.
### CLQMS – Datawarehouse Integration <to be completed> # Detail Teknis dan Implementasi ## Hardware ### Virtual Private Server (VPS) | | | | --- | --- | | Minimum specification | 2 vCPU, 2 GB RAM, 1 GBps bandwidth | | VPN Server | WireGuard Server | | Reverse Proxy | NginX | ### Local/Site Server | | | | --- | --- | | Minimum specification | | | VPN Client | WireGuard | | Web Server (local) | Apache | | RDBMS | MariaDB | | Backend (CodeIgniter 4) | PHP v8.2.20 | | Frontend (SvelteKit5) | Node.js v22.17.0 | | Dependency Management | Npm & Composer | | Module bundler (SvelteKit) | Vite | | Command-line interface | Git Bash/Terminal | ### Client PC | | | | --- | --- | | Minimum specification | WLAN/Ethernet | | | BrowserWeb based server on premise/on cloud | | | | ## Software <to be completed> ## Language <to be completed>. ## Framework ### Back End Back end menggunakan: - FW - CI4 – PHP - Websocket (Swoole, Workerman, Microsocket) - Webserver NGINX ### Front End Front end menggunakan: - FW – Svelte 5, JS - CSS - TailWind 4 - UIKit shadcn / DaisyUI ### UI/UX User Interface/eXperience menggunakan: - Figma - HTML - CSS (Tailwind + DaisyUI) - JS - SvelteKit ## Network Architecture Gambar . Network Architecture - instrument connections ## Database Database management system menggunakan **PostgreSQL + Design DB**. Design tables adalah sebagai berikut: ### Vendor Tabel yang menyimpan data vendor, yaitu perusahaan/orang yang menyediakan barang/jasa bagi laboratorium klinik. Definisi table Vendor ada di project **_Customer Relationship Management_ (CRM)** (prj_crm_origin.docx). ### Product Pengelolaan product yang digunakan di sites meliputi: - **ProductCatalog**. Tabel yang menyimpan data barang/jasa[\[26\]](#footnote-26) yang dipasarkan oleh Perusahaan. - **productcatalogext**. Tabel yang menyimpan data barang/jasa yang digunakan tiap site yang berasal dari perusahaan lain. ProductCatalog dan productcatalogext bersifat _complementor_ dan _exclusive_[\[27\]](#footnote-27). Keduanya saling melengkapi, item yang sudah ada di ProductCatalog, tidak ada di productcatalogext. - **productext**. - tabel yang menyimpan data product yang digunakan oleh masing-masing sites. Produk berasal dari table ProductCatalog dan productcatalogext. - mengantisipasi kemungkinan barang/jasa yang sama tetapi dipasarkan oleh perusahaan yang berbeda. - menyimpan identitas perusahaan yang mendistribusikannya ke laboratorium klinik (site). - **productuse** berisi data setting/tetapan penggunaan product di setiap instrument di site tertentu untuk memproduksi satu test. - Volume aspirasi R1, R2, R3, R4 - Jumlah tes/kit, jumlah tes/botol Table 8 productcatalogext

Field

Tipe data

Display

Keterangan

CatalogExtID

nvarchar

External Catalog ID

PK

SiteID

nvarchar

Site ID

FK dari table Site13

Tempat dimana produk berada/digunakan.

CatalogExtNumber

nvarchar

External Catalog Number

Berisi nomor katalog produk dari berbagai perusahaan.

ProductExtName

nvarchar

External Product Name

Nama produk

VendorID

nvarchar

Vendor ID

FK, dari table Vendor

Type

nvarchar

Type

  • analyzer
  • reagent
  • sparepart (Spare Part_Analyzer)
  • sparepart_o (Spare Part_Other)
  • calibrators
  • controls
  • washsol (washing solution)
  • othcons (other consumables)
  • accessories
  • license (TD, Microsoft, Symantec, dll)
  • server
  • pc
  • ups
  • avr
  • it (Isolation Transformer)
  • docprinter (Document Printer)
  • bcdprinter (Barcode Printer)
  • bcdscanner (Barcode Scanner)
  • wtrtreatment (Water Treatment)

Manufacturer

nvarchar

Manufacturer

Berisi Manufacturer ID. Pabrikan yang membuat produk. Misal:

Server HP ML150 dibeli di toko Columbia. Maka: Vendor: Columbia; Manufacturer: HP. VendorID dan Manufacturer berasal dari tabel Vendor

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti product tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.
Table 9 unitgroupext

Field

Tipe data

Display

Keterangan

UnitGroupExtID

nvarchar

External Unit Group ID

CatalogExtID

nvarchar

External Catalog ID

Unit

nvarchar

Unit

Satuan

Quantity

nvarchar

Quantity

Jumlah

BaseUnit

nvarchar

Base Unit

Satuan penyusun “Unit”

Category

number

Category

Untuk mengendalikan pemberlakuan group unit di aplikasi

  • 1: umum
  • 2: umum
  • 3: umum
  • 4: Technical Support Only
  • 5: Technical Support Only
  • 6: Special purpose

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti unit group tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.

Table 10 productext

Field

Tipe data

Display

Keterangan

ProductExtID

External Product ID

PK; Diawali dengan huruf ‘E’, untuk menandai product external/bukan dari Perusahaan

  • Berfungsi sebagai Universal Equipment Identification.
  • Mengantisipasi product yang tidak memiliki serial number

ProductExtNumber

nvarchar

External Product Number

Serial number equipment dari perusahaan lain. ProductExtNumber tidak pernah berubah

Catalog

nvarchar

Catalog

  • Foreign Key. Jika produk berasal dari:
    • Perusahaan, maka berisi CatalogID dari table ProductCatalog13
    • vendor lain, maka berisi CatalogExtID dari Table 3 productcatalogext.

Berisi nomor katalog. Nomor katalog yang sama bisa di-distribusikan oleh beberapa distributor.

SiteID

nvarchar

Site ID

Foreign Key dari table Site13

Tempat dimana produk berada/digunakan.

ServiceProvider

nvarchar

Service Provider

Foreign Key, dari table Vendor13, adalah Perusahaan/entitas yang meberikan layanan terhadap product ybs. Misalnya preventive maintenance.

LocationStartDate

Date

Location Start Date

  • Tanggal dimana produk ditempatkan
  • dalam Berita Acara

InstallationDate

Date

Installation Date

  • tanggal instalasi analyzer
  • digunakan dalam Berita Acara dan perhitungan masa garansi

WarrantyStartDate

Date

Warranty Start Date

  • tanggal mulai garansi, bisa sama dengan tanggal instalasi

WarrantyEndDate

Date

Warranty End Date

  • tanggal akhir garansi. Jika KSO maka sama dengan akhir masa kontrak.

LocationEndDate

Date

Location End Date

  • Tanggal dimana product ditarik/tidak ada lagi di site/dimusnahkan

Active

Yes/No

Active

Yes: digunakan

No: tidak digunakan.

Owner

Owner

Pemilik produk, salah satu dari:

  • FK: VendorID dari table Vendor – CRM, jika milik vendor.
  • FK: AccountID dari table Account – CRM, jika milik lab ybs.

OpenStability

Numeric

Open Stability

Stabilitas product setelah dibuka. Dalam satuan hari.

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

LogDate

Date Time

Log Date

Menandai kapan record ini mengalami perubahan status (Location, Asset, Active, Owner).

EndDate

Date Time

End Date

Jika EndDate terisi berarti product tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.

Table 11. productuse

Field

Tipe data

Display

Keterangan

ProdUsageID

nvarchar

Product Usage ID

PK

ProductExtID

nvarchar

External Product ID

Foreign Key dari Table 5 productext.

AspVolume

numeric

Aspiration Volume

Aspirated volume: volume yang di-aspirasi instrument untuk memproduksi satu test

NbrOfTest

numeric

Number of Test

Jumlah tes per kemasan. Untuk test berbasis

  • volume:
  • test:

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti product tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.
### Area & GeoLocation System Tabel-tabel terkait pengelolaan area berikut disinkronisasi dengan CRM, meliputi: - AreaGeo, yang berisi definisi area geografis sesuai standard yang berlaku (Kemendagri) - AreaDef, berisi _user defined area_ (pembagian area) untuk service, sales, dll. - AreaDet, berisi detail area geografis untuk masing-masing _user defined area_. - GeoLocationFix, berisi geolocation untuk berbagai lokasi geografis - GeoLocationDyn, berisi geolocation dinamis untuk orang, device Table 12. AreaGeo

Field

Tipe data

Display

Keterangan

AreaGeoID

PK

AreaCode

nvarchar

Area Code

Kode Kemendagri

Class

nvarchar

Class

valuset.vvalue

  • PROP: Propinsi
  • KAB: Kabupaten
  • KOTA: Kota
  • Etc.

AreaName

nvarchar

Area Name

Nama area

Parent

Parent Area

FK, self referential.

Table 13. AreaDef

Field

Tipe data

Keterangan

AreaID

nvarchar

AreaType

nvarchar

  • Service
  • Sales
  • Etc.

AreaName

nvarchar

Description

nvarchar

Penjelasan singkat

Table 14. AreaDet | **Field** | **Tipe data** | **Keterangan** | | --- | --- | --- | | AreaID | nvarchar | | | AreaCode | nvarchar | | Table 15. GeoLocationFix

Field

Tipe data

Keterangan

GeoLocationID

nvarchar

Format: GEFXXXXXX

XXXXXX: nomor urut (000001, 000002, dst.)

OriginTable

nvarchar

Nama table asal data yang diberi geotagging.

Identity

Nvarchar

Berisi ID dari lokasi-lokasi yang diberi geotagging:

  • AccountID (Account table)
  • SiteID (Site table)
  • UserID (User table)
  • ContactID (Contact table)
  • dll

GeoLocationSystem

nvarchar

  • Sistem/standard geolocation yang digunakan
  • Encrypted

GeoLocationData

  • Encrypted
  • (perlu dipelajari lebih lanjut format data GeoLocation baku)

Creator

nvarchar

  • UserID (dari table User)
  • ContactID (dari table Contact)

CreateDate

Date Time

Menandai kapan record ini dibuat.

Table 16. GeoLocationDyn

Field

Tipe data

Keterangan

GeoLocationID

nvarchar

Format: GEDYYXXXXXX

YY: tahun

XXXXXX: nomor urut (000001, 000002, dst.)

OriginTable

nvarchar

Nama table asal data yang diberi geotagging.

Identity

Nvarchar

Berisi ID dari lokasi-lokasi yang diberi geotagging:

  • AccountID (Account table)
  • SiteID (Site table)
  • UserID (User table)
  • ContactID (Contact table)
  • DeviceID[28] (cellphone, tablet, laptop, GPS module, dll)
  • dll

Reference

nvarchar

  • terkait dengan record ID spt ActivityID, dll

GeoLocationSystem

nvarchar

  • Sistem/standard geolocation yang digunakan
  • Encrypted

GeoLocationData

  • Encrypted
  • (perlu dipelajari lebih lanjut format data GeoLocation baku)

Creator

nvarchar

  • UserID (dari table User)
  • ContactID (dari table Contact)

CreateDate

Date Time

Menandai kapan record ini dibuat.

### Organization Structure Struktur terdiri dari struktur universal dan sites. Data struktur disimpan dalam table-tabel sebagai berikut: - **Account**. Berisi definisi organisasi. Biasanya berupa Perusahaan. Data account diambil dari aplikasi - **Site**. Berisi definisi _laboratory site_ dan diambil dari aplikasi CRM. Termasuk dalam definisi site: - hospital/laboratory _sites_ dalam lingkungan _multi-sites_ - fasyankes yang merujuk pemeriksaan (fasyankes sumber/asal). - fasyankes tempat laboratorium merujuk test (fasyankes produksi) - **discipline**. Berisi definisi _discipline_ dari _clinical laboratory_. Discipline digunakan untuk: - membentuk struktur organisasi untuk pembagian pengerjaan tes. - membentuk struktur _result report_ dan _result view_. - **department**. Berisi definisi _department_ masing-masing _site_ - [**workstation**](#_Multi_Organization_Management). Berisi definisi _workstation_ untuk setiap _department_. _Table 17._ _Account_

Field

Tipe data

Display

Keterangan

AccountID

Nvarchar (4)

Account ID

0001 – 0050 reserved untuk SUMMIT dan cabang-cabangnya.

ExtAcountID

External Account ID

AccountID dari CRM

ParentAccount

Parent Account

  • Nama perusahaan induk. Misalnya PT Prodia Utama.
  • ParentAccount merujuk kepada account lain dalam table yang sama (self-referential)
  • Proteksi one way referral

AccountName

Account Name

Nama account, misalnya: Prodia Kelapa Gading.

Nama yang dikenal.

Initial

Initial

Street_1

Street 1

Street_2

Street 2

Street_3

Street 3

City

City

Province

Province

ZIP

ZIP

Country

Country

AreaCode

nvarchar

Area Code

AreaCode dari table AreaGeo

Email address 1

Email Address 1

Email address 2

Email Address 2

Phone

Phone

Fax

Fax

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti user tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi.
  • Tidak bisa dipilih lagi dalam transaksi
**Notes:** Account diperlukan untuk mendefinisikan business entity secara jelas dan turut berperan dalam agregasi hasil, terutama hasil QC. _Account_ dibuat di CRM untuk memastikan _constraint_. Saat instalasi CLQMS _on-site_, _engineer_ yang melakukan instalasi memasukkan _AccountID_ dan semua data terkait _account_ tersebut – yang tersimpan di CRM – ditarik untuk mempercepat instalasi. _Table 18._ _Site_

Field

Tipe data

Display

Keterangan

SiteID

integer

Site ID

PK. Format: AccountIDXX

XX adalah nomor urut (01, 02, dst)

ExtSiteID

External Site ID

Site ID dari CRM

SiteCode

nvarchcar

Site Code

kode site, alphanumeric 2 characters (00 – Z9); ada 1296 kemungkinan, termasuk 00. Constraint: unique. Hanya untuk SiteType = PHL, GL, PL.

SiteName

nvarchcar

Site Name

Misalnya:

  • Lab Utama
  • Lab Emergency

AccountID

Account ID

Dari table Account

SiteType

nvarchar

Site Type

Value Set

Parent

nvarchar

Parent Site

FK. Nulable. Parent SiteID.

SiteClass

nvarchar

Site Class

Value Set

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti user tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi.
  • Greyed di distribution list
  • Tidak lagi menerima kiriman email
**Notes:** SiteCode diperlukan untuk: - penanda unik dalam lingkungan multi-sites laboratory. - agregasi hasil, terutama hasil QC. Tujuannya agar suatu site bisa melakukan perbandingan hasil QC dengan site lain, baik dalam Account yang sama maupun berbeda. Oleh karena tujuan-tujuan ini, maka SiteCode hanya digunakan pada site yang memproduksi test, ditandai dengan **SiteType = PHL, GL, PL**. SiteCode dibuat di CRM untuk memastikan constraint, dengan demikian SiteCode di CLQMS didapat dengan 2 cara: - _manual_: SiteCode dibuat di CRM kemudian diketikkan di CLQMS. - _auto_: SiteCode dibuat di CLQMS. Saat instalasi CLQMS _on-site_, ditampilkan pilihan _site_ berdasarkan _Account_ yang sudah diinput terlebih dahulu di CLQMS. Table 19. discipline | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | DisciplineID | | Discipline ID | PK | | SiteID | | Site ID | FK; Dari table Site | | DisciplineCode | Nvarchar(7) | Discipline Code | Abbreviated text | | DisciplineName | Nvarchar | Discipline Name | Nama jelas | | Parent | | Parent Discipline | FK. _Nullable_. Parent DisciplineID | | CreateDate | Date Time | Create Date | Tanggal _record_ ini dibuat | | EndDate | Date Time | End Date | Jika EndDate terisi berarti disiplin tersebut disabled di semua bagian aplikasi: | Table 20 department | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | DepartmentID | | Department ID | PK | | DisciplineID | | | FK; Dari Table 7. discipline | | SiteID | nvarchar | Site ID | FK; Dari table Site | | DepartmentCode | nvarchar | Department Code | Abbreviated text | | DepartmentName | nvarchar | Department Name | Nama department | | CreateDate | Date Time | Create Date | | | EndDate | Date Time | End Date | Jika EndDate terisi berarti department tersebut disabled di semua bagian aplikasi | Table 21 workstation

Field

Tipe data

Display

Keterangan

WorkstationID

Workstation ID

PK

DepartmentID

nvarchar

FK; dari Table 8 department

WorkstationCode

Nvarchar

Workstation Code

Abbreviated text

WorkstationName

Nvarchar

Workstation Name

Nama workstation

Type

TinyInt

Type

ValueSet

  • 0: primary, default – penerima test order utama
  • 1: secondary, optional – penerima test order kedua.

LinkTo

Link to

berisi WorkstationID tujuan.

Enable

TinyInt

Enable

ValueSet

  • 0: disabled
  • 1: enabled

CreateDate

Date Time

Create Date

Tanggal record ini dibuat

| | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Contoh Struktur Organisasi** Gambar 7 Contoh Struktur Organisasi Table 22 Contoh definisi Account | | | | | | | | --- | --- | --- | --- | --- | --- | | **Account**

**ID** | **Parent**

**Account** | **AccountName** | **Initial** | **City** | **Province** | | 430 | | Sejahtera Anugrahjaya, Tbk. PT. | SRAJ | Kota Tangerang | Banten | Table 23 Contoh definisi Site | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | | **Site**

**ID** | **Site**

**Code** | **SiteName** | **Account**

**ID** | **SiteType** | **Parent** | **Site**

**Class** | | 101 | 89 | Mayapada Hospital Tangerang | 430 | PH | | B | | 165 | A3 | Lab Klinik MHTG | 430 | PHL | 101 | | | 308 | 90 | Mayapada Hospital Jakarta Selatan | 430 | PH | | B | | 377 | A4 | Lab Klinik MHJS | 430 | PHL | 308 | | Table 24 Contoh definisi Department

Department

ID

Discipline

ID

Site

ID

Department

Code

DepartmentName

1

165

HRTN

Hematologi Rutin

1

165

HKHS

Hematologi Khusus

2

165

KK

Kimia Klinik

3

165

IMS

Imunologi

3

165

SRL

Serologi

4

165

UF

Urin

Table 25 Contoh definisi Workstation | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Workstation**

**ID** | **Department**

**ID** | **Workstation**

**Code** | **Workstation Name** | **Type** | **LinkTo** | **Enable** | **EquipmentI**

**D** | **productnumber** | **Note** | | 1 | 1 | HAUTO | Hematologi Auto | 0 | | 1 | 627 | TW-13001452 | BC-6200 | | 2 | 1 | HBACK | Hematologi Backup | 1 | 1 | 1 | 715 | DG5-27000012 | BC760 | | 3 | 3 | CAUTO | Kimia Auto | 0 | | 1 | 1128 | 6016850924 | TMS-30i | | 4 | 3 | CBACK | Kimia Backup | 1 | 3 | 1 | 64 | 2711771113 | TMS-24i | | 5 | 3 | CMAN | Kimia Manual | 0 | | 1 | | | | | 6 | 4 | IAUTO | Imunologi Auto | 0 | | 1 | 185 | BB1-03001085 | CL-900i | | 7 | 4 | IMAN | Imunologi Manual | 0 | | 1 | | | | ### Host Systems Host adalah system dimana data pasien dan test order berasal atau system yang menjadi superordinat. Host berupa software aplikasi, misalnya Hospital Information System (HIS), Medical Check Up System, Billing System, Clinical Management System (CMS), dll. (perlu disinkronkan dengan test definition) Data host disimpan dalam table-tabel sebagai berikut: - **HostApp**. Berisi definisi host systems. - **HostComPara**. Berisi data parameter komunikasi ke Host seperti IP address, ports, dll. Table 26 HostApp | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | HostAppID | Nvarchar(5) | Host Application ID | PK | | HostAppName | nvarchar | Host Application Name | Nama host application | | SiteID | nvarchar | | Foreign Key; Dari table Site | | CreateDate | Date Time | Create Date | Tanggal _record_ ini dibuat | | EndDate | Date Time | End Date | Jika EndDate terisi berarti HostApp tersebut sudah tidak digunakan, disabled di semua bagian aplikasi | Table 27 HostComPara | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | | | | | | HostAppID | nvarchar(5) | | PK | | HostIP | nvarchar(15) | Host IP | IP Address dari Host | | HostPort | nvarchar(6) | Host Port | Port dari Host | | HostPwd | nvarchar | Host Password | | | CreateDate | Date Time | Create Date | Tanggal _record_ ini dibuat | | EndDate | Date Time | End Date | Jika EndDate terisi berarti HostApp tersebut sudah tidak digunakan, disabled di semua bagian aplikasi | ### Coding System Coding System dikelola menggunakan tabel-tabel sebagai berikut: - **codingsys**, _coding system_. Berisi definisi _coding system_. Table 28 codingsys | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | CodingSysID | | Coding System ID | PK ; | | CodingSysAbb | nvarchar (6) | Abbreviated Text | Abbreviated text; **Constraint**: Tidak boleh ada yang sama | | FullText | nvarchar | Full Text | Nama _coding system_. | | Description | nvarchar | Description | Penjelasan singkat dari _coding system_ | | CreateDate | Date Time | Create Date | Tanggal _record_ ini dibuat | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record_ tersebut disabled di semua bagian aplikasi | ### Doctor Data doctor dikelola menggunakan tabel-tabel contact dari **CRM**: - **Occupation** - **Contact** - **ContactDetail.** Merelasikan Contact dengan Site dan merupakan syarat login. - **ContactTraining** - **MedicalSpecialty** Table 29 Occupation | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | OccupationID | | Occupation ID | PK | | OccCode | Nvarchar(5) | Occupation Code | _Abbreviated Text_ (Teks singkat) | | OccText | nvarchar | Occupation Full Text | Tampilan teks lengkap dari kelompok pekerjaan | | Description | nvarchar | Description | Penjelasan occupation, bisa berisi role & responsibilities. | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. | | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 30. Contact

Field

Tipe data

Display

Keterangan

ContactID

nvarchar

Contact ID

Primary Key

ExtContactID

External Contact ID

Contact ID dari CRM

NameFirst

nvarchar

First Name

NameLast

nvarchar

Last Name

Title

nvarchar

Title

Gelar. Misalnya: Dr. Prof, dll

Initial

nvarchar

Initial

Birthdate

Date

Birthdate

Email address 1

nvarchar

Email Address 1

Personal email address.

Email address 2

nvarchar

Email Address 2

Personal email address

Phone

nvarchar

Phone

MobilePhone_1

nvarchar

Mobile Phone 1

MobilePhone_2

nvarchar

Mobile Phone 2

Specialty

nvarchar

Specialty

Spesialisasi terkait pendidikan, misal: dokter. FK, SpecialtyID dari Table 31 MedicalSpecialty

SubSpecialty

nvarchar

Sub Specialty

Sub spesialis/konsultan terkait pendidikan. FK, SpecialtyID dari Table 31 MedicalSpecialty

Password

Password

Encrypted

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

EndDate

Date Time

End Date

Jika EndDate terisi berarti user tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi.
  • Greyed di distribution list
  • Tidak lagi menerima kiriman email
Table 31. ContactDetail

Field

Tipe data

Display

Keterangan

ContactDetID

Contact Detail ID

Primary Key

ExtContactDetID

External Contact Detail ID

Contact Detail ID dari CRM

ContactID

Contact ID

FK; Dari table Contact

SiteID

Site ID

FK; Table 42. Site

Code

nvarchar

Code

Kode individu di site

ContactEmail

nvarchar

Email

Alamat email Contact di Site tersebut.

OccupationID

Occupation

FK dari Table 29 Occupation

JobTitle

Job Title

Jabatan Contact di Site tersebut, misalnya Penanggung Jawab Lab.

Department

Department

Department dimana Contact bekerja. Misalnya: Laboratorium, Penunjang Medis, dll

ContactStartDate

Date

Contact Start Date

Menandai Contact tersebut mulai bekerja di Site yang bersangkutan.

ContactEndDate

Date

Contact End Date

Menandai Contact tersebut tidak lagi bekerja di Site yang bersangkutan.

Jika EndDate terisi berarti user tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi.
  • Greyed di distribution list

Tidak lagi menerima kiriman email

| | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 32 ContactTraining

Field

Tipe data

Display

Keterangan

CTrainingID

Training ID

PK

ExtCTrainingID

External Training ID

External Training ID dari CRM

ContactID

Contact ID

FK dari table Contact.

TrainingType

nvarchar

Training Type

  • External training
  • Internal training
  • Seminar
  • Workshop

TrainingTitle

nvarchar

Training Title

StartDate

Date Time

Start Date

EndDate

Date Time

End Date

Facilitator

nvarchar

Facilitator

Penyelenggara training, seminar, workshop

CertificateLocation

nvarchar

Certificate Location

Lokasi penyimpanan file sertifikat

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat.

Table 33 MedicalSpecialty | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | SpecialtyID | | Specialty ID | Primary Key | | SpecialtyText | nvarchar | Specialty Text | Spesialisasi dokter | | Parent | nvarchar | Parent | Parent spesialis. Sub spesialis/konsultan memiliki parent spesialis. | | Title | nvarchar | Title | Gelar (Sp. PK, Sp.PD, Subsp.AI, dll) | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. | | EndDate | Date Time | End Date | Menandai kapan record ini berakhir. | ### Location Data lokasi dikelola menggunakan tabel-tabel sebagai berikut: - **location**. Berisi definisi lokasi (_sampling station_, bed-xx, dll). - **locationaddress**. Berisi alamat lokasi. Data-data berikut dikelola sebagai value set: - **locationtype**. Berisi definisi jenis lokasi (_floor_, _point of care_, _room_, _bed_), yaitu Lokasi yang berada di dalam _site_. | | | --- | | | | | | | | | | | Table 34 location | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | LocationID | | Location ID | Primary Key | | SiteID | Nvarchar | | FK: **SiteID** dari table Site – CRM. Site dimana lokasi ini berada. | | LocCode | Nvarchar(6) | Location Code | Abbreviated text; **Constraint**: Tidak boleh ada yang sama | | Parent | | Parent Location | PK: LocationID yang merupakan parent dari lokasi ini. | | | | | | | LocFull | nvarchar | Location Name | Nama lengkap lokasi | | Description | nvarchar | Description | Deskripsi lokasi | | LocType | nvarchar (10) | Location Type | Lihat Value Set

Lihat Table 72. valueset untuk struktur lengkap. \\\* MERGEFORMAT | | ~~Extension~~ | ~~nvarchar~~ | ~~Extension~~ | ~~Extension telepon~~ | | CreateDate | Date Time | Create Date | Tanggal _record_ ini dibuat | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record_ tersebut disabled di semua bagian aplikasi | Table 35 locationaddress

Field

Tipe data

Keterangan

LocationID

PK, dari Table 34 location

Street1

nvarchar

Street 1

Informasi jalan

Street2

nvarchar

Street 2

Informasi jalan

City

nvarchar

City

Kota/Kabupaten15

Province

nvarchar

Province

Propinsi15

PostCode

nvarchar

Post Code

Kode pos

GeoLocationSystem

nvarchar

Geo Location System

  • Sistem/standard geolocation yang digunakan
  • Encrypted

GeoLocationData

Geo Location Data

  • Encrypted
  • (perlu dipelajari lebih lanjut format data GeoLocation baku)

Phone

nvarchar

Phone

Terestrial phone

Mobile

nvarchar

Mobile

Mobile phone

Email

nvarchar

Email

Email address.

CreateDate

Date Time

Create Date

Tanggal record ini dibuat

EndDate

Date Time

End Date

Jika EndDate terisi berarti type tersebut disabled di semua bagian aplikasi

Table locationaddress untuk menyimpan alamat _remote location_ (lokasi temporer yang tidak berada dalam fasyankes). ### Patient Registration Data pasien dikelola menggunakan tabel-tabel sebagai berikut: - **patient**, _patient_. Berisi data pasien. - **patcom**, _patient comment_. Berisi data komentar/catatan/penjelasan tambahan atas data pasien. - **patatt**, _patient attachment_. Berisi data lampiran terkait pasien, bisa berupa file gambar, text, dll. - **patidt**, _patient identifier list_. Berisi identifikasi pasien (NIK, Social Security Number, Passport dll), berikut masa berlakunya. - **patrelation**, _patient relationship_. Berisi data hubungan antar pasien. - **patreglog,** _patient audit log_. Berisi perubahan-perubahan atas data pasien yang disimpan di table-table: - patient - patcom - patatt - patidt - patrelation Data-data terkait pasien sebagai berikut, dikelola sebagai value set: - **race**. Berisi definisi ras - **religion**. Berisi definisi agama. - **ethnic**. Berisi definisi etnik. - **country**. Berisi definisi negara. Data-data pada table terkait pasien tidak bisa di-_archive_ jika masih memiliki test order yang aktif. Data-data _race_, _ethnic_, _religion_, _country_ bersifat umum dan dapat digunakan di semua _sites_ dengan pengaturan: - _records_ dengan field SiteID kosong (_null_) berlaku untuk semua _sites_ – _default definition_. - jika suatu _site_ tidak bisa menggunakan definisi yang sama, maka perlu membuat _record_ spesific _site_ (_field_ SiteID terisi). Jika hal ini dilakukan, maka site tersebut tidak bisa lagi menggunakan _default definition_. Table 36 patient

Field

Tipe data

Display

Keterangan

InternalPID

PK ;

PatientID

nvarchar

Patient ID (PID)*

nomor unik identitas pasien. Constraint: Tidak boleh ada yang sama

AlternatePID

nvarchar

Alternate PID

Constraint: Tidak boleh ada yang sama

Prefix

nvarchar

Prefix

“Tn”, “Ny”, dll

NameFirst

nvarchar

First Name*

Nama depan

NameMiddle

nvarchar

Middle Name

Nama Tengah

NameMaiden

nvarchar

Maiden Name

Nama sebelum menikah (Perempuan)

NameLast

nvarchar

Last Name

Nama akhir/keluarga/marga

Suffix

nvarchar

Suffix

Biasanya untuk gelar

Gender

int

Gender*

valueset.vvalue:

F: female

M: male

U: unknown

PlaceOfBirth

nvarchar

Place Of Birth

Tempat lahir

Birthdate

Datetime

Birthdate

Constraint: <= waktu input data. Disimpan dalam UTC+0

Street_1

nvarchar

Street 1

Street_2

nvarchar

Street 2

Street_3

nvarchar

Street 3

City

nvarchar

City

Kabupaten/Kota [29]

Province

nvarchar

Province

Propinsi15

ZIP

nvarchar(7)

ZIP

Kode pos

Country

nvarchar

Country

valueset.vvalue. Menggunakan CntyID, lihat table Country

EmailAddress1

nvarchar

Email Address 1

Digunakan sebagai userid

EmailAddress2

nvarchar

Email Address 2

Phone

nvarchar

Phone

Nomor terrestrial

MobilePhone

nvarchar

Mobile Phone

Nomor seluler

Custodian

nvarchar

Custodian ID

Berisi PatientID dari orang tua (ibu) pasien

AccountNumber

nvarchar

Account Number

Nomor akun unit untuk accounting system.

Race

int

Race

valueset.vid. Ras pasien.

MaritalStatus

int

Marital Status

valueset.vvalue.

  • A: Separated
  • D: Divorced
  • M: Married
  • S: Single
  • W: Widowed
  • B: Unmarried
  • U: Unknown
  • O: Other

Religion

int

Religion

valueset.vid. Agama pasien.

Ethnic

int

Ethnic

valueset.vid Etnis pasien.

Citizenship

nvarchar

Citizenship

Kewarganegaraan

DeathIndicator

int

Deceased

valueset.vvalue. Y: death; N: life

DeathDateTime

Datetime

Time of Death

Waktu kematian, disimpan sebagai UTC+0.

LinkTo

nvarchar

Link To

FK. Berisi PatientID tujuan.

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0

DelDate

Date Time

Delete Date

Tanggal record ini dihapus. UTC+0

Penjelasan field: - **LinkTo**: - hanya boleh terisi dengan PatientID yang telah ada dalam table patient. - Jika terisi, berarti _record_ pasien ini (_source_) dijadikan satu dengan PatientID tujuan (_destination_). PatientID tujuan adalan _surviving entity_. - beberapa pasien bisa _link_ ke satu pasien. - **_unlink_** _source_ terjadi bisa isi _field_ LinkTo dikosongkan Kembali. - relasi _source_ dengan test order dan lain-lain tidak berubah sebelum dan sesudah proses _link_. - _link_ hanya satu tingkat. Pasien A **dan** B _link_ ke pasien C. **Bukan** pasien A _link_ ke pasien B, kemudian pasien B _link_ ke pasien C. Oleh karena itu syarat _destination_ bisa menerima _link_ adalah _field_ **LinkTo** masih **kosong**. Jika user melakukan _multi-level link_, aplikasi harus memberi peingatan ’multi-level link is not allowed” dan membatalkan operasi. - **DelDate**: - DelDate terisi jika _record_ pasien dihapus. - Penghapusan dilakukan dengan cara **_pseudonymity_** atas _fields_ berlatar belakang orange - _Pseudonymity_ bersifat _reversible_. - Jika DelDate terisi maka semua records di table lain yang terkait record ini, terisi DelDate-nya Table 37 patcom

Field

Tipe data

Display

Keterangan

PatComID

Patient Comment ID

PK

InternalPID

FK; Table 36 patient

Comment

nvarchar

Comment

Komentar/informasi tambahan

UserID

User ID

Identitas user yang menuliskan komentar. Berasal dari table:

  • CRM.User
  • CRM.Contact

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0.

DelDate

Date Time

Delete Date

Tanggal record ini dihapus. UTC+0.

Table 38 patatt

Field

Tipe data

Display

Keterangan

PatAttID

Patient Attachment ID

PK

InternalPID

FK; Table 36 patient

Address

nvarchar

Address

Lokasi file lampiran.

UserID

User ID

Identitas user yang menuliskan komentar. Berasal dari table:

  • CRM.User
  • CRM.Contact

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. Dikonversi ke UTC+0.

DelDate

Date Time

Delete Date

Tanggal record ini dihapus. Dikonversi ke UTC+0.

Table 39 patidt

Field

Tipe data

Display

Keterangan

PatIdtID

Patient Identifier ID

PK

InternalPID

FK; Table 36 patient

IdentifierType

nvarchar(4)

Identifier Type

Encrypted. Jenis identifikasi. Misalnya

  • KTP: Kartu Tanda Penduduk
  • PASS: Passport
  • SSN: Social Security Number
  • SIM: Surat Izin Mengemudi
  • KTAS: Kartu Izin Tinggal Terbatas

Identifier

nvarchar

Identifier

Encrypted. Nomor identitas sesuai RefType

EffectiveDate

Date Time

Effective Date

Tanggal mulai berlakunya identifier

ExpirationDate

Date Time

Expiration Date

Tanggal kadaluwarsa identifier

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0.

DelDate

Date Time

Deletion Date

Tanggal record ini dihapus. UTC+0.

Table 40 patrelation | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | PatRelID | | | PK | | InternalPID | | | FK; Table 21 patient | | | | | | | CreateDate | Date Time | | | | EndDate | Date Time | | Jika EndDate terisi berarti _record_ tersebut disabled di semua bagian aplikasi | Table 41 patreglog

Field

Tipe data

Keterangan

PatRegLogID

Patient Registration Log ID

PK

TblName

nvarchar

Table Name

Nama table

RecID

int

Record ID

Record ID – PK. Record dimana operasi/activity terjadi

FldName

nvarchar

Field Name

Nama field

FldValuePrev

nvarchar

Previous Value

Field Value Previous. Nilai sebelumnya

Operation

nvarchar

Operation

  • create – create record
  • read – read record/field
  • update – update record/field
  • delete – delete record/field

Lihat Lampiran 14:

SiteID

nvarchar

Site ID

FK dari table Site13

UserID

User ID

Identitas user yang melakukan operasi/activity data. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

Origin

nvarchar

Origin Table

Table dimana UserID disimpan:

  • CRM.User
  • CRM.ContactDetail

DIDType

nvarchar

DID Type

Device ID Type. Lihat Lampiran 14:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Identitas mesin [30]dimana operasi/activity dilakukan – MAC address

SessionID

nvarchar

Session ID

Application session ID

AppID

nvarchar

Application ID

Application ID

ProcessID

nvarchar

Process ID

Process ID

WebPageID

nvarchar

Web Page ID

EventID

nvarchar

Event ID

ActivityID

nvarchar

Activity ID

Activity ID

Reason

nvarchar

Reason

Alasan operasi/activity data

LogDate

Date Time

Log Date

Date & time log data. Dikonversi ke UTC+0

Table patreglog berdasarkan kaidah audit di bagian 5.4.21 dan menyimpan audit log terkait _patient_ _registration_. | | | | | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ### Patient Admission _Patient Admission_ adalah proses formal pasien diterima di rumah sakit untuk perawatan atau observasi. Pengelolaan administrasi _patient admission_ ke fasilitas pelayanan kesehatan (fasyankes) dilakukan melalui table sbb: - **patvisit**, _patient visit_. Berisi data kunjungan pasien ke fasyankes. - **patdiag,** _patient diagnosis_. Berisi data diagnosis. Dimungkinkan untuk multiple diagnosis per kunjungan. - **patvisitadt**, _patient visit admission-discharge-transfer_. Berisi data siklus pasien dari _admission_ hingga _discharge_. - **patvisitbill**, _patient visit billing_. Berisi data detail item apa saja yang ditagihkan per kunjungan pasien. - **patvisitlog**, _patient visit log_. Berisi operasi/activity atas data pasien yang disimpan di table-table: - patvisit - patdiag - patvisitadt - patvisitbill Table 42 patvisit | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | InternalPVID | | Internal PVID | PK. | | SiteID | | SiteID | FK dari table Site23 | | PVID | Nvarchar(20) | Patient Visit ID (PVID) | Not null. Patient Visit ID. ID untuk setiap kunjungan pasien ke fasyankes; **Constraint**: Tidak boleh ada yang sama | | InternalPID | | Internal PID | Foreign Key; Table 36 patient | | EpisodeID | nvarchar | Episode ID | Episode number | | | | | | | LastVisitADT | nvarchar | Las Visit ADT | Dari patvisitadt.Code | | CreateDate | Date Time | Create Date | Waktu _record_ ini dibuat/_posting_ di database. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti visit sudah _closed_. UTC+0 | | ArchivedDate | Date Time | Archived Date | Jika ArchivedDate terisi berarti visit sudah diarsip dan dipindahkan ke _data warehouse_. UTC+0 | | DelDate | Date Time | Delete Date | Jika DeleteDate terisi berarti _record_ sudah dihapus dan tidak bisa di-akses oleh _user_ biasa. UTC+0 | Table 43 patdiag | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | InternalPVID | | Internal PVID | PK. | | InternalPID | | | Foreign Key; Table 21 patient | | DiagCode | nvarchar | Diagnosis Code | Diagnostic code. | | Diagnosis | Text | Diagnosis | Penjelasan lebih detail mengenai diagnosis. | | CreateDate | Date Time | Create Date | Waktu _record_ ini dibuat/_posting_ di database. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti visit sudah closed. UTC+0 | | ArchivedDate | Date Time | Archived Date | Jika ArchivedDate terisi berarti visit sudah diarsip dan dipindahkan ke _data warehouse_. UTC+0 | | DelDate | Date Time | Delete Date | Jika DeleteDate terisi berarti record sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0 | DiagCode untuk menerima diagnosis code dari host. Diagnosis tetap bisa di-key in di field diagnosis terlepas dari ada/tidaknya DiagCode. Table 44 patvisitadt | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | PVADTID | | PVADTID | PK. Not null. Patient Visit ADT ID untuk setiap aktifitas ADT pasien per kunjungan | | InternalPVID | | | FK. Not null. Internal Patient Visit ID. Dari Table 27 patvisit | | Code | Nvarchar(5) | Code | Kode ADT[\[31\]](#footnote-31). Lampiran 14: Value set Dari Table 84 ADT Code | | | | | | | LocationID | | Location ID | FK. Kode Lokasi dari Table 15 location. _Assigned patient location_. | | AttDoc | | Attending Doctor[\[32\]](#footnote-32) | FK. Kode dokter yang menangani pengobatan pasien. Dari table **ContactDetail, CRM**. | | RefDoc | | Referring Doctor | FK. Kode dokter yang merujuk pasien. Dari table **ContactDetail, CRM**. | | AdmDoc | | Admitting Doctor | FK. Kode dokter yang menerima pasien di fasyankes. Dari table **ContactDetail, CRM**. | | CnsDoc | | Consulting Doctor | FK. Kode dokter konsulen. Dari table **ContactDetail, CRM**. | | | | | | | | | | | | CreateDate | Date Time | Create Date | Waktu _record_ ini dibuat/_posting_ di database. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti visit sudah _closed_. UTC+0 | | ArchiveDate | Date Time | Archive Date | Jika ArchivedDate terisi berarti visit sudah diarsip dan dipindahkan ke _data warehouse_. UTC+0 | | DelDate | Date Time | Delete Date | Tanggal _record_ ini dihapus. UTC+0 | | | | | | Table 45 patvisitbill | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | PatRelID | | | PK | | VisitClass | nvarchar | Visit Class | Jenis visit. Dari _Table_ 83 Patient Visit Class | | BillAcc | Nvarchar(20) | Billing Account | FK. Not null. Billing Account – pihak yang membayar biaya layanan. Dari table Account. Untuk pengembangan selanjutnya | | BillStatus | Binary | Billing Status | Not null. Billing Status:

0: belum dibayar

1: sudah dibayar | | | | | | | | | | | | CreateDate | Date Time | | | | EndDate | Date Time | | Jika EndDate terisi berarti _record_ tersebut disabled di semua bagian aplikasi. UTC+0 | Table 46 patvisitlog

Field

Tipe data

Display

Keterangan

PatVisLogID

Patient Visit Log ID

PK

TblName

nvarchar

Table Name

Nama table

RecID

int

Record ID

Record ID – PK. Record dimana operasi/activity terjadi

FldName

nvarchar

Field Name

Nama field

FldValuePrev

nvarchar

Previous Value

Field Value Previous. Nilai sebelumnya

Operation

nvarchar

Operation

Lihat Lampiran 14:

  • create – create record
  • read – read record/field
  • update – update record/field
  • delete – delete record/field

SiteID

nvarchar

Site ID

FK dari table Site13

UserID

User ID

Identitas user yang melakukan operasi/activity data. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

Origin

nvarchar

Origin Table

Table dimana UserID disimpan:

  • CRM.User
  • CRM.Contact

DIDType

nvarchar

DID Type

Device ID Type. Lihat Lampiran 14:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Identitas mesin [33]dimana operasi/activity dilakukan – MAC address

SessionID

nvarchar

Session ID

Application session ID

AppID

nvarchar

Application ID

Application ID

ProcessID

nvarchar

Process ID

Process ID

WebPageID

nvarchar

Web Page ID

EventID

nvarchar

Event ID

ActivityID

nvarchar

Activity ID

Activity ID

Reason

nvarchar

Reason

Alasan operasi/activity data

LogDate

Date Time

Log Date

Date & time log data. UTC+0

_Patient admission_ mandatory dilakukan, jika: - pasien fasyankes yang memerlukan _admit_ dan _discharge_ - memerlukan _billing_ - pilihan dari fasyankes selain itu, tidak harus dilakukan (_optional_) ### Test Ordering _Test ordering_ pasien dikelola menggunakan tabel-tabel sebagai berikut: - **ordertest**. Berisi data _test ordering_ untuk _clinical lab test_. - **ordercom**, _test ordering comment_. Berisi data komentar/catatan/penjelasan tambahan atas data _test ordering_. - **orderatt,** _test ordering attachment_. Berisi lampiran-lampiran atas _test order_. - **orderstatus**. Berisi status _test ordering_. Open, closed, dll - **ordercons**. Berisi data barang habis pakai yang digunakan. - **orderlog**. Berisi data operasi/activity yang dilakukan atas _test order,_ yaitu tables: - ordertest - ordercom - orderatt - orderstatus - ordercons Table 47 ordertest

Field

Tipe data

Display

Keterangan

InternalOID

Internal Order ID

PK. Internal Order ID

OrderID

Nvarchar(22)

Order ID

Not null. Nomor test order, sama dengan HL7-Filler Order Number. Mengikuti kentetuan tersebut di 4.2.1.8

Constraint: Tidak boleh ada yang sama

PlacerID

Nvarchar(22)

Placer Order ID

Nomor identitas test order dari aplikasi lain/host, HL7 – Placer Order Number.

Constraint: Tidak boleh ada yang sama

InternalPID

Foreign Key; Table 36 patient

SiteID

nvarchar

FK dari table Site23. Site dimana order dibuat

PVADTID

PVADTID

FK. Patient Visit ID. ID untuk setiap aktifitas ADT pasien per kunjungan. Optional.

ReqApp

Nvarchar

Requested Application

Requested application, identitas aplikasi yang mengirimkan test order.

ReqEntity

Nvarchar(3)

Requested Entity

Entitas yang meminta pemeriksaan. Misalnya:

  • pat: pasien itu sendiri yang meminta
  • isn: permintaan oleh Perusahaan asuransi.
  • acc: permintaan oleh Perusahaan
  • doc: permintaan oleh dokter

ReqEntityID

Nvarchar(20)

Requested Entity ID

Identitas entitas yang meminta pemeriksaan. Jika:

  • pat: field ini kosong
  • doc: berisi PK dari CRM.ContactDetail
  • acc: berisi PK dari CRM.Account

Priority

Priority

Kode urgensi, lihat Value set (

TrnDate

Date Time

Transaction Date

Transaction date, yaitu waktu test order dibuat. UTC+0

EffDate

Date Time

Effective Date

Order effective date time, yaitu waktu dimana test order seharusnya mulai diproses. UTC+0

CreateDate

Date Time

Create Date

Waktu record ini dibuat/posting di database. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti test order sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti test order sudah diarsip dan dipindahkan ke data warehouse. UTC+0

DelDate

Date Time

Delete Date

Jika DeleteDate terisi berarti test order sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0

Penjelasan field: - **TrnDate,** jika: - \>= **EffDate,** maka _order_ dianggap mulai diproses sejak _order effective date/time_. - < **EffDate**, maka _order_ baru mulai diproses sejak _order effective date/time_ - **EffDate** = null, maka _order_ mulai diproses sejak _transaction date/time_ - **CreateDate** berisi waktu dimana _record_ ini di-_posting_ ke dalam _database_. CreateDate bisa berbeda dengan TrnDate pada situasi dimana data dibuat di adalah lain atau aplikasi _remote_ _medical check-up_ yang bisa beroperasi _stand alone_. - **PVADTID**. Jika PVADTID tidak diisi, maka _fields_ LocationID, AttDoc, RefDoc, AdmDoc, CnsDoc pada table order diisi saat _test ordering_. Sebaliknya maka _order record_ tersebut berelasi dengan _patvisitadt record_ sehingga: - _fields_ LocationID, AttDoc, RefDoc, AdmDoc, CnsDoc pada table order terisi otomatis dengan data yang sama dari table patvisitadt. - _update_/perubahan yang terjadi pada _fields_ LocationID, AttDoc, RefDoc, AdmDoc, CnsDoc pada table patvisitadt akan dicerminkan ke _fields_ yang sama pada table order. | | | | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 48 ordercom

Field

Tipe data

Display

Keterangan

OrderComID

Order Comment ID

PK

InternalOID

FK. Internal Order ID. Dari Table 47 order

Comment

text

Comment

Komentar

UserID

User ID

Identitas user yang menuliskan komentar. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

Origin

nvarchar

Origin Table

Table dimana UserID disimpan:

  • CRM.User

CRM.ContactDetail

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti order comment sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti order comment sudah diarsip dan dipindahkan ke data warehouse. UTC+0

DelDate

Date Time

Delete Date

Jika DeleteDate terisi berarti order comment sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0

Table 49 orderatt

Field

Tipe data

Display

Keterangan

OrderAttID

Order Attachment ID

PK

InternalOID

FK. Internal Order ID. Dari Table 31 order

Address

nvarchar

Address

Lokasi file lampiran.

UserID

User ID

Identitas user yang menuliskan komentar. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

Origin

nvarchar

Origin Table

Table dimana UserID disimpan:

  • CRM.User

CRM.ContactDetail

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti order comment sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti order attachment sudah diarsip dan dipindahkan ke data warehouse. UTC+0

DelDate

Date Time

Delete Date

Jika DeleteDate terisi berarti order attachment sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0

Table 50 orderststatus

Field

Tipe data

Display

Keterangan

OrderStatID

Order Status ID

PK. Not null.

InternalOID

FK. Internal Order ID. Dari Table 47 order

OrderStatus

Nvarchar(2)

Order Status

Kode status test order, lihat Lampiran 14:
(dari Table 83 Test order status codes)

CreateDate

Date Time

Create Date

Waktu order dibuat/order date time. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti order status sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi, berarti record ini sudah masuk data warehouse dan tidak boleh diiubah lagi. UTC+0

DelDate

Date Time

Delete Date

Jika DeleteDate terisi berarti order status sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0

| | | | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 51 orderlog

Field

Tipe data

Display

Keterangan

OrderLogID

Order Log ID

PK

TblName

nvarchar

Table Name

Nama table

RecID

int

Record ID

Record ID – PK. Record dimana operasi/activity terjadi

FldName

nvarchar

Field Name

Nama field

FldValuePrev

nvarchar

Previous Value

Field Value Previous. Nilai sebelumnya

Operation

nvarchar

Operation

Lihat Lampiran 14:

  • create – create record
  • read – read record/field
  • update – update record/field
  • delete – delete record/field

SiteID

nvarchar

Site ID

FK dari table Site13

UserID

User ID

Identitas user yang melakukan operasi/activity data. Berasal dari table:

  • CRM.User
  • CRM.Contact

Origin

nvarchar

Origin Table

Table dimana UserID disimpan:

  • CRM.User
  • CRM.ContactDetail

DIDType

nvarchar

DID Type

Device ID Type. Lihat Lampiran 14:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Identitas mesin [34]dimana operasi/activity dilakukan – MAC address

SessionID

nvarchar

Session ID

Application session ID

AppID

nvarchar

Application ID

Application ID

ProcessID

nvarchar

Process ID

Process ID

WebPageID

nvarchar

Web Page ID

EventID

nvarchar

Event ID

ActivityID

nvarchar

Activity ID

Activity ID

Reason

nvarchar

Reason

Alasan operasi/activity data

LogDate

Date Time

Log Date

Date & time log data. UTC+0

### Patient Registration, Patient Visit, ADT & Test Ordering Gambar 8 hirarki patient, patvisit, patvisitadt dan ordertest Table 52 Contoh table **patient** | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | | **InternalPID** | **PatientID** | **NameFirst** | **NameMiddle** | **NameMaiden** | **NameLast** | **Suffix** | **Gender** | | 1 | 00-01-23 | Agus | | | Perikesit | | M | | 2 | 23-87-55 | Rukmini | | | Ambarsari | | F | Table 53 contoh table **patvisit** | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | | **Case #** | **Internal**

**PVID** | **SiteID** | **PVID** | **Internal**

**PID** | **EpisodeID** | **CreateDate** | | 1 | 1 | 01 | PV001 | 1 | EP001 | 2025-01-07 06:15:00 | | 2a | 2 | 01 | PV003 | 2 | EP003 | 2025-01-07 16:15:00 | | 2b | 3 | 01 | PV004 | 2 | EP004 | 2025-01-07 18:46:00 | | 3 | 4 | 01 | PV005 | 2 | EP007 | 2025-05-21 09:55:00 | Table 54 contoh table **patvisitadt**

Case

#

PVADT

ID

Internal

PVID

Code

Location

ID

Att

Doc

Ref

Doc

Cns

Doc

CreateDate

ADT Event – integrated

(standalone)

1

1

A04

2025-01-07 06:15:00

P. Registration

1

A01

IGD

D001

2025-01-07 06:25:00

P. Admission

1

A02

ICU

D001

2025-01-07 12:28:00

P. Transfer (location)

1

A02

IRNA 1

D001

2025-01-09 07:07:00

P. Transfer (location)

1

A03

IRNA 1

D001

2025-01-11 11:06:00

P. Discharge

2a

2

A04

2025-01-07 16:15:00

P. Registration

2

A01

P. Jantung

D003

2025-01-07 16:26:22

P. Admission

2

A03

P. Jantung

D003

2025-01-07 18:46:00

P. Discharge

2b

3

A01

IRNA 3

D005

D003

2025-01-07 18:50:38

P. Admission

3

A02

OK

D005

D003

2025-01-07 19:55:24

P. Transfer (location)

3

A02

Recovery 1

D005

D003

2025-01-07 21:30:47

P. Transfer (location)

3

A02

IRNA 3

D005

D003

2025-01-08 03:52:11

P. Transfer (location)

3

A03

IRNA 3

D005

D003

2025-01-08 10:54:31

P. Discharge

3

4

2025-05-21 09:55:00

P. Registration

4

P. Jantung

D003

2025-05-21 10:01:00

P. Admission

4

P. Internis

D009

2025-05-21 10:35:00

P. Transfer (loc & doc)

Table 55 contoh table **ordertest**

Case

#

Internal

OID

OrderID

PlacerID

Internal

PID

Site

ID

PVADT

ID

Req

App

Priority

Trn

Date

1

0125010700001

250107001

1

01

2

HIS

Stat

2025-01-07 07:02:00

0125010700112

250107112

1

01

3

HIS

Stat

2025-01-07 18:09:00

0125010800003

250108003

1

01

3

HIS

Routine

2025-01-08 05:33:00

0125010800107

250108107

1

01

3

HIS

Routine

2025-01-08 18:29:00

0125010900005

250109005

1

01

3

HIS

Routine

2025-01-09 06:27:00

0125011000002

250110002

1

01

4

HIS

Routine

2025-01-10 06:05:00

2b

0125010700133

250110133

2

01

9

HIS

Routine

2025-01-07 18:59:00

0125010700142

250110142

2

01

10

HIS

Routine

2025-01-07 21:07:24

3

0125052100056

2

01

15

Stat

2025-05-21 10:24:00

**Case #1** Pasien Agus Parikesit (MR 00-01-23) tiba di IGD fasyankes pada tanggal 7 Januari 2025 karena mengalami demam tinggi dan di-registrasi jam 06:15:00. Proses admission dilakukan jam 06:25. Dokter jaga (attending doctor) mendiagnosa demam berdarah dan untuk memastikannya, pada 07.02 pasien diperiksa **Panel Demam** ke laboratorium. Jam 12:28, pasien dipindah ke ICU karena kondisi memburuk. Pasien dirawat di ICU selama 2 hari dan dokter minta check **Thrombosit** 2 kali sehari – di pagi dan sore hari.. Pada 9 Januari 2025, jam 7:07 pasien dipindahkan ke Instalasi Rawat Inap 1 (IRNA 1) karena sudah stabil dan dipantau selama 2 hari. Pemeriksaan **Thrombosit** dilakukan tiap pagi. Tanggal 11 Januari 2025, jam 11:06 pasien boleh pulang (discharge). **Case #2** Pasien Rukmini Ambarsari (MR 23-87-55) konsultasi ke kardiolog – dr. D003 di Poli Jantung pada tanggal 7 Januari 2025. Registrasi dilakukan jam 16:15, dilanjutkan proses admission jam 16:26. Saat konsultasi, disarankan pemasangan _stent_. Pasien memutuskan untuk segera menjalani tindakan tersebut. Berdasarkan _policy_ fasyankes tersebut, pihak administrasi Rawat Jalan melakukan _discharge_ (18:46) untuk kemudian _admit_ di fasilitas Rawat Inap. Jam 18:50, pasien dirujuk ke IRNA 3 dan ditangani dokter bedah jantung (bedah toraks kardiovaskular) – dr. D005. Atas permintaan dr. D005, pasien diperiksa **panel Pre-Op (fungsi ginjal, elektrolit, dan tanda-tanda infeksi)** pada jam 18:59 sebagai bagian dari persiapan operasi. Pasien siap menjalani operasi, berdasarkan hasil panel Pre-Op dari laboratorium yang diterima di IRNA 3 jam 19:44 Jam 19:55 pasien dipindahkan ke kamar operasi (OK) untuk menjalani tindakan pemasangan stent. Jam 21:02, dr. D005 mengambil sample darah pasien dan order pemeriksaan lab (21:07). Test order ini selesai jam 21:52. Pasca operasi, pasien dipindahkan ke ruang pemulihan Recovery 1 (21:30) untuk dipantau selama 6 jam kedepan. Hasil laboratorium (Order ID 0125010700142) yang selesai 21:52 otomatis dikirim ke Recovery 1. Tanggal 8 Januari 2025, jam 03:52 pasien dipindah ke IRNA 3 dan pada jam 10:54 sudah boleh pulang (discharge). **Case #3** Pasien Rukmini Ambarsari (MR 23-87-55) konsultasi ke kardiolog – dr. D003 di Poli Jantung pada tanggal 21 Mei 2025. Registrasi dilakukan jam 09:55, dilanjutkan proses admission jam 10:01. Kedatangan kali ini bertujuan kontrol pasca pemasangan _stent_. Saat konsultasi, diminta periksa lab (10:24) dan setelahnya dirujuk ke Poli Internis dengan dr. D009 (10:35). Hari itu, CLQMS terputus dari HIS sehingga _test ordering_ dilakukan langsung di CLQMS. OrderID 0125052100056 adalah atas permintaan dr D003 dan tercatat berasal dari Poli Jantung. Hasil baru selesai setelah pasien pindah ke Poli Internis, sehingga tidak dilakukan pencetakan hasil otomatis ke Poli Jantung. **Note:** 1. **Table patvisitadt menyimpan status pasien, yaitu _life cycle_ pasien dari _registration_ hingga _discharge_ – sesuai kode ADT (**Lampiran 14: Value set **/** Admission – Discharge – Transfer Code**).** 2. **Jika ada ADT _events_ yang dilakukan pada saat yang bersamaan, misalnya ganti dokter dan pindah lokasi, maka dicatat di waktu yang sama (CreateDate ADT _events_ tersebut sama) tetapi dalam record yang berbeda sesuai dengan ADT _event_ yang diterima dari HIS.** 3. **_Admitting_ dan _Referring doctor_, seyogyanya tidak bisa diganti. Tetapi jika terjadi kesalahan administrasi maka menggunakan kode A08 (_Update Patient Information_).** 4. **Pasca _discharge_, tidak boleh terjadi:** 1. **perpindahan lokasi dan dokter.** 2. **perubahan data visit. Hal ini terkait dengan _billing – discharge_ berarti _billing_ sdh pasti/_closed_.** 5. **_Discharge_ dilakukan terhadap _visit_ – oleh karenanya semua _record_ terkait visit tersebut tidak bisa diedit/_update_ lagi, termasuk penambahan _test order_ tidak bisa dilakukan lagi terhadap visit tersebut.** 6. **Bisa/tidaknya suatu _visit_ di-_discharge_ bila ada hasil lab yang belum selesai tergantung pada _policy_ fasyankes. Umumnya menunggu hasil lab selesai, baru _discharge._** 7. **_Cancel discharge_** 1. **bisa dilakukan:** 1. **atas instruksi dari HIS, misalnya berupa ADT message** 2. **oleh orang tertentu saja di lab** 2. **tidak meng-_update_ _existing record_ tetapi men-_trigger_ tambahan patvisitadt record dengan Code: A13 (_cancel discharge_).** ### Specimen [\[35\]](#footnote-35) Data-data terkait specimen dikelola menggunakan tables dan Value Sets. Tables untuk mengelola specimen terdiri dari: - **containerdef**[\[36\]](#footnote-36). Berisi definisi jenis-jenis wadah _specimen_ yang digunakan setiap _site_, termasuk wadah yang digunakan untuk transport (merujuk) ke _site_ lain. Agar fleksibel, table ini hanya menyimpan atribut generik dari tiap jenis wadah, tidak sampai spesifik atribut produk. - **spccounter**. Adalah definisi Lokasi/tempat peyimpanan specimen. Misalnya refrigerator, dll. - **specimens**. Adalah table transaksi yang berisi data _specimen_ yang harus dikumpulkan dari tiap-tiap _test orders_ - (_to be collected_). - Terisi otomatis: - segera setelah _test order_ dibuat, berdasarkan pilihan test - jika user melakukan aliquot dan mencetak label tambahan (_additional label_). - Bersama dengan containertype table, digunakan menghitung penggunaan container - **specimenstatus**. Berisi data status specimen, lokasi, waktu dan _user_ yang bertanggung jawab, berikut perubahan-perubahannya. Table specimenstatus merekam proses **actual** _specimen collection_ hingga _disposal_ (dibuang, dimusnahkan). Termasuk fungsi dari table ini: - perpindahan _specimen_ dari satu lokasi ke lokasi lain: rumah pasien (_home service_), lokasi sampling MCU, dll – _tracking_. - distribusi _specimen_ ke _department_ di dalam laboratorium - **specimencollection**. Berisi data-data detail terkait _specimen collection_. Misalnya, waktu mulai dan akhir pengumpulan _specimen_ untuk urine 24 jam. Tidak semua specimen memerlukan data ini. - **specimenconsumables**. Berisi data bahan habis pakai yang digunakan di setiap _activity_ terkait specimen. Pencatatan bahan habis pakai dipicu oleh _activity_ yang dilakukan atas specimen (direpresentasikan oleh SID). Pencatatan bahan habis pakai specific hingga no katalog product yang digunakan. - **specimenprep**. Berisi data-data terkait _specimen preparation/processing_. Satu spesimen bisa mengalami beberapa kali tahap persiapan. - **specimentrans**. Berisi data-data _specimen transport_/_handling_, termasuk _packaging_ untuk dikirim ke _site_ lain. - **specimenlog**. Berisi data perubahan-perubahan yang dilakukan atas _specimens,_ yaitu tables: - specimens - specimenstatus - specimencollection - specimenprep - specimetrans _Value sets_ terkait _specimens_ adalah: - **spcact**, yaitu definisi _specimen status_/aktivitas (_activity_). Misalnya, “Collection”, “Transport”, ”Reception”, dll. - **actres**, yaitu _activity result_. - **spcstatus**, yaitu status dari specimen. - **spccon**, _specimen condition definition_. Berisi definisi kondisi specimen. Table 56 containerdef

Field

Tipe data

Display

Keterangan

ConDefID

Container Definition ID

PK. Container Definition ID

SiteID

nvarchar

FK. Site dimana container didefinisikan, dari table Site.

ConCode

nvarchar(3)

Container Code

Container code berupa abbreviated text; Bagian dari Specimen ID. Tercetak pada label/report. Constraint: unique.

ConName

nvarchar

Container Name

Nama jelas container; Tercetak pada label/report. Misal ”2H PP”

ConDesc

nvarchar

Description

Penjelasan container. Misalnya: “Container untuk specimen Glukosa 2HPP”

Additive

nvarchar

Additive

Value Set. Zat additive di dalam container.

ConClass

int

Container Class

Value Set.Container class:

  • 1: primary, kontak langsung dengan spesimen
  • 2: secondary, wadah primary container
  • 3: tertiary, wadah secondary container.

Color

int

Color

Value Set. Warna container cap.

CreateDate

Date Time

Create Date

Waktu record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti record tersebut tidak digunakan. UTC+0

Table 57 contoh container definition | **ConCode** | **ConName** | **ConDesc** | **Additive** | **Con Class** | **Pic Example[\[37\]](#footnote-37)** | | --- | --- | --- | --- | --- | --- | | 001 | SST | Evacuated blood collection tube, gel separator | Gel | 1 | | | 011 | Plain | Evacuated blood collection tube, no additive/metal-free | None | 1 | | | 012 | 2Hr PP | Evacuated blood collection tube, untuk Glukosa 2 Jam PP | Sodium Fluoride | 1 | | | 013 | Glukosa Sewaktu | Evacuated blood collection tube, untuk Glukosa Sewaktu | Sodium Fluoride | 1 | | | 014 | GTT 30 menit | Evacuated blood collection tube, untuk GTT 30 menit | Sodium Fluoride | 1 | | | 015 | GTT 60 menit | Evacuated blood collection tube, untuk GTT 60 menit | Sodium Fluoride | 1 | | | 016 | GTT 120 menit | Evacuated blood collection tube, untuk GTT 90 menit | Sodium Fluoride | 1 | | | 020 | RST | Evacuated blood collection tube, thrombin/clot activator/gel separator | Clot activator | 1 | | | 101 | EDTA - Hematologi | Evacuated blood collection tube, K2EDTA/aprotinin | K2EDTA | 1 | | | 150 | Citrate – Koagulasi | Evacuated blood collection tube, untuk koagulasi | Sodium citrate (substance) | 1 | | | 200 | Aliquot | General specimen container, no additive, non-sterile. Untuk aliquot | <null> | 1 | | | 290 | Pot Urin | Non-sterile urine specimen container IVD | <null> | 1 | | | 295 | Urine Container | Urine specimen container | <null> | 1 | | | 900 | Packing Pengiriman | Specimen Transport Packaging | <null> | 2 | | Gambar 9 Specimen packaging | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Catatan: - dalam suatu lingkungan multi-sites, semua sites harus menggunakan ConDefID yang sama. Table 58 spccounter | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | SpcCounterID | | Specimen Counter ID | PK. _Specimen counter_ ID | | SiteID | nvarchar | | Foreign Key, dari table Site | | LocationID | | | FK dari Table 34 location | | SpcCounterName | nvarchar | Specimen Counter Name | Nama _specimen counter_ | | Description | nvarchar | Description | Penjelasan _specimen counter_ | | CreateDate | Date Time | Create Date | Waktu _record_ ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record_ tersebut tidak digunakan. UTC+0 | Table 59 specimens

Field

Tipe data

Display

Keterangan

InternalSID

Internal SID

PK. Internal Specimen ID

SID

Nvarchar(30)

Sample ID (SID)

Not null. Specimen ID. Dicetak sebagai specimen/sample number. Mengikuti rumusan pada Specimen Management

Constraint: Tidak boleh ada yang sama

SiteID

FK. Not null. Site asal specimen. Dari table Site

OrderID

FK. Not null. Test order ID, dari table ordertest

ConDefID

Container Definition ID

FK. Not null. Dari table containerdef

Parent

nvarchar(30)

Parent

SID dari parent specimen. Setiap secondary specimen harus memiliki parent specimen.

Qty

int

Quantity

Quantity, menunjukkan jumlah specimen yang sama yang harus dikumpulkan. Misalnya pada urine 24 jam.

Unit

nvarchar

Unit

Value Set. Satuan specimen. Misalnya mL, L, pcs, dll.

GenerateBy

nvarchar

Generate By

Value Set. Pemicu terbentuknya record ini:

  • order: dipicu oleh proses test order
  • user: permintaan tambahan label

SchDateTime

Date Time

Scheduled Date and Time

  • Jadwal specimen collection.

CreateDate

Date Time

Create Date

Tanggal record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti specimen ini sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti specimen sudah diarsip dan dipindahkan ke data warehouse. UTC+0

CreateDate

Date Time

Waktu record dibuat. UTC+0

ArchiveDateDate Time

Jika ArchiveDate terisi berarti specimen tersebut tidak bisa dioperasikan di semua bagian aplikasi:

_A,_atau pengambilan ulang, (_secondary specimen_) _parent t_ Tetapi tidak semua _aliquot_ memiliki _parent_, misalnya saat lab menerima _sample serum_ dari fasyankes lain. Table 60 contoh transaksi specimen | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | | **Case#** | **SID**

**LLYYMMDDXXXXXSSSC** | **OrderID**

**LLYYMMDDXXXXX** | **Parent** | **Qty** | **Unit** | **Notes** | | 1 | 00250919000010010 | 0025091900001 | | 1 | | SST | | | 00250919000010120 | 0025091900001 | | 1 | | 2Hr PP | | | 00250919000011010 | 0025091900001 | | 1 | | EDTA | | 2 | 00250919000020010 | 0025091900002 | | 1 | | SST | | | 00250919000020011 | 0025091900002 | | 1 | | SST | | 3 | 00250919000030010 | 0025091900003 | | 1 | | SST | | | 00250919000032000 | 0025091900003 | 00250919000030010 | 1 | | Aliquot | | 4 | 00250919000040010 | 0025091900004 | | 1 | | SST | | | 00250919000040011 | 0025091900004 | 00250919000040010 | 1 | | SST | | 5 | 00250919000050010 | 0025091900005 | | 1 | | SST | | | 00250919000052951 | 0025091900005 | | 2 | L | Urine Container | Keterangan _Case_: 1. Order pemeriksaan Hematolongi, Kimia, termasuk 2 Jam PP. 2. Order pemeriksaan Immunologi dan Kimia, keduanya menggunakan tabung (ber-gel) SST. Phlebotomist mengambil darah sebanyak 2 tabung (**tambah**) agar pemeriksaan Kimia dan Imunologi bisa dikerjakan simultan. 3. Order pemeriksaan Immunologi, sebagian perlu merujuk sehingga dilakukan _aliquoting_ (**_secondary specimen_**). 4. Order pemeriksaan Kimia. Saat _specimen reception_ di lab, _specimen_ tidak memenuhi syarat sehingga harus diambil **ulang** menggunakan tabung yang sama. Tabung pertama dinyatakan tidak layak pakai, dikarantina dan dimusnahkan. 5. Order pemeriksaan Kimia, termasuk _Creatinine Clearence_ yang memerlukan 2 liter _specimen_ urine. Table 61 Variasi Perjalanan Specimen

Pre-analytic

Analytic

Post-analytic

Collection

Examination

Storing

  • ruang rawat inap/UGD
  • laboratorium
  • sampling station di dalam fasyankes
  • sampling station di luar fasyankes
  • rumah pasien
  • lokasi MCU
  • rujukan dari lab lain
  • instrument A
  • dipindah ke instrument B
  • workbench [38]A
  • dirujuk ke site lain (multi-site)
  • dirujuk ke fasyankes lain
  • disimpan di storage A (2-8oC) selama x hari
  • disimpan di storage B (-20oC) selama x hari

Transport

Rerun/Add

Rerun/Add

  • transport di dalam site
  • transport dari luar site
  • transport ke luar site
  • rerun
  • tambahan tes
  • di-sentrifugasi ulang
  • rerun setelah beberapa waktu.
  • tambahan tes

Handling

Results/Review

  • dikemas dg suhu tertentu
  • diberi label/penanda

Reception

  • terima specimen fasyankes
  • terima specimen rujukan

Preparation

  • sentrifugasi
  • aliquoting

Storing

Disposing

  • disimpan sementara utk pooling.
  • disimpan sementara utk dirujuk

dimusnahkan

Table 62 specimenstatus

Field

Tipe data

Display

Keterangan

SpcStaID

Specimen Status ID

PK. Not null.

SID

nvarchar

SID

Specimen ID; Dicetak sebagai bagian dari specimen/sample number.

OrderID

FK. Not null. Request ID dari Table 31 .

SpcAct

nvarchar

Specimen Activity

Value Set. Activity yang dilakukan atas specimen.

ActRes

int

Activity Result

  • null: belum ada status
  • Value Set. Activity Result.
    • 0: gagal
    • 1: berhasil dengan catatan
    • 2: berhasil

SpcStatus

nvarchar

Specimen Status

Value Set. Specimen Status.

Qty

int

Quantity

Quantity, menunjukkan jumlah specimen yang sama yang berhasil dikumpulkan.

Unit

nvarchar

Unit

Value Set. Satuan specimen. Misalnya mL, L, pcs, dll.

SpcCon

nvarchar

Condition

Value Set. Specimen condition. Specimen Condition

Comment

nvarchar

Comment

Informasi tambahan.

CurrSiteID

nvarchar

Current Site ID

FK, Current Site ID. Site dimana specimen berada. Dari table Site

CurrLocID

nvarchar

Current Location ID

Current Location, lokasi dimana specimen berada. Berisi FK, salah satu dari:

  • LocationID dari Table 15 location
  • SpcCounterID dari Table 38 spccounter
  • EquipmentID dari Table 47. equipmentlist

Origin

nvarchar

Origin

Nama table asal Foreign Key:

  • location
  • spccounter
  • equipmentlist

GeoLocationSystem

nvarchar

Geo Location System

  • Sistem/standard geolocation yang digunakan
  • Untuk pemantauan pengiriman[39] specimen.

GeoLocationData

Geo Location Data

  • Untuk pemantauan pengiriman21 specimen.

(perlu dipelajari lebih lanjut format data GeoLocation baku)

DIDType

nvarchar

DID Type

Value Set. Device ID Type:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

UserID

nvarchar

User ID

Identitas user yang melakukan perubahan status. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

LogDate

Date Time

Log Date

Waktu record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti specimen status record ini sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti record ini sudah masuk data warehouse dan tidak boleh diiubah lagi. UTC+0

| | | | | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setiap membuat record specimenstatus, aplikasi melakukan: - mengidentifikasi DID, MachineID, IP Address dan membandingkan data dari Table 47. devicelist, untuk menentukan CurrSiteID dan CurrLocID - mengidentifikasi GeoLocationData dan mencatatnya, terutama pada _activity_ terkait spesimen yg bersifat _mobile_. Misalnya pengiriman dengan kurir. **Condition** bisa berisi lebih dari satu dan dipisah dengan ^. Misalnya: HEM^LIP^FROZ **LogDate** dimana: - collect – success adalah collection date time. - _receive_ – di lokasi lab – _success_ adalah _received date time_. Table 63 Contoh perjalanan specimen (specimen status) | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **SID** | **Site**

**ID** | **Activity** | **ActRes** | **LocationID[\[40\]](#footnote-40)** | **UserID** | **Qty** | **Unit** | **Logdate** | **Keterangan** | | 00250919000010010 | 00 | Collection | Failed | IRNA_A | Tono | 1 | pc | 2024-06-30 08.30:12.002 | **diambil** | | 00250919000010010 | 00 | collection | Success | IRNA_A | Surya | 1 | pc | 2024-06-30 08.40:18.985 | **diambil** kedua kalinya. | | 00250919000010010 | 00 | Reception | Success | Lab | Jono | 1 | pc | 2024-06-30 09.01:02.028 | diterima di **Lab** | | 00250919000010010 | 00 | Aliquot | Success | Lab | Tini | 1 | pc | 2024-06-30 09.30:08.762 | di-aliquot/dibagi | | 00250919000010010 | 00 | Transport | Success | Lab | Budi | 1 | pc | 2024-06-30 09.45:19.537 | dikirim ke lab rujukan | | 00250919000010010 | 02 | Reception | Success | LabRujukan | Santi | 1 | pc | 2024-06-30 10.45:06.349 | diterima di lab rujukan | | 00250919000010010 | 00 | Reception | Success | TMS-30i[\[41\]](#footnote-41) | Bejo | 1 | pc | 2024-06-30 10.51:11.743 | diterima di TMS-30i[\[42\]](#footnote-42) | | 00250919000010010 | 00 | Reception | Success | Ref_1[\[43\]](#footnote-43) | Putri | 1 | pc | 2024-06-30 12.03:22.835 | disimpan di refrigerator | | 00250919000010010 | 00 | destroy | Success | Tungku_1 | Putra | 1 | pc | 2024-07-06 17.03:45.637 | dimusnahkan | Perubahan status dilakukan dengan _scan label_ oleh _user_/informasi otomatis. Aplikasi dan _user login_ dimanfaatkan untuk mengidentifikasi CurrSiteID, CurrLocID dan UserID. _Query message_ yang dikirim oleh _instrument_ bisa dijadikan penanda bahwa _specimen_ telah berada di dalam _instrument_ tersebut. _Failed activity_ termasuk _non-conformity_ dan dijelaskan di _field Comment_. Pengambilan sample bisa juga di luar fasyankes (tempat tinggal/kerja pasien, MCU sampling site, dll) Table 64 specimencollection

Field

Tipe data

Display

Keterangan

SpcColID

nvarchar

Specimen ColIection ID

PK. Not null.

SpcStaID

FK. Not null. Dari Table 42 specimenstatus

SpcRole

nvarchar

Specimen Role

Value Set. Peran spesimen; Lihat Table 88 Specimen Role. Default value: P – Patient

ColMethod

nvarchar

Collection Method

Value Set yang menjelaskan teknik yang digunakan untuk melakukan specimen collection.

BodySite

nvarchar

Body Site

Value Set yang menjelaskan lokasi anatomi pengambilan spesimen (jika subjeknya adalah pasien). Lihat Value set (. Field ini tidak digunakan untuk spesimen lingkungan. Contoh pada liver biopsy, maka value dari field ini adalah ‘liver.’

CntSize

int

Container Size

Value Set. Ukuran container yang digunakan.

FastingVolumenvarchar (2)floatFastingVolume

Coded Value yang menjelaskan fasting status. Lihat Value set (.:Volume specimen. Urine 24 jam memerlukan data volume dan diperhitungkan dalam pemeriksaan

  • F (Fasting): Pasien puasa
  • NF (Not Fasting): Pasien tidak puasa

NG (Not Given): Pasien tidak ditanyakan status puasanya. ColStart

Date Time

Collection Start

Waktu mulai pengumpulan specimen. UTC+0

ColEnd

Date Time

Collection End

Waktu akhir pengumpulan specimen. UTC+0

CreateDateLogDateDate TimeCreateDateLog Date

Waktu record ini dibuat.LogDate

Date Time

Log Date

Waktu record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti specimen status record ini sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti record ini sudah masuk data warehouse dan tidak boleh diiubah lagi. UTC+0

Table 65 specimentrans | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | SpcTrnID | | | PK. Not null. | | SpcStaID | | | FK. Not null. Dari Table 42 specimenstatus | | Description | nvarchar | | Penjelasan _specimen preparation_. | | Method | nvarchar | | _Coded value_ yang menjelaskan metode yang digunakan untuk memproses spesimen. | | Additive | int | | Bahan yang digunakan dalam persiapan spesimen.. | | PrepStart | Datetime | | Waktu mulai persiapan specimen. UTC+0 | | PrepEnd | Datetime | | Waktu akhir persiapan specimen. UTC+0 | | LogDate | Date Time | | Waktu record ini dibuat. UTC+0 | | ArchiveDate | Date Time | | Jika ArchiveDate terisi berarti _record_ ini sudah masuk _data warehouse_ dan tidak boleh diiubah lagi. UTC+0 | Table 66 specimenprep | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | SpcPrpID | | Specimen Preparation ID | PK. Not null. | | SpcStaID | | | FK. Not null. Dari Table 42 specimenstatus | | Description | nvarchar | Description | Penjelasan _specimen preparation_. | | Method | nvarchar | Method | _Value Set_ yang menjelaskan metode yang digunakan untuk memproses spesimen. | | Additive | nvarchar | Additive | _Value set_. Bahan yang digunakan dalam persiapan spesimen. Sama dengan Value set yang digunakan dalam Table 41 containerdef | | AddQty | Float | Additive Quantity | Jumlah additive yang digunakan | | AddUnit | nvarchar | Unit | _Value Set_. Satuan. Misalnya mL, L, dll. | | PrepStart | Datetime | Preparation Start | Waktu mulai persiapan specimen. UTC+0 | | PrepEnd | Datetime | Preparation End | Waktu akhir persiapan specimen. UTC+0 | | LogDate | Date Time | Log Date | Waktu record ini dibuat. UTC+0 | | ArchiveDate | Date Time | Archive Date | Jika ArchiveDate terisi berarti _record_ ini sudah masuk _data warehouse_ dan tidak boleh diiubah lagi. UTC+0 | Table 67 specimenlog

Field

Tipe data

Display

Keterangan

SpcLogID

Specimen Log ID

PK

TblName

nvarchar

Table Name

Nama table

RecID

int

Record ID

Record ID – FK. Record dimana perubahan terjadi

FldName

nvarchar

Field Name

Nama field

FldValuePrev

nvarchar

Previous Value

Field Value Previous. Nilai sebelumnya

UserID

User ID

Identitas user yang melakukan perubahan data. Berasal dari table:

  • CRM.User
  • CRM.Contact

SiteID

nvarchar

Site ID

FK dari table Site13

DIDType

nvarchar

DID Type

Device ID Type:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Identitas mesin [44]dimana perubahan dilakukan – MAC address

SessionID

nvarchar

Session ID

Application session ID

AppID

nvarchar

Application ID

Application ID

ProcessID

nvarchar

Process ID

Process ID

WebPageID

nvarchar

Web Page ID

EventID

nvarchar

Event ID

ActivityID

nvarchar

Activity ID

Activity ID

Reason

nvarchar

Reason

Alasan perubahan data

LogDate

Date Time

Log Date

Date & time log data. UTC+0

### Equipment & Device Management **_Equipment_** secara umum terdaftar di tables **CRM.Product** dan **productext**. Secara khusus, yaitu **_equipment_ IVD** yang digunakan di laboratorium atau fasyankes (_laboratory based_) dan memproduksi tes serta _non_\-_disposable_, _non-wearable_. **_Device_** adalah _product_ teknologi informasi berupa PC, _server_, _mobile device_ yang digunakan untuk operasional _software_ laboratorium. Pengelolaannya dilakukan melalui tables: - **equipmentlist**. Merelasikan _equipment_ dengan _department_ dalam laboratorium dan menentukan perannya (_main_/_backup_). Data _equipmentlist_ berasal dari: - table CRM.Product, jika berasal dari Perusahaan. - table productext, jika berasal dari perusahaan lain. - **comparameters**. Berisi setting komunikasi tiap _equipment_. - **devicelist**. Berisi _record_ PC, _server_ yang merupakan bagian dari sistem informasi laboratorium. Merelasikan _device_ dengan _Site_ dan _Location._ Table 68. equipmentlist

Field

Tipe data

Display

Keterangan

EquipmentID

Nvarchar(50)

Equipment ID

Berisi:

  • FK: ProductID (table Product, CRM) jika berasal dari Perusahaan.
  • FK: ProductExtID (Table 5 productext), jika berasal dari perusahaan lain.

DepartmentID

nvarchar

Department ID

  • FK; dari Table 8 department; DepartmentID sudah merepresentasikan SiteID

InstrumentID

nvarchar

Instrument ID

  • Berisi ProductNumber (table Product, CRM) jika berasal dari Perusahaan.
  • Berisi instrument serial number jika berasal dari perusahaan lain

InstrumentName

nvarchar

Instrument Name

  • Berisi ProductName (table ProductCatalog atau alias, CRM) Misalnya:
    • TMS-30i
    • BS-430
  • Instrument name perlu dijaga konsistensinya secara global karena akan menentukan QC grouping, flagging.

WorkstationID

FK. Dari table workstation.

Enable

bit

Enable

Value Set:

  • 1 (enabled): instrument enabled, aktif digunakan di Department ybs.
  • 0 (disabled): instrument disabled, tidak aktif digunakan di Department ybs.

EquipmentRole

nvarchar

Equipment Role

Peran equipment:

  • M: main
  • B: backup

CreateDate

Date Time

Create Date

Tanggal record dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti record tersebut tidak digunakan. UTC+0

Field-field EquipmentID, InstrumentName dan CreateDate pada table equipmentlist secara otomatis terisi, jika: - ada data baru pada table Product (CRM) atau productext Field DepartmentID diisi manual oleh user. Field Enable dan EquipmentRole otomatis terisi dengan default value “Y” dan “M” Gambar . Replikasi data dari table productext dan Product ke equipmentlist Table 69. comparameters

Field

Tipe data

Display

Keterangan

SiteID

nvarchar

Site ID

Dari table Site

InstrumentID

nvarchar

Instrument ID

  • Berisi ProductNumber (table Product, CRM) jika berasal dari Perusahaan.
  • Berisi instrument serial number jika berasal dari perusahaan lain

InterfaceID

nvarchar

Interface ID

ID interface; Setiap alat bisa memerlukan lebih dari satu interface

InterfaceName

nvarchar

Interface Name

Nama interface

InterfaceDesc

nvarchar

Interface Description

Deskripsi interface

Protocol

Nvarchar

Protocol

  • ASTM
  • HL7
  • DbtoDB
  • Others

IPAddress

nvarchar

IP Address

IP address dari instrument

Port

nvarchar

Port

Port instrument; hrs memperhatikan penggunaan multiple port

COM

Numeric

COM

RS232 port number

Baud

Numeric

Baud

Baud rate

Data

Numeric

Data

Data bit

Parity

Numeric

Parity

Parity bit

Stop

Numeric

Stop

Stop bit

CreateDate

Date Time

Create Date

Tanggal record dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti instrument tersebut disabled di semua bagian aplikasi: UTC+0

  • Tidak bisa dipilih untuk berbagai setting.
Table 70. devicelist

Field

Tipe data

Display

Keterangan

EquipmentID

Nvarchar(50)

Equipment ID

Berisi:

  • FK: ProductID (table Product, CRM) jika berasal dari Perusahaan.
  • FK: ProductExtID (Table 5 productext), jika berasal dari perusahaan lain.

DeviceName

nvarchar

Device Name

Nama device

Description

nvarchar

Description

Penjelasan mengenai device.

SiteID

nvarchar

Site ID

Site dimana device berada. FK dari table Site13

LocationID

nvarchar

Location ID

Lokasi dimana device berada. Berisi FK, dari

LocationID dari Table 15 location

DIDType

nvarchar

DID Type

Device ID Type:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Device [45] MAC address

IPAddress

nvarchar

IP Address

IP address dari device

CreateDate

Date Time

Create Date

Tanggal record dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti record tersebut tidak digunakan. UTC+0

**DIDType** dan **DID** bisa digunakan untuk: - _licensing_ - _security_, misalnya _device-based access_ - _troubleshooting_ termasuk mendeteksi perubahan _hardware_, _factory reset_. ### Test Management _Test management_ mengelola: 1. Test Definition berikut pembagian pekerjaan, terdiri dari: 1. **testdef**. Berisi definisi test _universal_, berlaku untuk **semua _site_**, dengan tujuan utama: 1. agregasi berbagai tes dari tiap site untuk tujuan analisis statistik 2. analisis QC 2. **testdefsite**. Berisi definisi **semua** jenis test (_test_, _group_, _calculation_, _parameter_) **tiap _site_**, sehingga bisa _customized_: 1. identitas _site_ dimana test diproduksi. 2. _department_ dimana _test_ diproduksi_._ 3. _collection requirement_, hal-hal yang harus dipenuhi/diperhatikan saat melakukan _specimen collection_. 4. _test method_, untuk pengelompokan _external QC_. 5. _target TAT._ 6. test-test dalam testdefsite adalah yang dilihat oleh _user_ di tiap _site_. 1. **testdeftech**. _test definition technical_, berisi definisi teknis dan klinis semua test, kecuali TestType CALC, GROUP dan TITLE. Hal-hal yang dikelola yaitu: 2. **testdefcal**. _test calculation_, berisi _setting_ untuk TestType **CALC**: 1. berisi definisi formula/rumus. 2. formula disimpan dalam bentuk _executable expression_ (_Phyton_[\[46\]](#footnote-46)). 3. _nested_, formula satu bisa memanfaatkan perhitungan formula lainnya. 3. **testdefgrp**. _test group_, berisi _setting_ untuk TestType **GROUP**: 1. Profile, Functional Procedure, Superset. 4. **testmap**. Berisi _test mapping_ dari satu entitas ke entitas lain. Misalnya _instrument_ ke _site_, _site_ ke server pusat (GLOBAL) atau _site_ ke HIS. 1. _producer_ atau tempat dimana test diproduksi (_workstation_ dan _instrument_ untuk test yang dikerjakan secara manual). Satu test yang sama bisa didistribusikan ke lebih dari satu workstation.  fungsi ditribusi pekerjaan 2. _mapping_ dengan kode tes tiap _instrument/equipmet_ sesuai _coding system_ yang digunakan. 3. mengendalikan jenis test apa saja yang dikerjakan suatu _workstation_ / mengatur di _workstation_ mana saja suatu test dikerjakan. 4. _specimen_/_sample_ yang digunakan 5. mengendalikan _container_ apa saja yang boleh digunakan oleh suatu test. 6. mapping test ke setiap IVD _equipment_. Beberapa test yang berbeda bisa dipetakan ke satu test yang sama di IVD _equipment_ (glukosa sewaktu, glukosa puasa, glukosa 2 hour pp, dll). Termasuk dalam _test mapping_ ini adalah jenis _specimen_ 5. **testdeflog**. Berisi data operasi/_activity_ yang dilakukan atas _test definition,_ yaitu _tables_: 1. testdef 2. testdefsite 3. testdeftech 4. testdefcal 5. testdefgrp 6. testmap 7. Pemakaian bahan habis pakai (_consumables_). 1. **testdefconsumables**. Berisi setting bahan habis pakai yang diperlukan untuk memproduksi test 1. reagent[\[47\]](#footnote-47) dan _consumables_ lain yang digunakan 2. jumlah dan satuan consumables 2. **<>** 8. <> Table 71 testdef

Field

Tipe data

Display

Keterangan

TestID

nvarchar

Test ID

PK;

Parent

nvarchar

Parent Test

  • ID test induk. Misalnya Glukosa.
  • ParentTest merujuk kepada TestID lain dalam table yang sama (self-referential)
  • Proteksi one way referral

TestCode

char (6)

Test Code

Abbreviated text, panjangnya 6 character. Constraint: Tidak boleh ada yang sama

TestName

nvarchar

Test Name

Nama test lengkap

Description

nvarchar

Description

Penjelasan definisi tes

DisciplineID

nvarchar

Discipline ID

FK. Disiplin. Dari Table 9. discipline

Method

nvarchar

Method

Metoda test

Seq

int

Sequence

Urutan posisi test

CountStat

bit

Statistic

Value Set.

  • 1: tes dihitung dalam statistic
  • 0: test tidak dihitung dalam statistic; Misal: formula. parameters

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

EndDate

Date Time

End Date

UTC+0. Jika EndDate terisi berarti test tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.
72 | | | | | --- | --- | --- | | | | | | | | | | | | | | | | | Table 73 testdefsite

Field

Tipe data

Display

Keterangan

TestSiteID

Test Site ID

PK; Internal ID, tidak ditampilkan ke user;

SiteID

nvarchar

Site ID

Dari table Site.

TestSiteCode

char (6)

Test Site Code*

Abbreviated text, panjangnya 6 character

TestSiteName

nvarchar

Test Site Name*

Nama test lengkap yang tercetak di hasil pasien

TestType

nvarchar

Test Type*

Value Set, jenis test:

TEST, PARAM, CALC, GROUP, TITLE.

Description

nvarchar

Description

Penjelasan definisi tes

DisciplineID

int

Discipline ID*

  • Disiplin (Hematology, Clinical Chemistry, Immunology, etc.); FK 🡪 discipline. DisciplineID; Discipline
  • ND – Non-Discipline untuk PARAM, GROUP.

Constraint: NOT NULL.

DepartmentID

int

Department ID*

  • FK 🡪 departent.DepartemenID; Department di site, dimana test diproduksi.
  • 0 untuk PARAM, GROUP

Constraint: NOT NULL.

ResultType

nvarchar

Result Type*

Value Set. Jenis hasil: NMRIC, RANGE, TEXT, VSET, NORES. Constraint: NOT NULL.

  • NMRIC/RANGE/TEXT/VSET untuk TestType: TEST, PARAM,
  • NMRIC untuk TestType: CALC.
  • NORES untuk Testtype: GROUP dan TITLE.

RefType

nvarchar

Reference Type*

Value Set. Jenis nilai rujukan: RANGE, THOLD, VSET, TEXT. NOREF. Constraint: NOT NULL.

  • RANGE/THOLD utk ResultType: NMRIC, RANGE.
  • VSET utk ResultType: VSET
  • TEXT utk ResultType: TEXT
  • NOREF utk ResultType: NORES.

Vset

int

Value Set

  • Berisi VsetID dari Table 72. valueset jika ResultType: VSET.
  • Berisi 0 untuk ResultType selain VSET.

Constraint: NOT NULL.

Unit1

nvarchar

Unit1

Result unit 1

Factor

numeric

Factor

Faktor konversi satuan 1 ke 2

Unit2

nvarchar

Unit2

Result unit 2

Decimal

int

Decimal Place

Jumlah angka decimal. Max 7.

ReqQty

Float

Required Quantity

Required quantity. Jumlah specimen yang dibutuhkan. Misalnya 500mL urine dll.

  • Default: NULL
  • bisa diisi nilai utk TestType: TESTS
  • NULL untuk TestType: PARAM, CALC, GROUP, TITLE.

ReqQtyUnit

nvarchar(10)

Quantity Unit

Satuan dari jumlah specimen yang dibutuhkan. Misalnya mL, L dll.

  • Default: NULL
  • bisa diisi nilai utk TestType: TESTS
  • NULL untuk TestType: PARAM, CALC, GROUP, TITLE.

CollReq

nvarchar

Collection Requirement

hal-hal yang harus dipenuhi/diperhatikan saat melakukan specimen collection

Method

nvarchar

Method

Test method untuk pengelompokan [48]QC.

ExpectedTAT

int

Expected TAT

TAT yang diharapkan, dalam satuan menit.

SeqScr

int

Sequence on Screen

Urutan test di layar.

SeqRpt

int

Sequence on Report

Urutan test di laporan.

IndentLeft

int

Left Indentation

Jarak huruf pertama dari margin sebelah kiri. Indent penting untuk antisipasi penggunaan non-monospace font.

FontSytle

int

Font Syle

Value Set. Bold, Italic, Underlined. Jika lebih dari satu, dipisahkan “^”.

VisibleScr

bit

Visible on Screen

Value Set. Ditampilkan di layar

VisibleRpt

bit

Visible on Report

Value Set. Ditampilkan di laporan

CountStat

bit

Statistic

Tidak semua tes terdefinisi merupakan real test[49]. Value Set.

  • 1: tes dihitung dalam statistic
  • 0: test tidak dihitung dalam statistic; Misal: CALC, PARAM

Level

int

Level

Diisi oleh system, tidak bisa diubah oleh user. Untuk CALC dan GROUP. Nested level. 1 – 4. Makin besar, makin banyak formula/group dalam formula/group.

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

StartDate

Date Time

Start Date

UTC+0. Jika StartDate terisi berarti test tersebut mulai digunakan di semua bagian aplikasi. Default value = CreateDate.

EndDate

Date Time

End Date

UTC+0. Jika EndDate terisi berarti test tersebut disabled di semua bagian aplikasi:

  • Menandai record ini sudah tidak berlaku lagi/discontinue.
  • Tidak bisa dipilih untuk berbagai setting.
| | | | | --- | --- | --- | | | | | | | | | | | | | | | | | Business Rules testdefsite: 1. Jika SiteID tidak terisi, maka: 1. test tersebut bisa diproduksi di semua _site_ dalam _instance_ yang sama. Prioritas produksi adalah di _site_ dimana test tersebut di-order. 2. pilihan _value_ untuk field SiteID pada table refnum dan reftxt adalah _null_ atau tiap _site_ memiliki definisi nilai rujukan masing-masing. 2. Jika SiteID terisi, maka: 1. test tersebut diproduksi di satu _site_ saja 2. field SiteID pada table refnum/reftxt otomatis terisi dengan SiteID yang bersangkutan dan tidak bisa menggunakan SiteID lain. 3. test bisa dilihat dan diorder di _site_ lain dengan penanda. 3. Relasi TestType dan ResType: | **TestType** | **ResultType** | | --- | --- | | TEST | NMRIC / RANGE / TEXT / VSET | | PARAM | NMRIC / RANGE / TEXT / VSET | | CALC | NMRIC | | GROUP, TITLE | NORES | 1. Relasi ResulType, RefType dan _reference range_ _tables_: | **ResultType** | **RefType** | **Reference Range table** | | --- | --- | --- | | NMRIC | RANGE / THOLD | refnum | | RANGE | RANGE / THOLD | refnum | | VSET | VSET | reftxt | | TEXT | TEXT | Reftxt | | NORES | NOREF | \- | 1. _Field_ Vset berisi VsetID dari _table_ valueset jika ResultType = VSET. Jika ResultType bukan VSET, maka field Vset adalah 0. 2. Jika Factor terisi maka Unit2 harus terisi. 3. _Value_ untuk _field_ Decimal adalah >= 0 dan <=7. 4. _Value_ untuk _field_ Level: 1. Diisi oleh _system_, tidak bisa diubah oleh user, NOT NULL. 2. 0 untuk TEST, PARAM, TITLE. 3. 1 – 4 untuk CALC dan GROUP. Makin besar, makin banyak formula/group dalam formula/group. 5. CreateDate, StartDate dan EndDate >= Today 6. _test_ tidak bisa dihapus tetapi bisa di-_disable_ dengan memberi nilai pada _field_ EndDate. Pemberian nilai pada _field_ EndDate di table testdefsite diikuti pemberian nilai pada _field_ dengan nama yang sama di tables ~~tesdeftech~~, testdefcal dan testdefgrp. 7. _test_ bisa di-_disable_ jika bukan anggota dari test _group_ atau _Calculated Test_. _Test_ harus dikeluarkan dari _test group_ dan/atau _Calculated Test_ terlebih dahulu, baru bisa _disable_. 8. _Future enabled_ bisa dilakukan dengan memberi nilai di _field_ StartDate. 9. _Future disabled_ bisa dilakukan dengan memberi nilai di _field_ EndDate > hari ini. Maka test tersebut akan _disabled_ di tanggal yang sudah ditentukan. 10. _Future disabled_ hanya bisa di-_set_ untuk t_est_ yang bukan anggota dari _test group_ dan/atau _Calculated Test_. _Test_ harus dikeluarkan dari _test group_ dan/atau _Calculated Test_ terlebih dahulu, baru bisa _future_ _disable._ 11. _Test type_ **Parameter (PARAM)**: 1. untuk mencatat data pasien yang diperhitungkan dengan test lain. Termasuk data tinggi dan berat badan, lingkar pinggang, tekanan darah, dll. 2. test jenis ini ditampilkan sebagai _parameter_ yang harus diisi pada saat _specimen collection_ dan/atau _specimen reception_ atau di _activity_ lainnya. 12. StartDate dan EndDate >= Today 13. Jika EndDate terisi, maka nilai yang sama otomatis diisikan ke _field_ EndDate di testdeftech, testdefcal dan testdefgrp untuk TestSiteID yang sama. Table 74 Contoh Parameters | | | | | | --- | --- | --- | --- | | **Parameter** | **Value** | **Unit** | **Notes** | | Tinggi | 155 | Cm | | | Berat | 70 | Kg | | | Lingkar pinggang | 80 | Cm | | | Sistolik | 120 | mmHg | | | Diastolik | 80 | mmHg | | | | | | --- | --- | | **testdefsite** | | | **Resource Model** | | | | {

“TestSiteId”: “string”, // PK, internal ID

“SiteId”: “string”, // FK to Site

“TestSiteCode”: “string”, // 6-char code

“TestSiteName”: “string”, // Full name printed in patient report

“TestType”: “Test \| Parameter \| Calculated \| Group \| Title”,

“Description”: “string”,

“SeqScr”: 1, // Sequence on screen

“SeqRpt”: 1, // Sequence on report

“IndentLeft”: 0, // Left indentation

“FontStyle”: \[“Bold”,”Italic”\],// Array of styles

“VisibleScr”: true, // Display on screen

“VisibleRpt”: true, // Display on report

“CountStat”: true, // Included in statistics

“CreateDate”: “2025-01-01T00:00:00Z”,

“StartDate”: “2025-01-01T00:00:00Z”,

“EndDate”: null

} | | **Endpoints** | | | Create Site Test

POST/v1/tests/site | Request

{

“SiteId”: “01”,

“TestSiteCode”: “HB”,

“TestSiteName”: “Hemoglobin”,

“TestType”: “Test”,

“Description”: “Hemoglobin concentration”,

“SeqScr”: 3,

“SeqRpt”: 3,

“IndentLeft”: 0,

“FontStyle”: \[“Bold”\],

“VisibleScr”: true,

“VisibleRpt”: true,

“CountStat”: true,

“StartDate”: “2025-01-01T00:00:00Z”

}

Response (201)

{

“TestSiteId”: “TS-000123”,

“Status”: “created”

} | | Get Site Test by ID

POST/v1/tests/site {TestSiteID} | Response

{

“TestSiteId”: “TS-000123”,

“SiteId”: “01”,

“TestSiteCode”: “HB”,

“TestSiteName”: “Hemoglobin”,

“TestType”: “Test”,

“VisibleScr”: true,

“VisibleRpt”: true,

“CountStat”: true,

“StartDate”: “2025-01-01T00:00:00Z”,

“EndDate”: null

} | | Update Site Test

PUT/v1/tests/site {TestSiteID} | Request

{

“TestSiteName”: “Hemoglobin (Hb)”,

“Description”: “Updated description”,

“VisibleRpt”: false

}

Response (200)

{

“TestSiteId”: “TS-000123”,

“Status”: “updated”

} | | Disable Site Test

DELETE/v1/tests/site {TestSiteID}

Soft delete 🡪 sets EndDate | Response (200)

{

“TestSiteId”: “TS-000123”,

“Status”: “disabled”,

“EndDate”: “2025-12-31T00:00:00Z”

} | | Search Site Test

GET/v1/tests/site | Query Parameters

SiteId=

TestType=

VisibleScr=true

VisibleRpt=true | | **Error Model** | | | Contoh Error Response | {

“ErrorCode”: “SITE-INVALID-CODE”,

“message”: “TestSiteCode must be unique.”,

“details”: {

“SiteId”: “01”,

“TestSiteCode”: “HB”

}

} | | Standard Error Codes | \| Code \| Meaning \|

\|------\|---------\|

\| SITE-INVALID-CODE \| Duplicate TestSiteCode \|

\| SITE-INVALID-DATE \| StartDate/EndDate invalid \|

\| SITE-INVALID-TYPE \| TestType not recognized \|

\| SITE-VISIBILITY-CONFLICT \| Visibility flags inconsistent \|

\| SITE-COUNTSTAT-CONFLICT \| CountStat invalid for TestType \| | | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table testdefcal digunakan untuk definisi detail dari tes dengan Test Type: **_Calculated Test_**. _Table 76._ _testdefcal_ | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | TestCalID | | Test Technical ID | PK; Internal ID. | | TestSiteID | | Test Site ID | FK 🡪 testdefsite.TestSiteID | | FormulaInput | Text | Input parameter | Mengambil dari table testdefsite. **Constraint**: Hanya yang **ResultType** berjenis numeric. Bisa terdiri dari beberapa test, dipisahkan dengan “^”. Tujuannya adalah untuk **_dependency_** **_tracking_** dan memastikan, memudahkan semua adalah yang terlibat di dalam formula ikut dalam _test order_ yang sama. | | FormulaCode | Text | Formula | _Executable_ formula/rumus. | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti record disabled di semua bagian aplikasi. UTC+0 | Business Rules: 1. TestSiteID, _referential integrity_: - ON UPDATE: CASCADE. Jika testdefsite.EndDate diisi _value_, maka _value_ yang sama disisikan ke testdefcal.EdDate 2. _Calculated Test_ menggunakan _Test_ dan _Calculated Test_ (_nested_) sebagai faktor-faktornya. Syarat _Test_ dan/atau _Calculated Test_ bisa digunakan (masuk sebagai FormulaInput) adalah: - terdaftar di tesdefsite dan testdefcal (_self-referential_) - belum memiliki EndDate. Jika EndDate faktor-faktor tersebut terisi, _Calculated Test_ terkait otomatis _suspended_ dan harus di-_review_ oleh _user_ secara _manual_. - bukan TestCalID itu sendiri (_circular reference_) - jika _Calculated Test_, maka Level maksimum yg diperbolehkan adalah 2. 3. FormulaCode ditulis dalam **_Phyton_**. 4. Semua faktor yang terlibat dalam _calculation_ adalah test dengan ResultType: NMRC dan terdaftar di _field_ FormulaInput, serta termasuk dalam _test order_ (Order ID) yang sama. 5. Level = Level tertinggi dari _Calculated Test_ dalam FormulaInput + 1; Jika di dalam FormulaInput tidak terdapat _Calculated Test_, maka Level = 1. 6. CreateDate dan EndDate >= Today 7. _Calculated Test_ bisa di-_disable_ jika bukan anggota dari _test_ _group_ atau _Calculated Test_. _Calculated Test_ harus dikeluarkan dari _test group_ dan/atau _Calculated Test_ terlebih dahulu, baru bisa _disable_. Table 77 Contoh formula Creatinine Clearance

Formula

Keterangan

{

“TestCalID”: “1”,

“SiteID”: “01”,

“TestSiteID”:”546”,

“FormulaCode”: “(140 – AGE) * WEIGHT / (72 * Crea)”,

“FormulaLang”: “Python”,

“FormulaInput”: “AGE^WEIGHT^Crea”,

“Unit1”: “mL/min”,

“Decimal”: “2”

}

  1. Usia diperhitungkan dari dob pasien dan di-copy ke AGE. AGE adalah test dengan TestType: PARAM.
  2. WEIGHT adalah test dengan TestType PARAM. Lihat Contoh Parameters.
  3. Crea adalah test dengan TestType TEST.
Table 78 CALC/GROUP Level | | | | --- | --- | | **Code** | **Level** | | A = Test1 + Test2 | 1: tidak melibatkan formula dalam factor-faktornya. | | B = Test3 + A | 2: melibatkan formula level 1 dalam salah satu faktornya. | | C = Test4 – B | 3: melibatkan formula level 2 dalam salah satu faktornya. | | D = (Test5 + B)\*A | 3: melibatkan formula level 2 (max) dan 1. | | Group V: Test1, Test2 | 1: tidak melibatkan group. | | Group W: Test3, Group V | 2: melibatkan group level 1 | | Group X: Test4, Test5, Group W | 3: melibatkan group level 2 | | Group Y: Test6, Group W, D | 3: melibatkan group level 2 dan formula level 3; yang diperhitungkan hanya group level. | | | | | | | | --- | --- | | **Testdefcal** | | | **Resource Model** | | | | {

“TestCalId”: “CALC12345”,

“TestSiteId”: “SITE001”,

“DisciplineId”: “CHEM”,

“DepartmentId”: “DEPT01”,

“FormulaInput”: \[“Na”, “K”, “Cl”, “CO2”\],

“FormulaCode”: “Na + K – (Cl + CO2)”,

“RefType”: “NMRC”,

“unit1”: “mmol/L”,

“factor”: 1.0,

“unit2”: null,

“decimal”: 2,

“createDate”: “2025-12-30T03:30:00Z”,

“endDate”: null,

} | | **Endpoints** | | | Create Site Test

POST/v1/tests/technical | Request

{

“SiteId”: “01”,

“TestSiteCode”: “HB”,

“TestSiteName”: “Hemoglobin”,

“TestType”: “Test”,

“Description”: “Hemoglobin concentration”,

“SeqScr”: 3,

“SeqRpt”: 3,

“IndentLeft”: 0,

“FontStyle”: \[“Bold”\],

“VisibleScr”: true,

“VisibleRpt”: true,

“CountStat”: true,

“StartDate”: “2025-01-01T00:00:00Z”

}

Response (201)

{

“TestSiteId”: “TS-000123”,

“Status”: “created”

} | | Get Site Test by ID

POST/v1/tests/technical {TestTechID} | Response

{

“TestTechId”: “TT-000456”,

“TestSiteId”: “TS-000123”,

“DisciplineId”: “HEMA”,

“DepartmentId”: “LAB01”,

“ResultType”: “Numeric”,

“RefType”: “NMRC”,

“Unit1”: “g/dL”,

“Decimal”: 2,

“CollReq”: “Whole blood, EDTA tube”,

“Method”: “Spectrophotometry”,

“ExpectedTAT”: 30,

“CreateDate”: “2025-01-01T00:00:00Z”,

“EndDate”: null

} | | Update Site Test

PUT/v1/tests/technical/{TestTechID} | Request

{

“Method”: “Cyanmethemoglobin”,

“ExpectedTAT”: 45

}

Response (200)

{

“TestTechId”: “TT-000456”,

“Status”: “updated”

} | | Disable Site Test

DELETE/v1/tests/technical/{TestTechID}

Soft delete 🡪 sets EndDate | Response (200)

{

“TestTechId”: “TT-000456”,

“Status”: “disabled”,

“EndDate”: “2025-12-31T00:00:00Z”

} | | Search Site Test

GET/v1/tests/technical | Query Parameters

DisciplineId=

DepartmentId=

ResultType=

RefType=

Method= | | **Error Model** | | | Contoh Error Response | {

“errorCode”: “TECH-INVALID-REF”,

“message”: “RefType TEXT cannot be used with resultType Numeric.”,

“details”: {

“TestSiteId”: “TS-000123”,

“ResultType”: “Numeric”,

“RefType”: “TEXT”

}

} | | Standard Error Codes | \|Code\|Meaning\|

\|------\|---------\|

\|TECH-INVALID-REF\|RefType mismatch with ResultType\|

\|TECH-INVALID-VSET\|vSet missing or invalid\|

\|TECH-UNIT-CONFLICT\|Unit1/Unit2/factor inconsistent\|

\|TECH-DECIMAL-INVALID\|Decimal places out of range\|

\|TECH-DATE-CONFLICT\|Overlapping StartDate/EndDate for same TestSiteId\| | Table testdefgrp digunakan untuk definisi detail dari tes dengan Test Type: **_Grp_**. Table 78. testdefgrp | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | TestGrpID | nvarchar | Test Group ID | PK; Internal ID. | | TestSiteID | | Test Site ID | FK; dari testdefsite , tidak ditampilkan ke user; TestSiteID dengan _type_ Grp. | | Member | | Member Test | FK; dari testdefsite. **Constraint**: Tidak boleh lebih dari 1 test yang sama dalam _group test_ yang sama.

Bisa _nested_ Grp. | | | | | | | | | | | | | | | | | | | | | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti record disabled di semua bagian aplikasi. UTC+0 | Table 79. testdispctrl | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | TestDispID | nvarchar | Test Display Control ID | PK; Internal ID, untuk setiap equipment. | | SiteID | | Site ID | FK; Dari table Site | | TestSiteID | | Test Site ID | FK dari Table 50 testdefsite | | Activity | nvarchar | Activity | Activity dimana test ditampilkan | | Seq | int | Sequence | _Test sequence_, urutan diplay test di dala dan _report_. | | | | | | | | | | | | | | | | | Method | nvarchar | Method | Test method untuk pengelompokan [\[50\]](#footnote-51)QC. | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti record disabled di semua bagian aplikasi. UTC+0 | Catatan: 1. <> _Table 80._ _testdefconsumables_

Field

Tipe data

Display

Keterangan

TestConsID

nvarchar

Test Consumable ID

PK; Internal ID, untuk setiap test

TestTechID

nvarchar

FK; dari Table 52. testdeftech

ItemType

nvarchar

Item Type

Jenis consumables, digunakan membatasi query untuk ItemID:

  • reagent
  • calibrators
  • controls
  • washsol (washing solution)
  • othcons (other consumables)

ItemID

nvarchar

Item ID

  • Foreign Key: UnitGroupID dari table UnitGroup 13 atau CatalogExtID dari Table 3 productcatalogext

ItemQty

nvarchar

Quantity

Jumlah item yang diperlukan untuk memproduksi satu test.

ItemUnit

nvarchar

Unit

ForeignKey UnitGroupID dari table UnitGroup; Satuan item.

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti record disabled di semua bagian aplikasi. UTC+0

Catatan: - Jika reagen/consumables yang digunakan berubah, TestTechCode bisa saja tidak berubah, tetapi TestTechID berubah - Tests yang tidak didefinisikan dalam table testdefconsumables, adalah test yang tidak memerlukan bahan habis pakai. Salah satu controh adalah formula. Misal HbA1C hasil perhitungan Hb dan A1C. - Test, reagen yang digunakan, method, instrument alias akan menentukan grouping QC. Table 81 testmap

Field

Tipe data

Display

Keterangan

TestMapID

Test Mapping ID

PK; Internal ID, untuk setiap mapping

TestSiteID

Test Site ID

FK; dari table testdefsite

HostType

nvarchar

Host Type

Value Set, Entity Type

HostID

nvarchar

Host ID

  • SiteID atau “GLOBAL”, WorkstationID
  • Constraint: tidak boleh sama dengan ClientID

HostDataSource

Host Data Source

  • Table site atau “GLOBAL”
  • Constraint: tidak boleh sama dengan ClientDatasource

HostTestCode

nvarchar

Host Test Code

Kode test host, misalnya TestSiteCode.

HostTestName

nvarchar

Host Test Name

Full test name/Abbreviated text. Optional.

ClientType

nvarchar

Client Type

Value Set, Entity Type

ClientID

nvarchar

Client ID

  • EquipmentID, WorkstationID, SiteID
  • Constraint: tidak boleh sama dengan HostID

ClientDataSource

Client Data Source

  • Table InstrumentList atau site
  • Constraint: tidak boleh sama dengan HostDatasource

ConDefID

Container Definition ID

FK. Dari Table 41 containerdef. Yang ditampilkan di UI adalah ConCode.

ClientTestCode

nvarchar

Client Test Code

Kode test client

ClientTestName

nvarchar

Client Test Name

Full test name/Abbreviated text. Optional.

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti record disabled di semua bagian aplikasi. UTC+0

Table 82 Mapping relationship | | | | | | | --- | --- | --- | --- | --- | | **Mapping relationship** | **ClientID** | **HostID** | **ClientTestCode** | **HostTestCode** | | site 🡨 🡪 global (CRM) | SiteID | “GLOBAL” | TestSiteID | TestID | | site 🡨 🡪 host | SiteID | <HIS> | TestSiteID | <host test ID> | | workstation 🡨 🡪 site | WorkstationID | SiteID | TestTechID | TestSiteID | | instrument 🡨 🡪 workstation | EquipmentID | SiteID | TestTechID | TestSiteID | | | | | | | | | | | | | | | | | | | Table 83 Contoh testdefsite | **TestSiteID** | **SiteID** | **TestSiteCode** | **TestSiteName** | **TestType** | **Description** | **SeqScr** | **SeqRpt** | **VisibleScr** | **VisibleRpt** | **CountStat** | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 1 | 01 | MCU1 | **MCU 1** | GROUP | MCU Paket 1 | 1 | 1 | 1 | 1 | 1 | | | 01 | | **HEMATOLOGI** | | Disiplin; _Discipline code_: HEMA | | | | | | | 2 | 01 | CBC | **Hematologi Lengkap** | GROUP | Judul panel | 2 | 2 | 1 | 1 | 0 | | 3 | 01 | HB | Hemoglobin | TEST | | 3 | 3 | 1 | 1 | 1 | | 4 | 01 | HCT | Hematokrit | TEST | | 4 | 4 | 1 | 1 | 1 | | 5 | 01 | ERY | Eritrosit | TEST | | 5 | 5 | 1 | 1 | 1 | | 6 | 01 | MC | **Nilai-nilai MC** | GROUP | C_orpuscular profile_ | 6 | 6 | 1 | 1 | 0 | | 7 | 01 | MCV | MCV | TEST | | 7 | 7 | 1 | 1 | 1 | | 8 | 01 | MCH | MCH | TEST | | 8 | 8 | 1 | 1 | 1 | | 9 | 01 | MCHC | MCHC | TEST | | 9 | 9 | 1 | 1 | 1 | | | 01 | | **KIMIA** | | Disiplin; _Discipline code_: CHEM | | | | | | | | 01 | | **Gula Darah** | | _Blood profile_; Sub-disiplin (BGP) | | | | | | | 10 | 01 | GLUAR | Glukosa Sewaktu | TEST | | 10 | 10 | 1 | 1 | 1 | | 11 | 01 | GLUF | Glukosa Puasa | TEST | | 11 | 11 | 1 | 1 | 1 | | 12 | 01 | GLU2HPP | Glukosa 2 Jam PP | TEST | | 12 | 12 | 1 | 1 | 1 | | | 01 | | **Profil Lipid** | | _Lipid profile_; Sub-disiplin (LPD) | | | | | | | 13 | 01 | LPDP | **Profil Lipid** | GROUP | _Lipid profile_; Group | 13 | 13 | 0 | 0 | 0 | | 14 | 01 | TC | Cholesterol Total | TEST | | 14 | 14 | 1 | 1 | 1 | | 15 | 01 | LDL | Cholesterol LDL Direk | TEST | | 15 | 15 | 1 | 1 | 1 | | 16 | 01 | HDL | Cholesterol HDL | TEST | | 16 | 16 | 1 | 1 | 1 | | 17 | 01 | TG | Trigliserida | TEST | | 17 | 17 | 1 | 1 | 1 | | 18 | 01 | RTCHDL | Rasio Chol. Total/Chol. HDL | CALC | Tchol/HDL Ratio | 18 | 18 | 1 | 1 | 0 | | | 01 | | **Fungsi Hati** | | _Liver profile_; Sub-disiplin (LVRP) | | | | | | | 19 | 01 | SGOT | Aspartate Aminotransferase | TEST | | 19 | 19 | 1 | 1 | 1 | | 20 | 01 | SGPT | Alanine Aminotransferase | TEST | | 20 | 20 | 1 | 1 | 1 | | | 01 | | **Fungsi Ginjal** | | _Kidney profile_; Sub-disiplin (KDN) | | | | | | | 21 | 01 | KDNL | **Fungsi Ginjal** | GROUP | _Kidney profile_; Group | 21 | 21 | 0 | 0 | 0 | | 22 | 01 | CREA | Kreatinin | TEST | | 22 | 22 | 1 | 1 | 1 | | 23 | 01 | CREAU | Kreatinin Urin | TEST | | 23 | 23 | 1 | 1 | 1 | | 24 | 01 | CREAC | Creatinine Clearance | CALC | Cockcroft-Gault formula | 24 | 24 | 1 | 1 | 0 | | | 01 | | **URIN** | | Disiplin; _Discipline code_: URIN | | | | | | | 25 | 01 | URUT | **Urin Rutin** | GROUP | _Urine profile_; Group. | 25 | 25 | 1 | 1 | 0 | | 26 | 01 | COLOR | Warna | TEST | | 26 | 26 | 1 | 1 | 1 | | 27 | 01 | HEIGHT | Tinggi badan | PARAM | | 27 | 27 | 1 | 1 | 0 | | 28 | 01 | WEIGHT | Berat badan | PARAM | | 28 | 28 | 1 | 1 | 0 | | 29 | 01 | WAIST | Lingkar pinggang | PARAM | | 29 | 29 | 1 | 1 | 0 | | 30 | 01 | AGE | Usia | TEST | Dihitung dari Birthdate saat order | 30 | 30 | 1 | 0 | 0 | | 31 | 01 | SISTL | Sistolik | PARAM | Hasil tensi di _nurse station_ | 31 | 31 | 1 | 1 | 0 | | 32 | 01 | DIASTL | Diastolik | PARAM | Hasil tensi di _nurse station_ | 32 | 32 | 1 | 1 | 0 | Keterangan: - MCU1 adalah _group test_ yang Namanya ditampilkan di _result report_ maupun _result view_ di dala. - Discipline dan sub-disciplines ditampilkan di _result report_ maupun _result view_. - LPDP (Profil Lipid) adalah _group tests_ yang terdiri dari TC, LDL, HDL dan TG. LPDP tidak ditampilkan dalam _result report_ maupun _result view_, agar tidak tumpang tindih dengan sub disiplin LPD. TC, LDL, HDL dan TG sendiri bisa di-_order_ secara terpisah. Hal yang sama dilakukan pada KDNL Table 84. Contoh testdeftech | **TestTechID** | **SiteID** | **TestSiteID** | **TestSiteCode** | **DisciplineID** | **DisciplineCode** | **DepartmentID** | **Vset** | **SpcType** | **SpcDesc** | **Unit1** | **Factor** | **Unit2** | **Method** | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 1 | 01 | 3 | HB | 1 | HEMA | 1 | | BLD | Whle bld | g/dL | | | | | 2 | 01 | 4 | HCT | 1 | HEMA | 1 | | BLD | Whle bld | % | | | | | 3 | 01 | 5 | ERY | 1 | HEMA | 1 | | BLD | Whle bld | 10^6/mL | | | | | 4 | 01 | 13 | GLUAR | 2 | CHEM | 3 | | SER | Serum | U/L | | | Hexokinase | | 5 | 01 | 14 | GLUF | 2 | CHEM | 3 | | SER | Serum | U/L | | | Hexokinase | | 6 | 01 | 15 | GLU2HPP | 2 | CHEM | 3 | | SER | Serum | mg/dL | | | Hexokinase | | 7 | 01 | 23 | SGOT | 2 | CHEM | 3 | | SER | Serum | mg/dL | 0.017 | mkat/L | IFCC | | 8 | 01 | 24 | SGPT | 2 | CHEM | 3 | | SER | Serum | mg/dL | | | IFCC | | 9 | 01 | 26 | CREA | 2 | CHEM | 3 | | SER | Serum | mg/dL | 88.4 | mmol/L | Enzymatic | | 10 | 01 | 27 | CREAU | 2 | CHEM | 3 | | UR | Urine | mg/dL | | | Enzymatic | | 11 | 01 | 29 | COLOR | 4 | URIN | 6 | 1002 | UR | Urine | | | | | | 12 | 01 | 30 | HEIGHT | 10 | ND | | | | | m | | | | | 13 | 01 | 31 | WEIGHT | 10 | ND | | | | | Kg | | | | | 14 | 01 | 33 | AGE | 10 | ND | | | | | Tahun | | | | kolom dengan _background_ _orange_ bukan merupakan bagian dari _table_ testdeftech tetapi dari _table_ berelasi untuk memperjelas. Table 85. Contoh testdefcal | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **TestCalID** | **SiteID** | **TestSiteID** | **TestSiteCode** | **DisciplineID** | **DisciplineCode** | **DepartmentID** | **FormulaInput** | **FormulaCode** | **Unit1** | **Factor** | **Unit2** | | 1 | 01 | 21 | RTCHDL | 2 | CHEM | 3 | TC^HDL | CHOL/HDL | | | | | 2 | 01 | 28 | CREAC | 2 | CHEM | 3 | AGE^WEIGHT^CREA | (140-AGE)\* WEIGHT/ (72\*CREA) | | | | Table 86. Contoh testdefgrp | | | | | | | | --- | --- | --- | --- | --- | --- | | **TestGrpID** | **SiteID** | **TestSiteID** | **TestSiteCode** | **Member** | **TestSiteCode** | | 1 | 01 | 1 | MCU1 | 2 | H | | 2 | 01 | 1 | MCU1 | 3 | CBC | | 3 | 01 | 1 | MCU1 | 4 | HB | | 4 | 01 | 1 | MCU1 | 5 | HCT | | 5 | 01 | 1 | MCU1 | 6 | ERY | | 6 | 01 | 1 | MCU1 | 7 | MC | | 7 | 01 | 1 | MCU1 | 11 | K | | 8 | 01 | 1 | MCU1 | 12 | BP | | 9 | 01 | 1 | MCU1 | 13 | GLUAR | | 10 | 01 | 1 | MCU1 | 14 | GLUF | | 11 | 01 | 1 | MCU1 | 15 | GLU2HPP | | 12 | 01 | 1 | MCU1 | 16 | LPDP | | 13 | 01 | 1 | MCU1 | 21 | RTCHDL | | 14 | 01 | 1 | MCU1 | 22 | LVRP | | 15 | 01 | 1 | MCU1 | 23 | SGOT | | 16 | 01 | 1 | MCU1 | 24 | SGPT | | 17 | 01 | 1 | MCU1 | 25 | KDNL | | 18 | 01 | 1 | MCU1 | 26 | CREA | | 19 | 01 | 1 | MCU1 | 27 | CREAU | | 20 | 01 | 1 | MCU1 | 28 | CREAC | | 21 | 01 | 1 | MCU1 | 29 | U | | 22 | 01 | 1 | MCU1 | 30 | COLOR | | 23 | 01 | 7 | MC | 8 | MCV | | 24 | 01 | 7 | MC | 9 | MCH | | 25 | 01 | 7 | MC | 10 | MCHC | Table 87 Contoh test mapping

TestMap

ID

HostType

HostID

Host

DataSource

Host

TestCode

Host

TestName

ClientType

Client

ID

Client

DataSource

ConDef

ID

Client

TestCode

Client

TestName

HIS

<HISID>

<HISDS>

GluS

Glukosa Sewaktu

SITE

01

testdefsite

GLUAR

Glukosa Sewaktu

HIS

<HISID>

<HISDS>

GluP

Glukosa Puasa

SITE

01

testdefsite

GLUF

Glukosa Puasa

HIS

<HISID>

<HISDS>

Glu2PP

Glukosa 2 Jam PP

SITE

01

testdefsite

GLU2HPP

Glukosa 2 Jam PP

HIS

<HISID>

<HISDS>

GOT

SGOT

SITE

01

testdefsite

SGOT

SGOT

HIS

<HISID>

<HISDS>

GPT

SGPT

SITE

01

testdefsite

SGPT

SGOT

HIS

<HISID>

<HISDS>

Crea

Creatinine

SITE

01

testdefsite

CREA

Creatinine

HIS

<HISID>

<HISDS>

CreaU

Creatinine Urine

SITE

01

testdefsite

CREAU

Creatinine Urine

SITE

01

testdeftech

GLUAR

Glukosa Sewaktu

WST

3

testdeftech

GLUAR

Glukosa Sewaktu

SITE

01

testdeftech

GLUF

Glukosa Puasa

WST

3

testdeftech

GLUF

Glukosa Puasa

SITE

01

testdeftech

GLU2HPP

Glukosa 2 Jam PP

WST

3

testdeftech

GLU2HPP

Glukosa 2 Jam PP

SITE

01

testdeftech

CREA

Creatinine

WST

3

testdeftech

CREA

Creatinine

SITE

01

testdeftech

CREAU

Creatinine Urine

WST

3

testdeftech

CREAU

Creatinine Urine

SITE

01

testdeftech

SGOT

SGOT

WST

3

testdeftech

SGOT

SGOT

SITE

01

testdeftech

SGPT

SGPT

WST

3

testdeftech

SGPT

SGOT

SITE

01

testdeftech

ALP

Alkali Phospatase

WST

3

testdeftech

ALP

Alkali Phospatase

SITE

01

testdeftech

GLUAR

Glukosa Sewaktu

WST

4

testdeftech

GLUAR

Glukosa Sewaktu

SITE

01

testdeftech

GLUF

Glukosa Puasa

WST

4

testdeftech

GLUF

Glukosa Puasa

SITE

01

testdeftech

GLU2HPP

Glukosa 2 Jam PP

WST

4

testdeftech

GLU2HPP

Glukosa 2 Jam PP

WST

3

testdeftech

GLUAR

Glukosa Sewaktu

INST

597

testdeftech

1

GLU

Glukosa Sewaktu

WST

3

testdeftech

GLUF

Glukosa Puasa

INST

597

testdeftech

2

GLU

Glukosa Puasa

WST

3

testdeftech

GLU2HPP

Glukosa 2 Jam PP

INST

597

testdeftech

3

GLU

Glukosa 2 Jam PP

WST

3

testdeftech

CREA

Creatinine

INST

597

testdeftech

1

CREA

Creatinine

WST

3

testdeftech

CREAU

Creatinine Urine

INST

597

testdeftech

10

CREA

Creatinine Urine

WST

3

testdeftech

SGOT

SGOT

INST

597

testdeftech

SGOT

SGOT

WST

3

testdeftech

SGPT

SGPT

INST

597

testdeftech

SGPT

SGOT

WST

3

testdeftech

ALP

Alkali Phospatase

INST

597

testdeftech

1

ALP

Alkali Phospatase

WST

3

testdeftech

ALP

Alkali Phospatase

INST

597

testdeftech

20

ALP

Alkali Phospatase

WST

3

testdeftech

ALP

Alkali Phospatase

INST

597

testdeftech

50

ALP

Alkali Phospatase

| | | --- | | _Test mapping_ dari HIS ke CLQMS Site. Site menggunakan **semua** data test terdefinisi (testdefsite) | | _Test mapping_ dari Site ke Workstation _Automatic Clinical Chemistry_ (CAUTO, lihat Table 19 Contoh definisi Workstation). Site menyalurkan test yang memerlukan hasil saja ke _workstation_ tersebut (testdeftech). | | Glukosa Sewaktu, GlukosaPuasa, Glukosa 2 Jam PP juga dipetakan ke Workstation _Automatic Clinical_ _Chemistry Backup_ (CBACK) untuk antisipasi jika tidak bisa dikerjakan di workstation dala (CAUTO) | | _Test mapping_ dari Workstation Workstation _Automatic Clinical Chemistry_ (CAUTO) ke instrument TMS-30i.

_Mapping_ juga termasuk kombinasi ClientTestCode dan ConDefID agar bisa dilakukan relasi _one to many_ dari instrument/equipment.

Tidak ada _value_ di _field_ ConDefID di test SGOT dan SGPT, sehingga keduanya bisa menggunakan _container_ apa saja.

Test ALP bisa menggunakan tabung plain (1), tabung dengan _clot activator_ (10) maupun dengan _additive citrate_ (50 – _plasma citrate_). | Table 88 testdeflog

Field

Tipe data

Display

Keterangan

SpcLogID

Specimen Log ID

PK

TblName

nvarchar

Table Name

Nama table

RecID

int

Record ID

Record ID – FK. Record dimana perubahan terjadi

FldName

nvarchar

Field Name

Nama field

FldValuePrev

nvarchar

Previous Value

Field Value Previous. Nilai sebelumnya

UserID

User ID

Identitas user yang melakukan perubahan data. Berasal dari table:

  • CRM.User
  • CRM.Contact

SiteID

nvarchar

Site ID

FK dari table Site13

DIDType

nvarchar

DID Type

Device ID Type:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

MachineID

nvarchar

Machine ID

Identitas mesin [51]dimana perubahan dilakukan – MAC address

SessionID

nvarchar

Session ID

Application session ID

AppID

nvarchar

Application ID

Application ID

ProcessID

nvarchar

Process ID

Process ID

WebPageID

nvarchar

Web Page ID

EventID

nvarchar

Event ID

ActivityID

nvarchar

Activity ID

Activity ID

Reason

nvarchar

Reason

Alasan perubahan data

LogDate

Date Time

Log Date

Date & time log data. UTC+0

### Reference Range _Reference range_ memperhatikan _determinant_[\[52\]](#footnote-53). Data-data terkait nilai rujukan (_reference range_) dikelola menggunakan tables dan Value Sets. Tables untuk mengelola _reference range_ terdiri dari: - **refnum**. Berisi definisi rujukan untuk RefType RANGE (_Range_) dan THOLD (_Threshold_), untuk test dengan ResultType: **_Numeric_** dan **_Range_**. - **reftxt**. Berisi definisi nilai rujukan text [\[53\]](#footnote-54)untuk test dengan ResultType: **_Value set_** dan **_Text_**. | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 89 Contoh RefType: RANGE | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Test**

**Site**

**Code** | **Spc**

**Type** | **Sex** | **Criteria** | **Age**

**Start** | **Age**

**End** | **Critical**

**Low** | **Low** | **High** | **Critical High** | | TBIL | SER | | pre-term | 0D | 1D | | 1 | 6 | | | TBIL | SER | | pre-term | 1D | 2D | | 6 | 7 | | | TBIL | SER | | pre-term | 3D | 5D | | 10 | 15 | | | TBIL | SER | | term | 0D | 1D | | 2 | 6 | | | TBIL | SER | | term | 1D | 2D | | 6 | 7 | | | TBIL | SER | | term | 3D | 5D | | 4 | 12 | | | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 90 Contoh RefType: THOLD | | | | | --- | --- | --- | | **Threshold** | **Arti** | **Contoh** | | < 200 | Hasil pasien yang _normal_ adalah kurang dari 200; Jika sama dengan 200 atau lebih besar, diinterpretasikan sebagai _abnormal_. | Nilai rujukan _Total Cholesterol_ adalah <200 | | \> 15 | Hasil pasien yang _normal_ adalah lebih dari 15; Jika sama dengan 15 atau lebih kecil, diinterpretasikan sebagai _abnormal_. | | | \>= 40 | Hasil pasien yang _normal_ adalah lebih dari atau sama dengan 40; Jika lebih kecil daripada 40, diinterpretasikan sebagai _abnormal_. | Nilai rujukan _HDL Cholesterol_ untuk laki-laki dewasa adalah >=40 | | <= 100 | Hasil pasien yang _normal_ adalah kurang dari atau sama dengan 100; Jika lebih besar daripada 100, diinterpretasikan sebagai _abnormal_. | | | | | | --- | --- | | Gambar 11 Kit insert Vitamin D | Gambar 12 Kit insert HIV | Table 91 refnum

Field

Tipe data

Display

Keterangan

RefNumID

Reference Range ID

PK.

SiteID

Site ID*

Dari table Site

TestSiteID

Test ID*

FK dari Table 60 testdefsite

SpcType

nvarchar(10)

Specimen Type

Value Set. Specimen Type; Jika null, berlaku untuk semua jenis specimen.

Sex

numeric

Sex

Value Set. Jenis kelamin:

1: female; 2: male; 3: unknown. Jika null, berlaku untuk semua.

Criteria

nvarchar

Biological Criteria[54]

Faktor biologis [55]yang mempengaruhi nilai rujukan. Optional.

AgeStart

numeric

Age Start*

Disimpan dalam days. Constraint NOT NULL.

AgeEnd

numeric

Age End*

Disimpan dalam days. Constraint NOT NULL

NumRefType

nvarchar

Numeric Reference Type*

Value Set. Jenis nilai rujukan: RANGE, THOLD

RangeType

nvarchar

Range Type

Value Set. Jenis range:

  • REF: Reference Range
  • CRTC: Critical Range
  • VAL: Validation Range
  • RERUN: Rerun Range

Constraint: NOT NULL; Default: REF

LowSign

nvarchar(2)

Low Sign

Value Set. Math sign: “<”, “>”, “<=”, “>=”

Low

numeric

Low*

Low limit; Constraint NOT NULL

HighSign

nvarchar(2)

High Sign

Value Set. Math sign: “<”, “>”, “<=”, “>=”

High

numeric

High*

High limit; Constraint NOT NULL.

Display

bit

Display on Report and Screen

Tampilkan sebagai nilai rujukan yang tercetak di laporan dan layar. Constraint: NOT NULL.

Flag

nvarchar(10)

Flag

Flag hasil

Interpretation

nvarchar

Interpretation

Interpretasi hasil

Notes

nvarchar

Notes

Penjelasan nilai rujukan, dll.

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

StartDate

Date Time

Start Date

UTC+0. Jika StartDate terisi berarti test tersebut mulai digunakan di semua bagian aplikasi. Default value = CreateDate.

EndDate

Date Time

End Date

Jika EndDate terisi berarti record tersebut disabled di semua bagian aplikasi. UTC+0

Business Rules: 1. Setiap interval didefinisikan secara eksplisit[\[56\]](#footnote-58). 2. Flag hanya berlaku untuk RangeType = REF dan CRTC. Flag = _null_ untuk VAL dan RERUN. 3. Dalam SiteID, TestSiteCode, SpcType, Sex, NumRefType yang sama, AgeStart, AgeEnd, tidak boleh _overlap_. 4. Dalam satu _record_ yang sama, Low dan High tidak boleh memiliki nilai yang sama. 5. Pengaturan _reference range_:

Criteria

NumRefType = RANGE

NumRefType = THOLD

LowSign & HighSign

tidak berlaku; harus null.

  • berlaku
  • dalam satu record yang sama, LowSign dan HighSign tidak boleh sama.

Interval reference range. Untuk records dengan nilai field yang sama:

  • SiteID
  • TestSiteCode
  • SpcType
  • Sex
  • AgeStart
  • AgeEnd
  • RangeType
  • Low dan High tidak menggunakan angka yang sama
  • tidak overlap.
  • Low = null artinya tidak ada batas bawah; High = null, artinya tidak ada batas atas.
  • urut, dari nilai terendah (null terlebih dahulu) sampai nilai tertinggi.
  • tanpa celah, Interval berikutnya harus dimulai tepat di tempat interval sebelumnya berakhir
  • tidak overlap, kondisi logis tidak boleh mengizinkan suatu hasil memenuhi lebih dari satu interval.
  • tanpa sign yg kontradiktif. Contoh:
    • interval sebelumnya berakhir dengan <= 200
    • interval berikutnya harus dimulai dengan > 200 atau >= 201
    • tetapi bukan >= 200 (overlap).
  • LowSign = null jika Low = null; HighSign = null jika High = null.
1. Display = ‘No’ untuk RangeType: CRTC, VAL, RERUN. 2. Dalam SiteID, TestSiteCode, SpcType, (Sex,) AgeStart, AgeEnd, NumRefType yang sama: 1. hanya ada satu Display = ’Yes’ 2. Sex = null tidak boleh berdampingan dengan Sex = M atau F atau Unknown. 3. StartDate dan EndDate >= Today. 4. **Criteria**. Data ini diinput saat _test ordering activity_. Table 92 Contoh refnum | **TestSite**

**Code** | **Sex** | **Age**

**Start** | **Age**

**End** | **NumRef**

**Type** | **Range**

**Type** | **Unit** | **Low**

**Sign** | **Low** | **High**

**Sign** | **High** | **Display** | **Flag** | **Interpretation** | **Keterangan** | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | Hb | M | 6205D | 73000D | RANGE | CRTC | g/dL | null | 0 | null | 6 | No | LL | | | | Hb | M | 6205D | 73000D | RANGE | REF[\[57\]](#footnote-59) | g/dL | null | 7 | null | 12 | No | L | | | | Hb | M | 6205D | 73000D | RANGE | REF | g/dL | null | 13 | null | 17 | Yes | null | | | | Hb | M | 6205D | 73000D | RANGE | REF | g/dL | null | 18 | null | 20 | No | H | | | | Hb | M | 6205D | 73000D | RANGE | CRTC | g/dL | null | 21 | null | null | No | HH | | no high limit | | Hb | M | 6205D | 73000D | RANGE | VAL | g/dL | null | 0 | null | 13 | No | null | | | | Hb | M | 6205D | 73000D | RANGE | VAL | g/dL | null | 17 | null | null | No | null | | no high limit | | Hb | F | 6205D | 73000D | RANGE | CRTC | g/dL | null | 0 | null | 6 | No | LL | | | | Hb | F | 6205D | 73000D | RANGE | REF | g/dL | null | 7 | null | 11 | No | L | | | | Hb | F | 6205D | 73000D | RANGE | REF | g/dL | null | 12 | null | 16 | Yes | null | | | | Hb | F | 6205D | 73000D | RANGE | REF | g/dL | null | 17 | null | 20 | No | H | | | | Hb | F | 6205D | 73000D | RANGE | CRTC | g/dL | null | 21 | null | null | No | HH | | | | Hb | F | 6205D | 73000D | RANGE | VAL | g/dL | null | 0 | null | 12 | No | null | | | | Hb | F | 6205D | 73000D | RANGE | VAL | g/dL | null | 16 | null | null | No | null | | | | Chol | M | 0 | 73000D | THOLD | REF | mg/dL | null | null | < | 200 | Yes | null | Desirable | | | Chol | M | 0 | 73000D | THOLD | REF | mg/dL | \>= | 200 | <= | 239 | No | \* | Limit | no low limit | | Chol | M | 0 | 73000D | THOLD | REF | mg/dL | \>= | 240 | null | null | No | \* | High | no high limit | | Chol | M | 0 | 73000D | THOLD | VAL | mg/dL | \>= | 200 | null | null | No | null | | no high limit | | VitD | null | 0 | 73000D | THOLD | REF | ng/mL | null | null | < | 20 | No | \* | Deficient | | | VitD | null | 0 | 73000D | THOLD | REF | ng/mL | \>= | 20 | <= | 30 | Yes | null | Insufficient | | | VitD | null | 0 | 73000D | THOLD | REF | ng/mL | \> | 30 | null | null | No | \* | Sufficient | no low limit | | HIV | null | 0 | 73000D | THOLD | REF | COI | null | null | < | 1 | Yes | null | Non-reactive | no low limit | | HIV | null | 0 | 73000D | THOLD | REF | COI | \>= | 1 | < | 5 | No | \* | Borderline | | | HIV | null | 0 | 73000D | THOLD | REF | COI | \>= | 5 | null | null | No | \* | Reactive | no high limit | | | | | --- | --- | | **refnum** | | | **Resource Model** | | | | {

“RefNumId”: “string”, // PK, internal ID

“SiteId”: “string”, // FK to Site (null = universal)

“TestSiteId”: “string”, // FK to testdefsite

“SpcType”: “string”, // Specimen type

“Sex”: “Male \| Female \| All \| Unknown”,

“Criteria”: “string”, // Optional biological criteria

“AgeStart”: 0, // Age lower bound (days)

“AgeEnd”: 365, // Age upper bound (days)

“NumRefType”: “Range \| Threshold”,

“RangeType”: “REF \| CRTC \| VAL \| RERUN”,

“LowSign”: “< \| ≤ \| null”, // Comparator for low bound

“Low”: 0.1, // Numeric lower bound

“HighSign”: “> \| ≥ \| null”, // Comparator for high bound

“High”: 1.2, // Numeric upper bound

“Display”: true, // Show in patient report

“Flag”: “LL \| L \| N \| H \| HH”, // Flag

“Interpretation”: “string”, // Narrative interpretation

“CreateDate”: “2025-01-01T00:00:00Z”,

“StartDate”: “2025-01-01T00:00:00Z”,

“EndDate”: null

} | | **Endpoints** | | | Create Reference Range

POST/v1/tests/refnum | Input:

{

“SiteId”: “01”,

“TestSiteId”: “TS-000124”, // Hemoglobin

“SpcType”: 1, // Specimen type: BLD

“Sex”: “2”, // Male

“AgeStart”: 6205, // 17 years

“AgeEnd”: 7300, // 20 years

“lowCritical”: 6,

“lowNormal”: 13,

“highNormal”: 17,

“highCritical”: 21,

“StartDate”: “2025-01-01T00:00:00Z”

}

<tulisan biru, dibuat secara otomatis – Interval Generator>

{

“SiteId”: “01”,

“TestSiteId”: “TS-000124”,

“SpcType”: 1,

“Sex”: “2”,

“AgeStart”: 6205,

“AgeEnd”: 7300,

“ranges”: \[

{ “Low”: 0, “High”: 6, “RangeType”: “CRTC”, “Flag”: “LL”, “Display”: 0 },

{ “Low”: 7, “High”: 12, “RangeType”: “REF”, “Flag”: “L”, “Display”: 0 },

{ “Low”: 13, “High”: 17, “RangeType”: “REF”, “Flag”: null, “Display”: 1 },

{ “Low”: 18, “High”: 20, “RangeType”: “REF”, “Flag”: “H”, “Display”: 0 },

{ “Low”: 21, “High”: 10000, “RangeType”: “CRTC”, “Flag”: “HH”, “Display”: 0 }

\],

“StartDate”: “2025-01-01T00:00:00Z”

}

Response (201)

{

“status”: “created”,

“createdRanges”: \[

{ “RefNumId”: “RN-0001”, “Flag”: “LL” },

{ “RefNumId”: “RN-0002”, “Flag”: “L” },

{ “RefNumId”: “RN-0003”, “Flag”: null },

{ “RefNumId”: “RN-0004”, “Flag”: “H” },

{ “RefNumId”: “RN-0005”, “Flag”: “HH” }

\]

} | | Create Reference Range – Import

POST/v1/tests/refnum/import | {

“testSiteId”: “TS-000321”,

“fileUrl”: “https://storage.example.com/uploads/bilirubin_ranges.csv”

} | | Get Site Test by ID

POST/v1/tests/technical {TestTechID} | Response

{

“TestTechId”: “TT-000456”,

“TestSiteId”: “TS-000123”,

“DisciplineId”: “HEMA”,

“DepartmentId”: “LAB01”,

“ResultType”: “Numeric”,

“RefType”: “NMRC”,

“Unit1”: “g/dL”,

“Decimal”: 2,

“CollReq”: “Whole blood, EDTA tube”,

“Method”: “Spectrophotometry”,

“ExpectedTAT”: 30,

“CreateDate”: “2025-01-01T00:00:00Z”,

“EndDate”: null

} | | Update Site Test

PUT/v1/tests/technical/{TestTechID} | Request

{

“Method”: “Cyanmethemoglobin”,

“ExpectedTAT”: 45

}

Response (200)

{

“TestTechId”: “TT-000456”,

“Status”: “updated”

} | | Disable Site Test

DELETE/v1/tests/technical/{TestTechID}

Soft delete 🡪 sets EndDate | Response (200)

{

“TestTechId”: “TT-000456”,

“Status”: “disabled”,

“EndDate”: “2025-12-31T00:00:00Z”

} | | Search Site Test

GET/v1/tests/technical | Query Parameters

DisciplineId=

DepartmentId=

ResultType=

RefType=

Method= | | **Error Model** | | | Contoh Error Response | {

“errorCode”: “TECH-INVALID-REF”,

“message”: “RefType TEXT cannot be used with resultType Numeric.”,

“details”: {

“TestSiteId”: “TS-000123”,

“ResultType”: “Numeric”,

“RefType”: “TEXT”

}

} | | Standard Error Codes | \|Code\|Meaning\|

\|------\|---------\|

\|TECH-INVALID-REF\|RefType mismatch with ResultType\|

\|TECH-INVALID-VSET\|vSet missing or invalid\|

\|TECH-UNIT-CONFLICT\|Unit1/Unit2/factor inconsistent\|

\|TECH-DECIMAL-INVALID\|Decimal places out of range\|

\|TECH-DATE-CONFLICT\|Overlapping StartDate/EndDate for same TestSiteId\| | Table 93 reftxt | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | RefTxtID | | Reference Range ID | PK. | | SiteID | nvarchar | Site ID\* | Dari table Site | | TestSiteID | nvarchar | Test ID\* | FK dari Table 60 testdefsite | | SpcType | nvarchar(10) | Specimen Type | _Value Set_. Specimen Type; Jika null, berlaku untuk semua jenis specimen. | | Sex | numeric | Sex | _Value Set_. Jenis kelamin:

1: female; 2: male; 3: unknown. Jika null, berlaku untuk semua. | | Criteria | nvarchar | Biological Criteria[\[58\]](#footnote-60) | Faktor biologis [\[59\]](#footnote-61)yang mempengaruhi nilai rujukan. _Optional_. | | AgeStart | numeric | Age Start\* | Disimpan dalam _days_. **Constraint** NOT NULL. | | AgeEnd | numeric | Age End\* | Disimpan dalam _days_. **Constraint** NOT NULL | | TxtRefType | nvarchar | Text Reference Type\* | _Value Set_. Jenis nilai rujukan: VSET, TEXT | | RefTxt | nvarchar | Reference Text\* | Text yang dijadikan referensi hasil. | | Flag | nvarchar(10) | Flag | _Flag_ hasil | | Notes | nvarchar | Notes | Penjelasan nilai rujukan, dll. | | CreateDate | Date Time | Create Date | Menandai kapan _record_ ini dibuat. UTC+0 | | StartDate | Date Time | Start Date | UTC+0. Jika StartDate terisi berarti _test_ tersebut mulai digunakan di semua bagian aplikasi. _Default_ _value_ = CreateDate. | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record_ tersebut _disabled_ di semua bagian aplikasi. UTC+0 | Business Rules: 1. Setiap interval didefinisikan secara eksplisit[\[60\]](#footnote-62). 2. Dalam SiteID, TestSiteCode, SpcType, Sex, TxtRefType yang sama, AgeStart, AgeEnd, tidak boleh _overlap_. 3. Jika testdeftech. Vset: 1. **terisi**, makaTxtRefType diset VSET. 2. **tidak terisi**, maka TxtRefType diset TEXT 4. Nilai RefTxt, jika TxtRefType: 1. VSET: salah satu dari _Value Set_ dari test yang bersangkutan – testdeftech.Vset 2. TEXT: _Formated free text_. 5. Dalam SiteID, TestSiteCode, SpcType, (Sex,) AgeStart, AgeEnd, TxtRefType yang sama, maka Sex = null tidak boleh berdampingan dengan Sex = M atau F atau Unknown. 6. StartDate dan EndDate >= Today Table 94 Contoh reftxt | **TestSite**

**Code** | **Sex** | **Age**

**Start** | **Age**

**End** | **NumRef**

**Type** | **Unit** | **RefTxt** | **Flag** | **Keterangan** | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | Ucolr | null | 0D | 73000D | VSET | | YELLOW | \* | Warna urin | | Uclar | null | 0D | 73000D | VSET | | CLEAR | \* | Kejernihan urin | | Scolr | null | 0D | 73000D | VSET | | BROWN | \* | Warna feses | | HIVR | null | 0D | 73000D | VSET | | Non-Reactive | \* | HIV Rapid | | Cultr | null | 0D | 73000D | VSET | g/dL | No growth | \* | Kultur | | GrStn | null | 0D | 73000D | VSET | g/dL | No organisms seen | \* | Gram stain | | ESTRDL | F | 0D | 73000D | TEXT | | Early follicular phase 20-150

Late follicular phase 40-350

Midcycle 150-750

Luteal phase 30-450

Postmenopausal <21 | null | Estradiol | Table 95 Alur definisi test | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Definition**

**tab** | **Testdefsite.**

**TestType** | **Testdeftech.**

**ResultType** | **Testdeftech.**

**RefType** | **Technical**

**tab** | **Calculation**

**tab** | **Reference**

**tab** | **Group**

**tab** | **Mapping**

**tab** | | Semua | TEST | Numeric | NMRC | Enable | Disable | Numeric | Disable | Enable | | test | | Range | NMRC | Enable | Disable | Numeric | Disable | Enable | | | | Value set | TEXT | Enable | Disable | Text | Disable | Enable | | | | Text | TEXT | Enable | Disable | Text | Disable | Enable | | | PARAM | Numeric | NMRC | Enable | Disable | Numeric | Disable | Enable | | | | Range | NMRC | Enable | Disable | Numeric | Disable | Enable | | | | Value set | TEXT | Enable | Disable | Text | Disable | Enable | | | | Text | TEXT | Enable | Disable | Text | Disable | Enable | | | CALC | Numeric | NMRC | Enable | Disable | Numeric | Disable | Enable | | | GROUP | | | Disable | Disable | Disable | Enable | Enable | | | TITLE | | | Disable | Disable | Disable | Disable | Enable | Keterangan: 1. Semua test didefinisikan di Definition tab 2. TEST, PARAM dan CALC dilanjutkan di Technical, Reference dan Mapping tab. 3. CALC dilanjutkan ke Calculation, Reference dan Mapping tab 4. GROUP dilanjutkan ke Group dan Mapping tab 5. TITLE dilanjutkan ke Mapping tab saja ### Value Set Value set bertujuan menyediakan **pilihan baku**[\[61\]](#footnote-63) untuk memastikan konsistensi _value_ yang digunakan. Terdiri dari tables berikut: - **valuesetdef**, _value set field_. Menyimpan relasi antara _value set_ dengan _field_ yang menggunakannya. Lihat Table 73. valuesetfld - **valueset**, _value set_. Yaitu _table_ untuk menyimpan definisi _value set_. Lihat Table 72. valueset Table 96. valuesetdef | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | VsetID | | Value Set ID | PK; Internal ID. | | SiteID | | Site ID | FK; Dari table Site. Jika tidak terisi, berarti berlaku sebagai _default_ bagi semua site. | | VSName | nvarchar | Value Set Name | Nama Value Set | | VSDesc | nvarchar | Table name.FieldName | Nama _table._Nama _field_ ; Penjelasan dimana value set ini digunakan. | | CreateDate | Date Time | Create Date | Menandai kapan _record_ ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record_ _disabled_ di semua bagian aplikasi. UTC+0 | Table 97. valueset | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | VID | | Value ID | PK; Internal ID. | | SiteID | | Site ID | FK; Dari table Site; Jika tidak terisi, maka berlaku untuk semua site | | VsetID | int | Value Set | FK, dari Table 73. valuesetdef.VsetID. Untuk _grouping_. | | Vorder | int | Value Order | Urutan tampilan | | Vvalue | nvarchar | Value | Value, nilai terdefinisi. | | Vdesc | nvarchar | Value Description | Penjelasan Vvalue | | | | | | | Vcategory | int | Category | _Value Set_. Kategory value set:

0: system

1: user-defined[\[62\]](#footnote-64) | | CreateDate | Date Time | Create Date | Menandai kapan _record_ ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika EndDate terisi berarti _record disabled_ di semua bagian aplikasi. UTC+0 | | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Business rules: 1. VsetID, _referential integrity_: - ON UPDATE: CASCADE. Jika valuesetdef.EndDate diisi _value_, maka _value_ yang sama disisikan ke valueset.EndDate ### Reagent Terdiri dari tables berikut: - **reagents**, berisi data reagen yang berasal dari instrument. Antara lain no. catalog, no. lot, _expiry date_, identitas vial, dst. Table Reagents bersifat transaksional, nilai-nilainya mengikuti reagent yang sedang digunakan Table 98 reagents

Field

Tipe data

Keterangan

ReagentID

nvarchar

PK. Identitas reagen:

  • Dari pabrikan
  • Key in manual?

Analyte

nvarchar

Analit. Further development

LotNumber

nvarchar

Nomor lot kalibrator.

ExpiryDate

datetime

Tanggal kadaluwarsa kalibrator

BottleID

nvarchar

Identitas botol/vial reagen

OpenBottleDate

datetime

Waktu botol/vial reagen mulai digunakan.

RoundNo

Numeric

Nomor reagent carousel

Position

Numeric

Posisi reagen di carousel

CreateDate

datetime

Waktu record ini dibuat.

### Calibration Tujuan pengelolaan data kalibrasi adalah: 1. Mendapatkan jumlah tes yang digunakan untuk kalibrasi berikut perulangannya 2. Merekam data-data teknis penting terkait proses kalibrasi (absorbance, result, factor, dll) sehingga bisa dilakukan analisis perbandingan antar instrument/site dan _early warning detection & alert_. Terdiri dari tables berikut: - **InvTransaction**13, _Inventory Transaction_. Berisi data kit kalibrator yang diterima laboratorium. Antara lain no. catalog, no. lot, _expiry date_, jumlah, dst. - **caldef**, _calibrator definition_ – merelasikan antara product calibrator dengan analyte/reagen. Antara lain no. catalog, no. lot, _expiry date_, value untuk setiap analyte/reagent – jenis instrument. Input data caldef dilakukan Technical Support Perusahaan. - **calprep**, _calibrator preparation_. Berisi data open bottle date, jumlah aliquot, user yang melakukan persiapan kalibrasi, catatan. Input data calprep dilakukan user. Data dari calprep bisa digunakan untuk pencetakan label untuk identitas setiap vial kalibrator. - **calparinst**, _calibration parameters of instrument_. Berisi data-data setting jenis dan nilai target calibrator yang digunakan tiap instrument. Data diperoleh dari _instrument interfacing_ atau input manual. - **calresinst**, _calibration results of instrument_. berisi data hasil kalibrasi dari setiap instrument (melalui _instrument interfacing_) atau di-input manual. Tabel ini menyimpan semua tes berikut hasilnya yang digunakan dalam prosedur kalibrasi, tetapi mungkin tidak semua hasil digunakan untuk menghitung factor kalibrasi. - **calfactor**, _calibration factor_. Berisi data faktor kalibrasi. Faktor kalibrasi bisa berasal dari table database instrument atau dari perhitungan. Table 99 caldef

Field

Tipe data

Keterangan

CalDefID

Nvarchar

PK

InvTransactionID

nvarchar

Foreign Key. Inventory transaction ID; dari table InvTransaction.

Format: ITRYYXXXXXX;

Calibrator

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext.
  • ProductCatalog.Type, productcatalogext.Type: calibrators

OpenBottleStability

Numeric

Stabilitas product setelah dibuka. Dalam satuan hari.

Analyte

nvarchar

Analit. Further development

LotNumber

nvarchar

Nomor lot kalibrator.

ExpiryDate

datetime

Tanggal kadaluwarsa kalibrator

Reagent

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext
  • ProductCatalog.Type, productcatalogext.Type: reagent.
  • Menunjukkan reagen yang mengguna-kan kalibrator ini. Bisa lebih dari satu nomor catalog reagen.

SpcTypeID

nvarchar

FK; Specimen Type ID; Dari

Table 37. spctype

Level

numeric

Level kalibrasi

Value

numeric

Nilai target kalibrasi.

Unit

nvarchar

Satuan dari nilai target kalibrasi.

InstrumentAlias

nvarchar

  • Brand dan type instrument. Misalnya TMS-30i. dari table instrument alias. Belum spesifik s/n.
  • Opsional.
Table 100 calprep

Field

Tipe data

Keterangan

CalPrepID

nvarchar

PK.

Calibrator

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext.
  • ProductCatalog.Type, productcatalogext.Type: calibrators

OpenBottleDateTime

datetime

Waktu membuka vial(-vial) kalibrator

LotNumber

nvarchar

Nomor lot kalibrator.

ExpiryDate

datetime

Tanggal kadaluwarsa kalibrator

Level

Numeric

Level kalibrator

Vials

Numeric

Jumlah vial (hasil aliquoting).

Note

Text

Catatan

User

nvarchar

Foreign Key, ContactID, dari table ContactDetail13

CreateDate

Date Time

Menandai kapan record ini dibuat.

Saat user melakukan persiapan bahan kalibrator (pengenceran dan aliquoting), yang bersangkutan mencatatkan kalibrator (catalog ID), no. lot, tanggal buka vial, expiry date, jumlah via hasil aliquoting. Table 101 calparinst

Field

Tipe data

Keterangan

CalParInstID

nvarchar

PK

EquipmentID

nvarchar

  • EquipmentID dari Table 47. equipmentlist
  • Jika dikerjakan manual, maka berisi WorkbenchID dari Table 10 workbench.

Calibrator

nvarchar

Nama kalibrator, berasal dari instrument.

Jika identitas kalibrator tidak ada, digantikan dengan gabungan beberap field data. Lihat Table 62 Identitas calibrator dari instrument

LotNo

nvarchar

Nomor lot bahan kalibrator

ExpiryDate

Date Time

Tanggal expired

TestInstID

nvarchar

Foreign Key dari Table 52. testdeftech

SampleType

nvarchar

Jenis sample

Level

Numeric

Calibrator level

Concentration

Numeric

Nilai target konsentrasi masing-masing level kalibrator

CalUnit

nvarchar

Satuan hasil kalibrasi. Tidak selalu sama dengan satuan concentration

CreateDate

Date Time

Menandai kapan record ini dibuat.

Table 102 Identitas calibrator dari instrument | | | | | --- | --- | --- | | **Instrument** | **Format code** | **Calibrator** | | TMS-1024i | F1? | Apakah bisa menggunakan format yg sama? | | TMS-24i | F1? | Apakah bisa menggunakan format yg sama? | | TMS-30i | F2 | F2^<TRAY_NO>^<POS_NO>^<STD_NO> | | TMS-50i | F3 | | | | | | | | | | Table 103 calresinst

Field

Tipe data

Keterangan

CalRestID

nvarchar

PK

EquipmentID

nvarchar

  • EquipmentID dari Table 47. equipmentlist
  • Jika dikerjakan manual, maka berisi WorkbenchID dari Table 10 workbench.

InstCalID

Nvarchar(5)

Identitas bahan calibrator yang berasal dari instrument. Data bisa dibandingkan dengan Level di table calparinst untuk crosscheck.

InstCalName

nvarchar

Nama bahan calibrator yang berasal dari instrument. Jika identitas kalibrator tidak ada, digantikan dengan gabungan beberap field data. Lihat Table 62 Identitas calibrator dari instrument

TestTechCode

nvarchar

  • Kode test yang berasal dari instrument. Biasanya berupa kode numeric.
  • Disamakan dengan TestSiteCode jika EquipmentID = WorkbenchID.

SampleType

nvarchar

Jenis sample dari instrument

CalDate

Date Time

Tanggal kalibrasi

Level

Numeric

Calibrator level. Data bisa dibandingkan dengan Level di table calparinst untuk crosscheck.

Blank

Numeric

Blank calibrator

Concentration

Numeric

Konsentrasi kalibrator. Data bisa dibandingkan dengan Concentration di table calparinst untuk crosscheck.

Result

Numeric

Hasil kalibrasi

ResultUnit

Nvarchar

Satuan hasil kalibrasi[63].

IsTotal

bit

  • 0: hasil original
  • 1: hasil perhitungan

LotNo

nvarchar

Nomor lot kalibrator. Optional

Aspiration

Numeric

Jumlah aspirasi/perulangan kalibrasi

Val

nvarchar

  • Jika memenuhi kriteria validasi, maka berisi “SYSTEM”
  • Jika tidak memenuhi kriteria, maka berisi UserID dari table User13

ValDateTime

Datetime

  • Jika memenuhi kriteria validasi, maka berisi date & time saat Val = “SYSTEM” direkam.
  • Jika tidak memenuhi kriteria, maka berisi date & time saat user melakukan validasi.
Calibration factor[\[64\]](#footnote-66) dihitung sesuai formula pada Lampiran 2 bagian Calibration dan Calibration Factor. ### Quality Control (QC) Terdiri dari tables berikut: - **InvTransaction**13, _Inventory Transaction_. Berisi data kit QC yang diterima laboratorium. Antara lain no. catalog, no. lot, _expiry date_, jumlah, dst. - **qcdef**, _qc definition_ – merelasikan antara product QC dengan analyte/reagen. Antara lain no. catalog, no. lot, _expiry date_, value untuk setiap analyte/reagent – jenis instrument. Input data qcdef dilakukan Technical Support Perusahaan. - **qcprep**, _qc preparation_. Berisi data open bottle date, jumlah aliquot, _user_ yang melakukan persiapan qc, catatan. Input data qcprep dilakukan user. Data dari qcprep bisa digunakan untuk pencetakan label untuk identitas setiap vial qc. - **qcparinst**, _qc parameter of instrument_. Berisi data-data setting jenis dan nilai target qc yang digunakan tiap instrument. - **qcresinst**, _qc results of instrument_. Berisi data hasil qc dari setiap instrument (melalui _instrument interfacing_) atau di-input manual. - **qcresflag**, _qc result flag_. Berisi data flag hasil (klinis) dari instrument. Setiap hasil bisa saja memiliki lebih dari satu flag. - **qcrescom**, _qc result comment_. Berisi data komentar/catatan/penjelasan tambahan atas hasil tes pasien. - **qcrestech,** _qc result technic_. Berisi data detail teknis terkait hasil seperti _reaction cell_ yang digunakan, _absorbance_, _error_, _dilution_, dll. Table 104 qcdef

Field

Tipe data

Keterangan

QCDefID

nvarchar

PK

InvTransactionID

nvarchar

Foreign Key. Inventory transaction ID; dari table InvTransaction13.

Format: ITRYYXXXXXX;

Control

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext.
  • ProductCatalog.Type, productcatalogext.Type: controls

OpenBottleStability

Numeric

Stabilitas product setelah dibuka. Dalam satuan hari.

Analyte

nvarchar

Analit. Further development

LotNumber

nvarchar

Nomor lot kalibrator.

ExpiryDate

datetime

Tanggal kadaluwarsa kalibrator

Reagent

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext
  • ProductCatalog.Type, productcatalogext.Type: reagent.
  • Menunjukkan reagen yang mengguna-kan kalibrator ini. Bisa lebih dari satu nomor catalog reagen.

SpcTypeID

nvarchar

Foreign Key; Specimen Type ID; Dari Table 37. spctype

Level

numeric

Level control[65].

Value

numeric

Nilai target kalibrasi.

Unit

nvarchar

Satuan dari nilai target kalibrasi.

InstrumentAlias

nvarchar

  • Brand dan type instrument. Misalnya TMS-30i. dari table instrument alias. Belum spesifik s/n.
  • Opsional.
Table 105 qcprep

Field

Tipe data

Keterangan

QCPrepID

nvarchar

PK.

Control

nvarchar

  • Foreign Key: CatalogID dari ProductCatalog13 atau CatalogExtID dari Table 3 productcatalogext.
  • ProductCatalog.Type, productcatalogext.Type: controls

OpenBottleDateTime

datetime

Waktu membuka vial(-vial) kontrol

LotNumber

nvarchar

Nomor lot kontrol

ExpiryDate

datetime

Tanggal kadaluwarsa bahan kontrol

Level

Numeric

Level bahan kontrol; Opsional, tidak diisi jika control level yang berbeda menggunakan no. catalog terpisah.

Vials

Numeric

Jumlah vial (hasil aliquoting).

Note

Text

Catatan

User

nvarchar

Foreign Key, ContactID, dari table ContactDetail13

CreateDate

Date Time

Menandai kapan record ini dibuat.

Saat user melakukan persiapan bahan kontrol (pengenceran dan aliquoting), yang bersangkutan mencatatkan control (catalog ID), no. lot, tanggal buka vial, expiry date, jumlah via hasil aliquoting. Table 106 qcparinst

Field

Tipe data

Keterangan

QCParInstID

nvarchar

PK

EquipmentID

nvarchar

  • Berisi ProductNumber (table Product, CRM) jika berasal dari Perusahaan.
  • Berisi instrument serial number jika berasal dari perusahaan lain
  • Foreign Key dari table InstrumentList

ControlInst

nvarchar

Identitas bahan control yang berasal dari instrument.

LotNo

nvarchar

Nomor lot bahan kontrol

ExpiryDate

Date Time

Tanggal expired

TestInstID

nvarchar

Foreign Key dari Table 52. testdef

SampleType

nvarchar

Jenis sample

Level

Numeric

Control level

Mean

Numeric

Nilai mean masing-masing level control

SD

Numeric

Nilai simpangan baku masing-masing level control

QCUnit

nvarchar

Satuan hasil kalibrasi.

CreateDate

Date Time

Menandai kapan record ini dibuat.

Table 107 qcresinst

Field

Tipe data

Keterangan

QCRestID

nvarchar

PK

EquipmentID

nvarchar

  • EquipmentID dari Table 47. equipmentlist
  • Jika dikerjakan manual, maka berisi WorkbenchID dari Table 10 workbench.

InstCtrlID

Nvarchar(5)

Identitas bahan control yang berasal dari instrument. Data bisa dibandingkan dengan Level di table qcparinst untuk crosscheck.

InstCtrlName

nvarchar

Nama bahan control yang berasal dari instrument.

TestTechCode

nvarchar

  • Kode test yang berasal dari instrument. Biasanya berupa kode numeric.
  • Disamakan dengan TestSiteCode jika EquipmentID = WorkbenchID.

SampleType

nvarchar

Jenis sample

QCDate

Date Time

Tanggal kontrol

Result

Numeric

Hasil kontrol

ResultUnit

Nvarchar

Satuan hasil kontrol[66].

LotNo

nvarchar

Nomor lot kontrol

Val

nvarchar

  • Jika memenuhi kriteria validasi, maka berisi “SYSTEM”
  • Jika tidak memenuhi kriteria, maka berisi UserID dari table User13

ValDateTime

Datetime

  • Jika memenuhi kriteria validasi, maka berisi date & time saat Val = “SYSTEM” direkam.
  • Jika tidak memenuhi kriteria, maka berisi date & time saat user melakukan validasi.

CreateDate

Date Time

Menandai kapan record ini dibuat.

### Results Hasil pasien dikelola menggunakan tabel-tabel sebagai berikut: - **patres**, _patient results_. - terisi otomatis akibat _test ordering activity_. - Berisi data hasil pasien, baik yang berasal dari _instrument_ maupun manual. - Menyimpan semua hasil [\[67\]](#footnote-69)pasien dari _instrument_, baik yang memiliki _test order_ ataupun tidak. - **patresflag**, patient result flag. Berisi data flag hasil (klinis) dari _instrument_. Setiap hasil bisa saja memiliki lebih dari satu flag. - **patrescom**, _patient result comment_. Berisi data komentar/catatan/penjelasan tambahan atas hasil tes pasien. - **patrestech,** _patient result technic_. Berisi data detail teknis terkait hasil seperti _reaction cell_ yang digunakan, _absorbance_, _error_, _dilution_, dll. - **patrestatus**, _patient result status_. Berisi data tindakan apa saja yang telah/sedang dilakukan atas hasil tes pasien. - **flagdef**, _flag definition_. Berisi definisi flag dari berbagai macam instrument - **techdef**, _technical definition_. - **patreslog**, _patient result audit_**.** Berisi data perubahan-perubahan atas data hasil pasien, yang meliputi tables: - patres - patresflag - patrescom - patrestech - patrestatus Berisi data hasil analisis dari masing-masing instrument: - Semua hasil (validated/not validated) disimpan - Expiry date Table 108 patres

Field

Tipe data

Display

Keterangan

ResultID

Int

Result ID

PK

SiteID

Site ID*

FK. Not null. Site asal specimen. Dari table Site

OrderID

Order ID

FK. Test order ID, dari table ordertest

InternalSID

Internal SID

FK. Internal Specimen ID dari table specimens

SID

Nvarchar(30)

Sample ID (SID)

  • Specimen ID; Dari Table 40 specimens.
  • Jika null, berarti hasil tidak memiliki test order.

InstSID

Nvarchar(30)

Instrument SID

Sample identity yang berasal dari instrument.

TestSiteID

Test Site ID

FK; dari table testdefsite;

TestSiteCode

char (6)

Test Site Code

Abbreviated text, panjangnya 6 character

AspCnt

int

Aspiration Count

Aspiration counter. Menunjukan aspirasi ke# atau perulangan ke#. Default value adalah 1

Result

Nvarchar

Result

Hasil analisis dari instrument/manual

SampleType

Nvarchar(50)

Sample Type

Data dari instrument.

  • Serum
  • Urine
  • Plasma
  • CSF
  • Etc.

ResultDateTime

Date Time

Result Date Time

Tanggal analisis/result dari instrument. UTC+0

WorkstationID

Workstation ID

FK, dari Table 14 workstation; Workstation dimana test dikerjakan.

EquipmentID

Equipment ID

FK, dari Table 47. equipmentlist; Equipment dimana test dikerjakan.

RefNumID

Reference Range ID

FK, dari table refnum

RefTxtID

Reference Text ID

FK, dari table reftxt

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti result sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi, berarti record ini sudah masuk data warehouse dan tidak boleh diiubah lagi. UTC+0

DelDate

Date Time

Delete Date

Jika DeleteDate terisi berarti result sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0

Business Rules: 1. Semua hasil ditampung di patres: 1. hasil yang berasal dari _Test Ordering activity_ (memiliki SID) 2. hasil selain dari _Test Ordering_. 2. **RefNumID dan RefTxtID adalah _mutually exclusive_. Tiap _record_ patres yang memiliki salah satu dari keduanya.** 3. **AspCnt – Aspiration Count. Menandakan banyaknya test tersebut dilakukan (_rerun_). Data berasal dari:** 4. **perhitungan otomatis di CLQMS, yaitu Result pertama dihitung sebagai AspCnt=1; Selanjutnya jika ada Result dengan ResultDateTime yang berbeda dengan _record_ yang sudah ada, maka AspCnt bertambah satu (1).** 5. **_instrument_, misalnya OBX-17 pada Mindray BS-430, CL-900i. Perhatikan bahwa tidak semua _instrument_ menggunakan OBX-17 dengan cara yang sama.** Table 109 patresflag | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | ResFlagID | Int | Result Flag ID | PK | | ResultID | Int | Result ID | Foreign Key dari Table 68 patres | | Flag | Nvarchar(50) | Flag | Flag dari instrument | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika terisi berarti _record_ sudah _closed_. UTC+0 | | ArchiveDate | Date Time | Archive Date | Jika terisi, berarti _record_ ini sudah masuk _data warehouse_ dan tidak boleh diiubah lagi. UTC+0 | | DelDate | Date Time | Delete Date | Jika terisi berarti _record_ sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0 | | | | | | | | | | | | | | | | | | | Business Rules: 1. Table patresflag menyimpan data flag dari instrument as is[\[68\]](#footnote-71). 2. Untuk menampilkan flag, harus merelasikan dengan table flagdef **dan** untuk InstrumentName yang sama. 3. ResultID dan Flag bisa dijadikan PK sehingga ResFlagID tdak diperlukan. Table 110 patrestech | **Field** | **Tipe data** | **Display** | **Keterangan** | | --- | --- | --- | --- | | ResTechID | Int | Result Tech ID | PK | | ResultID | Int | Result ID | Foreign Key dari Table 68 patres | | DBField | nvarchar(50) | Database Field | Nama field dari database instrument | | DBValue | nvarchar(100) | Value | Nilai dari field tersebut | | CreateDate | Date Time | Create Date | Menandai kapan record ini dibuat. UTC+0 | | EndDate | Date Time | End Date | Jika terisi berarti _record_ sudah _closed_. UTC+0 | | ArchiveDate | Date Time | Archive Date | Jika terisi, berarti _record_ ini sudah masuk _data warehouse_ dan tidak boleh diiubah lagi. UTC+0 | | DelDate | Date Time | Delete Date | Jika terisi berarti _record_ sudah dihapus dan tidak bisa di-akses oleh user biasa. UTC+0 | Table 111 patrestatus

Field

Tipe data

Display

Keterangan

ResStatusID

PK.

ResultID

Result ID

FK. Not null. Dari table patres

SID

Nvarchar(30)

Sample ID (SID)

  • Specimen ID; Dari Table 40 specimens.
  • Jika null, berarti hasil tidak memiliki test order.

TestAct

nvarchar

Test Activity

Value Set. Activity yang dilakukan atas test. Berdasarkan test life cycle dari Table 4 Test activity & status

ActRes

int

Activity Result

  • null: belum ada status
  • Value Set. Activity Result.
    • 0: gagal
    • 1: berhasil dengan catatan
    • 2: berhasil

TestStatus

nvarchar

Test Status

Value Set. Test Status.

CurrSiteID

nvarchar

Current Site ID

FK, Current Site ID. Site dimana Action dilakukan. Dari table Site

CurrLocID

nvarchar

Current Location ID

Current Location, lokasi dimana Action dilakukan. Berisi FK, salah satu dari:

  • LocationID dari Table 20 location
  • WorkstationID dari Table 14 workstation
  • EquipmentID dari Table 47. equipmentlist

Origin

nvarchar

Origin

Nama table asal Foreign Key:

  • location
  • workstation
  • equipmentlist

GeoLocationSystem

nvarchar

Geo Location System

  • Sistem/standard geolocation yang digunakan
  • Untuk pemantauan pengiriman[69] specimen.

GeoLocationData

Geo Location Data

  • Untuk pemantauan pengiriman21 specimen.

(perlu dipelajari lebih lanjut format data GeoLocation baku)

DIDType

nvarchar

DID Type

Value Set. Device ID Type:

  • Windows: Device ID
  • Android: AAID
  • IOS: IDFA

DID

nvarchar

DID

Device ID

UserID

nvarchar

User ID

Identitas user yang melakukan perubahan status. Berasal dari table:

  • CRM.User
  • CRM.ContactDetail

LogDate

Date Time

Log Date

Waktu record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika EndDate terisi berarti specimen status record ini sudah closed. UTC+0

ArchiveDate

Date Time

Archive Date

Jika ArchiveDate terisi berarti record ini sudah masuk data warehouse dan tidak boleh diiubah lagi. UTC+0

**CurrSiteID**, termasuk lab rujukan tempat test diproduksi. _Table 112 flagdef_

Field

Tipe data

Keterangan

FlagDefID

Int

Flag Definition ID

PK

InstrumentName

nvarchar(100)

Instrument Name

  • Berisi ProductName (table ProductCatalog atau alias, CRM) Misalnya:
    • TMS-30i
    • BS-430

Instrument name perlu dijaga konsistensinya secara global karena akan menentukan QC grouping, flagging.

Flag

Nvarchar(50)

Flag

Flag dari instrument

FlagText

Nvarchar(100)

Full Text

Text yang ditampilkan ke user

FlagDesc

Nvarchar(255)

Description

Penjelasan/arti flag

OnScreen

Bit

On Screen

Y: ditampilkan di layar

N: sebaliknya

OnResult

Bit

On Result

Y: ditampilkan di result report

N: sebaliknya

CreateDate

Date Time

Create Date

Menandai kapan record ini dibuat. UTC+0

EndDate

Date Time

End Date

Jika terisi berarti record sudah tidak digunakan lagi. UTC+0

### Test Ordering, Samples, Tests dan Distribusi Pekerjaan Berikut adalah penjelasan apa yang terjadi ketika dilakukan _activity_ terkait test (Table 3 Test Life Cycle). Keterangan: | | | | --- | --- | | OrderID | 0125010700001 | | Order Date&Time | 2025-01-07 07:02:00 | | WorkstationID | 3: CAUTO

4: CBACK | | EquipmentID | 597: TMS-30i (s/n 6016850924)

58: TMS-24i (s/n 2711771113) | | Specimen Reception Date & Time | 2025-01-07 07:30:00 | | Instrument Query Date & Time | 2025-01-07 07:40:00 | **Test Ordering** Table 113 patres saat test ordering | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | ResultID | SiteID | OrderID | SID | SampleID

(_instrument_) | TestSiteCode | AspCnt | Result (instrument) | SampleType

(instrument) | ResultDateTime

(instrument) | WorkstationID | EquipmentID | CreateDate | | 1 | 01 | <OrderID> | <OrderID>0010 | | CREA | | | SERUM | | | | 2025-01-07 07:02:00 | | 2 | 01 | <OrderID> | <OrderID>0010 | | CREAU | | | URINE | | | | 2025-01-07 07:02:00 | | 3 | 01 | <OrderID> | <OrderID>0010 | | SGOT | | | SERUM | | | | 2025-01-07 07:02:00 | | 4 | 01 | <OrderID> | <OrderID>0010 | | SGPT | | | SERUM | | | | 2025-01-07 07:02:00 | | 5 | 01 | <OrderID> | <OrderID>0010 | | ALP | | | SERUM | | | | 2025-01-07 07:02:00 | | | | | | | GLUAR | 1 | | SERUM | | | | | | | | | | | GLUF | 1 | | SERUM | | | | | | | | | | | GLU2HPP | 1 | | SERUM | | | | | Table 114 patresstatus saat test ordering | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | ResStatusID | ResultID | SID | TestSiteCode | TestAct | ActRes | TestStatus | CurrSiteID | CurrLocID | Origin | | | | | 1 | 1 | <OrderID>0010 | CREA | ORD | 2 | Ordered | 01 | lab | site | | | 2025-01-07 07:02:00 | | 2 | 2 | <OrderID>0010 | CREAU | ORD | 2 | Ordered | 01 | lab | site | | | 2025-01-07 07:02:00 | | 3 | 3 | <OrderID>0010 | SGOT | ORD | 2 | Ordered | 01 | lab | site | | | 2025-01-07 07:02:00 | | 4 | 4 | <OrderID>0010 | SGPT | ORD | 2 | Ordered | 01 | lab | site | | | 2025-01-07 07:02:00 | | 5 | 5 | <OrderID>0010 | ALP | ORD | 2 | Ordered | 01 | lab | site | | | 2025-01-07 07:02:00 | | 6 | 1 | <OrderID>0010 | CREA | SCH | 2 | Scheduled | 01 | 3 | workstation | | | 2025-01-07 07:30:00 | | 7 | 2 | <OrderID>0010 | CREAU | SCH | 2 | Scheduled | 01 | 3 | workstation | | | 2025-01-07 07:30:00 | | 8 | 3 | <OrderID>0010 | SGOT | SCH | 2 | Scheduled | 01 | 3 | workstation | | | 2025-01-07 07:30:00 | | 9 | 4 | <OrderID>0010 | SGPT | SCH | 2 | Scheduled | 01 | 3 | workstation | | | 2025-01-07 07:30:00 | | 10 | 5 | <OrderID>0010 | ALP | SCH | 2 | Scheduled | 01 | 3 | workstation | | | 2025-01-07 07:30:00 | | 11 | 1 | <OrderID>0010 | CREA | SCH | 2 | Scheduled | 01 | 4 | workstation | | | 2025-01-07 07:30:00 | | 12 | 2 | <OrderID>0010 | CREAU | SCH | 2 | Scheduled | 01 | 4 | workstation | | | 2025-01-07 07:30:00 | | 13 | 3 | <OrderID>0010 | SGOT | SCH | 2 | Scheduled | 01 | 4 | workstation | | | 2025-01-07 07:30:00 | | 14 | 4 | <OrderID>0010 | SGPT | SCH | 2 | Scheduled | 01 | 4 | workstation | | | 2025-01-07 07:30:00 | | 15 | 5 | <OrderID>0010 | ALP | SCH | 2 | Scheduled | 01 | 4 | workstation | | | 2025-01-07 07:30:00 | | 16 | | | | ANA | Schedule failed | | | | | | 597 | | | | | | | VER | Waiting to be analyse | | | | | | 597 | | | | | | | REV | Analysed | | | | | | 597 | | | | | | | REP | Analysis failed | | | | | | 597 | | | | | | | | | | | | | | 597 | | | | | | | | | | | | | | 58 | | | | | | | | | | | | | | 58 | | | | | | | | | | | | | | 58 | | | | | | | | | | | | | | 58 | | | | | | | | | | | | | | 58 | | ### Result Distribution Distribusi hasil yang dimaksud adalah hasil pemeriksaan pasien, meliputi: 1. Cetak hardcopy, baik otomatis maupun manual 2. Cetak softcopy, baik otomatis maupun manual 3. Kirim hasil cetak softcopy via email, baik otomatis maupun manual 4. Kirim hasil cetak softcopy via instant messaging applications, baik otomatis maupun manual ### Result Reporting & Visualization Result Reporting & Visualization adalah pengaturan tampilan di dala maupun report (softcopy, hardcopy). Terdiri dari: - **<>** - <> | | | | | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ### Audit Prinsip audit adalah mencatat (_to log_): - data yang diubah (**what**), sehingga perlu pencatatan detail: - nama table - nama field - previous value - kapan terjadinya perubahan (**when**) - siapa yang melakukan perubahan (**who**) - bagaimana perubahan dilakukan (**how**) yaitu dengan mencatat applicationID, halaman web, _session_, _event_, mekanisme (manual atau perulangan dari instrument – _duplo_) 🡪 _system identification_. - dari lokasi mana perubahan dilakukan (**where**), yaitu site, _workstation_, pc dimana perubahan dilakukan (termasuk informasi lokasi) 🡪 _access location_. - alasan perubahan (**why**), diinput oleh user yang melakukan perubahan Jenis-jenis log yang digunakan dalam audit trail adalah: 1. **_data log_**, yaitu _log of events_ (catatan kejadian) terkait data. Antara lain: 1. data demografi pasien, _visit_, _requests_, _samples_, hasil dan semua yang terkait dengan pasien 2. data _user_ 3. data _master_ (tests, location, doctors, dll) 4. data archiving 5. kegagalan (_transaction errors_), misalnya kegagalan posting database, dll 2. **_service log_**, yaitu catatan kejadian terkait _services_ [\[70\]](#footnote-73). Antara lain: 1. komunikasi: _host communication_, _instrument communication_, dll 2. _resource access_: database access/backup/restore, network access, internet access, (IP address & port), dll. 3. manual/automatic _printing_ (_service class_) 4. manual/automatic _messaging_ 5. kegagalan (_system error_) 3. **_security log_**, yaitu catatan kejadian terkait pengaturan akses, hal-hal terkait lintas boundary: 1. user logins and logouts (_security class_) 2. accessing sensitive files/folders 3. network share access attempts 4. perubahan system security settings 5. percobaan input password yang gagal 6. install/uninstall aplikasi 7. system shutdown/restart events 8. perubahan user access (_disabled_, perubahan _access rights_, dll) 9. kegagalan (_security error_) Jenis interaksi (tindakan) yang masuk dalam audit adalah: 1. create, read (view), update, delete (CRUD) data 2. printing ### Relational Diagram <to be completed>. ## Antarmuka <to be completed>. ### Access Page <to be completed>. # Versioning

Communication App. (server side)

Tunnel

Communication App. (client side)

  • Mampu mengelola multiple client connection (+ 300[71]) secara bersamaan pada saat yang sama (multi thread).
  • Connect to host database
  • Mengirim query script
  • Menerima data dari client side
  • Decrypt data
  • Save data to host database
  • Kirim encrypted JSON query message on demand/periodic ke client side via VPN
  • Setting periode pengiriman query.
  • Checking mechanism:
    • data integrity (checksum, hash, dll).
    • Instrument ID (S/n) check.
  • Tidak menerima data demografi pasien.
  • Windows service (running in background, tidak memerlukan user interaction).
  • Mengirim database query script ke client side
  • Memiliki log.

Virtual Private Network

  • Connect to instrument database
  • Query data
  • Ubah data hasil query ke encrypted JSON
  • Kirim encrypted JSON ke server via VPN secara berkala
  • Format data bisa diubah (HL7, ASTM, custom)
  • Setting periode pengiriman data
  • Memiliki mekanisme menjaga data integrity (checksum, hash, dll).
  • Tidak mengirim data demografi pasien.
  • Windows service (running in background, tidak memerlukan user interaction).
  • Menerima, menyimpan dan menjalankan database query script dari server side
  • Memiliki log.
  • Antisipasi jika internet terputus.
### Data scope Data yang diintegrasikan meliputi: - absorban kalibrasi termasuk perulangannya - hasil control termasuk perulangannya - data sample (nomor sample, jenis sample) - hasil pasien termasuk perulangannya - waktu pengerjaan semua aktivitas di atas Integrasi dilakukan dengan pertukaran _encrypted_ JSON _file_ antara client dan server. Terdapat beberapa jenis JSON file yang masing-masing merepresentasikan data yang dikirimkan: - Calibration - QC - Patient - Request - Sample & Result Elemen data yang harus ada dalam file JSON: - Equipment s/n - Data type marking (CAL, QC, PAT, REQ, SRT) - Query result sesuai jenis data type marking (calibration, qc, patient, request, sample & result) - Checksum (cs) ## Lampiran 2: TMS-30i ### Calibration Results SQL Scripts and Data Mapping _select cd.ItemName as \[TestTechCode\], MS.StringData as \[SampleType\], cd.RDATE as \[CalDate\], cd.TrayNo, cd.PosNo, CP.STD_NO as \[Level\], /\*C.BLK_ORDER,\*/ CP.CONC as \[Concentration\], cd.Result, cd.IsTotal, cd.LotNo, CP.ASP_ _from caldata cd_ _inner join MasSampleType MST on cd.SampleType = \[INDEX\]_ _inner join MasString MS on MST.StringID = MS.StringID_ _left join ITEMPARA_NAME IPN on cd.ItemNo = IPN.ITEM_NO_ _left join CALIB_POSITION CP on cd.ItemNo = CP.ITEM_NO and cd.PosNo = CP.POS_NO_ _where MS.LanguageID = ‘1’_ _order by cd.RDATE_ Table 115 Mapping related to calibration data

LQMS

TMS-30i

Notes

calparinst.CalParInstID

<auto numbering>

calparinst.EquipmentID

calparinst.Calibrator

calparinst.LotNo

calparinst.ExpiryDate

calparinst.TestInstID1

ITEM_NAME

calparinst.SampleType

SAMP_TYPE

calparinst.Level

calparinst.Concentration

calparinst.CalUnit

calparinst.CreateDate

RDATE

calresinst.CalRestID

Not available

Primary Key. Terisi otomatis di CLQMS

calresinst.EquipmentID

Not available

Diisi dengan s/n alat, ada di ini. file

calresinst.InstCalID

calresinst.InstCalName

F2^<TrayNo>^<PosNo>^<Level>

calresinst.TestTechCode

TestTechCode

calresinst.SampleType

SampleType

calresinst.CalDate

CalDate

calresinst.Level

Level

calresinst.Blank

Not available

calresinst.Concentration

Concentration

calresinst.Result

Result

calresinst.ResultUnit

<diisi text ‘OD’>

berasal dari ini file.

calresinst.IsTotal

IsTotal

Untuk menghitung:

  • jumlah total tes yang digunakan untuk kalibrasi, count semua record dg IsTotal=0.
  • Factor kalibrasi, gunakan records dg IsTotal=1.

Calresinst.LotNo

LotNo

calresinst.Aspiration

ASP

calresinst.Val

<null>

calresinst.ValDateTime

<null>

Perhitungan _calibration factor_ pada TMS-30i adalah sebagai berikut: Factor = Dimana: CalibFactorConc2 : nilai Concentration dari table caldatinst dimana Level = 2 CalibFactorConc1 : nilai Concentration dari table caldatinst dimana Level = 1 CalibFactorAbs2 : nilai Result dari table caldatinst Dimana Level = 2 CalibFactorAbs1 : nilai Result dari table caldatinst Dimana Level = 1 Keempat nilai harus pada records dimana TestInstID2, SampleType yang sama dan CalDate di tanggal, jam dan menit yang sama. ### QC Results SQL Scripts and Data Mapping _select distinct IPN.ITEM_NO, IPN.ITEM_NAME as \[TestTechCode\], MS.StringData as \[SampleType\], CH.RunDate as \[QCDate\], CH.ControlID as \[InstCtrlID\], CN.Name as \[InstCtrlName\], CH.Result, CH.LotNo, CP.MEAN, CP.SD_ _from ControlHistory CH_ _inner join ITEMPARA_NAME IPN on CH.ItemNo = IPN.ITEM_NO_ _inner join CTRLNAME CN on CH.LotNo = CN.LotNo_ _inner join MasSampleType MST on CN.SampleType = \[INDEX\]_ _inner join MasString MS on MST.StringID = MS.StringID_ _left join CTRLPARA CP on CH.ItemNo = CP.ITEM_NO and CH.ControlID=CP.CTRL_NO and CH.LotNo=CP.LotNo_ _where MS.LanguageID = ‘1’_ _order by IPN.ITEM_NAME_ Table 116 Mapping related to QC results | | | | | --- | --- | --- | | **LQMS** | **TMS-30i** | **Notes** | | qcrestinst.QCRestID | Not available | **Primary Key. Terisi otomatis di CLQMS** | | qcrestinst.EquipmentID | Not available | Diisi dengan s/n alat, ada di ini. file | | qcrestinst.InstCtrlID | InstCtrlID | | | qcrestinst.InstCtrlName | InstCtrlName | | | qcrestinst.TestTechCode | TestTechCode | | | qcrestinst.SampleType | SampleType | | | qcrestinst.QCDate | QCDate | | | qcrestinst.Result | Result | | | qcrestinst.ResultUnit | Not available | | | qcrestinst.LotNo | LotNo | | | qcrestinst.Val | Not available | | | qcrestinst.ValDateTime | Not available | | | qcrestinst.CreateDate | Not available | Terisi dengan waktu saat record terekam di database LQMS | ### Patient Results SQL Scripts and Data Mapping _select distinct SAMP_ID, ITEM_NAME, ASP_CNT, CONC_DATA, OD_DATA, RST_DATE,_ _Flag = case_ _when flagvalue=0 then null_ _else Flag_ _end, ReactionNo, DIL_ORD_ _from_ _(select s.SAMP_ID, s.ASP_CNT, s.ITEM_NO, IPN.ITEM_NAME, s.CONC_DATA, s.OD_DATA, s.ReactionNo, s.RST_DATE, s.DIL_ORD, s.PFlg_C, s.PFlg_E, s.PFlg_L, s.PFlg_P, s.PFlg_B, s.PFlg_G, s.PFlg_VL, s.PFlg_VH, s.PFlg_T, s.PFlg_W, s.PFlg_AB, s.SFlg_S, s.SFlg_R1, s.SFlg_R2, s.SFlg_D, s.SFlg_C, s.SFlg_T, s.SFlg_B, s.SFlg_R3, CAST(s.RFlg_L as bit) RFlg_L, CAST(s.RFlg_H as bit) RFlg_H_ _from SAMP_DAT s inner join ITEMPARA_NAME IPN on s.ITEM_NO =IPN.ITEM_NO_ _)a_ _unpivot_ _(flagvalue for Flag in(PFlg_C,PFlg_E, PFlg_L, PFlg_P, PFlg_B, PFlg_G, PFlg_VL, PFlg_VH, PFlg_T, PFlg_W, PFlg_AB, SFlg_S, SFlg_R1, SFlg_R2, SFlg_D, SFlg_C, SFlg_T, SFlg_B, RFlg_L, SFlg_R3)_ _)unpiv_ _where RST_DATE is not null_ _order by SAMP_ID, RST_DATE_ Table 117 Mapping related to patient result

LQMS

TMS-30i

Notes

patres.Type

Not available

Patient/Rerun

patres.ResultID

Not available

Primary Key. Terisi otomatis di CLQMS

patres.EquipmentID

Not available

Diisi dengan s/n alat

patres.SampleID

SAMP_ID

SampleID

patres. AspCnt

ASP_CNT

patres.TestTechCode

ITEM_NAME

patres.Result

CONC_DATA

patres.SampleType

Not available

patres.ResultDateTime

RST_DATE

patres.Val

Not available

Terisi UserID yang melakukan validasi di LQMS

patres.ValDateTime

Not available

Terisi UserID yang melakukan validasi di LQMS

patres.CreateDate

Not available

Terisi dengan waktu saat record terekam di database LQMS

patrestech.RestechID

Not available

Primary Key. Terisi otomatis di CLQMS

patrestech.ResultID

Not available

Foreign Key dari patres.ResultID

patrestech.DBField

  • Flag
  • ReactionNo
  • OD_DATA
  • DIL_ORD

patrestech.DBValue

<Nilai dari DBField>

patrestech.CreateDate

Not available

Terisi dengan waktu saat record terekam di database LQMS

Table 118 Contoh hasil query hasil pasien dan penempatan pada table patres | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Patres.**

**ResultID** | **patres.**

**SampleID** | **patres.**

**TestTechCode** | **patres.**

**AspCnt** | **patres.**

**Result** | | **patres.**

**ResultDateTime** | | | | | | **SAMP_ID** | **ITEM_NAME** | **ASP_CNT** | **CONC_DATA** | **OD_DATA** | **RST_DATE** | **Flag** | **ReactionNo** | **DIL_ORD** | | 1 | 2402296034S | CREA | 1 | 0.803686 | 0.03016 | 2024-03-01 13:30:39.500 | NULL | 47623 | 0 | | 2 | 2402296035S | CHOL | 1 | 215.1732 | 0.386428 | 2024-03-01 13:30:52.840 | NULL | 47624 | 0 | | 3 | 2402296035S | LDL | 1 | 157.8766 | 0.377753 | 2024-03-01 13:31:06.150 | NULL | 47625 | 0 | | 4 | 2402296035S | HDL | 1 | 59.35203 | 0.096221 | 2024-03-01 13:31:19.510 | NULL | 47626 | 0 | | 5 | 2402296035S | TRIG | 1 | 59.69617 | 0.195439 | 2024-03-01 13:31:32.867 | NULL | 47627 | 0 | | ignored | 2402296035S | UREUM | 1 | 27.87867 | \-0.03978 | 2024-03-01 13:31:46.200 | NULL | 47628 | 0 | | 6 | 2402296035S | UREUM | 1 | 27.87867 | \-0.03978 | 2024-03-01 13:31:46.200 | PFlg_C | 47628 | 0 | | 7 | 2402296035S | CREA | 1 | 0.703791 | 0.02734 | 2024-03-01 13:32:26.203 | NULL | 47629 | 0 | | 8 | 2402296035S | UREA -N | 1 | 12.48818 | 0 | 2024-03-01 13:50:12.967 | NULL | 0 | 0 | | 9 | 2402296035S | UREUM | 1 | 26.72469 | \-0.03815 | 2024-03-01 13:50:12.967 | NULL | 47672 | 0 | Table 119 Contoh penempatan flag pada table patresflag | | | | | | --- | --- | --- | --- | | **patresflag.**

**ResflagID** | **patresflag.**

**ResultID** | **patresflag.**

**Flag** | **patresflag.**

**CreateDate** | | | | **Flag** | **RST_DATE** | | 1 | 6 | PFlg_C | 2024-03-01 13:31:46.200 | Table 120 Contoh penempatan data teknis pada table patrestech | | | | | | | --- | --- | --- | --- | --- | | **patrestech.**

**RestechID** | **patrestech.**

**ResultID** | **patrestech.**

**DBField** | **patrestech.**

**DBValue** | **patrestech.**

**CreateDate** | | | | | | **RST_DATE** | | 1 | 1 | OD_DATA | 0.03016 | 2024-03-01 13:30:39.500 | | 2 | 1 | ReactionNo | 47623 | 2024-03-01 13:30:39.500 | | 3 | 1 | DIL_ORD | 0 | 2024-03-01 13:30:39.500 | | 4 | 2 | OD_DATA | 0.386428 | 2024-03-01 13:30:52.840 | | 5 | 2 | ReactionNo | 47624 | 2024-03-01 13:30:52.840 | | 6 | 2 | DIL_ORD | 0 | 2024-03-01 13:30:52.840 | | 7 | 3 | OD_DATA | 0.377753 | 2024-03-01 13:31:06.150 | | 8 | 3 | ReactionNo | 47625 | 2024-03-01 13:31:06.150 | | 9 | 3 | DIL_ORD | 0 | 2024-03-01 13:31:06.150 | | 10 | 4 | OD_DATA | 0.096221 | 2024-03-01 13:31:19.510 | | 11 | 4 | ReactionNo | 47626 | 2024-03-01 13:31:19.510 | | 12 | 4 | DIL_ORD | 0 | 2024-03-01 13:31:19.510 | | 13 | 5 | OD_DATA | 0.195439 | 2024-03-01 13:31:32.867 | | 14 | 5 | ReactionNo | 47627 | 2024-03-01 13:31:32.867 | | 15 | 5 | DIL_ORD | 0 | 2024-03-01 13:31:32.867 | | 16 | 6 | OD_DATA | \-0.03978 | 2024-03-01 13:31:46.200 | | 17 | 6 | ReactionNo | 47628 | 2024-03-01 13:31:46.200 | | 18 | 6 | DIL_ORD | 0 | 2024-03-01 13:31:46.200 | | 19 | 7 | OD_DATA | 0.02734 | 2024-03-01 13:32:26.203 | | 20 | 7 | ReactionNo | 47629 | 2024-03-01 13:32:26.203 | | 21 | 7 | DIL_ORD | 0 | 2024-03-01 13:32:26.203 | | 22 | 8 | OD_DATA | 0 | 2024-03-01 13:50:12.967 | | 23 | 8 | ReactionNo | 0 | 2024-03-01 13:50:12.967 | | 24 | 8 | DIL_ORD | 0 | 2024-03-01 13:50:12.967 | | 25 | 9 | OD_DATA | \-0.03815 | 2024-03-01 13:50:12.967 | | 26 | 9 | ReactionNo | 47672 | 2024-03-01 13:50:12.967 | | 27 | 9 | DIL_ORD | 0 | 2024-03-01 13:50:12.967 | ### Calibration Factor SQL scripts untuk TMS-30i terdiri dari 3, yaitu: #### Calibration dan Calibration Factor Perhitungan _calibration factor_ pada TMS-30i adalah sebagai berikut: Factor = Dimana: CalibFactorConc2 : nilai Concentration dari table caldatinst dimana Level = 2 CalibFactorConc1 : nilai Concentration dari table caldatinst dimana Level = 1 CalibFactorAbs2 : nilai Result dari table caldatinst Dimana Level = 2 CalibFactorAbs1 : nilai Result dari table caldatinst Dimana Level = 1 Keempat nilai harus pada records dimana TestInstID2, SampleType yang sama dan CalDate di tanggal, jam dan menit yang sama. #### Quality Control _select distinct IPN.ITEM_NO, IPN.ITEM_NAME as \[TestTechCode\], MS.StringData as \[SampleType\], CH.RunDate as \[QCDate\], CH.ControlID as \[InstCtrlID\], CN.Name as \[InstCtrlName\], CH.Result, CH.LotNo, CP.MEAN, CP.SD_ _from ControlHistory CH_ _inner join ITEMPARA_NAME IPN on CH.ItemNo = IPN.ITEM_NO_ _inner join CTRLNAME CN on CH.LotNo = CN.LotNo_ _inner join MasSampleType MST on CN.SampleType = \[INDEX\]_ _inner join MasString MS on MST.StringID = MS.StringID_ _left join CTRLPARA CP on CH.ItemNo = CP.ITEM_NO and CH.ControlID=CP.CTRL_NO and CH.LotNo=CP.LotNo_ _where MS.LanguageID = ‘1’_ _order by IPN.ITEM_NAME_ #### Patient Result _select distinct SAMP_ID, ITEM_NAME, ASP_CNT, CONC_DATA, OD_DATA, RST_DATE,_ _Flag = case_ _when flagvalue=0 then null_ _else Flag_ _end,ReactionNo,DIL_ORD_ _from_ _(select s.SAMP_ID,s.ASP_CNT,s.ITEM_NO,IPN.ITEM_NAME,s.CONC_DATA,s.OD_DATA,s.ReactionNo,s.RST_DATE,s.DIL_ORD,_ _s.PFlg_C,s.PFlg_E,s.PFlg_L,s.PFlg_P,s.PFlg_B,s.PFlg_G,s.PFlg_VL,s.PFlg_VH,s.PFlg_T,s.PFlg_W,s.PFlg_AB,s.SFlg_S,s.SFlg_R1,s.SFlg_R2,s.SFlg_D,s.SFlg_C,s.SFlg_T,s.SFlg_B,s.SFlg_R3,CAST(s.RFlg_L as bit) RFlg_L,CAST(s.RFlg_H as bit) RFlg_H_ _from SAMP_DAT s inner join ITEMPARA_NAME IPN on s.ITEM_NO =IPN.ITEM_NO_ _)a_ _unpivot_ _(flagvalue for Flag in(PFlg_C,PFlg_E,PFlg_L,PFlg_P,PFlg_B,PFlg_G,PFlg_VL,PFlg_VH,PFlg_T,PFlg_W,PFlg_AB,SFlg_S,SFlg_R1,SFlg_R2,SFlg_D ,SFlg_C,SFlg_T,SFlg_B,RFlg_L,SFlg_R3)_ _)unpiv_ _where RST_DATE is not null_ _order by SAMP_ID, RST_DATE_ ### Flags TMS-30i flags, yaitu:

Flag

Text

Description

PFlg_C

C

Cell blank Abs. of main, sub or both wavelengths is lower than check level 1 or higher than check level 3.

PFlg_E

E

For END point assay, Cell blank subtracted Abs. of main wavelength, is higher than set [Endpoint Limit].

PFlg_L

L

For RATE assay,

The main reading point is above 3 points, and reaction Abs. of main reading per minute exceeds [Linearity check %] value.

  • No linearity check is done if the main reading points are not more than three points.
  • Linearity check value is set above zero.
  • The check value calculated by using points where Abs. of main measurement interval are within the Abs. limit.
  • If the Abs. in the limit is less than 2 points, the check value is calculated by using all the points.

PFlg_P

P

The check value exceeds limit % of high limit or

low limit

No Prozone check is done when the

minimum Abs. of average and variation is

lower than the set value.

No Prozone check is done if the slope value

of the first interval is zero.

No Prozone check is done if the minimum

Abs. of average and slope are not set.

Please input “0” to minimum Abs. of

average if the Prozone check is required

without setting.

PFlg_B

B

For RATE assay,

The Abs. of main wavelength in main reading is

lower than [Absorbance limit], at three points

from first measuring points.

(Measuring range is used when the reading

point less than 2 points)

Sensitivity range error, for HbA1c Item No. 106.

Concentration of Hb or A1c is below than

setting value.

Selection of gender is essential in order

entry.

It is not judged when the gender field is

blank (not selected) or unknown is selected.

PFlg_G

G

PFlg_VL

<

PFlg_VH

>

PFlg_T

T

PFlg_W

W

PFlg_AB

AB

SFlg_S

SFlg_R1

SFlg_R2

SFlg_D

SFlg_C

SFlg_T

SFlg_B

## Lampiran 3: TMS-24i ### Calibration Results SQL Scripts and Data Mapping _select cd.ItemName as \[TestTechCode\], MS.StringData as \[SampleType\], cd.RDATE as \[CalDate\], cd.TrayNo, cd.PosNo, CP.STD_NO as \[Level\], /\*C.BLK_ORDER,\*/ CP.CONC as \[Concentration\], cd.Result, cd.IsTotal, cd.LotNo, CP.ASP_ _from caldata cd_ _inner join MasSampleType MST on cd.SampleType = \[INDEX\]_ _inner join MasString MS on MST.StringID = MS.StringID_ _left join ITEMPARA_NAME IPN on cd.ItemNo = IPN.ITEM_NO_ _left join CALIB_POSITION CP on cd.ItemNo = CP.ITEM_NO and cd.PosNo = CP.POS_NO_ _where MS.LanguageID = ‘1’_ _order by cd.RDATE_ Table 121 Mapping related to calibration data

LQMS

TMS-30i

Notes

calparinst.CalParInstID

<auto numbering>

calparinst.EquipmentID

calparinst.Calibrator

calparinst.LotNo

calparinst.ExpiryDate

calparinst.TestInstID1

ITEM_NAME

calparinst.SampleType

SAMP_TYPE

calparinst.Level

calparinst.Concentration

calparinst.CalUnit

calparinst.CreateDate

RDATE

calresinst.CalRestID

Not available

Primary Key. Terisi otomatis di CLQMS

calresinst.EquipmentID

Not available

Diisi dengan s/n alat, ada di ini. file

calresinst.InstCalID

calresinst.InstCalName

F2^<TrayNo>^<PosNo>^<Level>

calresinst.TestTechCode

TestTechCode

calresinst.SampleType

SampleType

calresinst.CalDate

CalDate

calresinst.Level

Level

calresinst.Blank

Not available

calresinst.Concentration

Concentration

calresinst.Result

Result

calresinst.ResultUnit

<diisi text ‘OD’>

berasal dari ini file.

calresinst.IsTotal

IsTotal

Untuk menghitung:

  • jumlah total tes yang digunakan untuk kalibrasi, count semua record dg IsTotal=0.
  • Factor kalibrasi, gunakan records dg IsTotal=1.

Calresinst.LotNo

LotNo

calresinst.Aspiration

ASP

calresinst.Val

<null>

calresinst.ValDateTime

<null>

### QC Results SQL Scripts and Data Mapping _select distinct IPN.ITEM_NO, IPN.ITEM_NAME as \[TestTechCode\], MS.StringData as \[SampleType\], CH.RunDate as \[QCDate\], CH.ControlID as \[InstCtrlID\], CN.Name as \[InstCtrlName\], CH.Result, CH.LotNo, CP.MEAN, CP.SD_ _from ControlHistory CH_ _inner join ITEMPARA_NAME IPN on CH.ItemNo = IPN.ITEM_NO_ _inner join CTRLNAME CN on CH.LotNo = CN.LotNo_ _inner join MasSampleType MST on CN.SampleType = \[INDEX\]_ _inner join MasString MS on MST.StringID = MS.StringID_ _left join CTRLPARA CP on CH.ItemNo = CP.ITEM_NO and CH.ControlID=CP.CTRL_NO and CH.LotNo=CP.LotNo_ _where MS.LanguageID = ‘1’_ _order by IPN.ITEM_NAME_ Table 122 Mapping related to QC results | | | | | --- | --- | --- | | **LQMS** | **TMS-30i** | **Notes** | | qcrestinst.QCRestID | Not available | **Primary Key. Terisi otomatis di CLQMS** | | qcrestinst.EquipmentID | Not available | Diisi dengan s/n alat, ada di ini. file | | qcrestinst.InstCtrlID | InstCtrlID | | | qcrestinst.InstCtrlName | InstCtrlName | | | qcrestinst.TestTechCode | TestTechCode | | | qcrestinst.SampleType | SampleType | | | qcrestinst.QCDate | QCDate | | | qcrestinst.Result | Result | | | qcrestinst.ResultUnit | Not available | | | qcrestinst.LotNo | LotNo | | | qcrestinst.Val | Not available | | | qcrestinst.ValDateTime | Not available | | | qcrestinst.CreateDate | Not available | Terisi dengan waktu saat record terekam di database LQMS | ### Patient Results SQL Scripts and Data Mapping _select distinct SAMP_ID, ITEM_NAME, ASP_CNT, CONC_DATA, OD_DATA, RST_DATE,_ _Flag = case_ _when flagvalue=0 then null_ _else Flag_ _end, ReactionNo, DIL_ORD_ _from_ _(select s.SAMP_ID, s.ASP_CNT, s.ITEM_NO, IPN.ITEM_NAME, s.CONC_DATA, s.OD_DATA, s.ReactionNo, s.RST_DATE, s.DIL_ORD, s.PFlg_C, s.PFlg_E, s.PFlg_L, s.PFlg_P, s.PFlg_B, s.PFlg_G, s.PFlg_VL, s.PFlg_VH, s.PFlg_T, s.PFlg_W, s.PFlg_AB, s.SFlg_S, s.SFlg_R1, s.SFlg_R2, s.SFlg_D, s.SFlg_C, s.SFlg_T, s.SFlg_B, s.SFlg_R3, CAST(s.RFlg_L as bit) RFlg_L, CAST(s.RFlg_H as bit) RFlg_H_ _from SAMP_DAT s inner join ITEMPARA_NAME IPN on s.ITEM_NO =IPN.ITEM_NO_ _)a_ _unpivot_ _(flagvalue for Flag in(PFlg_C,PFlg_E, PFlg_L, PFlg_P, PFlg_B, PFlg_G, PFlg_VL, PFlg_VH, PFlg_T, PFlg_W, PFlg_AB, SFlg_S, SFlg_R1, SFlg_R2, SFlg_D, SFlg_C, SFlg_T, SFlg_B, RFlg_L, SFlg_R3)_ _)unpiv_ _where RST_DATE is not null_ _order by SAMP_ID, RST_DATE_ Table 123 Mapping related to patient result

LQMS

TMS-30i

Notes

patres.Type

Not available

Patient/Rerun

patres.ResultID

Not available

Primary Key. Terisi otomatis di CLQMS

patres.EquipmentID

Not available

Diisi dengan s/n alat

patres.SampleID

SAMP_ID

SampleID

patres. AspCnt

ASP_CNT

patres.TestTechCode

ITEM_NAME

patres.Result

CONC_DATA

patres.SampleType

Not available

patres.ResultDateTime

RST_DATE

patres.Val

Not available

Terisi UserID yang melakukan validasi di LQMS

patres.ValDateTime

Not available

Terisi UserID yang melakukan validasi di LQMS

patres.CreateDate

Not available

Terisi dengan waktu saat record terekam di database LQMS

patrestech.RestechID

Not available

Primary Key. Terisi otomatis di CLQMS

patrestech.ResultID

Not available

Foreign Key dari patres.ResultID

patrestech.DBField

  • Flag
  • ReactionNo
  • OD_DATA
  • DIL_ORD

patrestech.DBValue

<Nilai dari DBField>

patrestech.CreateDate

Not available

Terisi dengan waktu saat record terekam di database LQMS

## Lampiran 4: File-based Integration

Communication App. (server side)

Tunnel

Communication App. (client side)

  • Mampu mengelola multiple client connection secara bersamaan pada saat yang sama (multi thread).
  • Connect to host database
  • Menerima data dari client side
  • Decrypt data
  • Save data to host database
  • Memiliki mekanisme menjaga data integrity (checksum, hash, dll).
  • Windows service (running in background, tidak memerlukan user interaction).
  • Memiliki log.

Virtual Private Network

  • Read file ke shared folder secara berkala.
  • Ubah data ke encrypted JSON
  • Kirim encrypted JSON ke server via VPN.
  • Setting periode baca shared folder.
  • Memiliki mekanisme menjaga data integrity (checksum, hash, dll).
  • Windows service [72](running in background, tidak memerlukan user interaction).
  • Memiliki log.

## Lampiran 5: File-based Integration SES Setiap pencatatan barang masuk, pindah counter atau keluar, SES membuat sepasang file text.

Event

Files

Format Data

Terima barang

  • yyyymmddxxxx.tr
  • yyyymmddxxxx.ok

No.Bukti:TR24040336

Tgl:20240404

Vendor:<kode vendor>^ DELTASINDO RAYA SEJAHTERA

Keterangan:

Tgl_Terima:20240404111800

Penerima: ASEP

Item_1_0107/PO/SUMMIT-INV/IV/024^301002^<expdate>^6015560324^1^UNIT

Item_2_0107/PO/SUMMIT-INV/IV/024^80001^<expdate>^<batch>^1^UNIT

Item_3_0107/PO/SUMMIT-INV/IV/024^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT

Dst

Pindah counter

  • yyyymmddxxxx.kc
  • yyyymmddxxxx.ok

No.Bukti_Pengirim:KC24040332

No.Bukti_Pemohon:RC24040137

TglKirim:20240404

TglMohon:20240404

CounterAsal:0000^PUSAT – ASEP

CounterTujuan:0008^SEMARANG – (MARIA)

Keterangan:

Item_1_SO240402740^301002^<expdate>^6015560324^1^UNIT

Item_2_SO240402740^80001^<expdate>^<batch>^1^UNIT

Item_3_SO240402740^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT

dst

Kirim barang (ke customer)

  • yyyymmddxxxx.sj
  • yyyymmddxxxx.ok

No.Bukti:SJ240402914

Tgl:20240404

Customer:<kode customer>^ANUGRAH PRAKARSA UTAMA

No.KSO:KSO24030025

Sales:<kode sales>^SUSILO PUJININGSIH

Keterangan:

Kirim:SCAN ME LAB

Branch:01^PUSAT

Counter:<kode counter>^PUSAT – ASEP

AlamatKirim:RUKO GADING NIAS …

Jenis:<KSO/CPRR/JUAL>

Item_1_SO240402740^301002^<expdate>^6015560324^1^UNIT

Item_2_SO240402740^80001^<expdate>^<batch>^1^UNIT

Item_3_SO240402740^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT

dst

File dengan extension .tr, .kc dan .sj adalah file text yang berisi data sesuai format. File .ok adalah file text kosong sebagai penanda bahwa file yang berisi data siap untuk dibaca. yyyy : tahun mm : bulan dd : tanggal

Event

Files

Format Data

Update master vendor

  • yyyymmddxxxx.vd
  • yyyymmddxxxx.ok

No.Bukti:TR24040336

Tgl:20240404

Vendor:<kode vendor>^ DELTASINDO RAYA SEJAHTERA

Keterangan:

Tgl_Terima:20240404111800

Penerima: ASEP

Item_1_0107/PO/SUMMIT-INV/IV/024^301002^<expdate>^6015560324^1^UNIT

Item_2_0107/PO/SUMMIT-INV/IV/024^80001^<expdate>^<batch>^1^UNIT

Item_3_0107/PO/SUMMIT-INV/IV/024^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT

Dst

Update master product

  • yyyymmddxxxx.pd
  • yyyymmddxxxx.ok

Update master customer

  • yyyymmddxxxx.cs
  • yyyymmddxxxx.ok

Update master user

  • yyyymmddxxxx.us
  • yyyymmddxxxx.ok

| | | | | --- | --- | --- | | Event: **Terima barang** | Table: **Product** | | | **Data** | **Field** | **Value** | | | ProductID | <auto number> | | No.Bukti:TR24040336 | Reference | TR24040336 | | Penerima: ASEP | UserID | SES^ASEP | | Tgl:20240404 | LogDate | 20240404 | | Vendor:<kode vendor>^ DELTASINDO RAYA SEJAHTERA | | | | Keterangan: | | | | | SiteID | SUMMIT | | Tgl_Terima:20240404111800 | LocationStartDate | 20240404111800 | | Item_1_0107/PO/SUMMIT-INV/IV/024^**301002**^<expdate>^**6015560324**^1^UNIT | CatalogID

ProductNumber | 301002

6015560324 | | | Active | No | | | Owner | SUMMIT | | | Status_service | Garansi | | | | | | | ProductID | <auto number> | | | Reference | TR24040336 | | | UserID | SES^ASEP | | | LogDate | 20240404 | | | | | | | | | | | SiteID | SUMMIT | | | LocationStartDate | 20240404111800 | | Item_2_0107/PO/SUMMIT-INV/IV/024^**40000U-UPS EATON**^<expdate>^**GG123A0816**^1^UNIT | CatalogID

ProductNumber | 40000U-UPS EATON

GG123A0816 | | | Active | No | | | Owner | SUMMIT | | | Status_service | Garansi | | | | | | --- | --- | --- | | Event: **Kirim barang (ke _customer_)** | Table: **Product** | | | **Data** | **Field** | **Value** | | | ProductID | <auto number> | | No.Bukti: SJ240402914 | Reference | SJ240402914 | | Tgl:20240404 | LogDate | 20240404 | | Customer:<kode customer>^ANUGRAH PRAKARSA UTAMA | | | | No.KSO:KSO24030025 | | | | Sales:<kode sales>^SUSILO PUJININGSIH | | | | Keterangan: | | | | Kirim:SCAN ME LAB | | | | Branch:01^PUSAT | | | | Counter:<kode counter>^PUSAT – ASEP

AlamatKirim:RUKO GADING NIAS …

Jenis:<KSO/CPRR/JUAL>

Item_1_SO240402740^301002^<expdate>^6015560324^1^UNIT

Item_2_SO240402740^80001^<expdate>^<batch>^1^UNIT

Item_3_SO240402740^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT | | | | | | | | Tgl_Terima:20240404111800 | LocationStartDate | 20240404111800 | | Item_1_0107/PO/SUMMIT-INV/IV/024^301002^<expdate>^6015560324^1^UNIT

Item_2_0107/PO/SUMMIT-INV/IV/024^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT | CatalogID

ProductNumber | 301002

6015560324 | | Tgl:20240404

Customer:<kode customer>^ANUGRAH PRAKARSA UTAMA

No.KSO:KSO24030025

Sales:<kode sales>^SUSILO PUJININGSIH

Keterangan:

Kirim:SCAN ME LAB

No.Bukti:SJ240402914

Tgl:20240404

Customer:<kode customer>^ANUGRAH PRAKARSA UTAMA

No.KSO:KSO24030025

Sales:<kode sales>^SUSILO PUJININGSIH

Keterangan:

Kirim:SCAN ME LAB

Branch:01^PUSAT

Counter:<kode counter>^PUSAT – ASEP

AlamatKirim:RUKO GADING NIAS …

Jenis:<KSO/CPRR/JUAL>

Item_1_SO240402740^301002^<expdate>^6015560324^1^UNIT

Item_2_SO240402740^80001^<expdate>^<batch>^1^UNIT

Item_3_SO240402740^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT | UserID | ASEP | | Event: **Pindah counter** | | | | **Data** | **Field** | **Value** | | No.Bukti_Pengirim:KC24040332

No.Bukti_Pemohon:RC24040137

TglKirim:20240404

TglMohon:20240404

CounterAsal:0000^PUSAT – ASEP

CounterTujuan:0008^SEMARANG – (MARIA)

Keterangan:

Item_1_SO240402740^301002^<expdate>^6015560324^1^UNIT

Item_2_SO240402740^80001^<expdate>^<batch>^1^UNIT

Item_3_SO240402740^40000U-UPS EATON^<expdate>^GG123A0816^1^UNIT

dst | | | | | | | | **Data** | **Field** | **Value** | | | | | ## Lampiran 6: SES Screens Gambar Penerimaan Product Gambar Permintaan Kirim Counter Gambar Kirim Counter Gambar Surat Jalan ## Lampiran 7: Clinical Laboratory Activity

ActivityID

Activity Name

Activity Description

Standard

Detail Activity/Task

Outcome

AP001

Patient Registration – electronic

Menandakan bahwa pasien telah tiba atau check-in sebagai pasien rawat jalan/inap satu kali atau berulang dan tidak ditempatkan di lokasi spesifik (bed). Contohnya adalah penggunaannya sebagai tanda dimulainya kunjungan ke Ruang Gawat Darurat (= Korban, dll.) 🡪 dicatat sebagai pendaftaran rawat jalan atau penerimaan darurat.

HL7 – Event A04

  • Receive data from host
  • Check & compare with existing database
  • Patient record added.
  • Raise error, notify host.

AP002

Patient Registration – manual

idem

  • Input patient data
  • Check & compare with existing database.
  • Save
  • Patient record added.
  • Raise error, notify user.

AP003

Update Patient Information – electronic

Misalnya perubahan nama pasien atau alamat.

HL7 – Event A08

  • Receive update data from host
  • Check & compare with existing database
  • Patient record updated.
  • Raise error, notify host.

AP004

Update Patient Information – manual

idem

  • Select patient
  • Update patient information
  • Check & compare with existing database.
  • Save
  • Patient record updated.
  • Raise error, notify user.

AP005

Patient Admission – electronic

Penerimaan pasien, hingga penempatannya di lokasi speisifik (bed). Menandakan dimulainya masa tinggal pasien di fasyankes.

HL7 – Event A01

  • Receive admission from host
  • Check & compare with existing database.
  • Patient admitted, visit number recorded.
  • Raise error, notify host.

AP006

Patient Admission – manual

idem

  • Select patient
  • Admit patient
  • Check & compare with existing database.
  • Save
  • Patient admitted, visit number recorded.
  • Raise error, notify user.

AP007

Patient Transfer – electronic

Perubahan lokasi fisik pasien. Misalnya dari UGD ke Rawat Inap.

HL7 – Event A02

  • Receive transfer from host
  • Check & compare with existing database.
  • Patient transferred.
  • Raise error, notify host.

AP008

Patient Transfer – manual

idem

  • Select patient
  • Transfer patient
  • Check & compare with existing database.
  • Save
  • Patient transferred.
  • Raise error, notify user.

AP009

Patient Discharge – electronic

Menandakan berakhirnya masa tinggal pasien di fasyankes Ini menandakan bahwa status pasien telah berubah menjadi “boleh pulang” dan tanggal pulang dicatat. Pasien tidak lagi berada di fasyankes.

HL7 – Event A03

  • Receive discharge from host
  • Check & compare with existing database.
  • Patient discharged.
  • Raise error, notify host.

AP010

Patient Discharge – manual

idem

  • Select patient
  • Discharge patient
  • Check & compare with existing database.
  • Save
  • Patient discharged.
  • Raise error, notify user.

AP011

Cancel Patient Admission – electronic

Membatalkan admission

HL7 – Event A11

  • Receive cancel admission from host
  • Admission cancelled.
  • Raise error, notify host.

AP012

Cancel Patient Admission – manual

Idem

  • Select patient
  • Cancel admission.
  • Save
  • Admission cancelled.
  • Raise error, notify user.

AP013

Cancel Patient Transfer – electronic

Membatalkan transfer

HL7 – Event A12

  • Receive cancel transfer from host
  • Transfer cancelled.
  • Raise error, notify host.

AP014

Cancel Patient Transfer – manual

idem

  • Select patient
  • Cancel transfer.
  • Save
  • Transfer cancelled.
  • Raise error, notify user.

AP015

Cancel Patient Discharge – electronic

Membatalkan discharge

HL7 – Event A13

  • Receive cancel discharge from host
  • Discharge cancelled.
  • Raise error, notify host.

AP016

Cancel Patient Discharge – manual

idem

  • Select patient
  • Cancel Discharge.
  • Save
  • Discharge cancelled.
  • Raise error, notify user.

AP017

Delete Patient Record – electronic

Menghapus informasi spesifik kunjungan/ visit/ episode dari catatan pasien.

HL7 – Event A23

  • Receive patient visit record deletion from host.
  • Check for existing patient visit record
  • Check for order belong to visit record
  • Patient record deleted.
  • Raise warning if visit record has order record
  • Raise error, notify host.

AP018

Delete Patient Record – manual

idem

  • Select visit record.
  • Check for existing patient visit record
  • Check for order belong to visit record
  • Patient record deleted.
  • Raise warning if visit record has order record
  • Raise error, notify user.

AP020

Link Patient Information – electronic

Event A24 digunakan ketika segmen PID pertama perlu dihubungkan ke segmen PID kedua dan ketika kedua patient identifier mengidentifikasi pasien yang sama. Menghubungkan dua atau lebih pasien tidak memerlukan penggabungan informasi pasien yang sebenarnya; setelah link event, record data pasien yang terpengaruh harus tetap berbeda. Aplikasinya adalah di lingkungan jaringan rumah sakit yang record pasien-nya perlu dihubungkan. Misalnya, rumah sakit A, rumah sakit B, dan rumah sakit C masing-masing akan menyimpan catatan pasiennya sendiri, namun link event A24 akan dikirim ke MPI seluruh perusahaan untuk memungkinkan penggabungan informasi ID dengan nomor ID perusahaan. Digunakan untuk penyimpanan data perusahaan, dll. Activity ini tidak dimaksudkan untuk menghubungkan ibu dan bayi.

HL7 – Event A24

  • Receive link from host
  • Check if there are other links
  • Patient records linked.
  • Raise error, notify host.

AP021

Link Patient Information – manual

idem

  • Select source & destination patient record.
  • Link source to destination.
  • Save
  • Patient records linked.
  • Raise error, notify user.

AP022

Unlink Patient Information – electronic

Membatalkan link Patient Information

HL7 – Event A37

  • Receive unlink from host
  • Check if the link exists
  • Unlink patient records
  • Patient records unlinked.
  • Raise error, notify host.

AP023

Unlink Patient Information – manual

Membatalkan link Patient Information

  • Select source & destination patient record.
  • Unlink source from destination.
  • Save
  • Patient records unlinked.
  • Raise error, notify user.

AP016

Merge Patient Record

Menggabungkan satu atau lebih record pasien

HL7 – Event A40

AO001

Test Order – electronic

Order test baru dari host

HL7 – Event O01

  • Receive test order from host
  • Check for existing order number
  • New order created
  • Record of required specimen container created.
  • Specimen label printed
  • Raise error, notify host

AO003

Additional test order – electronic

Tambahan test ke order yang telah ada

  • Receive additional test order
  • Check for existing order number
  • Check if additional specimen container needed
  • Additional tests added
  • Additional specimen container added (if needed)
  • Additional specimen label printed (if needed)
  • Raise error, notify host

AO005

Deletion test order – electronic

Menghapus satu atau beberapa test dalam satu order

  • Receive deletion test order
  • Check for existing order number
  • Check for test status
  • Tests deleted
  • Raise warning that tests already processed
  • Raise error, notify host

AO007

Update order – electronic

Perubahan doctor, location, priority, notes.

  • Receive update order
  • Check for existing order number
  • Order is updated
  • Raise error, notify host.

AO002

Test Order – manual

Membuat test order baru

  • Select patient
  • Select clinical indication
  • Select priority
  • Select tests
  • Input order note/instruction
  • Save
  • New order created
  • Record of required specimen container created.
  • Specimen label printed
  • Raise error, notify host

AO004

Additional test order – manual

Tambahan test ke order yang telah ada

  • Select order
  • Add tests
  • Save
  • Additional tests added
  • Additional specimen container added (if needed)
  • Additional specimen label printed (if needed)
  • Raise error, notify user

AO006

Deletion test order – manual

Menghapus satu atau beberapa test dalam satu order

  • Select order
  • Delete tests
  • Save
  • Tests deleted
  • Raise warning that tests already processed
  • Raise error, notify user

AO008

Update order – manual

Perubahan doctor, location, priority, notes.

  • Select order
  • Edit order
  • Save
  • Order is updated
  • Raise error, notify user.

AP017

Patient Verification

Procedure to verify patient identity, verbally or based on formal ID (bracelet, etc.)

  • Select Patient
  • Verify Patient Identity

AS001

Specimen Collection

Prosedur untuk mendapatkan darah, urine, satau sample lainnya yang penting untuk mendapatkan hasil akurat. Termasuk labeling.

  • Select single/multiple patient/order
  • Print Label (option) of single/multiple order.
  • Stick label onto every container
  • Scan label to change specimen status to “collected”
  • Record non-conformity (if any)
  • Specimen collected status
  • Notification of specimen status sent to host.
  • Raise warning if specimen collection failed or does not meet criteria
  • non-conformity recorded (if any)
  • Raise error, notify user

AS002

Specimen Transport

Termasuk penyimpanan, dan transportasi dg cara tertentu untuk mencegah kontaminasi atau kerusakan

  • Store specimen
  • Transport specimen to lab
  • Packaging
  • package labeling
  • Transport
  • Documentation

AS003

Specimen Reception

Menerima spesimen di suatu lokasi

  • Inspect specimen
  • Scan specimen label to change specimen status to “received”
  • Record non-conformity (if any)
  • Specimen received status
  • Notification of specimen status sent to host.
  • Raise warning if specimen does not meet criteria
  • Raise error, notify user

AS004

Specimen Preparation

Persiapan spesimen untuk fase analitik

  • Specimen processing
  • Centrifugation
  • Aliquoting
  • Decanting[73]
  • print additional label for aliquot/decanting sample
  • Pre-treatment
  • additional label printed
  • additional specimen record added.
  • Raise error, notify user

AS005

Specimen Dispatching

Termasuk penyimpanan, dan transportasi ke lokasi geografis lain (lab rujukan) dg cara tertentu untuk mencegah kontaminasi atau kerusakan

  • Packaging
  • package labeling
  • Transport
  • Documentation

Order Dispatching

Distribusi order ke setiap workstation hingga instrument.

  • Distribute order to workstations
  • Transmission to instruments (bi-directional)
  • Receiving Instrument Query
  • Transmit Request to Instruments
  • Order available/accessible in workstation
  • Instrument query responded
  • Raise error, notify user

BS001

Analyze specimen – automatic

Analisis specimen menggunakan peralatan otomatis

  • put specimen into analyzer
  • analyser scan every specimen ID
  • analyser send query message to LIS
  • analyser receive order message
  • analyse specimen
  • Instrument query responded correctly
  • specimen status changed to “analyzing”
  • Raise error, notify user

BS002

Analyze specimen – manual

Analisis specimen

Result Acquisition

Penerimaan hasil dari instrument

  • Receive results from instruments
  • Automatic flagging
  • correct results recorded in LIS
  • specimen status changed to “finish” when all tests resulted.
  • Raise error, notify user

Result Entry (manual)

Mengisikan hasil manual

  • User enter manual results
  • Automatic flagging
  • result recorded.
  • specimen status changed to “finish” when all tests resulted.
  • Raise error, notify user

Test Rerun

Test rerun, baik otomatis maupun manual

  • Send rerun message to instrument
  • instrument rerun
  • (go to Result Acquisition)
  • Rerun transmitted.
  • specimen status changed to “rerun”.
  • Raise error, notify user

Validation – Technical

  • Technical validation
  • User trigger rerun
  • (go to Test Rerun)
  • Technical validation recorded.
  • order status changed to “technical validated”.

Validation – Clinical

  • Clinical validation

Report distribution

R01/R21

  • Transmit result to host
  • Transmit result to ref lab
  • Transmit result via 3rd party app
  • Print hardcopy
  • Print PDF file
  • Verbal report

Specimen Storage (Specimen Reception)

  • Scan specimen into storage location.

QC Result Acquisition

QC Result Validation

## Lampiran 9: Patient ### Race, Ethnic, Religion Table 124 Race | **RaceID** | **Race** | **RaceID** | **Race** | | --- | --- | --- | --- | | 1 | Jawa | 17 | Dayak | | 2 | Sunda | 18 | Tionghoa | | 3 | Batak | 19 | Suku asal Papua | | 4 | Suku asal Sulawesi lainnya | 20 | Makassar | | 5 | Madura | 21 | Suku asal Sumatera lainnya | | 6 | Betawi | 22 | Suku asal Maluku | | 7 | Minangkabau | 23 | Suku asal Kalimantan lainnya | | 8 | Bugis | 24 | Cirebon | | 9 | Melayu | 25 | Suku asal Jambi | | 10 | Suku asal Sumatera Selatan | 26 | Suku Lampung | | 11 | Suku asal Banten | 27 | Suku asal Nusa Tenggara Barat lainnya | | 12 | Suku asal Nusa Tenggara Timur | 28 | Gorontalo | | 13 | Banjar | 29 | Minahasa | | 14 | Aceh | 30 | Nias | | 15 | Bali | 31 | Asing/luar negeri | | 16 | Sasak | | | Table 125 Ethnic | | | | --- | --- | | **EthnicID** | **Ethnic** | | 1 | Papua Melanezoid | | 2 | Negroid | | 3 | Weddoid | | 4 | Melayu Mongoloid_Proto Melayu | | 5 | Melayu Mongoloid_Deutro Melayu | | 6 | Tionghoa | | 7 | India | | 8 | Arab | Table 126 Religion | | | | --- | --- | | **ReligionID** | **Religion** | | 1 | Islam | | 2 | Kristen | | 3 | Katolik | | 4 | Hindu | | 5 | Budha | | 6 | Khong Hu Cu | | 7 | Lainnya | ### Country[\[74\]](#footnote-77) Table 127 Country | **Cnty**

**ID** | **Country** | **Cnty**

**ID** | **Country** | **Cnty**

**ID** | **Country** | | --- | --- | --- | --- | --- | --- | | AFG | Afghanistan | GUM | Guam | QAT | Qatar | | ALA | Åland Islands | GTM | Guatemala | REU | Réunion | | ALB | Albania | GGY | Guernsey | ROU | Romania | | DZA | Algeria | GIN | Guinea | RUS | Russian Federation | | ASM | American Samoa | GNB | Guinea-Bissau | RWA | Rwanda | | AND | Andorra | GUY | Guyana | BLM | Saint Barthélemy | | AGO | Angola | HTI | Haiti | SHN | Saint Helena, Ascension and Tristan da Cunha\[e\] | | AIA | Anguilla | HMD | Heard Island and McDonald Islands | KNA | Saint Kitts and Nevis | | ATA | Antarctica | VAT | Holy See | LCA | Saint Lucia | | ATG | Antigua and Barbuda | HND | Honduras | MAF | Saint Martin (French part) | | ARG | Argentina | HKG | Hong Kong | SPM | Saint Pierre and Miquelon | | ARM | Armenia | HUN | Hungary | VCT | Saint Vincent and the Grenadines | | ABW | Aruba | ISL | Iceland | WSM | Samoa | | AUS | Australia | IND | India | SMR | San Marino | | AUT | Austria | IDN | Indonesia | STP | Sao Tome and Principe | | AZE | Azerbaijan | IRN | Iran, Islamic Republic of | SAU | Saudi Arabia | | BHS | Bahamas | IRQ | Iraq | SEN | Senegal | | BHR | Bahrain | IRL | Ireland | SRB | Serbia | | BGD | Bangladesh | IMN | Isle of Man | SYC | Seychelles | | BRB | Barbados | ISR | Israel | SLE | Sierra Leone | | BLR | Belarus | ITA | Italy | SGP | Singapore | | BEL | Belgium | JAM | Jamaica | SXM | Sint Maarten (Dutch part) | | BLZ | Belize | JPN | Japan | SVK | Slovakia | | BEN | Benin | JEY | Jersey | SVN | Slovenia | | BMU | Bermuda | JOR | Jordan | SLB | Solomon Islands | | BTN | Bhutan | KAZ | Kazakhstan | SOM | Somalia | | BOL | Bolivia, Plurinational State of | KEN | Kenya | ZAF | South Africa | | BES | Bonaire, Sint Eustatius and Saba\[d\] | KIR | Kiribati | SGS | South Georgia and the South Sandwich Islands | | BIH | Bosnia and Herzegovina | PRK | Korea, Democratic People’s Republic of | SSD | South Sudan | | BWA | Botswana | KOR | Korea, Republic of | ESP | Spain | | BVT | Bouvet Island | KWT | Kuwait | LKA | Sri Lanka | | BRA | Brazil | KGZ | Kyrgyzstan | SDN | Sudan | | IOT | British Indian Ocean Territory | LAO | Lao People’s Democratic Republic | SUR | Suriname | | BRN | Brunei Darussalam | LVA | Latvia | SJM | Svalbard and Jan Mayen\[f\] | | BGR | Bulgaria | LBN | Lebanon | SWE | Sweden | | BFA | Burkina Faso | LSO | Lesotho | CHE | Switzerland | | BDI | Burundi | LBR | Liberia | SYR | Syrian Arab Republic | | CPV | Cabo Verde | LBY | Libya | TWN | Taiwan, Province of China\[c\] | | KHM | Cambodia | LIE | Liechtenstein | TJK | Tajikistan | | CMR | Cameroon | LTU | Lithuania | TZA | Tanzania, United Republic of | | CAN | Canada | LUX | Luxembourg | THA | Thailand | | CYM | Cayman Islands | MAC | Macao | TLS | Timor-Leste | | CAF | Central African Republic | MDG | Madagascar | TGO | Togo | | TCD | Chad | MWI | Malawi | TKL | Tokelau | | CHL | Chile | MYS | Malaysia | TON | Tonga | | CHN | China\[c\] | MDV | Maldives | TTO | Trinidad and Tobago | | CXR | Christmas Island | MLI | Mali | TUN | Tunisia | | CCK | Cocos (Keeling) Islands | MLT | Malta | TUR | Türkiye | | COL | Colombia | MHL | Marshall Islands | TKM | Turkmenistan | | COM | Comoros | MTQ | Martinique | TCA | Turks and Caicos Islands | | COG | Congo | MRT | Mauritania | TUV | Tuvalu | | COD | Congo, Democratic Republic of the | MUS | Mauritius | UGA | Uganda | | COK | Cook Islands | MYT | Mayotte | UKR | Ukraine | | CRI | Costa Rica | MEX | Mexico | ARE | United Arab Emirates | | CIV | Côte d’Ivoire | FSM | Micronesia, Federated States of | GBR | United Kingdom of Great Britain and Northern Ireland | | HRV | Croatia | MDA | Moldova, Republic of | USA | United States of America | | CUB | Cuba | MCO | Monaco | UMI | United States Minor Outlying Islands\[g\] | | CUW | Curaçao | MNG | Mongolia | URY | Uruguay | | CYP | Cyprus\[c\] | MNE | Montenegro | UZB | Uzbekistan | | CZE | Czechia | MSR | Montserrat | VUT | Vanuatu | | DNK | Denmark | MAR | Morocco | VEN | Venezuela, Bolivarian Republic of | | DJI | Djibouti | MOZ | Mozambique | VNM | Viet Nam | | DMA | Dominica | MMR | Myanmar | VGB | Virgin Islands (British) | | DOM | Dominican Republic | NAM | Namibia | VIR | Virgin Islands (U.S.) | | ECU | Ecuador | NRU | Nauru | WLF | Wallis and Futuna | | EGY | Egypt | NPL | Nepal | ESH | Western Sahara\[c\] | | SLV | El Salvador | NLD | Netherlands, Kingdom of the | YEM | Yemen | | GNQ | Equatorial Guinea | NCL | New Caledonia | ZMB | Zambia | | ERI | Eritrea | NZL | New Zealand | ZWE | Zimbabwe | | EST | Estonia | NIC | Nicaragua | | | | SWZ | Eswatini | NER | Niger | | | | ETH | Ethiopia | NGA | Nigeria | | | | FLK | Falkland Islands (Malvinas)\[c\] | NIU | Niue | | | | FRO | Faroe Islands | NFK | Norfolk Island | | | | FJI | Fiji | MKD | North Macedonia | | | | FIN | Finland | MNP | Northern Mariana Islands | | | | FRA | France | NOR | Norway | | | | GUF | French Guiana | OMN | Oman | | | | PYF | French Polynesia | PAK | Pakistan | | | | ATF | French Southern Territories | PLW | Palau | | | | GAB | Gabon | PSE | Palestine, State of\[c\] | | | | GMB | Gambia | PAN | Panama | | | | GEO | Georgia | PNG | Papua New Guinea | | | | DEU | Germany | PRY | Paraguay | | | | GHA | Ghana | PER | Peru | | | | GIB | Gibraltar | PHL | Philippines | | | | GRC | Greece | PCN | Pitcairn | | | | GRL | Greenland | POL | Poland | | | | GRD | Grenada | PRT | Portugal | | | | GLP | Guadeloupe | PRI | Puerto Rico | | | ### Patient Visit Class Table 128 Patient Visit Class | | | | | --- | --- | --- | | **Code** | **Meaning** | **Description** | | AMB | Ambulatory | Kunjungan rawat jalan | | EMER | Emergency | Kunjungan instalasi gawat darurat | | FLD | Field | Kunjungan lapangan | | HH | Home health | Kunjungan ke rumah | | IMP | Inpatient encounter | Kunjungan rawat inap | | ACUTE | Inpatient acute | Kunjungan rawat inap akut | | NONAC | Inpatient non-acute | Kunjungan rawat inap non-akut | | OBSENC | Observation encounter | Kunjungan observasi | | PRENC | Pre-admission | Kunjungan pre-admisi | | SS | Short stay | Kunjungan pendek | | VR | Virtual | kunjungan dimana pasien dan nakes tidak berada dalam satu tempat (telefon, email, chat, televideo konferensi) | | REFFP | Referred-procedure | Prosedur yang dirujuk | ### Patient Service Class Table 129 Patient Service Class | | | | | | --- | --- | --- | --- | | **Code** | **Meaning** | **Code** | **Meaning** | | 1 | Kelas 1 | VVIP | Kelas VVIP | | 2 | Kelas 2 | Reguler | Kelas Reguler | | 3 | Kelas 3 | Eksekutif | Kelas Eksekutif | | VIP | Kelas VIP | | | ### Admission – Discharge – Transfer Code Table 130 ADT Code | **Code** | **Meaning** | **Description** | | --- | --- | --- | | A01 | Admit | Admit pasien ke suatu fasyankes; pasien ditempatkan di lokasi yang spesifik | | A02 | Transfer | Perpindahan lokasi rawat pasien | | A03 | Discharge | Akhir dari perawatan pasien di fasyankes. | | A04 | Register | Registrasi pasien, belum menempatkan pasien ke lokasi perawatan spesifik. | | A08 | Update patient information | | | A11 | Cancel admit | Batal admit | | A12 | Cancel transfer | Batal transfer | | A13 | Cancel discharge | Batal discharge | | A23 | Delete patient record | | | A24 | Link patient information | Menghubungkan _patient record_ satu dengan yang lain | | A37 | Unlink patient information | Memutuskan hubungan _patient record_ satu dengan yang lain | | A54 | Change attending doctor | Ganti _attending doctor_. | | A61 | Change consulting doctor | Ganti _consulting doctor_. | ## Lampiran 10: Cumulative View | | | | | | | | --- | --- | --- | --- | --- | --- | | **Patient** | | **Visit** | | **Request** | | | Patient ID: | 1234567890 | Hosp. Number: | 451672801 | Doctor: | Indrawaty, SpPD | | Name: | Badu Triputra | Admission date: | 20-Aug-2018 | Location: | Rawat Inap 1 | | Age/Sex: | 37 years 3 months/Male | Discharge date: | 22-Aug-2018 | Comment: | Dengue Hemorrhagic Fever | | Phone: | +62 21 451 6728 | | | | | | Email: | headoffice@summit.co.id | | | | | | Address: | Gading Bukit Indah H3 Kelapa Gading | | | | | | | Jakarta 14240 | | | | | | Comment: | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Test** | **Units** | **Reference** | **1040334567**

3-Apr-2021 | **1021923456**

19-Feb-2021 | **8082012345**

20-Aug-2018 | | | | | **Hematologi Lengkap** | | | | | | | | | | Hemoglobin | g/dL | 13.2 – 17.3 | 14.3 | 14.5 | 14.6 | | | | | Hematokrit | % | 40 – 52 | 43.2 | 45.4 | 45.8 | | | | | Eritrosit | 10^6/μL | 4.4 – 5.9 | 5.69 | 5.76 | 5.94 | | | | | **Nilai-nilai MC** | | | | | | | | | | \- MCV | fL | 80 – 100 | 7.9 | 78.8 | 77.2 | | | | | \- MCH | Pg | 26 – 34 | 25.2 | 25.1 | 24.7 | | | | | \- MCHC | g/dL | 32 – 36 | 33.1 | 31.9 | 31.9 | | | | | RDW-CV | % | 11.5 – 14.5 | 12.5 | 13 | 11.9 | | | | | Trombosit | 10^3/μL | 150 – 440 | 500 | 269 | 90 | | | | | Leukosit | 10^3 | 3.8 – 10.6 | 7.4 | 4.7 | 5.1 | | | | | **Hitung Jenis Leukosit** | | | | | | | | | | \- Basofil | % | 0.0 – 1.0 | 0.4 | 1.6 | 1.2 | | | | | \- Eosinofil | % | 2.0 – 4.0 | 3.5 | 3.8 | 3.9 | | | | | \- Neutrofil | % | 50.0 – 70.0 | 76.7 | 62.9 | 62.8 | | | | | \- Limfosit | % | 25.0 – 40.0 | 10.8 | 23.8 | 24.8 | | | | | \- Monosit | % | 2.0 – 8.0 | 8.5 | 7.9 | 7.3 | | | | | | | | | <slider> | | | | | Keterangan: - Bagian atas terdiri dari 3 kelompok data sesuai hirarki: data pasien, visit dan request - Data visit dan pasien secara default sesuai dengan request terbaru (3 Apr 2021). Tetapi jika user hover cursor mouse ke kolom nomor request lain, makan data yang ditampilkan di kelompok visit dan request akan menyesuaikan. Contoh di atas menunjukkan kursor mouse sedang ada di nomor request 8082012345. - Color codes: - Light yellow: below reference range - Dark yellow: above reference range - Light red: below critical range - Dark red: above critical range ## Lampiran 11: Test Ordering ### Test Order Urgency Table 131 Test order urgency codes | | | | | --- | --- | --- | | **Code** | **Meaning** | **Description** | | S | Stat | With highest priority | | A | ASAP | Fill after S orders | | R | Routine | Default | | P | Preop | | | C | Callback | | | T | Timing critical | A request implying that it is critical to come as close as possible to the requested time, e.g., for a trough antimicrobial level. | | PRN | As needed | | ### Test Order Status Table 132 Test order status codes | | | | | | --- | --- | --- | --- | | **Code** | **Description** | **Code** | **Description** | | A | Some, not all results available | IP | In process, unspecified | | CA | Order is cancelled | RP | Order has been replaced | | CM | Order is completed | SC | In process, scheduled | | DC | Order was discontinued | CL | Closed | | ER | Error, order not found | AC | Archived | | HD | Order “_on hold_” | DL | Deleted | ### Result Status Table 133 Result status codes | Code | Description | Code | Description | | --- | --- | --- | --- | | O | Order received; specimen not yet received | R | Results stored; not yet verified | | I | No results available; specimen received, procedure incomplete | F | Final results; results stored and verified. Can only be changed with a corrected result. | | S | No results available; procedure scheduled, but not done | X | No results available; Order canceled. | | A | Some, but not all, results available | Y | No order on record for this test. (Used only on queries) | | P | Preliminary: A verified early result is available, final results not yet obtained | Z | No record of this patient. (Used only on queries) | | C | Correction to results | | | ### Diagnostic Report Status Table 134 Report Status | | | | | | --- | --- | --- | --- | | **Lvl** | **Code** | **Display** | **Definition** | | 1 | registered | Registered | The existence of the report is registered, but there is nothing yet available. | | 1 | partial | Partial | This is a partial (e.g. initial, interim or preliminary) report: data in the report may be incomplete or unverified. | | 2 | preliminary | Preliminary | Verified early results are available, but not all results are final. | | 1 | final | Final | The report is complete and verified by an authorized person. | | 1 | amended | Amended | Subsequent to being final, the report has been modified. This includes any change in the results, diagnosis, narrative text, or other content of a report that has been issued. | | 2 | corrected | Corrected | Subsequent to being final, the report has been modified to correct an error in the report or referenced results. | | 2 | appended | Appended | Subsequent to being final, the report has been modified by adding new content. The existing content is unchanged. | | 1 | cancelled | Cancelled | The report is unavailable because the measurement was not started or not completed (also sometimes called “aborted”). | | 1 | entered-in-error | Entered in Error | The report has been withdrawn following a previous final release. This electronic record should never have existed, though it is possible that real-world decisions were based on it. (If real-world activity has occurred, the status should be “cancelled” rather than “entered-in-error”.). | | 1 | unknown | Unknown | The authoring/source system does not know which of the status values currently applies for this observation. Note: This concept is not to be used for “other” – one of the listed statuses is presumed to apply, but the authoring/source system does not know which. | ## Lampiran 12: Specimen ### Container Type | | | | | --- | --- | --- | | **Code** | **Display** | **Definition** | | [22566001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=22566001) | Cytology brush, device | | | [463568005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=463568005) | Pleural drainage system fluid collector | | | [464527005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=464527005) | Paediatric blood donor set | | | [464573007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=464573007) | Assisted reproduction needle, reprocessed | | | [464784003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=464784003) | Assisted reproduction catheter | | | [464946000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=464946000) | Assisted reproduction needle, single-use | | | [465046006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=465046006) | Assisted reproduction cryotube | | | [465091002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=465091002) | Tissue extraction bag | | | [465141003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=465141003) | Otological bone particle collector | | | [465487000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=465487000) | Rigid endotherapy cytology brush, reusable | | | [466164006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466164006) | Rigid endotherapy cytology brush, single-use | | | [466421006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466421006) | Viscerotome | | | [466447002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466447002) | Blood-processing autotransfusion system container | | | [466623002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466623002) | Blood gas syringe/needle, sodium heparin | | | [466637006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466637006) | Blood donor set, quad-pack | | | [466704003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466704003) | Blood collection/fat content reduction device | | | [466844004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466844004) | Blood donor set, double-pack | | | [466898000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466898000) | Blood donor set, quin-pack | | | [466930006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=466930006) | Blood donor set, triple-pack | | | [467030004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467030004) | Blood gas syringe/needle, lithium heparin | | | [467131002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467131002) | Blood autotransfusion system tubing | | | [467132009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467132009) | Blood donor set, single-pack | | | [467141004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467141004) | Blood donor set, many-pack | | | [467182004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467182004) | Cervical cytology inflatable collector | | | [467330006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467330006) | Adipose tissue stem cell recovery unit | | | [467431009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467431009) | Abortion suction system collection bottle | | | [467499008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467499008) | Chorionic villus sampling catheter | | | [467647004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467647004) | Cryostat microtome | | | [467697000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467697000) | Cytology scraper, single-use | | | [467743009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467743009) | Bone marrow explant needle | | | [467967005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467967005) | Cytology scraper, reusable | | | [467989009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=467989009) | Capillary blood collection tube, no-additive | | | [468076003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=468076003) | Bone marrow collection/transfusion set | | | [468131000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=468131000) | Cervical cytology brush | | | [468200003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=468200003) | Epididymal fluid aspiration catheter | | | [468981005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=468981005) | Dental bone particle collector | | | [468999002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=468999002) | Endometrial cytology brush | | | [469287008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=469287008) | Intrauterine secretion scoop | | | [469322002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=469322002) | Intravascular catheter endoluminal brush | | | [469454007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=469454007) | Intrauterine scoop | | | [469822008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=469822008) | Flexible endotherapy cytology brush, single-use | | | [470114007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=470114007) | Flexible endotherapy cytology brush, reusable | | | [470547006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=470547006) | General-purpose cytology brush | | | [470597005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=470597005) | Gastro-urological scoop | | | [700855008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700855008) | Tissue/fluid collection bag, sterile | | | [700905004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700905004) | Specimen container mailer, insulated | | | [700906003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700906003) | Specimen container mailer, non-insulated | | | [700945008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700945008) | Blood cell freeze/thaw system set | | | [700955007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700955007) | Blood collection Luer-syringe adaptor | | | [700956008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700956008) | Blood collection needle, basic | | | [700957004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=700957004) | Blood/tissue storage/culture container | | | [701394007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=701394007) | General specimen receptacle transport container | | | [701516009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=701516009) | Evacuated blood collection tube transport container | | | [701720006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=701720006) | Tissue/fluid collection bag, non-sterile | | | [702120003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702120003) | Blood collection Luer adaptor | | | [702223006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702223006) | Sputum specimen container | | | [702224000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702224000) | Midstream urine specimen container | | | [702232008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702232008) | Sweat specimen container IVD | | | [702244006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702244006) | Sterile urine specimen container | | | [702256007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702256007) | Non-evacuated blood collection tube, no additive | | | [702264001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702264001) | Non-sterile urine specimen container IVD | | | [702268003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702268003) | General specimen container, no additive, non-sterile | | | [702269006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702269006) | General specimen container, no additive, sterile | | | [702275002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702275002) | Microcapillary blood collection tube, ammonium heparin | | | [702276001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702276001) | Microcapillary blood collection tube, K2EDTA | | | [702277005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702277005) | Microcapillary blood collection tube, no additive | | | [702278000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702278000) | Evacuated blood collection tube, no additive/metal-free | | | [702279008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702279008) | Evacuated blood collection tube, gel separator | | | [702280006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702280006) | Evacuated blood collection tube, RNA stabilizer | | | [702281005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702281005) | Evacuated blood collection tube, thrombin/clot activator/gel separator | | | [702282003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702282003) | Non-evacuated blood collection tube, EDTA | | | [702283008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702283008) | Non-evacuated blood collection tube, gel separator | | | [702284002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702284002) | Non-evacuated blood collection tube, lithium heparin | | | [702285001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702285001) | Non-evacuated blood collection tube, lithium heparin/gel separator, sterile | | | [702286000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702286000) | Non-evacuated blood collection tube, NaEDTA/sodium fluoride | | | [702287009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702287009) | Non-evacuated blood collection tube, potassium oxalate/sodium fluoride | | | [702288004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702288004) | Evacuated urine specimen container, boric acid (H3BO3)/sodium formate | | | [702289007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702289007) | Evacuated urine specimen container, ethyl paraben/sodium porpionate /chlorhexidine | | | [702290003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702290003) | Cervical cytology microscopy slide | | | [702292006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702292006) | Evacuated blood collection tube , K3EDTA/sodium fluoride | | | [702293001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702293001) | Evacuated blood collection tube, K2EDTA/aprotinin | | | [702294007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702294007) | Syringe-blood collection tube transfer | | | [702295008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702295008) | Non-evacuated blood collection tube, clot activator/gel separator | | | [702296009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702296009) | Non-evacuated blood collection tube, sodium citrate | | | [702297000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702297000) | Non-evacuated blood collection tube, clot activator | | | [702298005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702298005) | Non-evacuated blood collection tube, K3EDTA | | | [702299002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702299002) | Non-evacuated blood collection tube, K2EDTA | | | [702300005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702300005) | Non-evacuated blood collection tube, lithium heparin/gel separator, non-sterile | | | [702301009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702301009) | Microcapillary blood collection funnel | | | [702302002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702302002) | Evacuated urine specimen container, boric acid (H3BO3) | | | [702303007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702303007) | Evacuated urine specimen container, multiple preservative | | | [702304001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702304001) | Microcapillary blood transfer tube, clot activator | | | [702305000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702305000) | Microcapillary blood transfer tube, sodium fluoride | | | [702306004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702306004) | Microcapillary blood transfer tube, EDTA | | | [702307008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702307008) | Microcapillary blood transfer tube IVD, heparin | | | [702308003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702308003) | Evacuated urine specimen container IVD, no additive | | | [702309006](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702309006) | Saliva specimen container IVD, no additive | | | [702310001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=702310001) | Evacuated saliva specimen container IVD, sodium azide | | | [704866005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=704866005) | Orthopedic bone particle collector, reusable | | | [704921002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=704921002) | Hemoperfusion tubing set | | | [706042001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706042001) | Clinical sampling brush | | | [706044000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706044000) | Endotherapy cytology brush | | | [706045004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706045004) | Bone particle collector | | | [706046003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706046003) | Specimen receptacle | | | [706047007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706047007) | Fecal specimen container | | | [706048002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706048002) | Blood specimen receptacle | | | [706049005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706049005) | Blood tube | | | [706050005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706050005) | Microcapillary blood collection tube | | | [706051009](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706051009) | Non-evacuated blood collection tube | | | [706052002](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706052002) | Evacuated blood collection tube | | | [706053007](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706053007) | General specimen container | | | [706054001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706054001) | Urine specimen container | | | [706055000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706055000) | 24-hour urine specimen container | | | [706056004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706056004) | Evacuated urine specimen container | | | [706057008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706057008) | Cytology specimen container | | | [706058003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706058003) | Secretory specimen container | | | [706067003](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706067003) | Blood collection/transfer device | | | [706070004](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706070004) | Blood donor set | | | [706071000](http://browser.ihtsdotools.org/?perspective=full&conceptId1=706071000) | Specimen receptacle transport container | | | [712485008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=712485008) | Autologous blood collection tube | | | [713951005](http://browser.ihtsdotools.org/?perspective=full&conceptId1=713951005) | Adipose tissue stem cell recovery unit, ultrasonic | | | [714731008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=714731008) | Blood component separator | | | [718301008](http://browser.ihtsdotools.org/?perspective=full&conceptId1=718301008) | Urological fluid funnel, sterile | | | [718302001](http://browser.ihtsdotools.org/?perspective=full&conceptId1=718302001) | Urological fluid funnel, non-sterile | | ### Additive[\[75\]](#footnote-78) | | | | | --- | --- | --- | | **Code** | **System** | **Display (en-US)** | |   [1259913003](http://snomed.info/id/1259913003) | http://snomed.info/sct | Heparin ammonium | |   [386961008](http://snomed.info/id/386961008) | http://snomed.info/sct | Aprotinin (substance) | |   [29725000](http://snomed.info/id/29725000) | http://snomed.info/sct | Heparin calcium | |   [21611007](http://snomed.info/id/21611007) | http://snomed.info/sct | Boric acid | |   [30531001](http://snomed.info/id/30531001) | http://snomed.info/sct | Calcium oxalate | |   [69519002](http://snomed.info/id/69519002) | http://snomed.info/sct | EDTA | |   [372628006](http://snomed.info/id/372628006) | http://snomed.info/sct | Edetate (substance) | |   [27763000](http://snomed.info/id/27763000) | http://snomed.info/sct | Hydrochloric acid | |   [414407009](http://snomed.info/id/414407009) | http://snomed.info/sct | Hirudin (substance) | |   [1256100007](http://snomed.info/id/1256100007) | http://snomed.info/sct | Edetate dipotassium | |   [1256101006](http://snomed.info/id/1256101006) | http://snomed.info/sct | Tripotassium edetate | |   [1256102004](http://snomed.info/id/1256102004) | http://snomed.info/sct | Heparin lithium (substance) | |   [387418006](http://snomed.info/id/387418006) | http://snomed.info/sct | Edetate disodium (substance) | |   [412546005](http://snomed.info/id/412546005) | http://snomed.info/sct | Sodium citrate (substance) | |   [50045009](http://snomed.info/id/50045009) | http://snomed.info/sct | Heparin sodium | |   [6910009](http://snomed.info/id/6910009) | http://snomed.info/sct | Sodium fluoride | |   [50306007](http://snomed.info/id/50306007) | http://snomed.info/sct | Sodium tetraborate | |   [387168006](http://snomed.info/id/387168006) | http://snomed.info/sct | Mannitol (substance) | |   [115281000146102](http://snomed.info/id/115281000146102) | http://snomed.info/sct | Sodium formate | ### Specimen Type Berdasarkan dokumentasi dari FHIR (https://terminology.hl7.org/5.1.0/CodeSystem-v2-0487.html) | | | | | | | | --- | --- | --- | --- | --- | --- | | **Code** | **Display** | **Code** | **Display** | **Code** | **Display** | | ABS | Abscess | CSMY | Fluid, Cystostomy Tube | GENL | Genital lochia | | ACNE | Tissue, Acne | CST | Fluid, Cyst | GENV | Genital vaginal | | ACNFLD | Fluid, Acne | CSVR | Blood, Cell Saver | GRAFT | Graft | | AIRS | Air Sample | CTP | Catheter tip | GRAFTS | Graft Site | | ALL | Allograft | CUR | Curretage | GRANU | Granuloma | | AMN | Amniotic fluid | CVM | Cervical Mucus | GROSH | Catheter, Groshong | | AMP | Amputation | CVPS | Site, CVP | GSOL | Solution, Gastrostomy | | ANGI | Catheter Tip, Angio | CVPT | Catheter Tip, CVP | GSPEC | Biopsy, Gastric | | ARTC | Catheter Tip, Arterial | CYN | Nodule, Cystic | GT | Tube, Gastric | | ASERU | Serum, Acute | CYST | Cyst | GTUBE | Drainage Tube, Drainage (Gastrostomy) | | ASP | Aspirate | DBITE | Bite, Dog | HAR | Hair | | AUTP | Autopsy | DCS | Sputum, Deep Cough | HBITE | Bite, Human | | BBL | Blood bag | DEC | Ulcer, Decubitus | HBLUD | Blood, Autopsy | | BCYST | Cyst, Baker’s | DIA | Dialysate | HEMAQ | Catheter Tip, Hemaquit | | BDY | Whole body | DIAF | Dialysis Fluid | HEMO | Catheter Tip, Hemovac | | BIFL | Bile Fluid | DISCHG | Discharge | HERNI | Tissue, Herniated | | BITE | Bite | DIV | Diverticulum | HEV | Drain, Hemovac | | BLD | Whole blood | DRN | Drain | HIC | Catheter, Hickman | | BLDA | Blood arterial | DRNG | Drainage, Tube | HYDC | Fluid, Hydrocele | | BLDCO | Cord blood | DRNGP | Drainage, Penrose | IBITE | Bite, Insect | | BLDV | Blood venous | DUFL | Duodenal fluid | ICYST | Cyst, Inclusion | | BLEB | Bleb | EARW | Ear wax (cerumen) | IDC | Catheter Tip, Indwelling | | BLIST | Blister | EBRUSH | Brush, Esophageal | IHG | Gas, Inhaled | | BOIL | Boil | EFFUS | Effusion | ILEO | Drainage, Ileostomy | | BON | Bone | ELT | Electrode | ILLEG | Source of Specimen Is Illegible | | BONE | Bone | EOS | Eosinophils | IMP | Implant | | BOWL | Bowel contents | ETA | Aspirate, Endotrach | INCI | Site, Incision/Surgical | | BPH | Basophils | ETTP | Catheter Tip, Endotracheal | INFIL | Infiltrate | | BPU | Blood product unit | ETTUB | Tube, Endotracheal | INS | Insect | | BRN | Burn | EXG | Gas, exhaled (=breath) | INTRD | Catheter Tip, Introducer | | BRSH | Brush | EXS | Shunt, External | ISLT | Isolate | | BRTH | Breath (use EXHLD) | EXUDTE | Exudate | IT | Intubation tube | | BRUS | Brushing | FBLOOD | Blood, Fetal | IUD | Intrauterine Device | | BUB | Bubo | FGA | Fluid, Abdomen | IVCAT | Catheter Tip, IV | | BULLA | Bulla/Bullae | FIB | Fibroblasts | IVFLD | Fluid, IV | | BX | Biopsy | FIST | Fistula | IVTIP | Tubing Tip, IV | | CALC | Calculus (=Stone) | FLD | Fluid, Other | JEJU | Drainage, Jejunal | | CARBU | Carbuncle | FLT | Filter | JNTFLD | Fluid, Joint | | CAT | Catheter | FLU | Fluid, Body unsp | JP | Drainage, Jackson Pratt | | CBITE | Bite, Cat | FLUID | Fluid | KELOI | Lavage | | CDM | Cardiac muscle | FOLEY | Catheter Tip, Foley | KIDFLD | Fluid, Kidney | | CLIPP | Clippings | FRS | Fluid, Respiratory | LAVG | Lavage, Bronhial | | CNJT | Conjunctiva | FSCLP | Scalp, Fetal | LAVGG | Lavage, Gastric | | CNL | Cannula | FUR | Furuncle | LAVGP | Lavage, Peritoneal | | COL | Colostrum | GAS | Gas | LAVPG | Lavage, Pre-Bronch | | CONE | Biospy, Cone | GASA | Aspirate, Gastric | LENS1 | Contact Lens | | CSCR | Scratch, Cat | GASAN | Antrum, Gastric | LENS2 | Contact Lens Case | | CSERU | Serum, Convalescent | GASBR | Brushing, Gastric | LESN | Lesion | | CSF | Cerebral spinal fluid | GASD | Drainage, Gastric | LIQ | Liquid, Unspecified | | CSITE | Catheter Insertion Site | GAST | Fluid/contents, Gastric | LIQO | Liquid, Other | lanjutan specimen type … | | | | | | | | --- | --- | --- | --- | --- | --- | | **Code** | **Display** | **Code** | **Display** | **Code** | **Display** | | LNA | Line arterial | PPP | Plasma, Platelet poor | TASP | Aspirate, Tracheal | | LNV | Line venous | PROST | Prosthetic Device | TEAR | Tears | | LSAC | Fluid, Lumbar Sac | PRP | Plasma, Platelet rich | THRB | Thrombocyte (platelet) | | LYM | Lymphocytes | PSC | Pseudocyst | TISS | Tissue | | MAC | Macrophages | PUNCT | Wound, Puncture | TISU | Tissue ulcer | | MAHUR | Catheter Tip, Makurkour | PUS | Pus | TLC | Cathether Tip, Triple Lumen | | MAR | Marrow | PUSFR | Pustule | TRAC | Site, Tracheostomy | | MASS | Mass | PUST | Pus | TRANS | Transudate | | MBLD | Blood, Menstrual | QC3 | Quality Control | TSERU | Serum, Trough | | MEC | Meconium | RANDU | Urine, Random | TSTES | Abscess, Testicular | | MILK | Breast milk | RBC | Erythrocytes | TTRA | Aspirate, Transtracheal | | MLK | Milk | RBITE | Bite, Reptile | TUBES | Tubes | | MUCOS | Mucosa | RECT | Drainage, Rectal | TUMOR | Tumor | | MUCUS | Mucus | RECTA | Abscess, Rectal | TZANC | Smear, Tzanck | | NAIL | Nail | RENALC | Cyst, Renal | UDENT | Source, Unidentified | | NASDR | Drainage, Nasal | RENC | Fluid, Renal Cyst | UMED | Unknown Medicine | | NEDL | Needle | RES | Respiratory | UR | Urine | | NEPH | Site, Nephrostomy | SAL | Saliva | URC | Urine clean catch | | NGASP | Aspirate, Nasogastric | SCAR | Tissue, Keloid (Scar) | URINB | Urine, Bladder Washings | | NGAST | Drainage, Nasogastric | SCLV | Catheter Tip, Subclavian | URINC | Urine, Catheterized | | NGS | Site, Naso/Gastric | SCROA | Abscess, Scrotal | URINM | Urine, Midstream | | NODUL | Nodule(s) | SECRE | Secretion(s) | URINN | Urine, Nephrostomy | | NSECR | Secretion, Nasal | SER | Serum | URINP | Urine, Pedibag | | ORH | Other | SHU | Site, Shunt | URNS | Urine sediment | | ORL | Lesion, Oral | SHUNF | Fluid, Shunt | URT | Urine catheter | | OTH | Source, Other | SHUNT | Shunt | USCOP | Urine, Cystoscopy | | PACEM | Pacemaker | SITE | Site | USPEC | Source, Unspecified | | PAFL | Pancreatic fluid | SKBP | Biopsy, Skin | USUB | Unkown substance | | PCFL | Fluid, Pericardial | SKN | Skin | VASTIP | Catheter Tip, Vas | | PDSIT | Site, Peritoneal Dialysis | SMM | Mass, Sub-Mandibular | VENT | Catheter Tip, Ventricular | | PDTS | Site, Peritoneal Dialysis Tunnel | SMN | Seminal fluid | VITF | Vitreous Fluid | | PELVA | Abscess, Pelvic | SNV | Fluid, synovial (Joint fluid) | VOM | Vomitus | | PENIL | Lesion, Penile | SPRM | Spermatozoa | WASH | Wash | | PERIA | Abscess, Perianal | SPRP | Catheter Tip, Suprapubic | WASI | Washing, e.g. bronchial washing | | PILOC | Cyst, Pilonidal | SPRPB | Cathether Tip, Suprapubic | WAT | Water | | PINS | Site, Pin | SPT | Sputum | WB | Blood, Whole | | PIS | Site, Pacemaker Insetion | SPTC | Sputum – coughed | WBC | Leukocytes | | PLAN | Plant Material | SPTT | Sputum – tracheal aspirate | WEN | Wen | | PLAS | Plasma | SPUT1 | Sputum, Simulated | WICK | Wick | | PLB | Plasma bag | SPUTIN | Sputum, Inducted | WND | Wound | | PLC | Placenta | SPUTSP | Sputum, Spontaneous | WNDA | Wound abscess | | PLEVS | Serum, Peak Level | STL | Stool = Fecal | WNDD | Wound drainage | | PLR | Pleural fluid (thoracentesis fluid) | STONE | Stone, Kidney | WNDE | Wound exudate | | PMN | Polymorphonuclear neutrophils | SUBMA | Abscess, Submandibular | WORM | Worm | | PND | Drainage, Penile | SUBMX | Abscess, Submaxillary | WRT | Wart | | POL | Polyps | SUMP | Drainage, Sump | | | | POPGS | Graft Site, Popliteal | SUP | Suprapubic Tap | | | | POPLG | Graft, Popliteal | SUTUR | Suture | | | | POPLV | Site, Popliteal Vein | SWGZ | Catheter Tip, Swan Gantz | | | | PORTA | Catheter, Porta | SWT | Sweat | | | ### Specimen Type (Environmental) Berikut adalah specimen type untuk lingkungan | | | | | | --- | --- | --- | --- | | **Code** | **Display** | **Code** | **Display** | | ATTE | Environment, Attest | ESOI | Environmental, Soil | | AUTOA | Environmental, Autoclave Ampule | ESOS | Environmental, Solution (Sterile) | | AUTOC | Environmental, Autoclave Capsule | EWHI | Environmental, Whirlpool | | DEION | Environmental, Water (Deionized) | FAW | Environmental, Water (Well) | | EEYE | Environmental, Eye Wash | SPS | Environmental, Spore Strip | | EFF | Environmental, Effluent | STER | Environmental, Sterrad | | EFOD | Environmental, Food | WWA | Environmental, Water | | EISO | Environmental, Isolette | WWO | Environmental, Water (Ocean) | | ENVIR | Environmental, Unidentified Substance | WWT | Environmental, Water (Tap) | | EOTH | Environmental, Other Substance | | | ### Specimen Component Berikut adalah specimen component value set berdasarkan HL7 dan FHIR: | | | | --- | --- | | **Value** | **Description** | | SUP | Supernatant | | SED | Sediment | | BLD | Whole blood, homogeneous | | BSEP | Whole blood, separated | | PRP | Platelet rich plasma | | PPP | Platelet poor plasma | | SER | Serum, NOS (not otherwise specified) | | PLAS | Plasma, NOS (not otherwise specified) | ### Collection Method Menjelaskan prosedur atau proses pengumpulan spesimen. Sistem pengkodean apa pun yang diakui secara nasional dapat digunakan untuk bidang ini termasuk SNOMED; sebagai alternatif, tabel yang ditentukan HL7 0488 dapat digunakan (https://build.fhir.org/valueset-specimen-collection-method.html) Table 135 Specimen collection method | | | | | --- | --- | --- | | **Code** | **System** | **Text** | |   [129316008](http://snomed.info/id/129316008) | snomed | Aspiration – action | |   [129314006](http://snomed.info/id/129314006) | snomed | Biopsy – action | |   [129300006](http://snomed.info/id/129300006) | snomed | Puncture – action | |   [129304002](http://snomed.info/id/129304002) | snomed | Excision – action | |   [129323009](http://snomed.info/id/129323009) | snomed | Scraping – action | |   [73416001](http://snomed.info/id/73416001) | snomed | Urine specimen collection, clean catch | |   [225113003](http://snomed.info/id/225113003) | snomed | Timed urine collection | |   [70777001](http://snomed.info/id/70777001) | snomed | Urine specimen collection, catheterized | |   [386089008](http://snomed.info/id/386089008) | snomed | Collection of coughed sputum | |   [278450005](http://snomed.info/id/278450005) | snomed | Finger-prick sampling | ### Body Site Specifies the source from which the specimen was obtained. For example, in the case where a liver biopsy is obtained via a percutaneous needle, the source would be ‘liver.’ Table 136 Body site | | | | | | | | --- | --- | --- | --- | --- | --- | | **Value** | **Description** | **Value** | **Description** | **Value** | **Description** | | BE | Bilateral Ears | LMFA | Left Mid Forearm | REJ | Right External Jugular | | OU | Bilateral Eyes | LN | Left Naris | OD | Right Eye | | BN | Bilateral Nares | LPC | Left Posterior Chest | RF | Right Foot | | BU | Buttock | LSC | Left Subclavian | RG | Right Gluteus Medius | | CT | Chest Tube | LT | Left Thigh | RH | Right Hand | | LA | Left Arm | LUA | Left Upper Arm | RIJ | Right Internal Jugular | | LAC | Left Anterior Chest | LUAQ | Left Upper Abd Quadrant | RLAQ | Rt Lower Abd Quadrant | | LACF | Left Antecubital Fossa | LUFA | Left Upper Forearm | RLFA | Right Lower Forearm | | LD | Left Deltoid | LVG | Left Ventragluteal | RMFA | Right Mid Forearm | | LE | Left Ear | LVL | Left Vastus Lateralis | RN | Right Naris | | LEJ | Left External Jugular | NB | Nebulized | RPC | Right Posterior Chest | | OS | Left Eye | PA | Perianal | RSC | Right Subclavian | | LF | Left Foot | PERIN | Perineal | RT | Right Thigh | | LG | Left Gluteus Medius | RA | Right Arm | RUA | Right Upper Arm | | LH | Left Hand | RAC | Right Anterior Chest | RUAQ | Right Upper Abd Quadrant | | LIJ | Left Internal Jugular | RACF | Right Antecubital Fossa | RUFA | Right Upper Forearm | | LLAQ | Left Lower Abd Quadrant | RD | Right Deltoid | RVL | Right Vastus Lateralis | | LLFA | Left Lower Forearm | RE | Right Ear | RVG | Right Ventragluteal | ### Source This field differs from SPM-8-Specimen Source Site in those cases where the source site must be approached via a particular site (e.g., anatomic location). For example, in the case where a liver biopsy is obtained via a percutaneous needle, the collection site would be the point of entry of the needle. For venous blood collected from the left radial vein, the collection site could be “antecubital fossa”. ### Specimen Role Table 137 Specimen Role | | | | --- | --- | | **Value** | **Description** | | B | Blind Sample | | C | Calibrator | | E | Electronic QC. Used with manufactured reference providing signals that simulate QC results | | F | Filler Organization Proficiency. Specimen used for testing proficiency of the organization performing the testing (Filler) 🡪 PME | | O | Operator Proficiency. Specimen used for testing Operator Proficiency. | | P | Patient (default if blank component value) | | Q | Control specimen | | R | Replicate (of patient sample as a control). Used when a patient sample is re-run as a control for a repeat test | | V | Verifying Calibrator. Used for periodic calibration checks. | ### Specimen Condition Based on https://terminology.hl7.org/5.4.0/CodeSystem-v2-0493.html atau https://terminology.hl7.org/6.5.0/ValueSet-v2-0493.html Table 138 Specimen Condition | | | | --- | --- | | **Value** | **Description** | | AUT | Autolyzed; _An autolyzed specimen is a tissue or cell sample that has undergone autolysis, a natural process where the cell’s own enzymes begin to digest and break down the cell’s components, often after death_ | | CLOT | Clotted; _A clotted specimen is a biological sample, typically blood, that has begun to coagulate, forming a gel-like mass, rendering it unsuitable for most laboratory tests_ | | CON | Contaminated | | COOL | Cool | | FROZ | Frozen | | HEM | Hemolyzed | | LIVE | Live | | ROOM | Room temperature | | SNR | Sample not received | | CFU | Centrifuged | | LIP | Lipemic | | ITC | Icteric | | | | ## Lampiran 13: Location ### Location Type | | | | | | | | --- | --- | --- | --- | --- | --- | | **LocTypeID** | **LocTypeAbb** | **LocTypeFull** | **Description** | **CreateDate** | **EndDate** | | | Nvarchar(5) | Nvarchar | Nvarchar | Date Time | Date Time | | 1 | FCLT | Facility | Organisasi atau lembaga tempat layanan disediakan, atau gedung tertentu dalam organisasi | 2025-02-25 17:50:00 | | | 2 | BLDG | Building | Gedung | 2025-02-25 17:50:00 | | | 3 | FLOR | Floor | Lantai dari gedung | 2025-02-25 17:50:00 | | | 4 | POC | Point of Care | | 2025-02-25 17:50:00 | | | 5 | ROOM | Room | Ruangan dalam Gedung-lantai | 2025-02-25 17:50:00 | | | 6 | BED | Bed | Tempat tidur pasien | 2025-02-25 17:50:00 | | | 7 | MOBL | Mobile | Lokasi bergerak, ditandai dengan koordinat GPS, lokasi sementara, atau deskripsi lokasi unit bergerak saat ini. Misalnya MCU onsite, home service, dll | 2025-02-25 17:50:00 | | | 8 | REMT | Remote | Lokasi di luar lokasi utama. Misalnya prkatek dokter, klinik/lab perujuk. | 2025-02-25 17:50:00 | | ## Lampiran 14: Value set ### Value Set Lihat Table 72. valueset untuk struktur lengkap. | **VsetID** | **Vorder** | **Vvalue** | **Vdesc** | **Vcategory** | | --- | --- | --- | --- | --- | | 1 | 1 | PRIMRY | Primary | SYS | | 1 | 2 | SCNDRY | Secondary | SYS | | 2 | 1 | DSABL | Disabled | SYS | | 2 | 2 | ENABL | Enabled | SYS | | 3 | 1 | F | Female | SYS | | 3 | 2 | M | Male | SYS | | 3 | 3 | U | Unknown | SYS | | 4 | 1 | A | Separated | SYS | | 4 | 2 | D | Divorced | SYS | | 4 | 3 | M | Married | SYS | | 4 | 4 | S | Single | SYS | | 4 | 5 | W | Widowed | SYS | | 4 | 6 | B | Unmarried | SYS | | 4 | 7 | U | Unknown | SYS | | 4 | 8 | O | Other | SYS | | 5 | 1 | Y | Death | SYS | | 5 | 2 | N | Life | SYS | | 6 | 1 | KTP | Kartu Tanda Penduduk | SYS | | 6 | 2 | PASS | Passport | SYS | | 6 | 3 | SSN | Social Security Number | SYS | | 6 | 4 | SIM | Surat Izin Mengemudi | SYS | | 6 | 5 | KTAS | Kartu Izin Tinggal Terbatas | SYS | | 7 | 1 | Create | create record | SYS | | 7 | 2 | Read | read record/field | SYS | | 7 | 3 | Update | update record/field | SYS | | 7 | 4 | Delete | delete record/field | SYS | | 8 | 1 | WDID | Windows Device ID | SYS | | 8 | 2 | AAID | Android AAID | SYS | | 8 | 3 | IDFA | IOS IDFA | SYS | | 9 | 1 | PAT | Patient | SYS | | 9 | 2 | ISN | Insurance | SYS | | 9 | 3 | ACC | Account | SYS | | 9 | 4 | DOC | Doctor | SYS | | 10 | 1 | S | Stat | SYS | | 10 | 2 | A | ASAP | SYS | | 10 | 3 | R | Routine | SYS | | 10 | 4 | P | Preop | SYS | | 10 | 5 | C | Callback | SYS | | 10 | 6 | T | Timing critical | SYS | | 10 | 7 | PRN | As needed | SYS | | 11 | 1 | A | Some, not all results available | SYS | | 11 | 2 | CA | Order is cancelled | SYS | | 11 | 3 | CM | Order is completed | SYS | | 11 | 4 | DC | Order was discontinued | SYS | | 11 | 5 | ER | Error, order not found | SYS | | 11 | 6 | HD | Order “_on hold_” | SYS | | 11 | 7 | IP | In process, unspecified | SYS | | 11 | 8 | RP | Order has been replaced | SYS | | 11 | 9 | SC | In process, scheduled | SYS | | 11 | 10 | CL | Closed | SYS | | 11 | 11 | AC | Archived | SYS | | 11 | 12 | DL | Deleted | SYS | | 12 | 1 | FCLT | _Facility_. Organisasi atau lembaga tempat layanan disediakan, atau gedung tertentu dalam organisasi | SYS | | 12 | 2 | BLDG | _Building_. Gedung | SYS | | 12 | 3 | FLOR | _Floor_. Lantai dari gedung | SYS | | 12 | 4 | POC | _Point of Care_ | SYS | | 12 | 5 | ROOM | _Room_. Ruangan dalam Gedung-lantai | SYS | | 12 | 6 | BED | _Bed_. Tempat tidur pasien | SYS | | 12 | 7 | MOBL | _Mobile_. Lokasi bergerak, ditandai dengan koordinat GPS, lokasi sementara, atau deskripsi lokasi unit bergerak saat ini. | SYS | | 12 | 8 | REMT | _Remote_. Lokasi di luar lokasi utama | SYS | | 13 | 1 | Hep | Heparin ammonium | SYS | | 13 | 2 | Apro | Aprotinin (substance) | SYS | | 13 | 3 | HepCa | Heparin calcium | SYS | | 13 | 4 | H3BO3 | Boric acid | SYS | | 13 | 5 | CaOxa | Calcium oxalate | SYS | | 13 | 6 | EDTA | EDTA | SYS | | 13 | 7 | Ede | Edetate (substance) | SYS | | 13 | 8 | HCl | Hydrochloric acid | SYS | | 13 | 9 | Hrdn | Hirudin (substance) | SYS | | 13 | 10 | EdeK | Edetate dipotassium | SYS | | 13 | 11 | EdeTri | Tripotassium edetate | SYS | | 13 | 12 | LiHep | Heparin lithium (substance) | SYS | | 13 | 13 | EdeNa | Edetate disodium (substance) | SYS | | 13 | 14 | NaCtrt | Sodium citrate (substance) | SYS | | 13 | 15 | NaHep | Heparin sodium | SYS | | 13 | 16 | NaF | Sodium fluoride | SYS | | 13 | 17 | Borax | Sodium tetraborate | SYS | | 13 | 18 | Mntl | Mannitol (substance) | SYS | | 13 | 19 | NaFrm | Sodium formate | SYS | | 14 | 1 | Pri | _primary_, kontak langsung dengan spesimen | SYS | | 14 | 2 | Sec | _secondary_, wadah _primary container_ | SYS | | 14 | 3 | Ter | _tertiary_, wadah _secondary container_. | SYS | | 15 | 1 | BLD | Whole blood | SYS | | 15 | 2 | BLDA | Blood arterial | SYS | | 15 | 3 | BLDCO | Cord blood | SYS | | 15 | 4 | FBLOOD | Blood, Fetal | SYS | | 15 | 5 | CSF | Cerebral spinal fluid | SYS | | 15 | 6 | WB | Blood, Whole | SYS | | 15 | 7 | BBL | Blood bag | SYS | | 15 | 8 | SER | Serum | SYS | | 15 | 9 | PLAS | Plasma | SYS | | 15 | 10 | PLB | Plasma bag | SYS | | 15 | 11 | MUCOS | Mucosa | SYS | | 15 | 12 | MUCUS | Mucus | SYS | | 15 | 13 | UR | Urine | SYS | | 15 | 14 | RANDU | Urine, Random | SYS | | 15 | 15 | URINM | Urine, Midstream | SYS | | 16 | 1 | L | Liter | SYS | | 16 | 2 | mL | Mili Liter | SYS | | 16 | 3 | mL | Micro Liter | SYS | | 16 | 4 | Pcs | Pieces | SYS | | 17 | 1 | order | Generate by order | SYS | | 17 | 2 | user | Generate by user | SYS | | 18 | 1 | Scoll | Collection | SYS | | 18 | 2 | Stran | Transport | SYS | | 18 | 3 | Srec | Reception | SYS | | 18 | 4 | Sprep | Preparation | SYS | | 18 | 5 | Salqt | Aliquot | SYS | | 18 | 6 | Sdisp | Dispatching | SYS | | 18 | 7 | Sdest | Destruction | SYS | | 19 | 1 | FAILD | Failed | SYS | | 19 | 2 | SUCNT | Success with note | SYS | | 19 | 3 | SUCCS | Success | SYS | | 20 | 1 | STC | To be collected | SYS | | 20 | 2 | SCFld | Collection failed | SYS | | 20 | 3 | SCtd | Collected | SYS | | 20 | 4 | Stran | In-transport | SYS | | 20 | 5 | STFld | Transport failed | SYS | | 20 | 6 | Sarrv | Arrived | SYS | | 20 | 7 | Srejc | Rejected | SYS | | 20 | 8 | SRcvd | Received | SYS | | 20 | 9 | SPAna | Pre-analytical | SYS | | 20 | 10 | SPAF | Pre-analytical failed | SYS | | 20 | 11 | STA | To be analyze | SYS | | 20 | 12 | SAFld | Analytical failed | SYS | | 20 | 13 | Sana | Analytical | SYS | | 20 | 14 | STS | To be stored | SYS | | 20 | 15 | SSFld | Store failed | SYS | | 20 | 16 | SStrd | Stored | SYS | | 20 | 17 | Sexp | Expired | SYS | | 20 | 18 | STD | To be destroyed | SYS | | 20 | 19 | SDFld | Failed to destroy | SYS | | 20 | 20 | SDstd | Destroyed | SYS | | 21 | 1 | HEM | Hemolyzed | SYS | | 21 | 2 | ITC | Icteric | SYS | | 21 | 3 | LIP | Lipemic | SYS | | 21 | 4 | CFU | Centrifuged | SYS | | 21 | 5 | ROOM | Room temperature | SYS | | 21 | 6 | COOL | Cool | SYS | | 21 | 7 | FROZ | Frozen | SYS | | 21 | 8 | CLOT | Clotted | SYS | | 21 | 9 | AUT | Autolyzed | SYS | | 21 | 10 | CON | Contaminated | SYS | | 21 | 11 | LIVE | Live | SYS | | 22 | 1 | P | Patient | SYS | | 22 | 2 | B | Blind Sample | SYS | | 22 | 3 | Q | Control specimen | SYS | | 22 | 4 | E | Electronic QC. Used with manufactured reference providing signals that simulate QC results | SYS | | 22 | 5 | F | Filler Organization Proficiency. Specimen used for testing proficiency of the organization performing the testing (Filler) 🡪 PME | SYS | | 22 | 6 | O | Operator Proficiency. Specimen used for testing Operator Proficiency. | SYS | | 22 | 7 | C | Calibrator | SYS | | 22 | 8 | R | Replicate (of patient sample as a control). Used when a patient sample is re-run as a control for a repeat test | SYS | | 22 | 9 | V | Verifying Calibrator. Used for periodic calibration checks. | SYS | | 23 | 1 | pcntr | Puncture | SYS | | 23 | 2 | fprk | Finger-prick sampling | SYS | | 23 | 3 | ucct | Urine specimen collection, clean catch | SYS | | 23 | 4 | utcl | Timed urine collection | SYS | | 23 | 5 | ucth | Urine specimen collection, catheterized | SYS | | 23 | 6 | scgh | Collection of coughed sputum | SYS | | 23 | 7 | bpsy | Biopsy | SYS | | 23 | 8 | aspn | Aspiration | SYS | | 23 | 9 | excs | Excision | SYS | | 23 | 10 | scrp | Scraping | SYS | | 24 | 1 | LA | Left Arm | SYS | | 24 | 2 | RA | Right Arm | SYS | | 24 | 3 | LF | Left Foot | SYS | | 24 | 4 | RF | Right Foot | SYS | | 25 | 1 | 5ml | 5 mL | SYS | | 25 | 2 | 7ml | 7 mL | SYS | | 25 | 3 | 10ml | 10 mL | SYS | | 25 | 4 | 1l | 1 L | SYS | | 26 | 1 | F | _Fasting_. Pasien puasa | SYS | | 26 | 2 | NF | _Not Fasting_. Pasien tidak puasa | SYS | | 26 | 3 | NG | _Not Given_. Pasien tidak ditanyakan status puasanya. | SYS | | 27 | 1 | TEST | _Test_ | SYS | | 27 | 2 | PARAM | _Parameter_ | SYS | | 27 | 3 | CALC | _Calculated Test_ | SYS | | 27 | 4 | GROUP | _Group Test_ [\[76\]](#footnote-79) | SYS | | 27 | 5 | TITLE | _Title_. | SYS | | 28 | 1 | g/dL | | SYS | | 28 | 2 | g/L | | SYS | | 28 | 3 | mg/dL | | SYS | | 28 | 4 | mg/L | | SYS | | 28 | 5 | L/L | | SYS | | 28 | 6 | x106/mL | | SYS | | 28 | 7 | x1012/L | | SYS | | 28 | 8 | fL | | SYS | | 28 | 9 | pg | | SYS | | 28 | 10 | x109/L | | SYS | | 29 | 1 | Phyton | Phyton | SYS | | 29 | 2 | CQL | Clinical Quality Language | SYS | | 29 | 3 | FHIRP | FHIRPath | SYS | | 29 | 4 | SQL | SQL | SYS | | 30 | 1 | JAWA | Jawa | SYS | | 30 | 2 | SUNDA | Sunda | SYS | | 30 | 3 | BATAK | Batak | SYS | | 30 | 4 | SULOR | Suku asal Sulawesi lainnya | SYS | | 30 | 5 | MDRA | Madura | SYS | | 30 | 6 | BTWI | Betawi | SYS | | 30 | 7 | MNG | Minangkabau | SYS | | 30 | 8 | BUGIS | Bugis | SYS | | 30 | 9 | MLYU | Melayu | SYS | | 30 | 10 | SUMSL | Suku asal Sumatera Selatan | SYS | | 30 | 11 | BTNOR | Suku asal Banten | SYS | | 30 | 12 | NTTOR | Suku asal Nusa Tenggara Timur | SYS | | 30 | 13 | BNJAR | Banjar | SYS | | 30 | 14 | ACEH | Aceh | SYS | | 30 | 15 | BALI | Bali | SYS | | 30 | 16 | SASAK | Sasak | SYS | | 30 | 17 | DAYAK | Dayak | SYS | | 30 | 18 | TNGHA | Tionghoa | SYS | | 30 | 19 | PPAOR | Suku asal Papua | SYS | | 30 | 20 | MKSSR | Makassar | SYS | | 30 | 21 | SUMOR | Suku asal Sumatera lainnya | SYS | | 30 | 22 | MLKOR | Suku asal Maluku | SYS | | 30 | 23 | KLMOR | Suku asal Kalimantan lainnya | SYS | | 30 | 24 | CRBON | Cirebon | SYS | | 30 | 25 | JBIOR | Suku asal Jambi | SYS | | 30 | 26 | LPGOR | Suku Lampung | SYS | | 30 | 27 | NTBOR | Suku asal Nusa Tenggara Barat lainnya | SYS | | 30 | 28 | GRTLO | Gorontalo | SYS | | 30 | 29 | MNHSA | Minahasa | SYS | | 30 | 30 | NIAS | Nias | SYS | | 30 | 31 | FORGN | Asing/luar negeri | SYS | | 31 | 1 | ISLAM | Islam | SYS | | 31 | 2 | KRSTN | Kristen | SYS | | 31 | 3 | KTLIK | Katolik | SYS | | 31 | 4 | HINDU | Hindu | SYS | | 31 | 5 | BUDHA | Budha | SYS | | 31 | 6 | KHCU | Khong Hu Cu | SYS | | 31 | 7 | OTHER | Lainnya | SYS | | 32 | 1 | PPMLN | Papua Melanezoid | SYS | | 32 | 2 | NGRID | Negroid | SYS | | 32 | 3 | WDOID | Weddoid | SYS | | 32 | 4 | MMPM | Melayu Mongoloid_Proto Melayu | SYS | | 32 | 5 | MMDM | Melayu Mongoloid_Deutro Melayu | SYS | | 32 | 6 | TNGHA | Tionghoa | SYS | | 32 | 7 | INDIA | India | SYS | | 32 | 8 | ARAB | Arab | SYS | | 33 | | <CntyID> | <lihat Country> | SYS | | 34 | 1 | PRPL | Purple | SYS | | 34 | 2 | RED | Red | SYS | | 34 | 3 | YLLW | Yellow | SYS | | 34 | 4 | GRN | Green | SYS | | 34 | 5 | PINK | Pink | SYS | | 34 | 6 | LBLU | Light Blue | SYS | | 34 | 7 | RBLU | Royal Blue | SYS | | 34 | 8 | GRAY | Gray | SYS | | 35 | 1 | ORD | Order | SYS | | 35 | 2 | ANA | Analyse | SYS | | 35 | 3 | VER | Result Verification/Technical Validation | SYS | | 35 | 4 | REV | Clinical Review/Clinical Validation | SYS | | 35 | 5 | REP | Reporting | SYS | | 36 | 1 | A01 | Admit | SYS | | 36 | 2 | A02 | Transfer | SYS | | 36 | 3 | A03 | Discharge | SYS | | 36 | 4 | A04 | Register | SYS | | 36 | 5 | A08 | Update patient information | SYS | | 36 | 6 | A11 | Cancel admit | SYS | | 36 | 7 | A12 | Cancel transfer | SYS | | 36 | 8 | A13 | Cancel discharge | SYS | | 36 | 9 | A23 | Delete patient record | SYS | | 36 | 10 | A24 | Link patient information | SYS | | 36 | 11 | A37 | Unlink patient information | SYS | | 36 | 12 | A54 | Change attending doctor | SYS | | 36 | 13 | A61 | Change consulting doctor | SYS | | 37 | 1 | GH | Government Hospital (rumah sakit pemerintah) | SYS | | 37 | 2 | PH | Private Hospital (rumah sakit swasta) | SYS | | 37 | 3 | GHL | Government Hospital Lab (lab RS pemerintah) | SYS | | 37 | 4 | PHL | Private Hospital Lab (Lab RS swasta) | SYS | | 37 | 5 | GL | Government Lab (laboratorium mandiri pemerintah) | SYS | | 37 | 6 | PL | Private Lab (laboratorium mandiri swasta) | SYS | | 38 | 1 | A_CLAS | Kelas A | SYS | | 38 | 2 | B_CLAS | Kelas B | SYS | | 38 | 3 | C_CLAS | Kelas C | SYS | | 38 | 4 | D_CLAS | Kelas D | SYS | | 38 | 5 | Utama | Utama | SYS | | 38 | 6 | Prtama | Pratama | SYS | | 39 | 1 | HIS | HIS | SYS | | 39 | 2 | SITE | Site | SYS | | 39 | 3 | WST | Workstation | SYS | | 39 | 4 | INST | Equipment/Instrument | SYS | | 40 | 1 | PROP | Propinsi | SYS | | 40 | 2 | KAB | Kabupaten | SYS | | 40 | 3 | KOTA | Kota | SYS | | 41 | 1 | \= | Equal | SYS | | 41 | 2 | < | Less than | SYS | | 41 | 3 | \> | Greater than | SYS | | 41 | 4 | <= | Less than or equal to | SYS | | 41 | 5 | \>= | Greater than or equal to | SYS | | 42 | 1 | SYS | System | SYS | | 42 | 2 | URSULT | User-defined_result | SYS | | 43 | 1 | NMRIC | Numeric | SYS | | 43 | 2 | RANGE | Range | SYS | | 43 | 3 | TEXT | Text | SYS | | 43 | 4 | VSET | Value set | SYS | | 43 | 5 | NORES | No Result | SYS | | 44 | 1 | NMRC | Numeric | SYS | | 44 | 2 | TEXT | Text | SYS | | 45 | 1 | REF | Reference Range | SYS | | 45 | 2 | CRTC | Critical Range | SYS | | 45 | 3 | VAL | Validation Range | SYS | | 45 | 4 | RERUN | Rerun Range | SYS | | 46 | 1 | RANGE | Range | SYS | | 46 | 2 | THOLD | Threshold | SYS | | 46 | 3 | VSET | Value Set | SYS | | 46 | 4 | TEXT | Text. | SYS | | 46 | 5 | NOREF | No Reference Range | SYS | | | | | | | | | | | | | | 1001 | 1 | NEG | Negative | URSULT | | 1001 | 2 | POS | Positive | URSULT | | 1001 | 3 | GZ | Grayzone | URSULT | | 1002 | 1 | KNG | Kuning | URSULT | | 1002 | 2 | JNG | Jingga | URSULT | | 1002 | 3 | MRH | Merah | URSULT | | 1002 | 4 | CKLT | Coklat tua | URSULT | | | | | | | | | | | | | ### Value set Field (Table 97. ) | **VSName** | **Vdesc** | **VsetID** | | --- | --- | --- | | WSType | workstation.Type | 1 | | Enable/Disable | workstation.Enable

equipmentlist.Enable

testdef.CountStat

testdefsite.CountStat

testdefsite.VisibleScr

testdefsite.VisibleRpt | 2 | | Gender | patient.Gender

refnum.Sex | 3 | | Marital Status | patient.MaritalStatus | 4 | | Death Indicator | patient.DeathIndicator | 5 | | Identifier Type | patidt.IdentifierType | 6 | | Operation | patreglog.Operation

patvisitlog.Operation

orderlog.Operation | 7 | | DID Type | patreglog.DIDType

patvisitlog.DIDType | 8 | | | | | | | | | | Requested Entity | order.ReqEntity | 9 | | Order Priority | order.Priority | 10 | | Order Status | orderststatus.OrderStatus | 11 | | | | | | Location Type | location.LocationType | 12 | | Additive | containertype.Additive

specimenprep.Additive | 13 | | Container Class | containertype.ConClass | 14 | | Specimen Type | testdeftech.SpcType

refnum.SpcType

reftxt.SpcType | 15 | | Unit | ~~spcdef.Unit~~

specimens.Unit

specimenstatus.Unit

specimenprep.AddUnit | 16 | | GenerateBy | specimens. GenerateBy | 17 | | Specimen Activity | specimenstatus.SpcAct | 18 | | Activity Result | specimenstatus.ActRes

patrestatus.ActRes | 19 | | Specimen Status | specimenstatus.SpcStatus | 20 | | Specimen Condition | specimenstatus.SpcCon | 21 | | Specimen Role | specimencollection.SpcRole | 22 | | Collection Method | specimencollection.ColMethod | 23 | | Body Site | specimencollection.BodySite | 24 | | Container Size | specimencollection.CntSize | 25 | | Fasting Status | specimencollection.Fasting | 26 | | Test Type | testdefsite.TestType | 27 | | Result Unit | testdefsite.Unit1

testdefsite.Unit2 | 28 | | Formula Languange | testdefcal.FormulaLang | 29 | | Race | patient.Race | 30 | | Religion | patient.Religion | 31 | | Ethnic | patient.Ethnic | 32 | | Country | patient.Country | 33 | | Container cap color | containerdef.Color | 34 | | Test Activity | patrestatus.TestAct | 35 | | ADT Event | patvisitadt.Code | 36 | | Site Type | Site.SiteType | 37 | | Site Class | Site.SiteClass | 38 | | Entity Type | testmap.HostType

testmap.ClientType | 39 | | Area Class | AreaGeo | 40 | | Math Sign | refnum.LowSign

refnum.HighSign | 41 | | Vcategory | valueset. Vcategory | 42 | | Result Type | testdeftech.ResultType | 43 | | Reference Type | testdeftech.RefType | 44 | | Range Type | refnum.RangeType | 45 | | Numeric Reference Type | refnum.NumRefType | 46 | | Text Reference Type | reftxt. TxtRefType | 47 | | | | | | | | | | HIV | Value set untuk hasil HIV | 1001 | ## Lampiran 15: Organization Structure ### Discipline Reference: Table 9. discipline | | | | | | --- | --- | --- | --- | | **DisciplineID** | **DisciplineCode** | **DisciplineName** | **Parent** | | 1 | HEMA | Hematology | | | 2 | CHEM | Clinical Chemistry | | | 3 | IMSR | Immunology/Serology | | | 4 | URIN | Urinalysis | | | 5 | FECAL | Fecal Analysis | | | 6 | HC | Pathology/Cytology | | | 7 | MICRO | Microbiology | | | 8 | TXC | Toxicology | | | 9 | LF | Life Sciences | | | 10 | ND | Non-discipline | | | 11 | BGP | Gula Darah | HEMA | | 12 | LPD | Profil Lipid | CHEM | | 13 | LVRP | Fungsi Hati | CHEM | | 14 | KDN | Fungsi Ginjal | CHEM | ## Lampiran 16: HL7 Message | | | | | | --- | --- | --- | --- | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MSH|^~\\&|||||20251006112101||ORU^R01|8510|P|2.3.1||||0||ASCII|||<CR> PID|2298|0500048614|||Rukmini Ambarsari||19680607000000|F|||||||||||||||||||||||<CR> OBR|2298|2510060052GSK|12|^|N|20251006110950|20251006110950|||1^20||||20251006110950|Serum|||||||||||||||||||||||||||||||||<CR> OBX|1|NM|ALT|Alanine Aminotransferase|43.638382|U/L|-34.0|N|||F||43.638382|20251006112052|||**0**|<CR> OBX|2|NM|AST|Aspartate Aminotransferase|77.419359|U/L|-31.0|N|||F||77.419359|20251006112101|||**0**|<CR> OBX|3|NM|CREA|Creatinine (Sarcosine Oxidase Method)|4.495076|mg/dL|0.50-0.90|N|||F||4.495076|20251006112101|||**0**|<CR> OBX|4|NM|ALB|Albumin|0.974539|g/dL|3.50-5.30|N|||F||0.974539|20251006111655|||**0**|<CR> OBX|5|NM|UREA|Urea|163.754362|mg/dL|16.81-43.25|N|||F||163.754362|20251006112027|||**0**|<CR> MSH|^~\\&|||||20251006121224||ORU^R01|8514|P|2.3.1||||0||ASCII|||<CR> PID|2300|0500048614||| Rukmini Ambarsari||19680607000000|F|||||||||||||||||||||||<CR> OBR|2300|2510060052GSK|12|^|N|20251006110950|20251006110950|||1^1||||20251006110950|Serum|||||||||||||||||||||||||||||||||<CR> OBX|1|NM|CREA|Creatinine (Sarcosine Oxidase Method)|4.405742|mg/dL|0.50-0.90|N|||F||4.405742|20251006121224|||**1**|<CR> OBX|2|NM|UREA|Urea|162.841855|mg/dL|16.81-43.25|N|||F||162.841855|20251006121124|||**1**|<CR> # Referensi Table 139. Contoh testdeftech | | | | | | | | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **TestTechID** | **SiteID** | **WorkstationID** | **EquipmentID** | **InstrumentID** | **InstrumentName** | **TestSiteID** | **TestSiteCode** | **TestSiteName** | **ConDefID** | **ConCode** | **TestTechCode** | **TestTechAbb** | **TestTechName** | **Method** | **CreateDate** | **EndDate** | | 1 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 1 | GLUAR | Glukosa Sewaktu | 1 | 101 | 1 | GLU | Glucose | Hexokinase | | | | 2 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 2 | GLUF | Glukosa Puasa | 2 | 102 | 1 | GLU | Glucose | Hexokinase | | | | 3 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 3 | GLU2HPP | Glukosa 2 Jam PP | 3 | 103 | 1 | GLU | Glucose | Hexokinase | | | | 4 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 4 | SGOT | Aspartate Aminotransferase | 1 | 101 | 2 | AST | AST | IFCC | | | | 5 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 5 | SGPT | Alanine Aminotransferase | 1 | 101 | 3 | ALT | ALT | IFCC | | | | 6 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 6 | CREA | Creatinine | 1 | 101 | 4 | CREA | CREA | Enzymatic | | | | 7 | 01 | CC_main | 597 | 6010840622 | TMS-30i | 7 | CREAU | Creatinine Urine | 10 | 401 | 4 | CREA | CREA | Enzymatic | | | | 8 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 1 | GLUAR | Glukosa Sewaktu | 1 | 101 | 1 | GLU | Glucose | Hexokinase | | | | 9 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 2 | GLUF | Glukosa Puasa | 2 | 102 | 1 | GLU | Glucose | Hexokinase | | | | 10 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 3 | GLU2HPP | Glukosa 2 Jam PP | 3 | 103 | 1 | GLU | Glucose | Hexokinase | | | | 11 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 4 | SGOT | Aspartate Aminotransferase | 1 | 101 | 2 | AST | AST | IFCC | | | | 12 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 5 | SGPT | Alanine Aminotransferase | 1 | 101 | 3 | ALT | ALT | IFCC | | | | 13 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 6 | CREA | Creatinine | 1 | 101 | 4 | CREA | CREA | Enzymatic | | | | 14 | 01 | CC_back | 58 | 2711000813 | TMS-24i | 7 | CREAU | Creatinine Urine | 10 | 401 | 4 | CREA | CREA | Enzymatic | | | # Riwayat Perubahan

Versi

Tanggal Berlaku

Perubahan

 

 21 Agustus 2024

Dokumen dibuat 

 

 21 Oktober 2024

Lampiran 3: TMS-24i 

11 September 2025

Tambahan value set untuk:

  • containertype – Additive
  • containertype – ConClass
  • spcdef – SpcType
  • spcedef-Unit.

12 September 2025

  • tambahan value set untuk:
    • specimens – SpcRole
    • specimenstatus – SpcAct
    • specimenstatus – ActRes
    • specimenstatus – SpcStatus
  • spcactdef table ditiadakan dan diganti dengan value set.
  • spccondition table ditiadakan dan digantikan dengan value set.

  • Ganti nama containertype table menjadi containerdef table.
  • Ganti terminology specimen code menjadi container code. Container code menjadi bagian dari SID.
  • hapus spcdef table dan atributnya digabungkan ke containerdef table.

29 September 2025

  1. Tambahan password pada Table 15. Contact
  2. Copy Account dan Site tables dari CRM
  3. Tambahan SiteCode pada Table 42. Site
  4. Race, religion, ethnic dan country menjadi Value Set, bukan dikelola dalam table terpisah.

1 Oktober 2025

  1. hapus table race, religion, ethnic dan country
  2. Rules dalam test ordering

2 Oktober 2025

  1. hapus field TestID dari table testdefsite, karena fungsi mapping dikelola di table testmap.

14 Oktober 2025

  1. Tambahan contoh relasi Patient Registration, Patient Visit, ADT & Test Ordering .

15 Oktober 2025

  1. Update testdefcal table
  2. tambahan value set testdefcal.FormulaLang dan containerdef.Color
  3. Update testgrp table

16 Oktober 2025

  1. create table refnum, refthold, refvset, revtxt
  2. update table patres

20 Oktober 2025

  1. tambahan table patrestatus
  2. tambahan Value Set TestAct

21 Oktober 2025

  1. Update semua datetime disimpan sebagai UTC+0 kecuali DoB dan ToD.
  2. Test activity & Test status
  3. tambahan ADT event di Value Set

22 Oktober 2025

  1. Tambahan value set untuk SiteClass dan SiteType
  2. Contoh struktur organisasi

23 Oktober 2025

  1. Update table testmap, testdefcal.
  2. Contoh test mapping.

3 November 2025

  1. Update table Workstation. Hapus referensi equipment.
  2. Update table Equipment. Tambah referensi ke workstation.

6 November 2025

  1. Beberapa irrelevant fields dari table CRM dihilangkan di CLQMS:
    1. NPWP di table Account
    2. ME di table Site

20 November 2025

  1. Contoh tables: testdefsite, testdeftech, testdefcal, testdefgrp
  2. ConDefID dihilangkan dari table testdeftech.

28 November 2025

  1. Field Type di table testdefsite diuraikan menjadi:
    1. TestType di table testdefsite
    2. ResultType di table testdeftech.
    3. RefType di table testdeftech.

1 Desember 2025

  1. Result Reporting

3 Desember 2025

  1. Tambahan Value Set untuk ResultType dan RefType
  2. Perubahan Value Set untuk Test Type (Vset 27) dari sebelumnya 12 items menjadi 5 items

4 Desember 2025

  1. Tambahan fields pada table discipline: Parent dan SiteID

16 Desember 2025

  1. Hapus SiteID dari testdeftech, testdefcal dan testdefgrp

19 Desember 2025

  1. Menggabungkan refnum dan refthold menjadi refnum.
  2. Mengganti opsi pada testdeftech.RefType dan testdefcal.RefType dari sebelumnya Range, Threshold, Value Set, Text. menjadi Numeric dan Text.
  3. nilai rujukan fully enumerated.

24 Desember 2025

  1. Menggabungkan refvset dan reftxt menjadi reftxt
  2. update Value Set

26 Desember 2025

  1. Update Business Rules untuk reftxt
  2. API contract untuk testdefsite

5 Januari 2026

  1. tambahan field external ID pada tables: Account, Site, Contact, ContactDetail, ContactTraining.

14 Januari 2026

  1. Memindahkan DisciplineID, DepartmentID, ResultType, RefType, Unit1, Factor, Unit2 dan Decimal dari testdeftech dan testdefcal ke testdefsite.
  2. Memindahkan fields Vset, ReqQty, ReqQtyUnit, CollReq, Method, ExpectedTAT dari testdeftech ke testdefsite.

4 Februari 2026

  1. Tambahan CLQMS – Definisi Aktor

# Distribusi | | | | | --- | --- | --- | | Asli | | : | | Kopi | No. 1 | : | | | No. 2 | : | | | No. 3 | : | | | No. 4 | : | **PERSETUJUAN** Yang bertanda tangan di bawah ini menyatakan telah membaca dan menyetujui isi dokumen ini. | | | | | --- | --- | --- | | Alam Dari Hendarto | | Irham Faid Faiztyan | | _Technical Support Supervisor for IT Solution_ | | _Technical Support Officer for IT Solution
_ | | Tanggal: 30 Agustus 2023 | | Tanggal: 30 Agustus 2023 | Mengetahui, Adhitya Pranata Putra \___\___\___\___\___\___\___\___\____ _Technical Support Manager_ 1. (Albetkova & Barteluk, 2011) [↑](#footnote-ref-1) 2. https://en.wikipedia.org/wiki/Data_integrity [↑](#footnote-ref-2) 3. karena juga berarti _area_, maka dimungkinkan _specimen reception_ di _workstation_. [↑](#footnote-ref-3) 4. Location yang dimaksud adalah lokasi/ruang-ruang dalam site (hospital, lab). [↑](#footnote-ref-4) 5. Self-reference dalam table yang sama melalui link _parent_. [↑](#footnote-ref-5) 6. _Informed consent_ (persetujuan berpengetahuan) adalah persetujuan yang diberikan oleh pasien atau keluarganya setelah mendapatkan informasi lengkap dan dipahami mengenai tindakan medis yang akan dilakukan. Persetujuan ini merupakan dasar penting dalam praktik kedokteran, memastikan pasien memahami risiko dan manfaat sebelum memutuskan untuk menerima tindakan [↑](#footnote-ref-6) 7. biasanya diwujudkan dalam bentuk _worklist_. [↑](#footnote-ref-7) 8. data tambahan dimasukkan sebagai hasil test jenis parameter sehingga juga bisa ditambahkan/_update_ saat mengisi hasil. [↑](#footnote-ref-8) 9. _clotting time_ sangat berpengaruh terhadap hasil akhir [↑](#footnote-ref-9) 10. Kode instrument ini specific dan terikat dengan Lokasi (site) sehingga sample bisa ditelusuri di site mana (LabRujukan) [↑](#footnote-ref-10) 11. Jika instrument punya kemampuan untuk scan label dan update ke LIS, maka fungsi ini bisa dijalankan. Atau bisa dilakukan manual oleh analis. Instrument TLA kemungkinan bisa mengupdate keberadaan tabung sample secara lebih detail. [↑](#footnote-ref-11) 12. Kode tempat peyimpanan ini specific dan terikat dengan Lokasi (site) sehingga sample bisa ditelusuri di site mana (LabRujukan) [↑](#footnote-ref-12) 13. diperhitungkan dalam _inventory statistic_. [↑](#footnote-ref-13) 14. ditampilkan di layar maupun _reports_. [↑](#footnote-ref-14) 15. test yang merupakan komponennya tetap dihitung dalam _inventory statistic_. [↑](#footnote-ref-15) 16. test yang merupakan komponennya memerlukan _specimen_. [↑](#footnote-ref-16) 17. _Laboratory test panels (also called test batteries) are the aggregation of several laboratory tests, as they are often commissioned in a clinical context and presented as results_. (https://fhir.ch/ig/ch-lab-report/1.0.0/usecases-en.html) [↑](#footnote-ref-17) 18. Lihat table InvCounter dan InvTransaction di prj_crm_origin.docx [↑](#footnote-ref-18) 19. **_services_** adalah program/aplikasi yang berjalan di background, secara otomatis, tanpa _user interaction_, berfungsi untuk komunikasi (network connections), pengelolaan _hardware_, software update, Program/aplikasi tersebut bisa diakses dan dikelola melalui suatu _user interface_ atau _console_. [↑](#footnote-ref-19) 20. https://en.wikipedia.org/wiki/Operational_system [↑](#footnote-ref-20) 21. https://en.wikipedia.org/wiki/Data_warehouse [↑](#footnote-ref-21) 22. https://www.altexsoft.com/blog/non-functional-requirements/ [↑](#footnote-ref-22) 23. Self-reference dalam table yang sama melalui link _parent_. [↑](#footnote-ref-23) 24. **_Discharge_ dilakukan terhadap _visit_** [↑](#footnote-ref-24) 25. **_Discharge_ dilakukan terhadap _visit_** [↑](#footnote-ref-25) 26. prj_crm_origin.docx [↑](#footnote-ref-26) 27. Missal: reagen Proline dengan no. catalog yang sama dipasarkan oleh SUMMIT dan beberapa distributor lain. No catalog item tersebut hanya ada di table ProductCatalog saja. [↑](#footnote-ref-27) 28. DeviceID digunakan untuk mengantisipasi situasi dimana barang diberi piranti GPS [↑](#footnote-ref-28) 29. Menggunakan kabupaten/kota dan propinsi dari CRM. [↑](#footnote-ref-29) 30. PC, Server, mobile devices, semua mesin dimana user berinteraksi [↑](#footnote-ref-30) 31. Kode ADT menggunakan HL7 Standard [↑](#footnote-ref-31) 32. dokter utama [↑](#footnote-ref-32) 33. PC, Server, mobile devices, semua mesin dimana user berinteraksi [↑](#footnote-ref-33) 34. PC, _Server_, _mobile devices_, semua mesin dimana _user_ berinteraksi [↑](#footnote-ref-34) 35. The International Organization for Standardization (ISO) and Clinical and Laboratory Standards Institute (CLSI) define a sample as “one or more parts taken from a system and intended to provide information on the system” (ISO 15189:2007). The term “specimen” is very commonly used in the laboratory to indicate a sample taken from the human body, but the terminology used throughout ISO documents is “primary sample”, or just “sample”. In this handbook, the terms “sample” and “specimen” should be considered interchangeable. It is useful to note that in some of the existing transport regulations, the term “specimen” continues to be used [↑](#footnote-ref-35) 36. https://hl7.org/fhir/R4/valueset-specimen-container-type.html [↑](#footnote-ref-36) 37. gambar disimpan di table ProductCatalogDescription (CRM) – _inventory module_. [↑](#footnote-ref-37) 38. _workbench_ adalah tempat mengerjakan test manual. [↑](#footnote-ref-38) 39. diperlukan _GPS tracker_ atau _mobile device_ dengan kemampuan _GPS_ dan komunikasi dengan _receiver_/_server_ pencatat data. [↑](#footnote-ref-39) 40. Location bisa berupa Lokasi geografis (site), instrument (equipment) ataupun lokasi di dalam lokasi lainnya (counter). [↑](#footnote-ref-40) 41. Kode instrument ini specific dan terikat dengan Lokasi (site) sehingga sample bisa ditelusuri di site mana (LabRujukan) [↑](#footnote-ref-41) 42. Jika instrument punya kemampuan untuk scan label dan update ke LIS, maka fungsi ini bisa dijalankan. Atau bisa dilakukan manual oleh analis. Instrument TLA kemungkinan bisa mengupdate keberadaan tabung sample secara lebih detail. [↑](#footnote-ref-42) 43. Kode tempat peyimpanan ini specific dan terikat dengan Lokasi (site) sehingga sample bisa ditelusuri di site mana (LabRujukan) [↑](#footnote-ref-43) 44. PC, Server, mobile devices, semua mesin dimana user berinteraksi [↑](#footnote-ref-44) 45. PC, Server, mobile devices, semua mesin dimana user berinteraksi [↑](#footnote-ref-45) 46. alternatif: CQL, FHIRPath, SQL [↑](#footnote-ref-46) 47. Reagen atau bahan habis pakai yang diperlukan bisa saja lebih dari satu item. [↑](#footnote-ref-47) 48. External QC (EQC) dikelompokkan berdasarkan instrument, method. Field method diletakkan per site untuk fleksibilitas. [↑](#footnote-ref-48) 49. _Real test_: test yang menggunakan reagensia/bahan habis pakai, diproduksi di instrument/manual. [↑](#footnote-ref-49) 50. External QC (EQC) dikelompokkan berdasarkan instrument, method. Field method diletakkan per site untuk fleksibilitas. [↑](#footnote-ref-51) 51. PC, Server, mobile devices, semua mesin dimana user berinteraksi [↑](#footnote-ref-52) 52. https://en.wikipedia.org/wiki/Risk_factor#General_determinants [↑](#footnote-ref-53) 53. Biasanya panjang, untuk pemeriksaan hormonal [↑](#footnote-ref-54) 54. _Physiological State_ seperti _pregnancy_, _menstrual cycle_. [↑](#footnote-ref-56) 55. Misalnya: _gestational age_ (_preterm_, _term_, _post term_), _ethnicity_. _Preterm_ disebut juga _premature_. [↑](#footnote-ref-57) 56. _comply_ dengan ISO 15189/13485 – _traceable_, _explicit rules_. [↑](#footnote-ref-58) 57. kalua bis acari alternatif istilah lain [↑](#footnote-ref-59) 58. _Physiological State_ seperti _pregnancy_, _menstrual cycle_. [↑](#footnote-ref-60) 59. Misalnya: _gestational age_ (_preterm_, _term_, _post term_), _ethnicity_. _Preterm_ disebut juga _premature_. [↑](#footnote-ref-61) 60. _comply_ dengan ISO 15189/13485 – _traceable_, _explicit rules_. [↑](#footnote-ref-62) 61. Value Set tidak digunakan untuk menyimpan definisi object. Penggunaan value set yaitu: _value set record_, digunakan oleh test. Misalnya value set untuk hasil test HbsAg Adalah “reactive”, “grayzone” atau “non-reactive” _value set field_, digunakan oleh field dari berbagai tables. Misalnya pilihan untuk specimen status adalah: “collected”, “receive/arrive”, “aliquot”, “transport”, “stored”, “expire”, “reject”, “destroyed” [↑](#footnote-ref-63) 62. user-defined value set bisa terdiri dari beberapa category, misalnya untuk hasil, _user roles_, jenis dokumen dll. [↑](#footnote-ref-64) 63. Pada TMS series, satuannya adalah OD (Optical Density) [↑](#footnote-ref-65) 64. Pada 50i, dihitung dari ITEMPARA.STD1 dibagi dengan (Calib.STD_1OD-Calib.BLK_OD) [↑](#footnote-ref-66) 65. Jika _control level_ tidak dalam satu set (berbeda no. catalog) maka setiap level perlu didefinisikan dengan no. catalog-nya masing-masing di ProductCatalog dan productcatalogext tables. [↑](#footnote-ref-67) 66. Pada TMS series, satuannya adalah OD (Optical Density) [↑](#footnote-ref-68) 67. Bertujuan menghitung jumlah test keseluruhan yang diproduksi instrument [↑](#footnote-ref-69) 68. Menyimpan data dari instrument apa adanya penting, untuk memudahkan penelusuran. Database CLQMS dipandang sebagai _data warehouse_ dari semua instrument. [↑](#footnote-ref-71) 69. diperlukan _GPS tracker_ atau _mobile device_ dengan kemampuan _GPS_ dan komunikasi dengan _receiver_/_server_ pencatat data. [↑](#footnote-ref-72) 70. **_services_** adalah program/aplikasi yang berjalan di background, secara otomatis, tanpa _user interaction_, berfungsi untuk komunikasi (network connections), pengelolaan _hardware_, software update, Program/aplikasi tersebut bisa diakses dan dikelola melalui suatu _user interface_ atau _console_. [↑](#footnote-ref-73) 71. \+ 300 instruments TMS series dan bisa bertambah dengan instrument jenis lain. Misalnya Mindray. [↑](#footnote-ref-74) 72. Dengan demikian bisa disabled-enabled menggunakan scheduler [↑](#footnote-ref-75) 73. Aliquoting is dividing a sample into smaller, representative portions, while decanting is separating a liquid from a solid or another liquid through pouring. Aliquoting focuses on creating smaller aliquots for storage or analysis, while decanting aims to separate a mixture into its components [↑](#footnote-ref-76) 74. https://en.wikipedia.org/wiki/ISO_3166-1 [↑](#footnote-ref-77) 75. https://build.fhir.org/ig/hl7-eu/laboratory/ValueSet-lab-specimenAdditive-eu-lab.html [↑](#footnote-ref-78) 76. terdiri dari _Profile, Functional Procedure, Superset_ [↑](#footnote-ref-79)