Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];

Вниз

Хранение форм в базе данных   Найти похожие ветки 

 
AlexVM   (2003-09-11 11:42) [0]

Как организовать хранение форм в базе данных?
Может кто-нибудь делал что-то подобное?


 
Reindeer Moss Eater   (2003-09-11 11:45) [1]

Двоичные данные в полях умеют сохранять даже новички.


 
AlexVM   (2003-09-11 11:47) [2]

//Двоичные данные в полях умеют сохранять даже новички.
С кодом? Даже если прога не знает о классах, которые в этой форме?


 
Anatoly Podgoretsky   (2003-09-11 11:50) [3]

Ну ты так дойдешь до процессорных команд.


 
Reindeer Moss Eater   (2003-09-11 11:50) [4]

Не вижу логической связи между кодом и формой, хотя код - тоже двоичные данные.

Даже если прога не знает о классах, которые в этой форме?
Так для этого форма и сохраняется, что бы приложение "знало" о классах


 
Calm   (2003-09-11 11:58) [5]


> С кодом? Даже если прога не знает о классах, которые в этой
> форме?

Достаточно почитать статью на королевстве дельфи, где написано, как это делать. Там прилагается код, который позволяет получить ссылку на класс по имени класса без использования RegisterClass.
Но это недокументированные возможности со всеми вытекающими.


 
Empleado   (2003-09-11 12:02) [6]

http://www.delphimaster.ru/articles/bdform/index.html


 
Игорь Шевченко   (2003-09-11 13:23) [7]

У каждого наследника TStream есть метод ReadComponent.

function TMyForm.LoadFromDatabase(ABlob: TBlobField): Boolean;
var
MS : TMemoryStream;
begin
Result := not ABlob.IsNull;
if Result then begin
Clear();
MS := TMemoryStream.Create();
try
ABlob.SaveToStream(MS);
MS.Position := 0;
MS.ReadComponent(Self);
finally
MS.Free();
end;
end;
end;


 
xmrz   (2003-09-11 15:22) [8]

Я делал вариант для случая когда заранее неизвестно сколько и каких полей будет на форме, их расположение, тип данных и т.д. В базе храню в blob файлы xml с помощью которых описываю будующую форму. Отдельно - редактор для создания/модификации этих форм. Blob считываю из базы и в runtime на основе структуры xml создаю форму, пользователь заполняет, нажимает "ОК" и данные ложатся в базу - каждое поле в отдельный row правда, так же вынимаются. Работает шустро.

Основной плюс: когда тебе скажут, "а вот нам надо еще хранить такие-то данные, а в этот комбобокс добавьте одну строчку..." не придется перекомпилировать проект - всё в базе!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.09.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
14-71886
Local Administrator
2003-09-03 23:36
2003.09.22
Люди тестирую новый сервер по Windows API


8-71769
ummax
2003-05-21 15:30
2003.09.22
TWaveHeader = record


1-71646
Ал
2003-09-08 16:42
2003.09.22
Как и какой прогой сделать ico-файл, содержащий 16X16 и 32X32


3-71555
nikkkk
2003-09-02 11:28
2003.09.22
Вопрос по настройке языкового драйвера


3-71548
Sable
2003-08-25 19:30
2003.09.22
Проблема с кодировкой при экспорте из cxGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский