Сохранение настройки в нескольких файлах (постановка)
SYSDBA (обсуждение | вклад) (Новая страница: «Исторически так сложилось, что код прикладных подсистем мы разбиваем на несколько настро…») |
SYSDBA (обсуждение | вклад) (→Сохранять тег ROW в отдельном файле) |
||
| Строка 12: | Строка 12: | ||
<ROW fname="ИМЯ_НАСТРОЙКИ.РУИД_ОБЪЕКТА.XML" /> | <ROW fname="ИМЯ_НАСТРОЙКИ.РУИД_ОБЪЕКТА.XML" /> | ||
| + | |||
| + | Недостаток данного метода -- большое количество сепаратных файлов, которые могут получиться для большой настройки. | ||
| + | |||
| + | === Сохранять группу тегов ROW в отдельном файле === | ||
| + | |||
| + | Аналогично предыдущему, но в файл выгружается не один, а несколько тегов ROW. | ||
=== Сохранять исходные тексты скрипт-функций в отдельных файлах === | === Сохранять исходные тексты скрипт-функций в отдельных файлах === | ||
Версия 13:27, 26 сентября 2010
Исторически так сложилось, что код прикладных подсистем мы разбиваем на несколько настроек по функциональному признаку. Например, Склад-Метаданные, Склад-Данные, Склад-Отчеты и т.п. Объединяющей для этих настроек является конечная настройка (пакет), для которой соответствующим образом проставлены зависимости. При таком подходе размер файлов в формате XML получается слишком большим для нормальной работы через систему контроля версий.
Рассмотрим варианты решений.
Сохранять тег ROW в отдельном файле
Введем максимальный размер тега ROW. При формировании XML будем проверять на этот размер. Если тег получился большего размера, то выносим его содержимое в отдельный файл с именем:
ИМЯ_НАСТРОЙКИ.РУИД_ОБЪЕКТА.XML
Для подключения файла в общий XML мы можем либо воспользоваться механизмом включения файлов, либо реализовать отдельную загрузку при обработке XML настройки. В последнем случае в тексте настройки прописываем имя файла в атрибуте fname тега ROW:
<ROW fname="ИМЯ_НАСТРОЙКИ.РУИД_ОБЪЕКТА.XML" />
Недостаток данного метода -- большое количество сепаратных файлов, которые могут получиться для большой настройки.
Сохранять группу тегов ROW в отдельном файле
Аналогично предыдущему, но в файл выгружается не один, а несколько тегов ROW.