#include %occInclude ; AUTHOR : Wim VERMEULEN ; LOCATION : VAN HOECKE N.V. ; LAST MODIFIED : 08/08/2005 ; ; THIS ROUTINE USES THE DATA FROM ...^Prod.GADef.KaderDeur.TemplateDB ; AND CREATES THE TEMPLATE-OBJECTS (IN Prod.GADef.KaderDeur AND Res.PI.TemplateKader). ; TO CREATE: RUN "START+KlantNr" SEPARATELY, or ; RUN CLASS-METHOD "Fillobjects()" FROM THE Res.PI.TemplateKader CLASS TO CREATE ALL TEMPLATES START3711 Do START2523 ; Nieuw KLNr van TULP Quit /// 3711 is niet meer van toepassing! /* w "START3711 is begonnen. Even geduld... ",! Kill ^CreateTemplatesLog(3711) Set ^CreateTemplatesLog(3711)="Last Update: "_$ZDATETIME($H,3) Do CreateFromDB("B1L1" , 3711, 1, "Bovenkastdeur links, greep onder") Do CreateFromDB("B1R1" , 3711, 2, "Bovenkastdeur rechts, greep onder") Do CreateFromDB("B1L1/1", 3711, 3, "Bovenkastdeur links, greep onder, tot 300mm") Do CreateFromDB("B1R1/1", 3711, 4, "Bovenkastdeur rechts, greep onder, tot 300mm") Do CreateFromDB("B1L5" , 3711, 5, "Onderkastdeur links, greep boven") Do CreateFromDB("B1R5" , 3711, 6, "Onderkastdeur rechts, greep boven") Do CreateFromDB("B1L5/1", 3711, 7, "Onderkastdeur links, greep boven, tot 300mm") Do CreateFromDB("B1R5/1", 3711, 8, "Onderkastdeur rechts, greep boven, tot 300mm") Do CreateFromDB("b12x-B11010L",3711, 9, "Kastdeur links, greep onder") Do CreateFromDB("b12x-B11010R",3711, 10, "Kastdeur rechts, greep onder") Do CreateFromDB("B2L1" , 3711, 11, "Kastdeur links draaiend") Do CreateFromDB("B2R1" , 3711, 12, "Kastdeur rechts draaiend") Do CreateFromDB("B2L1/1", 3711, 13, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B2R1/1", 3711, 14, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B3L1" , 3711, 15, "Kastdeur links draaiend") Do CreateFromDB("B3R1" , 3711, 16, "Kastdeur rechts draaiend") Do CreateFromDB("B3L1/1", 3711, 17, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B3R1/1", 3711, 18, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B4L1" , 3711, 19, "Kastdeur links draaiend") Do CreateFromDB("B4R1" , 3711, 20, "Kastdeur rechts draaiend") Do CreateFromDB("B4L1/1", 3711, 21, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B4R1/1", 3711, 22, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B4R3" , 3711, 23, "Kastdeur rechts draaiend") Do CreateFromDB("B8L5" , 3711, 24, "Front deur links, greep boven, scharnier omlaag") Do CreateFromDB("B8R5" , 3711, 25, "Front deur rechts, greep boven, scharnier omlaag") Do CreateFromDB("B8L5/1", 3711, 26, "Front deur links, greep boven, scharnier omlaag, tot 300mm") Do CreateFromDB("B8R5/1", 3711, 27, "Front deur rechts, greep boven, scharnier omlaag, tot 300mm") Do CreateFromDB("S1L1" , 3711, 28, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S1L3" , 3711, 29, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S1L5" , 3711, 30, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S1L0" , 3711, 31, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S1R1" , 3711, 32, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S1R3" , 3711, 33, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S1R5" , 3711, 34, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S1R0" , 3711, 35, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S2L1" , 3711, 36, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S2L3" , 3711, 37, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S2L5" , 3711, 38, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S2L0" , 3711, 39, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S2R1" , 3711, 40, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S2R3" , 3711, 41, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S2R5" , 3711, 42, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S2R0" , 3711, 43, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S3L1" , 3711, 44, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S3L0" , 3711, 45, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S3R1" , 3711, 46, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S4R0" , 3711, 47, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S4L1" , 3711, 48, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S4L0" , 3711, 49, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S4R1" , 3711, 50, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S4R0" , 3711, 51, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("B5-2" , 3711, 52, "Klapdeur tot 600mm, breed prof, 1 steun rechts") Do CreateFromDB("B5-2/1", 3711, 53, "Klapdeur tot 300mm, breed prof, 1 steun rechts") Do CreateFromDB("B5-B" , 3711, 54, "Klapdeur vanaf 800mm, breed prof, 2 steunen") Do CreateFromDB("B5-C" , 3711, 55, "Klapdeur vanaf 1000mm, breed prof, 3 scharn.") Do CreateFromDB("B5-D" , 3711, 56, "Klapdeur vanaf 1000mm, breed prof, 4 scharn.") Do CreateFromDB("S5-2" , 3711, 57, "Klapdeur tot 600mm, smal prof, 1 steun rechts") Do CreateFromDB("S5-B" , 3711, 58, "Klapdeur vanaf 800mm, smal prof, 2 steunen") Do CreateFromDB("S5-C" , 3711, 59, "Klapdeur vanaf 1000mm, smal prof, 3 scharn.") Do CreateFromDB("S5-D" , 3711, 60, "Klapdeur vanaf 1000mm, smal prof, 4 scharn.") Do CreateFromDB("B6-6" , 3711, 61, "LadeFront met 1 greep, tot 600mm") Do CreateFromDB("B6-6/1", 3711, 62, "LadeFront met 1 greep, tot 300mm") Do CreateFromDB("B6-B" , 3711, 63, "LadeFront met 2 grepen, vanaf 800mm") Do CreateFromDB("B7-6" , 3711, 64, "LadeFront Hoog met 1 greep, tot 600mm") Do CreateFromDB("B7-6/1", 3711, 65, "LadeFront Hoog met 1 greep, tot 300mm") Do CreateFromDB("B7-B" , 3711, 66, "LadeFront Hoog met 2 grepen, vanaf 800mm") Do CreateFromDB("B0-6" , 3711, 67, "LadeFront Hoog met 1 greep, tot 600mm") Do CreateFromDB("B0-6/1", 3711, 68, "LadeFront Hoog met 1 greep, tot 300mm") Do CreateFromDB("B0-B" , 3711, 69, "LadeFront Hoog met 2 grepen, vanaf 800mm") Do CreateFromDB("B9-0" , 3711, 70, "Vaste Blende boven") Do CreateFromDB("BAR3" , 3711, 71, "Kastdeur DDVKH rechts draaiend") Do CreateFromDB("BAL3" , 3711, 72, "Kastdeur DDVKH links draaiend") Do CreateFromDB("BBB" , 3711, 73, "Front BZLD kast, vanaf 800mm") Do CreateFromDB("BB2" , 3711, 74, "Front BZLD kast, 600mm") Do CreateFromDB("B124-D21011" , 3711, 75, "Klapdeur vanaf 950mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D21011" , 3711, 76, "Klapdeur vanaf 950mm, breed prof, 2 steunen") Do CreateFromDB("B124-D21010" , 3711, 77, "Klapdeur tot 900mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D21010" , 3711, 78, "Klapdeur vanaf 650mm, breed prof, 2 steunen") Do CreateFromDB("D21010x2Z" , 3711, 79, "Klapdeur vanaf 650mm, breed prof, 2 steunen") Do CreateFromDB("B2B4-D21010" , 3711, 80, "Klapdeur tot 900mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D50010" , 3711, 81, "Klapdeur vanaf 650mm") Do CreateFromDB("B2F4-F11010" , 3711, 82, "Front korflade met 2 grepen, vanaf 650mm") Do CreateFromDB("B16Z-F11010" , 3711, 83, "Front korflade met 1 greep, vanaf 650mm") Do CreateFromDB("F11010x6Z" , 3711, 84, "Front korflade met 1 greep, vanaf 650mm") Do CreateFromDB("B114-B11010L" , 3711, 85, "Kastdeur links, greep onder") Do CreateFromDB("B114-B11010R" , 3711, 86, "Kastdeur rechts, greep onder") Do CreateFromDB("S110-B11010L" , 3711, 87, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S130-B11010L" , 3711, 88, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S150-B11010L" , 3711, 89, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S100-B11010L" , 3711, 90, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S110-B11010R" , 3711, 91, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S130-B11010R" , 3711, 92, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S150-B11010R" , 3711, 93, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S100-B11010R" , 3711, 94, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S110-C11010L" , 3711, 95, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S130-C11010L" , 3711, 96, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S150-C11010L" , 3711, 97, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S100-C11010L" , 3711, 98, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S110-C11010R" , 3711, 99, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S130-C11010R" , 3711,100, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S150-C11010R" , 3711,101, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S100-C11010R" , 3711,102, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S120-D11010" , 3711,103, "Klapdeur tot 600mm, smal prof, 1 steun rechts") Do CreateFromDB("S120-D21010" , 3711,104, "Klapdeur tot 900mm, smal prof, 2 steunen") Do CreateFromDB("S120-D21011" , 3711,105, "Klapdeur vanaf 900mm, smal prof, 2 steunen") Do CreateFromDB("B2B4-D21011" , 3711,106, "Klapdeur vanaf 950mm, breed prof, 2 steunen") Do CreateFromDB("S120-D21010" , 3711,104, "Klapdeur tot 900mm, smal prof, 2 steunen") w "START3711 is uitgevoerd",! Quit */ START2523 w "START2523 is begonnen. Even geduld... ",! Kill ^CreateTemplatesLog(2523) Set ^CreateTemplatesLog(2523)="Last Update: "_$ZDATETIME($H,3) /* Do CreateFromDB("B1L1" , 2523, 1, "Bovenkastdeur links, greep onder") Do CreateFromDB("B1R1" , 2523, 2, "Bovenkastdeur rechts, greep onder") Do CreateFromDB("B1L1/1", 2523, 3, "Bovenkastdeur links, greep onder, tot 300mm") Do CreateFromDB("B1R1/1", 2523, 4, "Bovenkastdeur rechts, greep onder, tot 300mm") Do CreateFromDB("B1L5" , 2523, 5, "Onderkastdeur links, greep boven") Do CreateFromDB("B1R5" , 2523, 6, "Onderkastdeur rechts, greep boven") Do CreateFromDB("B1L5/1", 2523, 7, "Onderkastdeur links, greep boven, tot 300mm") Do CreateFromDB("B1R5/1", 2523, 8, "Onderkastdeur rechts, greep boven, tot 300mm") Do CreateFromDB("b12x-B11010L",2523, 9, "Kastdeur links, greep onder") Do CreateFromDB("b12x-B11010R",2523, 10, "Kastdeur rechts, greep onder") Do CreateFromDB("B2L1" , 2523, 11, "Kastdeur links draaiend") Do CreateFromDB("B2R1" , 2523, 12, "Kastdeur rechts draaiend") Do CreateFromDB("B2L1/1", 2523, 13, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B2R1/1", 2523, 14, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B3L1" , 2523, 15, "Kastdeur links draaiend") Do CreateFromDB("B3R1" , 2523, 16, "Kastdeur rechts draaiend") Do CreateFromDB("B3L1/1", 2523, 17, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B3R1/1", 2523, 18, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B4L1" , 2523, 19, "Kastdeur links draaiend") Do CreateFromDB("B4R1" , 2523, 20, "Kastdeur rechts draaiend") Do CreateFromDB("B4L1/1", 2523, 21, "Kastdeur links draaiend, tot 300mm") Do CreateFromDB("B4R1/1", 2523, 22, "Kastdeur rechts draaiend, tot 300mm") Do CreateFromDB("B4R3" , 2523, 23, "Kastdeur rechts draaiend") Do CreateFromDB("B8L5" , 2523, 24, "Front deur links, greep boven, scharnier omlaag") Do CreateFromDB("B8R5" , 2523, 25, "Front deur rechts, greep boven, scharnier omlaag") Do CreateFromDB("B8L5/1", 2523, 26, "Front deur links, greep boven, scharnier omlaag, tot 300mm") Do CreateFromDB("B8R5/1", 2523, 27, "Front deur rechts, greep boven, scharnier omlaag, tot 300mm") Do CreateFromDB("S1L1" , 2523, 28, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S1L3" , 2523, 29, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S1L5" , 2523, 30, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S1L0" , 2523, 31, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S1R1" , 2523, 32, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S1R3" , 2523, 33, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S1R5" , 2523, 34, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S1R0" , 2523, 35, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S2L1" , 2523, 36, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S2L3" , 2523, 37, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S2L5" , 2523, 38, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S2L0" , 2523, 39, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S2R1" , 2523, 40, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S2R3" , 2523, 41, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S2R5" , 2523, 42, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S2R0" , 2523, 43, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S3L1" , 2523, 44, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S3L0" , 2523, 45, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S3R1" , 2523, 46, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S4R0" , 2523, 47, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S4L1" , 2523, 48, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S4L0" , 2523, 49, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S4R1" , 2523, 50, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S4R0" , 2523, 51, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("B5-2" , 2523, 52, "Klapdeur tot 600mm, breed prof, 1 steun rechts") Do CreateFromDB("B5-2/1", 2523, 53, "Klapdeur tot 300mm, breed prof, 1 steun rechts") Do CreateFromDB("B5-B" , 2523, 54, "Klapdeur vanaf 800mm, breed prof, 2 steunen") Do CreateFromDB("B5-C" , 2523, 55, "Klapdeur vanaf 1000mm, breed prof, 3 scharn.") Do CreateFromDB("B5-D" , 2523, 56, "Klapdeur vanaf 1000mm, breed prof, 4 scharn.") Do CreateFromDB("S5-2" , 2523, 57, "Klapdeur tot 600mm, smal prof, 1 steun rechts") Do CreateFromDB("S5-B" , 2523, 58, "Klapdeur vanaf 800mm, smal prof, 2 steunen") Do CreateFromDB("S5-C" , 2523, 59, "Klapdeur vanaf 1000mm, smal prof, 3 scharn.") Do CreateFromDB("S5-D" , 2523, 60, "Klapdeur vanaf 1000mm, smal prof, 4 scharn.") Do CreateFromDB("B6-6" , 2523, 61, "LadeFront met 1 greep, tot 600mm") Do CreateFromDB("B6-6/1", 2523, 62, "LadeFront met 1 greep, tot 300mm") Do CreateFromDB("B6-B" , 2523, 63, "LadeFront met 2 grepen, vanaf 800mm") Do CreateFromDB("B7-6" , 2523, 64, "LadeFront Hoog met 1 greep, tot 600mm") Do CreateFromDB("B7-6/1", 2523, 65, "LadeFront Hoog met 1 greep, tot 300mm") Do CreateFromDB("B7-B" , 2523, 66, "LadeFront Hoog met 2 grepen, vanaf 800mm") Do CreateFromDB("B0-6" , 2523, 67, "LadeFront Hoog met 1 greep, tot 600mm") Do CreateFromDB("B0-6/1", 2523, 68, "LadeFront Hoog met 1 greep, tot 300mm") Do CreateFromDB("B0-B" , 2523, 69, "LadeFront Hoog met 2 grepen, vanaf 800mm") Do CreateFromDB("B9-0" , 2523, 70, "Vaste Blende boven") Do CreateFromDB("BAR3" , 2523, 71, "Kastdeur DDVKH rechts draaiend") Do CreateFromDB("BAL3" , 2523, 72, "Kastdeur DDVKH links draaiend") Do CreateFromDB("BBB" , 2523, 73, "Front BZLD kast, vanaf 800mm") Do CreateFromDB("BB2" , 2523, 74, "Front BZLD kast, 600mm") Do CreateFromDB("B124-D21011" , 2523, 75, "Klapdeur vanaf 950mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D21011" , 2523, 76, "Klapdeur vanaf 950mm, breed prof, 2 steunen") Do CreateFromDB("B124-D21010" , 2523, 77, "Klapdeur tot 900mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D21010" , 2523, 78, "Klapdeur vanaf 650mm, breed prof, 2 steunen") Do CreateFromDB("D21010x2Z" , 2523, 79, "Klapdeur vanaf 650mm, breed prof, 2 steunen") Do CreateFromDB("B2B4-D21010" , 2523, 80, "Klapdeur tot 900mm, breed prof, 2 steunen") Do CreateFromDB("B12Z-D50010" , 2523, 81, "Klapdeur vanaf 650mm") Do CreateFromDB("B2F4-F11010" , 2523, 82, "Front korflade met 2 grepen, vanaf 650mm") Do CreateFromDB("B16Z-F11010" , 2523, 83, "Front korflade met 1 greep, vanaf 650mm") Do CreateFromDB("F11010x6Z" , 2523, 84, "Front korflade met 1 greep, vanaf 650mm") Do CreateFromDB("B114-B11010L" , 2523, 85, "Kastdeur links, greep onder") Do CreateFromDB("B114-B11010R" , 2523, 86, "Kastdeur rechts, greep onder") Do CreateFromDB("S110-B11010L" , 2523, 87, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S130-B11010L" , 2523, 88, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S150-B11010L" , 2523, 89, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S100-B11010L" , 2523, 90, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S110-B11010R" , 2523, 91, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S130-B11010R" , 2523, 92, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S150-B11010R" , 2523, 93, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S100-B11010R" , 2523, 94, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S110-C11010L" , 2523, 95, "Linkerdeur, smal profiel, knop onder") Do CreateFromDB("S130-C11010L" , 2523, 96, "Linkerdeur, smal profiel, knop midden") Do CreateFromDB("S150-C11010L" , 2523, 97, "Linkerdeur, smal profiel, knop boven") Do CreateFromDB("S100-C11010L" , 2523, 98, "Linkerdeur, smal profiel, zonder knop") Do CreateFromDB("S110-C11010R" , 2523, 99, "Rechterdeur, smal profiel, knop onder") Do CreateFromDB("S130-C11010R" , 2523,100, "Rechterdeur, smal profiel, knop midden") Do CreateFromDB("S150-C11010R" , 2523,101, "Rechterdeur, smal profiel, knop boven") Do CreateFromDB("S100-C11010R" , 2523,102, "Rechterdeur, smal profiel, zonder knop") Do CreateFromDB("S120-D11010" , 2523,103, "Klapdeur tot 600mm, smal prof, 1 steun rechts") Do CreateFromDB("S120-D21010" , 2523,104, "Klapdeur tot 900mm, smal prof, 2 steunen") Do CreateFromDB("S120-D21011" , 2523,105, "Klapdeur vanaf 900mm, smal prof, 2 steunen") Do CreateFromDB("B2B4-D21011" , 2523,106, "Klapdeur vanaf 950mm, breed prof, 2 steunen") */ ; New items to append: ;Do CreateFromDB("S120-D21010" , 2523,104, "Klapdeur tot 900mm, smal prof, 2 steunen") w "START2523 is uitgevoerd",! Quit CreateFromDB(PICode,KlantID,Sort,Omschrijving) Set blnChangePropts=0 ; Default="0". Switch to "1" to change some properties on the Template KadObj, without creating new objects If blnChangePropts Do . Quit:($G(PICode)="") . New KadObj,PIObj,ItemID . Set ItemID=PICode . Set PIObj=$$CreatePITemplate(ItemID,PICode,,$G(KlantID),$G(Sort),$G(Omschrijving)) . Set KadObj=PIObj.GADefTemplate . ; Make Changes to KadObj . ; . Set PIObj.Sort=Sort . ; . Set sc=KadObj.%Save() . w:($$$ISERR(sc)) "KadObj.%Save : "_$$ParseStatus^vhLib(sc) . Set sc=PIObj.%Save() . w:($$$ISERR(sc)) "PIObj.%Save : "_$$ParseStatus^vhLib(sc) . Set PIObj="" . w "Aanpassing voor "_PICode_" uitgevoerd.",! Quit:(blnChangePropts) ; Creates the KadObj and the PIObj. Quit:($G(PICode)="") New KadObj,PIObj,ItemID Set KadObj=##class(Prod.GADef.KaderDeur).%New() ; FillPropts, FillBeslag and FillBoringen Do @("T"_KlantID_"xx"_$$ReplaceCode(PICode)_"^Prod.GADef.KaderDeur.TemplateDB(.KadObj)") Set KadObj.TemplateUsed=PICode Do KadObj.%Save() ; Check that KadObj is correctly saved. Set ^CreateTemplatesLog(KlantID,PICode)=$S(KadObj.%Id()'="":"ID: "_KadObj.%Id(), 1:"KaderdeurID kon niet gegenereerd worden. Creatie Template afgebroken.") Quit:(KadObj.%Id()="") ; Create PI.TemplateKader-object Set ItemID=PICode Set PIObj=$$CreatePITemplate(ItemID,PICode,KadObj.%Id(),$G(KlantID),$G(Sort),$G(Omschrijving)) Do PIObj.%Save() Do PIObj.%Close() Do KadObj.%Close() Quit ReplaceCode(strText) New FKey For FKey="-;MIN", "+;PLUS", "/;SLASH", "\;BSLASH" Do . Do ReplaceSubString(.strText, $P(FKey,";",1), $P(FKey,";",2)) Quit strText ReplaceSubString(strText,strFind,strNew) ; Replaces all in by ; strText should be passed by Reference !!! ; New Q,P,Find,Variable For Quit:strText'[strFind Do . Set Q=$FIND(strText,strFind)-1 . Set P=Q-$L(strFind)+1 . Set $E(strText,P,Q)=strNew Quit "Pass First Parameter by Reference!" CreatePITemplate(ItemID,PICode,GADefOID,KlantID,Sort,Omschrijving) ; Returns the new PIObj Quit:($G(ItemID)="") New FullID Set FullID=##class(Res.PI.Definitie).IDViaNaam("TemplateKader")_"||"_ItemID If ##class(Res.PI.TemplateKader).%ExistsId(FullID) Do . Set PIObj=##class(Res.PI.TemplateKader).%OpenId(FullID) Else Do . Set PIObj=##class(Res.PI.TemplateKader).%New() . Do FillPITemplate(.PIObj,ItemID,$G(PICode),,$G(KlantID),$G(Sort),$G(Omschrijving)) Do:($G(GADefOID)'="") PIObj.GADefTemplateSetObjectId(GADefOID) Quit PIObj FillPITemplate(PIObj,ItemID,PICode,GADefOID,KlantID,Sort,Omschrijving) ; PIObj passed by Reference! Quit:('$G(PIObj)) Quit:($G(ItemID)="") Do PIObj.TabelIDSetObjectId(##class(Res.PI.Definitie).IDViaNaam("TemplateKader")) Set PIObj.ItemID=ItemID Set PIObj.PICode=$S('$G(PICode):ItemID,1:PICode) Set:($G(Omschrijving)'="") PIObj.Omschrijving=Omschrijving Set:($G(Sort)'="") PIObj.Sort=Sort Do:($G(GADefOID)'="") PIObj.GADefTemplateSetObjectId(GADefOID) Do:($G(KlantID)'="") PIObj.KlantSetObjectId(KlantID) Quit FillKDBeslag(KadObj,BeslagKey,BeslagTypeID,lstPosities) ; KadObj passed by Reference! ; has the following structure ("[]" means OPTIONAL) : ; "RelLPos[@LPos];AfRand[;PosKey1]\RelLPos2[@LPos2];[AfRand2][;PosKey2]\RelLPos3[@LPos3];[AfRand3][;PosKey3]" ; - if PosKey_I is omitted, it is automatically calculated by "Beslag.Posities.Count()+1" ; - if AfRand is omitted, it is reused from previous "Beslag.Positie" ; Quit:($G(BeslagKey)="") Quit:($G(BeslagTypeID)="") Quit:($G(lstPosities)="") New emBeslag,I,emBeslagPos,TabelBeslag,PosI,LPos,AfRand,PosKey Set TabelBeslag=##class(Res.PI.Definitie).IDViaNaam("Beslag") Set AfRand="" Set emBeslag=##class(Prod.GADef.emKadBeslag).%New() Do emBeslag.BeslagSetObjectId(TabelBeslag_"||"_BeslagTypeID) For I=1:1 Quit:('$L($P(lstPosities,"\",I))) Do . Set PosI=$P(lstPosities,"\",I) . Set LPos=$P(PosI,";") ; RelLengtePos_@_LengtePos . Set:($P(PosI,";",2)'="") AfRand=$P(PosI,";",2) ; AfstandRand (Re-use previous when empty) . Set PosKey=$P(PosI,";",3) ; PosKey (Count #Posities when empty) . Set:(PosKey="") PosKey=emBeslag.Positie.Count()+1 ; New Key incremented by 1 . Quit:($P(LPos,"@",1)_$P(LPos,"@",2)="") . Set emBeslagPos=##class(Prod.GADef.emKadBeslagPos).%New() . Set emBeslagPos.RelLengtePos=$P(LPos,"@",1) . Set emBeslagPos.LengtePos=$P(LPos,"@",2) . Set:(AfRand'="") emBeslagPos.AfstandRand=AfRand . Do emBeslag.Positie.SetAt(emBeslagPos,PosKey) . Do emBeslagPos.%Close() Do KadObj.Beslag.SetAt(emBeslag,BeslagKey) Do emBeslag.%Close() Quit FillKDBoring(KadObj,XCode,YCode,Diam,BoringType,BoorDiepte,GlasDiam,ZCode,BKey,CncID) ; KadObj passed by Reference! ; XCode,YCode,ZCode constist of "RelPos_@_Pos" Quit:($G(XCode)="") Quit:($G(YCode)="") Quit:($G(Diam)="") Quit:(+Diam=0) Quit:($G(BoorDiepte)="") Quit:($G(BoringType)="") New emBoring Set emBoring=##class(Prod.GADef.emKadBoring).%New() Set emBoring.RelXPos=$P(XCode,"@",1) Set emBoring.RelYPos=$P(YCode,"@",1) Set emBoring.XPos=$P(XCode,"@",2) Set emBoring.YPos=$P(YCode,"@",2) Set emBoring.BoorDiameter=$P(Diam,"+",1) Set:($P(Diam,"+",2)'="") emBoring.AfschuinDiameter=$P(Diam,"+",2) Set emBoring.BoringType=BoringType Set emBoring.BoorDiepte=$S(emBoring.BoorDiameter<0:0, 1:BoorDiepte) ; Puntboring (diam<0) ==> BoorDiepte=0 Set:($G(GlasDiam)) emBoring.BoorGlasDiameter=GlasDiam Set:($G(ZCode)) emBoring.RelZPos=$P(ZCode,"@",1) Set:($G(ZCode)) emBoring.ZPos=$P(ZCode,"@",2) Set:($D(CncID)) emBoring.CncID=CncID Set BKey=$E($G(BKey,"X"),1) Set BKey=$S(BKey?1A:BKey, 1:"X") Do KadObj.Boringen.SetAt(emBoring,BKey_$TR($J($$ArrCount(KadObj.Boringen,BKey)+1, 2), " ", "0")) ;Do KadObj.Boringen.SetAt(emBoring,$S(BKey?1A:BKey, 1:"X")_$TR($J(KadObj.Boringen.Count()+1, 2), " ", "0")) ;Do KadObj.Boringen.SetAt(emBoring,KadObj.Boringen.Count()+1) Do emBoring.%Close() Quit ArrCount(objArray,StartKey) New Num,Key Set StartKey=$G(StartKey,"") Set Num=0 Set Key="" For Do objArray.GetNext(.Key) Quit:(Key="") Do . Set:($E(Key,1,$L(StartKey))=StartKey) Num=Num+1 Quit Num FillKDPropts(KadObj,ToepasID,OphangPID,ProfielTypeID,Hoogte,Breedte,VullingID,VullingExtras,Gemonteerd,Verpakking,TemplateRoutine) ; KadObj passed by Reference! New TabelProfType,TabelProfAfw,TabelVul,TabelVulExtra,TabelToepas,TabelOphang Set TabelProfType=##class(Res.PI.Definitie).IDViaNaam("ProfType") Set TabelProfAfw=##class(Res.PI.Definitie).IDViaNaam("ProfAfw") Set TabelVul=##class(Res.PI.Definitie).IDViaNaam("Vulling") Set TabelVulExtra=##class(Res.PI.Definitie).IDViaNaam("VullingExtra") Set TabelToepas=##class(Res.PI.Definitie).IDViaNaam("Toepas") Set TabelOphang=##class(Res.PI.Definitie).IDViaNaam("OphangPlaats") Do:($G(ToepasID)'="") KadObj.ToepassingSetObjectId(TabelToepas_"||"_ToepasID) Do:($G(OphangPID)'="") KadObj.OphangPlaatsSetObjectId(TabelOphang_"||"_OphangPID) Do:($G(ProfielTypeID)'="") KadObj.ProfTypeSetObjectId(TabelProfType_"||"_$P(ProfielTypeID,"-")) Do:($G(ProfielTypeID)'="") KadObj.ProfAfwSetObjectId($S($P(ProfielTypeID,"-",2)'="":TabelProfAfw_"||"_ProfielTypeID,1:"")) Set:($G(Hoogte)'="") KadObj.Hoogte=Hoogte Set:($G(Breedte)'="") KadObj.Breedte=Breedte Set:($G(Gemonteerd)'="") KadObj.Gemonteerd=Gemonteerd Set:($G(Verpakking)'="") KadObj.Verpakking=Verpakking Set:($G(TemplateRoutine)'="") KadObj.TemplateRoutine=TemplateRoutine Do:($G(VullingID)'="") SetVulling(.KadObj,VullingID,$G(VullingExtras)) Quit SetVulling(KadObj,VullingID,VullingExtras) ; KadObj passed by Reference! New emVulling,I Quit:(VullingID="") Set VullingExtras=$G(VullingExtras,"") Set emVulling=##class(Prod.GADef.emKadVulling).%New() Do emVulling.VullingSetObjectId(TabelVul_"||"_VullingID) For I=1:1 Quit:('$L($P(VullingExtras,";",I))) Do . Do emVulling.VullingExtra.InsertObjectId(##class(Res.PI.Definitie).IDViaNaam("VullingExtra")_"||"_$P(VullingExtras,";",I)) Set KadObj.Vulling=emVulling Do emVulling.%Close() Quit CreateCompact(Toepas,OphangP,PICode,KlantID,Sort,Omschrijving,TemplateRoutine) ; Another way to create the TemplateKader and Kader-objects ; Not the best way to create the objects. It Better to use CreateFromDB (called by "START...") ; Creates the KadObj and the PIObj. ; KlantID,Sort and Omschrijving are optional parameters. Quit:($G(PICode)="") New KadObj,PIObj,ItemID Set KadObj=##class(Prod.GADef.KaderDeur).%New() Do FillKDPropts(.KadObj,$G(Toepas),$G(OphangP),,,,,,"KV","K",$G(TemplateRoutine)) Do KadObj.%Save() ; Check that KadObj is correctly saved. Write:(KadObj.%Id()="") "KaderdeurID kon niet gegenereerd worden. Creatie Template afgebroken." Quit:(KadObj.%Id()="") Do DumpObject^%apiOBJ(KadObj) Set ItemID=PICode Set PIObj=$$CreatePITemplate(ItemID,PICode,KadObj.%Id(),$G(KlantID),$G(Sort),$G(Omschrijving)) Do PIObj.%Save() Do DumpObject^%apiOBJ(PIObj) Do PIObj.%Close() Do KadObj.%Close() Quit ExtendFT(%this,TemplateID,param1,param2,param3,param4,param5) ; ; !!! THIS ROUTINE HAS BEEN PLACED IN THE OBJECT'S METHOD (IN OBJECT ARCHTITECT) !!! ; ; Extends the KadObj with the dynamic properties from the template Quit:(TemplateID="") If $E(TemplateID,1,3)="PIT" Do . New PITemplate . Set PITemplate=##class(Res.PI.TemplateKader).%OpenId(##class(Res.PI.Definitie).IDViaNaam("TemplateKader")_"||"_$E(TemplateID,4,999)) . Set TemplateID=PITemplate.GADefTemplateGetObjectId() . Do PITemplate.%Close() New Templ,RoutineName Set Templ=##CLASS(Prod.GADef.KaderDeur).%OpenId(TemplateID) Set RoutineName=Templ.TemplateRoutine ;Do Templ.%Close() Quit:('$L(RoutineName)) ;Do @(RoutineName_"(%this,TemplateID,$G(param1),$G(param2),$G(param3),$G(param4),$G(param5))") Do @(RoutineName_"(%this,Templ,$G(param1),$G(param2),$G(param3),$G(param4),$G(param5))") Do Templ.%Close() Quit