Hare.ru @ Коллективный разум / Hare.ru @ Дикое место

Архив hare.ru 
Мысли, конвертированные в текст

Собственные руки TM


Все статьи раздела

Пакетный режим работы Конфигуратора.

Никита Зайцев (WildHare) (где-то в 2000)

Известно (а если Вы этого не знали раньше, то теперь знаете), что Конфигуратор умеет работать в некоем “пакетном режиме”. Что это такое и зачем это нужно? И какие такие пакеты там используются?

Все просто. “Пакетный” режим — это режим выполнения программой заданной пользователем последовательности действий без его, пользователя, непосредственного участия. Фича для настоящих лентяев — никогда дважды не делай то, что можно один раз запрограммировать и выбросить из головы. ;-)

Строго говоря, слово “пакет” не совсем уместно, правильнее было бы сказать “макрос”, но сути дела это не меняет. Работа в пакетном режиме начинается с того, что Конфигуратор запускается не просто так, с определенными ключами. Выглядит это примерно так:

1cv7.exe config /dC:\Db /nUser /pPwd /@C:\backup

Что здесь что?

1cv7.exe - понятно что
config - указание на запуск именно Конфигуратора
/d - ключ указывает на расположение базы данных, с которой нужно произвести действо
/n - имя пользователя, под которым будет осуществлен запуск программы,
/p - пароль этого пользователя,
/@ - указание на файл с инструкциями, в терминах 1С — “файл сценария запуска“.

Обратите внимание — расширение файла не указано, это значит, что используется стандартное для пакетного режима расширение *.prm (на самом деле у этого файла может быть любое расширение, но тогда нужно писать имя файла целиком, вместе с расширением).

Что конкретно умеет делать Конфигуратор в пакетном режиме? Вот что: выгрузку и сохранение данных, тестирование-исправление ИБ и автообмен с РБД. Остальные действия, не требующие от пользователя особо осмысленных действий (например, загрузка измененной конфигурации или восстановление данных), пока что автоматизации не подлежат. Увы, 1С очень любит делать все наполовину.. ;-(

Как писать сценарии запуска? Очень просто — структура *.prm копирует структуру обыкновенного *.ini:

[секция]
величина = значение

Перечень секций, параметров и их значений
Имя параметра Значение Зачем он нужен
Секция [ General ] Общие параметры
Output file_name имя лог-файла для записи произведенных действий
Quit 1/0 * нужно ли закрывать программу после выполнения сценария
CheckAndRepair 1/0 нужно ли производить тестирование/исправление
UnloadData 1/0 нужно ли делать выгрузку данных
SaveData 1/0 нужно ли делать сохранение данных (т.е. архивацию *.dbf)
AutoExchange 1/0 нужно ли выполнять автообмен с РБД
Секция [ CheckAndRepair ] Тестирование и исправление
Repair 1/0 делать ли исправление или ограничиться тестированием
PhysicalIntegrity 1/0 проверять физическую целостность таблиц ИБ
LogicalIntegrity 1/0 проверять логическую целостность таблиц ИБ
Reindex 1/0 производить переиндексацию ИБ
RecalcSecondaries 1/0 производить обновление вторичных (служебных) данных ИБ
RecalcTotals 1/0 пересчитывать бухгалтерские и оперативные итоги
Pack 1/0 упаковывать таблицы ИБ (физически стирать удаленные записи)
SkipUnresolved 1/0 пропускать неразрешенные ссылки или исправлять их
CreateForUnresolved 1/0 способ разрешения неразрещенных ссылок, создавать объекты (1) или же очищать такие ссылки (0)
Reconstruct 1/0 способ восстановления частично потерянных данных объектов, создавать объекты (1) или удалять их (0)
Секция [ UnloadData ] Выгрузка данных
UnloadToFile file_name имя файла переноса данных
IncludeUserDef 1/0 включать список пользователей
Password password пароль на ZIP-архив
Секция [ SaveData ] Сохранение данных
SaveToFile file_name имя файла архива
FileList mask1,mask2... список масок архивируемых файлов (через запятую или пробел)
* вместо 1/0 можно использовать Y/N
Секция [ AutoExchange ] Автообмен баз УРБД
SharedMode 1/0 не очень понятно, что это, лучше поставить "1"
WriteTo 01* код базы, куда выгружать
ReadFrom 01* код базы, откуда загружать
* вместо 1/0 можно использовать Y/N

Если запуск Конфигуратора в пакетном режиме оформить в виде *.bat или *.cmd, то с помощью любого планировщика можно организовать полностью автоматическое выполнение некоторых рутинных операций в заданное время. Как в анекдоте — “пипл туда, пипл сюда..”. Мечта админа ;-).

Партнеры:


Также может быть интересно:

Канал Россия 1 на http://spbtvonline.ru/
   
 Сайт поддерживается за счет партнеров:
:::... Сайт содержит архив двух версий hare.ru Карта сайта