Tinkintos ataskaitos¶
Odoo turi galingą ir lengvai naudojamą ataskaitų teikimo sistemą. Variklis leidžia kurti naujas ataskaitas, tokias kaip mokesčių ataskaitos, balanso ataskaitos ir pajamų ataskaitos su konkrečiomis grupėmis ir išdėstymais.
Svarbu
Aktyvuokite kūrėjo režimą, kad pasiektumėte apskaitos ataskaitų kūrimo sąsają.
Norėdami sukurti naują ataskaitą, eikite į: pagrindinę ataskaitą, arba variantą.
. Čia galite sukurti arbaŠaknų ataskaitos¶
Šakninės ataskaitos gali būti laikomos bendromis, neutraliomis apskaitos ataskaitomis. Jos yra modeliai, ant kurių kuriamos vietinės apskaitos versijos. Jei ataskaita neturi šakninės ataskaitos, ji laikoma šaknine ataskaita pačiu savimi.
Example
Mokesčių ataskaita Belgijai ir JAV būtų pagrįsta ta pačia bendra versija, pritaikant ją pagal jų vietinius reglamentus.
Kuriant naują pagrindinę ataskaitą, reikia sukurti meniu elementą jai. Tuo tikslu atidarykite ataskaitą ir tada tame pačiame ataskaitos puslapyje spustelėkite
. Atnaujinkite puslapį; ataskaita dabar pasiekiama per .Pastaba
Atvejai, kai reikia sukurti naują pagrindinę ataskaitą, yra reti, pavyzdžiui, kai šalies mokesčių institucijos reikalauja naujo ir konkretaus tipo ataskaitos.
Variantai¶
Variantai yra šalims būdingos pagrindinių ataskaitų versijos, todėl visada nurodo pagrindinę ataskaitą. Norėdami sukurti variantą, pasirinkite bendrą (pagrindinę) ataskaitą laukelyje Pagrindinė ataskaita, kai kuriate naują ataskaitą.
Kai pagrindinė ataskaita atidaroma iš vieno iš apskaitos programėlės pagrindinių meniu, visi jos variantai rodomi varianto pasirinkimo meniu dešiniajame viršutiniame kampe.
Example
Šiame paveikslėlyje PVM ataskaita (BE) yra šaknies Bendra mokesčių ataskaita variantas.
Linijos¶
Sukūrę ataskaitą (tiek šaknį, tiek variantą), turite užpildyti ją eilutėmis. Galite sukurti naują eilutę spustelėję Pridėti eilutę, arba modifikuoti esamą eilutę spustelėję ją. Visos eilutės reikalauja Pavadinimo, ir gali turėti pasirenkamą papildomą Kodaą (pagal jūsų pasirinkimą), jei norite naudoti jų vertę formulėse.
I understand. Prašau duoti man tekstą.¶
Kiekviena eilutė gali turėti vieną ar kelias išraiškas. Išraiškos gali būti laikomos subkintamaisiais, reikalingais ataskaitos eilutei. Norėdami sukurti išraišką, spustelėkite Pridėti eilutę viduje ataskaitos eilutės.
Kuriant išraišką, turite priskirti :guilabel: etiketę
, kuri bus naudojama tai išraiškai nurodyti. Todėl ji turi būti unikali tarp kiekvienos eilutės išraiškų. Taip pat turi būti nurodyti :guilabel: Skaičiavimo Variklis
ir :guilabel: Formulė
. Variklis apibrėžia, kaip bus interpretuojamos jūsų formulės ir papildomos formulės. Jei reikia, galite maišyti išraiškas, naudojant skirtingus skaičiavimo variklius toje pačioje eilutėje.
Pastaba
Priklausomai nuo variklio, subformulės taip pat gali būti būtinos.
‚Odoo Domain‘ variklis¶
Šio variklio pagalba formulė interpretuojama kaip Odoo domenas nukreiptas į account.move.line
objektus.
Subformulė leidžia nustatyti, kaip domeną atitinkančios perkėlimo linijos naudojamos išraiškos vertei apskaičiuoti:
- Suma
Rezultatas yra visų suderintų judėjimo eilučių likučių suma.
- sum_if_pos
Rezultatas yra visų suderintų operacijų likučių suma, jei ši suma yra teigiama. Priešingu atveju rezultatas yra
0
.sudėti_jei_neigiamas
Rezultatas yra visų suderintų judėjimo eilučių balansų suma, jei ši suma yra neigiama. Priešingu atveju, ji lygi
0
.suskaičiuoti_eilutes
Rezultatas yra šios išraiškos sub-eilučių skaičius. Jei pagrindinė eilutė turi grupavimo reikšmę, tai atitiks skaičių unikalių grupavimo raktų atitinkančiose perkėlimo eilutėse. Kitu atveju, tai bus atitinkančių perkėlimo eilučių skaičius.
Taip pat galite uždėti -
ženklą subformulės pradžioje, kad pakeistumėte rezultato ženklą.
‚Apskritųjų kitų formulių‘ variklis¶
Naudokite šį mechanizmą, kai reikia atlikti aritmetines operacijas su kitoms išraiškoms gautomis sumomis. Formulės čia sudaromos iš nuorodų į išraiškas, atskirtas vienu iš keturių pagrindinių aritmetinių operatorių (sudėtis +
, atimtis -
, dalyba /
, ir daugyba *
). Norėdami nurodyti išraišką, įrašykite jos pagrindinės eilutės kodo po taško .
ir išraiškos etiketę (pvz., code.label).
Kontrformulės gali būti viena iš šių:
jei_viršija(CUR(suma))
Aritmetinės išraiškos vertė bus grąžinta tik tada, jei ji bus didesnė nei nurodyta riba. Kitu atveju rezultatas bus
0
.jei_žemiau(DABAR(suma))
Aritmetinės išraiškos vertė bus grąžinta tik tuo atveju, jei ji yra mažesnė už pateiktą ribą. Kitu atveju rezultatas bus
0
.jei_tarp(CUR1(suma1), CUR2(suma2))
Aritmetinės išraiškos vertė bus grąžinta tik tuo atveju, jei ji griežtai bus tarp nurodytų ribų. Priešingu atveju, ji bus priartinta prie artimiausios ribos.
if_other_expr_above(LINIJOS_KODAS.IŠRAIŠKOS_ŽYMĖ, DABARTINIS(suma))
Aritmetinės išraiškos vertė bus grąžinta tik tuo atveju, jei pateikto eilutės kodo ir išraiškos etiketės reikšmė yra didesnė už nurodytą ribą. Priešingu atveju rezultatas bus
0
.if_other_expr_below(LINE_CODE.EXPRESSION_LABEL, CUR(amount))
Aritmetinės išraiškos reikšmė bus grąžinta tik tuo atveju, jei išraiškos, nurodytos pateiktame kodo eilutės ir išraiškos žymėje, reikšmė bus mažesnė už pateiktą ribą. Priešingu atveju rezultatas bus
0
.
CUR
yra valiutos kodas didžiosiomis raidėmis, o amount
yra suma, išreikšta ta valiuta.
Taip pat galite naudoti cross_report
subformulę, norėdami sutikti išraišką, rastą kitame pranešime.
„Sąskaitų kodų priešdėlio“ variklis¶
Šis variklis naudojamas sumoms, gautoms sąskaitose, sulyginti, naudojant šių sąskaitų kodų priešdėlius kaip kintamuosius aritmetinėse išraiškose.
Example
Example
Taip pat galima ignoruoti tam tikrą pogrupių pasirinkimą.
Example
21 + 10\(101, 102) - 5\(57)
101
, 102
ir 57
.Galite taikyti ‚subfiltravimą‘ kreditams ir debetams naudodami C
ir D
priesagas. Tokiu atveju sąskaita bus laikoma tik tuo atveju, jei jos priešdėlis atitinka, ir jei sandorių eilučių, atliktų šioje sąskaitoje, bendras balansas yra kreditas/debetas.
Example
Sąskaitoje 210001
yra -42 balansai, o sąskaitoje 210002
yra 25 balansai. Formulė 21D
atitinka tik sąskaitą 210002
, todėl grąžina 25. Sąskaita 210001
neatitinka, nes jos balansas yra kreditas.
Priešdėlių išimtys gali būti derinamos su C
ir D
priesagomis.
Example
21D + 10\(101, 102)C - 5\(57)
21
jei jos yra debeto (D
) ir 10
jei jos yra kredito (C
), tačiau ignoruoja priešdėlius 101
, 102
, ir atima balansą tų, kurių sąskaitų kodai prasideda priešdėliu 5
, ignoruojant priešdėlį 57
.Norėdami suderinti raidę „C“ arba „D“ priešdėlyje ir nenaudoti jos kaip priesagos, naudokite tuščią išimtį ()
.
Example
21D
, nepriklausomai nuo jų likučio ženklo.Be sąskaitų įtraukimo naudojant kodų priešdėlius, galite juos taip pat derinti su sąskaitų žymomis. Tai ypač naudinga, pavyzdžiui, jei jūsų šalyje nėra standartizuoto sąskaitų plano, kai tas pats priešdėlis gali būti naudojamas skirtingiems tikslams įvairiose įmonėse.
Example
Jei jūsų nurodoma žyma apibrėžta duomenų faile, vietoj id gali būti naudojama xmlid.
Example
tag(my_module.my_tag)
Taip pat galite naudoti aritmetines išraiškas su žymomis, galbūt jas derinant su prefikso pasirinkimais.
Example
tag(my_module.my_tag) + tag(42) + 10
10
.„C“ ir „D“ priesagos gali būti naudojamos tokiu pačiu būdu su žymomis.
Example
tag(my_module.my_tag)C
Priešdėlio išskyrimas taip pat veikia su žymėmis.
Example
tag(my_module.my_tag)\(10)
10
.‚Išorinės vertės‘ variklis¶
‚Išorinių verčių‘ variklis naudojamas nurodyti rankines ir perkeltas vertes. Šios vertės nėra saugomos naudojant account.move.line
, bet saugomos su account.report.external.value
. Kiekvienas šių objektų tiesiogiai nurodo į išraišką, kurią jie veikia, todėl jų pasirinkimui čia reikia labai mažai ką daryti.
Formulės gali būti viena iš šių:
- Suma
Jei rezultatas turi būti visų išorinių reikšmių laikotarpyje suma.
- naujausias
Jei rezultatas turi būti naujausios išorės vertės reikšmė laikotarpiu.
Be to, subformulės gali būti naudojamos dviem būdais:
suapvalinimas=X
Atskaitant
X
su skaičiumi nurodoma apvalinti sumą iki X dešimtinių.- redaguojamas
Nurodo, kad ši išraiška gali būti redaguojama rankiniu būdu, iššaukdama piktogramos rodymą ataskaitoje, leidžiant vartotojui atlikti šį veiksmą.
Pastaba
Rankinės reikšmės sukuriamos pagal šiuo metu ataskaitoje pasirinktą data_iki
.
Abi potvarkės dalys gali būti maišomos atskiriant jas ;
.
Example
„Individualizuota Python funkcija“ variklis¶
Šis variklis yra priemonė kūrėjams pagal atskirus atvejus įdiegti pasirinktinį išraiškų skaičiavimą. Formulė yra python funkcijos pavadinimas, kurį reikia iškviesti, o potekstis yra raktas, kurį reikia gauti žodyne, kurį grąžina ši funkcija. Naudokite tai tik kurdami savo pasirinktą modulį.
Stulpeliai¶
Ataskaitos gali turėti neribotą skaičių stulpelių rodymui. Kiekvienas stulpelis gauna savo reikšmes iš reiškinių, nurodytų eilutėse. Stulpelio laukas expression_label nurodo tų reiškinių etiketes, kurių reikšmė yra rodoma. Jei eilutėje šiame lauke nėra reiškinio, tuomet šiame stulpelyje niekas nerodoma. Jei reikia kelių stulpelių, turite naudoti skirtingas reiškinio etiketes.
Naudojant apskaitos ataskaitos Parinktys skirtuke esančią laikotarpio palyginimo funkciją, visi stulpeliai kartojami kiekviename laikotarpyje.