STATE.Initialized Initialisatie ; true CONFIG.Backend = GetArg("backend"); // Voorlopig alleen "axapta", dus AX CONFIG.ProcessMode = GetArg("processmode"); // Alleen in AX : "Background" of "Interactive" CONFIG.Token = GetArg("vh_token"); // Alleen in Web : Token van Intracto CONFIG.Language = GetArg("language"); // Web en AX CONFIG.Initiator = GetArg("initiator"); // Alleen in AX CONFIG.Settings.HeeftAssortimentIP = CBool(GetArg("HeeftAssortimentIP")); // Alleen in AX CONFIG.Settings.HeeftAssortimentKS = CBool(GetArg("HeeftAssortimentKS")); // Alleen in AX Algemene input parameters ophalen ;config.backend@value;config.processmode@value;config.token@value;config.language@value;config.initiator@value;config.settings.heeftassortimentip@value;config.settings.heeftassortimentks@value; true BEHAVIOR.IsEconAx = (CONFIG.Backend == "axapta"); BEHAVIOR.IsEconWeb = (CONFIG.Backend <> "axapta"); Instellen Gedrag Omgeving ;behavior.iseconax@value;behavior.iseconweb@value; BEHAVIOR.IsEconAx local string _Configuration = GetArg("configuration"); local string _BEHAVIOR_AccessMode; local string _BEHAVIOR_OperationMode; local string _BEHAVIOR_ContextName; local boolean _IsNieuweIngaveInAx = (DATA.Lijn.GroeperingCode == ""); // Tijdelijk getest via GroeperingCode ingevuld; [TODO] vind een goede manier om de AxNew te bepalen. local boolean _IsEditEdiFromSalesOrderIn; local boolean _IsInitiatorAxSalesOrderIn = ((CONFIG.Initiator == "Ax.SalesOrderIn") or (CONFIG.Initiator == "Ax.MsgTableSalesOrderIn")); _BEHAVIOR_AccessMode = "Intern"; // Voor AX is AccessMode altijd "Intern". (voorlopig toch) _BEHAVIOR_OperationMode = ""; if (CONFIG.ProcessMode == "Background") then _BEHAVIOR_OperationMode = "AxCreate"; else if (_IsNieuweIngaveInAx) then _BEHAVIOR_OperationMode = "New"; else _BEHAVIOR_OperationMode = "Edit"; end if; end if; _BEHAVIOR_ContextName = "null"; if (CONFIG.ProcessMode == "Background") then if (_IsInitiatorAxSalesOrderIn) then _BEHAVIOR_ContextName = "AxCreateEdi"; else _BEHAVIOR_ContextName = "AxCreateVH4"; /* * / _KenmerkenOorsprong = "VH4"; // VH4 of EDI of OCC [TODO] onderscheid nog te bepalen, indien mogelijk. if _KenmerkenOorsprong == "VH4" then _BEHAVIOR_ContextName = "AxCreateVH4"; end if; if _KenmerkenOorsprong == "OCC" then _BEHAVIOR_ContextName = "AxCreateOcc"; end if; /* */ end if; else if (_IsNieuweIngaveInAx) then _BEHAVIOR_ContextName = "AxNew"; else _IsEditEdiFromSalesOrderIn = _IsInitiatorAxSalesOrderIn; if _IsEditEdiFromSalesOrderIn then _BEHAVIOR_ContextName = "AxEditEdi"; else _BEHAVIOR_ContextName = "AxEdit"; end if; end if; end if; BEHAVIOR.AccessMode = _BEHAVIOR_AccessMode; BEHAVIOR.OperationMode = _BEHAVIOR_OperationMode; BEHAVIOR.ContextName = _BEHAVIOR_ContextName; BEHAVIOR.IsInteractive = (CONFIG.ProcessMode <> "Background"); CONFIG.InputMode = BEHAVIOR.OperationMode; CONFIG.Settings.OperationMode = BEHAVIOR.AccessMode; Instellen Gedrag Ax (AccessMode, OperationMode, ContextName) ;behavior.accessmode@value;behavior.operationmode@value;behavior.contextname@value;behavior.isinteractive@value;config.inputmode@value;config.settings.operationmode@value; BEHAVIOR.IsEconWeb local string _AccessMode = GetArg("operationmode"); local string _Configuration = GetArg("configuration"); local string _BEHAVIOR_AccessMode; local string _BEHAVIOR_OperationMode; local string _BEHAVIOR_ContextName; _BEHAVIOR_AccessMode = "Extern"; if (LCase(_AccessMode) == "intern") then _BEHAVIOR_AccessMode = "Intern"; end if; _BEHAVIOR_OperationMode = ""; if (CONFIG.TOKEN == "128eababb1a1596e3c130b0e0fd5be820334a01a16bf777d1c5439fcfa861e16") then _BEHAVIOR_OperationMode = "CreateConfig"; _BEHAVIOR_AccessMode = "Intern"; // CreateConfig volgt de beperkingen van de InterneVerwerking (o.a. voor EDI-bestellingen met specifieke verpakking of verlaagde rug of stalen rug) else if (_Configuration <> "") then _BEHAVIOR_OperationMode = "Edit"; else _BEHAVIOR_OperationMode = "New"; end if; end if; _BEHAVIOR_ContextName = "null"; if (_BEHAVIOR_OperationMode == "CreateConfig") then _BEHAVIOR_ContextName = "WebCreateConfig"; else if (_BEHAVIOR_OperationMode == "Edit") then _BEHAVIOR_ContextName = "WebShopEdit"; else _BEHAVIOR_ContextName = "WebShopNew"; end if; end if; BEHAVIOR.AccessMode = _BEHAVIOR_AccessMode; BEHAVIOR.OperationMode = _BEHAVIOR_OperationMode; BEHAVIOR.ContextName = _BEHAVIOR_ContextName; BEHAVIOR.IsInteractive = (_BEHAVIOR_OperationMode <> "CreateConfig"); CONFIG.InputMode = BEHAVIOR.OperationMode; CONFIG.Settings.OperationMode = BEHAVIOR.AccessMode; Instellen Gedrag Web (AccessMode, OperationMode, ContextName) ;behavior.accessmode@value;behavior.operationmode@value;behavior.contextname@value;behavior.isinteractive@value;config.inputmode@value;config.settings.operationmode@value; BEHAVIOR.IsEconAx Initialisatie AX ; true local string _AxKlantId = GetArg("AxKlantId"); local string _GeconverteerdeKlantId = CStr(CLng(_AxKlantId)); CONFIG.Settings.KlantId = _GeconverteerdeKlantId; local string _OorsprongKetting = GetArg("OorsprongKetting"); if (not (_OorsprongKetting == "")) then local long _PositieInOorsprongKettingNaOpeningshaakjes = 3; local long _PositieEersteKommaInOorsprongKetting = CLng(InStr(1; _OorsprongKetting; ",")); local long _AantalKaraktersVanPersonalityId = _PositieEersteKommaInOorsprongKetting - _PositieInOorsprongKettingNaOpeningshaakjes; local string _PersonalityId = Mid(_OorsprongKetting; _PositieInOorsprongKettingNaOpeningshaakjes; _AantalKaraktersVanPersonalityId); CONFIG.Settings.PersonalityId = _PersonalityId; local long _PositieEersteAanhalingstekenInOorsprongKetting = CLng(InStr(1; _OorsprongKetting; "\"")); local string _OorsprongKettingVanafPersonalityKlantId = Mid(_OorsprongKetting; _PositieEersteAanhalingstekenInOorsprongKetting + 1); local long _PositieTweedeAanhalingstekenInOorsprongKetting = CLng(InStr(1; _OorsprongKettingVanafPersonalityKlantId; "\"")) + _PositieEersteAanhalingstekenInOorsprongKetting; local long _AantalKaraktersVanPersonalityKlantId = _PositieTweedeAanhalingstekenInOorsprongKetting - _PositieEersteAanhalingstekenInOorsprongKetting - 1; local string _PersonalityKlantId = Mid(_OorsprongKetting; _PositieEersteAanhalingstekenInOorsprongKetting + 1; _AantalKaraktersVanPersonalityKlantId); if (CONFIG.Settings.PersonalityId == "1") then _PersonalityKlantId = Mid(_PersonalityKlantId; 4); // Bij Personality Van Hoecke moet "K||" eraf gestript worden. else local long _PositieEersteUnderscoreInPersonalityKlantId = CLng(InStr(1; _PersonalityKlantId; "_")); _PersonalityKlantId = Mid(_PersonalityKlantId; _PositieEersteUnderscoreInPersonalityKlantId + 1); // Bij andere Personalities moet de prefix eraf gestript worden. end if; CONFIG.Settings.PersonalityKlantId = _PersonalityKlantId; end if; if (CONFIG.Settings.PersonalityId == "") then CONFIG.Settings.PersonalityId = "1"; CONFIG.Settings.PersonalityKlantId = CONFIG.Settings.KlantId; end if; CONFIG.Settings.AXUserId = GetArg("axuserid"); // Alleen in AX CONFIG.Settings.IsMaatwerkViewerToegelaten = CBool(GetArg("IsMaatwerkViewerToegelaten")); // Alleen in AX SalesTableAx = GetArg("SalesTableAx"); Settings ophalen uit argumenten ;config.settings.klantid@value;config.settings.personalityid@value;config.settings.personalityklantid@value;config.settings.axuserid@value;config.settings.ismaatwerkviewertoegelaten@value;salestableax@value; not(BEHAVIOR.IsInteractive) // = AxCreate /* Data.Kenmerken.CorpusBreedte = CDbl(Replace(GetArg("data;kenmerken;corpusbreedte");".";",")); Data.Kenmerken.CorpusWanddikte = CDbl(Replace(GetArg("data;kenmerken;corpuswanddikte");".";",")); Data.Kenmerken.Familie = GetArg("data;kenmerken;familie"); Data.Kenmerken.HeeftOpvullijstLinks = CBool(GetArg("data;kenmerken;heeftopvullijstlinks")); Data.Kenmerken.HeeftOpvullijstRechts = CBool(GetArg("data;kenmerken;heeftopvullijstrechts")); Data.Kenmerken.IsBinnenbreedte = CBool(GetArg("data;kenmerken;isbinnenbreedte")); Data.Kenmerken.LadeDiepte = GetArg("data;kenmerken;ladediepte"); Data.Kenmerken.Variant = GetArg("data;kenmerken;variant"); Data.Kenmerken.VerpakkingType = GetArg("data;kenmerken;verpakkingtype"); Data.Lijn.Aantal = CDbl(GetArg("data;lijn;aantal")); Data.Lijn.Referentie = GetArg("data;lijn;referentie"); */ Kenmerken ophalen uit argumenten (Background) ; BEHAVIOR.IsInteractive Kenmerken ophalen uit argumenten (Interactive) ; BEHAVIOR.IsEconWeb if (CONFIG.Token == "") then // todo: configurator afsluiten indien geen token opgegeven local boolean _Result = true; //Exit(true;false); end if; Initialisatie web ; true STATE.KlantVoorkeurenSaved = false; Initialisatie states ;state.klantvoorkeurensaved@value; true local string _DebugMode = GetSetting("ui.debugmode"); if (LCase(_DebugMode) == "true") then Config.Settings.DebugMode = true; end if; $InspectorPane@visible = Config.Settings.DebugMode; Ophalen DebugMode ;config.settings.debugmode@value; BEHAVIOR.IsEconWeb local string _Connection = GetSetting("data.connectionstring"); local string _Query = "SELECT Id, Name FROM ti.MDLanguage WHERE Active = '1'"; CONFIG.Database.Languages@options = {}; CONFIG.Database.Languages@options = ExecuteOptionsQuery("CONFIG.Database.Languages"; true; _Connection; _Query); STATE.LanguagesLoaded = true; Actieve talen ophalen (Web) ;config.database.languages@options;state.languagesloaded@value; BEHAVIOR.IsInteractive HELP.HelpUrl = "mat/" + CONFIG.Language + ".xml"; Tooltips ;help.helpurl@value; true /* local boolean _Result = CopyOptionsToArray("UI.Kenmerken.NietMeeleverenOptions"; "UI.Kenmerken.NietMeeleveren"); index i of UI.Kenmerken.NietMeeleveren UI.Kenmerken.NietMeeleveren(i)@label = DATA.Kenmerken.NietMeeleveren@label; UI.Kenmerken.NietMeeleveren(i)@repeat = false; UI.Kenmerken.NietMeeleveren(i).IsSelected@style.controlclass = "vh-slidercheckbox"; UI.Kenmerken.NietMeeleveren(i).Text@style.controlclass = "vh-checkboxlist-item"; UI.Kenmerken.NietMeeleveren(i).Text = GetLocalizedLabel(UI.Kenmerken.NietMeeleveren(i).Text); end index; */ NietMeeleveren ; true local boolean _Result; local string _SaveAs = GetArg("saveas"); local string _Configuration = GetArg("configuration"); local string _Version = GetArg("version"); if (_SaveAs == "" and _Configuration <> "") then _SaveAs = ElementId(_Configuration; _Version); end if; if (CONFIG.ConfigurationName == "") then if (_SaveAs <> "") then CONFIG.ConfigurationName = _SaveAs; else CONFIG.ConfigurationName = NewId() + ",1"; end if; end if; if ((_SaveAs == "") and (CONFIG.ConfigurationName <> "")) then _Result = SetArg("saveas"; ElementName(CONFIG.ConfigurationName)); _SaveAs = CONFIG.ConfigurationName; end if; if ((CONFIG.ConfigurationName <> "") and (_SaveAs <> "") and (CONFIG.ConfigurationName <> _SaveAs)) then CONFIG.ConfigurationName = _SaveAs; end if; ConfigurationId bepalen ;config.configurationname@value; (CONFIG.Token <> "") and (BEHAVIOR.IsEconWeb) local string _Setting = GetSetting("data.vanhoecke.connectionstring.vhisie4.settings"); local string _Json = _Setting + CONFIG.Token; local boolean _Result; if not(BEHAVIOR.OperationMode == "CreateConfig") then // Setings ophalen op basis van de vh_token _Result = LoadFromJSONService("CONFIG.Settings.KeyValue"; _Json; false); /*if not(_Result) then ReturnValue = "{\"status\":\"cancel\"}"; _Result = Exit(true;false); end if;*/ end if; index i of CONFIG.Settings.KeyValue _Result = SetValue("CONFIG.Settings." + CONFIG.Settings.KeyValue(i).Name; CONFIG.Settings.KeyValue(i).Value); end index; Config settings ophalen (Web) ; true local collection _ExportPersonalities = {"3";"10";"11";"13";"14";"16";"17";"18";"19";"20";"32";"33";"34";"35";"36";"37";"38";"39";"40";"41";"42";"43";"44";"45"}; BEHAVIOR.IsExportPersonality = (Config.Settings.PersonalityId in _ExportPersonalities); Config settings ExportPersonalities ;behavior.isexportpersonality@value; (BEHAVIOR.IsEconWeb) and (CONFIG.Token <> "") Config settings hardcoded (settings voor de MP) ; true Config.ReferentieConfiguratie = GetArg("referentieconfiguratie"); ReferentieConfiguratie ophalen ;config.referentieconfiguratie@value; (BEHAVIOR.IsEconWeb) and (BEHAVIOR.IsInteractive) CONFIG.KlantVoorkeurenConfigurationName = DATA.Kenmerken.Variant + "_" + Config.Settings.PersonalityId + "_" + CONFIG.Settings.KlantId; KlantVoorkeuren naam bepalen ;config.klantvoorkeurenconfigurationname@value; true UI.Buttons.Top.SaveAndExitButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.DataKenmerkenInvullenVia','LeegmakenOnExit'" + "|" + "task:eCon.UI.Tasks.SetValueTask:'STATE.SavedAndExit','true'"; UI.Buttons.Top.SaveAndContinueButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.DataKenmerkenInvullenVia','LeegmakenOnExit'" + "|" +"task:eCon.UI.Tasks.SetValueTask:'STATE.SavedAndContinue','true'"; UI.Buttons.Top.CancelButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.Cancelled','true'"; UI.Buttons.Top.PreferencesButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.KlantVoorkeurenSaved','true'"; UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.StartMaatwerkViewer','true'"; UI.Buttons.Top.ProcessButton@default = "task:eCon.UI.Tasks.SetValueTask:'STATE.ProcessedAndExit','true'|task:eCon.UI.Tasks.ProcessAndExitTask"; UI.Buttons.Bottom.SaveAndExitButton@default = UI.Buttons.Top.SaveAndExitButton@default; UI.Buttons.Bottom.SaveAndContinueButton@default = UI.Buttons.Top.SaveAndContinueButton@default; local boolean _IsEditMode = (CONFIG.InputMode == "Edit"); local string _LabelSave = UI.Buttons.Top.SaveAndExitButton@label; if (_IsEditMode) then _LabelSave = TRL.SaveChangesButton@label; end if; UI.Buttons.Top.SaveAndExitButton@label = _LabelSave; UI.Buttons.Bottom.SaveAndExitButton@label = _LabelSave; UI.Buttons.Top.SaveAndExitButton@visible = BEHAVIOR.IsEconWeb; UI.Buttons.Top.SaveAndContinueButton@visible = not(_IsEditMode) and BEHAVIOR.IsEconWeb; UI.Buttons.Top.PreferencesButton@visible = BEHAVIOR.IsEconWeb; UI.Buttons.Top.ProcessButton@visible = BEHAVIOR.IsEconAx; UI.Buttons.Bottom.SaveAndExitButton@visible = BEHAVIOR.IsEconWeb; UI.Buttons.Bottom.SaveAndContinueButton@visible = not(_IsEditMode) and BEHAVIOR.IsEconWeb; UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@label = "Maatwerk Viewer"; Buttons ;ui.buttons.top.saveandexitbutton@default;ui.buttons.top.saveandcontinuebutton@default;ui.buttons.top.cancelbutton@default;ui.buttons.top.preferencesbutton@default;ui.mwviewer.inlinebuttons.startmaatwerkviewerbutton@default;ui.buttons.top.processbutton@default;ui.buttons.bottom.saveandexitbutton@default;ui.buttons.bottom.saveandcontinuebutton@default;ui.buttons.top.saveandexitbutton@visible;ui.buttons.top.saveandcontinuebutton@visible;ui.buttons.top.preferencesbutton@visible;ui.buttons.top.processbutton@visible;ui.buttons.bottom.saveandexitbutton@visible;ui.buttons.bottom.saveandcontinuebutton@visible; true local string SelectedOption = ""; SelectedOption = UI.Kenmerken.Materiaal; for i = 1 to len(UI.Kenmerken.Materiaal@options) UI.Kenmerken.Materiaal = UI.Kenmerken.Materiaal@option(i)@id; UI.Kenmerken.Materiaal.Text = DATA.Kenmerken.Materiaal@option(UI.Kenmerken.Materiaal.Value)@label; end for; UI.Kenmerken.Materiaal = SelectedOption; SelectedOption = UI.Kenmerken.MatAntislipFiberKleur; for i = 1 to len(UI.Kenmerken.MatAntislipFiberKleur@options) UI.Kenmerken.MatAntislipFiberKleur = UI.Kenmerken.MatAntislipFiberKleur@option(i)@id; UI.Kenmerken.MatAntislipFiberKleur.Text = GetLocalizedLabel("MatAntislipFiberKleur_" + UI.Kenmerken.MatAntislipFiberKleur); end for; UI.Kenmerken.MatAntislipFiberKleur = SelectedOption; SelectedOption = UI.Kenmerken.MatAntislipFlockKleur; for i = 1 to len(UI.Kenmerken.MatAntislipFlockKleur@options) UI.Kenmerken.MatAntislipFlockKleur = UI.Kenmerken.MatAntislipFlockKleur@option(i)@id; UI.Kenmerken.MatAntislipFlockKleur.Text = GetLocalizedLabel("MatAntislipFlockKleur_" + UI.Kenmerken.MatAntislipFlockKleur); end for; UI.Kenmerken.MatAntislipFlockKleur = SelectedOption; SelectedOption = UI.Kenmerken.MatVinylFiberglassKleur; for i = 1 to len(UI.Kenmerken.MatVinylFiberglassKleur@options) UI.Kenmerken.MatVinylFiberglassKleur = UI.Kenmerken.MatVinylFiberglassKleur@option(i)@id; UI.Kenmerken.MatVinylFiberglassKleur.Text = GetLocalizedLabel("MatVinylFiberglassKleur_" + UI.Kenmerken.MatVinylFiberglassKleur); end for; UI.Kenmerken.MatVinylFiberglassKleur = SelectedOption; Vertalingen UI image labels ;ui.kenmerken.materiaal@value;ui.kenmerken.matantislipfiberkleur@value;ui.kenmerken.matantislipflockkleur@value;ui.kenmerken.matvinylfiberglasskleur@value; true local boolean _IsIntern = (CONFIG.Settings.OperationMode == "Intern"); Beperkingen Intern/Extern ; true if not(BEHAVIOR.IsInteractive) then if (BEHAVIOR.IsEconWeb and (CONFIG.InputMode == "CreateConfig")) then STATE.DataKenmerkenInvullenVia = ""; end if; if (BEHAVIOR.OperationMode == "AxCreate") then STATE.DataKenmerkenInvullenVia = "GetArgs"; end if; else if (CONFIG.InputMode == "New") then STATE.DataKenmerkenInvullenVia = "InitieleDefaults"; end if; if (CONFIG.InputMode == "Edit") then STATE.DataKenmerkenInvullenVia = "UI"; end if; end if; Start StatenFlow DataKenmerkenInvullenVia ; true STATE.Initialized = false; Einde initialisatie ;state.initialized@value; BEHAVIOR.IsEconWeb and (CONFIG.InputMode == "CreateConfig") and STATE.KenmerkenIngevuldDoorWebCreateConfig and ((STATE.DataKenmerkenInvullenVia == "") or (CONFIG.Settings.Nabestellen.IsNabestelling and not(State.IsConfigNabestellenPlotsIngevuld))); if (CONFIG.Settings.Nabestellen.IsNabestelling) then State.IsConfigNabestellenPlotsIngevuld= true; STATE.DataKenmerkenInvullenVia = "BijhorendeLade"; else STATE.DataKenmerkenInvullenVia = "InitieleDefaults"; end if; Start StatenFlow DataKenmerkenInvullenVia voor CreateConfig Web ;state.isconfignabestellenplotsingevuld@value;state.datakenmerkeninvullenvia@value; State.IsConfigNabestellenPlotsIngevuld State.IsConfigNabestellenPlotsIngevuld= false; STATE.WinkelkarInfoCalculated = false; STATE.WinkelkarInfoDiverseCalculated = false; STATE.WinkelkarInfoAfmetingCalculated = false; Workaround voor staten ;state.isconfignabestellenplotsingevuld@value;state.winkelkarinfocalculated@value;state.winkelkarinfodiversecalculated@value;state.winkelkarinfoafmetingcalculated@value; true if (BEHAVIOR.isInteractive) then Default.Kenmerken.LadeToepassing = "L"; Default.Kenmerken.UitsparingData.UitsparingAantal = "Enkel"; Default.Kenmerken.VerpakkingType = "ORGALUX"; end if; Defaults instellen ;default.kenmerken.ladetoepassing@value;default.kenmerken.uitsparingdata.uitsparingaantal@value;default.kenmerken.verpakkingtype@value; (CONFIG.Settings.Nabestellen.BijhorendeLadeConfiguratie <> "") and (CONFIG.InputMode <> "Edit") and (CONFIG.Settings.Nabestellen.IsNabestelling) local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT TOP 1 * FROM eCon.Configurations WHERE name = '" + CONFIG.Settings.Nabestellen.BijhorendeLadeConfiguratie + "'"; CONFIG.Database.Configurations@options = {}; CONFIG.Database.Configurations@options = ExecuteOptionsQuery("CONFIG.Database.Configurations"; true; _Connection; _Query); STATE.BijhorendeLadeConfiguratieLoaded = true; BijhorendeLadeConfiguratie: ConfigId ophalen op basis van ReferentieConfiguratie ;config.database.configurations@options;state.bijhorendeladeconfiguratieloaded@value; STATE.BijhorendeLadeConfiguratieLoaded and (CONFIG.Database.Configurations.Name == CONFIG.Settings.Nabestellen.BijhorendeLadeConfiguratie) local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT propertyname, value FROM eCon.ConfigAnalyseProperties WHERE configid = '" + CONFIG.Database.Configurations.Id + "' AND propertyname LIKE 'Data.%'"; local boolean _Result; CONFIG.Database.ConfigAnalyseProperties@options = {}; CONFIG.Database.ConfigAnalyseProperties@options = ExecuteOptionsQuery("CONFIG.Database.ConfigAnalyseProperties"; true; _Connection; _Query); //Waarden worden rechtstreeks ingevuld in de rule van de betreffende properties BijhorendeLadeConfiguratie:: Properties ophalen op basis van ConfigId ;config.database.configanalyseproperties@options; (CONFIG.ReferentieConfiguratie <> "") and (CONFIG.InputMode <> "Edit") local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT TOP 1 * FROM eCon.Configurations WHERE name = '" + CONFIG.ReferentieConfiguratie + "'"; CONFIG.Database.Configurations@options = {}; CONFIG.Database.Configurations@options = ExecuteOptionsQuery("CONFIG.Database.Configurations"; true; _Connection; _Query); STATE.ReferentieConfiguratieLoaded = true; ReferentieConfiguratie: ConfigId ophalen op basis van ReferentieConfiguratie ;config.database.configurations@options;state.referentieconfiguratieloaded@value; STATE.ReferentieConfiguratieLoaded and (CONFIG.Database.Configurations.Name == CONFIG.ReferentieConfiguratie) STATE.ReferentieConfiguratieLoaded = false; local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT propertyname, value FROM eCon.ConfigAnalyseProperties WHERE configid = '" + CONFIG.Database.Configurations.Id + "' AND propertyname LIKE 'Data.%'"; local boolean _Result; CONFIG.Database.ConfigAnalyseProperties@options = {}; CONFIG.Database.ConfigAnalyseProperties@options = ExecuteOptionsQuery("CONFIG.Database.ConfigAnalyseProperties"; true; _Connection; _Query); for i = 1 to len(CONFIG.Database.ConfigAnalyseProperties@options) CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option(i)@id; if (Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default") in CONFIG.Defaults.ReferentieConfiguratie@options) then _Result = SetValue(Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default"); CONFIG.Database.ConfigAnalyseProperties.Value); end if; end for; ReferentieConfiguratie: Properties ophalen op basis van ConfigId ;state.referentieconfiguratieloaded@value;config.database.configanalyseproperties@options; (CONFIG.ReferentieConfiguratie == "") and (CONFIG.InputMode <> "Edit") and (CONFIG.Settings.KlantId <> "") and (CONFIG.Settings.PersonalityId <> "") local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT TOP 1 * FROM eCon.Configurations WHERE name = '" + CONFIG.KlantVoorkeurenConfigurationName + "'"; CONFIG.Database.Configurations@options = {}; CONFIG.Database.Configurations@options = ExecuteOptionsQuery("CONFIG.Database.Configurations"; true; _Connection; _Query); STATE.KlantVoorkeurenLoaded = true; KlantVoorkeuren: ConfigId ophalen op basis van KlantId ;config.database.configurations@options;state.klantvoorkeurenloaded@value; STATE.KlantVoorkeurenLoaded and (CONFIG.Database.Configurations.Name == CONFIG.KlantVoorkeurenConfigurationName) STATE.KlantVoorkeurenLoaded = false; local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT propertyname, value FROM eCon.ConfigAnalyseProperties WHERE configid = '" + CONFIG.Database.Configurations.Id + "' AND propertyname LIKE 'Data.%' AND value <> ''"; local boolean _Result; CONFIG.Database.ConfigAnalyseProperties@options = {}; CONFIG.Database.ConfigAnalyseProperties@options = ExecuteOptionsQuery("CONFIG.Database.ConfigAnalyseProperties"; true; _Connection; _Query); for i = 1 to len(CONFIG.Database.ConfigAnalyseProperties@options) CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option(i)@id; if (Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default") in CONFIG.Defaults.KlantVoorkeuren@options) then _Result = SetValue(Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default"); CONFIG.Database.ConfigAnalyseProperties.Value); end if; end for; KlantVoorkeuren: Properties ophalen op basis van ConfigId ;state.klantvoorkeurenloaded@value;config.database.configanalyseproperties@options; (CONFIG.ReferentieConfiguratie == "") and (CONFIG.InputMode <> "Edit") and (CONFIG.Settings.PersonalityId <> "") and (len(CONFIG.Database.ConfigAnalyseProperties) == 0) CONFIG.PersonalityVoorkeurenConfigurationName = DATA.Kenmerken.Variant + "_" + CONFIG.Settings.PersonalityId; local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT TOP 1 * FROM eCon.Configurations WHERE name = '" + CONFIG.PersonalityVoorkeurenConfigurationName + "'"; CONFIG.Database.Configurations@options = {}; CONFIG.Database.Configurations@options = ExecuteOptionsQuery("CONFIG.Database.Configurations"; true; _Connection; _Query); STATE.PersonalityVoorkeurenLoaded = true; PersonalityVoorkeuren: ConfigId ophalen op basis van PersonalityId ;config.personalityvoorkeurenconfigurationname@value;config.database.configurations@options;state.personalityvoorkeurenloaded@value; STATE.PersonalityVoorkeurenLoaded and (CONFIG.Database.Configurations.Name == CONFIG.PersonalityVoorkeurenConfigurationName) STATE.PersonalityVoorkeurenLoaded = false; local string _Connection = GetSetting("data.connectionstring") + ";cache=false"; local string _Query = "SELECT propertyname, value FROM eCon.ConfigAnalyseProperties WHERE configid = '" + CONFIG.Database.Configurations.Id + "' AND propertyname LIKE 'Data.%' AND value <> ''"; local boolean _Result; CONFIG.Database.ConfigAnalyseProperties@options = {}; CONFIG.Database.ConfigAnalyseProperties@options = ExecuteOptionsQuery("CONFIG.Database.ConfigAnalyseProperties"; true; _Connection; _Query); for i = 1 to len(CONFIG.Database.ConfigAnalyseProperties@options) CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option(i)@id; if (Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default") in CONFIG.Defaults.PersonalityVoorkeuren@options) then _Result = SetValue(Replace(CONFIG.Database.ConfigAnalyseProperties.PropertyName;"Data";"Default"); CONFIG.Database.ConfigAnalyseProperties.Value); end if; end for; PersonalityVoorkeuren: Properties ophalen op basis van ConfigId ;state.personalityvoorkeurenloaded@value;config.database.configanalyseproperties@options; true for i = 1 to len(DATA.Kenmerken.Materiaal@options) UI.Kenmerken.Materiaal@option(i)@valid = DATA.Kenmerken.Materiaal@option(i)@valid; end for; Valids ;ui.kenmerken.materiaal@valids; true /* local string SelectedOption = ""; SelectedOption = UI.Kenmerken.Materiaal; for i = 1 to len(UI.Kenmerken.Materiaal@options) UI.Kenmerken.Materiaal = UI.Kenmerken.Materiaal@option(i)@id; UI.Kenmerken.Materiaal.Text = DATA.Kenmerken.Materiaal@option(UI.Kenmerken.Materiaal.Value)@label; end for; UI.Kenmerken.Materiaal = SelectedOption; */ UI Image label ; true local string _DummyTrigger = UI.Kenmerken.Materiaal; if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.Materiaal == "")) then DATA.Kenmerken.Materiaal = Default.Kenmerken.Materiaal; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.Materiaal = Default.Kenmerken.Materiaal; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.Materiaal = GetArg("data;kenmerken;materiaal"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then DATA.Kenmerken.Materiaal = CONFIG.Settings.Nabestellen.Materiaal; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.Materiaal = UI.Kenmerken.Materiaal.Value; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.materiaal@value; true local string DummyTrigger = STATE.DataKenmerkenInvullenVia; UI.Kenmerken.Materiaal@default = DATA.Kenmerken.Materiaal; UI waarde instellen ;ui.kenmerken.materiaal@default; true if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.Kleur == "")) then DATA.Kenmerken.Kleur = Default.Kenmerken.Kleur; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.Kleur = Default.Kenmerken.Kleur; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.Kleur = GetArg("data;kenmerken;kleur"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then DATA.Kenmerken.Kleur = CONFIG.Settings.Nabestellen.Kleur; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.Kleur = switch (DATA.Kenmerken.Materiaal) case "CF": UI.Kenmerken.MatVinylFiberglassKleur.Value case "AF": UI.Kenmerken.MatAntislipFiberKleur.Value case "AZ": UI.Kenmerken.MatAntislipFlockKleur.Value else "" end switch; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.kleur@value; true local string MatKleur = ""; for i = 1 to len(DATA.Kenmerken.Kleur@options) MatKleur = DATA.Kenmerken.Kleur@option(i)@id; for j = 1 to len(UI.Kenmerken.MatAntislipFlockKleur@options) if (MatKleur == UI.Kenmerken.MatAntislipFlockKleur@option(j)@id) then UI.Kenmerken.MatAntislipFlockKleur@option(j)@valid = DATA.Kenmerken.Kleur@option(i)@valid; end if; end for; end for; Valids ; true /* local string SelectedOption = ""; SelectedOption = UI.Kenmerken.MatAntislipFlockKleur; for i = 1 to len(UI.Kenmerken.MatAntislipFlockKleur@options) UI.Kenmerken.MatAntislipFlockKleur = UI.Kenmerken.MatAntislipFlockKleur@option(i)@id; UI.Kenmerken.MatAntislipFlockKleur.Text = GetLocalizedLabel("MatAntislipFlockKleur_" + UI.Kenmerken.MatAntislipFlockKleur); end for; UI.Kenmerken.MatAntislipFlockKleur = SelectedOption; */ UI Image label ; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatAntislipFlockKleur = (DATA.Kenmerken.Materiaal == "AZ"); UI.Kenmerken.MatAntislipFlockKleur@visible = _HeeftMatAntislipFlockKleur; Visible ;ui.kenmerken.matantislipflockkleur@visible; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatAntislipFlockKleur = (DATA.Kenmerken.Materiaal == "AZ"); UI.Kenmerken.MatAntislipFlockKleur@mandatory = _HeeftMatAntislipFlockKleur; Mandatory ;ui.kenmerken.matantislipflockkleur@mandatory; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; if (DATA.Kenmerken.Materiaal == "AZ") then UI.Kenmerken.MatAntislipFlockKleur@default = DATA.Kenmerken.Kleur; else UI.Kenmerken.MatAntislipFlockKleur@default = ""; end if; UI waarde instellen ;ui.kenmerken.matantislipflockkleur@default; true local string MatKleur = ""; for i = 1 to len(DATA.Kenmerken.Kleur@options) MatKleur = DATA.Kenmerken.Kleur@option(i)@id; for j = 1 to len(UI.Kenmerken.MatAntislipFiberKleur@options) if (MatKleur == UI.Kenmerken.MatAntislipFiberKleur@option(j)@id) then UI.Kenmerken.MatAntislipFiberKleur@option(j)@valid = DATA.Kenmerken.Kleur@option(i)@valid; end if; end for; end for; Valids ; true /* local string SelectedOption = ""; SelectedOption = UI.Kenmerken.MatAntislipFiberKleur; for i = 1 to len(UI.Kenmerken.MatAntislipFiberKleur@options) UI.Kenmerken.MatAntislipFiberKleur = UI.Kenmerken.MatAntislipFiberKleur@option(i)@id; UI.Kenmerken.MatAntislipFiberKleur.Text = GetLocalizedLabel("MatAntislipFiberKleur_" + UI.Kenmerken.MatAntislipFiberKleur); end for; UI.Kenmerken.MatAntislipFiberKleur = SelectedOption; */ UI Image label ; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatAntislipFiberKleur = (DATA.Kenmerken.Materiaal == "AF"); UI.Kenmerken.MatAntislipFiberKleur@visible = _HeeftMatAntislipFiberKleur; Visible ;ui.kenmerken.matantislipfiberkleur@visible; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatAntislipFiberKleur = (DATA.Kenmerken.Materiaal == "AF"); UI.Kenmerken.MatAntislipFiberKleur@mandatory = _HeeftMatAntislipFiberKleur; Mandatory ;ui.kenmerken.matantislipfiberkleur@mandatory; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; if (DATA.Kenmerken.Materiaal == "AF") then UI.Kenmerken.MatAntislipFiberKleur@default = DATA.Kenmerken.Kleur; else UI.Kenmerken.MatAntislipFiberKleur@default = ""; end if; UI waarde instellen ;ui.kenmerken.matantislipfiberkleur@default; true local string MatKleur = ""; for i = 1 to len(DATA.Kenmerken.Kleur@options) MatKleur = DATA.Kenmerken.Kleur@option(i)@id; for j = 1 to len(UI.Kenmerken.MatVinylFiberglassKleur@options) if (MatKleur == UI.Kenmerken.MatVinylFiberglassKleur@option(j)@id) then UI.Kenmerken.MatVinylFiberglassKleur@option(j)@valid = DATA.Kenmerken.Kleur@option(i)@valid; end if; end for; end for; Valids ; true /* local string SelectedOption = ""; SelectedOption = UI.Kenmerken.MatVinylFiberglassKleur; for i = 1 to len(UI.Kenmerken.MatVinylFiberglassKleur@options) UI.Kenmerken.MatVinylFiberglassKleur = UI.Kenmerken.MatVinylFiberglassKleur@option(i)@id; UI.Kenmerken.MatVinylFiberglassKleur.Text = GetLocalizedLabel("MatVinylFiberglassKleur_" + UI.Kenmerken.MatVinylFiberglassKleur); end for; UI.Kenmerken.MatVinylFiberglassKleur = SelectedOption; */ UI Image label ; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatVinylFiberglassKleur = (DATA.Kenmerken.Materiaal == "CF"); UI.Kenmerken.MatVinylFiberglassKleur@visible = _HeeftMatVinylFiberglassKleur; Visible ;ui.kenmerken.matvinylfiberglasskleur@visible; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; local boolean _HeeftMatVinylFiberglassKleur = (DATA.Kenmerken.Materiaal == "CF"); UI.Kenmerken.MatVinylFiberglassKleur@mandatory = _HeeftMatVinylFiberglassKleur; Mandatory ;ui.kenmerken.matvinylfiberglasskleur@mandatory; true local string _DummyTrigger = DATA.Kenmerken.Materiaal; if (DATA.Kenmerken.Materiaal == "CF") then UI.Kenmerken.MatVinylFiberglassKleur@default = DATA.Kenmerken.Kleur; else UI.Kenmerken.MatVinylFiberglassKleur@default = ""; end if; UI waarde instellen ;ui.kenmerken.matvinylfiberglasskleur@default; true UI.Kenmerken.ViaNettoBreedte@option("True")@valid = not(DATA.Kenmerken.LadeToepassing in {"SP";"SY"}); Valids ;ui.kenmerken.vianettobreedte@valids; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.ViaNettoBreedte = CBool(GetArg("data;kenmerken;vianettobreedte")); end if; /* if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then end if; */ if (STATE.DataKenmerkenInvullenVia == "UI") then if (BEHAVIOR.AccessMode == "Extern") then DATA.Kenmerken.ViaNettoBreedte = UI.Kenmerken.ViaNettoDiepte; else DATA.Kenmerken.ViaNettoBreedte = UI.Kenmerken.ViaNettoBreedte; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.vianettobreedte@value; true UI.Kenmerken.ViaNettoBreedte@default = DATA.Kenmerken.ViaNettoBreedte; UI waarde instellen ;ui.kenmerken.vianettobreedte@default; true for i = 1 to len(DATA.Kenmerken.LadeType@options) UI.Kenmerken.LadeType@option(i)@valid = DATA.Kenmerken.LadeType@option(i)@valid; end for; Valids ;ui.kenmerken.ladetype@valids; true local boolean _IsLadeTypeZichtbaar = not(DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte); UI.Kenmerken.LadeType@visible = _IsLadeTypeZichtbaar; Visible ;ui.kenmerken.ladetype@visible; true UI.Kenmerken.LadeType@mandatory = not(DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte); Mandatory ;ui.kenmerken.ladetype@mandatory; true if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.LadeType == "")) then DATA.Kenmerken.LadeType = Default.Kenmerken.LadeType; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.LadeType = Default.Kenmerken.LadeType; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.LadeType = GetArg("data;kenmerken;ladetype"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Variant")@id; local string _LadeVariant = CONFIG.Database.ConfigAnalyseProperties.Value; if (_LadeVariant == "LBX") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Zijwandtype")@id; local string _ZijwandType = CONFIG.Database.ConfigAnalyseProperties.Value; if (_ZijwandType == "Free") then DATA.Kenmerken.LadeType = "LegraboxFree"; else DATA.Kenmerken.LadeType = "LegraboxPure"; end if; end if; if (_LadeVariant == "MVX") then DATA.Kenmerken.LadeType = "Merivobox"; end if; if (_LadeVariant == "TAX") then DATA.Kenmerken.LadeType = "Taorbox"; end if; if (_LadeVariant == "TBX") then DATA.Kenmerken.LadeType = "Tandembox"; end if; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.LadeType = UI.Kenmerken.LadeType; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if (not(UI.Kenmerken.LadeType@visible) and DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte) then DATA.Kenmerken.LadeType = ""; UI.Kenmerken.LadeType = ""; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ ;data.kenmerken.ladetype@value;config.database.configanalyseproperties@value; true local string DummyTrigger = STATE.DataKenmerkenInvullenVia; UI.Kenmerken.LadeType@default = DATA.Kenmerken.LadeType; UI waarde instellen ;ui.kenmerken.ladetype@default; true for i = 1 to len(DATA.Kenmerken.LadeToepassing@options) UI.Kenmerken.LadeToepassing@option(i)@valid = DATA.Kenmerken.LadeToepassing@option(i)@valid; end for; Valids ;ui.kenmerken.ladetoepassing@valids; true UI.Kenmerken.LadeToepassing@visible = not(DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte); Visible ;ui.kenmerken.ladetoepassing@visible; true UI.Kenmerken.LadeToepassing@mandatory = not(DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte); Mandatory ;ui.kenmerken.ladetoepassing@mandatory; true if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.LadeToepassing == "")) then DATA.Kenmerken.LadeToepassing = Default.Kenmerken.LadeToepassing ; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.LadeToepassing = Default.Kenmerken.LadeToepassing ; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.LadeToepassing = GetArg("data;kenmerken;ladetoepassing"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Toepassing")@id; if (CONFIG.Database.ConfigAnalyseProperties.Value in {"SP";"SP2"}) then DATA.Kenmerken.LadeToepassing = "SP"; end if; if (CONFIG.Database.ConfigAnalyseProperties.Value in {"SY";"SY3"}) then DATA.Kenmerken.LadeToepassing = "SY"; end if; if (CONFIG.Database.ConfigAnalyseProperties.Value in {"L"}) then DATA.Kenmerken.LadeToepassing = "L"; end if; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.LadeToepassing = UI.Kenmerken.LadeToepassing; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if (not(UI.Kenmerken.LadeToepassing@visible) and DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte) then DATA.Kenmerken.LadeToepassing = ""; UI.Kenmerken.LadeToepassing= ""; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ ;data.kenmerken.ladetoepassing@value;config.database.configanalyseproperties@value; true local string DummyTrigger = STATE.DataKenmerkenInvullenVia; local string _LadeToepassing; if (DATA.Kenmerken.ViaNettoBreedte or DATA.Kenmerken.ViaNettoDiepte) then _LadeToepassing = "L"; else _LadeToepassing = DATA.Kenmerken.LadeToepassing; end if; UI.Kenmerken.LadeToepassing@default = _LadeToepassing; UI waarde instellen ;ui.kenmerken.ladetoepassing@default; true UI.Kenmerken.IsBinnenBreedte@visible = not(DATA.Kenmerken.ViaNettoBreedte); Visible ;ui.kenmerken.isbinnenbreedte@visible; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.IsBinnenBreedte = Default.Kenmerken.IsBinnenBreedte; end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then if (not(GetArg("data;kenmerken;isbinnenbreedte") == "")) then DATA.Kenmerken.IsBinnenBreedte = CBool(GetArg("data;kenmerken;isbinnenbreedte")); end if; end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Isbinnenbreedte")@id; DATA.Kenmerken.IsBinnenBreedte = CBool(CONFIG.Database.ConfigAnalyseProperties.Value); end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.IsBinnenBreedte = UI.Kenmerken.IsBinnenBreedte; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;config.database.configanalyseproperties@value;data.kenmerken.isbinnenbreedte@value; true UI.Kenmerken.IsBinnenbreedte@default = DATA.Kenmerken.IsBinnenbreedte; UI waarde instellen ;ui.kenmerken.isbinnenbreedte@default; true UI.Kenmerken.CorpusWanddikte@visible = (not(UI.Kenmerken.IsBinnenbreedte) and not(DATA.Kenmerken.ViaNettoBreedte)); Visible ;ui.kenmerken.corpuswanddikte@visible; true UI.Kenmerken.CorpusWanddikte@mandatory = not(UI.Kenmerken.IsBinnenbreedte); Mandatory ;ui.kenmerken.corpuswanddikte@mandatory; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.CorpusWanddikte == "")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.CorpusWanddikte = CDbl(Replace(GetArg("data;kenmerken;corpuswanddikte");".";",")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Corpuswanddikte")@id; DATA.Kenmerken.Corpuswanddikte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.CorpusWanddikte = UI.Kenmerken.CorpusWanddikte; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if (DATA.Kenmerken.IsBinnenbreedte) then DATA.Kenmerken.CorpusWanddikte = 0; UI.Kenmerken.CorpusWanddikte = 0; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.corpuswanddikte@value;config.database.configanalyseproperties@value; true UI.Kenmerken.CorpusWanddikte@default = DATA.Kenmerken.CorpusWanddikte; UI waarde instellen ;ui.kenmerken.corpuswanddikte@default; true local string _Minimum = "1"; local string _Maximum = "100"; local string _multiplication = Replace("0,5";",";"."); if (UI.Kenmerken.CorpusWanddikte@visible and (STATE.ValidationNeeded or (UI.Kenmerken.CorpusWanddikte <> 0))) then if (BEHAVIOR.IsEconAx) then _multiplication = Replace("0,1";",";"."); end if; UI.Kenmerken.CorpusWanddikte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:" + _multiplication + ";maxdecimals:1;"; end if; if not(UI.Kenmerken.CorpusWanddikte@visible) then UI.Kenmerken.CorpusWanddikte@inputvalidation = ""; end if; Validatie ;ui.kenmerken.corpuswanddikte@rangeset; true UI.Kenmerken.CorpusBreedte@visible = not(DATA.Kenmerken.ViaNettoBreedte); Visible ;ui.kenmerken.corpusbreedte@visible; true UI.Kenmerken.CorpusBreedte@label = switch (UI.Kenmerken.IsBinnenbreedte) case true: TRL.CorpusBinnenbreedte@label else TRL.CorpusBuitenbreedte@label end switch; Label ; true UI.Kenmerken.CorpusBreedte@mandatory = not(DATA.Kenmerken.ViaNettoBreedte); Mandatory ;ui.kenmerken.corpusbreedte@mandatory; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.CorpusBreedte == "")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.CorpusBreedte = CDbl(Replace(GetArg("data;kenmerken;corpusbreedte");".";",")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Corpusbreedte")@id; DATA.Kenmerken.CorpusBreedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.CorpusBreedte = UI.Kenmerken.CorpusBreedte; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not(UI.Kenmerken.Corpusbreedte@visible) then DATA.Kenmerken.Corpusbreedte = 0; UI.Kenmerken.Corpusbreedte = 0; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.corpusbreedte@value;config.database.configanalyseproperties@value; true UI.Kenmerken.CorpusBreedte@default = DATA.Kenmerken.CorpusBreedte; UI waarde instellen ;ui.kenmerken.corpusbreedte@default; true UI.Kenmerken.HeeftOpvullijstLinks@visible = not(DATA.Kenmerken.ViaNettoBreedte); Visible ;ui.kenmerken.heeftopvullijstlinks@visible; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.HeeftOpvullijstLinks = Default.Kenmerken.HeeftOpvullijstLinks; end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.HeeftOpvullijstLinks = CBool(GetArg("data;kenmerken;heeftopvullijstlinks")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Heeftopvullijstlinks")@id; DATA.Kenmerken.HeeftOpvullijstLinks = CBool(CONFIG.Database.ConfigAnalyseProperties.Value); end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.HeeftOpvullijstLinks = UI.Kenmerken.HeeftOpvullijstLinks; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not(UI.Kenmerken.HeeftOpvullijstLinks@visible) then DATA.Kenmerken.HeeftOpvullijstLinks = false; UI.Kenmerken.HeeftOpvullijstLinks = false; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.heeftopvullijstlinks@value;config.database.configanalyseproperties@value; true UI.Kenmerken.HeeftOpvullijstLinks@default = DATA.Kenmerken.HeeftOpvullijstLinks; UI waarde instellen ;ui.kenmerken.heeftopvullijstlinks@default; true UI.Kenmerken.HeeftOpvullijstRechts@visible = not(DATA.Kenmerken.ViaNettoBreedte); Visible ;ui.kenmerken.heeftopvullijstrechts@visible; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.HeeftOpvullijstRechts = Default.Kenmerken.HeeftOpvullijstRechts ; end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.HeeftOpvullijstRechts = CBool(GetArg("data;kenmerken;heeftopvullijstrechts")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Heeftopvullijstrechts")@id; DATA.Kenmerken.HeeftOpvullijstRechts = CBool(CONFIG.Database.ConfigAnalyseProperties.Value); end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.HeeftOpvullijstRechts = UI.Kenmerken.HeeftOpvullijstRechts; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not(UI.Kenmerken.HeeftOpvullijstRechts@visible) then DATA.Kenmerken.HeeftOpvullijstRechts = false; UI.Kenmerken.HeeftOpvullijstRechts = false; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.heeftopvullijstrechts@value;config.database.configanalyseproperties@value; true UI.Kenmerken.HeeftOpvullijstLinks@default = DATA.Kenmerken.HeeftOpvullijstLinks; UI waarde instellen ;ui.kenmerken.heeftopvullijstlinks@default; true local boolean _HeeftOpvullijst = (UI.Kenmerken.HeeftOpvullijstLinks or UI.Kenmerken.HeeftOpvullijstRechts); UI.Kenmerken.OpvullijstDikte@visible = _HeeftOpvullijst; Visible ;ui.kenmerken.opvullijstdikte@visible; true UI.Kenmerken.OpvullijstDikte = 25; UI waarde instellen ;ui.kenmerken.opvullijstdikte@value; true UI.Kenmerken.HeeftTbxMinTolerantieIB@visible = false; //not(DATA.Kenmerken.ViaNettoBreedte) and (DATA.Kenmerken.LadeType == "Tandembox"); Visible ;ui.kenmerken.heefttbxmintolerantieib@visible; true if (DATA.Kenmerken.LadeType == "Tandembox") then if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Mintolerantieopib")@id; if (CONFIG.Database.ConfigAnalyseProperties.Value == "") then DATA.Kenmerken.HeeftTbxMinTolerantieIB = ((DATA.Kenmerken.Corpuswanddikte <> 0) and not(DATA.Kenmerken.IsBinnenbreedte)); else DATA.Kenmerken.HeeftTbxMinTolerantieIB = (if (CONFIG.Database.ConfigAnalyseProperties.Value <> "0") then true else false end if); end if; else DATA.Kenmerken.HeeftTbxMinTolerantieIB = ((DATA.Kenmerken.Corpuswanddikte <> 0) and not(DATA.Kenmerken.IsBinnenbreedte)); end if; else DATA.Kenmerken.HeeftTbxMinTolerantieIB = false; end if; DATA waarde instellen ; true UI.Kenmerken.HeeftTbxMinTolerantieIB@default = DATA.Kenmerken.HeeftTbxMinTolerantieIB; UI waarde instellen ;ui.kenmerken.heefttbxmintolerantieib@default; true UI.Kenmerken.NettoBreedte@enabled = DATA.Kenmerken.ViaNettoBreedte; Enabled ;ui.kenmerken.nettobreedte@enabled; true local double _CorpusWanddikte = DATA.Kenmerken.CorpusWanddikte; local double _OpvullijstDikte = DATA.BerekendeWaarden.OpvullijstDikte; local boolean _IsBinnenbreedte = DATA.Kenmerken.IsBinnenbreedte; local boolean _HeeftOpvullijstLinks = DATA.Kenmerken.HeeftOpvullijstLinks; local boolean _HeeftOpvullijstRechts = DATA.Kenmerken.HeeftOpvullijstRechts; local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); local long _AantalOpvullijsten = 0; if (_HeeftOpvullijstLinks) then _AantalOpvullijsten = _AantalOpvullijsten + 1; end if; if (_HeeftOpvullijstRechts) then _AantalOpvullijsten = _AantalOpvullijsten + 1; end if; if (_IsBinnenbreedte) then _CorpusWanddikte = 0; end if; local double _NettoBreedte = DATA.Kenmerken.CorpusBreedte - (2 * _CorpusWanddikte) - (_AantalOpvullijsten * _OpvullijstDikte); if ((DATA.Kenmerken.LadeType == "Tandembox") and (DATA.Kenmerken.HeeftTbxMinTolerantieIB)) then _NettoBreedte= (_NettoBreedte- 1); end if; DATA.BerekendeWaarden.InterneBreedte = _NettoBreedte; /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.NettoBreedte = CDbl(Replace(GetArg("data;kenmerken;nettobreedte");".";",")); end if; /* if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then end if; */ if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.NettoBreedte = UI.Kenmerken.NettoBreedte; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ if not(DATA.Kenmerken.ViaNettoBreedte) then if (DATA.Kenmerken.LadeType == "Merivobox") then _NettoBreedte = (_NettoBreedte - 57); end if; if (DATA.Kenmerken.LadeType == "LegraboxPure") then _NettoBreedte = (_NettoBreedte - (2 * 21)); if (_IsLbxSpoelbaklade) then _NettoBreedte = 122; end if; end if; if (DATA.Kenmerken.LadeType == "LegraboxFree") then _NettoBreedte = (_NettoBreedte - (2 * 21) - (2 * 1)); if (_IsLbxSpoelbaklade) then _NettoBreedte = 122; end if; end if; if (DATA.Kenmerken.LadeType == "Taorbox") then _NettoBreedte = (_NettoBreedte - 0.5 - (2 * 21)); end if; if (DATA.Kenmerken.LadeType == "Tandembox") then _NettoBreedte = (_NettoBreedte - 85); end if; //Op deze manier ziet de gebruiker geen negatieve waarden. if (_NettoBreedte < 0) then _NettoBreedte = 0; end if; DATA.Kenmerken.NettoBreedte = _NettoBreedte; end if; DATA waarde instellen ;data.berekendewaarden.internebreedte@value;data.kenmerken.nettobreedte@value; true UI.Kenmerken.NettoBreedte@default = DATA.Kenmerken.NettoBreedte; UI waarde instellen ;ui.kenmerken.nettobreedte@default; true local string _Minimum = "50"; local string _Maximum = "1500"; if (UI.Kenmerken.NettoBreedte@visible and (STATE.ValidationNeeded or (UI.Kenmerken.NettoBreedte <> 0))) then UI.Kenmerken.NettoBreedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.NettoBreedte@inputvalidation = ""; end if; Validatie ;ui.kenmerken.nettobreedte@rangeset; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.ViaNettoDiepte = CBool(GetArg("data;kenmerken;vianettodiepte")); end if; /* if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then end if; */ if (STATE.DataKenmerkenInvullenVia == "UI") then if (BEHAVIOR.AccessMode == "Extern") then DATA.Kenmerken.ViaNettoDiepte = UI.Kenmerken.ViaNettoBreedte; else DATA.Kenmerken.ViaNettoDiepte = UI.Kenmerken.ViaNettoDiepte; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.vianettodiepte@value; true UI.Kenmerken.ViaNettoDiepte@default = DATA.Kenmerken.ViaNettoDiepte; UI waarde instellen ;ui.kenmerken.vianettodiepte@default; true for i = 1 to len(DATA.Kenmerken.LadeDiepte@options) UI.Kenmerken.LadeDiepte@option(i)@valid = DATA.Kenmerken.LadeDiepte@option(i)@valid; end for; Valids ;ui.kenmerken.ladediepte@valids; true UI.Kenmerken.LadeDiepte@visible = not(DATA.Kenmerken.ViaNettoDiepte); Visible ;ui.kenmerken.ladediepte@visible; true UI.Kenmerken.LadeDiepte@mandatory = not(DATA.Kenmerken.ViaNettoDiepte); Mandatory ;ui.kenmerken.ladediepte@mandatory; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.LadeDiepte == "")) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.LadeDiepte = GetArg("data;kenmerken;ladediepte"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.LadeDiepte")@id; DATA.Kenmerken.LadeDiepte = CONFIG.Database.ConfigAnalyseProperties.Value; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.LadeDiepte = UI.Kenmerken.LadeDiepte; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not(UI.Kenmerken.LadeDiepte@visible) then DATA.Kenmerken.LadeDiepte = ""; UI.Kenmerken.LadeDiepte = ""; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ ;data.kenmerken.ladediepte@value;config.database.configanalyseproperties@value; true UI.Kenmerken.LadeDiepte@default = DATA.Kenmerken.LadeDiepte; UI waarde instellen ;ui.kenmerken.ladediepte@default; true local collection _LbxLadeTypes = {"LegraboxPure";"LegraboxFree"}; UI.Kenmerken.HeeftLbxBinnenladeGlazenFront@visible = not(DATA.Kenmerken.ViaNettoDiepte) and (DATA.Kenmerken.LadeType in _LbxLadeTypes); Visible ;ui.kenmerken.heeftlbxbinnenladeglazenfront@visible; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") ) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront = CBool(GetArg("data;kenmerken;heeftlbxbinnenladeglazenfront")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then local collection VariantenGlas = {"Glas";"GlasHoog";"GlasLaag"}; CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Isbinnenlade")@id; local boolean _IsBinnenlade = CBool(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Voorwandtypevancbinnenlade")@id; local string _Voorwandtypevancbinnenlade = CONFIG.Database.ConfigAnalyseProperties.Value; CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Voorwandtypevankbinnenlade")@id; local string _Voorwandtypevankbinnenlade = CONFIG.Database.ConfigAnalyseProperties.Value; CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Voorwandtypevanmbinnenlade")@id; local string _Voorwandtypevanmbinnenlade = CONFIG.Database.ConfigAnalyseProperties.Value; if (_Voorwandtypevancbinnenlade in VariantenGlas) or (_Voorwandtypevankbinnenlade in VariantenGlas) or (_Voorwandtypevanmbinnenlade in VariantenGlas) then DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront = true; end if; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront = UI.Kenmerken.HeeftLbxBinnenladeGlazenFront; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not(UI.Kenmerken.HeeftLbxBinnenladeGlazenFront@visible) then DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront = false; UI.Kenmerken.HeeftLbxBinnenladeGlazenFront = false; end if; end if; /* if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.kenmerken.heeftlbxbinnenladeglazenfront@value;config.database.configanalyseproperties@value; true UI.Kenmerken.HeeftLbxBinnenladeGlazenFront@default = DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront; UI waarde instellen ;ui.kenmerken.heeftlbxbinnenladeglazenfront@default; true UI.Kenmerken.ViaNettoDiepte@option("True")@valid = not(DATA.Kenmerken.LadeToepassing in {"SP";"SY"}); Valids ;ui.kenmerken.vianettodiepte@valids; true UI.Kenmerken.NettoDiepte@enabled = DATA.Kenmerken.ViaNettoDiepte; Enabled ;ui.kenmerken.nettodiepte@enabled; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") ) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.NettoDiepte = CDbl(Replace(GetArg("data;kenmerken;nettodiepte");".";",")); end if; /* if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then end if; */ if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.NettoDiepte = UI.Kenmerken.NettoDiepte; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ local double _NettoDiepte = CDbl(DATA.Kenmerken.LadeDiepte); if not(DATA.Kenmerken.ViaNettoDiepte) then if (DATA.Kenmerken.LadeType == "Merivobox") then _NettoDiepte = (_NettoDiepte - 27); end if; if (DATA.Kenmerken.LadeType == "LegraboxPure") then _NettoDiepte = (_NettoDiepte- 27); if (DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront) then _NettoDiepte = (_NettoDiepte - 13); end if; end if; if (DATA.Kenmerken.LadeType == "LegraboxFree") then _NettoDiepte = (_NettoDiepte - 27); if (DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront) then _NettoDiepte = (_NettoDiepte - 13); end if; end if; if (DATA.Kenmerken.LadeType == "Taorbox") then _NettoDiepte = (_NettoDiepte - 27); end if; if (DATA.Kenmerken.LadeType == "Tandembox") then _NettoDiepte = (_NettoDiepte - 27); end if; //Op deze manier ziet de gebruiker geen negatieve waarden. if (_NettoDiepte < 0) then _NettoDiepte = 0; end if; DATA.Kenmerken.NettoDiepte = _NettoDiepte ; end if; DATA waarde instellen ;data.kenmerken.nettodiepte@value; true UI.Kenmerken.NettoDiepte@default = DATA.Kenmerken.NettoDiepte; UI waarde instellen ;ui.kenmerken.nettodiepte@default; true local string _Minimum = "50"; local string _MaximumDiepteMateriaalAFKleurFS = "723"; local string _MaximumDiepteMateriaalCF = "665"; local string _MaximumDiepte = "623"; local string _InputValidatie = ""; if (UI.Kenmerken.NettoDiepte@visible and (STATE.ValidationNeeded or (UI.Kenmerken.NettoDiepte<> 0))) then _InputValidatie = "min:" + _Minimum + ";max:" + _MaximumDiepte + ";multiplication:0.1;maxdecimals:1;"; if ((DATA.Kenmerken.Materiaal == "AF") and (DATA.Kenmerken.Kleur == "FS")) then _InputValidatie = "min:" + _Minimum + ";max:" + _MaximumDiepteMateriaalAFKleurFS + ";multiplication:0.1;maxdecimals:1;"; end if; if (DATA.Kenmerken.Materiaal == "CF") then _InputValidatie = "min:" + _Minimum + ";max:" + _MaximumDiepteMateriaalCF + ";multiplication:0.1;maxdecimals:1;"; end if; UI.Kenmerken.NettoDiepte@inputvalidation = _InputValidatie; else _InputValidatie = ""; end if; UI.Kenmerken.NettoDiepte@inputvalidation = _InputValidatie; Validatie ;ui.kenmerken.nettodiepte@rangeset; true for i = 1 to len(DATA.Kenmerken.UitsparingData.UitsparingAantal@options) UI.Kenmerken.UitsparingData.UitsparingAantal@option(i)@valid = DATA.Kenmerken.UitsparingData.UitsparingAantal@option(i)@valid; end for; Valids ;ui.kenmerken.uitsparingdata.uitsparingaantal@valids; true local boolean _HeeftUitsparingData = (DATA.Kenmerken.LadeToepassing in {"SP";"SY"}); local boolean _HeeftDubbeleUitsparing = (_HeeftUitsparingData and (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel")); local boolean _IsSifonLade = (DATA.Kenmerken.LadeToepassing == "SY"); local boolean _IsSpoelbakLade = (DATA.Kenmerken.LadeToepassing == "SP"); local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); local boolean _IsLbxlade = (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"}); local boolean _IsTaxlade = (DATA.Kenmerken.LadeType == "Taorbox"); local boolean _IsMvxlade = (DATA.Kenmerken.LadeType == "Merivobox"); local boolean _IsTbxlade = (DATA.Kenmerken.LadeType == "Tandembox"); local boolean _IsUitsparingDiepteVisible = ((_IsTaxLade and _IsSifonLade ) or (_IsMvxlade and _IsSpoelbakLade)); UI.Kenmerken.UitsparingData@visible = _HeeftUitsparingData; UI.Kenmerken.UitsparingData.UitsparingAantal@visible = _IsSifonLade; UI.Kenmerken.UitsparingData.M@visible = _HeeftDubbeleUitsparing; UI.Kenmerken.UitsparingData.Diepte@visible = _IsUitsparingDiepteVisible; UI.Kenmerken.UitsparingData.Z1@visible = not(_IsLbxSpoelbaklade); UI.Kenmerken.UitsparingData.Z2@visible = _HeeftDubbeleUitsparing; UI.Kenmerken.UitsparingData.UitsparingData_TotaleBreedte@visible = not(_IsLbxSpoelbaklade); UI.Kenmerken.UitsparingData.UitsparingData_VerwachteBreedte@visible = not(_IsLbxSpoelbaklade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B124")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B147")@visible = (_IsTbxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B160")@visible = ((_IsMvxlade or _IsLbxlade or _IsTbxlade) and _IsSifonLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B197")@visible = (_IsTbxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B274")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B300")@visible = ((_IsMvxlade or _IsLbxlade) and _IsSifonLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B350")@visible = (_IsMvxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B470")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B570")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("B770")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z1.UitsparingCode@option("SP_Recht_D350_BM")@visible = (_IsTbxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Z2.UitsparingCode@option("B124")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Z2.UitsparingCode@option("B160")@visible = ((_IsMvxlade or _IsLbxlade or _IsTbxlade) and _IsSifonLade); UI.Kenmerken.UitsparingData.Z2.UitsparingCode@option("B274")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Z2.UitsparingCode@option("B300")@visible = ((_IsMvxlade or _IsLbxlade) and _IsSifonLade); UI.Kenmerken.UitsparingData.Z2.UitsparingCode@option("B350")@visible = (_IsMvxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D240")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D250")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D270")@visible = (_IsTaxlade and _IsSifonLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D300")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D350")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D400")@visible = (_IsMvxlade and _IsSpoelbakLade); UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@option("D450")@visible = (_IsMvxlade and _IsSpoelbakLade); Visible ;ui.kenmerken.uitsparingdata@visible;ui.kenmerken.uitsparingdata.uitsparingaantal@visible;ui.kenmerken.uitsparingdata.m@visible;ui.kenmerken.uitsparingdata.diepte@visible;ui.kenmerken.uitsparingdata.z1@visible;ui.kenmerken.uitsparingdata.z2@visible;ui.kenmerken.uitsparingdata.uitsparingdata_totalebreedte@visible;ui.kenmerken.uitsparingdata.uitsparingdata_verwachtebreedte@visible;ui.kenmerken.uitsparingdata.z1.uitsparingcode@options;ui.kenmerken.uitsparingdata.z2.uitsparingcode@options;ui.kenmerken.uitsparingdata.diepte.uitsparingcode@options; true local boolean _HeeftUitsparingData = (DATA.Kenmerken.LadeToepassing in {"SP";"SY"}); local boolean _HeeftDubbeleUitsparing = (_HeeftUitsparingData and(DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel")); local boolean _IsSifonLade = (DATA.Kenmerken.LadeToepassing == "SY"); local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); UI.Kenmerken.UitsparingData.UitsparingAantal@mandatory = _HeeftUitsparingData; UI.Kenmerken.UitsparingData.X.Breedte@mandatory = _HeeftUitsparingData; UI.Kenmerken.UitsparingData.M.Breedte@mandatory = _HeeftDubbeleUitsparing; UI.Kenmerken.UitsparingData.Z1.Breedte@mandatory = (_HeeftUitsparingData and not(_IsLbxSpoelbaklade)); UI.Kenmerken.UitsparingData.Diepte.Diepte@mandatory = (_HeeftUitsparingData and not(_IsLbxSpoelbaklade)); UI.Kenmerken.UitsparingData.Y.Breedte@mandatory = _HeeftUitsparingData; UI.Kenmerken.UitsparingData.Z2.Breedte@mandatory = _HeeftDubbeleUitsparing; Mandatory ;ui.kenmerken.uitsparingdata.uitsparingaantal@mandatory;ui.kenmerken.uitsparingdata.x.breedte@mandatory;ui.kenmerken.uitsparingdata.m.breedte@mandatory;ui.kenmerken.uitsparingdata.z1.breedte@mandatory;ui.kenmerken.uitsparingdata.diepte.diepte@mandatory;ui.kenmerken.uitsparingdata.y.breedte@mandatory;ui.kenmerken.uitsparingdata.z2.breedte@mandatory; true local boolean _UitsparingDataXEnabled = true; local boolean _UitsparingDataMEnabled = true; local boolean _UitsparingDataYEnabled = true; local boolean _UitsparingDataZ1Enabled = (UI.Kenmerken.UitsparingData.Z1.UitsparingCode == "SP_Recht_D350_BM"); local boolean _UitsparingDataZ2Enabled = (UI.Kenmerken.UitsparingData.Z2.UitsparingCode == "SP_Recht_D350_BM"); local boolean _UitsparingDataDiepteEnabled = false; local string TriggerDummy = DATA.Kenmerken.LadeType; if (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"}) then if (DATA.kenmerken.LadeToepassing == "SP") then _UitsparingDataXEnabled = false; _UitsparingDataYEnabled = false; end if; end if; UI.Kenmerken.UitsparingData.X.Breedte@enabled = _UitsparingDataXEnabled; UI.Kenmerken.UitsparingData.M.Breedte@enabled = _UitsparingDataMEnabled; UI.Kenmerken.UitsparingData.Y.Breedte@enabled = _UitsparingDataYEnabled; UI.Kenmerken.UitsparingData.Z1.Breedte@enabled = _UitsparingDataZ1Enabled; UI.Kenmerken.UitsparingData.Z2.Breedte@enabled = _UitsparingDataZ2Enabled; UI.Kenmerken.UitsparingData.Diepte.Diepte@enabled = _UitsparingDataDiepteEnabled; Enabled ;ui.kenmerken.uitsparingdata.x.breedte@enabled;ui.kenmerken.uitsparingdata.m.breedte@enabled;ui.kenmerken.uitsparingdata.y.breedte@enabled;ui.kenmerken.uitsparingdata.z1.breedte@enabled;ui.kenmerken.uitsparingdata.z2.breedte@enabled;ui.kenmerken.uitsparingdata.diepte.diepte@enabled; true $UitsparingPane@label = switch (DATA.Kenmerken.LadeToepassing) case "SY": DATA.Kenmerken.LadeToepassing@option("SY")@label case "SP": DATA.Kenmerken.LadeToepassing@option("SP")@label else "" end switch; if (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Enkel") then UI.Kenmerken.UitsparingData.Z1@label = TRL.Z@label; else UI.Kenmerken.UitsparingData.Z1@label = TRL.Z1@label; end if; Label ; true if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.UitsparingData.UitsparingAantal == "")) then DATA.Kenmerken.UitsparingData.UitsparingAantal = Default.Kenmerken.UitsparingData.UitsparingAantal; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.UitsparingData.UitsparingAantal = Default.Kenmerken.UitsparingData.UitsparingAantal; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.UitsparingData.UitsparingAantal = GetArg("data;kenmerken;uitsparingdata;uitsparingaantal"); DATA.Kenmerken.UitsparingData.X.Breedte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;x;breedte");".";",")); DATA.Kenmerken.UitsparingData.M.Breedte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;m;breedte");".";",")); DATA.Kenmerken.UitsparingData.Y.Breedte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;y;breedte");".";",")); DATA.Kenmerken.UitsparingData.Z1.Breedte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;z1;breedte");".";",")); DATA.Kenmerken.UitsparingData.Z1.Diepte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;z1;diepte");".";",")); DATA.Kenmerken.UitsparingData.Z2.Breedte = CDbl(Replace(GetArg("data;kenmerken;uitsparingdata;z2;breedte");".";",")); end if; if ((STATE.DataKenmerkenInvullenVia == "BijhorendeLade") and (DATA.Kenmerken.LadeToepassing in {"SP";"SY"})) then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.Uitsparingaantal")@id; DATA.Kenmerken.UitsparingData.UitsparingAantal = CONFIG.Database.ConfigAnalyseProperties.Value; CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.X.Breedte")@id; DATA.Kenmerken.UitsparingData.X.Breedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.M.Breedte")@id; DATA.Kenmerken.UitsparingData.M.Breedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.Y.Breedte")@id; DATA.Kenmerken.UitsparingData.Y.Breedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.Z1.Breedte")@id; DATA.Kenmerken.UitsparingData.Z1.Breedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.Z1.Diepte")@id; DATA.Kenmerken.UitsparingData.Z1.Diepte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Kenmerken.Uitsparingdata.Z2.Breedte")@id; DATA.Kenmerken.UitsparingData.Z2.Breedte = CDbl(CONFIG.Database.ConfigAnalyseProperties.Value); if (DATA.Kenmerken.UitsparingData.Z1.Breedte in {124;147;160;197;274;300;350;470;570;770}) then DATA.Kenmerken.UitsparingData.Z1.UitsparingCode = "B" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Breedte); else DATA.Kenmerken.UitsparingData.Z1.UitsparingCode = "SP_Recht_D350_BM"; end if; if (DATA.Kenmerken.UitsparingData.Z2.Breedte in {124;160;274;300;350}) then DATA.Kenmerken.UitsparingData.Z2.UitsparingCode = "B" + Cstr(DATA.Kenmerken.UitsparingData.Z2.Breedte); end if; if (DATA.Kenmerken.UitsparingData.Z1.Diepte in {240;250;270;300;350;400;450}) then UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode = "D" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Diepte); end if; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.UitsparingData.UitsparingAantal = UI.Kenmerken.UitsparingData.UitsparingAantal; DATA.Kenmerken.UitsparingData.X.Breedte = UI.Kenmerken.UitsparingData.X.Breedte; DATA.Kenmerken.UitsparingData.M.Breedte = UI.Kenmerken.UitsparingData.M.Breedte; DATA.Kenmerken.UitsparingData.Y.Breedte = UI.Kenmerken.UitsparingData.Y.Breedte; DATA.Kenmerken.UitsparingData.Z1.Breedte = UI.Kenmerken.UitsparingData.Z1.Breedte; DATA.Kenmerken.UitsparingData.Z1.Diepte = UI.Kenmerken.UitsparingData.Diepte.Diepte; DATA.Kenmerken.UitsparingData.Z1.UitsparingCode = UI.Kenmerken.UitsparingData.Z1.UitsparingCode; DATA.Kenmerken.UitsparingData.Z2.Breedte = UI.Kenmerken.UitsparingData.Z2.Breedte; DATA.Kenmerken.UitsparingData.Z2.UitsparingCode = UI.Kenmerken.UitsparingData.Z2.UitsparingCode; end if; if (DATA.kenmerken.LadeToepassing == "SP") then DATA.Kenmerken.UitsparingData.UitsparingAantal = "Enkel"; end if; local string _CodeZ1 = DATA.Kenmerken.UitsparingData.Z1.Uitsparingcode; local string _CodeZ2 = DATA.Kenmerken.UitsparingData.Z2.Uitsparingcode; local string _CodeDiepte = UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode; switch _CodeZ1 case "B124": DATA.Kenmerken.UitsparingData.Z1.Breedte = 124; case "B147": DATA.Kenmerken.UitsparingData.Z1.Breedte = 147; case "B160": DATA.Kenmerken.UitsparingData.Z1.Breedte = 160; case "B197": DATA.Kenmerken.UitsparingData.Z1.Breedte = 197; case "B274": DATA.Kenmerken.UitsparingData.Z1.Breedte = 274; case "B300": DATA.Kenmerken.UitsparingData.Z1.Breedte = 300; case "B350": DATA.Kenmerken.UitsparingData.Z1.Breedte = 350; case "B470": DATA.Kenmerken.UitsparingData.Z1.Breedte = 470; case "B570": DATA.Kenmerken.UitsparingData.Z1.Breedte = 570; case "B770": DATA.Kenmerken.UitsparingData.Z1.Breedte = 770; end switch; switch _CodeZ2 case "B124": DATA.Kenmerken.UitsparingData.Z2.Breedte = 124; case "B160": DATA.Kenmerken.UitsparingData.Z2.Breedte = 160; case "B274": DATA.Kenmerken.UitsparingData.Z2.Breedte = 274; case "B300": DATA.Kenmerken.UitsparingData.Z2.Breedte = 300; case "B350": DATA.Kenmerken.UitsparingData.Z2.Breedte = 350; end switch; switch _CodeDiepte case "D240": DATA.Kenmerken.UitsparingData.Z1.Diepte = 240; case "D250": DATA.Kenmerken.UitsparingData.Z1.Diepte = 250; case "D270": DATA.Kenmerken.UitsparingData.Z1.Diepte = 270; case "D300": DATA.Kenmerken.UitsparingData.Z1.Diepte = 300; case "D350": DATA.Kenmerken.UitsparingData.Z1.Diepte = 350; case "D400": DATA.Kenmerken.UitsparingData.Z1.Diepte = 400; case "D450": DATA.Kenmerken.UitsparingData.Z1.Diepte = 450; end switch; if (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"}) then if (DATA.kenmerken.LadeToepassing == "SP") then DATA.Kenmerken.UitsparingData.X.Breedte = 158; DATA.Kenmerken.UitsparingData.Y.Breedte = 158; //DATA.Kenmerken.UitsparingData.Z1.Diepte = CDbl(DATA.kenmerken.LadeDiepte); //Als deze lijn actief staat komen we in een oneindige lop en krijgen we een melding in de UI. Betere optie is om de diepte bij MBX SP pas bij het afsluiten correct in te vullen. end if; if (DATA.kenmerken.LadeToepassing == "SY") then DATA.Kenmerken.UitsparingData.Z1.Diepte = 240; end if; end if; if (DATA.Kenmerken.LadeType == "Merivobox") then if (DATA.kenmerken.LadeToepassing == "SY") then DATA.Kenmerken.UitsparingData.Z1.Diepte = 240; end if; end if; if (DATA.Kenmerken.LadeType == "Tandembox") then if (DATA.kenmerken.LadeToepassing == "SY") then DATA.Kenmerken.UitsparingData.Z1.Breedte = 160; DATA.Kenmerken.UitsparingData.Z2.Breedte = 160; DATA.Kenmerken.UitsparingData.Z1.Diepte = 240; end if; if (DATA.kenmerken.LadeToepassing == "SP") then DATA.Kenmerken.UitsparingData.Z1.Diepte = CDbl(DATA.kenmerken.LadeDiepte) - 150; end if; end if; /* if (DATA.Kenmerken.LadeType == "Taorbox") then end if; */ local string _VorigeLadeTypeLadeToepassing = UI.PropertiesEnkelVoorInCodeVanRules.VorigeLadeTypeLadeToepassing; local string _HuidigLadeTypeLadeToepassing = DATA.Kenmerken.LadeType + DATA.Kenmerken.LadeToepassing; local boolean _IsLadeTypeOfLadeToepasingGewijzigd = (_HuidigLadeTypeLadeToepassing <> _VorigeLadeTypeLadeToepassing) if (BEHAVIOR.IsInteractive and _IsLadeTypeOfLadeToepasingGewijzigd) then UI.PropertiesEnkelVoorInCodeVanRules.VorigeLadeTypeLadeToepassing = DATA.Kenmerken.LadeType + DATA.Kenmerken.LadeToepassing; DATA.Kenmerken.UitsparingData.X.Breedte = 0; DATA.Kenmerken.UitsparingData.M.Breedte = 0; DATA.Kenmerken.UitsparingData.Y.Breedte = 0; DATA.Kenmerken.UitsparingData.Z1.Breedte = 0; DATA.Kenmerken.UitsparingData.Z1.Diepte = 0; DATA.Kenmerken.UitsparingData.Z1.UitsparingCode = ""; DATA.Kenmerken.UitsparingData.Z2.Breedte = 0; DATA.Kenmerken.UitsparingData.Z2.UitsparingCode = ""; end if; if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then if not($UitsparingPane@visible) then DATA.Kenmerken.UitsparingData.UitsparingAantal = ""; DATA.Kenmerken.UitsparingData.X.Breedte = 0; DATA.Kenmerken.UitsparingData.M.Breedte = 0; DATA.Kenmerken.UitsparingData.Y.Breedte = 0; DATA.Kenmerken.UitsparingData.Z1.Breedte = 0; DATA.Kenmerken.UitsparingData.Z1.Diepte = 0; DATA.Kenmerken.UitsparingData.Z1.UitsparingCode = ""; DATA.Kenmerken.UitsparingData.Z2.Breedte = 0; DATA.Kenmerken.UitsparingData.Z2.UitsparingCode = ""; else if (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Enkel") then DATA.Kenmerken.UitsparingData.M.Breedte = 0; DATA.Kenmerken.UitsparingData.Z2.Breedte = 0; DATA.Kenmerken.UitsparingData.Z2.UitsparingCode = ""; end if; end if; end if; if ((STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") or (STATE.DataKenmerkenInvullenVia == "BijhorendeLade")) then if ($UitsparingPane@visible) then if ((DATA.Kenmerken.LadeToepassing == "SP")) then if (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"}) then DATA.Kenmerken.UitsparingData.Z1.Diepte = CDbl(DATA.kenmerken.LadeDiepte); DATA.Kenmerken.UitsparingData.Z1.Breedte = DATA.BerekendeWaarden.InterneBreedte - (2*158); DATA.Kenmerken.Uitsparingdata.Z1.Uitsparingcode = ""; else if not(DATA.Kenmerken.Uitsparingdata.Z1.Uitsparingcode == "SP_Recht_D350_BM") then DATA.Kenmerken.Uitsparingdata.Z1.Uitsparingcode = "SP_" + "Recht_" + "D" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Diepte) + "_B" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Breedte); end if; end if; end if; if (DATA.kenmerken.LadeToepassing == "SY") then DATA.Kenmerken.Uitsparingdata.Z1.Uitsparingcode = "SY_" + "Recht_" + "D" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Diepte) + "_B" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Breedte); if (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel") then DATA.Kenmerken.Uitsparingdata.Z2.Uitsparingcode = "SY_" + "Recht_" + "D" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Diepte) + "_B" + Cstr(DATA.Kenmerken.UitsparingData.Z2.Breedte); // Z2.Diepte is toch altijd = Z1.Diepte end if; end if; end if; end if; DATA waarde instellen ;data.kenmerken.uitsparingdata.uitsparingaantal@value;data.kenmerken.uitsparingdata.x.breedte@value;data.kenmerken.uitsparingdata.m.breedte@value;data.kenmerken.uitsparingdata.y.breedte@value;data.kenmerken.uitsparingdata.z1.breedte@value;data.kenmerken.uitsparingdata.z1.diepte@value;data.kenmerken.uitsparingdata.z2.breedte@value;config.database.configanalyseproperties@value;data.kenmerken.uitsparingdata.z1.uitsparingcode@value;data.kenmerken.uitsparingdata.z2.uitsparingcode@value;ui.propertiesenkelvoorincodevanrules.vorigeladetypeladetoepassing@value; true UI.Kenmerken.UitsparingData.UitsparingAantal@default = DATA.Kenmerken.UitsparingData.UitsparingAantal; UI.Kenmerken.UitsparingData.X.Breedte@default = DATA.Kenmerken.UitsparingData.X.Breedte; UI.Kenmerken.UitsparingData.M.Breedte@default = DATA.Kenmerken.UitsparingData.M.Breedte; UI.Kenmerken.UitsparingData.Y.Breedte@default = DATA.Kenmerken.UitsparingData.Y.Breedte; UI.Kenmerken.UitsparingData.Z1.Breedte@default = DATA.Kenmerken.UitsparingData.Z1.Breedte; UI.Kenmerken.UitsparingData.Z1.UitsparingCode@default = DATA.Kenmerken.UitsparingData.Z1.UitsparingCode; UI.Kenmerken.UitsparingData.Diepte.Diepte@default = DATA.Kenmerken.UitsparingData.Z1.Diepte; UI.Kenmerken.UitsparingData.Diepte.UitsparingCode@default = "D" + Cstr(DATA.Kenmerken.UitsparingData.Z1.Diepte); UI.Kenmerken.UitsparingData.Z2.Breedte@default = DATA.Kenmerken.UitsparingData.Z2.Breedte; UI.Kenmerken.UitsparingData.Z2.UitsparingCode@default = DATA.Kenmerken.UitsparingData.Z2.UitsparingCode; local string _trigger = STATE.DataKenmerkenInvullenVia ; local string _UitsparingAantal = UI.Kenmerken.UitsparingData.UitsparingAantal; local string _ImageUrl if (DATA.Kenmerken.LadeToepassing in {"SY";"SP"}) then if (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"}) then _ImageUrl = "./images/Vanhoecke/lbx/UitsparingData/LBX_Toepassing_" + DATA.Kenmerken.LadeToepassing + "_" + _UitsparingAantal + ".png"; end if; if (DATA.Kenmerken.LadeType == "Merivobox") then if (DATA.Kenmerken.LadeToepassing == "SY") then _ImageUrl = "./images/Vanhoecke/mvx/UitsparingData/MVX_Toepassing_" + DATA.Kenmerken.LadeToepassing + "_" + _UitsparingAantal + ".png"; else _ImageUrl = "./images/Vanhoecke/mvx/UitsparingData/MVX_Toepassing_" + DATA.Kenmerken.LadeToepassing +".png"; end if; end if; if (DATA.Kenmerken.LadeType == "Tandembox") then if (DATA.Kenmerken.LadeToepassing == "SY") then _ImageUrl = "./images/Vanhoecke/tbx/UitsparingData/TBX_Toepassing_SY3" + "_" + _UitsparingAantal +".png"; end if; if (DATA.Kenmerken.LadeToepassing == "SP") then _ImageUrl = "./images/Vanhoecke/tbx/UitsparingData/TBX_Toepassing_SP2" + "_" + _UitsparingAantal +".png"; end if; end if; if (DATA.Kenmerken.LadeType == "Taorbox") then _ImageUrl = "./images/Vanhoecke/tax/UitsparingData/TAX_Toepassing_" + DATA.Kenmerken.LadeToepassing + "_" + _UitsparingAantal + ".png"; end if; else _ImageUrl = ""; end if; UI.Kenmerken.UitsparingData.Afbeelding@default = _ImageUrl; UI waarde instellen ;ui.kenmerken.uitsparingdata.uitsparingaantal@default;ui.kenmerken.uitsparingdata.x.breedte@default;ui.kenmerken.uitsparingdata.m.breedte@default;ui.kenmerken.uitsparingdata.y.breedte@default;ui.kenmerken.uitsparingdata.z1.breedte@default;ui.kenmerken.uitsparingdata.z1.uitsparingcode@default;ui.kenmerken.uitsparingdata.diepte.diepte@default;ui.kenmerken.uitsparingdata.diepte.uitsparingcode@default;ui.kenmerken.uitsparingdata.z2.breedte@default;ui.kenmerken.uitsparingdata.z2.uitsparingcode@default;ui.kenmerken.uitsparingdata.afbeelding@default; true local boolean _HeeftUitsparingData = (DATA.Kenmerken.LadeToepassing in {"SP";"SY"}); local boolean _HeeftDubbeleUitsparing = (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel"); local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); local double _Minimum = 50; local double _Maximum = 1500; if ((UI.Kenmerken.UitsparingData.X.Breedte@visible and _HeeftUitsparingData) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.X.Breedte <> 0))) then UI.Kenmerken.UitsparingData.X.Breedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.X.Breedte@inputvalidation = ""; end if; if ((UI.Kenmerken.UitsparingData.M.Breedte@visible and _HeeftUitsparingData and _HeeftDubbeleUitsparing) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.M.Breedte <> 0))) then UI.Kenmerken.UitsparingData.M.Breedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.M.Breedte@inputvalidation = ""; end if; if ((UI.Kenmerken.UitsparingData.Z1.Breedte@visible and _HeeftUitsparingData and not(_IsLbxSpoelbaklade)) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.Z1.Breedte <> 0))) then UI.Kenmerken.UitsparingData.Z1.Breedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.Z1.Breedte@inputvalidation = ""; end if; if( (UI.Kenmerken.UitsparingData.Diepte@visible and _HeeftUitsparingData) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.Diepte.Diepte <> 0))) then UI.Kenmerken.UitsparingData.Diepte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.Diepte@inputvalidation = ""; end if; if ((UI.Kenmerken.UitsparingData.Y.Breedte@visible and _HeeftUitsparingData) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.Y.Breedte <> 0))) then UI.Kenmerken.UitsparingData.Y.Breedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.Y.Breedte@inputvalidation = ""; end if; if ((UI.Kenmerken.UitsparingData.Z2@visible and _HeeftUitsparingData and _HeeftDubbeleUitsparing) and (STATE.ValidationNeeded or (UI.Kenmerken.UitsparingData.Z2.Breedte <> 0))) then UI.Kenmerken.UitsparingData.Z2.Breedte@inputvalidation = "min:" + _Minimum + ";max:" + _Maximum + ";multiplication:0.1;maxdecimals:1;"; else UI.Kenmerken.UitsparingData.Z2.Breedte@inputvalidation = ""; end if; Validatie ;ui.kenmerken.uitsparingdata.x.breedte@rangeset;ui.kenmerken.uitsparingdata.m.breedte@rangeset;ui.kenmerken.uitsparingdata.z1.breedte@rangeset;ui.kenmerken.uitsparingdata.diepte@rangeset;ui.kenmerken.uitsparingdata.y.breedte@rangeset;ui.kenmerken.uitsparingdata.z2.breedte@rangeset; (UI.Kenmerken.UitsparingData@visible) and (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Enkel") local double _SuggestieX = 0; local double _SuggestieY = 0; local double _SuggestieZ1 = 0; local double _BreedteX = UI.Kenmerken.UitsparingData.X.Breedte; local double _BreedteY = UI.Kenmerken.UitsparingData.Y.Breedte; local double _BreedteZ1 = UI.Kenmerken.UitsparingData.Z1.Breedte; local boolean _AlleBreedtesIngevuld = (_BreedteX > 0) and (_BreedteY > 0) and (_BreedteZ1 > 0); local boolean _AlleBreedtesLeeg = (_BreedteX == 0) and (_BreedteY == 0) and (_BreedteZ1 == 0); local boolean _ToonGesuggereerdeWaarde = false; local double _VerwachteBreedte = DATA.BerekendeWaarden.InterneBreedte; if ((_AlleBreedtesIngevuld) or (_AlleBreedtesLeeg)) then _ToonGesuggereerdeWaarde = false; else _ToonGesuggereerdeWaarde = (_VerwachteBreedte > 0); end if; if (_ToonGesuggereerdeWaarde) then local double _BreedteSaldo = _VerwachteBreedte - (_BreedteX + _BreedteY + _BreedteZ1); if (_BreedteZ1 > 0) then if ((_BreedteX == 0) and (_BreedteY == 0)) then _SuggestieX = Round((_BreedteSaldo / 2) ; 0.1); _SuggestieY = (_BreedteSaldo - _SuggestieX); // _SuggestieY = _SuggestieX , except when _SuggestieX is rounded. else if (_BreedteX == 0) then _SuggestieX = _BreedteSaldo; end if; if (_BreedteY == 0) then _SuggestieY = _BreedteSaldo; end if; end if; else // BreedteZ1 == 0 if ((_BreedteX > 0) and (_BreedteY > 0)) then _SuggestieZ1 = _BreedteSaldo; else if (_BreedteX == 0) then _SuggestieX = _BreedteY; _SuggestieZ1 = (_BreedteSaldo - _SuggestieX); end if; if (_BreedteY == 0) then _SuggestieY = _BreedteX; _SuggestieZ1 = (_BreedteSaldo - _SuggestieY); end if; end if; end if; end if; UI.Kenmerken.UitsparingData.X.GesuggereerdeWaarde = _SuggestieX; UI.Kenmerken.UitsparingData.Y.GesuggereerdeWaarde = _SuggestieY; UI.Kenmerken.UitsparingData.M.GesuggereerdeWaarde = 0; Bereken GesuggereerdeWaarden Enkele uitsparing ;ui.kenmerken.uitsparingdata.x.gesuggereerdewaarde@value;ui.kenmerken.uitsparingdata.y.gesuggereerdewaarde@value;ui.kenmerken.uitsparingdata.m.gesuggereerdewaarde@value; (UI.Kenmerken.UitsparingData@visible) and (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel") local double _SuggestieX = 0; local double _SuggestieM = 0; local double _SuggestieY = 0; local double _SuggestieZ1 = 0; local double _SuggestieZ2 = 0; local double _BreedteX = UI.Kenmerken.UitsparingData.X.Breedte; local double _BreedteM = UI.Kenmerken.UitsparingData.M.Breedte; local double _BreedteY = UI.Kenmerken.UitsparingData.Y.Breedte; local double _BreedteZ1 = UI.Kenmerken.UitsparingData.Z1.Breedte; local double _BreedteZ2 = UI.Kenmerken.UitsparingData.Z2.Breedte; local boolean _AlleRugBreedtesLeeg = (_BreedteX == 0) and (_BreedteM == 0) and (_BreedteY == 0); local boolean _AlleRugBreedtesIngevuld = (_BreedteX > 0) and (_BreedteM > 0) and (_BreedteY > 0); local boolean _AlleBreedtesIngevuld = (_AlleRugBreedtesIngevuld) and (_BreedteZ1 > 0) and (_BreedteZ2 > 0); local boolean _ToonGesuggereerdeWaarde = false; local double _VerwachteBreedte = DATA.BerekendeWaarden.InterneBreedte; if ((_AlleRugBreedtesLeeg) or (_AlleBreedtesIngevuld)) then _ToonGesuggereerdeWaarde = false; else _ToonGesuggereerdeWaarde = (_VerwachteBreedte > 0); end if; if (_ToonGesuggereerdeWaarde) then local double _BreedteSaldo = _VerwachteBreedte - (_BreedteX + _BreedteM + _BreedteY + _BreedteZ1 + _BreedteZ2); if (_AlleRugBreedtesIngevuld) then if ((_BreedteZ1 == 0) and (_BreedteZ2 == 0)) then _SuggestieZ1 = Round((_BreedteSaldo / 2) ; 0.1); _SuggestieZ2 = (_BreedteSaldo - _SuggestieZ1); // _SuggestieZ2 = _SuggestieZ1 , except when _SuggestieZ1 is rounded. else if (_BreedteZ1 == 0) then _SuggestieZ1 = _BreedteSaldo; end if; if (_BreedteZ2 == 0) then _SuggestieZ2 = _BreedteSaldo; end if; end if; else // (not _AlleRugBreedtesIngevuld) if ((_BreedteZ1 > 0) and (_BreedteZ2 > 0)) then if (_BreedteM > 0) then if ((_BreedteX == 0) and (_BreedteY == 0)) then _SuggestieX = Round((_BreedteSaldo / 2) ; 0.1); _SuggestieY = (_BreedteSaldo - _SuggestieX); // _SuggestieY = _SuggestieX , except when _SuggestieX is rounded. else if (_BreedteX == 0) then _SuggestieX = _BreedteSaldo; end if; if (_BreedteY == 0) then _SuggestieY = _BreedteSaldo; end if; end if; else // BreedteM == 0 if ((_BreedteX > 0) and (_BreedteY > 0)) then _SuggestieM = _BreedteSaldo; else _SuggestieX = 0; _SuggestieY = 0; if (_BreedteX == 0) then _SuggestieX = _BreedteY; end if; if (_BreedteY == 0) then _SuggestieY = _BreedteX; end if; _SuggestieM = (_BreedteSaldo - _SuggestieX - _SuggestieY); end if; end if; else // Combinatie van RugBreedtes en UitsparingBreedtes niet ingevuld : TO DO local boolean _dummy = true; end if; end if; end if; UI.Kenmerken.UitsparingData.X.GesuggereerdeWaarde = _SuggestieX; UI.Kenmerken.UitsparingData.M.GesuggereerdeWaarde = _SuggestieM; UI.Kenmerken.UitsparingData.Y.GesuggereerdeWaarde = _SuggestieY; Bereken GesuggereerdeWaarden Dubbele uitsparing ;ui.kenmerken.uitsparingdata.x.gesuggereerdewaarde@value;ui.kenmerken.uitsparingdata.m.gesuggereerdewaarde@value;ui.kenmerken.uitsparingdata.y.gesuggereerdewaarde@value; UI.Kenmerken.UitsparingData@visible local boolean _HeeftDubbeleUitsparing = (UI.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel"); local double _TotaleBreedte = 0; local double _BreedteX = UI.Kenmerken.UitsparingData.X.Breedte; local double _BreedteZ1 = UI.Kenmerken.UitsparingData.Z1.Breedte; local double _BreedteM = UI.Kenmerken.UitsparingData.M.Breedte; local double _BreedteZ2 = UI.Kenmerken.UitsparingData.Z2.Breedte; local double _BreedteY = UI.Kenmerken.UitsparingData.Y.Breedte; _TotaleBreedte = _BreedteX + _BreedteZ1 + _BreedteY; if (_HeeftDubbeleUitsparing) then _TotaleBreedte = _TotaleBreedte + _BreedteM + _BreedteZ2; end if; UI.Kenmerken.UitsparingData.UitsparingData_TotaleBreedte = _TotaleBreedte; Bereken TotaleBreedte ;ui.kenmerken.uitsparingdata.uitsparingdata_totalebreedte@value; true UI.Kenmerken.UitsparingData.UitsparingData_VerwachteBreedte = DATA.BerekendeWaarden.InterneBreedte; local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); local double _VerwachteBreedte = UI.Kenmerken.UitsparingData.UitsparingData_VerwachteBreedte; local string _InputValidation = ""; if ((UI.Kenmerken.UitsparingData@visible) and not(_IsLbxSpoelbaklade ))then local string _strVerwachteBreedte = Replace(CStr(_VerwachteBreedte); ","; "."); _InputValidation = "min:" + _strVerwachteBreedte + ";max:" + _strVerwachteBreedte + ";multiplication:0.1;maxdecimals:1;"; end if; UI.Kenmerken.UitsparingData.UitsparingData_TotaleBreedte@inputvalidation = _InputValidation; Instellen VerwachteBreedte bij Uitsparingen ;ui.kenmerken.uitsparingdata.uitsparingdata_verwachtebreedte@value;ui.kenmerken.uitsparingdata.uitsparingdata_totalebreedte@rangeset; true local boolean _IsVerpakkingTypeBasisVisible = false; local boolean _IsVerpakkingTypeTaorVisible = false; local boolean _IsVerpakkingTypeOrgaluxVisible = false; if (BEHAVIOR.IsEconAX) then if (UI.Kenmerken.ToonAlleVerpakkingen) then _IsVerpakkingTypeBasisVisible = true; // _IsVerpakkingTypeTaorVisible = true; _IsVerpakkingTypeOrgaluxVisible = true; else if (CONFIG.Settings.HeeftAssortimentKS) then _IsVerpakkingTypeOrgaluxVisible = true; if (CONFIG.Settings.HeeftAssortimentIP) then _IsVerpakkingTypeBasisVisible = true; end if; end if; end if; end if; if (BEHAVIOR.IsEconWeb) then _IsVerpakkingTypeBasisVisible = false; _IsVerpakkingTypeTaorVisible = false; _IsVerpakkingTypeOrgaluxVisible = true; end if; UI.Kenmerken.VerpakkingType@option("Basis")@visible= _IsVerpakkingTypeBasisVisible; UI.Kenmerken.VerpakkingType@option("TAOR")@visible = _IsVerpakkingTypeTaorVisible; UI.Kenmerken.VerpakkingType@option("ORGALUX")@visible = _IsVerpakkingTypeOrgaluxVisible; Visible ;ui.kenmerken.verpakkingtype@options; true local boolean _IsVerpakkingTypeBasisValid = false; local boolean _IsVerpakkingTypeTaorValid = false; local boolean _IsVerpakkingTypeOrgaluxValid = false; if (BEHAVIOR.IsEconAX) then if (UI.Kenmerken.ToonAlleVerpakkingen) then _IsVerpakkingTypeBasisValid = true; // _IsVerpakkingTypeTaorValid = true; _IsVerpakkingTypeOrgaluxValid = true; else if (CONFIG.Settings.HeeftAssortimentKS) then _IsVerpakkingTypeOrgaluxValid = true; if (CONFIG.Settings.HeeftAssortimentIP) then _IsVerpakkingTypeBasisValid = true; end if; end if; end if; end if; if (BEHAVIOR.IsEconWeb) then _IsVerpakkingTypeBasisValid = false; _IsVerpakkingTypeTaorValid = false; _IsVerpakkingTypeOrgaluxValid = true; end if; UI.Kenmerken.VerpakkingType@option("Basis")@valid = _IsVerpakkingTypeBasisValid; UI.Kenmerken.VerpakkingType@option("TAOR")@valid = _IsVerpakkingTypeTaorValid; UI.Kenmerken.VerpakkingType@option("ORGALUX")@valid = _IsVerpakkingTypeOrgaluxValid; Valids ;ui.kenmerken.verpakkingtype@valids; true if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") and (DATA.Kenmerken.VerpakkingType == "")) then DATA.Kenmerken.VerpakkingType = Default.Kenmerken.VerpakkingType; end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then DATA.Kenmerken.VerpakkingType = Default.Kenmerken.VerpakkingType; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Kenmerken.VerpakkingType = GetArg("data;kenmerken;verpakkingtype"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then DATA.Kenmerken.VerpakkingType = "ORGALUX"; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Kenmerken.VerpakkingType = UI.Kenmerken.VerpakkingType; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ ;data.kenmerken.verpakkingtype@value; true UI.Kenmerken.VerpakkingType@default = DATA.Kenmerken.VerpakkingType; UI waarde instellen ;ui.kenmerken.verpakkingtype@default; true UI.Kenmerken.VerpakkingTypeLabel@visible = (DATA.Kenmerken.VerpakkingType == "Basis"); Visible ;ui.kenmerken.verpakkingtypelabel@visible; true UI.Kenmerken.VerpakkingTypeLabel@default = UI.Kenmerken.VerpakkingTypeLabel@label; UI waarde instellen ;ui.kenmerken.verpakkingtypelabel@default; true UI.Kenmerken.ToonAlleVerpakkingen@visible = (BEHAVIOR.IsEconAX); Visible ;ui.kenmerken.toonalleverpakkingen@visible; true local boolean _IsAantalZichtbaar; if(BEHAVIOR.IsEconAX) then _IsAantalZichtbaar = false; else _IsAantalZichtbaar = true; end if; UI.Lijn.Aantal@visible = _IsAantalZichtbaar; Visible ;ui.lijn.aantal@visible; true local boolean _IsAantalVerplicht; if(BEHAVIOR.IsEconAX) then _IsAantalVerplicht = false; else _IsAantalVerplicht = true; end if; UI.Lijn.Aantal@mandatory = _IsAantalVerplicht; Mandatory ;ui.lijn.aantal@mandatory; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") ) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Lijn.Aantal = CDbl(GetArg("data;lijn;aantal")); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then DATA.Lijn.Aantal = 1; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Lijn.Aantal = UI.Lijn.Aantal; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.lijn.aantal@value; true UI.Lijn.Aantal@default = DATA.Lijn.Aantal; UI waarde instellen ;ui.lijn.aantal@default; STATE.ValidationNeeded or (UI.Lijn.Aantal <> 0) local double _Minimum = RANGE.Aantal.Minimum; local double _Maximum = RANGE.Aantal.Maximum; if UI.Lijn.Aantal@mandatory then UI.Lijn.Aantal@inputvalidation = "min:" + _Minimum + ";multiplication:1;maxdecimals:0;"; else UI.Lijn.Aantal@inputvalidation = ""; end if; Validatie ;ui.lijn.aantal@rangeset; true local boolean _BEHAVIOR_IsReferentieZichtbaar; if (BEHAVIOR.IsEconAx and BEHAVIOR.IsInteractive == true) then _BEHAVIOR_IsReferentieZichtbaar = false; else _BEHAVIOR_IsReferentieZichtbaar = true; end if; UI.Lijn.Referentie@visible = _BEHAVIOR_IsReferentieZichtbaar; Visible ;ui.lijn.referentie@visible; true /* if ((STATE.DataKenmerkenInvullenVia == "InitieleDefaults") ) then end if; if ((STATE.DataKenmerkenInvullenVia == "GetriggerdeDefaults")) then end if; */ if (STATE.DataKenmerkenInvullenVia == "GetArgs") then DATA.Lijn.Referentie = GetArg("data;lijn;referentie"); end if; if (STATE.DataKenmerkenInvullenVia == "BijhorendeLade") then CONFIG.Database.ConfigAnalyseProperties = CONFIG.Database.ConfigAnalyseProperties@option("Data.Lijn.Referentie")@id; DATA.Lijn.Referentie = CONFIG.Database.ConfigAnalyseProperties.Value; end if; if (STATE.DataKenmerkenInvullenVia == "UI") then DATA.Lijn.Referentie = UI.Lijn.Referentie; end if; /* if (STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit") then end if; if (STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") then end if; */ DATA waarde instellen ;data.lijn.referentie@value;config.database.configanalyseproperties@value; true UI.Lijn.Referentie@default = DATA.Lijn.Referentie; UI waarde instellen ;ui.lijn.referentie@default; (STATE.SavedAndExit or STATE.SavedAndContinue or STATE.ProcessedAndExit or not(BEHAVIOR.IsInteractive)) DATA.Lijn.InvalidFieldSet@options = InvalidFieldSet(); DATA.Lijn.OngeldigeWaarden@length = len(DATA.Lijn.InvalidFieldSet@options); index i of DATA.Lijn.OngeldigeWaarden; DATA.Lijn.OngeldigeWaarden(i) = DATA.Lijn.InvalidFieldSet@option(i)@label; end index; DATA.Lijn.IsGeldig = (InvalidFields() == 0); IsGeldig ;data.lijn.invalidfieldset@options;data.lijn.isgeldig@value; true local boolean _IsMaatwerkViewerToegelaten = false; if BEHAVIOR.IsEconAX then _IsMaatwerkViewerToegelaten = CONFIG.Settings.IsMaatwerkViewerToegelaten; end if; local boolean _BEHAVIOR_IsPanelMaatwerkViewerZichtbaar = (_IsMaatwerkViewerToegelaten == true); local boolean _BEHAVIOR_IsButtonMaatwerkViewerZichtbaar = (_IsMaatwerkViewerToegelaten == true); UI.MWViewer@visible = _BEHAVIOR_IsPanelMaatwerkViewerZichtbaar; UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@visible = _BEHAVIOR_IsButtonMaatwerkViewerZichtbaar; Gedrag MaatwerkViewer button visible ;ui.mwviewer@visible;ui.mwviewer.inlinebuttons.startmaatwerkviewerbutton@visible; (UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@visible) local boolean _BEHAVIOR_IsButtonMaatwerkViewerEnabled = false; local long _AantalOngeldigeVelden = InvalidFields(); if _AantalOngeldigeVelden == 0 then _BEHAVIOR_IsButtonMaatwerkViewerEnabled = true; else if (_AantalOngeldigeVelden == 1) then DATA.Lijn.InvalidFieldSet@options = InvalidFieldSet(); if (DATA.Lijn.InvalidFieldSet@option(1)@id == "Ui.Lijn.Aantal") then _BEHAVIOR_IsButtonMaatwerkViewerEnabled = true; end if end if end if; UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@enabled = _BEHAVIOR_IsButtonMaatwerkViewerEnabled; Gedrag MaatwerkViewer button enabled ;ui.mwviewer.inlinebuttons.startmaatwerkviewerbutton@enabled; (UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@visible) UI.MWViewer.BerekenAantal@default = 1; UI.MWViewer.BerekenKlantnummer@default = CONFIG.Settings.KlantId; UI.MWViewer.BerekenDatum@default = ""; // Default = Now UI.MWViewer.FileSuffixVast@default = "001"; UI.MWViewer.HeeftVasteFileSuffix@default = false; Initialiseer MaatwerkViewer velden ;ui.mwviewer.berekenaantal@default;ui.mwviewer.berekenklantnummer@default;ui.mwviewer.berekendatum@default;ui.mwviewer.filesuffixvast@default;ui.mwviewer.heeftvastefilesuffix@default; true UI.MWViewer.FileSuffixVast@visible = (UI.MWViewer.HeeftVasteFileSuffix == true); Visible - TimeSuffixVast ;ui.mwviewer.filesuffixvast@visible; (UI.MWViewer.InlineButtons.StartMaatwerkViewerButton@visible) and (STATE.StartMaatwerkViewer == true) // local collection _PropertyNamen = {"Data.Kenmerken.Familie";"Data.Kenmerken.Variant";"Data.Kenmerken.BodemKleur";"Data.Kenmerken.Draagkracht"}; // Vreemd genoeg lukt het niet via een locale collection :-( // Dan maar via een array-Property CONFIG.WebService.PropertyNamen@length = 999; local Long _i = 0; // Hoofdletters (Firstcase) zoals de "eCon-ConfigAnalyse Namen" : _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Familie"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Variant"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Corpusbreedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Corpuswanddikte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Isbinnenbreedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Ladediepte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Ladetype"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Ladetoepassing"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Kleur"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Materiaal"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Nettobreedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Nettodiepte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Heeftopvullijstlinks"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Heeftopvullijstrechts"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Heeftlbxbinnenladeglazenfront"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Heefttbxmintolerantieib"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Uitsparingaantal"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.M.Breedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.X.Breedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Y.Breedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Z1.Breedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Z1.Diepte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Z1.Uitsparingcode"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Z2.Breedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Uitsparingdata.Z2.Uitsparingcode"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Verpakkingtype"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Vianettobreedte"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Vianettodiepte"; CONFIG.WebService.PropertyNamen@length = _i; /* // ========================================== // !!! LET OP !!! Hetvolgende werkt NIET !!! // ========================================== // Hoofdletters (UpperCamelCase) zoals de "eCon-property Namen" : _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Familie"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Variant"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.BodemKleur"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.Draagkracht"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.FrontBevestiging"; _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.GeleiderTechnologie"; ... _i = _i + 1; CONFIG.WebService.PropertyNamen(_i) = "Data.Kenmerken.ZijwandVerhogingType"; */ MaatwerkViewer Properties in Array steken ;config.webservice.propertynamen[1]@value; (STATE.StartMaatwerkViewer == true) STATE.StartMaatwerkViewer = false; // ================================ // Initialisatie // ================================ local string _XmlRequest = ""; local string _Service = GetSetting("data.vanhoecke.connectionstring.cache.maatwerkviewerservice"); local string _Variant = Data.Kenmerken.Variant; local string _TimeSuffix = "001"; local string _FileSuffixVast = UI.MWViewer.FileSuffixVast; if (UI.MWViewer.HeeftVasteFileSuffix) then _FileSuffixVast = replace(_FileSuffixVast; ":"; ""); _FileSuffixVast = replace(_FileSuffixVast; "?"; ""); _FileSuffixVast = replace(_FileSuffixVast; "*"; ""); _FileSuffixVast = replace(_FileSuffixVast; "/"; ""); _FileSuffixVast = replace(_FileSuffixVast; "\\"; ""); _FileSuffixVast = replace(_FileSuffixVast; "<"; ""); _FileSuffixVast = replace(_FileSuffixVast; ">"; ""); _FileSuffixVast = Trim(_FileSuffixVast); end if; if (UI.MWViewer.HeeftVasteFileSuffix and (_FileSuffixVast <> "") ) then _TimeSuffix = _FileSuffixVast; else _TimeSuffix = CStr(Year()) + CStr(Month()) + CStr(Day()) + "_" + CStr(Hour()) + "" + CStr(Minute()) + "" + CStr(Second()); end if; local string _PersonalityId = Config.Settings.PersonalityId; local string _BerekenKlantNummer = CStr(UI.MWViewer.BerekenKlantnummer); local string _BerekenAantal = CStr(UI.MWViewer.BerekenAantal); local string _BerekenDatum = CStr(UI.MWViewer.BerekenDatum); local string _Username = "WimV-TEST"; local string _Filename = "maatwerkviewer_" + _Variant + "_" + _TimeSuffix + ".txt"; // File extension : .txt OF .xls //local string _Filepath = "\\\\Notes01\\shared\\w v\\"; local string _Filepath = "\\\\Notes01\\shared\\AX\\e-Con_MaatwerkViewer\\"; local string _FullFilename = _Filepath + _Filename; local string _EconConfiguratieKVPs = ""; local string _PropertyNaam = ""; // ================================ // Lokale Development/Debugging (tijdelijk) // ================================ /* * / local boolean _WebServiceAfleidenNaarLokalePC = false; if _WebServiceAfleidenNaarLokalePC then _Service = replace(_Service; "cachestaging2010"; "WV-W10"); _Filename = "\\\\WV-W10\\D$\\Temp\\maatwerkviewer_MVX_001.xls"; end if; /* */ // ================================ // Fallback Default values // ================================ if (_PersonalityId == "") then _PersonalityId = "1"; end if; if (_BerekenKlantNummer == "") then _BerekenKlantNummer = "6819"; end if; if (_BerekenAantal == "") or (_BerekenAantal == "0") then _BerekenAantal = "1"; end if; // ==================================== // Kenmerken KeyValuePairs opbouwen // ==================================== index i of CONFIG.WebService.PropertyNamen _PropertyNaam = CONFIG.WebService.PropertyNamen(i); _EconConfiguratieKVPs = _EconConfiguratieKVPs + " <view:String EconConfiguratieKey='" + _PropertyNaam + "'>" + CStr(Eval(_PropertyNaam)) + "</view:String> "; end index; // ================================ // _XmlRequest opbouwen // ================================ _XmlRequest = _XmlRequest + "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:view='http://www.vanhoecke.be/WS/PM/Maatwerk/Viewer/Viewer'>"; _XmlRequest = _XmlRequest + "<soapenv:Header/>"; _XmlRequest = _XmlRequest + "<soapenv:Body>"; _XmlRequest = _XmlRequest + "<view:SchrijfPlatteTekst>"; // WebMethod : SchrijfPlatteTekst OF SchrijfExcel _XmlRequest = _XmlRequest + "<view:MaatwerkViewerRequest>"; /* * / // Request Header is niet voorzien in het Caché-object WS.PM.Maatwerk.Viewer.MaatwerkViewerRequest, dus hier niet toevoegen, anders zal de WS-call crashen. _XmlRequest = _XmlRequest + "<view:Header>"; _XmlRequest = _XmlRequest + "<view:PersonalityID>" + _PersonalityId + "</view:PersonalityID>"; _XmlRequest = _XmlRequest + "</view:Header>"; /* */ _XmlRequest = _XmlRequest + "<view:KlantNummer>" + _BerekenKlantNummer + "</view:KlantNummer>"; _XmlRequest = _XmlRequest + "<view:Aantal>" + _BerekenAantal + "</view:Aantal>"; _XmlRequest = _XmlRequest + "<view:Datum>" + _BerekenDatum + "</view:Datum>"; _XmlRequest = _XmlRequest + "<view:Username>" + _Username + "</view:Username>"; _XmlRequest = _XmlRequest + "<view:Filename>" + _FullFilename + "</view:Filename>"; _XmlRequest = _XmlRequest + "<view:EconConfiguratie>" + _EconConfiguratieKVPs + "</view:EconConfiguratie>"; _XmlRequest = _XmlRequest + "</view:MaatwerkViewerRequest>"; _XmlRequest = _XmlRequest + "</view:SchrijfPlatteTekst>"; // WebMethod : SchrijfPlatteTekst OF SchrijfExcel _XmlRequest = _XmlRequest + "</soapenv:Body>"; _XmlRequest = _XmlRequest + "</soapenv:Envelope>"; // ================================ // WebService call uitvoeren // ================================ local boolean _Result = LoadFromXMLService("CONFIG.WebService.MaatwerkViewerSchrijfExcel.ResultaatDummy"; _Service; false; _XmlRequest); local string _Status = ""; local string _Feedback = ""; if (_Result) then _Status = "Gelukt: "; STATE.MaatwerkViewerServiceLoaded = true; UI.MWViewer.OutputFilePath = _FullFileName; else _Status = "Mislukt: "; STATE.MaatwerkViewerServiceLoaded = false; UI.MWViewer.OutputFilePath = "[Error]"; end if; // Debugging info : _Feedback = "Resultaat van de web service 'MaatwerkViewer in Excel' Status ='" + _Status + "'. " + "\n" + "(LET OP: Soap fault wordt ook als succes teruggegeven)"; local long _FeedbackResult = MsgBox(_Feedback); // AaaDebugInfo = _Status + _Service; MaatwerkViewer starten ;state.startmaatwerkviewer@value;state.maatwerkviewerserviceloaded@value;ui.mwviewer.outputfilepath@value; true if (not(STATE.DataIsIngevuldViaGetArgs) and (STATE.DataKenmerkenInvullenVia == "InitieleDefaults")) then //DATA ingevuld via gtArgs EN daarna zijn de defaults gezet indien nodig STATE.DataIsIngevuldViaGetArgs = true end if; STATE.DataIsIngevuldViaGetArgs ;state.dataisingevuldviagetargs@value; true //Volgorde van de if's in deze rule respecteren if ((STATE.DataKenmerkenInvullenVia == "LeegmakenOnExit")) then STATE.DataKenmerkenInvullenVia = "DefaultenOnExit"; end if; /* if ((STATE.DataKenmerkenInvullenVia == "BijhorendeLade") and not(BEHAVIOR.IsInteractive) and STATE.BijhorendeLadeConfiguratieLoaded) then Er hoeft na bijhorendeLade tot op heden niet naar een volgende staat gegaan worden. Dit is ook vanzelfsprekend, hoe dan de integratie test(en) goed in de gaten end if; */ if (STATE.DataKenmerkenInvullenVia == "InitieleDefaults") then if not(BEHAVIOR.IsInteractive) then STATE.DataKenmerkenInvullenVia = "LeegmakenOnExit"; else STATE.DataKenmerkenInvullenVia = "UI"; end if; end if; if (STATE.DataKenmerkenInvullenVia == "GetArgs") then STATE.DataKenmerkenInvullenVia = "InitieleDefaults"; end if; if ((STATE.DataKenmerkenInvullenVia in {"UI";"InitieleDefaults"}) and (STATE.SavedAndExit or STATE.SavedAndContinue or STATE.KlantVoorkeurenSaved or STATE.ProcessedAndExit)) then if not(BEHAVIOR.IsInteractive) then STATE.DataKenmerkenInvullenVia = "LeegmakenOnExit"; else if (DATA.Lijn.IsGeldig) then STATE.DataKenmerkenInvullenVia = "LeegmakenOnExit"; else local string Dummy = "We mogen pas naar leegmakenOnExit bij een geldige configuratie in interactieve modus"; end if; end if; end if; if ((STATE.DataKenmerkenInvullenVia == "DefaultenOnExit") and not(Data.Lijn.IsGeldig)) then if (BEHAVIOR.IsInteractive) then STATE.DataKenmerkenInvullenVia = "UI"; end if; end if; StatenFlow DataKenmerkenInvullenVia ;state.datakenmerkeninvullenvia@value; BEHAVIOR.IsEconWeb and (CONFIG.InputMode == "CreateConfig") and STATE.DataKenmerkenInvullenVia == "" and not(STATE.KenmerkenIngevuldDoorWebCreateConfig); //De kenmerken die de createConfig bevat worden pas opgevuld nadat alle rules doorlopen zijn, daarom staat deze rule op het einde van de configuratie STATE.KenmerkenIngevuldDoorWebCreateConfig = true; STATE.KenmerkenIngevuldDoorWebCreateConfig ;state.kenmerkeningevulddoorwebcreateconfig@value; STATE.BijhorendeLadeConfiguratieLoaded STATE.BijhorendeLadeConfiguratieLoaded = false; BijhorendeLadeConfiguratieLoaded ;state.bijhorendeladeconfiguratieloaded@value; true DATA.Kenmerken.UitsparingData.UitsparingAantal@valids = ConstrainedOptions("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.UitsparingData.UitsparingAantal@Valids"; "DATA.Kenmerken.UitsparingData.UitsparingAantal"; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing); Applying constraints for property DATA.Kenmerken.UitsparingData.UitsparingAantal ;data.kenmerken.uitsparingdata.uitsparingaantal@valids; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.UitsparingData.UitsparingAantal@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.UitsparingData.UitsparingAantal@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.UitsparingData.UitsparingAantal@Valids ; true UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@valids = ConstrainedOptions("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids"; "UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode"; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing; "DATA.Kenmerken.LadeType"; DATA.Kenmerken.LadeType); Applying constraints for property UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode ;ui.kenmerken.uitsparingdata.diepte.uitsparingcode@valids; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids ; true DATA.Kenmerken.ViaNettoDiepte@style.invalidbooleans = ConstrainedBooleanInvalids("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoDiepte@Valids"; "DATA.Kenmerken.ViaNettoDiepte"; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing); Applying constraints for property DATA.Kenmerken.ViaNettoDiepte ; true DATA.Kenmerken.ViaNettoBreedte@style.invalidbooleans = ConstrainedBooleanInvalids("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoBreedte@Valids"; "DATA.Kenmerken.ViaNettoBreedte"; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing); Applying constraints for property DATA.Kenmerken.ViaNettoBreedte ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoDiepte@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoDiepte@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoDiepte@Valids ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoBreedte@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoBreedte@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoBreedte@Valids ; true DATA.Kenmerken.LadeToepassing@valids = ConstrainedOptions("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.UitsparingData.UitsparingAantal@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoBreedte@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.ViaNettoDiepte@Valids"; "DATA.Kenmerken.LadeToepassing"; "DATA.Kenmerken.LadeDiepte"; DATA.Kenmerken.LadeDiepte; "DATA.Kenmerken.LadeType"; DATA.Kenmerken.LadeType; "DATA.Kenmerken.UitsparingData.UitsparingAantal"; DATA.Kenmerken.UitsparingData.UitsparingAantal; "DATA.Kenmerken.ViaNettoBreedte"; CurrentBoolean(DATA.Kenmerken.ViaNettoBreedte); "DATA.Kenmerken.ViaNettoDiepte"; CurrentBoolean(DATA.Kenmerken.ViaNettoDiepte); "UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode"; UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode); Applying constraints for property DATA.Kenmerken.LadeToepassing ;data.kenmerken.ladetoepassing@valids; true DATA.Kenmerken.LadeDiepte@valids = ConstrainedOptions("DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids;DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids"; "DATA.Kenmerken.LadeDiepte"; "DATA.Kenmerken.Kleur"; DATA.Kenmerken.Kleur; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing; "DATA.Kenmerken.LadeType"; DATA.Kenmerken.LadeType; "DATA.Kenmerken.Materiaal"; DATA.Kenmerken.Materiaal); Applying constraints for property DATA.Kenmerken.LadeDiepte ;data.kenmerken.ladediepte@valids; true DATA.Kenmerken.LadeType@valids = ConstrainedOptions("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeType@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType,UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode@Valids;DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids"; "DATA.Kenmerken.LadeType"; "DATA.Kenmerken.LadeDiepte"; DATA.Kenmerken.LadeDiepte; "DATA.Kenmerken.LadeToepassing"; DATA.Kenmerken.LadeToepassing; "UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode"; UI.Kenmerken.UitsparingData.Diepte.Uitsparingcode); Applying constraints for property DATA.Kenmerken.LadeType ;data.kenmerken.ladetype@valids; true DATA.Kenmerken.Materiaal@valids = ConstrainedOptions("DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids;DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids"; "DATA.Kenmerken.Materiaal"; "DATA.Kenmerken.Kleur"; DATA.Kenmerken.Kleur; "DATA.Kenmerken.LadeDiepte"; DATA.Kenmerken.LadeDiepte); Applying constraints for property DATA.Kenmerken.Materiaal ;data.kenmerken.materiaal@valids; true DATA.Kenmerken.Kleur@valids = ConstrainedOptions("DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids"; "DATA.Kenmerken.Kleur"; "DATA.Kenmerken.LadeDiepte"; DATA.Kenmerken.LadeDiepte; "DATA.Kenmerken.Materiaal"; DATA.Kenmerken.Materiaal); Applying constraints for property DATA.Kenmerken.Kleur ;data.kenmerken.kleur@valids; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeToepassing,DATA.Kenmerken.LadeType@Valids ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeType@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeType@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.LadeType@Valids ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids") Gather constraint messages for decision table DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids ; ConstraintsNotSatisfiedFor("DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids") ConstraintsErrorMessagesFor("DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids") Gather constraint messages for decision table DATA.Kenmerken.Kleur,DATA.Kenmerken.LadeDiepte,DATA.Kenmerken.Materiaal@Valids ; true if (CONFIG.InputMode == "CreateConfig") then STATE.WinkelkarInfoCalculated = false; end if; State aanpassen ;state.winkelkarinfocalculated@value; true if (CONFIG.InputMode == "CreateConfig") then STATE.WinkelkarInfoDiverseCalculated = false; end if; State aanpassen ;state.winkelkarinfodiversecalculated@value; true local string _AfbeeldingCode = ""; _AfbeeldingCode = DATA.Kenmerken.Materiaal + "_" + DATA.Kenmerken.Kleur; DATA.BerekendeWaarden.AfbeeldingCode = _AfbeeldingCode; Bereken ;data.berekendewaarden.afbeeldingcode@value; not(STATE.Initialized) and (BEHAVIOR.OperationMode == "AxCreate") if (STATE.DataIsIngevuldViaGetArgs) then STATE.ProcessedAndExit = true; end if; ProcessedAndExit voor AxCreate ;state.processedandexit@value; true DATA.Lijn.GroeperingCode = DATA.Kenmerken.Variant + "_" + DATA.Kenmerken.Materiaal + ";" + DATA.Kenmerken.Kleur; Bepaal GroeperingCode ;data.lijn.groeperingcode@value; STATE.SavedAndExit or STATE.SavedAndContinue or STATE.KlantVoorkeurenSaved or STATE.ProcessedAndExit /* if not(UI.Kenmerken.CorpusWanddikte@visible) then DATA.Kenmerken.CorpusWanddikte = 0; UI.Kenmerken.CorpusWanddikte = 0; end if; if not(UI.Kenmerken.Corpusbreedte@visible) then DATA.Kenmerken.Corpusbreedte = 0; UI.Kenmerken.Corpusbreedte = 0; end if; if not(UI.Kenmerken.HeeftOpvullijstLinks@visible) then DATA.Kenmerken.HeeftOpvullijstLinks = false; UI.Kenmerken.HeeftOpvullijstLinks = false; end if; if not(UI.Kenmerken.HeeftOpvullijstRechts@visible) then DATA.Kenmerken.HeeftOpvullijstRechts = false; UI.Kenmerken.HeeftOpvullijstRechts = false; end if; if not(UI.Kenmerken.HeeftLbxBinnenladeGlazenFront@visible) then DATA.Kenmerken.HeeftLbxBinnenladeGlazenFront = false; UI.Kenmerken.HeeftLbxBinnenladeGlazenFront = false; end if; if not(UI.Kenmerken.LadeDiepte@visible) then DATA.Kenmerken.LadeDiepte = ""; UI.Kenmerken.LadeDiepte = ""; end if; if (not(UI.Kenmerken.LadeType@visible) and DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte) then DATA.Kenmerken.LadeType = ""; UI.Kenmerken.LadeType = ""; end if; if (not(UI.Kenmerken.LadeToepassing@visible) and DATA.Kenmerken.ViaNettoBreedte and DATA.Kenmerken.ViaNettoDiepte) then DATA.Kenmerken.LadeToepassing = ""; UI.Kenmerken.LadeToepassing= ""; end if; */ Verborgen properties wissen ; STATE.SavedAndExit or STATE.SavedAndContinue or STATE.ProcessedAndExit Verborgen properties defaulten ; not(STATE.WinkelkarInfoCalculated) and STATE.LanguagesLoaded and (STATE.SavedAndExit or STATE.SavedAndContinue or not(BEHAVIOR.IsInteractive)) STATE.WinkelkarInfoCalculated = true; local string _Model = GetModel(); DATA.Lijn.WinkelkarInfo@length = len(CONFIG.Database.Languages@options); for i = 1 to len(CONFIG.Database.Languages@options) CONFIG.Database.Languages = CONFIG.Database.Languages@option(i)@id; local string _TaalCode = CONFIG.Database.Languages.Name; local string _MateriaalLabel = "Materiaal_" + DATA.Kenmerken.Materiaal; local string _KleurOptionLabel = switch DATA.Kenmerken.Materiaal case "CF": "MatVinylFiberglassKleur_" + UI.Kenmerken.MatVinylFiberglassKleur.Value case "AF": "MatAntislipFiberKleur_" + UI.Kenmerken.MatAntislipFiberKleur.Value case "AZ": "MatAntislipFlockKleur_" + UI.Kenmerken.MatAntislipFlockKleur.Value else "" end switch; local string _MateriaalInfo = GetLabel(_MateriaalLabel ; _Model; ""; _TaalCode); local string _KleurInfo = GetLabel(_KleurOptionLabel; _Model; ""; _TaalCode); local string _Groepering = "MAT - " + _MateriaalInfo + ": " +_KleurInfo; DATA.Lijn.WinkelkarInfo(i).Aantal = CStr(DATA.Lijn.Aantal); DATA.Lijn.WinkelkarInfo(i).AfbeeldingCode = DATA.BerekendeWaarden.AfbeeldingCode; DATA.Lijn.WinkelkarInfo(i).Kleur = _KleurInfo; DATA.Lijn.WinkelkarInfo(i).Materiaal = _MateriaalInfo; DATA.Lijn.WinkelkarInfo(i).EenheidPrijs = ""; DATA.Lijn.WinkelkarInfo(i).Groepering = _Groepering; DATA.Lijn.WinkelkarInfo(i).LadeTag = ""; DATA.Lijn.WinkelkarInfo(i).TaalCode = _TaalCode; DATA.Lijn.WinkelkarInfo(i).TotaalPrijs = ""; end for; WinkelkarInfo ;state.winkelkarinfocalculated@value; not(STATE.WinkelkarInfoAfmetingCalculated ) and STATE.LanguagesLoaded and (STATE.SavedAndExit or STATE.SavedAndContinue or not(BEHAVIOR.IsInteractive)) STATE.WinkelkarInfoAfmetingCalculated = true; local string _Model = GetModel(); for i = 1 to len(Config.Database.Languages@options) CONFIG.Database.Languages = CONFIG.Database.Languages@option(i)@id; local string _TaalCode = CONFIG.Database.Languages.Name; local boolean _IsLbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType in {"LegraboxPure";"LegraboxFree"})); local boolean _IsTbxSpoelbaklade = ((DATA.Kenmerken.LadeToepassing == "SP") and (DATA.Kenmerken.LadeType == "Tandembox")); local string _UitsparingAfmetingen = ""; local string _InfoMatX = ""; local string _InfoMatY = ""; local string _InfoMatZ = ""; _InfoMatX = CStr(DATA.Kenmerken.NettoDiepte) + " x " + CStr(DATA.Kenmerken.NettoBreedte); if (_IsLbxSpoelbaklade) then _InfoMatX = CStr(DATA.Kenmerken.NettoDiepte) + " x " + CStr(DATA.Kenmerken.NettoBreedte) + " *2"; end if; if (_IsTbxSpoelbaklade) then _InfoMatX = CStr(DATA.Kenmerken.NettoDiepte) + " x " + CStr(DATA.Kenmerken.UitsparingData.X.Breedte - 81) + " *1"; _InfoMatY = CStr(DATA.Kenmerken.NettoDiepte) + " x " + CStr(DATA.Kenmerken.UitsparingData.Y.Breedte - 81) + " *1"; _InfoMatZ = "132" + " x " + CStr(DATA.Kenmerken.UitsparingData.Z1.Breedte) + " *1"; end if; DATA.Lijn.WinkelkarInfo(i).NettoAfmeting @length = 3; DATA.Lijn.WinkelkarInfo(i).NettoAfmeting[1] = _InfoMatX; DATA.Lijn.WinkelkarInfo(i).NettoAfmeting[2] = _InfoMatY; DATA.Lijn.WinkelkarInfo(i).NettoAfmeting[3] = _InfoMatZ; end for; WinkelkarInfo - NettoAfmeting ;state.winkelkarinfoafmetingcalculated@value; not(STATE.WinkelkarInfoDiverseCalculated) and STATE.LanguagesLoaded and (STATE.SavedAndExit or STATE.SavedAndContinue or not(BEHAVIOR.IsInteractive)) STATE.WinkelkarInfoDiverseCalculated = true; local string _Model = GetModel(); local string _LadeToepassingOptionLabel = "toepassing" + "_" + DATA.Kenmerken.LadeToepassing@option(DATA.Kenmerken.LadeToepassing)@id; for i = 1 to len(Config.Database.Languages@options) CONFIG.Database.Languages = CONFIG.Database.Languages@option(i)@id; local string _TaalCode = CONFIG.Database.Languages.Name; local string _UitsparingAfmetingen = ""; local string _InfoLadeType = ""; local string _InfoLadeAfmetingen = ""; local string _InfoLadeToepassing = ""; if not(Data.Kenmerken.ViaNettoBreedte) then _InfoLadeType = switch DATA.Kenmerken.LadeType case "Merivobox": "MERIVOBOX" case "LegraboxPure": "LEGRABOX" case "LegraboxFree": "LEGRABOX" case "Taorbox": "TA'ORBOX" case "Tandembox": "TANDEMBOX" else "" end switch; _InfoLadeAfmetingen = GetLabel("dieptepane"; _Model; ""; _TaalCode) + ":" + Cstr(DATA.Kenmerken.LadeDiepte) + " x " + GetLabel("breedtepane"; _Model; ""; _TaalCode) + ":" + Cstr(DATA.Kenmerken.CorpusBreedte); end if; if (DATA.Kenmerken.LadeToepassing == "SY") then local string _X = CStr(DATA.Kenmerken.UitsparingData.X.Breedte); local string _M = CStr(DATA.Kenmerken.UitsparingData.M.Breedte); local string _Y = CStr(DATA.Kenmerken.UitsparingData.Y.Breedte); local string _Z1 = CStr(DATA.Kenmerken.UitsparingData.Z1.Breedte); local string _Z2 = CStr(DATA.Kenmerken.UitsparingData.Z2.Breedte); _UitsparingAfmetingen = _UitsparingAfmetingen + " (" +_X + "/" + _Z1; if (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Dubbel") then _UitsparingAfmetingen = _UitsparingAfmetingen + "/" + _M + "/" + _Z2; end if; _UitsparingAfmetingen = _UitsparingAfmetingen + "/" + _Y + ")"; end if; if (DATA.Kenmerken.LadeToepassing == "SP") then local string _X = CStr(DATA.Kenmerken.UitsparingData.X.Breedte); local string _Y = CStr(DATA.Kenmerken.UitsparingData.Y.Breedte); local string _Z1 = CStr(DATA.Kenmerken.UitsparingData.Z1.Breedte); _UitsparingAfmetingen = " (" +_X + "/" + _Z1 + "/" + _Y + ")"; end if; if (DATA.Kenmerken.LadeToepassing == "SP") then local string _Z1 = CStr(DATA.Kenmerken.UitsparingData.Z1.Breedte); _InfoLadeToepassing = GetLabel(TRL.InfoDiverse_Spoelbakopening@id; _Model; ""; _TaalCode) + " = " + _Z1 + "mm" + _UitsparingAfmetingen; end if; if (DATA.Kenmerken.LadeToepassing == "SY") then local string _Z1 = CStr(DATA.Kenmerken.UitsparingData.Z1.Breedte); local string _Z2 = CStr(DATA.Kenmerken.UitsparingData.Z2.Breedte); if (DATA.Kenmerken.UitsparingData.UitsparingAantal == "Enkel") then _InfoLadeToepassing = GetLabel(TRL.InfoDiverse_Sifonopening@id; _Model; ""; _TaalCode) + " = " + _Z1 + "mm" + _UitsparingAfmetingen; else _InfoLadeToepassing = GetLabel(TRL.InfoDiverse_Sifonopeningen@id; _Model; ""; _TaalCode) + " = " + _Z1 + "mm" + " " + _Z2 + "mm" + _UitsparingAfmetingen; end if; end if; DATA.Lijn.WinkelkarInfo(i).InfoDiverse@length = 3; DATA.Lijn.WinkelkarInfo(i).InfoDiverse[1] = _InfoLadeType; DATA.Lijn.WinkelkarInfo(i).InfoDiverse[2] = _InfoLadeAfmetingen; DATA.Lijn.WinkelkarInfo(i).InfoDiverse[3] = _InfoLadeToepassing; end for; WinkelkarInfo - InfoDiverse ;state.winkelkarinfodiversecalculated@value; STATE.SavedAndExit or STATE.SavedAndContinue or not(BEHAVIOR.IsInteractive) or (BEHAVIOR.IsEconAx and BEHAVIOR.IsInteractive) if (DATA.Kenmerken.VerpakkingType == "Basis") then ItemId = "9.683.175.8"; end if; if (DATA.Kenmerken.VerpakkingType == "TAOR") then ItemId = "9.584.908.8"; end if; if (DATA.Kenmerken.VerpakkingType == "ORGALUX") then ItemId = "9.741.396.11"; end if; // tijdelijk totdat kenmerken binnenkomen if (ItemId == "") then ItemId = "9.683.185.8" end if; ItemId bepalen ;itemid@value; STATE.Cancelled STATE.Cancelled = false; ReturnValue = "{\"status\":\"cancel\"}"; local boolean _Result = Exit(true;false); Cancel ;state.cancelled@value;returnvalue@value; STATE.ProcessedAndExit STATE.ProcessedAndExit = false; STATE.ValidationNeeded = true; ProcessedAndExit ;state.processedandexit@value;state.validationneeded@value; STATE.SavedAndExit STATE.SavedAndExit = false; STATE.ValidationNeeded = true; if (InvalidFields() == 0) then ReturnValue = "{\"status\":\"ok\",\"name\":\"" + ElementName(CONFIG.ConfigurationName) + "\",\"version\":\"" + ElementVersion(CONFIG.ConfigurationName) + "\"}"; local boolean _Result = SaveAndExit(); else STATE.WinkelkarInfoCalculated = false; STATE.WinkelkarInfoDiverseCalculated = false; STATE.WinkelkarInfoAfmetingCalculated = false; local string _Feedback = ""; _Feedback = _Feedback + "<b>" + TRL.BewarenError@label + ":" + "</b>"; _Feedback = _Feedback + "<ul style='list-style-type:square;'>"; for i = 1 to Len(DATA.Lijn.InvalidFieldSet@options) local string _PropertyName = DATA.Lijn.InvalidFieldSet@option(i)@id; local string _Label = CStr(Eval(_PropertyName + "@label")); _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + _Label; _Feedback = _Feedback + "</li>"; end for; _Feedback = _Feedback + "</ul>"; local long _FeedbackResult = MsgBox(_Feedback); end if; SaveAndExit ;state.savedandexit@value;state.validationneeded@value;returnvalue@value; STATE.SavedAndContinue STATE.SavedAndContinue = false; STATE.ValidationNeeded = true; if (InvalidFields() == 0) then ReturnValue = "{\"status\":\"ok\",\"name\":\"" + ElementName(CONFIG.ConfigurationName) + "\",\"version\":\"" + ElementVersion(CONFIG.ConfigurationName) + "\",\"continue\":\"true\"}"; local boolean _Result = SaveAndExit(); else STATE.WinkelkarInfoCalculated = false; STATE.WinkelkarInfoDiverseCalculated = false; local string _Feedback = ""; _Feedback = _Feedback + "<b>" + TRL.BewarenError@label + ":" + "</b>"; _Feedback = _Feedback + "<ul style='list-style-type:square;'>"; for i = 1 to Len(DATA.Lijn.InvalidFieldSet@options) local string _PropertyName = DATA.Lijn.InvalidFieldSet@option(i)@id; local string _Label = CStr(Eval(_PropertyName + "@label")); _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + _Label; _Feedback = _Feedback + "</li>"; end for; _Feedback = _Feedback + "</ul>"; local long _FeedbackResult = MsgBox(_Feedback); end if; SaveAndContinue ;state.savedandcontinue@value;state.validationneeded@value;returnvalue@value; STATE.KlantVoorkeurenSaved STATE.KlantVoorkeurenSaved = false; local boolean _Result; _Result = SetArg("saveas"; ElementName(CONFIG.KlantVoorkeurenConfigurationName)); _Result = eCon.UI.Tasks.Functions.Save(false); local string _Feedback = ""; if (_Result) then _Feedback = _Feedback + "<b>" + TRL.BewarenKlantVoorkeurenSucces@label + "</b>"; _Feedback = _Feedback + "<ul style='list-style-type:square;'>"; for i = 1 to Len(CONFIG.Defaults.KlantVoorkeuren@options) local string _PropertyName = CONFIG.Defaults.KlantVoorkeuren@option(i)@id; local string _Label = CStr(Eval(_PropertyName + "@id")); local string _Id = CStr(Eval(_PropertyName)); local string _Type = CStr(Eval(_PropertyName + "@Type")); if ((_Type == "String") and(_Id <> "")) then _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + GetLocalizedLabel(_Label) + ": " + GetLocalizedLabel(_Label + "_" + _Id); //eval(_PropertyName)); _Feedback = _Feedback + "</li>"; end if; if ((_Type == "Double") and(CDbl(_Id) > 0)) then _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + GetLocalizedLabel(_Label) + ": " + _Id; _Feedback = _Feedback + "</li>"; end if; if (_Type == "Boolean") then local boolean _IsNietMeeleveren = CBool(InStr(1; LCase(_Label); LCase("NietMeeleveren_"))); local long _PositionOfUnderscore = InStrRev(LCase(_PropertyName); "_"); local string _ShortName = Mid(LCase(_PropertyName); _PositionOfUnderscore + 1); /* if (_IsNietMeeleveren and CBool(_Id) and (LCase(_ShortName) in CONFIG.NietMeeleverenExtern@options)) then _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + DATA.Kenmerken.NietMeeleveren@label + ": " + GetLocalizedLabel(_Label); _Feedback = _Feedback + "</li>"; end if; if not(_IsNietMeeleveren) then _Feedback = _Feedback + "<li>"; _Feedback = _Feedback + GetLocalizedLabel(_Label) + ": " + GetLocalizedLabel(_Label + "_" + _Id); _Feedback = _Feedback + "</li>"; end if; */ end if; end for; _Feedback = _Feedback + "</ul>"; else _Feedback = _Feedback + "<b>" + TRL.BewarenKlantVoorkeurenError@label + "</b>"; end if; local long _FeedbackResult = MsgBox(_Feedback); _Result = SetArg("saveas"; ElementName(CONFIG.ConfigurationName)); // originele ConfigurationName terugzetten SaveKlantVoorkeuren ;state.klantvoorkeurensaved@value; EQIAAAAAAAASAgAAAAAAABEDAAAAAAAAEgMAAAAAAAA= AREBAAAAAAACEQEAAAAAAAESAQAAAAAAAhIBAAAAAAA= AgIAAAAAAAA= AgUAAAAAAAADBQAAAAAAAA== AQEAAAAAAAAEAQAAAAAAAAYBAAAAAAAACAEAAAAAAAAKAQAAAAAAAAwBAAAAAAAADgEAAAAAAAARAQAAAAAAABIBAAAAAAAAAQIAAAAAAAAEAgAAAAAAAAYCAAAAAAAACAIAAAAAAAAKAgAAAAAAAAwCAAAAAAAADgIAAAAAAAARAgAAAAAAABICAAAAAAAAAQMAAAAAAAAEAwAAAAAAAAYDAAAAAAAACAMAAAAAAAAKAwAAAAAAAAwDAAAAAAAADgMAAAAAAAARAwAAAAAAABIDAAAAAAAAAQQAAAAAAAAEBAAAAAAAAAYEAAAAAAAACAQAAAAAAAAKBAAAAAAAAAwEAAAAAAAADgQAAAAAAAARBAAAAAAAABIEAAAAAAAA AwUBAAAAAAADBQUAAAAAAAMFBgAAAAAAAwUHAAAAAAA= AQEBAAAAAAAEAQEAAAAAAAYBAQAAAAAACAEBAAAAAAAKAQEAAAAAAAwBAQAAAAAADgEBAAAAAAAQAQEAAAAAABEBAQAAAAAAEgEBAAAAAAABAgEAAAAAAAICAQAAAAAAAwIBAAAAAAAEAgEAAAAAAAUCAQAAAAAABgIBAAAAAAAHAgEAAAAAAAgCAQAAAAAACgIBAAAAAAAMAgEAAAAAAA4CAQAAAAAAEAIBAAAAAAARAgEAAAAAABICAQAAAAAAAQMBAAAAAAACAwEAAAAAAAMDAQAAAAAABAMBAAAAAAAGAwEAAAAAAAgDAQAAAAAACgMBAAAAAAAMAwEAAAAAAA4DAQAAAAAAEAMBAAAAAAARAwEAAAAAABIDAQAAAAAAAQICAAAAAAACAgIAAAAAAAMCAgAAAAAABAICAAAAAAAFAgIAAAAAAAYCAgAAAAAACAICAAAAAAAKAgIAAAAAAAwCAgAAAAAADQICAAAAAAAOAgIAAAAAAA8CAgAAAAAAEAICAAAAAAARAgIAAAAAABICAgAAAAAAAQMCAAAAAAACAwIAAAAAAAMDAgAAAAAABAMCAAAAAAAGAwIAAAAAAAgDAgAAAAAACgMCAAAAAAAMAwIAAAAAAA4DAgAAAAAAEQMCAAAAAAASAwIAAAAAAAECAwAAAAAAAgIDAAAAAAADAgMAAAAAAAQCAwAAAAAABQIDAAAAAAAGAgMAAAAAAAgCAwAAAAAACgIDAAAAAAAMAgMAAAAAAA0CAwAAAAAADgIDAAAAAAAPAgMAAAAAABACAwAAAAAAEQIDAAAAAAASAgMAAAAAAAEDAwAAAAAAAgMDAAAAAAADAwMAAAAAAAQDAwAAAAAABgMDAAAAAAAIAwMAAAAAAAoDAwAAAAAADAMDAAAAAAAOAwMAAAAAABEDAwAAAAAAEgMDAAAAAAABAgQAAAAAAAICBAAAAAAAAwIEAAAAAAAEAgQAAAAAAAUCBAAAAAAABgIEAAAAAAAHAgQAAAAAAAgCBAAAAAAACQIEAAAAAAAKAgQAAAAAAAwCBAAAAAAADQIEAAAAAAAOAgQAAAAAAA8CBAAAAAAAEAIEAAAAAAARAgQAAAAAABICBAAAAAAAAQMEAAAAAAACAwQAAAAAAAMDBAAAAAAABAMEAAAAAAAGAwQAAAAAAAgDBAAAAAAACgMEAAAAAAAMAwQAAAAAAA4DBAAAAAAAEQMEAAAAAAASAwQAAAAAAA== AgIAAAAAAAADAgAAAAAAAA== AgIAAAAAAAADAgAAAAAAAA==