ExecuteDialog (Opus Funktion)
Beschreibung
Diese Funktion führt einen Dialog gemäss den angegebenen Definitionen aus..
Argumente
Name | Typ | Beschreibung |
---|---|---|
object | Definition des Dialogs. Das Objekt sollte als Referenz (mit &) übergeben werden, damit im Anschluss auf die veränderten Inhalte zugegriffen werden kann. |
Rückgabewert integer
xxx
Beispiel
function ExecuteDialog_Statistics { Lo_GroupList = GetSSB_RoomGroupList(); Lo_RoomGroups = {"Array":[]}; for (Li_i = 0;Li_i < Lo_GroupList.GetSize();Li_i++) { Lo_RoomGroups.Array.<{Li_i} := {"Type":"CheckBox", "ID":2000+Li_i, "Caption":GetSSB_RoomGroup_s_NameEntry(Lo_GroupList[Li_i]), "Checked":1}; } /* for */ Lo_Date = GetDateTimeObject(GetCurrentDateTime()); Lt_Start = GetDateValue(Lo_Date.Year, Lo_Date.Month, 1); if (Lo_Date.Month == 12) { Lo_Date.Year++; Lo_Date.Month = 0; } /* if */ Lt_End = GetDateValue(Lo_Date.Year, Lo_Date.Month+1, 1) -1.0; Lo_Dialog = {"Caption":"Auslastungsstatistik", "Control" : {"Type":"VDist", "Controls": [ {"Type":"GroupBox", "Caption":"Datums- und Zeitbereich", "Control": {"Type":"HDist", "Controls": [ {"Type":"VDist", "Controls": [ {"Type":"Text", "ID":1000, "Caption":"Datum von"}, {"Type":"DateTimeControl", "ID":1001, "DateTime":Lt_Start}, {"Type":"Text", "ID":1000, "Caption":"Zeit von"}, {"Type":"EditBox", "ID":1003, "Text":"07:00"} ] }, {"Type":"VDist", "Controls": [ {"Type":"Text", "ID":1000, "Caption":"Datum bis"}, {"Type":"DateTimeControl", "ID":1002, "DateTime":Lt_End}, {"Type":"Text", "ID":1000, "Caption":"Zeit bis"}, {"Type":"EditBox", "ID":1004, "Text":"22:00"} ] } ] } }, {"Type":"HDist", "Controls": [ {"Type":"GroupBox", "Caption":"Raumgruppen", "Control": {"Type":"VDist", "Controls": Lo_RoomGroups.Array } }, {"Type":"VDist", "Controls": [ {"Type":"GroupBox", "Caption":"Status", "Control": {"Type":"VDist", "Controls": [ {"Type":"CheckBox", "ID":1005, "Caption":"Reserviert", "Checked":1}, {"Type":"CheckBox", "ID":1006, "Caption":"Gebucht", "Checked":1} ] } }, {"Type":"GroupBox", "Caption":"Details", "Control": {"Type":"VDist", "Controls": [ {"Type":"RadioButton", "ID":1007, "Caption":"Mit Details", "Checked":1}, {"Type":"RadioButton", "ID":1008, "Caption":"Ohne Details", "Checked":0} ] } } ] } ] }, {"Type":"HDist", "Controls": [ {"Type":"Button", "ID":10, "Caption":"OK", "DialogResult":1}, {"Type":"Button", "ID":20, "Caption":"Abbrechen", "DialogResult":2} ] } ] } }; Li_Return = ExecuteDialog(&Lo_Dialog); if (Li_Return == 2) { main.Suppress = 1; } /* if */ Lo_GroupSelectionList = IntArray(0); for (Li_i = 0;Li_i < Lo_GroupList.GetSize();Li_i++) { Control = GetControlObject(&Lo_Dialog, 2000+Li_i); if (Control.Control.Checked == 1) { Lo_GroupSelectionList.Add(Lo_GroupList[Li_i]); } /* if */ } /* for */ Control = GetControlObject(&Lo_Dialog, 1001); DateFrom = Control.Control.DateTime; Control = GetControlObject(&Lo_Dialog, 1002); DateTo = Control.Control.DateTime; Control = GetControlObject(&Lo_Dialog, 1003); TimeFrom = Control.Control.Text; Control = GetControlObject(&Lo_Dialog, 1004); TimeTo = Control.Control.Text; Control = GetControlObject(&Lo_Dialog, 1005); Reserved = Control.Control.Checked; Control = GetControlObject(&Lo_Dialog, 1006); Booked = Control.Control.Checked; Control = GetControlObject(&Lo_Dialog, 1007); Details = Control.Control.Checked; return ({"DateFrom":DateFrom,"DateTo":DateTo,"TimeFrom":TimeFrom,"TimeTo":TimeTo, "Details":Details,"Reserved":Reserved,"Booked":Booked, "Groups":Lo_GroupSelectionList, "Return":Li_Return}); };
Beispiel einer Dialogfunktion:
function ExecuteDialog_Statistics { Lo_GroupList = GetSSB_RoomGroupList(); Lo_RoomGroups = {"Array":[]}; for (Li_i = 0;Li_i < Lo_GroupList.GetSize();Li_i++) { Lo_RoomGroups.Array.<{Li_i} := {"Type":"CheckBox", "ID":2000+Li_i, "Caption":GetSSB_RoomGroup_s_NameEntry(Lo_GroupList[Li_i]), "Checked":1}; } /* for */ Lo_Date = GetDateTimeObject(GetCurrentDateTime()); Lt_Start = GetDateValue(Lo_Date.Year, Lo_Date.Month, 1); if (Lo_Date.Month == 12) { Lo_Date.Year++; Lo_Date.Month = 0; } /* if */ Lt_End = GetDateValue(Lo_Date.Year, Lo_Date.Month+1, 1) -1.0; Lo_Dialog = {"Caption":"Auslastungsstatistik", "Control" : {"Type":"VDist", "Controls": [ {"Type":"GroupBox", "Caption":"Datums- und Zeitbereich", "Control": {"Type":"HDist", "Controls": [ {"Type":"VDist", "Controls": [ {"Type":"Text", "ID":1000, "Caption":"Datum von"}, {"Type":"DateTimeControl", "ID":1001, "DateTime":Lt_Start}, {"Type":"Text", "ID":1000, "Caption":"Zeit von"}, {"Type":"EditBox", "ID":1003, "Text":"07:00"} ] }, {"Type":"VDist", "Controls": [ {"Type":"Text", "ID":1000, "Caption":"Datum bis"}, {"Type":"DateTimeControl", "ID":1002, "DateTime":Lt_End}, {"Type":"Text", "ID":1000, "Caption":"Zeit bis"}, {"Type":"EditBox", "ID":1004, "Text":"22:00"} ] } ] } }, {"Type":"HDist", "Controls": [ {"Type":"GroupBox", "Caption":"Raumgruppen", "Control": {"Type":"VDist", "Controls": Lo_RoomGroups.Array } }, {"Type":"VDist", "Controls": [ {"Type":"GroupBox", "Caption":"Status", "Control": {"Type":"VDist", "Controls": [ {"Type":"CheckBox", "ID":1005, "Caption":"Reserviert", "Checked":1}, {"Type":"CheckBox", "ID":1006, "Caption":"Gebucht", "Checked":1} ] } }, {"Type":"GroupBox", "Caption":"Details", "Control": {"Type":"VDist", "Controls": [ {"Type":"RadioButton", "ID":1007, "Caption":"Mit Details", "Checked":1}, {"Type":"RadioButton", "ID":1008, "Caption":"Ohne Details", "Checked":0} ] } } ] } ] }, {"Type":"HDist", "Controls": [ {"Type":"Button", "ID":10, "Caption":"OK", "DialogResult":1}, {"Type":"Button", "ID":20, "Caption":"Abbrechen", "DialogResult":2} ] } ] } }; Li_Return = ExecuteDialog(&Lo_Dialog); if (Li_Return == 2) { main.Suppress = 1; } /* if */ Lo_GroupSelectionList = IntArray(0); for (Li_i = 0;Li_i < Lo_GroupList.GetSize();Li_i++) { Control = GetControlObject(&Lo_Dialog, 2000+Li_i); if (Control.Control.Checked == 1) { Lo_GroupSelectionList.Add(Lo_GroupList[Li_i]); } /* if */ } /* for */ Control = GetControlObject(&Lo_Dialog, 1001); DateFrom = Control.Control.DateTime; Control = GetControlObject(&Lo_Dialog, 1002); DateTo = Control.Control.DateTime; Control = GetControlObject(&Lo_Dialog, 1003); TimeFrom = Control.Control.Text; Control = GetControlObject(&Lo_Dialog, 1004); TimeTo = Control.Control.Text; Control = GetControlObject(&Lo_Dialog, 1005); Reserved = Control.Control.Checked; Control = GetControlObject(&Lo_Dialog, 1006); Booked = Control.Control.Checked; Control = GetControlObject(&Lo_Dialog, 1007); Details = Control.Control.Checked; return ({"DateFrom":DateFrom,"DateTo":DateTo,"TimeFrom":TimeFrom,"TimeTo":TimeTo, "Details":Details,"Reserved":Reserved,"Booked":Booked, "Groups":Lo_GroupSelectionList, "Return":Li_Return}); }; |
---|
Siehe auch
---