Skip to content

Medco

INACT untuk Medco, versi 3. Salah satu big five. Medco sebelumnya menjalankan INACT v2, dan fork v3 membawa sejarah upgrade itu.

Sekilas

JiraINA28, INACT Medco Upgrade. Clone dari INA27 sering terjadi.
Nilai INACT Instance di INA05Medco. Medco Bangkanai adalah nilai terpisah dan repository terpisah.
Repositorybinari-digital/ina-medco-v3
Twin terenkripsibinari-digital/ina-medco-v3-encrypted
GitLab INARTSinact/inact-medco-v3. Hanya twin terenkripsi yang di-push ke sana, bukan repository plain.
Branch permanen di originmain, staging, development. Hanya development dan main yang deploy.
DatabaseSQL Server
ProduksiServer Linux milik klien, tanpa akses internet. Rilis diunggah sebagai zip.
Stagingtidak ada
Dev (QA)inact-medco-v3-encrypted.bdt.dev dan inact-medco-v3-encrypted-testable.bdt.dev di Lab box
Versi sebelumnyabinari-digital/ina-medco-v2

TODO: versi SQL Server produksi.

Repository dan remote

Berbeda dari instance lain, Medco hanya push twin terenkripsi ke INARTS. Repository plain hanya ada di GitHub. Twin terenkripsi berbeda dari repository plain di dua file: main.php, yang di-encode ionCube, dan setting.php, yang membiarkan display_errors menyala untuk troubleshooting di produksi.

Environment dan deploy

Push keSkripYang terjadi
developmentdeploy/dev.shProducer di Rumah box menyinkronkan plain ke terenkripsi dan push. Consumer berjalan di Lab box, bukan Rumah box, karena QA Medco memakai SQL Server yang hanya bisa dijangkau dari LAN kantor. Consumer menarik kedua served root, ~/www/inact-medco-v3-encrypted dan ~/www/inact-medco-v3-encrypted-testable, lalu menjalankan phinx migrate di masing-masing.
maindeploy/prod.shSinkron main plain ke main terenkripsi, push ke GitHub dan INARTS. Tidak ada consumer, memang disengaja. Server klien tidak punya internet. Produksi dikirim sebagai zip rilis yang dibuat dengan deploy/lib/inact-release.sh dan dipasang manual di lokasi. Migrasi ikut di dalam zip.

Database

DriverSQL Server, DB_CONNECTION=mssql
Database QASQL Server di host DB dev bersama 192.168.1.52, database inact-medco-v3-encrypted dan inact-medco-v3-encrypted-testable, satu per situs QA
Database ujiHost DB dev bersama 192.168.1.52, port 1433, database inact-medco-v3-prod-20260819. Snapshot produksi dari 2026-08-19.

Snapshot ini adalah tempat terbaik untuk memeriksa apakah sebuah bug mengenai data nyata. Database uji master hampir kosong, jadi query yang bergantung pada tabel yang jarang terisi terlihat baik di sana tetapi tetap salah di produksi.

Perbedaan fork ini dari master

Diukur pada 2026-09-05.

File modul yang berbeda93
Modul dengan perubahan terbanyakrouting 16, documents_master 9, documents 9, adms 8, adms_reference 7, member 6, dms_reference 6
Library yang berbedaInactPDO.php, additional_global_variables.inc.php, inweb.lib.php, reference_function.inc.php, tracking_function.inc.php
File top-level yang berbedaauto_logout.php, db_config.php, setting.php
MigrasiTotal 450. 39 hanya di sini, 20 di master belum diambil. Terbaru 2026-07-16.

File yang hanya ada di fork ini

  • modules/dms_reference/business_unit.php
  • modules/dms_reference/code_package_identifier.php
  • modules/dms_reference/file_name_setting.php
  • modules/dms_reference/location.php
  • modules/dms_reference/region.php
  • modules/dms_reference/sdrl_code.php
  • modules/dms_reference/sub_discipline.php
  • modules/dms_reference/vendor_package.php
  • modules/routing/routing_handler_ext_reviewer_download.php
  • modules/routing/routing_handler_ext_reviewer_upload.php
  • modules/routing/routing_handler_ext_reviewer_upload_form.php
  • modules/routing/routing_handler_print_commentsummary.php

Dua salinan backup handler multi-upload juga ada di modules/documents_master/. Keduanya bukan bagian dari fitur.

File di master yang tidak ada di fork ini

  • modules/adms/adms_rev_sort.inc.php
  • modules/adms_reference/adms_reference_import.inc.php

Key inweb_config

Key
Hanya di fork inienable_code_package_identifier, enable_location, enable_ref_business_unit, enable_region, enable_sdrl_code, enable_vendor_package
Tidak ada di sinienable_last_login_wins, enable_routing_overdue_notif_digest

Dari v2 ke v3

Medco menjalankan INACT v2 (binari-digital/ina-medco-v2) sebelum fork v3. v3 bukan penulisan ulang: setiap modul v2 masih ada dengan nama folder yang sama, jadi langkah-langkah pengelolaan dokumen sama bagi pengguna. Yang berubah adalah kerangka di sekitar modul dan sekumpulan modul baru di atasnya. Dirangkum dari halaman perbandingan yang dulu ada di repository v3, diverifikasi Juni 2026.

Di balik layar

Dimensiv2v3
Dependensitidak ada, library di-vendorComposer, autoloading PSR-4, src/
Config environmenthard-coded di PHP.env lewat symfony/dotenv plus db_config.php
Akses databasehanya mysql_*, mysqli_*, iw_mysql_query$pdo (InactPDO / PDOLogActivity) berdampingan dengan jalur legacy; helper legacy sekarang melempar exception
Skemasatu file patch SQLmigrasi dan seed phinx di bawah db/; backfill data sekali jalan di bawah migrations/scripts/
Tematemplate per companyclass "flavour" di bawah src/{basic,custom,resindo,minerba}, dipilih key config Feature\PrintDoc\Html
LibraryPHPExcel, FPDFPhpSpreadsheet, TCPDF, HTML2PDF, PHPMailer, illuminate/database, Slim

Bagi pengguna

  • Privilege per project. ts_privileges berbasis grup menjadi ts_privileges_resource berbasis resource group. Lihat Users dan Privilege.
  • Login LDAP, logout otomatis saat idle, tipe action yang lebih rinci (upload, archive, ready_to_return), privilege dashboard.
  • Menu modular yang dibangun dari registri modul, jadi dua instalasi bisa menampilkan menu berbeda.
  • Modul baru: Draft PO, AP Invoices, Rekom Handak, Vendor Management, Work Order Progress, ADMS, Master Stamp, dan area referensi DMS / Procurement / Cost Control / ADMS.
  • Auto Folder Creation menggantikan tiga tata letak library project_east_java yang tetap. Lihat Auto Folder Creation.
  • Upload kehilangan dialog opsinya dan watermark SPRD / VOID; dua bug lama tetap ada. Medco kemudian menghidupkan dialognya lagi dengan Force Upload saja. Lihat Upload.
  • Upload Transmittal gagal pada baris yang tidak cocok dan tidak lagi mengimpor remarks. Return dijaga enable_return_on_audit dan punya tampilan Ready to Return. Clear Return Status kehilangan tombolnya; bug-nya tidak pernah diperbaiki.
  • Tidak ada yang dihapus selain tombol itu. _proto_202205191643_ adalah sisa kode prototipe, bukan fitur.

Skrip data sekali jalan untuk migrasi v1 ke v3 ada di bawah migrations/scripts/ di repository v3, 63 file. Tidak ada fork lain yang punya folder itu.

Kustomisasi yang sudah didokumentasikan

Belum ada. Halaman fitur datang di fase 3 rencana dokumentasi.

Hal yang perlu diwaspadai

  • staging ada tetapi tidak deploy. Workflow hanya memetakan development dan main. PR yang di-merge ke staging tidak mengubah apa pun di mana pun.
  • Produksi tidak bisa ditarik. Tidak ada apa pun di sisi kita yang menjangkaunya. Perbaikan belum live sampai zip rilis dipasang di lokasi.
  • Aturan SQL Server terasa di sini lebih dulu. LIMIT tidak ada; pakai InactPDO::getLimit() setelah ORDER BY. Identity insert butuh SET IDENTITY_INSERT.