Directo retseptid ei ole ainult staatilised komponentide loetelud. Iga retsepti rea juures saab veerus Retsepti asetaja tüüp määrata, mis tüüpi rida see on ja kuidas rida käitub retsepti asetajas – vormis, mis avaneb toote omaduste valimiseks (nn Vali omadused). Koos rea abiväljadega (Sisu, Filter, Filter rn, Väärtus, Kogus) saab nii ehitada retsepte, mis toimivad tootekonfiguraatorina: kasutaja valib mõõdud ja omadused ning Directo koostab nende põhjal automaatselt õige komponentide ja operatsioonide koosseisu.
See juhend selgitab kõiki asetaja tüüpe, abiväljade koostoimet ja toob kaks näidisretsepti (lihtne ja konfiguraatori tasemel).
Kõik selle juhendi artiklikoodid, klassid, lisaväljad ja töökeskused on väljamõeldud näited. Oma andmebaasis tuleb kasutada kehtivaid koode.
Retsepti dokumendil kirjeldatakse read – iga rida on kas mõõt/parameeter, artikkel, arvutus, teksti-vahepealkiri või artikli lisavälja info. Kui retsept asetatakse mõnele dokumendile (nt tellimusele või tootmisele) ja retsept on seadistatud kasutaja sisendit küsima, avaneb retsepti asetaja – vorm, kus kasutaja täidab mõõdud ja teeb valikud. Valikute põhjal arvutab Directo kogused ja asetab dokumendile õiged read.
Ülal vasakul on asetajas alati väli Kogus – see on toote (dokumendi rea) kogus, millega kogu retsept läbi korrutatakse. Allservas on valik Kirjuta dokumendi read üle ja nupp Aseta retsept.
(Lisa siia ekraanipilt: retsepti asetaja vorm „Vali omadused„.)
Enne tüüpide juurde asumist tasub tunda viit veergu, mis koos asetaja tüübiga kogu loogika loovad.
| Väli | Tähendus |
| Sisu | Tüübist sõltuv sisend. Valikute puhul komadega eraldatud artiklikoodide/väärtuste loend; klassi puhul klassi kood; lisavälja puhul lisavälja kood. |
| Filter | Tingimus või lubatud väärtusvahemik. Näiteks vahemik `10:100` (min:max) või konkreetsed väärtused `A` või `3,4`. Kasutatakse nii sisendi piiramiseks kui ka rea tinglikuks kuvamiseks. |
| Filter rn | Rea number (rea number), millele Filter viitab. Nii ehitatakse tingimusi teistele ridadele: „rakenda/kuva see rida siis, kui viidatud real on Filtris antud väärtus“. |
| Väärtus | Lisatingimus või fikseeritud väärtus (nt lisavälja väärtus, mille järgi artikleid piiritleda). |
See on Directo retseptide üks olulisemaid nüansse:
{ } on püsikonstant (fikseeritud arv).Kuna paljas arv loetakse alati rea viiteks, tuleb iga „päris„ arv panna loogeliste sulgude sisse. Nii eristab Directo, kas mõeldakse rida või arvu.
Näited (tuletatud allpool olevast lihtsast näitest):
{0.5} → konstant 0,5.50*{2} → rea 50 kogus korda konstant 2. Kui real 50 on kogus 0,5, siis tulemus on 0,5 × 2 = 1.{1}*130 → konstant 1 korda rea 130 tulemus.{3.14} → konstant π ligikaudse väärtusena (kasulik nt kaare pikkuse arvutamisel).Tavaline tekstirida. Tekst kirjutatakse Nimetus väljale ja asetajas kuvatakse see vahepealkirjana. Sobib plokkide eraldamiseks (nt MÕÕDUD, MATERJALID, OPERATSIOONID), et vorm oleks loogiliselt jaotatud.
Tekstirida saab teha ka tinglikuks: kui täita väljad Filter ja Filter rn, kuvatakse tekst (nt hoiatus või juhis) ainult siis, kui viidatud real on vastav väärtus.
Parameetri tüüpi rida küsib asetajas mõõtu, arvu või valikut, mis ei ole otseselt seotud ühegi artikliga – näiteks pikkust, laiust või sektsioonide arvu. Kasutaja sisestatud väärtusele saab teistelt ridadelt viidata rea numbriga.
10:100.A,B,C,D), kuvatakse asetajas rippmenüü nende valikutega.Kõige tavalisem rida: retsepti reale on artiklite andmebaasist valitud konkreetne artikkel. Kogus arvutatakse Kogus veeru valemi järgi. Sama tüüpi kasutatakse ka operatsioonide kirjeldamiseks (töökeskusega ridadel).
Sisu väljale saab panna komadega eraldatud artiklikoodide loendi. Asetajas kuvatakse neist rippmenüü, kust saab valida ainult ühe artikli. Sobib olukorda, kus reale sobib täpselt üks variant mitmest (nt üks profiil või üks kinnitustüüp).
Sarnaneb valikuga, kuid Sisu väljale pandud loendist kuvatakse asetajas märkeruutudega loetelu, kust saab teha mitu valikut korraga. Sobib olukorda, kus kasutaja võib soovida mitut lisandust korraga (nt mitut lisatööd või viimistlust).
Avab asetajas artiklite valiku, mis on filtreeritud kindla artikliklassi järgi. Klassi kood pannakse Sisu väljale. Sobib siis, kui valikuid on käsitsi loetlemiseks liiga palju, kuid nad kuuluvad ühte artikliklassi.
Avab asetajas artiklite valiku, mis on filtreeritud kindla artikli lisavälja järgi. Lisavälja kood pannakse Sisu väljale ning soovitud lisavälja väärtust saab piiritleda Väärtus väljal. Sobib siis, kui valikute hulk tuleb piirata artiklikaardi lisavälja alusel.
Tähelepanu – kaks sarnase nimega, kuid erineva tähendusega tüüpi: Artikkel: lisaväli = vali artikkel, mis on lisavälja järgi filtreeritud; Artikli lisaväli (allpool) = loe mõne teise rea artiklilt lisavälja sisu välja.
Kasutatakse siis, kui soovitakse tuua välja mõnel teisel real valitud artikli kaardilt kindla lisavälja sisu. Sisu väljale pannakse lisavälja kood ja Filter rn väljale selle rea number, mille artiklilt info loetakse.
Näiteks kui real 10 on valitud „Profiil“ ja soovitakse näidata selle profiili painutusraadiust, tehakse rida tüübiga Artikli lisaväli, Sisu = lisavälja kood, Filter rn = 10.
Rida, millel tehakse arvutus (Kogus/valemi veerus) ja mille tulemust soovitakse asetajas kuvada. Sobib, kui kasutaja peab arvutustulemust nägema (nt „Laius kokku mm„).
Sama, mis nähtav arvutus, kuid tulemust asetajas ei kuvata. Sobib abiarvutusteks, mille vahetulemust kasutajale näidata pole vaja, kuid millele teised read viitavad.
Varem oli üks valik Arvutus. Nüüd on see jaotatud kaheks: senine Arvutus vastab valikule Arvutus: peidus, ning juurde on tulnud Arvutus: nähtav nende arvutuste jaoks, mille tulemust tahetakse asetajas näidata.
Alljärgnev retsept on koostatud õppeotstarbel, et näidata iga asetaja tüüpi töös.
(Lisa siia ekraanipilt: retsepti read.)
| Rida | Artikkel | Nimetus | Retsepti asetaja tüüp | Sisu | Filter | Filter rn | Väärtus | Kogus | Töökeskus |
| 10 | MÕÕDUD / PARAMEETRID | Tekst | |||||||
| 20 | Pikkus | Parameeter | |||||||
| 30 | Laius (piiranguga 10:100) | Parameeter | `10:100` | ||||||
| 40 | MATERJALID | Tekst | |||||||
| 50 | MATERJAL-01 | Materjal tootmiseks 1 | Artikkel | `{0.5}` | |||||
| 60 | MATERJAL-02 | Materjal tootmiseks 2 | Artikkel | `50*{2}` | |||||
| 70 | SN-MATERJAL | Seerianumbriga materjal | Artikkel | `{1}` | |||||
| 80 | Komponent valikuga | Artikkel: valik | `KOMP-100,KOMP-200,KOMP-300` | `{1}*85` | |||||
| 85 | kogus | Parameeter | |||||||
| 90 | TÖÖTLUS | Tekst | |||||||
| 100 | Järeltöötluse valik | Artikkel: nimekiri | `VIIMISTLUS-1,VIIMISTLUS-2` | `{1}*20*30` | |||||
| 110 | Kattematerjal (klassi valik) | Artikkel: klass | `KLASS-MAT` | `{1}` | |||||
| 120 | Detaili tüübi valik | Parameeter | `A,B,C,D` | ||||||
| 130 | Detaili kogus | Parameeter | `1:10` | ||||||
| 140 | TOODE-A1 | Detaili valik tüübile A | Artikkel: valik | `TOODE-A1,TOODE-A2` | `A` | 120 | `{1}*130` | ||
| 150 | Detaili valik tüübile B | Artikkel: nimekiri | `TOODE-B1,TOODE-B2` | `B` | 120 | `{1}*130` | |||
| 160 | MOODUL-D | Uus moodul | Artikkel | `D` | 120 | `{1}*130` | |||
| 170 | Artikli asetaja lisavälja järgi | Artikkel: lisaväli | `TOOTEGRUPP` | `PÜSI` | `{1}*130` | ||||
| 180 | Eelmiselt realt valitud artiklilt lisavälja info | Artikli lisaväli | `PEATOODE` | 170 | |||||
| 190 | OPERATSIOONID | Tekst | |||||||
| 200 | OP-EELTÖÖ | Eeltööd | Artikkel | `{0.17}` | TK-EEL | ||||
| 210 | OP-SAAG | Tootmises tehtav operatsioon – saagimine | Artikkel | `{0.17}` | TK-SAAG | ||||
| 220 | OP-PLASMA | Plasma lõikus | Artikkel | `{0.01}` | TK-PLASMA | ||||
| 230 | OP-PAIGALDUS | Paigaldus | Artikkel | `{1.00}` | TK-PAIG | ||||
| 240 | Lisatööde valik soovi korral | Artikkel: nimekiri | `KILE,LAKK,LISA-1,LISA-2` | `{1}*130` |
Kuidas seda lugeda:
Filter = 10:100 sisestatava laiuse vahemikku, real 120 pakub Sisu = A,B,C,D rippmenüü.{0.5} (konstant), real 60 50*{2} = rea 50 kogus × 2 = 0,5 × 2 = 1. Just nii kuvab asetaja materjali MATERJAL-01 koguseks 0,5 ja MATERJAL-02 koguseks 1.{1}*85 viitab real 85 sisestatud kogusele.KLASS-MAT.Filter rn = 120 viitab reale „Detaili tüübi valik“ ja Filter väärtus (A, B, D) määrab, milline rida rakendub. A-tüübi korral rakendub rida 140, B-tüübi korral rida 150 ja D-tüübi korral rida 160.TOOTEGRUPP järgi (Väärtus = PÜSI).PEATOODE sisu (Filter rn = 170).{0.17} tundi).See näide demonstreerib arvutusi, konstante ja tinglikku loogikat keerukama toote juures. Kirjeldatud on konfigureeritav profiiltoode (nt reguleeritava pikkusega profiilsüsteem koos kinnituste ja lisadega).
| Rida | Artikkel | Nimetus | Retsepti asetaja tüüp | Sisu | Filter | Filter rn | Kogus |
| 10 | Profiil | Artikkel: valik | `PROF-A100,PROF-A200,PROF-A300` | ||||
| 20 | Toote gabariitlaius mm | Parameeter | `1:10000` | ||||
| 30 | Sektsioonide arv | Parameeter | `1:100` | ||||
| 40 | Kaugus seinast mm | Parameeter | `1:10000` | ||||
| 50 | Painutuse raadius | Artikli lisaväli | `RAADIUS` | 10 | |||
| 94 | Abikaugus min | Arvutus: peidus | `0:149` | `{150}-13` | |||
| 95 | Abikaugus tasandus | Arvutus: peidus | `0:149` | `94*14` | |||
| 100 | Kaare pikkus mm | Arvutus: nähtav | `1:10000000` | `{3.14}/{2}*40-40*25/30+94` | |||
| 200 | Sektsioonisamm mm | Parameeter | `40,60,70,110,0` | ||||
| 210 | Elemente ühes sektsioonis | Parameeter | `100/30/200+{1}` | ||||
| 300 | ELEM-STND | Standardelement | Artikkel: valik | `ELEM-STND,ELEM-PLUS` | `210*30` | ||
| 400 | Otsakork | Artikkel: valik | `OTS-A100,OTS-A200` | `{2}` | |||
| 500 | –NB! Lisa liide kui pikkus üle 5000 mm– | Tekst | `5000:10000` | 100 | |||
| 510 | Liidete kogus | Parameeter | `0,1,2,3` | ||||
| 520 | LIIDE-A100 | Liide | Artikkel: valik | `LIIDE-A100` | `1:4` | 510 | `510` |
| 600 | Kinnituste kogus kokku | Parameeter | `100/{500}+{1}` | ||||
| 610 | KINN-STD | Standardkinnitused | Artikkel: valik | `KINN-STD` | `600` | ||
| 700 | OP-MIN1 | Tööminutid kvalifikatsioon 1 | Artikkel | `{8}` | |||
| 800 | —LISAD— | Tekst | |||||
| 810 | Tõmbevarda kogus | Parameeter | `0,1,2,3` | ||||
| 820 | VARDA-A100 | Tõmbevarras | Artikkel: valik | `VARDA-A100,VARDA-A150` | `1:4` | 810 | `810` |
| 900 | Värv (lisaandmeks, mitte täidetav) | Artikli lisaväli | `VARV` | 10 |
Mida see näide õpetab:
{150}-13 konstanti 150 miinus rea 13 tulemus ({150} on püsiarv, 13 viide reale 13). Real 100 on {3.14} (π) ja {2} konstandid, ülejäänud arvud (40, 25, 30, 94) viitavad ridadele.RAADIUS (Filter rn = 10). Rida 900 teeb sama värvi lisaväljaga – nii jõuavad toote andmed dokumendile ilma käsitsi sisestamata.Filter = 5000:10000, Filter rn = 100).Kogus = 510 / Kogus = 810).Sisu = 40,60,70,110,0 – kindlad valikväärtused rippmenüüs.
Käesolev juhend on nõuandev. Konkreetse retsepti seadistuse õigsust tasub alati kontrollida asetajat läbi testides.