Hromadné změny některých služeb na aktivních smlouvách (včetně smluv v režimu automatického prodloužení) se provádí přes funkci Změna služeb smlouvy (Contract Services Change), kterou najdete pomocí hledáčku anebo z příslušného Rolecentra přes menu Změny (Changing).
Změny budou vykonány vždy na změnové kopii smlouvy tak, že pokud se daná smlouva zpracuje, vytvoří se na ní změnová kopie, ta se přepočítá pak se tato změnová kopie zařadí do speciální fronty (Fronta změn smlouvy – Contract Change Queue). Pak uživatel má možnost tyto změnové kopie zkontrolovat, hromadné přenést anebo zmazat – vzhledem k složitosti procesu vykonání změny doporučujeme pouze zkoušeným uživatelům.
Po kliknutí se otevře dialogové okno (report API Contract Services Change (4026638, Report) pro specifikaci vykonané úlohy resp. smluv)
Sekce Možnosti (Options):
-
Typ změny (Change Type)
-
Vybere uživatel manuálně jaký typ úkonu chce vykonat
-
Pole obsahuje následující hodnoty Přidat do fronty, Ukončit, Přecenit, Nahradit, Přidat (Add To Queue, Terminate, Reprice, Replace, Add):
-
přepnutí na Replace odemkne pole New Service Code k editaci
-
přepnutí na Reprice anebo Replace odemkne pole Keep Correction k editaci
-
-
Informativní popis (detailní popis viz dál):
-
Přidat do fronty (Add To Queue)
-
K nalezeném smlouvám vytvoří změnové kopie a ty pouze přidá na list změn smlouvy (Kód listu změn smlouvy vybere uživatel). Uživatel pak může jednotlivé smlouvy změnit ručně.
-
-
Ukončit (Terminate)
-
ukončí danou službu k poslednímu dnu posledního zaúčtovaného období.
-
-
Přecenit (Reprice)
-
vykoná změnu ceny dané služby. Typická situace je, že dojde k změně ceny služby. Uživatel ukončí platnost původní sazby v daném ceníku, založí novou sazbu a spouští tuto úlohu.
-
Původní službu ukončí (jako v případě Ukončit) a novou založí od 1.dne následujícího nezaúčtovaného období.
-
-
Nahradit (Replace)
-
původní službu ukončí a založí novou službu s jiným kódem služby (např. nahrazení MID náhradního vozidla na HIGH)
-
-
Přidat (Add)
-
přidá novou službu do smluv s platností od 1.dne nejbližšího splátkového období.
-
-
-
-
Druh služby (Service Kind)
-
Pole obsahuje následující hodnoty jako např. na smlouvě anebo v službách produktu financování.
-
Hromadnou změnu je možné provést pouze pro druh služby:
-
Náhradní vozidlo (Replacement Car)
-
Silniční daň (Road Tax) - pouze pre CZ / SK
-
Dálniční známka (Highway Ticket)
-
Poplatek/služba (Fee/Service)
-
-
Pokud uživatel vybere jiný druh služby, pak se mu zobrazí chybová hláška:
Změna druhu služby vymaže hodnoty Service Type Code aj Service Code.
-
Kód typu služby (Service Type Code)
-
Vybere uživatel ručně kód typu služby upravované služby, lookup do API Service Type (4026705) s filtrem na Service Kind
-
Změna hodnoty zmaže hodnotu v Service Code
-
Povinný údaj pro Náhradní vozidlo, Dálniční známka a Poplatek/služba (viz. kontroly po spuštění níže)
-
Prázdné a needitovatelné pro Silniční daň
-
-
Kód služby (Service Code)
-
Prázdné a needitovatelné pro Silniční daň
-
Pro ostatní druhy služeb vybere uživatel ručne kód služby upravované služby, lookup do příslušného ceníku:
-
Pro Service Kind=Replacement Car:
-
API Repl. Vehicle Pricelist (4026655)
-
-
Pro Service Kind=Highway Ticket:
-
API Highway Ticket Pricelist (4026653)
-
-
Pro Service Kind=Fee/Service:
-
API Fee and Service Pricelist (4026651)
-
-
-
Příslušní ceník se otevře vždy s filtry:
-
Service Type Code stejný
-
Valid From<=workday systému<=Valid To (může být I prázdní), tzn. je možné vybrat pouze platnou službu
-
-
Povinný údaj (viz. kontroly po spuštění níže)
-
-
Nový kód služby (New Service Code)
-
Editovatelné pouze pro Change Kind=Replace (nahradit) a pokud je Service Kind<>Road Tax
-
Vybere uživatel ručně kód služby nové služby, který má být náhradou za původní službu. Lookup do příslušného ceníku:
-
Pro Service Kind=Replacement Car:
-
API Repl. Vehicle Pricelist (4026655)
-
-
Pro Service Kind=Highway Ticket:
-
API Highway Ticket Pricelist (4026653)
-
-
Pro Service Kind=Fee/Service:
-
API Fee and Service Pricelist (4026651)
-
-
-
Příslušní ceník se otevře vždy s filtry:
-
Service Type Code stejný
-
Valid From<=workdate systému<=Valid To (může být I prázdní), tzn. je možné vybrat pouze platnou službu
-
-
-
Kód listu změn smlouvy (Contr. Change Queue List Code)
-
Editovatelné pro každý Typ změny
-
Vybere uživatel kód fronty změny, do které chce zařadit vytvořené změnové kopie smluv po zpracování dané změny.
-
Lookup do API Contr. Change Queue Batch (4046846)
-
Povinný údaj (viz. kontroly po spuštění níže)
-
Doporučení:
-
Pro každou spuštění úlohy doporučují vytvořit nový list změn smlouvy, tým bude jednoduchší identifikace vykonaných změn danou úlohou
-
-
-
Zachovat korekce (Keep Correction)
-
Defaultně N
-
Editovatelné pouze pri Change Type=Reprice anebo Replace a pokud je Service Kind<>Road Tax
-
Systém v těchto typech změny vytváří novou službu kopírováním tak. Pak se v případě N vymaže případnou korekci na dené službě, v případě Y hodnotu korekce z původní služby zachová.
-
-
Typ změny smlouvy (Contract Change Type)
-
vybere uživatel kód typu změny smlouvy, který bude pak zapsán do Contract Change History (pole Change Code)
-
lookup do API Contract Change Type (4046856)/API Contract Change Types (4046856, List) s filtrem:
-
Object ID wizard (15)=empty (tzn. nedovolíme vybrat změnu která se spouští wizardem)
-
-
-
Contract Change Reason (Důvod změny smlouvy)
-
nové pole, Code 10
-
vybere uživatel kód důvodu změny smlouvy, který bude pak zapsán do Contract Change History (pole Reason Code)
-
lookup do API Contract Change Reason (4046857)/API Contract Change Reasons (4046857, List)
-
-
-
Comment (Poznámka)
-
nové pole, Text 120
-
defaultně prázdné
-
doplní uživatel textovou poznámku, kterou pak úloha zapíše do Contract Change History (pole Comment).
-
Sekce Filtr: Hlavička smlouva o financování (Filter: Financing Contract Header)
V této sekci může uživatel nastavit filtry nad všemi poli hlavičky smlouvy o financování, některé jsou vytaženy defaultně:
-
Kód typu produktu financování (Financing Product Type Code)
-
Pokud prázdné, na danou hodnotu se nefiltruje
-
-
Číslo produktu financování (Financing Product No.)
-
Pokud prázné, na danou hodnotu se nefiltruje
-
-
Číslo zákazníka (Customer No.)
-
Pokud prázdné, na danou hodnotu se nefiltruje
-
-
Číslo (No.)
-
Číslo smlouvy o financování
-
Pokud prázdné, na danou hodnotu se nefiltruje
-
-
Migrovaná smlouva (Migrated Contract)
-
Option
-
Prázdne – na danou hodnotu se nefiltruje
-
No – filtruje se na hodnotu N v smlouvě
-
Yes – filtruje se na hodnotu Y v smlouvě
-
-
Další filtry je možné přidat uživatelsky tlačítkem +Filter.
Obecné zásady filtrování v systému Business Central jsou popsány zde:
Řazení, vyhledávání a filtrování seznamů - Business Central | Microsoft Learn
Úloha má i pevné filtry na hlavičku smlouvy – prochází pouze smlouvy které splnují:
-
Financing with Services=Y
-
Calc.Variant=N
-
Change Copy=N
-
Change Copy Exists=N
-
Status=Active
Uživatel při nastavění uživatelských filtrů musí zohlednit i pevné filtry které jsou v kódu a není možné jich uživatelsky modifikovat – tzn. že pokud uživatel nastavil uživatelský filtr např na Stav=Closed, smlouvy v tomto stavě nebudou zpracovány protože pevný filter Status=Active má přednost před uživatelskými filtry.
Úlohu je možné spustit tlačítkem OK anebo Plán…(Schedule). Pokud je úloha spuštěna tlačítkem OK, běží interaktivně (zobrazuje případné hlášky) pod daným uživatelem. Pokud je úloha spouštěna tlačítkem Schedule…, samotné spouštění se vykonává již přeš frontu úloh (plánovač) – hlášky jsou potlačeny, resp. po spuštění již není potřebné aby daný uživatel byl přihlášen (popis dál).
Úloha po spuštění vykoná následovné kroky:
-
Pokud v request formu byla zadána kombinace Change Type=Replace a Service Kind=Road Tax, zobrazí hlášku “Road Tax cannot be replaced.” a dál nepokračuje. Pokud se spoúští :
-
-
Při spouštění přes Schedule…sa hláška nezobrazí. Systém úlohu zastaví (Status=Error) a zapíše záznam do Error Messages dané úlohy v Job Queue Entries (je možné otevřít přes tlačítko Show Error z Job Queue Entries):
-
-
-
Kontroluje jestli je vyplněn Contr.Change Queue List Code pro všechny Change Type (předtým tato kontrola byla pouze pro Add To Queue):
-
pokud není vyplněn, zobrazí chybovou hlášku a dál nepokračuje (při spustění přes Schedule… je hláška potlačena):
-
Při spouštění přes Schedule…sa hláška nezobrazí. Systém úlohu zastaví (Status=Error) a zapíše záznam do Error Messages dané úlohy v Job Queue Entries (je možné otevřít přes tlačítko Show Error z Job Queue Entries):
-
-
pokud je vyplněn pokračuje dál
-
-
Kontrolu jestli je vyplněn Contract Change Type pro všechny Change Type:
-
Pokud není vyplněn, zobrazí chybovou hlášku a dál nepokračuje: “Contract Change Type must be entered. CZ: Typ změny smlouvy musí být zadán.”
-
Pozn.: Contract Change Code je povinný pro založení změnové kopie
-
-
Při spouštění přes Schedule…sa hláška nezobrazí. Systém úlohu zastaví (Status=Error) a zapíše záznam do Error Messages dané úlohy v Job Queue Entries (je možné otevřít přes tlačítko Show Error z Job Queue Entries).
-
-
Pokud je prázdny Service Type Code a/anebo Service Code, zobrazí chybovou hlášku a dál nepokračuje:
-
Při spouštění přes Schedule…sa hláška nezobrazí. Systém úlohu zastaví (Status=Error) a zapíše záznam do Error Messages dané úlohy v Job Queue Entries (je možné otevřít přes tlačítko Show Error z Job Queue Entries).
-
-
Pokud je Change Type=Replace (Nahradit) kontroluje jestli je vyplněn New Service Code:
-
pokud ne, zobrazí chybovou hlášku a dál nepokračuje: “New Service Code must be entered.”
-
Při spouštění přes Schedule…sa hláška nezobrazí. Systém úlohu zastaví (Status=Error) a zapíše záznam do Error Messages dané úlohy v Job Queue Entries (je možné otevřít přes tlačítko Show Error z Job Queue Entries).
-
-
pokud je, vyplněn pokračuje dál.
-
-
Pokud všechny kontroly jsou bez chyby, úloha se spustí a prochází hlavičky smluv o financování. Hledá smlouvy přes pevné filtry (prochází smlouvy které mají):
-
Financing with Services=Y
-
Calc.Variant=N
-
Change Copy=N
-
Change Copy Exists=N
-
Status=Active
-
i přes filtry, které byly zadány uživatelem v sekci Filter: Financing Contract Header
-
-
Na nalezených smlouvách pak vykoná kontrolu, jestli na smlouvě existuje alikvotní splátka v splátkovém kalendáři smlouvy API Financing Contract Line (4026398):
-
Filtry:
-
Financing Contract No. (1)=stejné
-
Type (6)=Payment
-
Aliqout Payment (810)=Y
-
-
Pokud existuje, vykoná kontrolu je zaúčtována tzn. Posted=Y:
-
pokud není zaúčtována (tzn. smlouva je po aktivaci a před zaúčtováním alikvotu), pak tuto smlouvu nesprocesuje resp. zapíše jí do Contract Change Log:
-
nevytvoří změnovou kopii
-
smlouvu zapíše do Contract Change Log s Recalculation Result=Fail a Error Detail=Posted aliquot payment does not exist. (CZ: Neexistuje zaúčtovaná alikvotní splátka.)
-
pokračuje na další smlouvu.
-
-
pokud je zaúčtována, pokračuje na kontrolu existence RS řádku (viz dál).
-
-
Pokud neexistuje alikvotní splátka (Handover Date=1.den v měsíci), pokračuje na kontrolu řádne zaúčtované splátky.
-
-
Na nalezených smlouvách pak vykoná kontrolu, jestli smlouva má aspoň jednu zaúčtovanou řádnou splátku v splátkovém kalendáři smlouvy API Financing Contract Line (4026398):
-
Financing Contract No. (1)=stejné
-
Type (6)=Payment
-
Down Payment Line (19307)=N
-
Aliqout Payment (810)=N
-
Recalculation Settlement (3045)=N
-
Partial Payment Credit (3055)=N
-
Posted (50)=Y
-
Pokud taká splátka neexistuje (tzn. smlouva je po aktivaci a před zaúčtováním první řádné splátky), pak tuto smlouvu neprocesuje resp. zapíše jí do Contract Change Log:
-
nevytvoří na ní změnovou kopii
-
smlouvu zapíše do Contract Change Log s Recalculation Result=Fail a Error Detail=Posted regular payment does not exist. (CZ: Neexistuje zaúčtovaná řádná splátka.)
-
pokračuje na další smlouvu.
-
-
Pokud taká splátka existuje, pokračuje dál na další kontrolu.
-
-
Na nalezených smlouvách pak vykoná kontrolu, jestli smlouva má nezaúčtovanou splátku RS (Recalculation Settlement) v splátkovém kalendáři smlouvy API Financing Contract Line (4026398):
-
Financing Contract No. (1)=stejné
-
Type (6)=Payment
-
Aliqout Payment (810)=N
-
Recalculation Settlement (3045)=Y
-
Partial Payment Credit (3055)=N
-
Posted (50)=N
-
Pokud taká splátka existuje (tzn. smlouva je po rekalkulaci a před zaúčtováním splátky RS a první splátky po rekalkulace), pak tuto smlouvu neprocesuje resp. zapíše jí do Contrac Change Log:
-
nevytvoří na ní změnovou kopii
-
smlouvu zapíše do Contract Change Log s Recalculation Result=Fail a Error Detail=Unposted recalculation settlement exists. (CZ: Existuje nezaúčtované rekalkulačné vyrovnání.)
-
pokračuje na další smlouvu.
-
-
Pokud taká splátka neexistuje, pokračuje dál.
-
-
Na nalezených smlouvách pak vykoná kontrolu, jestli k dané smlouvě existuje nezaúčtovaná řádná splátka v splátkovém kalendáři smlouvy API Financing Contract Line (4026398):
-
Financing Contract No. (1)=stejné
-
Type (6)=Payment
-
Aliqout Payment (810)=N
-
Recalculation Settlement (3045)=N
-
Partial Payment Credit (3055)=N
-
Posted (50)=N
-
Pokud taká splátka neexistuje (tzn. smlouva je v posledním měsíce řádného trvání a před automatickém prodloužení), pak tuto smlouvu nezprocesuje resp. zapíše jí do Contract Change Log:
-
nevytvoří na něm změnovou kopii
-
smlouvu zapíše do Contract Change Log s Recalculation Result=Fail a Error Detail=Unposted payment does not exist. (CZ: Neexistuje nezaúčtovaná splátka.)
-
pokračuje na další smlouvu.
-
-
Pokud taká splátka existuje, pokračuje dál.
-
-
Pokud je Change Type<>Add , pro nalezenou smlouvu kontroluje jestli existuje služba dle filtrů zadaných užívatelem (pro Service Kind<>Road Tax: Service Kind, Service Type Code, Service Code. Pro Service Kind=Road Tax pouze Service Kind) a zároven:
-
Service Status=Active
-
Valid From<=workday<=Valid To After Extension
-
Pokud taká služba k dané smlouvě neexistuje a v request formu nebyla vybrána Service Kind=Road Tax, zapíše chybu do logu Result=Error, Error Detail=”There is no service ..code…with type …type code...at ..date.” a pokračuje na další smlouvu. Pokud byla vybrána služba Service Kind=Road Ta a taka v smlouvě neexistuje, Error Detail má znění “There is no service with Road Tax at…”.
-
pokud taká služba existuje, systém skontroluje, jestli k dané službě existuje v splátkovém kalendáři dané služby zaúčtovaná služba v měsíci workdate:
-
Service No. = stejné
-
Posted = Y
-
Period From<=workday<=Period To
-
-
pokud taká splátka neexistuje, smlouvu zapíše do logu s chybou Result=Fail, Description=Second modification of the same service in the same month is not posssible. CZ: Druhá modifikace stejné služby v stejném měsíci se nedá vykonat. Dál danou smlouvu nezpracuje, pokračuje na další smlouvu.
-
pokud taká splátka existuje, pokračuje dál.
-
-
-
Pokud je Change Type=Add, pro nalezenou smlouvu kontroluje, jestli existuje služba dle filtrů zadaných užívatelem
-
Service Kind z request form
-
Service Type Code z request form (ne pro Service Kind=Road Tax)
-
Service Code z request form (ne pro Service Kind=Road Tax)
-
Status=Active a
-
Valid From<=workday<Valid To After Extension
-
Pokud taká služba existuje, zapíše chybu do logu s Result=Fail a Error Description=Identified service still exists. CZ: Identifiková služba již existuje.
-
Pokud taká služba neexistuje, pokračuje dál na vytvoření změnové kopie.
-
-
Pak pokračuje na vytvoření změnové kopie:
-
princip spočívá v tom, že úloha nebude pracovat s originálem smluv ale vytvoří k ní změnové kopie a bude pracovat s ní.
-
systém k nalezené smlouvě, která splňuje všechny kontroly výše, vytvoří změnovou kopii následovně:
-
neotevírá wizarda na založení změnové kopie/varianty API Change Contract Wizard (4046862, NavigatePage)
-
při zpracování dané smlouvy zobrazuje hlášku: “Working on it…Contract…”
-
při vytvoření změnové kopie pro vytvoření zápisu do API Contract Change History (4046858) použije následovné hodnoty (názvy polí z wizardu):
-
Contract Change Proces = Change Copy
-
Change Type Code = Contract Change Type z request formu
-
Approved By = ID uživatele, který úlohu spouští
-
Approval Date = work date systému
-
Change Reason Code = Contract Change Reason z request formu
-
Change Valid From = work date systému
-
Change Date = Date To z posledné zaúčtované splátky (Posted=Y, Canceled=N, Aliqout Payment=N, Recalculation Settlement=N, Partial Payment Credit=N)
-
Comment = Comment z request formu
-
Closed (15)=Y (aby při přenosu již nabyla vyžadováno schválení)
-
-
na změnové kopii zaktualizuje v API Financing Contract (4026396, Card) hodnotu Reference Date (4047010) = work date systému
-
změnovou kopii zařadí do listu změny dle Contract Change Queue List a zde přepne pole Mass Change na Y. Na zápis do Contract Change Queue zavolá existující funkce na vytvoření řádku kteřý se využíva i v reportu Contracts with Outrange Odometer Status.
-
Na změnové kopii vykoná zpracování dle Change Type.
-
Po dokončení vytvoří zápis do Contract Change Log s Recalculation Result=Success.
-
-
Zpracování změnové kopie dle Typu změny (Change Type):
-
Change Type=Add To Queue (Přidat do fronty):
-
Pouze vytvoří změnovou kopii dle popisu výše a zařadí jí do tabulky Contract Change Queue List bez dalšího zpracování.
-
Po dokončení procesu pouze zobrazí hlášku “x Contract(s) inserted into the queue.”:
-
-
Change Type=Terminate (Ukončit):
-
dohledá Date To z posledné zaúčtované splátky (Posted=Y, Canceled=N, Down Payment Line=N, Recalculation Settlement=N, Partial Payment Credit=N).
-
pokud takovou nenajde, končí chybou kterou zapíše do Contract Change Logu. Pozn: nemělo by se to stát. Toto je duplicitná kontrola s kontrolou na existencii aspoň zaúčtované alikvotní splátky.
-
-
Pak hledá službu, která má:
-
Pokud v request formu bylo vybráno Service Kind<>Road Tax:
-
Service Code= stejný jak byl zadán v request page a
-
Valid To After Extension > Date To z posledné zaúčtované splátky.
-
-
pokud takovou nenajde, končí chybou kterou zapíše do Contract Change Logu.
-
Pozn: Nemělo by se to stát. Duplicitná kontrola s kontrolou pre Change Type<>Add na existenciu služby.
-
-
pokud takovou službu najde, na nalezené službě vyplní:
-
v Contract Services doplni Valid To=Valid To after Extension = Date To z posledné zaúčtované řádné splátky
-
dle účtovaných řádků splátkového kalendáře služby pak na detailu naplní Invoiced Amount Excl.VAT jakou součet Amount bez alikvotní splátky
-
pokračuje na výpočet fakturované marži služby (Invoiced Payments Margin):
-
zafiltruje zaúčtované řádky splátkového kalendáře dané služby (Posted=Y and Aliquot Payment=N)
-
prochází je a do proměnné si ukládá z každého řádku rozdíl (Amount-Cost Amount).
-
výslednou (sumárnou) hodnotu zapíše do pole Invoiced Payments Margin (160) v Contract Services a Margin Total (85)
-
součet Cost Amount zapíše do Purchase Price Total Excl.VAT
-
-
dál v Contract Services:
-
vyplní Calculation Amount Total = Invoiced Amount Excl. VAT
-
nastaví Service Status=Terminated
-
vykoná přepočet splátkového kalendáře zastavené služby.
-
-
-
Pokud v request formu bylo vybráno Service Kind=Road Tax:
-
dohledá služby se Service Kind=Road Tax. Pak:
-
Již neplatné služby nezpracuje:
-
Valid To after Extension<Date To z posledné zaúčtované splátky
-
-
Zpracování aktuálně platné služby:
-
Valid From<Date To z posledné zaúčtované splátky<Valid To after Extension (aktuálně platná služba)
-
-
pokud takovou nenajde, končí chybou kterou zapíše do Contract Change Logu.
-
Pozn: Nemělo by se to stát. Duplicitná kontrola s kontrolou pre Change Type<>Add na existenciu služby.
-
-
pokud takovou službu najde, na nalezené službě vyplní:
-
v Contract Services doplni Valid To=Valid To after Extension = Date To z posledné zaúčtované řádné splátky
-
dle účtovaných řádků splátkového kalendáře služby pak na detailu naplní Invoiced Amount Excl.VAT jakou součet Amount bez alikvotní splátky
-
výpočet fakturované marže nevykoná (Road Tax nemá žádnou marži)
-
dál v Contract Services:
-
vyplní Calculation Amount Total = Invoiced Amount Excl. VAT
-
nastaví Service Status=Terminated
-
vykoná přepočet splátkového kalendáře zastavené služby.
-
-
-
Zpracování budúcich služeb (můžu existovat pokud služba Road Tax byla založena dle slevových pásem):
-
Valid From > Date To z posledné zaúčtované splátky
-
Pokud také služby existují, zmaže ich v:
-
Contract Services
-
jejich detail
-
jejich splátkové kalendáře.
-
-
-
-
-
-
Change Type=Reprice (Přecenit)
-
ukončení služby stejně jako výše pro Terminate, včetně propočtu splátkového kalendáře ukončené služby
-
Service Kind=Road Tax:
-
pro založení nové služby zavolá stejnou funkci, jako pro manuální založení služby bez otevření výpočtového okna (tzn. dohledá aktuálně platný kód služby v ceníku, k ní sazbu, slevy, založí službu, detail, splátkový kalendář službym atď).
-
do služby doplní Service Type Code z Contract with Services Setup (ne z request formu)
-
-
Service Kind<>Road Tax:
-
vytvoří novou službu v Contract Services kopírováním ukončené služby. Na této nové službě nastaví:
-
Service Status=Preparation
-
Valid From = datum ke kterému ukončil původní službu +1D
-
Valid To = Valid To after Extension = Expec. Termin. Date after Ext. (10105) z hlavičky smlouvy.
-
-
Po založení nové služby založí i detail služby:
-
Service Kind = Replacement Car:
-
nový detail zkopíruje z detailu původní služby
-
aktualizuje na něm Service No, (číslo služby) a Service Code (kód služby)
-
validací Service Code se z API Repl. Vehicle Pricelist (4026655) dle Service Code převezmou:
-
Replacement Car Type
-
Replacement Car Description
-
Make Code (skryté pole)
-
Model Line Code (skryté pole)
-
Model Code (skryté pole)
-
Vendor No.
-
Vendor Name
-
Note (skryté pole)
-
Contracting Days Per Year
-
Contracting Days Per Duration se prepočíta dle trvání služby
-
-
dále dle Service Code se převezmou platné hodnoty (Valid From<=Reference Date z hlavičky smlouvy<=Valid To může být i prázdní) z API Replacement Vehicle Rate (4047003)
-
Customer Price Excl.VAT (LCY) na detailu = Fee Amount Excl.VAT (LCY)
-
Purchase Price Excl.VAT (LCY) na detailu = Purchase Price Excl.VAT (LCY)
-
Pozn. pokud v sazbách najde nulovou hodnotu, naplní i tu. Před spouštěním úlohy doporučují zkontrolovat platné sazby.
-
-
-
převaliduje pole Correction (+-%), tím se dopočítají pole s částkami na detailu. Pokud byla hodnota Keep Correcion:
-
N - existující korekce zmaže (nastaví hodnotu 0)
-
Y - existující korekce zachová.
-
-
vykoná propočet splátkového kalendáře nové služby
-
-
Service Kind = Highway Ticket:
-
nový detail zkopíruje z detailu původní služby
-
aktualizuje na něm Service No, (číslo služby) a Service Code (kód služby)
-
validací Service Code se z API Highway Ticket Pricelist (4026653) dle Service Code převezmou :
-
Country/Region Code
-
Highway Ticket Type
-
Description
-
-
dále dle Service Code se převezmou platné hodnoty (Valid From<=Reference Date z hlavičky smlouvy<=Valid To může být i prázdní) z API Highway Ticket Rate (4047004):
-
Value Excl.VAT (LCY) na detailu = Fee Amount Excl.VAT (LCY)
-
Purchase Price Excl.VAT (LCY) na detailu = Purchase Price Excl.VAT (LCY)
-
Pozn. pokud v sazbách najde nulovou hodnotu, naplní i tu. Před spouštěním úlohy doporučují zkontrolovat platné sazby.
-
-
-
podle platnosti nové služby spočíta počet dálničních známek. Pokud mu vyjde nenulová hodnota, zapíše jí do detailu do pole Quantity, jinak zapíše hodnotu z původního detailu.
-
převaliduje pole Correction (+-%), tím se dopočítají pole s částkami. Pokud byla hodnota Keep Correction:
-
N - existující korekce zmaže (nastaví hodnotu 0)
-
Y - existující korekce zachová.
-
-
-
Service Kind = Fee/Service:
-
nový detail zkopíruje z detailu původní služby
-
aktualizuje na něm Service No, (číslo služby) a Service Code (kód služby)
-
validací Service Code se z API Fee and Service Pricelist (4026651) dle Service Code převezmou:
-
Vendor No.
-
Fee Period
-
Premium Fee
-
-
dále dle Service Code se převezmou platné hodnoty (Valid From<=Reference Date z hlavičky smlouvy<=Valid To může být i prázdní) z API Fee and Service Rate (4047002)
-
Fee Amount Excl.VAT (LCY) na detailu = Fee Amount Excl.VAT (LCY)
-
Purchase Price Excl.VAT (LCY) na detailu = Purchase Price Excl.VAT (LCY)
-
Pozn. pokud v sazbách najde nulovou hodnotu, naplní i tu. Před spouštěním úlohy doporučují zkontrolovat platné sazby.
-
-
-
na detailu služby zvaliduje pole Purchase Price Excl.VAT (LCY) a Correction (+-%), tím se dopočítají pole s částkami. Pokud byla hodnota Keep Correcion:
-
N - existující korekce zmaže (nastaví hodnotu 0)
-
Y - existující korekce zachová.
-
-
-
-
-
Change Type=Replace (Nahradit)
-
pro Service Kind=Road Tax je tato volba vypnuta. Pro ostatné služby postupuje dle popisu dále.
-
ukončení služby stejně jako výše pro Terminate, včetně propočtu splátkového kalendáře ukončené služby
-
vytvoří novou službu v Contract Services kopírováním ukončené služby. Na této nové službě nastaví:
-
Service Status=Preparation
-
Service Code = New Service Code z request page
-
Valid From = datum ke kterému ukončil původní službu +1D
-
Valid To = Valid To after Extension = Expec. Termin. Date after Ext. (10105).
-
-
založení nového detailu stejně jako pro Reprice (včetně zachování/nezachování korekce), jediný rozdíl je pouze v tom, že nový detail služby bude založen s kodem služby již s New Service Code z request page
-
podle platnosti nové služby spočíta počet dálničních známek. Pokud mu vyjde nenulová hodnota, zapíše jí do detailu do pole Quantity, jinak zapíše hodnotu z původního detailu.
-
propočet splátkového kalendáře služby stejně jako pro Reprice
-
-
Change Type=Add (Přidat)
-
dohledá Date To z posledné zaúčtované splátky (Posted=Y, Canceled=N, Down Payment Line=N, Recalculation Settlement=N, Partial Payment Credit=N).
-
pokud takovou nenajde, končí chybou kterou zapíše do Contract Change Logu. Pozn: nemělo by se to stát. Toto je duplicitná kontrola s kontrolou na existenciu aspon zaúčtované alikvotní anebo řádní splátky.
-
-
Pokud Service Kind=Road Tax:
-
dle popisu pro Reprice
-
-
Pokud Service Kind<>Road Tax, postupuje dle popisu dál:
-
vytvoří novou službu v Contract Services pro daný Service Kind, Service Type Code a Service Code. Na této nové službě nastaví:
-
Service Status=Preparation
-
pak zvaliduje pole Contract No., tým se naplní pole:
-
Curr.Exchange Rate Date
-
Currency Exchange Rate
-
Currency Code
-
Gen.Bus.Posting Group
-
VAT.Bus.Posting Group
-
Service Payment Period
-
Valid From = Date To z posl.zaúčtované splátky +1D
-
Valid To = Valid To after Extension = Expected Termination Date z hlavičky smlouvy. Toto plnění bude upraven tak, že bude doplnen Expec. Termin. Date after Ext. (10105).
-
-
pak zvaliuje Service Kind, to způsobí:
-
pokud je Service Kind<>Fee/Service, naplní Reflect Aliquot=N
-
pokud je Service Kind=Road Tax anebo Highway Ticket, naplní Reinvoice=N. U jiných služeb bude též vždy N, protože defaultní hodnota příznaku je N.
-
-
pak zvaliduje Service Type Code, to způsobí:
-
naplnění polí Gen. Prod. Posting Group a VAT Prod. Posting Group z číselníku Service Type
-
pak zvaliduje pole Service Code hodnotou zadanou uživatelem. To způsobí:
-
naplnění polí Reflect Aliquot a Full Aliquot Payment pro službu Fee/Service z ceníka poplatků
-
-
Po založení nové služby založí i detail služby funkcionalitou jako při ručním založení přes tlačítko Detail:
-
sazby dohledáva k Reference Date
-
Correction (+-%) plní z pole Default Serv. Corr. (Perc.) z Contract Services a protože toto je nulové, aj na detailu bude hodnota nulová.
-
Pozn: platí teda, že při založení se na služby produktu/šablony systém nedíva, aby nebylo za potřeby dodatečné založení nové služby do produktů/template. Tzn. že na založené službě budou hodnoty které se standardne přebírají z produktu, prázdné (např. Reinvoiced, Charge, …Default Correction, atd).
-
-
-
propočet splátkového kalendáře stejné jako výše.
-
-
-
Pokud je Change Type<>Add To Queue, na závěr zpracování dané smlouvy úloha vykoná:
-
deaktivuje existující varianty smlouvy přepnutím jejich Calc. Variant Status na Inactive
-
provede nasazení částek z kalendářů služeb do spl. kalendáře smlouvy (bez spouštení finanční kalkulačky)
-
v hlavičce smlouvy zaktualizuje hodnoty polí na základě hodnot z první neúčtované řádné splátky v SPK smlouvy:
-
Annuity Excl.VAT
-
Services Excl. VAT
-
Insurance Excl. VAT
-
Simple Fee Excl. VAT
-
Payment Excl.VAT
-
Payment Incl.VAT
-
-
na základě hodnot z první neúčtované řádné splátky v SPK smlouvy.
-
po zpracování změnové kopie ze změnové kopie doplní New Payment Excl.VAT
-
vytvoří zápis do Contract Change Log (viz dál)
-
zobrazí hlášku “Změna byla vykonaná na X smlouvě (-ách). Na Y smlouvě (-ách) se vyskytla chyba.”
-
Podstránky: