Skip to main content

🌍 Global / Region & Policy Module (rg_*)

Modul Global menyimpan konfigurasi region, mata uang, kurs, dan policy yang digunakan lintas modul.

1. Module Purpose

  • Menyimpan master region (negara/wilayah).
  • Menyimpan master currency.
  • Menyimpan exchange rate per tanggal.
  • Menyimpan kebijakan (policy) dan assignment-nya.

2. Tables & Structure


3. Key Fields & Relationships

3.1 Region & Currency

  • rg_region:
    • Fields: code, name, type (country, state, city), parent_region_id (optional self-FK).
  • rg_currency:
    • Fields: code (ISO), name, symbol, is_default.
  • rg_rate:
    • Fields: from_currency, to_currency, rate_date, rate.
    • from_currency, to_currencyrg_currency.code (logical FK).

3.2 Policy & Assignment

  • rg_policy:
    • Fields: code, name, description, category.
  • rg_policy_assign:
    • Fields: policy_id, target_type, target_id, effective_start, effective_end.
    • FK: policy_idrg_policy.id.

4. Business Flows

4.1 Konversi Mata Uang (Konseptual)

  1. Transaksi dicatat dalam currency transaksi (mis. USD).
  2. Laporan konsolidasi membutuhkan currency lain (mis. IDR).
  3. Aplikasi menggunakan rg_rate untuk konversi saat reporting.

4.2 Policy Assignment

  1. Policy dibuat di rg_policy (mis. POLICY_APPROVAL_LIMIT).
  2. Policy di-assign ke target tertentu (company/branch/role) lewat rg_policy_assign.

5. Example Reports (SQL)

Contoh SELECT untuk kebutuhan global config.

5.1 Effective Exchange Rate per Hari

5.2 Policy Aktif per Company