Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Аварда с точки зрения чайника.doc
Скачиваний:
19
Добавлен:
06.03.2016
Размер:
274.94 Кб
Скачать

Iec – дело тонкое.

Отдельно про выгрузку объектов конфигурации в *.iec файлы. Это процесс хитрый, его надо осознать. Выгрузка производится для выбранной конфигурации, при помощи двух буферов «Буфер элементов» и «Буфер метаданных». Есть еще «Буфер справочников», но про него можно сказать только то, что он всегда должен быть пустым. См. рис. 3.

В буфер элементов выгружаются записи XADM, а в буфер метаданных – CFG. Записи XADM обычно надо выгружать только тогда, когда Вы создали новый объект, и конфигурировали его. Такая ситуация нам встретилась при выполнении первого примера - создание справочника (111000111).

Если Вам надо выгружать конфигурационную информацию объектов, это XADM, то последовательность действий такая:

  1. Найти нужные объекты и добавить их в буфер элементов с помощью зеленой стрелки (кнопка «Выбрать запись для экспорта»).

  1. Проверить буфер элементов, если туда попали лишние записи, то удалить их.

  1. Очистить буфер метаданных и буфер справочников с помощью кнопки «Очистить».

  1. В буфер метаданных добавить нужные записи с помощью кнопки «Выборка записей». Это будет запрос к CFG. См. рис. 4.

  1. Когда буфера сформированы, нажать кнопку «Экспорт» (см. рис. 3), и выбрать файл, в который надо выгрузить.

Если конфигурационную информацию выгружать не надо, то нужно активировать буфера, для чего добавить в буфер элементов первый попавшийся объект. Затем очистить буфер элементов. Затем выполнить к пункты 3, 4 и 5.

Небольшая тонкость, все файлы апдейта можно просматривать в блокноте, за исключением файлов *.iec, как посмотреть их? В каталоге Avarda5/Tools должна находиться утилита CheckAdm, она позволяет просматривать и немного редактировать содержимое *.iec файлов. Если у Вас ее нет, то попросите тимлидера помочь Вам ее найти.

И еще одна тонкость. Всегда выгружайте объекты конфигуратора в iec файл вместе с их ярлыками. Даже если Вы слегка изменили что-то в объекте, а ярлык не трогали, все равно выгружайте пару записей CFG – запись объекта + запись ярлыка. Почему так надо? Пожалуй я не буду это объяснять, так как Вы и сами можете догадаться, если немного подумаете об этом.

Выгружаем отчет.

Начнем с выгрузки в апдейт созданного нами отчета (ZDA_111000112 ) - это проще, так как нет конфигурационной информации и прямой выгрузки из таблиц.

Итак, по шагам:

  1. Выгрузим в IBExpert процедуру R_ALL_DOC_PERIOD в файл rdb_111000112.sql.

  1. Проверим rdb_111000112.sql, сначала должно идти CREATE процедуры с пустым телом, а затем ALTER ее же с заполненным телом. Если что-то не так, то подредактируем.

  1. Допишем в конце rdb_111000112.sql строку:

EXECUTE PROCEDURE install_update('FIX_111000112', 'Создание отчета Документы за период');

Вообще-то это пишут в upd_xxxxxxxxx.sql, но, если это все, что туда надо написать, то файл upd вообще не создают.

  1. В конфигураторе (конфигурации/системная) выгружаем записи CFG с ID=999000006, 999000007, 999000008, 999000009, 999000010, 999000011. Выгружаем их в файл cfg_111000112_sys.iec.

  1. В reg_ver пишем две строчки:

DB410.029.034

-FIX_111000112

Это требования апдейта, как определять требования - это отдельная песня, сейчас не будем этим пока заморачиваться. Позже, при выполнении реальной задачи, обратите на это внимание. А пока напишем именно так.

  1. Что писать в readme я не буду детально описывать, возьмите readme из примера апдейта, посмотрите как их пишут. Отмечу только, что для данного апдейта, наверно надо написать в секции «Установка» после:

    1. Запустить update.bat Ваша_база.gdb.

строку:

    1. Установить алгоритм «Документы за период» в меню.

  1. С update.bat то же, что и с readme, посмотрите в примере, только отмечу, что в данном случае в нем должны быть строки:

call %exec% rdb_111000112.sql %1

call %exec% cfg_111000112_sys.iec %1

Разместим файлы апдейта в одной папке 111000112_REPORT_DOC_PERIOD. Должно получиться пять файлов:

readme.txt

req_ver

update.bat

rdb_111000112.sql

cfg_111000112_sys.iec

Вроде все, можно проверять. При накате апдейта на базу, с которой Вы еще не работали, в ней должен появиться наш отчет. Кстати, хочу Вас спросить как программист программиста, - прежде чем начинать издеваться над базой, Вы резервную копию себе сделали?