"Odoo" bosanska lokalizacija: Master Data v2 - Refaktoring bankovnih podataka with AI 🤖
English version of this article
Uvod
Banke u Bosni i Hercegovini su regulisane na nivou entiteta. Stoga smo izvršili refaktoring modula l10n_ba i ekstrahovali podatke o bankama u novi modul l10n_ba_fbih_bank_data. Novi modul nije čisti data modul jer sadrži i validacijska pravila.
Faza 1: Analiza i planiranje
Započeli smo analizom postojeće strukture l10n_ba modula:

Faza 2: Kreiranje novog modula
Kreirali smo novi modul l10n_ba_fbih_bank_data sa zavisnošću od l10n_ba:

Commit i push promjena:

Faza 3: Backup baze podataka
Prije deployment-a, napravili smo backup produkcijske baze:


Faza 4: Migracijska skripta
Kreirali smo migracijsku skriptu sa pre_init_hook za postojeće sisteme:

Kako pre_init_hook funkcioniše:

Faza 5: Deployment i sinhronizacija
Osvježavanje symlink-ova za odoo_addons:

Prilagođavanje rsync skripte za module unutar paketa:

Faza 6: Validacija podataka
Provjera BIC kodova u CSV fajlu:

Format bankovnih podataka:

Faza 7: Uspješna migracija
Verifikacija migracije - XML ID-ovi sada pripadaju novom modulu:

Dodavanje menija “Banke FBiH”:

Faza 8: Dodavanje validacijskih pravila
Kreiranje modela za validaciju - res_bank.py i res_partner_bank.py:

Ažuriranje CSV fajla sa bank_code kolonom (BUG!):

Claude AI izgubio context (compact memory):

Faza 9: Dodavanje view-a za banke
Kreiranje XML view-a za prikaz banaka:

Ažuriranje manifesta:

Commit i push promjena:

Faza 10: Upgrade modula na produkciji
Pokretanje upgrade-a na produkcijskom serveru:

Korištenje colmena za deployment (izgubio pamćenje - Claude dozovi se!):

Provjera upgrade skripte:

Faza 11: Testiranje i verifikacija
Verifikacija bank_code polja:

Provjera bankovnih računa:

Faza 12: Rješavanje problema sa referencama
Pronalaženje izgubljenih referenci na banke:

Ažuriranje bankovnih računa sa ispravnim referencama:

Verifikacija popravki:

Faza 13: Finalni deployment
Pokretanje finalnog upgrade-a:

Provjera verzije modula:

Faza 14: Rezultat migracije
Uspješna migracija - svi zapisi sačuvani:

Provjera bank_code vrijednosti:

Faza 15: Verifikacija u Odoo interfejsu
Provjera modula u Odoo-u:

Lista instaliranih modula:

Faza 16: Dodavanje preostalih banaka
Upgrade sa novim bankama:

Finalna lista banaka sa 3-cifrenim kodovima:

Faza 17: Dodavanje Razvojne banke FBiH
Ažuriranje CSV-a za Razvojnu banku (kod 195):

Kompletna lista banaka sa kodovima:

Finalni rezultat
Meni “Banke FBiH” sa prikazom BIC kodova:

Lista banaka FBiH
| Kod | Banka |
|---|---|
| 101 | Privredna banka Sarajevo |
| 102 | Union banka |
| 132 | NLB Banka |
| 134 | ASA Banka |
| 141 | Bosna Bank International |
| 154 | Intesa Sanpaolo |
| 161 | Raiffeisen Bank |
| 186 | ZiraatBank |
| 194 | ProCredit Bank |
| 195 | Razvojna banka FBiH |
| 199 | Sparkasse Bank |
| 306 | Addiko bank |
| 338 | UniCredit Bank |
Zaključak
Ovaj refaktoring donosi:
- Bolju organizaciju - podaci o bankama su u zasebnom modulu
- Validaciju - 16-cifreni broj računa, 3-cifreni kod banke
- Entitetsku separaciju - spremno za
l10n_ba_rs_bank_datail10n_ba_bd_bank_data - Kompatibilnost unazad - migracija čuva postojeće podatke
GitHub
Napomena
Sadržaj ovog članka je uglavnom generisao Claude AI.
Ernad Husremović bring.out doo Sarajevo hernad@bring.out.ba