Обновление баз

Программа для автоматического обновления конфигураций Updater

Программа для автоматического обновления конфигураций Updater
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Довольно часто приходится сталкиваться с ситуацией, когда требуется
обновить большое количество конфигураций 1С. В частности имеем такую
ситуацию: есть новый MD-файл, которым нужно обновить довольно приличное
количество конфигураций (около 300 штук).

ВАЖНО: ВНИМАТЕЛЬНО(!) прочитайте следующий раздел.

1. Работа с программой:
~~~~~~~~~~~~~~~~~~~~~~~
1) Настроить кофигурационный файл config.ini

   Инструкция по настройке конфигурационного файла хранится в самом файле
   config.ini
   Длинные имена следует заключить в кавычки.
   
   В случае, когда у нас есть 300 конфигураций, возникает проблема прописать
   в config.ini все эти 300 путей. Действительно, не набивать же эти пути
   ручками. Я предлагаю такой вариант: Если все базы лежат в одном каталоге
   (а если не лежат, то их можно перенести), то сформировать список можно
   командой dir:
                   dir c: /ad > c:list.txt
   после чего подредактировать его в Notepad или Far.
   Кодировка файла должна быть Win(1251 — текст Windows).

2) Убедится, что путь к файлу 1cv7.md, которым нужно обновить конфы,
   лежит именно по тому пути, который прописан в config.ini

3) Собственно все. Теперь следует закрыть все программы (это не обязательно,
   но может встретится какая-нибудь прога, которая монопольно работает
   с мышевым и клавиатурным вводом) и запустить Updater через
   Start -> Run… (или нажать Пуск+R)

4) Пойти покурить, попить кофе, почитать книжку, т.к. процесс обновления
   довольно продолжительный по времени. Обновление одной конфы может занимать
   от 30 до 100 сек. в зависимости от быстродействия компьютера, сети и
   размера конфигурации. Соответственно 300 конфигураций = в среднем ~4 часа.
   Во время работы НЕЛЬЗЯ(!) переключаться в другие программы и вообще нажимать
   какие-либо клавиши, а также кликать мышью.

5) Программа ведет лог-файл своих действий, который может быть использован
   для диагностики возможных ошибок

6) ОБЯЗАТЕЛЬНО(!) сделайте backup ваших конфигураций, чтобы в случае ошибок
   все можно было вернуть в первоначальное состояние

7) В случае каких-либо непредустмортенных ошибок в обновляемых конфигурациях,
   программа может зациклится (будет обновлять одну и ту же базу) или будет
   вести себя некорректно. В этом случае нужно
   1. Нажать Ctrl+Alt+Esc и удалить задачу update.exe из списка процессов
   2. Удалить конфу (ну и заодно конфы, которые уже были обновлены), вызвавшую
      ошибку из config.ini
   3. Запустить update.exe еще раз

2. Алгоритм работы программы
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1) Из config.ini берется очередной путь, формируется и исполняется команда:
   «c:program files1cin1cv7s.exe» config /d[путь]
2) Ищется окно, имеющее в своем наименовании строку «Конфигуратор» или
   «Регистрация Информационной Базы»
3) Найденное окно делается активным и захватывает мышь
4) Определяются координаты окна и в зависимости от этих координат мышь
   устанавливается на меню «Конфигуратор». Это позволяет точно
   позиционировать мышь вне зависимости от разрешения экрана и позиции
   окна Конфигуратора
5) Посылаются клик мыши и 5-тикратное нажатие стрелки вниз, имитирующее
   выбор пункта «Загрузить измененную конфигурацию»
6) В появившийся диалог выбора файла посылается строка [путь]1cv7.md и
   нажимается Enter
7) Делается пауза в несколько секунд для того, чтобы дать базе загрузиться
8) Имитируется выбор пункта меню «Файл» -> «Выход»
9) Циклически нажимается Enter с паузой в 5 секунд до тех пор, пока окно
   конфигуратора не закроется. (в 1C по дефолту всегда выставляется кнопка,

18 Comments

  1. Myst_

    Программа для автоматического обновления конфигураций Updater

    Перейти к публикации

    Reply ↓
  2. Ёпрст

    «Загрузить измененную конфигурацию» ???!!!!

    Это полный ПЭ.

    Reply ↓
  3. Ёпрст
  4. Myst_

    (1) Ёпрст, Обновление проходит через сравнение-объединение конфигурации(подредактирую описание)

    Reply ↓
  5. Kochevnic

    Спасибо! Будем пользоваться

    Reply ↓
  6. TrinitronOTV

    как-то настораживает эти автоматические обновления, не люблю я этого, предпочитаю самому контролировать процесс объединения

    Reply ↓
  7. Myst_

    (5) TrinitronOTV, Согласен — сам из таких.Это можно-нужно контролировать когда кол-во баз в разумных пределах, а т.к эта работа рутинная и больших денег не стоит, а кол-во баз зашкаливает (на практике эта обработка работает с 180 базами) Ну чего то мне не хочется смотреть на каждую.Лучше Книгу почитать чем каждые 2-3 минуты кликать на выскакивающие окна.

    А Вам так не удобнее было бы?

    Reply ↓
  8. TrinitronOTV

    (6) у меня конф, правда, немного, но они правленные, чисто из-за этого предпочитаю сам контролировать процесс

    Reply ↓
  9. mvv1975

    удалено

    Reply ↓
  10. Myst_

    (8) mvv1975, Не понял что переделать? если и так ничего кроме конфигуратора не запускается.

    Reply ↓
  11. mvv1975

    (8) извиняюсь. невнимательно строку запуска посмотрел…

    Reply ↓
  12. Jancoy

    штука весьма полезная, при условии бессбойной работы, естественно. но если совсем уж по-честному, то возможность закосячить все базы сразу одним махом весьма устрашает. грозное оружие в кривых или враждебно настроенных руках :)))) уууу

    Reply ↓
  13. Myst_

    (11) Jancoy, Данный функционал работал у меня 8 лет в компании Проблем не было.главное один раз все сделать аккуратно и кривые руки не пускать к ней.Баз около 100

    Reply ↓
  14. dumal

    Я так понимаю, что через WSH можно набросать подобную прогу за полчасика. К сожалению, мне эта разработка не подойдет, так как базы, в основном, правленые

    Reply ↓
  15. alexsiswx

    Неа, я все-таки доверяю только себе в этом деле. Частенько обновляю доработанные конфы.

    Reply ↓
  16. Jancoy

    (12) большой Вам респект и уважуха! насчет аккуратности и кривых рук- полностью согласна. главное в этом деле- серьезный подход

    Reply ↓
  17. Veduin

    И все 180 баз типовые??? Это довольно таки интересно. При таком количестве имеет право на существование!

    Reply ↓
  18. McCoy77

    Еще бы кто подкинул подобную штуку для 8-ки…

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *