Skip to content

Commit 1ba9a97

Browse files
committed
Fyll automatiskt i belopp vid årets ingång/utgång från SIE
1 parent 6e58e4b commit 1ba9a97

File tree

2 files changed

+204
-14
lines changed

2 files changed

+204
-14
lines changed

src/data/sie/SIE_MAPPINGS.ts

Lines changed: 187 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,187 @@ export const SIE_MAPPINGS: SieMapping[] = [
2828
labelType: null,
2929
},
3030
},
31-
// TODO: Förvaltningsberättelse: förändringar i eget kapital
31+
// Förvaltningsberättelse: förändringar i eget kapital (endast belopp vid årets ingång/utgång)
3232
{
33-
basAccounts: [{ start: 3000, end: 8499 }],
33+
basAccounts: [{ start: 2081, end: 2081 }],
3434
taxonomyItemId: {
3535
rootName:
3636
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
37-
name: "se-gen-base:ResultatEfterFinansiellaPoster",
38-
parentName: "se-gen-base:Flerarsoversikt",
39-
labelType: null,
37+
name: "se-gen-base:Aktiekapital",
38+
parentName: "se-gen-base:ForandringEgetKapitalAktiekapitalAbstract",
39+
labelType: "periodStartLabel",
40+
},
41+
},
42+
{
43+
basAccounts: [{ start: 2082, end: 2082 }],
44+
taxonomyItemId: {
45+
rootName:
46+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
47+
name: "se-gen-base:EjRegistreratAktiekapital",
48+
parentName:
49+
"se-gen-base:ForandringEgetKapitalEjRegistreratAktiekapitalAbstract",
50+
labelType: "periodStartLabel",
51+
},
52+
},
53+
{
54+
basAccounts: [{ start: 2087, end: 2087 }],
55+
taxonomyItemId: {
56+
rootName:
57+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
58+
name: "se-gen-base:OverkursfondBunden",
59+
parentName: "se-gen-base:ForandringEgetKapitalBundenOverkursfondAbstract",
60+
labelType: "periodStartLabel",
61+
},
62+
},
63+
{
64+
basAccounts: [{ start: 2085, end: 2085 }],
65+
taxonomyItemId: {
66+
rootName:
67+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
68+
name: "se-gen-base:Uppskrivningsfond",
69+
parentName: "se-gen-base:ForandringEgetKapitalUppskrivningsfondAbstract",
70+
labelType: "periodStartLabel",
71+
},
72+
},
73+
{
74+
basAccounts: [{ start: 2086, end: 2086 }],
75+
taxonomyItemId: {
76+
rootName:
77+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
78+
name: "se-gen-base:Reservfond",
79+
parentName: "se-gen-base:ForandringEgetKapitalReservfondAbstract",
80+
labelType: "periodStartLabel",
81+
},
82+
},
83+
{
84+
basAccounts: [{ start: 2097, end: 2097 }],
85+
taxonomyItemId: {
86+
rootName:
87+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
88+
name: "se-gen-base:Overkursfond",
89+
parentName: "se-gen-base:ForandringEgetKapitalOverkursfondAbstract",
90+
labelType: "periodStartLabel",
91+
},
92+
},
93+
{
94+
basAccounts: [{ start: 2091, end: 2091 }],
95+
taxonomyItemId: {
96+
rootName:
97+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
98+
name: "se-gen-base:BalanseratResultat",
99+
parentName: "se-gen-base:ForandringEgetKapitalBalanseratResultatAbstract",
100+
labelType: "periodStartLabel",
101+
},
102+
},
103+
{
104+
basAccounts: [{ start: 2099, end: 2099 }],
105+
taxonomyItemId: {
106+
rootName:
107+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
108+
name: "se-gen-base:AretsResultatEgetKapital",
109+
parentName: "se-gen-base:ForandringEgetKapitalAretsResultatAbstract",
110+
labelType: "periodStartLabel",
111+
},
112+
},
113+
{
114+
basAccounts: [{ start: 2000, end: 2099 }],
115+
taxonomyItemId: {
116+
rootName:
117+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
118+
name: "se-gen-base:ForandringEgetKapitalTotalt",
119+
parentName: "se-gen-base:ForandringEgetKapitalTotaltAbstract",
120+
labelType: "periodStartLabel",
121+
},
122+
},
123+
{
124+
basAccounts: [{ start: 2081, end: 2081 }],
125+
taxonomyItemId: {
126+
rootName:
127+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
128+
name: "se-gen-base:Aktiekapital",
129+
parentName: "se-gen-base:ForandringEgetKapitalAktiekapitalAbstract",
130+
labelType: "periodEndLabel",
131+
},
132+
},
133+
{
134+
basAccounts: [{ start: 2082, end: 2082 }],
135+
taxonomyItemId: {
136+
rootName:
137+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
138+
name: "se-gen-base:EjRegistreratAktiekapital",
139+
parentName:
140+
"se-gen-base:ForandringEgetKapitalEjRegistreratAktiekapitalAbstract",
141+
labelType: "periodEndLabel",
142+
},
143+
},
144+
{
145+
basAccounts: [{ start: 2087, end: 2087 }],
146+
taxonomyItemId: {
147+
rootName:
148+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
149+
name: "se-gen-base:OverkursfondBunden",
150+
parentName: "se-gen-base:ForandringEgetKapitalBundenOverkursfondAbstract",
151+
labelType: "periodEndLabel",
152+
},
153+
},
154+
{
155+
basAccounts: [{ start: 2085, end: 2085 }],
156+
taxonomyItemId: {
157+
rootName:
158+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
159+
name: "se-gen-base:Uppskrivningsfond",
160+
parentName: "se-gen-base:ForandringEgetKapitalUppskrivningsfondAbstract",
161+
labelType: "periodEndLabel",
162+
},
163+
},
164+
{
165+
basAccounts: [{ start: 2086, end: 2086 }],
166+
taxonomyItemId: {
167+
rootName:
168+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
169+
name: "se-gen-base:Reservfond",
170+
parentName: "se-gen-base:ForandringEgetKapitalReservfondAbstract",
171+
labelType: "periodEndLabel",
172+
},
173+
},
174+
{
175+
basAccounts: [{ start: 2097, end: 2097 }],
176+
taxonomyItemId: {
177+
rootName:
178+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
179+
name: "se-gen-base:Overkursfond",
180+
parentName: "se-gen-base:ForandringEgetKapitalOverkursfondAbstract",
181+
labelType: "periodEndLabel",
182+
},
183+
},
184+
{
185+
basAccounts: [{ start: 2091, end: 2091 }],
186+
taxonomyItemId: {
187+
rootName:
188+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
189+
name: "se-gen-base:BalanseratResultat",
190+
parentName: "se-gen-base:ForandringEgetKapitalBalanseratResultatAbstract",
191+
labelType: "periodEndLabel",
192+
},
193+
},
194+
{
195+
basAccounts: [{ start: 2099, end: 2099 }],
196+
taxonomyItemId: {
197+
rootName:
198+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
199+
name: "se-gen-base:AretsResultatEgetKapital",
200+
parentName: "se-gen-base:ForandringEgetKapitalAretsResultatAbstract",
201+
labelType: "periodEndLabel",
202+
},
203+
},
204+
{
205+
basAccounts: [{ start: 2000, end: 2099 }],
206+
taxonomyItemId: {
207+
rootName:
208+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
209+
name: "se-gen-base:ForandringEgetKapitalTotalt",
210+
parentName: "se-gen-base:ForandringEgetKapitalTotaltAbstract",
211+
labelType: "periodEndLabel",
40212
},
41213
},
42214
// Förvaltningsberättelse: resultatdisposition
@@ -80,6 +252,16 @@ export const SIE_MAPPINGS: SieMapping[] = [
80252
labelType: "terseLabel",
81253
},
82254
},
255+
{
256+
basAccounts: [{ start: 2090, end: 2099 }],
257+
taxonomyItemId: {
258+
rootName:
259+
"http://www.taxonomier.se/se/fr/gaap/k2/role/form/forvaltningsberattelse",
260+
name: "se-gen-base:ForslagDisposition",
261+
parentName: "se-gen-base:Resultatdisposition",
262+
labelType: "totalLabel",
263+
},
264+
},
83265
// Resultaträkning
84266
{
85267
basAccounts: [{ start: 3000, end: 3799 }],

src/util/sieUtils.ts

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -105,22 +105,30 @@ export async function mapSieFileIntoArsredovisning(
105105
.add(
106106
valueToAdd.mul(
107107
taxonomyItem.properties.balance === "credit" &&
108-
basAccount !== "8999"
108+
basAccount !== "8999" // Specialare för årets resultat
109109
? -1
110110
: 1,
111111
),
112112
)
113113
.toString();
114114
}
115115

116-
belopprad.beloppNuvarandeAr = getNewValue(
117-
belopprad.beloppNuvarandeAr,
118-
value.nuvarandeAr,
119-
);
120-
belopprad.beloppTidigareAr[0] = getNewValue(
121-
belopprad.beloppTidigareAr[0],
122-
value.foregaendeAr,
123-
);
116+
if (mapping.taxonomyItemId.labelType === "periodStartLabel") {
117+
// Balans vid räkenskapets ingång
118+
belopprad.beloppNuvarandeAr = getNewValue(
119+
belopprad.beloppNuvarandeAr,
120+
value.foregaendeAr,
121+
);
122+
} else {
123+
belopprad.beloppNuvarandeAr = getNewValue(
124+
belopprad.beloppNuvarandeAr,
125+
value.nuvarandeAr,
126+
);
127+
belopprad.beloppTidigareAr[0] = getNewValue(
128+
belopprad.beloppTidigareAr[0],
129+
value.foregaendeAr,
130+
);
131+
}
124132
}
125133
}
126134
}

0 commit comments

Comments
 (0)