Integrace s ERP - detaily importu

Tento dokument popisuje technické detaily importu dat z ERP systémů do TracePRO, zejména to, jaká data se ukládají do tabulek ProductionOrder (výrobní objednávka) a OperationParam (parametry objednávky a operací).

Obecný popis importovaných dat

Import z ERP zajišťuje synchronizaci výrobních objednávek včetně výrobního postupu, parametrů a kusovníku. Při každém importu se provede sloučení dat z ERP s daty v TracePRO.

ProductionOrder - výrobní objednávka

Tabulka ProductionOrder uchovává základní data výrobní objednávky:

Pole ProductionOrder

Pole

Typ

Popis

erp_ref

string

Jedinečný identifikátor objednávky v ERP systému.

item

string

Jméno / označení vyráběné položky (artiklu).

item_name

string

Název / popis vyráběné položky.

amount

int

Objednané množství.

customer

string

Název zákazníka.

status

int

Stav objednávky: NOTSTARTED, ACTIVE, FINISHED, CANCELLED.

flags

int

Příznaky ovlivňující chování systému (viz níže).

mptp

int

Typ panelizace a značení barkódů (0-5, viz dokumentaci panelizace).

mpcount

int

Počet PCB v multipanelu.

barcode_mp

string

Regulární výraz pro barkód multipanelu.

barcode_pcb

string

Regulární výraz pro barkód jednotlivé PCB.

vd

string

Verze dokumentace (odkaz na výkres / dokumentaci).

cat1

string

Kategorie 1: "A" = automotive, "N" = normální výroba.

cat2

string

Kategorie 2 (např. vzorková vs. sériová výroba).

cat3

string

Kategorie 3 (doplňková kategorizace).

dt0

datetime

Datum a čas prvního přechodu do stavu ACTIVE.

dt1

datetime

Datum a čas přechodu do koncového stavu (FINISHED apod.).

Příznaky objednávky (flags):

  • PRODORDER_FLAG_LOOSE_OPS - Povoluje odvedení operací s číslem operace, které není v postupu.

  • PRODORDER_FLAG_BOXES - Objednávka obsahuje operaci balení do krabic.

  • PRODORDER_FLAG_LIMIT_AMOUNT - Nepřekračovat objednané množství.

  • PRODORDER_FLAG_ERP_FORCE_UPDATE - Umožní aktualizaci i jinak zamčené objednávky.

  • PRODORDER_FLAG_UPDATE_EXT1 - Speciální příznak (např. pro automatizační objednávky).

OperationParam - parametry objednávky a operací

Tabulka OperationParam uchovává rozšířené parametry ve formátu klíč-hodnota. Parametr může být navázán na celou objednávku (op = NULL) nebo na konkrétní operaci (op = číslo operace).

Parametry úrovně objednávky (op = NULL):

Parametry objednávky

Klíč

Popis

INFO

Textová poznámka / komentář k objednávce z ERP.

VD - nepoužívá se

Verze dokumentace (zkopírováno i do pole vd).

DOKUMENTACE

Odkaz na dokumentaci (alternativní pole, Helios).

label - nepoužívá se

Název / popis artiklu.

CLIENT_WARNINGS

Varování pro klienta, zobrazí se v terminálech. Např. IPC třída, nebo příznaky typu CC.

CUSTOMER_ORDER_ID

Číslo zákaznické objednávky.

STICK_TO_ORDER

Zda se má materiál striktně vázat na objednávku.

AUTOCREATE_ITEM

Automaticky vytvořit položku při prvním výskytu.

pcb_rows

Počet řad PCB v multipanelu.

pcb_columns

Počet sloupců PCB v multipanelu.

mask_dps

Maska pro barkód DPS (formát nebo název pravidla).

min_dps

Minimální hodnota barkódu DPS.

max_dps

Maximální hodnota barkódu DPS.

mask_panel

Maska pro barkód panelu.

min_panel

Minimální hodnota barkódu panelu.

max_panel

Maximální hodnota barkódu panelu.

pre_desk

Prefix barkódu PCB (DPS).

suf_desk

Suffix barkódu PCB (DPS).

pre_panel

Prefix barkódu panelu.

suf_panel

Suffix barkódu panelu.

Parametry úrovně operace (op = číslo operace):

Parametry operace

Klíč

Popis

tm_prep_operator

Přípravný čas obsluhy v sekundách.

tm_prep_machine

Přípravný čas stroje v sekundách (Helios).

tm_operator

Vlastní výrobní čas obsluhy v sekundách.

tm_machine

Vlastní výrobní čas stroje v sekundách (Helios).

tm_end_operator

Čas ukončení obsluhy v sekundách (Helios).

tm_end_machine

Čas ukončení stroje v sekundách (Helios).

tm_between_ops

Čas čekání po operaci v sekundách (např. schnutí).

tm_between_ops_max

Maximální povolený čas čekání po operaci v sekundách.

stddocs

Odkaz na dokumentaci operace.

BOX_SIZE

Počet kusů v krabici pro operaci balení.

PROGRAM

Název hlavního programu operace.

PROGRAM_<přípona>

Programů může být libovolné množství.

Helios

Helios ukládá výrobní příkazy v databázi MSSQL. Import probíhá v modulu tracecar.modules.helios (soubor hmodel.py).

Mapování polí ProductionOrder

Pole TracePRO

Zdroj v Heliosu

Poznámka

erp_ref

TabPrikaz.Rada + TabPrikaz.Prikaz

Kombinace řady a čísla výrobního příkazu.

item

TabKmenZbozi.RegCis (bez skupiny položek)

Registrační číslo položky.

amount

TabPrikaz.kusy_zad

Zadané množství kusů.

status

TabPrikaz.StavPrikazu

20 = uvolněný (NOTSTARTED), 50 = ve výrobě (ACTIVE).

mptp

TabKmenZbozi_EXT._mptp

Uživatelsky definované pole zboží.

mpcount

TabKmenZbozi_EXT._mpcount

Uživatelsky definované pole zboží.

barcode_mp

TabKmenZbozi_EXT._barcode_mp

Regulární výraz pro barkód panelu.

barcode_pcb

TabKmenZbozi_EXT._barcode_pcb

Regulární výraz pro barkód PCB.

flags (LIMIT_AMOUNT)

TabKmenZbozi_EXT._limit_amount

Příznak omezení množství.

vd

TabZakazModif.Kod nebo TabZakazModif.Nazev

Přes TabZakazModif.ID == TabPrikaz.IDZakazModif.

customer

TabCisOrg.Nazev

Přes TabCisOrg.CisloOrg = TabZakazka.Prijemce a TabZakazka.ID == TabPrikaz.ID_OBJ.

cat1

Vlastnost CAT1 v parametrech objednávky

Nastavuje se přes parametr, pokud je přítomen.

cat2

Vlastnost CAT2 nebo automaticky

X pro vzorkové objednávky (řada X…) nebo objednávky ≤ 100 panelů.

cat3

Vlastnost CAT3 v parametrech objednávky

Nastavuje se přes parametr, pokud je přítomen.

Mapování parametrů OperationParam

Parametry na úrovni objednávky (op = NULL):

Klíč

Zdroj v Heliosu

Poznámka

INFO

TabPrikaz.Poznamka

Textová poznámka výrobního příkazu.

VD

TabZakazModif.Kod nebo TabZakazModif.Nazev

Verze dokumentace.

DOKUMENTACE

TabZakazModif.Kod nebo TabZakazModif.Nazev

Odkaz na dokumentaci.

CUSTOMER_ORDER_ID

TabZakazka_EXT._TretiNazev nebo TabPrikaz.NavaznaObjednavka

Číslo zákaznické objednávky.

STICK_TO_ORDER

TabKmenZbozi_EXT._stick_to_order

Materiál vázaný na objednávku.

AUTOCREATE_ITEM

TabKmenZbozi_EXT._autocreate_item

Automatické vytvoření položky.

CLIENT_WARNINGS

IPC 610 klasifikace artiklu

IPC610_CLASS3 pro třídu 1, IPC610_CLASS1 pro třídu 2.

Parametry na úrovni operace jsou čteny z pole Poznamka (popis operace) pomocí speciálních prefixů v textu (viz sekci níže).

Parametry extrahované z poznámky operace

Helios nemá pro všechny TracePRO parametry dedikovaná pole, proto jsou některé parametry zakódovány přímo v textovém poli Poznamka (popis operace).

Varování

Obsah pole Poznamka musí být čistý text. RTF formátování způsobí nesprávné parsování parametrů.

Podporované prefixy (nerozlišují velikost písmen; oddělovač před typem může být mezera, pomlčka nebo podtržítko):

  • program: <název> → parametr PROGRAM

  • program smd: <název> → parametr PROGRAM_SMD

  • program spi: <název> → parametr PROGRAM_SPI

  • program reflow: <název> → parametr PROGRAM_REFLOW

  • program dek: <název> → parametr PROGRAM_DEK

  • program aoi: <název> → parametr PROGRAM_AOI

  • tracemat: <ARTIKL>:<MNOŽSTVÍ> → přidá materiál k operaci

  • tracepro: unscanned → nastaví příznak operace Nemusí být načtená

  • tracepro: parallel → nastaví příznak operace Nekontrolovat předchozí operace

  • tracepro: <KLÍČ>:<HODNOTA> → nastaví libovolný parametr operace

Příklad textu operace:

Osazování SMD:
Program smd: 778-3283-001_top

Počet SMD součástek: 74
tracepro:parallel
tracepro:BOX_SIZE:20

Výsledkem bude: PROGRAM_SMD = 778-3283-001_TOP, BOX_SIZE = 20, příznak Nekontrolovat předchozí operace.

Časy operací

Časy jsou extrahované z polí výrobní operace a převedeny na sekundy:

Parametr TracePRO

Zdroj v Heliosu

Jednotka zdroje

tm_prep_operator

TBC_Obsluhy x TBC_Obsluhy_T

0=s, 1=min, 2=hod

tm_prep_machine

TBC x TBC_T

0=s, 1=min, 2=hod

tm_operator

TAC_Obsluhy x TAC_Obsluhy_T

0=s, 1=min, 2=hod

tm_machine

TAC x TAC_T

0=s, 1=min, 2=hod

tm_end_operator

TEC_Obsluhy x TEC_Obsluhy_T

0=s, 1=min, 2=hod

tm_end_machine

TEC x TEC_T

0=s, 1=min, 2=hod

Příznaky operací

Příznaky jsou nastavovány automaticky podle čísla úkonu (act):

  • OP_FLAG_PARALLEL (Nekontrolovat předchozí operace): úkony 1010, 2301, 2302, 2501, 2701, 2702, 2800, 2801, 2802, 3100-3103.

  • OP_FLAG_SPLITPANEL (Rozdělení panelu): pracoviště 5101-5104.

Kusovník (BOM)

Kusovník se kopíruje z tabulky TabPrKVazby. Typ položky kusovníku:

  • MAT (Materiál) - standardní materiál, nesleduje se v TracePRO.

  • MAT_PREP (Materiál/Setup) - materiál vyžadující načtení šarže.

  • TOOL (Nástroj) - přípravky a nástroje.

Rozlišení MAT vs. MAT_PREP se řídí příznakem _mat_prep v datech kusovníku.

Helios a TPWR varianta

Zákaznická varianta tracecar_tpwr rozšiřuje import o:

  • article_import.py - import dat artiklů z Heliosu.

  • prod_order.py - zákaznicky specifická logika výrobních příkazů.

QAD

QAD je ERP systém firmy NVision (varianta tracecar_nvg). Import je implementován v souboru tracecar_nvg/qad/qadimport.py.

QAD exportuje data do souborů, které TracePRO periodicky načítá. Zdrojové tabulky QAD:

  • wo_mstr - hlavička výrobní objednávky

  • wr_route - výrobní postup (routing)

  • wod_det / NVWODR_DET - kusovník objednávky

  • wc_mstr - pracoviště

  • pt_mstr - artikly

Mapování polí ProductionOrder

Pole TracePRO

Zdroj v QAD

Poznámka

erp_ref

wo_mstr (wo_lot)

Číslo výrobní objednávky.

item

wo_mstr (položka)

Číslo vyráběného artiklu.

item_name

pt_mstr.pt_desc1

Popis artiklu.

amount

wo_mstr (objednané množství)

Objednané množství.

customer

wo_mstr (zákazník)

Název zákazníka.

status

Stav objednávky z QAD

Převod na TracePRO stavy.

flags (LOOSE_OPS)

Vždy nastaveno

QAD importuje vždy s příznakem PRODORDER_FLAG_LOOSE_OPS.

vd

wo_mstr[11] (nvwosk_vd)

Verze dokumentace.

mptp

pt_mstr.pmsk_size_all

Typ panelizace odvozený z hodnoty pmsk_size_all.

mpcount

pt_mstr.pt_ord_mult

Počet PCB v multipanelu; nastavuje se pouze pokud pmsk_xlog03 = TRUE.

barcode_mp

Generováno z prefixů nebo masek

Zákaznicky specifická logika (COMAP, KOSTAL, WITTE, 2N, CEMMTHOME, aj.).

barcode_pcb

Generováno z prefixů nebo masek

Zákaznicky specifická logika.

cat1

pt_mstr.automotive

"A" pokud je artikl automotive, jinak "N".

cat2

wo_mstr[7]

Kategorie z hlavičky objednávky.

dt0

Automaticky

Nastaví se při první aktivaci objednávky.

Mapování parametrů OperationParam

Parametry na úrovni objednávky (op = NULL):

Klíč

Zdroj v QAD

Poznámka

INFO

wo_mstr[8]

Textová poznámka objednávky.

VD

wo_mstr[11] (nvwosk_vd)

Verze dokumentace (zkopírováno i do pole vd).

PRODUCT_VER

nvwosk_prod_vers

Verze produktu.

SW_VER

nvwosk_sw_vers (část před |HW:)

Verze software.

HW_VERSION

nvwosk_sw_vers (část za |HW:)

Verze hardware (pouze pokud nvwosk_sw_vers obsahuje |HW:).

DEVIATION

wo_mstr[25]

Odkaz na dokument odchylky.

stddocs

wo_mstr[25]

Totožný zdroj jako DEVIATION.

CLIENT_WARNINGS

pt_mstr.pmsk_xchr08

Upozornění na kvalitativní třídu artiklu.

label

pt_mstr.pt_desc1

Popis artiklu (zkopírováno i do pole item_name).

pcb_rows

pt_mstr.pmsk_xdec03

Počet řad PCB v panelu (nastavuje se jen pokud je nenulové).

pcb_columns

pt_mstr.pmsk_xdec04

Počet sloupců PCB v panelu (nastavuje se jen pokud je nenulové).

mask_dps

nvwosk_mask_dps

Maska barkódu DPS (pokud je vyplněna).

min_dps

nvwosk_min_dps

Minimální hodnota barkódu DPS.

max_dps

nvwosk_max_dps

Maximální hodnota barkódu DPS.

mask_panel

nvwosk_mask_panel

Maska barkódu panelu.

min_panel

nvwosk_min_panel

Minimální hodnota barkódu panelu.

max_panel

nvwosk_max_panel

Maximální hodnota barkódu panelu.

pre_desk

nvwosk_pre_desk

Prefix barkódu PCB.

suf_desk

nvwosk_suf_desk

Suffix barkódu PCB.

pre_panel

nvwosk_pre_panel

Prefix barkódu panelu.

suf_panel

nvwosk_suf_panel

Suffix barkódu panelu.

Parametry na úrovni operace jsou nastavovány z wr_route:

Klíč

Zdroj v QAD

Poznámka

tm_prep_operator

wr_route.wr_setup x 3600

Přípravný čas obsluhy; QAD udává v hodinách.

tm_operator

wr_route.wr_run x 3600

Výrobní čas obsluhy; QAD udává v hodinách.

tm_between_ops

wr_route.wr_wait x 3600

Čas čekání po operaci; QAD udává v hodinách.

tm_between_ops_max

wr_route.lvMaxTm x 3600

Maximální čas čekání; QAD udává v hodinách.

stddocs

wr_route.nvwrd_document

Odkaz na dokumentaci operace.

BOX_SIZE

wr_route.nvwr__dec01

Počet kusů v krabici; nastavuje se jen pokud je hodnota > 0.

PROGRAM

wr_route.nvwr_program

Název programu; pokud začíná tpv| nebo opv|, parsuje se jako TPV hodnota.

PROGRAM_REF, PROGRAM_DEK, PROGRAM_SPI

wr_route.nvwrp_program (split ";"; prefix REF_, DEK_, SPI_)

Více programů oddělených ";"; typ určen prefixem.

PROGRAM_0, PROGRAM_1, …

wr_route.nvwrp_program (split ";"; bez prefixu)

Programy bez specifického prefixu se indexují.

HLIDAT_PREDCHOZI

NVGArticleParams nebo wr_route

1 = operace musí být načtena (ruší příznaky UNSCANNED a PARALLEL).

Speciální formát TPV/OPV v poli programu

Pokud pole nvwr_program nebo položka v nvwrp_program začíná prefixem tpv| nebo opv|, parsuje se jako sada klíč-hodnota pro přímé nastavení parametrů objednávky nebo operace:

tpv|KLÍČ1:HODNOTA1|KLÍČ2:HODNOTA2
  • Prefix tpv| → parametry se uloží na úrovni objednávky (op = NULL).

  • Prefix opv| → parametry se uloží na úrovni operace.

Parametry artiklů (NVGArticleParams)

Mimo data z QAD exportu lze pro každý artikl definovat výchozí parametry v tabulce NVGArticleParams. Tyto parametry se aplikují na objednávku po importu dat z QAD. Speciální jména:

  • mptp a mpcount → nastavují se přímo jako pole ProductionOrder.

  • barcode_mp a barcode_pcb → nastavují se přímo jako pole ProductionOrder.

  • KLÍČ:ČÍSLO_OPERACE → parametr se nastaví pro konkrétní operaci.

  • Ostatní → parametry úrovně objednávky.

Pokud je parametr již nastaven z QAD importu, parametr z NVGArticleParams se nepřepíše (zaloguje se varování).

Příznaky operací

Příznaky operací jsou nastavovány automaticky podle čísla úkonu (wr_std_op):

  • OP_FLAG_UNSCANNED (Nemusí být načtená): nastavuje se pokud wr_milestone = "N".

  • OP_FLAG_PARALLEL (Nekontrolovat předchozí operace): úkony SMT, AOI a SPI.

  • OP_FLAG_SPLITPANEL (Rozdělení panelu): pokud nvwr_split_panel = "Y" nebo úkon patří do skupiny l_cutting.

Příznak HLIDAT_PREDCHOZI = 1 ruší OP_FLAG_UNSCANNED a OP_FLAG_PARALLEL pro danou operaci (operace musí být načtena navzdory jiným nastavením).

Kusovník (BOM)

Kusovník se importuje z wod_det nebo NVWODR_DET. Typ položky:

  • MAT (Materiál) - standardní materiál.

  • MAT_PREP (Materiál/Setup) - materiál vyžadující načtení (nvwodr_qty_per > 0).

  • TOOL (Nástroj) - ze skupin nástrojů nvwrt_group v wr_route.

Automaticky přidávané operace

Pro SPI (kontrola pastování) lze nakonfigurovat automatické přidávání operací (do_auto_add_operation). Tato funkcionalita nevyžaduje explicitní nastavení v QAD a řídí se parametry modulu.