====== Prodejní ceník ====== **Prodejní ceník** tvoří vazbu mezi výrobkem a odběratelem. Pro každou kombinaci //čísla výrobku// a //čísla odběratele// je možno vytvořit tzv. hlavičku odběratelského ceníku, ke kterému mohou být přiřazeny jednotlivé řádky ceníku. \\ Hlavička ceníku obsahuje //měnu//, //řízení ceníku//, //identifikaci výrobku// u odběratele, eventuálně i //čárový kód//. \\ Jednotlivé řádky ceníku rozlišují cenu podle //data// a //množství// dodávky. Řádky jsou svázány s hlavičkou ceníku přes //krátké číslo//, které je generováno automaticky podle číselné řady v souboru KN. **Ceník** může být také vytvořen pro obecného (fiktivního) odběratele (999999) nebo pro představitele skupiny odběratelů. \\ **Ceník** je dále možno vytvořit pro skupinu výrobků, které mají stejnou prodejní cenu. Potom je nutné zapsat pro všechny výrobky této skupiny //číslo výrobku//, pro který je ceník vytvořen. **Hlavní přehled** programu obsahuje //identifikační číslo výrobku// a //číslo odběratele//. Zobrazené věty je možno filtrovat pomocí standardního filtru záznamů. \\ **Vedlejší přehled** může obsahovat //jednotlivé řádky aktuálního prodejního ceníku//, //grafický obrázek// nebo //doprovodné texty// k záhlaví prodejního ceníku. {{ :orfertopen:lo:op:p0:prodejniceniky:prodejnicenik.png?direct&400 |Prodejní ceník}} \\ ===== Charakteristika ===== Úloha **prodejní ceník** umožňuje definovat sjednané ceníky [[orfertopen:lc:cpolozka|katalogových položek]] s vybranými odběrateli. Ve chvíli vytváření [[orfertopen:lo:op:p0:prodejniobjednavky:cprodejniobjednavka|prodejní objednávky]] nebo jiného prodejního dokladu se po vybrání //odběratele// a //katalogové položky// převezme právě __definovaná cena__ z **prodejního ceníku**. == způsob kontroly datumu pro přitažení ceny je možné pro prodejní objednávku parametrizovat == * Defaultně se pro datumové řízení hledá prodejní cena dle datumu požadovaného dodání řádku prodejní objednávky AZ-K-DAT * Pokud je v parametrech prodejní objednávku uvedeno v PZ_KLP_DAT = 2 tak je cena přitažena dle datumu založení hlavičky prodejní objednávky AK-EDAT ==== Zakládání ceníku ==== Při zakládání **ceníku** uživatel __musí__ vybrat //položku// a //odběratele//. \\ Dále nastavuje **řízení ceny**: - **Řízení ceny datumem** - cena je platná pro vybrané období OD datumu DO datumu. - **Řízení ceny množstvím** - cena je platná při prodání OD množství DO množství. - **Řízení ceny datumem i množstvím** - kombinace obou předchozích možností. Po vytvoření **ceníku** se uživatel přepne do záložky //Ceny// a zde definuje 1 až více řádků ceníku (každý řádek si nese definovanou cenu pro konkrétní případ - dle datumu/množství). == Příklad == Jednotková cena pro položku XY je v období 01.06.2020 - 31.08.2020 stanovena na 100,- Kč. \\ NEBO \\ Jednotková cena pro položku XY je při objednání množství OD 10 DO 19 ks stanovena na 90,- Kč. \\ ===== Důležité údaje ===== === Hlavička ceníku === **Položka** - Identifikační číslo položky, pro který je ceník vytvářen. \\ **Odběratel** - Číslo odběratele nebo představitele skupiny odběratelů. \\ **Řízení ceny** - Volba způsobu přiřazení ceny k výrobku při tvorbě objednávek (**M** - dle množství, **D** - dle data platnosti, **X** - dle vlastního výběru z nabízených cen, **MD** - dle množství a data). \\ **Způsob výpočtu ** - Způsob výpočtu hodnoty dokladu * **" "** -> //množství// * //cena// = hodnota * **"A"** -> //jednotková cena// = hodnota * **"S"** -> //stupňová cena// dle množství (váženým průměrem) **Brutto/Netto Cena** - Cena je zadána včetně DPH nebo bez DPH : * **"B"** -> Cena v ceníku je včetně DPH * **"N"** -> Cena v ceníku je bez DPH **Měna** - Měna, ve které jsou uvedeny ceny v ceníku. \\ **Sazba DPH** - Sazba DPH pro ceníkový záznam \\ **Cena v 2. MJ** - Jednotková cena je je vztažena defaultně k 1.mj pokud zaškrnuto tak hodnota = množstí v 2.mj pro položku x cena \\ **Poznámka** - Poznámka , komentář k ceníkovému záznamu \\ === Řádky ceníku === **Datum** OD-DO - Rozsah platnosti ceníku dle data. \\ **Množství** OD-DO - Rozsah platnosti ceníku dle množství. \\ **cena** - Prodejní cena na měrnou jednotku. \\ **Rabat** -Sleva nebo přirážka, kterou poskytujeme odběrateli (**slevu** nutno zadávat s mínusem, jinak je to chápáno jako přirážka). \\ ===== Základní funkce ===== **__Funkce prodejního ceníku:__** * [[cprodejnicenik#Správa řádků|Správa řádků]] * [[cprodejnicenik#Textová dokumentace|Textová dokumentace]] * [[cprodejnicenik#Obrazová dokumentace|Obrazová dokumentace]] * [[cprodejnicenik#Kopírování cen|Kopírování cen]] * [[cprodejnicenik#Rušení vybraných|Rušení vybraných]] * [[cprodejnicenik#Prázdné smazat|Prázdné smazat]] * [[cprodejnicenik#Formulář|Formulář]] * [[cprodejnicenik#Import ceníku z excelu|Import ceníku]] * [[cprodejnicenik#Tisk odběratelského (prodejního) ceníku|Tisk ceníku]] == Správa řádků == Zobrazení a aktualizace řádků prodejního ceníku. == Textová dokumentace == Vytvoření a aktualizace doplňkových textů k prodejnímu ceníku. == Obrazová dokumentace == Zobrazení obrazové dokumentace k výrobku. == Kopírování cen == Kopírování vět (položek) ceníku od jednoho zákazníka k jinému dle //výrobku//, //skupiny zboží// a //hlavního skladu//. Při této funkci je možné změnit % přirážky/srážky a cenu o dané % s případným zaokrouhlením na zadaný počet desetinných míst. Při zadáni zákazník(OD) = zákazník(DO) se u zadaného zákazníka přepíše přirážka/srážka zadaným procentem a cena se přepočítá o zadané %. Již existující věty zůstávají v původním tvaru. Pokud je zadáno upravit cenu makrem, cena je upravena makrem, makro je definováno v přepínači pro řízený objekt **SCenikKopirovani** - přepínačem **LO_SCenikKopirovani_MakroProdejniCenikRadek** makro musí být implementace **SCenikKopirovani_MakroProdejniCenikRadek**. == Rušení vybraných == Likvidace prodejního ceníku pro zadaný interval odběratelů a výrobků. == Prázdné smazat == Likvidace hlaviček ceníků, které nemají žádný řádek. == Formulář == Rychlé pořizování odběratelského ceníku. Pro zadaný materiál je možno současně zadávat ceny pro několik odběratelů (až 20-ti) a po ukončení vygenerovat současně hlavičky ceníku včetně řádků. ==== Import ceníku z excelu ==== Funkce slouží k importu ceníku z excelu(xls,xlsx). * Výběr souboru, který se má zpracovat z lokálního disku a jeho přenos na server do adresáře definovaného v záznamu Fmp s Fmp.vstup = "X", pokud takový záznam neexistuje tak do adresáře "DATA"/import - "DATA" musí být v nastavena jako systémová proměnná * Je zpracován zadaný excel soubor, konverze probíhá tak, že co řádek v souboru excelu, to řádek ceníku včetně vložené entity hlavička ceníku. Musí existovat hlavička excelu, kde jednotlivé buňky názvu musí odpovídat přesně atributům v dané entitě včetně vložených entit(podporována je pouze entita id a cProdejniCenik) nebo lze tyto názvy konvertovat v konverzní tabulce viz níže. * Pokud by bylo potřeba názvy atributů konvertovat do názvů atributů v OR, lze použít konverzní tabulku wkh-wkr se standardní funkcionalitou, wkhEntityType v tomto případě musí být **SProdejniCenikImport**. **nastavení a implementace** - Musí existovat Excel tabulka pro import ceníku s následující strukturou {{ :orfertopen:lo:op:p0:prodejniceniky:impor_cenik_excel.png?direct&400 |}} Excel musí obsahovat importované údaje pro hlavičku i řádek ceníku v jednoum záznamu (řádku Excelu) * Jména sloupců musí být uvedena ve shodě tak jak je uvedeno v příkladu Excelu * Pokud jsou sloupce nazvány jinak musí být sloupec , jeho pojmenování a namapování na atribut ceníku uveden v konverzní tabulce viz dále - Konverzní tabulka **Wkh pro entitu SProdejniCenikImport** musí být založená **povinně** pro datumové atributy od - do datumu z důvodu konverzi datumu z formátu dd.mm.rr na rrmmdd {{ :orfertopen:lo:op:p0:prodejniceniky:kon_tabulka_cenik.png?direct&400 |}} - pravidla pro import hlavičky ceníku z Excelu * Pokud není v importu uvedena měna tak se použije defaultní měna z parametrů * Pokud není uvedeno řízení ceny tak se použije defaultní D - cena je řízena dle datumu * Pokud není uveden způsob výpočtu tak se použije defaultní = množsví x cena * Pokud není uveden Netto/Bruto cena tak se použije defaultní = N - cena Netto * Pokud není uveden název položky tak se převezme z katalogu položek * Pokud není uvedeno označení 1 tak se převezme z katalogu položek * Pokud není uvedeno označení 2 tak se převezme z katalogu položek - pravidla pro import řádků ceníku z Excelu * kontrola zda typ řízení ceny odpovídá záhlaví ceníkové věty ( typy řízení D,M,DM) * jeli typ řízení ceny "D" a existuje řádek ceníku se shodným datumem od do je provedena aktualizace * jeli typ řízení D a a datum nového zaznamu od je větší nebo rovno než původní záznam a datum do menší nebo rovno než původní záznam , tak dojde automaticky k ukončení platnosti původního záznamu * pokud datum od je nevyplněno záznam se nezaloží * pokud datum do je nevyplněno tak se uvede defaultně datum 2999.12.31 * jeli typ řízení M a existuje řádek ceníku se shodným intervalem množství je provedena aktualizace * jeli typ řízení M a množství nového zaznamu od je větší nebo rovno než původní záznam a množství do menší nebo rovno než původní záznam , tak dojde automaticky k změně množství do původního záznamu * jeli typ řízení DM a existuje řádek ceníku se shodným intervalem množství a stejným datumovým intervalem je provedena aktualizace * jili typ řízení DM a intervaly datumu a množství a intervaly datumu odpovídají výše uvedeným pravidlum jsou původní platnosti ukončeny viz výše * Pokud v Ecelu nalena neexistující položka nebo odběratel, upozornění a žádný záznam se nenaimportuje ( je nutné Excel opraviit a znovu zpracovat ==== Kopírování odběratelského (prodejního) ceníku ==== **Odběratelský (prodejní) ceník je možné kopírovat ** {{ :orfertopen:lo:op:p0:prodejniceniky:kopiruj_cenik.png?direct&400 |}} - Zadání zdrojového ceníku * Zadání portnera * Položka od * Položka do * Platnost ke dni * Čísla celního sazebníku Systém zobrazí vybrané ceníkové věty , které se budou kopírovat - Zadání cílového ceníku * Partner * Způsob generování - přegenerovat ( existující záznamy u cílového prtnera se smazou) / nové přigenerovat ( nové se přidávají bez mazání původních , zatím není řešeno automatické ukončování platnosti) * Datum od - nové datum platnosti od * Datum do . nové datum platnosti do * Množstvé od - nové množství od * Množství do - nové množství do * Výpočet ceny makrem - výpočet ceny firemním makrem ( LO_SCenikKopirovani_MakroNakupniCenikRadek pro řízený objekt SCenikKopirovani ) * Změna ceny v procentech - podle zadaného procenta se změní nová cena + navýšení + / - ponížení ceny * Zaokrouhlení - způsob zaokrouhlené nové ceny * Slevu převzít - sleva se přebírí ze zdrojové věty * Sleva - zadaná sleva se ukládá do cílové věty