Přenosy skladových karet: Porovnání verzí
(Není zobrazeno 34 mezilehlých verzí od stejného uživatele.) | |||
Řádek 3: | Řádek 3: | ||
Pi stisku klávesy '''Alt + F5''' se vyvolá následující okno:<br/> | Pi stisku klávesy '''Alt + F5''' se vyvolá následující okno:<br/> | ||
− | [[Soubor:KartyKopirovani.PNG | + | [[Soubor:KartyKopirovani.PNG]]<br/> |
ve kterém si uživatel vybere činnost, kterou chce s kartami provádět: | ve kterém si uživatel vybere činnost, kterou chce s kartami provádět: | ||
===Připravit pro přenos:=== | ===Připravit pro přenos:=== | ||
− | [[Soubor:KartyKopirovaniDopln1.PNG | + | [[Soubor:KartyKopirovaniDopln1.PNG]] |
<br/> | <br/> | ||
Při přenosu skladových karet lze určit, zda se mají do přenosových souborů ukládat individuální ceny (pokud ne, pak se přenosový soubor s individuálními cenami generuje prázdný) a pokud je program nakonfigurován pro práci s více čárovými kódy ve skladových kartách, pak lze také do přenosových souborů generovat soubor s čárovými kódy, které přísluší k vybraným kartám. | Při přenosu skladových karet lze určit, zda se mají do přenosových souborů ukládat individuální ceny (pokud ne, pak se přenosový soubor s individuálními cenami generuje prázdný) a pokud je program nakonfigurován pro práci s více čárovými kódy ve skladových kartách, pak lze také do přenosových souborů generovat soubor s čárovými kódy, které přísluší k vybraným kartám. | ||
+ | |||
+ | ''Exportovat indiv. ceny jen pro určená střediska'' - pokud je přepínač zapnutý, pak se exportují pouze ty individuální ceny, které buď mají v hlavičce individuální ceny vypnuté omezení na určená střediska nebo alespoň jedno středisko (písmeno) v seznamu vyhovuje seznamu středisek určených pro export. | ||
+ | |||
{| border=1 class = "wikitable" style="text-align:left" | {| border=1 class = "wikitable" style="text-align:left" | ||
|bgcolor="#FFE68C"| '''Poznámka''' | |bgcolor="#FFE68C"| '''Poznámka''' | ||
|- | |- | ||
− | |V exportu skladových karet (Alt+F5 v přehledu skladových karet) lze exportovat i poznámky ke skladovým kartám (ukládané v MEMO.BTR). Je možné určit, které druhy poznámek se mají přenášet (poznámky 1, 2, 3 nebo obrázky ke kartám). Při přenosu karet se spolu s poznámkou karty přenášejí také příznaky. Exportovaná data lze také komprimovat do přenosového souboru. Při exportu obrázku ke kartám se exportují jen odkazy na soubory s obrázky (nikoli samotné obrázky) | + | |V exportu skladových karet ('''Alt+F5''' v přehledu skladových karet) lze exportovat i poznámky ke skladovým kartám (ukládané v MEMO.BTR). Je možné určit, které druhy poznámek se mají přenášet (poznámky 1, 2, 3 nebo obrázky ke kartám). Při přenosu karet se spolu s poznámkou karty přenášejí také příznaky. Exportovaná data lze také komprimovat do přenosového souboru. Při exportu obrázku ke kartám se exportují jen odkazy na soubory s obrázky (nikoli samotné obrázky) |
+ | |- | ||
+ | |Při exportu dat pro notebooky program exportuje pro každou skladovou kartu nákupní operace podle jednotlivých datumů spotřeby. Informace o datech spotřeby je pak vidět v přehledu nákupních operací dané skladové karty nebo např. v nabídce Info o zboží. Nastavení exportu je možné ovlivnit v dialogu pro nastavení přenosů. | ||
|} | |} | ||
+ | <br/> | ||
+ | {|border=1 class ="wikitable" | ||
+ | |- | ||
+ | |bgcolor=#00FF00 width=900| '''Technická poznámka''' | ||
+ | |- | ||
+ | |Do souboru NTB_MEM se exportují také poznámky a obrázky ke skladovým kartám. Pomocí proměnné '''''NtbExpDat,12''''' lze ovlivnit,které informace se mají exportovat:<br/> | ||
+ | +1 - poznámky 1<br/> | ||
+ | +2 - poznámky 2<br/> | ||
+ | +4 - poznámky 3<br/> | ||
+ | +8 - obrázky ke kartám<br/> | ||
+ | +16 - alternativní karty <br/> | ||
+ | Podobně pomocí proměnné '''''NtbImpObj,12''''' lze nastavit import záznamů ke kartám v rámci aktualizace dat po přenosu na notebook. | ||
+ | |- | ||
+ | |Pomocí proměnné ''KarIdStred,0'' lze určit interní "domácí" číslo střediska pro dané středisko. ''Hodnota musí být z rozsahu 0 až 255'' a musí být odpovídat aktuálnímu středisku z číselníku středisek pro karty. Při přenosu skladových karet se pak provádí import karet jen pro střediska, která mají v přenosovém souboru dané středisko aktuální (pokud proměnná není určená nebo má zápornou hodnotu, tak se toto omezení neuplatňuje). | ||
+ | |} | ||
---- | ---- | ||
===Načíst ze souboru:=== | ===Načíst ze souboru:=== | ||
− | [[Soubor:KartyKopirovaniNact.PNG | + | [[Soubor:KartyKopirovaniNact.PNG]]<br/><br/> |
+ | [[Soubor:KartyKopirovaniNact_Str2.PNG]]<br/><br/> | ||
+ | Pokud je v importu skladových karet (''Přehled karet''/'''Alt+F5'''/''Načíst ze souboru'') povolen import karet pouze z určeného střediska, tak se toto omezení uplatní také na individuální ceny, které mají v hlavičce omezen přenos pouze na určená střediska. | ||
<br/> | <br/> | ||
{| border=1 class = "wikitable" style="text-align:left" | {| border=1 class = "wikitable" style="text-align:left" | ||
Řádek 27: | Řádek 49: | ||
|- | |- | ||
|Při importu skladových karet je možné v kartách pomocí klávesy '''Backspace''' přepnout celou sadu přepínačů pod volbou ''Opravit existující karty''. | |Při importu skladových karet je možné v kartách pomocí klávesy '''Backspace''' přepnout celou sadu přepínačů pod volbou ''Opravit existující karty''. | ||
+ | |- | ||
+ | |Při importu skladových karet ('''Alt+F5'''), které mají zapnutý přepínač '''Centrálně řízené balení''', se údaj '''Balení''' importuje i v případě, že není povolený import tohoto údaje pomocí přepínače v dialogu pro import (do dialogu je přidán nový přepínač Balení dle cent., kterým je možné zpracování příznakem označených karet ovlivnit) | ||
|- | |- | ||
|V importu skladových karet byly osamostatněny přepínače pro položky Minimum, Optimum, Maximum, Hmotnost, Záruka, Objem, Poznámka, Příznaky, Na paletě, Ve vrstvě, Obj.množství, Účt.předpis a Sp.cena (resp. doh.NC2/Sp.rabat). Tyto položky mají nyní samostatný přepínač, který povoluje import. (viz. předchozí obrázek) | |V importu skladových karet byly osamostatněny přepínače pro položky Minimum, Optimum, Maximum, Hmotnost, Záruka, Objem, Poznámka, Příznaky, Na paletě, Ve vrstvě, Obj.množství, Účt.předpis a Sp.cena (resp. doh.NC2/Sp.rabat). Tyto položky mají nyní samostatný přepínač, který povoluje import. (viz. předchozí obrázek) | ||
Řádek 32: | Řádek 56: | ||
|Při importu čárových kódů (se zapnutým přepínačem Importovat čárové kódy ze souboru) program postupuje takto:<BR/> | |Při importu čárových kódů (se zapnutým přepínačem Importovat čárové kódy ze souboru) program postupuje takto:<BR/> | ||
Postupně se prochází záznamy z přenosového souboru čárových kódů a čárový kód se zkusí dohledat v aktuální tabulce čárových kódů. Pokud není nalezen a současně je nalezena odpovídající skladová karta ze záznamu čárového kódu, tak se záznam z přenosového souboru přidá do aktuální tabulky čárových kódů (přidá se ke kartě). Pokud je záznam čárového kódu nalezen v aktuální databází, tak se aktualizace provádí jen pokud souhlasí kód zboží v přenosové i aktuální tabulce čárových kódů (může se tím změnit např. zda jde o čárový kód k balení nebo k MJ) a nebo se provádí pokud je v aktuální databázi nalezena i karta, na kterou se odkazuje záznam v přenosovém souboru (dojde tím k přesunutí čárového kódu na tuto jinou kartu). | Postupně se prochází záznamy z přenosového souboru čárových kódů a čárový kód se zkusí dohledat v aktuální tabulce čárových kódů. Pokud není nalezen a současně je nalezena odpovídající skladová karta ze záznamu čárového kódu, tak se záznam z přenosového souboru přidá do aktuální tabulky čárových kódů (přidá se ke kartě). Pokud je záznam čárového kódu nalezen v aktuální databází, tak se aktualizace provádí jen pokud souhlasí kód zboží v přenosové i aktuální tabulce čárových kódů (může se tím změnit např. zda jde o čárový kód k balení nebo k MJ) a nebo se provádí pokud je v aktuální databázi nalezena i karta, na kterou se odkazuje záznam v přenosovém souboru (dojde tím k přesunutí čárového kódu na tuto jinou kartu). | ||
+ | |- | ||
+ | |Pokud přenosový soubor neobsahuje samostatný soubor s čárovými kódy (byl vygenerován bez přenosu čárových kódů), pak je přepínač ''Importovat čárové kódy do souboru'' automaticky vypnut. | ||
+ | |- | ||
+ | |Import ovlivňují také přepínače [[Založení nové karty#Přepínače - klávesa F6|skladové karty]] | ||
+ | |- | ||
+ | |Při importu se používají názvy importovaných polí, které mohou být ovlivněny názvy určenými ve strukturách souborů (musí být zapnutý příznak ''Jméno pole do dialogů''). | ||
+ | |- | ||
+ | |Pomocí přenosů skladových karet (''Alt+F5'' v přehledu karet) lze aktualizovat také položku Typ karty. Při změně karty se aktualizují také informace ve všech operacích skladové karty. Přenos typu karet lze zapnout v dialogu pro import na druhé podstránce, kterou lze vyvolat pomocí '''PageDn'''. | ||
+ | |- | ||
+ | |Změna způsobu aktualizace čárových kódů při přenosu skladových karet ('''Alt+F5'''). Při přenosu karet nyní může dojít k přesunu čárového kódu k jiné skladové kartě, pokud je v přenosovém souboru čárový kód připojen k jiné kartě nebo je připojen k nově importované kartě. Navíc na druhé podstránce importu karet nová volba pro určení režimu importu karet: | ||
+ | *''aktualizace nebo doplnění'' - pokud je čárový kód z přenosového souboru nalezen v hlavní databázi (u libovolné karty), tak se aktualizuje dle přenosového souboru a pokud ne, tak se doplní | ||
+ | *''vymazání dle karet+doplnění'' - ze všech karet, které jsou v přenosovém souboru (i když třeba nebyly aktuálně importovány) jsou odstraněny všechny čárové kódy, které jsou navíc oproti přenosovému souboru a stejné čárové kódy jsou aktualizovány dle přenosového souboru | ||
+ | *''doplnění bez kontroly karet'' - tomto režimu jsou doplněny záznamy čárových kódů i v případě, že neexistuje odpovídající skladová karta v aktuální databázi (vhodné v případě, pokud jsou skladové karty přenášeny samostatně) | ||
+ | |- | ||
+ | |Nový režim aktualizace čárových kódů při přenosu skladových karet doplnění bez kontroly karet. V tomto režimu jsou doplněny záznamy čárových kódů i v případě, že neexistuje odpovídající skladová karta v aktuální databázi (vhodné v případě, pokud jsou skladové karty přenášeny samostatně). Nastavuje se v dialogu pro načtení skladových karet po stisku klávesy '''PageUp'''. | ||
+ | |- | ||
+ | |Přepínač '''Režim výpočtu JC''' určuje, zda se má v rámci importu karet přenášet také nastavení režimu výpočtu jednotkové ceny | ||
|} | |} | ||
<br/> | <br/> | ||
{| border=1 style="background:#ddddff; color:black" class = "wikitable" | {| border=1 style="background:#ddddff; color:black" class = "wikitable" | ||
− | |- | + | |-Valign=top |
! Klávesa !! Popis | ! Klávesa !! Popis | ||
− | |- | + | |-Valign=top |
| '''F2:Start'''||spustí načtení karet z přenosového souboru | | '''F2:Start'''||spustí načtení karet z přenosového souboru | ||
− | |- | + | |-Valign=top |
| '''F5:Ukaž'''||zobrazí karty v přenosovém souboru, které se mají načíst | | '''F5:Ukaž'''||zobrazí karty v přenosovém souboru, které se mají načíst | ||
− | |- | + | |-Valign=top |
| '''F6:Vybrat soubor'''||umožní vybrat jednotlivé soubory, pro karty, zásoby a individuální ceny a čárové kódy (toto je také možné na kliknutí tlačítka za zadávacím polem) | | '''F6:Vybrat soubor'''||umožní vybrat jednotlivé soubory, pro karty, zásoby a individuální ceny a čárové kódy (toto je také možné na kliknutí tlačítka za zadávacím polem) | ||
− | |- | + | |-Valign=top |
| '''F8:Ulož nast.'''||uloží aktuální nastavení buď pouze pro právě přihlášeného uživatele nebo pro všechny uživatele - taktéž je možno obnovit původní nastavení | | '''F8:Ulož nast.'''||uloží aktuální nastavení buď pouze pro právě přihlášeného uživatele nebo pro všechny uživatele - taktéž je možno obnovit původní nastavení | ||
− | |- | + | |-Valign=top |
| '''F10:Kompr. soubor'''||je možno vybrat komprimovaný soubor (*.KRX, který obsahuje všechny výše zmíněné soubory) | | '''F10:Kompr. soubor'''||je možno vybrat komprimovaný soubor (*.KRX, který obsahuje všechny výše zmíněné soubory) | ||
− | | | + | |-Valign=top |
− | + | | '''PageDown, PageUp'''||druhá strana s přepínači | |
− | |||
− | |||
− | |||
− | | | ||
|} | |} | ||
<br/> | <br/> | ||
Řádek 69: | Řádek 106: | ||
|- | |- | ||
|colspan=2| Proměnná ''KarImport,38'' může být závislá na uživateli a aktuálním skladu | |colspan=2| Proměnná ''KarImport,38'' může být závislá na uživateli a aktuálním skladu | ||
+ | |- | ||
+ | |colspan=2|Pomocí proměnné ''KarImportN,0 s hodnotou 0'' lze vypnout aktualizaci data založení skladové karty v rámci přenosu skladových karet ('''Alt+F5''' v kartách) | ||
+ | |- | ||
+ | |colspan=2|Pomocí proměnné ''KarPrvNove'' s hodnotou 1 lze povolit, aby i uživatelé, kteří mají vypnuté [[Systémové menu#Typy uživatelů|přístupové právo]] 51 ''Právo zakládat nové skladové karty'', mohli založit skladovou kartu v rámci přenosu skladových karet pomocí přenosových souborů skladových karet (např. KRX soubor) | ||
+ | |- | ||
+ | |colspan=2| Při přenosu skladových karet je možnost '''exportovat i importovat hlavičky individuálních cen'''. Přenos hlaviček je proveden pouze pokud jsou importovány také samostatné individuální ceny. Standardní jméno přenosového souboru hlavicek je CISSSL.BTR. Soubor může být také přenášen v rámci komprimovaného souboru KARTY.KRX spolu s ostatními přenosovými soubory a obsah souboru před importem je možné prohlížet pomocí '''F5''' na jménu souboru. | ||
+ | |- | ||
+ | |colspan=2| Import skladových karet z přenosového souboru používá nyní nový transakční režim, který by měl méně blokovat ostatní uživatele při rozsáhlejších přenosech karet. Pomocí proměnné ''KarImport,2'' lze tento transkační režim změnit<br/> | ||
+ | 0: uzamčení SKLADINI (po dobu importu karet není možno evidovat doklady)<br/> | ||
+ | 1..transakce po jednotlivých kartách-výchozí<br/> | ||
+ | 2: transakce za celý přenos<br/> | ||
+ | 3: bez transakce | ||
+ | |- | ||
+ | |colspan=2| Úprava přenosu informací o čárových kódech v rámci komprimovaného přenosového souboru (KARTY.KRX). Pokud přenosový soubor obsahuje samostatný soubor s čárovými kódy, tak se tento soubor při importu rozbalí a použije (pokud i na straně příjemce existuje SKLADEAN.BTR). Pokud komprimovaný soubor neobsahuje soubor s čárovými kódy, pak je přenos čárových kódů automaticky vypnut. | ||
+ | |} | ||
+ | |||
+ | <br/> | ||
+ | {|border=1 class ="wikitable" | ||
+ | |colspan=2 bgcolor=#00FF00| '''Technická poznámka''' | ||
+ | |- | ||
+ | |colspan =2|V nabídce pro import skladových karet z přenosového souboru je možnost zakázat změnu vybraných hlavních přepínačů. Pomocí proměnné KarImport, 0 lze určit povolené přepínače (hodnotu zadejte jako součet následujících hodnot): | ||
+ | |- | ||
+ | |'''Hodnota'''||'''Popis''' | ||
+ | |- | ||
+ | | +1||načíst individuální ceny ze souboru | ||
+ | |- | ||
+ | | +2||soubor hlaviček individuálních cen | ||
+ | |- | ||
+ | | +4||přidat nové karty | ||
+ | |- | ||
+ | | +8||opravit existující karty | ||
+ | |- | ||
+ | | +16||importovat čárové kódy | ||
+ | |- | ||
+ | | +32||režim importu čárových karet | ||
+ | |- | ||
+ | | +64||importovat poznámky | ||
+ | |- | ||
+ | | +256||poznámky 1 | ||
+ | |- | ||
+ | | +512||poznámky 2 | ||
+ | |- | ||
+ | | +1024||poznámky 3 | ||
+ | |- | ||
+ | | +2048||obrázky | ||
+ | |- | ||
+ | | +4096||šablony | ||
+ | |- | ||
+ | | +8192||alternativní karty | ||
|} | |} | ||
---- | ---- | ||
===Porovnání souboru:=== | ===Porovnání souboru:=== | ||
− | [[Soubor:KartyKopirovaniPorovnani.PNG | + | [[Soubor:KartyKopirovaniPorovnani.PNG]]<br/> |
+ | |||
+ | ---- | ||
+ | |||
+ | ===Přenos karet do XML=== | ||
+ | |||
+ | '''Kód menu : 3,96''' | ||
+ | |||
+ | Program si v klasickém open dialogu vyžádá jméno XML souboru, který pak zkontroluje a načte z něj požadované změny v kartách nebo založí nové karty. U nových karet nechte pole '''Kod''' prázdné a do pole '''KodVzor''' určete jméno karty, která se má použít jako vzor. Při zakládání karet se automaticky nuluje EAN a EAN balení (můžete ale v XML poslat novou hodnotu). Před načtením údajů XML se také provádí načtení výchozích hodnot dle číselníku 177. Pokud kód určíte přímo v poli '''Kod''', tak se pro novou kartu použije přímo vámi určený kód. Pokud karta s kódem existuje, tak se provádí jen aktualizace.<br/> | ||
+ | |||
+ | Akceptována je také aktualizace záznamů souvisejících s kartou v MEMO. Např. MEMOC2 aktualizuje běžné parametry karty v MEMO s číslem řádku 2. Pokud je údaj v MEMO ukládán ve více řádcích, tak je potřeba poslat každý údaj jako samostatné pole v DATAPACKET. Struktury v seznamu systémových struktur ale nemusíte mít založené (vše se vyčte ze jména pole). | ||
+ | |||
+ | Aplikace pak zobrazuje protokol o změnách v jednotlivých kartách, resp. pro každý váš záznam s požadavkem na změnu zobrazí jeden řádek v protokolu s informací, jak kartu zpracoval a v případě chyby vypíše důvod chyby. Pokud je při zpracování import u hlášena databázová chyba, tak je přenos přerušen. Pokud je požadováno zpracování v globální transakci, tak je celý přenos zrušen a vrácen do původního stavu (u nedatabázových chyb se pokračuje – např. pokud karta podle kódu nebyla nalezena). Pokud není požadováno globální zpracování transakcí, tak je v případě databázové chyby přenos také přerušen, ale dosud zapsané změny zůstanou uložené v databázi (a z přehledu vrácených záznamů se dozvíte, co se změnilo). | ||
+ | |||
+ | V protokolu je vidět stavový kód záznamu (StatusCode): | ||
+ | |||
+ | {| border=1 style="background:#ddddff; color:black" class = "wikitable" | ||
+ | |-Valign=top | ||
+ | |'''Hodnota''' || '''Popis''' | ||
+ | |- | ||
+ | |0||žádné změny nebyly potřeba | ||
+ | |- | ||
+ | |1||zaevidována nová karta (kód nové karty by měl být v poli kód) | ||
+ | |- | ||
+ | |2||karta aktualizována | ||
+ | |- | ||
+ | |3||chyba při zpracování záznamu, popis je v poli StatusTex | ||
+ | |} | ||
+ | |||
+ | Stejný protokol vrací i skladweb (jen ve formě datové XML struktury DATAPACKET). Vrací se zde __ID (nebo GUID pokud ve vstupním souboru použijete namísto __ID toto pole), Kod (nebo ProductCode pokud ve vstupním souboru použijete namísto Kod toto pole), StatusCode (výše popsané číslo), StatusText (jen chyby nebo varování).<br/> | ||
+ | |||
+ | Struktura Datapacket je v XML „zabalena“ ještě do <MaximTransferResponse>, který obsahuje: | ||
+ | |||
+ | * <Completed>1 .. pokud je úloha zpracována kompletně, 0 .. když došlo k přerušení zpracování | ||
+ | * <ResultMessage> ,, text chyby nebo varování (prázdné, pokud je vše OK) | ||
+ | * <RecordsInserted> <RecordsUpdated> <RecordsError> počet vložených, aktualizovaných či chybných záznamů. Záznamy bez změny nejsou započítané. | ||
+ | * <MasterTab> .. obsahuje strukturu DATAPACKET s protokolem zpracování jednotlivých záznamů ze vstupního požadavku. | ||
+ | |||
+ | Při komunikaci přes Skeleton je celé toto XML součástí odpovědi ve standardní struktuře Skeletonu (uzel pro komunikaci najdete pod UpdateDataset). Pokud dojde k závažné chybě (např. chybná struktura vstupního datapacketu), tak je namísto běžné odpovědi vrácena chyba ve struktuře SkeletonError, která v podstatě obsahuje jen popis chyby. | ||
+ | |||
+ | |||
+ | |||
+ | Struktura XML se malinko změnila. V podstatě jsme ale jen atributy TransferData, TransferMode, TransferId, Version, Created a CreatedBy převedli na samostatné tagy (viz příklad v příloze). | ||
+ | |||
+ | *Pole TransferData musí obsahovat SKLADKAR. | ||
+ | |||
+ | *Pole TransferMode může obsahovat: | ||
+ | |||
+ | # '''Insert'''..pokud je povoleno zakládání nových karet | ||
+ | # '''Update'''..povoluje aktualizaci karet | ||
+ | # '''Transaction'''..povoluje globální transakci (doporučujeme jen pokud se aktualizuje menší počet karet, např. stovky) | ||
+ | # '''GUID=pole'''.. určuje jméno pole s identifikátorem záznamu (stejné pole se pak dává i do odpovědi) - výchozí je __ID nebo GUID | ||
+ | # '''PRODUCTCODE=pole'''..určuje jméno pole pro kód zboží (stejné pole se pak dává i do odpovědi) – výchozí je Kod nebo ProductCode | ||
+ | # '''TEMPLATEPRODUCTCODE=pole'''..určuje jméno pole pro kód vzorové karty pro nové zboží – výchozí je KodVzor nebo TemplateProductCode | ||
+ | |||
+ | Pole TransferId se zapisuje do logu při změně karet | ||
+ | |||
+ | Ostatní pole jsou spíše informativní. | ||
+ | |||
+ | |||
+ | |||
+ | Příklad vstupního souboru, který Sklad6 umí načíst najdete v příloze (KartyDATAPACKET.xml). Při komunikaci přes Skeleton je stejné XML (bez <?xml… ) dát jako součást zprávy UpdateDataset a výsledek pak vyčtete z odpovědi, která přijde – to co je v KartyResponse2.XML je tedy uloženo jako jeden z tagů ve standardní odpovědi Skeletonu. | ||
+ | |||
+ | |||
+ | |||
+ | Nová verze také už umožňuje definování vazby mezi MEMO parametry karty a novými kategoriemi karet. Nastavení se provádí pomocí '''Alt+F6/Nastavení parametrů karet pro kategorii''' menu pro definici stromu kategorií. V další verzi by pak mělo být dořešeno zobrazování parametrů karet na základě kategorií (pokud bude pro daný parametr definována alespoň jedna kategorie, tak se parametr bude zobrazovat jen v určených kategoriích). |
Aktuální verze z 22. 8. 2022, 16:19
Menu: Karty/Přehled karet
Klávesa: Alt + F5
Pi stisku klávesy Alt + F5 se vyvolá následující okno:
ve kterém si uživatel vybere činnost, kterou chce s kartami provádět:
Připravit pro přenos:
Při přenosu skladových karet lze určit, zda se mají do přenosových souborů ukládat individuální ceny (pokud ne, pak se přenosový soubor s individuálními cenami generuje prázdný) a pokud je program nakonfigurován pro práci s více čárovými kódy ve skladových kartách, pak lze také do přenosových souborů generovat soubor s čárovými kódy, které přísluší k vybraným kartám.
Exportovat indiv. ceny jen pro určená střediska - pokud je přepínač zapnutý, pak se exportují pouze ty individuální ceny, které buď mají v hlavičce individuální ceny vypnuté omezení na určená střediska nebo alespoň jedno středisko (písmeno) v seznamu vyhovuje seznamu středisek určených pro export.
Poznámka |
V exportu skladových karet (Alt+F5 v přehledu skladových karet) lze exportovat i poznámky ke skladovým kartám (ukládané v MEMO.BTR). Je možné určit, které druhy poznámek se mají přenášet (poznámky 1, 2, 3 nebo obrázky ke kartám). Při přenosu karet se spolu s poznámkou karty přenášejí také příznaky. Exportovaná data lze také komprimovat do přenosového souboru. Při exportu obrázku ke kartám se exportují jen odkazy na soubory s obrázky (nikoli samotné obrázky) |
Při exportu dat pro notebooky program exportuje pro každou skladovou kartu nákupní operace podle jednotlivých datumů spotřeby. Informace o datech spotřeby je pak vidět v přehledu nákupních operací dané skladové karty nebo např. v nabídce Info o zboží. Nastavení exportu je možné ovlivnit v dialogu pro nastavení přenosů. |
Technická poznámka |
Do souboru NTB_MEM se exportují také poznámky a obrázky ke skladovým kartám. Pomocí proměnné NtbExpDat,12 lze ovlivnit,které informace se mají exportovat: +1 - poznámky 1 |
Pomocí proměnné KarIdStred,0 lze určit interní "domácí" číslo střediska pro dané středisko. Hodnota musí být z rozsahu 0 až 255 a musí být odpovídat aktuálnímu středisku z číselníku středisek pro karty. Při přenosu skladových karet se pak provádí import karet jen pro střediska, která mají v přenosovém souboru dané středisko aktuální (pokud proměnná není určená nebo má zápornou hodnotu, tak se toto omezení neuplatňuje). |
Načíst ze souboru:
Pokud je v importu skladových karet (Přehled karet/Alt+F5/Načíst ze souboru) povolen import karet pouze z určeného střediska, tak se toto omezení uplatní také na individuální ceny, které mají v hlavičce omezen přenos pouze na určená střediska.
Poznámka |
Při importu skladových karet je možné v kartách pomocí klávesy Backspace přepnout celou sadu přepínačů pod volbou Opravit existující karty. |
Při importu skladových karet (Alt+F5), které mají zapnutý přepínač Centrálně řízené balení, se údaj Balení importuje i v případě, že není povolený import tohoto údaje pomocí přepínače v dialogu pro import (do dialogu je přidán nový přepínač Balení dle cent., kterým je možné zpracování příznakem označených karet ovlivnit) |
V importu skladových karet byly osamostatněny přepínače pro položky Minimum, Optimum, Maximum, Hmotnost, Záruka, Objem, Poznámka, Příznaky, Na paletě, Ve vrstvě, Obj.množství, Účt.předpis a Sp.cena (resp. doh.NC2/Sp.rabat). Tyto položky mají nyní samostatný přepínač, který povoluje import. (viz. předchozí obrázek) |
Při importu čárových kódů (se zapnutým přepínačem Importovat čárové kódy ze souboru) program postupuje takto: Postupně se prochází záznamy z přenosového souboru čárových kódů a čárový kód se zkusí dohledat v aktuální tabulce čárových kódů. Pokud není nalezen a současně je nalezena odpovídající skladová karta ze záznamu čárového kódu, tak se záznam z přenosového souboru přidá do aktuální tabulky čárových kódů (přidá se ke kartě). Pokud je záznam čárového kódu nalezen v aktuální databází, tak se aktualizace provádí jen pokud souhlasí kód zboží v přenosové i aktuální tabulce čárových kódů (může se tím změnit např. zda jde o čárový kód k balení nebo k MJ) a nebo se provádí pokud je v aktuální databázi nalezena i karta, na kterou se odkazuje záznam v přenosovém souboru (dojde tím k přesunutí čárového kódu na tuto jinou kartu). |
Pokud přenosový soubor neobsahuje samostatný soubor s čárovými kódy (byl vygenerován bez přenosu čárových kódů), pak je přepínač Importovat čárové kódy do souboru automaticky vypnut. |
Import ovlivňují také přepínače skladové karty |
Při importu se používají názvy importovaných polí, které mohou být ovlivněny názvy určenými ve strukturách souborů (musí být zapnutý příznak Jméno pole do dialogů). |
Pomocí přenosů skladových karet (Alt+F5 v přehledu karet) lze aktualizovat také položku Typ karty. Při změně karty se aktualizují také informace ve všech operacích skladové karty. Přenos typu karet lze zapnout v dialogu pro import na druhé podstránce, kterou lze vyvolat pomocí PageDn. |
Změna způsobu aktualizace čárových kódů při přenosu skladových karet (Alt+F5). Při přenosu karet nyní může dojít k přesunu čárového kódu k jiné skladové kartě, pokud je v přenosovém souboru čárový kód připojen k jiné kartě nebo je připojen k nově importované kartě. Navíc na druhé podstránce importu karet nová volba pro určení režimu importu karet:
|
Nový režim aktualizace čárových kódů při přenosu skladových karet doplnění bez kontroly karet. V tomto režimu jsou doplněny záznamy čárových kódů i v případě, že neexistuje odpovídající skladová karta v aktuální databázi (vhodné v případě, pokud jsou skladové karty přenášeny samostatně). Nastavuje se v dialogu pro načtení skladových karet po stisku klávesy PageUp. |
Přepínač Režim výpočtu JC určuje, zda se má v rámci importu karet přenášet také nastavení režimu výpočtu jednotkové ceny |
Klávesa | Popis |
---|---|
F2:Start | spustí načtení karet z přenosového souboru |
F5:Ukaž | zobrazí karty v přenosovém souboru, které se mají načíst |
F6:Vybrat soubor | umožní vybrat jednotlivé soubory, pro karty, zásoby a individuální ceny a čárové kódy (toto je také možné na kliknutí tlačítka za zadávacím polem) |
F8:Ulož nast. | uloží aktuální nastavení buď pouze pro právě přihlášeného uživatele nebo pro všechny uživatele - taktéž je možno obnovit původní nastavení |
F10:Kompr. soubor | je možno vybrat komprimovaný soubor (*.KRX, který obsahuje všechny výše zmíněné soubory) |
PageDown, PageUp | druhá strana s přepínači |
Technická poznámka | |
V importu karet ze souboru (Alt + F5 v kartách) je možnost pomocí proměnné KarImport,38 ovlivnit, zda je povolen import karet určených pro jedno středisko. Proměnná může mít následující hodnoty: | |
0 | import karet bez kontroly údaje střediska |
1 | import karet s možností volby, zda se budou nebo nebudou vybírat karty určené dle čísla střediska |
2 | podobně jako bod 1, uživatele mají volbu a středisko určené napevno (týká se pouze přidávání nových karet) |
3 | jako bod 2 (týká se přidávání i aktualizace karet) |
Proměnná KarImport,38 může být závislá na uživateli a aktuálním skladu | |
Pomocí proměnné KarImportN,0 s hodnotou 0 lze vypnout aktualizaci data založení skladové karty v rámci přenosu skladových karet (Alt+F5 v kartách) | |
Pomocí proměnné KarPrvNove s hodnotou 1 lze povolit, aby i uživatelé, kteří mají vypnuté přístupové právo 51 Právo zakládat nové skladové karty, mohli založit skladovou kartu v rámci přenosu skladových karet pomocí přenosových souborů skladových karet (např. KRX soubor) | |
Při přenosu skladových karet je možnost exportovat i importovat hlavičky individuálních cen. Přenos hlaviček je proveden pouze pokud jsou importovány také samostatné individuální ceny. Standardní jméno přenosového souboru hlavicek je CISSSL.BTR. Soubor může být také přenášen v rámci komprimovaného souboru KARTY.KRX spolu s ostatními přenosovými soubory a obsah souboru před importem je možné prohlížet pomocí F5 na jménu souboru. | |
Import skladových karet z přenosového souboru používá nyní nový transakční režim, který by měl méně blokovat ostatní uživatele při rozsáhlejších přenosech karet. Pomocí proměnné KarImport,2 lze tento transkační režim změnit 0: uzamčení SKLADINI (po dobu importu karet není možno evidovat doklady) | |
Úprava přenosu informací o čárových kódech v rámci komprimovaného přenosového souboru (KARTY.KRX). Pokud přenosový soubor obsahuje samostatný soubor s čárovými kódy, tak se tento soubor při importu rozbalí a použije (pokud i na straně příjemce existuje SKLADEAN.BTR). Pokud komprimovaný soubor neobsahuje soubor s čárovými kódy, pak je přenos čárových kódů automaticky vypnut. |
Technická poznámka | |
V nabídce pro import skladových karet z přenosového souboru je možnost zakázat změnu vybraných hlavních přepínačů. Pomocí proměnné KarImport, 0 lze určit povolené přepínače (hodnotu zadejte jako součet následujících hodnot): | |
Hodnota | Popis |
+1 | načíst individuální ceny ze souboru |
+2 | soubor hlaviček individuálních cen |
+4 | přidat nové karty |
+8 | opravit existující karty |
+16 | importovat čárové kódy |
+32 | režim importu čárových karet |
+64 | importovat poznámky |
+256 | poznámky 1 |
+512 | poznámky 2 |
+1024 | poznámky 3 |
+2048 | obrázky |
+4096 | šablony |
+8192 | alternativní karty |
Porovnání souboru:
Přenos karet do XML
Kód menu : 3,96
Program si v klasickém open dialogu vyžádá jméno XML souboru, který pak zkontroluje a načte z něj požadované změny v kartách nebo založí nové karty. U nových karet nechte pole Kod prázdné a do pole KodVzor určete jméno karty, která se má použít jako vzor. Při zakládání karet se automaticky nuluje EAN a EAN balení (můžete ale v XML poslat novou hodnotu). Před načtením údajů XML se také provádí načtení výchozích hodnot dle číselníku 177. Pokud kód určíte přímo v poli Kod, tak se pro novou kartu použije přímo vámi určený kód. Pokud karta s kódem existuje, tak se provádí jen aktualizace.
Akceptována je také aktualizace záznamů souvisejících s kartou v MEMO. Např. MEMOC2 aktualizuje běžné parametry karty v MEMO s číslem řádku 2. Pokud je údaj v MEMO ukládán ve více řádcích, tak je potřeba poslat každý údaj jako samostatné pole v DATAPACKET. Struktury v seznamu systémových struktur ale nemusíte mít založené (vše se vyčte ze jména pole).
Aplikace pak zobrazuje protokol o změnách v jednotlivých kartách, resp. pro každý váš záznam s požadavkem na změnu zobrazí jeden řádek v protokolu s informací, jak kartu zpracoval a v případě chyby vypíše důvod chyby. Pokud je při zpracování import u hlášena databázová chyba, tak je přenos přerušen. Pokud je požadováno zpracování v globální transakci, tak je celý přenos zrušen a vrácen do původního stavu (u nedatabázových chyb se pokračuje – např. pokud karta podle kódu nebyla nalezena). Pokud není požadováno globální zpracování transakcí, tak je v případě databázové chyby přenos také přerušen, ale dosud zapsané změny zůstanou uložené v databázi (a z přehledu vrácených záznamů se dozvíte, co se změnilo).
V protokolu je vidět stavový kód záznamu (StatusCode):
Hodnota | Popis |
0 | žádné změny nebyly potřeba |
1 | zaevidována nová karta (kód nové karty by měl být v poli kód) |
2 | karta aktualizována |
3 | chyba při zpracování záznamu, popis je v poli StatusTex |
Stejný protokol vrací i skladweb (jen ve formě datové XML struktury DATAPACKET). Vrací se zde __ID (nebo GUID pokud ve vstupním souboru použijete namísto __ID toto pole), Kod (nebo ProductCode pokud ve vstupním souboru použijete namísto Kod toto pole), StatusCode (výše popsané číslo), StatusText (jen chyby nebo varování).
Struktura Datapacket je v XML „zabalena“ ještě do <MaximTransferResponse>, který obsahuje:
- <Completed>1 .. pokud je úloha zpracována kompletně, 0 .. když došlo k přerušení zpracování
- <ResultMessage> ,, text chyby nebo varování (prázdné, pokud je vše OK)
- <RecordsInserted> <RecordsUpdated> <RecordsError> počet vložených, aktualizovaných či chybných záznamů. Záznamy bez změny nejsou započítané.
- <MasterTab> .. obsahuje strukturu DATAPACKET s protokolem zpracování jednotlivých záznamů ze vstupního požadavku.
Při komunikaci přes Skeleton je celé toto XML součástí odpovědi ve standardní struktuře Skeletonu (uzel pro komunikaci najdete pod UpdateDataset). Pokud dojde k závažné chybě (např. chybná struktura vstupního datapacketu), tak je namísto běžné odpovědi vrácena chyba ve struktuře SkeletonError, která v podstatě obsahuje jen popis chyby.
Struktura XML se malinko změnila. V podstatě jsme ale jen atributy TransferData, TransferMode, TransferId, Version, Created a CreatedBy převedli na samostatné tagy (viz příklad v příloze).
- Pole TransferData musí obsahovat SKLADKAR.
- Pole TransferMode může obsahovat:
- Insert..pokud je povoleno zakládání nových karet
- Update..povoluje aktualizaci karet
- Transaction..povoluje globální transakci (doporučujeme jen pokud se aktualizuje menší počet karet, např. stovky)
- GUID=pole.. určuje jméno pole s identifikátorem záznamu (stejné pole se pak dává i do odpovědi) - výchozí je __ID nebo GUID
- PRODUCTCODE=pole..určuje jméno pole pro kód zboží (stejné pole se pak dává i do odpovědi) – výchozí je Kod nebo ProductCode
- TEMPLATEPRODUCTCODE=pole..určuje jméno pole pro kód vzorové karty pro nové zboží – výchozí je KodVzor nebo TemplateProductCode
Pole TransferId se zapisuje do logu při změně karet
Ostatní pole jsou spíše informativní.
Příklad vstupního souboru, který Sklad6 umí načíst najdete v příloze (KartyDATAPACKET.xml). Při komunikaci přes Skeleton je stejné XML (bez <?xml… ) dát jako součást zprávy UpdateDataset a výsledek pak vyčtete z odpovědi, která přijde – to co je v KartyResponse2.XML je tedy uloženo jako jeden z tagů ve standardní odpovědi Skeletonu.
Nová verze také už umožňuje definování vazby mezi MEMO parametry karty a novými kategoriemi karet. Nastavení se provádí pomocí Alt+F6/Nastavení parametrů karet pro kategorii menu pro definici stromu kategorií. V další verzi by pak mělo být dořešeno zobrazování parametrů karet na základě kategorií (pokud bude pro daný parametr definována alespoň jedna kategorie, tak se parametr bude zobrazovat jen v určených kategoriích).