Jednorázové doplnění čísla dokladu do zpracovaných období roku 2024 (penzijní připojištění)
Jednorázové doplnění čísla dokladu do zpracovaných období roku 2024 (penzijní připojištění)
Potvrzení zdanitelných příjmů (příspěvky firmy na penzi)
Dokument Potvrzení zdanitelných příjmů byl od roku 2024 změněn, konkrétně došlo k rozšíření Řádku 10 - Příspěvek zaměstnavatele na daňově podporované produkty na stáří, kde se mají zobrazovat příspěvky firmy rozdělené do celkem pěti různých typů fondů (tyto typy se určují v číselníku fondů Penzijní připojištění - číselník fondů - změny 2024/04).
Problematickým je vysvětlení, že se mají načítat pouze příspěvky firmy, které se vážou ke smlouvě uzavřené mezi zaměstnancem a fondem v roce 2024 (nebo výše).
Původní řešení
Původní řešení spočívalo v tom, že se načítají částky ze mzdových položek toho fondu, který má v agendě Penzijní a životní v novém poli Datum uzavření smlouvy vyplněnu hodnotu, a to vyšší (nebo rovnu) 1.1.2024.
Nedostatečnost
Toto řešení se ukázalo v praxi nedostatečným. Potvrzení o zdanitelných příjmech za rok 2024 není vytvořeno správně v případě, že byla ukončena smlouva v roce 2024 a následuje nová smlouva u stejné penzijní společnosti, do potvrzení se načte celá částka za rok 2024, ne pouze částka, která má být, tj. smlouva od 1.1.2024 a výše. (hd 72515, 72433, aj.)
Nový způsob
Nový způsob zjišťování částky příspěvku firmy bere v potaz konkrétní záznam (jeho tzv. "id") v agendě Penzijní a životní.
- Toto "id" je od určitého sestavení aplikace automaticky připisováno ke zpracovanému řádku agendy Zpracování brutto (pichacky.c_dokladu).
- Potvrzení zdanitelných příjmů načítá jen částky ze Zpracování brutto za "id" z Penzijní a životní splňující podmínku (datum uzavření smlouvy >= 1.1.2024).
Jednorázové doplnění
Příkaz doplní k záznamům příspěvku penzijního firmy v agendě Zpracování brutto příznak c_dokladu u mezd od 01/2024. Doplní však jen pro záznamy v agendě Penzijní a životní, které mají vyplněné pole Dat.uzavření sml. dnem větším (nebo rovno) 1.1.2024 a zároveň Datum od a Datum do spadají do zpracovávaného období.
- Příspěvky firmy na penzijní (sestava) - kontrolní sestava (např. kdo má vyplněno pole "datum uzavření smlouvy")
update pichacky set c_dokladu =(select id from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and
(EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum) and month (EVP.dat_od) <= month(pichacky.datum)))
and
(EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum) and month (EVP.dat_do) >= month(pichacky.datum)))
and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01'
and fond in (select id_osoby from osoby_typ where typ = 'pf' and not c_pole2 is null) )
where kod in (select c_pole2 from osoby_typ where typ = 'pf' and not c_pole2 is null)
and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select id from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum) and month (EVP.dat_od) <= month(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum) and month (EVP.dat_do) >= month(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'af' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'af' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select id from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum) and month (EVP.dat_od) <= month(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum) and month (EVP.dat_do) >= month(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'bf' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'bf' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select id from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum) and month (EVP.dat_od) <= month(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum) and month (EVP.dat_do) >= month(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'ef' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'ef' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
Úprava
- Příkaz je koncipován pro DB platformu MS SQL. Pro jiné jej bude potřeba upravit (např. změnit formát položky datum, najít ekvivalent funkcí "year", "month").
- (hd73090)
Pro rok 2025 a výše
update pichacky set c_dokladu =(select min(id) from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'pf' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'pf' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select min(id) from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'af' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'af' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select min(id) from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'bf' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'bf' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';
update pichacky set c_dokladu =(select min(id) from ev_p_prisp EVP where EVP.os_cislo = pichacky.os_cislo and (EVP.dat_od is null or (year(EVP.dat_od) <= year(pichacky.datum))) and (EVP.dat_do is null or (year(EVP.dat_do) >= year(pichacky.datum))) and EVP.datum_uzav_sml is not null and EVP.datum_uzav_sml >= '2024-01-01' and fond in (select id_osoby from osoby_typ where typ = 'ef' and not c_pole2 is null) ) where kod in (select c_pole2 from osoby_typ where typ = 'ef' and not c_pole2 is null) and c_dokladu is null and datum >= '2024-01-01';