Zákaznická rozšíření UI

Tento text popisuje mechanizmus pro rozšíření UI specifická pro zákazníka a jednotlivá dosud implementovaná rozšíření. To, jaká rozšíření jsou použita pro kterého zákazníka je nastaveno na serveru. Pokud je vyžadovaná změna, kontaktujte technickou podporu.

Nástroje - tools

V TracePRO lze nadefinovat nástroje specifické pro jednotlivé obrazovky. Nástroje se vyznačují tím, že je musí uživatel vyvolat manuálně. Typicky nástroj zobrazí nějaké uživatelské rozhraní, které může případně modifikovat obrazovku, ze které byly vyvolané.

10000201000002BC0000002C83FA468DE9B26879_png

Háčky - hooks

Oproti nástrojům, háčky se vyvolají samy při nějaké události a různé události mají různé parametry - naprosto specifické pro tu událost.

Existující nástroje

pgeditorder_tool_length_to_count

Tento nástroj umožňuje přepočítat délku na počet multipanelů. Pokud se vyrábějí např. LED pásky a zákazník objednává délku, potřebujeme znát počet multipanelů, počet kusů, a případně počet kotoučů, na které se pásky nakonec navinou. Tento nástroj umožňuje zadat délku a parametry přepočtu (PCB_PER_PANEL, LENGTH_PER_PCB, LENGTH_PER_REEL), a spočítat počet multipanelů, kusů a kotoučů, a spočtené údaje vložit zpět do objednávky jako parametry a texty návodky.

100002010000026C000001817D5D2C578D0DF3DF_png

Parametry Délka na položku, PCB v panelu a Délka na kotouč se vezmou z parametrů výrobní objednávky LENGTH_PER_PCB, PCB_PER_PANEL, LENGTH_PER_REEL. Délka na kotouč není povinná. Po zadání Požadované délky se spočítají počty položek, panelů a kotoučů. Tlačítky pak můžete vložit spočtená data nebo texty do objednávky. Pozor! Pokud zde změníte některý ze vstupních parametrů (Délka na položku, PCB v panelu, Délka na kotouč), aktualizují se i v objednávce. Pokud nechcete počítat počet kotoučů, nechte v Délce na kotouč 0. Pamatujte, že text, který se přidává do návodky k výrobní objednávce, se vždy jen přidává, nikdy se nemaže.

pgreportcounts_tool_report_reel

Souvisí s pgeditorder_tool_length_to_count. Zatímco nástroj pgeditorder_tool_length_to_count nastaví parametry výrobní objednávky pro přepočet z kotoučů na kusy, pgreportcounts_tool_report_reel pomůže provést vlastní přepočet. Slouží k použití na obrazovce PgReportCounts. Funguje tak, že zadáte počet kotoučů, a nástroj podle toho odvede počet kusů.

100002010000011D00000115A3D6D4C486C2278A_png

Existující háčky

edit-order: editace výrobní objednávky / verze dokumentace

Háčky pro tuto událost spočívají v tom, že se automaticky přidají nějaké parametry do objednávky, pokud tam ještě nejsou. Konkrétně existují funkce:

  • ensure_customer_cat1

  • ensuse_customer_cat1_pcbperpanel

Tyto funkce zajistí, že v objednávce budou nastavené parametry: CUSTOMER a CAT1, nebo CUSTOMER, CAT1 a PCB_PER_PANEL.

10000201000001A7000000F0538BC0B6C6E37A29_png

Nastavení

Nástroje - tools

V TracePRO lze nadefinovat nástroje specifické pro jednotlivé obrazovky. Nástroje se vyznačují tím, že je musí uživatel vyvolat manuálně. Všechny nástroje, které jsou k dispozici musí být definované v modulu ctools. Každý nástroj je „callable“, které bere 2 parametry:

  • parent - okno (potomek PageBase), které nástroj vyvolalo

  • evt - wx událost

Typicky nástroj zobrazí nějaké uživatelské rozhraní, které může případně modifikovat parent. Pro jednu obrazovku může být jen jeden nástroj. Pokud je potřeba více nástrojů, tak se stejně bude definovat jen jeden, který bude ve skutečnosti okno na výběr nástroje.

10000201000002BC0000002C83FA468DE9B26879_png

Nástroje pro obrazovky se nastavují v souboru parameters.ini na serveru, v sekci [client]. Např.:

[client]

tool-pageeditorder=pgeditorder_cust1_tool

Tohle znamená, že na obrazovce PageEditOrder bude po kliknutí na tlačítko Nástroje na liště nástrojů zavolaná funkce pgeditorder_cust1_tool.

Háčky - hooks

Oproti nástrojům, háčky se vyvolají samy při nějaké události a různé události mají různé parametry - naprosto specifické pro tu událost. Definované jsou v hooks. Jejich zaháčení musí být provedeno přímo v kódu u jednotlivých událostí. Definice háčků, které se mají použít pro konkrétní událost jsou pak v souboru parameters.ini na serveru, v sekci [client]. Např.:

[client]

hooks_edit-order=ensure_customer_cat1_pcbperpanel

Což znamená, že při události edit-order se vyvolá funkce ensure_customer_cat1_pcbperpanel. Funkce může, ale nemusí mít uživatelské rozhraní.