Если что бы совсем не заморачиваться, бери какой-нить проперти едитор.
Например, у нас есть некоторый набор полей, которые присутствуют всегда. Их реализуем как нормальные поля. А набор полей, которые могут присутствовать, а могут и не присутствовать, засовываем в виде xml, например, в отдельный BLOB. На форме "бросаем" proprty editor и редактируем поля там.
Что тебе понадобится.
1. Компонент proprty editor. Можно помсмотреть в сторону Berg, он у них довольно приятный.
2. Некоторый код, который будет настраивать редактор по шаблону.
3. Некоторый код, который обеспечит заполнение редактора и наоброт -сохранение результата в виде xml в BLOB'е.
4. Поддержка шаблонов. Можно просто сделать доп. табличку к справочнику типов аппаратуры. Можно опять же в виде xml хранить в отдельном BLOB'е в том же справочнике. Опять же, потребуется редактор шаблонов.
5. Код печати отчетов, который будет уметь брать нужную информацию и из дополнительного поля с xml.
Вроде все.
Да, можно, конечно, обойтись без xml в одном поле. Структура БД получится посложнее, но не намного.
|