//Beispiel nicht modaler Dialog procedure editCustomerNotModal; var aDialog : TfrmDesignDialog; //Variable für den Dialog deklarieren begin aDialog := TfrmDesignDialog(loadForm('PM_Customer')); //Den Dialog mit dem Namen 'PM_Customer' laden und der Variable übergeben aDialog.setParam('CU_ID', '123'); //Einen globalen Parameter des neuen Dialogs mit dem Namen 'CU_ID' mit dem Wert 123 belegen aDialog.showMDIChild; //Den Dialog nicht modal öffnen (Heisst ich kann zwischen Dialogen wechseln) end; //Beispiel modaler Dialog procedure editProjectModal; var aDialog : TfrmDesignDialog; //Variable für den Dialog deklarieren begin try aDialog := TfrmDesignDialog(loadForm('PM_Project')); //Den Dialog mit dem Namen 'PM_Project' laden und der Variable übergeben //Einen globalen Parameter aus der Tabelle auslesen und als Parameter setzen aDialog.setParam('PRO_ID', TableProject.FieldByName('PRO_ID').asString); //Eine lokale Variable setzen und dem neuen Dialog übergeben aDialog.setLocalVariable('CU_ID', TableCustomer.fieldbyName('CU_ID').asString); //Hat der Benutzer den neuen Dialog mit OK bestätigt if aDialog.ShowModal = mrOk then begin //Dann lokale Daten neu laden TableProject.refresh; end; finally //Modale Dialoge müssen immer manuell freigegeben werden aDialog.release; end; end;