Számviteli lokalizáció

Figyelem

This tutorial requires knowledge about how to build a module in Odoo (see Server framework 101).

Telepítési eljárás

On installing the account module, the localization module corresponding to the country code of the company is installed automatically. In case of no country code set or no localization module found, the l10n_generic_coa (US) localization module is installed by default. Check post init hook for details.

For example, l10n_ch will be installed if the company has Switzerland as country.

Lokalizációs modul készítése

Egy alapvető l10n_XX modul struktúrája a következő __manifest__.py fájllal írható le:

{
    "name": "COUNTRY - Accounting",
    "version": "1.0.0",
    "category": "Accounting/Localizations/Account Charts",
    "license": "LGPL-3",
    "depends": [
        "account",
    ],
    "data": [
        "data/other_data.xml",
        "views/xxxmodel_views.xml",
    ],
    "demo": [
        "demo/demo_company.xml",
    ]
}

A munkafája így kell kinézzen

l10n_xx
├── data
│   ├── template
│   │   ├── account.account-xx.csv
│   │   ├── account.group-xx.csv
│   │   └── account.tax.group-xx.csv
│   └── other_data.xml
├── views
│   └── xxxmodel_views.xml
├── demo
│   └── demo_company.xml
├── models
│   ├── template_xx.py
│   └── __init__.py
├── __init__.py
└── __manifest__.py

Az első fájlban, models/template_xx.py, beállítjuk a számlatükör nevét néhány alapvető mezővel együtt.

Számlatükör

Számlacímkék

A címkék egy módja a számlák rendezésének. Például, képzelje el, hogy szeretne létrehozni egy pénzügyi jelentést több sorral, de nincs módja megtalálni egy szabályt a számlák code szerinti szétosztására. A megoldás a címkék használata, minden jelentéssorhoz egy, hogy a számlákat az Ön igényei szerint szűrje.

Helyezze a címkéket a data/account_account_tag_data.xml fájlba.

Számlák

Nyilvánvaló, hogy a Számlatükör nem létezhet Számlák nélkül. Meg kell adnia őket a data/account.account.template.csv fájlban.

Figyelem

  • Kerülje az asset_cash account_type használatát! Valójában a bank- és készpénzszámlák közvetlenül a lokalizációs modul telepítésekor jönnek létre, majd egy account.journal-hoz kapcsolódnak.

  • Csak egy fizetendő/követelhető típusú számla elegendő az általános esethez. Azonban szükséges meghatározni egy PoS követelhető számlát is. (kapcsolódik a CoA-hoz)

  • Ne hozzon létre túl sok számlát: 200-300 elegendő. De leginkább arra törekszünk, hogy megtaláljuk azt a jó egyensúlyt, ahol a CoA minimális adaptálást igényel a legtöbb vállalat számára később.

Számlacsoportok

A számlacsoportok lehetővé teszik a számlatükör hierarchikus szerkezetének leírását. A szűrőt aktiválni kell a jelentésben, majd amikor kibontja a naplóbejegyzéseket, megjeleníti a számla szülőit.

Ez a start/end előtaggal működik, így minden számla, amelynek a kódja a start és end között kezdődik, ezt az account.group-ot kapja szülőcsoportként. Továbbá, a számlacsoportoknak is lehet szülő számlacsoportjuk, hogy kialakítsák a hierarchiát.

Adók

Adók hozzáadásához először meg kell adnia az adócsoportokat. Általában minden adókulcshoz csak egy adócsoportra van szükség, kivéve a 0%-ot, mivel gyakran meg kell különböztetni a mentes, 0%, nem tárgyát képező, … adókat. Ez a modell csak két kötelező mezőt tartalmaz: name és country. Hozza létre a data/template/account.tax.group-xx.csv fájlt, és sorolja fel a csoportokat.

Most már hozzáadhatja az adókat a data/template/account.tax-xx.csv fájlon keresztül. Az első adó, amelyet meghatároz, és amely vásárlás/eladás, az alapértelmezett vásárlási/eladási adó lesz a termékeihez.

Adójelentés

Az adójelentés a Számlázás (account) alkalmazásban van bejelentve, de a jelentés csak akkor érhető el, ha a Könyvelés (account_accountant) telepítve van.

Az előző szakaszban észrevetted az invoice_repartition_line_ids vagy refund_repartition_line_ids mezőket, és valószínűleg semmit sem értettél belőlük. Jó hír: nem vagy egyedül ezzel a megértési nehézséggel. Rossz hír: egy kicsit ki kell találnod. A téma bonyolult. Valóban:

accounting_localization/tax_report.dot
> Graph not rendered because `dot` is not installed

Az egyszerű verzió az, hogy az adósablonban megadod a számla/visszatérítés felosztási sorokban, hogy az adó alapját vagy százalékát melyik jelentéssorban kell jelenteni (a minus/plus_report_line_ids mezőkön keresztül). Ez akkor is világossá válik, amikor ellenőrzöd az adókonfigurációt az Odoo felületén (vagy ellenőrzöd a dokumentációt Adó Referenciák, Adó Felosztási Referenciák).

Tehát, miután megfelelően konfiguráltad az adókat, csak hozzá kell adnod a data/account_tax_report_data.xml fájlt egy rekorddal az account.report számára. Ahhoz, hogy adójelentésként legyen figyelembe véve, meg kell adnod a megfelelő root_report_id-t.

<odoo>
    <record id="tax_report" model="account.report">
        <field name="name">Tax Report</field>
        <field name="root_report_id" ref="account.generic_tax_report"/>
        <field name="country_id" ref="base.XX"/>
    </record>

    ...
</odoo>

… majd a sorainak deklarációja következik, mint account.report.line rekordok.

Adózási pozíciók

Adja meg az adózási pozíciókat a data/template/account.fiscal.position-xx.csv fájlban.

Végső lépések

Végül hozzáadhat egy demó céget, így a lokalizáció könnyen tesztelhető demó módban.

Számviteli jelentések

Accounting reports should be added via a separate module l10n_XX_reports that should go to the enterprise repository.

Az ilyen modul alap __manifest__.py fájlja a következőképpen néz ki:

{
    "name": "COUNTRY - Accounting Reports",
    "category": "Accounting/Localizations/Reporting",
    "version": "1.0.0",
    "license": "OEEL-1",
    "depends": [
        "l10n_XX", "account_reports"
    ],
    "data": [
        "data/balance_sheet.xml",
        "data/profit_and_loss.xml",
    ],
    "auto_install": True,
}

A pénzügyi jelentések funkcionális áttekintése itt található: Jelentéskészítés.

Néhány jó példa:

Itt ellenőrizheti a mezők jelentését:

Ha megadott egy root_report_id-t a jelentéséhez, az most elérhető a változatválasztóban. Ha nem, akkor még hozzá kell adnia egy menüpontot hozzá. Egy alapértelmezett menüpont létrehozható a jelentés űrlap nézetéből a Műveletek ‣ Menüpont létrehozása gombra kattintva. Ezután frissítenie kell az oldalt, hogy lássa. Alternatív megoldásként, ha egy teljesen új jelentéshez szeretne külön szekciót létrehozni a Jelentések menüben, akkor létre kell hoznia egy új ir.ui.menu rekordot (általában a fő l10n_XX modulban) és egy új ir.actions.client-et (általában az új jelentés XML fájljában), amely az account.report-ot hívja az új jelentés azonosítóval. Ezután állítsa be az új menüt parent_id mezőként az akció modellben.