Supermarket - Dokumentace

Obsah

Základní informace

Webové rozhraní Supermarket

Vytvoření a konfigurace supermarketu

Vytvoření supermarketu

Definice lokací

Přehled Supermarketů

Celkový stav všech skladů

Sekce Obsah

Sekce Detail

Přehled dílů

Dosledovatelnost

Hledání ve skladě

Hledání skladových operací

Databázová část

Tabulky pro Supermarket

dbo.Store

dbo.Store_Item

dbo.Store_Location

dbo.Store_Location_Design

dbo.Store_Location_Item_State

dbo.Store_Location_ObjectType

dbo.Store_Requests

dbo.Store_Requests_ResultState

Základní informace

„Supermarket“ je speciální mezioperační sklad výroby, kde jsou uskladněny racky, které obsahují desky plošných spojů (DPS) po strojním osazení SMD, THT součástek, tedy po dokončení výrobní operace v části výroby s názvem „Front end“.

V xTrace jsou takovéto produkty převážně označeny prefixem „S_“ a dále názvem produktu s tím, že po zpracování na pracovišti AOI (Automatic Optical Inspection) a Radiál 2 existuje spojení SN dílu (xTrace 2D kód na DPS) s rackem.

Každý dokončený rack po AOI, RAD2 je následně umístěn na paletové místo, tedy paletu a na tabuli je smazatelnou fixou zaznamenána lokace racku, název produktu a počet. Toto je pak nutné při každém vložení/vybrání ze/do supermarketu manuálně aktualizovat.

Před dalším zpracováním „S_“ produktu na ručním, fastonování atd., tedy na „Back Endu“ a to jejich pře děděním na „H_“ nebo „Finál“ jsou tyto tabule použity k identifikaci lokace, tedy kde se potřebný vstupní produktu nachází a při vybrání aktualizovat počet daného produktu na tabuli.

Manuální zápis na tabuli fixem je zdržující operace jak pro obsluhu, která zápis provádí, tak v případě následného čtení ručního zápisu na více tabulích.

Cílem digitalizace supermarketu je tento manuální zápis na tabuli odstranit a přehled mezioperačního skladu s přesnou lokací přenést do xTrace.ů

Tento dokument popisuje veškeré postupy, které bude uživatel pro práci se supermarketem potřebovat znát.

Webové rozhraní Supermarket

Vytvoření a konfigurace supermarketu

Vytvoření supermarketu

Obsah obrázku text Popis byl vytvořen automaticky

Definice lokací

Obsah obrázku stůl Popis byl vytvořen automaticky

Design skladu

Přehled Supermarketů

Celkový stav všech skladů

Základní stránka přehlůedu Supermarketů. Obsahuje základní informace:

Obsah obrázku text, interiér Popis byl vytvořen automaticky

Sekce Obsah

V této sekci jsou k dispozici základní informace o objektech v daném supermarketu:

Dále jsou zde v nástrojové liště v horní části sekce nástroje pro:

Obsah obrázku text, interiér, snímek obrazovky Popis byl vytvořen automaticky

Sekce Detail

Podobné jako sekce obsah s tím rozdílem, že obsahuje detailnější informace o objektech

Obsah obrázku stůl Popis byl vytvořen automaticky

Přehled dílů

V této sekci se nachází základní informace o veškerých produktech na jednotlivých skladech, jedná se o dynamickou tabulku, kterou si uživatel může přizpůsobit dle aktuální potřeby.

Dosledovatelnost

Zde se nachází všechno co se týká zpětné dosledovatelností operací v rámci supermarketu. Konkrétně pak dosledovatelnot hledání ve skladě a hledání skladových operací.

Hledání ve skladě

Vyhledávání na podobném principuz jako např. Rodný list výrobku, kdy si zadáme vstupní parametry dle potřeby a najdeme si informace o supermarketu dle daného časového období atd.

Po vyhledání se nám zobrazí informace o supermarketu podle uživatelem zadaných parametrů. K těmto skladovým operacích zde nalezneme informace o:

Hledání skladových operací

Vyhledávání na podobném principu jako např. Rodný list výrobku, kdy si zadáme vstupní parametry dle potřeby a najdeme si informace o skaldových oepůrací (zaskladnění, vyskladnění atd.) dle daného časového období atd.

Obsah obrázku stůl Popis byl vytvořen automaticky

Nastavení skriptu pracovišť

Skript pracoviště v sobě musí obsahovat modul PART_START, při vkládání dílů do racku, a modul RACK, který se stará o práci s RACKy. Požadavek na zaskladnění do supermarketu se odešle po naplnění či automatickém/manuálním dokončení RACKu a systémové pracoviště CHRON v nastavitelné časové periodě tyto požadavky vyřizuje. Nejnižší nastavitelný časový úsek je 1 minuta, na kterou je momentálně pracoviště u vás nastaveno.

Jakmile je požadavek na naskladnění RACKu vyřízen, RACK se reálně zobrazí na webu ve skladu a podle priority lokací a skladů systém zvolí lokaci s nejvyšší prioritou (priorita 1 je nejvyšší, priorita 99 nejnižší). Při shodné prioritě se systém rozhoduje na základě pořadí vytvoření locakace skladu.

Ve skriptu systémového pracoviště CHRON na záložce CoreModules je nový modul STORE_REQUESTS_EXECUTOR, kde se dá specifikovat jak často se požadavky budou vyřizovat. Ve skriptu každého pracoviště na záložce CoreModules je v modulu WORKPLACE_SETTING nový nastavitelný parametr StorageAction, kterým se dá definovat, jak má xTrace reagovat na pracovišti při načtení RACKu ze skladu.

Nastavení supermarketu u produktu – Procesy výroby

Pro zaskladňování do supermarketu je nutné mít u produktu definováno, do jakého supermarketu se po průchodu jakým pracovištěm má zaskladnit. Tohle nastavení se definuje na webu:

Databázová část

Tabulky pro Supermarket

Název Popis
dbo.Rack_Type Nový číselník typů racků
dbo.Rack Rozšíření číselníku racků o typ racku
dbo.t_Location Číselník lokací
dbo.Store Číselník mezioperačních skladů - nový
dbo.Store_Location Přiřazení lokací do mezioperačního skladu
dbo.Store_Design Nastavení rozložení mezioperačního skladu pro účely vizualizace
dbo.Store_Item Obsah mezioperačního skladu
dbo.Store_Requests Požadavky na sklad
dbo.Store_Documents Pohyby na skladě pro zpětnou dosledovatelnost

Číselník typů racků (dbo.Rack_Type)

Tento číselník zavedeme, abychom mohli rozdělit racky na různé typy.

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
RackTypeCode VARCHAR(20) NE Kód/označení typu. Musí být unikátní
Name VARCHAR(100) NE Název / popis
Description VARCHAR(500) ANO Popis / poznámka
StorageSize INT NE Velikost pro uskladnění (1)
Deleted BIT NE Příznak smazáno

Z popisu zadání vyplývá požadavek na evidenci 3 různých typů racků.

Klíč Kód Název Poznámka
1 STANDARD SMT/AX/RAD Vstup/výstup dílu je automatický na stroji a je to standardní magazín, kde jsou díly nad sebou ve slotech/ pozicích
2 ESD ESD bedna Pro produkty, které mají routing BRD-SMT nebo BRD – pracoviště na back endu
3 METRO Metro Pojízdný vozík na větší množství dílů. Mohou být vloženy i díly různého produktu

Dále je potřeba věnovat pozornost parametru „Velikost pro uskladnění“. Tímto parametrem se bude definovat kolik jednotek z celkové dostupné velikosti skladu-lokace ubereme

Číselník lokací (dbo.t_Location)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
LocationCode VARCHAR(20) NE Kód/označení lokace. Musí být unikátní
Name VARCHAR(100) NE Název lokace / popis
Description VARCHAR(500) ANO Popis / poznámka
Deleted BIT NE Příznak smazáno

Číselník mezioperačních skladů (dbo.Store)

Uvedeny sloupce, které se přidají

Název sloupce Typ NULL Poznámka
OID BIGINT NE ID skladu
StoreCD VARCHAR(20) NE Kód skladu. Musí být unikátní
StoreName VARCHAR(100) NE Název
DimensionX INT NE Rozměr X (šířka)
DimensionY INT NE Rozměr Y (délka)
DimenzionZ INT NE Rozměr Z (výška/patro)
Deleted BIT NE Příznak smazaný

Nastavení lokací v mezioperačním skladu (dbo.Store_Location)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
StoreID BIGINT NE ID mezioperačního skladu
LocationID BIGINT NE ID lokace
LocationSize INT NE Velikost lokace
UsedSize INT NE Obsazeno (velikost-obsazeno=volná kapacita)
MixRacks BIT NE Jestli může lokace obsahovat různé typy racků (NE)
MixOutCarriers Jestli může lokace obsahovat různé typy balení nebo jen jedno (NE)
MixProducts Jestli může lokace obsahovat různé produkty a je jedno jestli jsou v racku nebo je to balení, díl nebo panel (bere se panelový produkt)

Nastavení obsahu lokace ve skladu (dbo.Store_Location_Design)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
StoreLocationID BIGINT NE ID lokace ve skladu
ObjectType BIGINT NE ID typu objektu, který může být v lokaci uložen. Nelze mixovat!
Priority INT NE Priorita použití skladu pro operaci naskladnění. 1 má vyšší prioritu jak 2
UsedSize INT NE Obsazeno

Priorita pro naskladnění bude využívána v rozhodovacím procesu, kterou volnou lokaci nabídne modul pro naskladnění, když najde více vhodných lokací pro naskladňovaný požadavek.

Typy možných objektů, které se mohou ve skladě vyskytovat

ObjectType Popis
1 Díl
2 Panel (nerozpadnutý)
3 Rack (RacTypeID upřesňuje jaký typ)
4 Balení (OutCarrierDefinitionID upřesňuje jaké balení)

Nastavení rozložení lokací ve skladu (dbo.Store_Design)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
StoreLocationID BIGINT NE ID lokace v mezioperačním skladu
PosX INT NE Pozice X ve skladu podle nastavené DimensionX
PosY INT NE Pozice Y ve skladu podle nastavené DimensionY
PosZ INT NE Pozice X ve skladu podle nastavené DimensionZ
PosNotUsed BIT NE Pozice ve skladě se nepoužívá (volné místo)

Adresa lokace ve skladu je pak X-Y-Z, možná varianta je X-Y s tím, že Z=0 (přízemí)

Příklady nastavení lokací na mezioperačním skladu

Minimální nastavení rozložení je 1 x 1

Každé “buňce” pak bude možné nastavit lokaci. Více „buněk“ může mít nastavenou stejnou lokaci, přičemž definovat by se měly tak, aby byly buňky bedle sebe a tvořily pomyslný čtverec nebo obdélník, viz níže v ukázce.

Příklad rozložení

Y X
1 1 2 3 4 5 6 7 8 9
2 LOKACE A VOLNÉ MÍSTO LOKACE C VOLNÉ MÍSTO LOKACE E LOKACE G
3
4
5 LOKACE B LOKACE D LOKACE F
6
7

Vhodnou kombinací lze dosáhnou požadovaného rozložení skladu, který se blíží reálnému rozmístění lokací ve výrobě.

Obsah mezioperačního skladu (dbo.Store_Item)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč
StoreID BIGINT NE Klíč mezioperačního skladu
StoreLocationID BIGINT ID lokace v mezioperačním skladu
SourceWorkPlaceID BIGINT ANO Klíč pracoviště, ze kterého pochází díl, rack, balení
ObjectType BIGINT NE Typ objektu
PartID BIGINT ANO ID dílu
PanelID BIGINT ANO
RackID BIGINT ANO ID racku
OutCarrierID BIGINT ANO ID balení
DT DATETIME NE Datum a čas vložení do skladu
StorageTimeDays INT NE Doba uskladnění ve dnech (výpočet) nebo-li stáří zásoby
ItemSize INT NE Velikost jednotky podle nastavení (Part a panel má vždy 1)
State BIGINT NE Stav objektu ve skladu

Stavy objektu ve skladu

Stav Název Popis
1 Naskladněno Objekt je umístěn ve skladě na lokaci
2 Čeká na potvrzení požadavku naskladnění Tento stav je přiřazen, když přišel požadavek na naskladnění a není ještě operátorem – skladníkem proveden - potvrzen
3 Čeká se na potvrzení požadavku na vyskladnění Tento stav je přiřazen, když přišel požadavek na vyskladnění a není ještě operátorem – skladníkem proveden - potvrzen

Stavy 1 a 2 může objekt dočasně nabývat než operátor potvrdí skladovou operaci.

Požadavky řízení skladu (dbo.Store_Requests)

Název sloupce Typ NULL Poznámka
OID BIGINT NE Klíč požadavku
DT BIGINT NE Časová známka
ParentID BIGINT ANO ID nadřazeného požadavku
RequestType CHAR NE Typ požadavku (naskladnění, vyskladnění, přeskladnění)
IsComfirmed BIT NE 0=není potvrzeno, 1=je potvzeno
StoreID BIGINT NE ID požadovaného skladu
LocationID BIGINT ANO ID požadované lokace
SourceWorkPlaceID BIGINT NE ID pracoviště
UserID BIGINT NE ID uživatele
ObjectType BIGINT NE Typ objektu
ObjectID BIGINT NE ID objektu
ResultState BIGINT NE Stav požadavku – výsledek zpracování
ResultMessage VARCHAR ANO Zpráva
RequestType Popis
1 Naskladnění
2 Vyskladnění
2 Přeskladnění
ResultState Popis
0 Ve frontě na vyřízení
1 Vyřízeno (ResultMessage=“OK“)
2 Chyba (ResultMessage obsahuje zprávu)

Zaskladňovací a vyskladňovací služba

Zaskladňování jako takové je prováděno službou běžící na aplikačním serveru. Jedná se o standardní xTrace službu, která spouští skript pracoviště CHRON, v němž se nachází coreový modul STORE_REQUESTS_EXECUTOR.

STORE_REQUEST_EXECUTOR

Parametry modulu:

Po uplynutí periody služba zjistí, zda jsou v tabulce dbo.Store_Requests nějaké požadavky se stavem ResultState = 0. Pokud ano, tak si do paměti uloží OID všech těchto requestů a začne na všechny tyto hodnoty volat proceduru sg_Store_Item_Execute, čímž dochází k faktickému vyskladnění nebo zaskladnění daných objektů.

dbo.Store_Item_Execute

Vstupní parametry:

Výstupní parametry:

Popis funkce:

  1. Podle předaného vstupního parametru StoreRequestID se dohledají další potřebné informace z tabulky dbo.Store_Requests
    1. Pokud neexistuje request s takovým OID, tak se procedura ukončuje
  2. Pokud se jedná o typ požadavku Vyskladnění, jedná se o rack a požadavek nemá vyplněn StoreID
    1. Pokud ano, tak zjistí StoreID pomocí skladové lokace StoreLocation a klíče daného racku
  3. Pokud ani v tuto chvíli nebylo nalezeno žádné StoreID, tak se daný požadavek vyřídí se stavem ResultState=999 a ResultMessage=’Sklad nenalezen‘
  4. Dále se řídí logika procedury typem požadavku neboli RequestType a typem objektu neboli ObjectTypeID
    1. 1