Пятница, 29.03.2024. 18:47 | RSS
 Приветствуем Вас, Гость! Регистрация | Вход с параметрами
Меню сайта
Категории каталога
Обзоры оборудования [44]
Обзоры различного оборудования, побывавшего в руках автора сайта: ноутбуки, винчестеры, мониторы, материнские платы, видеокарты и др.
Тестирование [7]
Отчасти перекликается с обзорами оборудования, однако здесь сделан упор именно на тестирование в каких-либо бенчмарках
Практика апгрейда [9]
Статьи, посвященные вопросам апгрейда компьютера. Примеры конфигураций, оценка стоимости
Решение проблем [5]
Рассматриваются различные мелкие и не очень проблемы и их возможные варианты решения
Обзоры софта [6]
Обзоры программного обеспечения: антивирусы, браузеры, утилиты и др.
Игры [37]
Обзоры игр, советы по прохождению
Программирование, 1С [13]
Освещаются вопросы по программированию, в немалой степени - на платформе 1С: Предприятия
Цифровое фото, видео [5]
Выделенный раздел, посвященным цифровым фотоаппаратам и видеокамерам
Вход на сайт
Параллельные проекты
Друзья сайта
Статистика

Околокомпьютерный сайт Дмитрия Косолапова
Главная » Статьи » Программирование, 1С

Особенности распределения Комплексной конфигурации 4.5 (для 1С 7.7)

В этой заметке предлагается способ избежать длительной первичной синхронизации Комплексной конфигурации после ее преобразования в распределенную (во всяком случае, это наблюдалось в релизе 7.70.459).
Суть проблемы, в общем-то, заключается в следующем. При преобразовании информационной базы Комплексной конфигурации в распределенную все, казалось бы, идет своим чередом: создаем периферийные информационные базы, делаем для них выгрузку, "разворачиваем" эти выгрузки на соответствующих компьютерах, запускаем, после чего производим автообмен. И вот здесь получается интересная ситуация: эти выгрузки сопоставимы по размеру с исходными выгрузками для периферийных баз! Как следствие, если мы запускаем автообмен на центральной базе, то 1С может "лопатить" одну выгрузку несколько часов! Разумеется, такое положение дел не устраивало никого.

К счастью, мне подсказали, что дело возможно в запуске процедуры обновления конфигурации на периферийных базах. Начал разбираться. Оказалось, что так оно и происходит: номер релиза при формировании периферийных баз не выгружался (кстати как и префикс ИБ, указываемый в настройках), соответственно, система считала нужным "перелопатить" практически всю БД, дабы обновить ее до текущей версии. Но ведь обновление-то, фактически, не требуется!

Поэтому пришлось немного "хакнуть" процедуру ПриНачалеРаботыСистемы в глобальном модуле.

Изначально проверка необходимости обновления выглядела так:

Code
Если Константа.НомерРелиза <> Лев(Метаданные.Комментарий, 8) Тогда  
  Если ПравоДоступа("Использование","Обработка.ОбновлениеИБ")=1 Тогда
   ОткрытьФорму("Обработка.ОбновлениеИБ");
  Иначе
    Предупреждение("Первый запуск программы для обновления информационной базы
    |должен произвести пользователь с правами администратора!", 60);
    СтатусВозврата(0);
    Возврат;
  КонецЕсли;
КонецЕсли;

А, как мы выяснили, Константа.НомерРелиза сразу после "разворачивания" периферийный базы пустая. Поэтому этот кусок кода был модифицирован:

Code
Если Константа.НомерРелиза <> Лев(Метаданные.Комментарий, 8) Тогда
  Если Вопрос("(заплатка) Установить номер релиза "+Метаданные.Комментарий+" без выполнения обновления?", "Да+Нет")="Да" Тогда
    Константа.НомерРелиза = Лев(Метаданные.Комментарий, 8);
  Иначе
    Если ПравоДоступа("Использование","Обработка.ОбновлениеИБ")=1 Тогда
      ОткрытьФорму("Обработка.ОбновлениеИБ");
    Иначе
      Предупреждение("Первый запуск программы для обновления информационной базы
      |должен произвести пользователь с правами администратора!", 60);
      СтатусВозврата(0);
      Возврат;
    КонецЕсли;
  КонецЕсли;
КонецЕсли;

Как говорится, ловкость рук, и никакого мошенства. Разумеется, при запуске периферийной базы на этот вопрос необходимо отвечать утвердительно, а вот при фактическом обновлении центральной ИБ - отрицательно.

В результате проделанных манипуляций, проблема "здоровой" первичной выгрузки из периферийной базы была решена. Спасибо умным людям с "Волшебного форума" smile

Категория: Программирование, 1С | Добавил: Vetkhy (03.06.2009) | Автор: Дмитрий Косолапов | Просмотров: 3299

Метки: , Комплексная конфигурация, распределение

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Сайт управляется системой uCozДмитрий Косолапов © 2007-2024