Здравствуйте, SoLame, Вы писали:
SL>Всем привет
SL>читаю статью на хабре...
SL>http://habrahabr.ru/company/delphi/blog/200490/
SL>кусок кода
SL>SL>procedure TDM.DataModuleCreate(Sender: TObject);
SL>begin
SL>DM.ConnectToDB;
SL>end;
SL>
SL>почему не просто ConnectToDB ??? зачем они используют глобальные переменные?
По идее можно. Но хотелось бы видеть вест код модуля
SL>SL>procedure TfMain.FormShow(Sender: TObject);
SL>begin
SL>DM.FDTRecipe.AfterInsert:= RecipeAfterInsert;
SL>end;
SL>procedure TfMain.RecipeAfterInsert(DataSet: TDataSet);
SL>var
SL> fAddRecipe: TfAddRecipe;
SL>begin
SL> try
SL> fAddRecipe:= TfAddRecipe.Create(Application);
SL> fAddRecipe.ShowModal;
SL> if fAddRecipe.ModalResult = mrOk then
SL> begin
SL> if DataSet.State in [dsInsert, dsEdit] then
SL> DataSet.Post;
SL> end
SL> else
SL> begin
SL> if DataSet.State in [dsInsert, dsEdit] then
SL> DataSet.Cancel;
SL> end;
SL> finally
SL> FreeAndNil(fAddRecipe);
SL> end;
SL>end;
SL>
SL>тут написано — при создании формы мы используя глобальную переменную (DM) назначаем обработчик для события объекта,
SL>который лежит в поле FDTRecipe...
SL>эээ постойте, но если мне не изменяет память, префикс F в дельфи был у полей с приватным уровнем доступа???
Не только. Локальные переменные иногда тоже так обозначают.
SL>И разве слой данных(датамодуль, это ведь слой данных?) вроде не должен же создавать отображать гуй? он же по идее, может использоваться из программ, где гуя нету вообще?
TfMain — это не дата модуль. Похоже на запрос подтверждения при вводе данных.