Atvirasis kodas mums reiškia: dalytis žiniomis ir sprendimais
Mes kuriame programinę įrangą ne tik savo poreikiams – norime bendruomenei pateikti sprendimus, kurie gali padėti ir kitiems „Odoo“ naudotojams.
Dėl šios priežasties savo banko importo modulius, skirtus „Odoo 19 Community“, paskelbėme kaip atvirojo kodo projektą.
Visas projektas nemokamai prieinamas „GitHub“ platformoje:
Odoo 19 Bank Statement Import „GitHub“ platformoje
Mūsų tikslas labai paprastas:
Sukurti veikiantį ir kuo paprastesnį būdą importuoti banko išrašus į „Odoo 19 Community“ – be mokamo plėtinio.
Kodėl apskritai savas projektas?
„Odoo“ iš esmės turi plačias buhalterijos ir banko operacijų apdorojimo galimybes. Tačiau importuojant banko išrašus lemiamą reikšmę turi tai, kokius formatus pateikia konkretus bankas.
Praktikoje sutinkami, be kita ko, tokie formatai kaip:
- CAMT.053
- CAMT.054
- OFX
- SWIFT MT940
Ne visi šie formatai vienodai prieinami kiekvienoje Odoo versijoje.
Ypač pereidami prie Odoo 19 pastebėjome spragų, kurios gali būti gana svarbios esamoms instaliacijoms.
Todėl, užuot šias problemas sprendę tik savo instaliacijai, nusprendėme sprendimą pateikti viešai ir nemokamai.
Odoo 19 Community – banko išrašų importas
Mūsų saugykla remiasi atitinkamais Odoo 19 skirtais OCA komponentais ir papildo juos funkcijomis, reikalingomis praktiniam naudojimui.
Projekte, be kita ko, yra pagrindinė banko išrašų ir failų importo infrastruktūra bei įvairių banko formatų analizatoriai.
Taip galima apdoroti, pavyzdžiui, šiuos formatus:
| Formatas | Palaikymas |
|---|---|
| CAMT.053 | Taip |
| CAMT.054 | Taip |
| OFX | Taip |
| OFX su ACCTID priskyrimu | Taip |
| SWIFT MT940 | Taip |
Taip projektas apima didelę dalį klasikinių banko išrašų formatų.
OFX palaikymas „Odoo 19“
Ypatingas mūsų projekto bruožas – OFX palaikymas.
OFX buvo prieinamas senesnėse „Odoo“/OCA versijose, tačiau buvo pašalintas iš OCA 19.0 šakos. Mūsų projektas šią funkciją „Odoo 19“ sugrąžina kartu su kitais importo moduliais.
Tai ypač įdomu įmonėms, kurių bankas ir toliau siūlo OFX failus elektroniniam sąskaitos išrašui.
Mes nenorėjome tiesiog sukurti visiškai naujo, izoliuoto sprendimo.
Vietoje to toliau naudojome esamą atvirojo kodo pagrindą ir atitinkamai jį sukomplektavome „Odoo 19“.
Papildomai: SWIFT MT940
Kita mūsų projekto funkcija – SWIFT MT940 importas.
MT940 yra įsitvirtinęs elektroninių banko išrašų formatas, kuris ypač bankuose ir senesnėse banko integracijose vis dar naudojamas.
Pagal mūsų projekto dokumentaciją, naujausioms „Odoo“ versijoms atitinkamo OCA sprendimo nėra.
Todėl tam sukūrėme savo modulį:
account_statement_import_mt940
Taip MT940 failus galima apdoroti tiesiogiai „Odoo 19“.
Modulinė sandara
Sąmoningai nenorėjome kurti monolitinio plėtinio.
Funkcijos suskirstytos į atskirus „Odoo“ modulius:
- account_statement_base
- account_statement_import_base
- account_statement_import_file
- account_statement_import_camt
- account_statement_import_camt54
- account_statement_import_ofx
- account_statement_import_ofx_by_acctid
- account_statement_import_mt940
Taip naudotojai gali įdiegti būtent tuos komponentus, kurių jiems iš tikrųjų reikia.
Tai atitinka ir atvirojo kodo idėją: sprendimas neturi tapti nereikalingai sudėtingas vien todėl, kad atskiri naudotojai turi skirtingų reikalavimų.
Nemokama „Odoo Community“
Galbūt svarbiausia:
Programinė įranga prieinama nemokamai.
Savo sukurtus plėtinius pateikiame „Odoo Community“.
Už mūsų plėtinių naudojimą licencijos mokesčio nėra.
Šaltinio kodas viešai prieinamas „GitHub“ platformoje, jį galima peržiūrėti, naudoti, pritaikyti ir toliau plėtoti.
Projektas platinamas pagal AGPL-3 licenciją, atitinkančią naudojamą OCA pagrindą.
Kodėl tai darome?
Atvirasis kodas ilgainiui veikia tik tada, kai ne visi tik ima, bet ir šį tą grąžina.
„Odoo Community Association“ (OCA) laikosi būtent šios idėjos ir kaip atvirąjį kodą pateikia gausybę „Odoo“ plėtinių. Ir banko išrašų importo srityje yra gausus bendruomenės modulių rinkinys.
Norime prisidėti savo dalimi.
Patys gauname naudos iš atvirojo kodo projektų.
Todėl ir mes šį tą grąžiname.
Atvirojo kodo kūrinys nebūtinai turi būti didžiulė sistema ar visiškai nauja ERP sistema.
Kartais pakanka nedidelio plėtinio, išsprendžiančio konkrečią problemą.
Jei šis sprendimas vėliau sutaupys darbo dešimčiai, šimtui ar tūkstančiui kitų „Odoo“ naudotojų, kūrimas jau atsipirko.
„Odoo Community“ – ne tik mūsų pačių diegimui
Kuriant mums buvo svarbu modulių neprisiderinti vien prie savo aplinkos.
Norime, kad saugykla būtų įdomi ir kitiems „Odoo 19 Community“ diegimams.
Todėl moduliai kartu patalpinti viešai prieinamoje saugykloje ir gali būti naudojami nepriklausomai nuo mūsų pačių „Odoo“ diegimo.
Žinoma, priklausomai nuo eksporto formato bankas gali turėti skirtingų ypatumų. Todėl džiaugiamės ir bendruomenės atsiliepimais, pranešimais apie klaidas bei patobulinimais.
Atvirasis kodas gyvuoja dėl dalyvavimo
Projektas aiškiai nėra sumanytas kaip baigtas kūrinys.
Jei kas nors suranda klaidą, turi papildomą naudojimo atvejį ar nori prisidėti patobulinimu, jis gali tiesiogiai dalyvauti projekte.
Tai vienas iš didžiųjų atvirojo kodo privalumų:
Sprendimas neturi likti pas pirminį kūrėją.
Naudotojas gali tapti kūrėju.
Kūrėjas gali prisidėti patobulinimu.
O šis patobulinimas vėliau vėl tampa prieinamas visiems kitiems.
Diegimas ir šaltinio kodas
Visas šaltinio kodas, modulių struktūra ir diegimo nurodymai pateikti „GitHub“ platformoje:
GitHub – Odoo 19 Bank Statement Import
OFX ir MT940 importui papildomai reikalingos atitinkamos Python bibliotekos. Konkrečios priklausomybės taip pat aprašytos saugykloje.
Mūsų indėlis į „Odoo Community“
Šiuo projektu norime padaryti nedidelį gestą:
Programinė įranga nebūtinai turi būti parduodama, kad jos kūrimas turėtų vertę.
Kartais didžiausia nauda ta, kad sprendimas laisvai prieinamas ir juo gali naudotis bei jį toliau plėtoti kuo daugiau žmonių.
Programinę įrangą pirmiausia kuriame todėl, kad patys reikalingas sprendimas.
Jei vėliau iš to atsiranda naudingas plėtinys kitiems Odoo naudotojams, mielai jį perduosime bendruomenei.
Būtent todėl paskelbėme Odoo 19 Bank Statement Import Module.
Nemokamai. Atvirasis kodas. Odoo bendruomenei.
Projektas GitHub
Į GitHub projektą: Odoo 19 Bank Statement Import
Džiaugiamės atsiliepimais, Issues, pasiūlymais dėl patobulinimų ir, žinoma, bendruomenės indėliu.
Atvirasis kodas veikia geriausiai, kai dirbame kartu.