Как отличить копию базы от рабочей, чтобы не сделать изменения в ненужной базе.
Сохраните обработку и пропишите в параметрах запуска путь к ней через команду Execute
При запуске пропишется путь к базе
Проверено на базе УПП 1.3 для Казахстана.
Автоматизация бухгалтерского учета
Разработки для оптимизации управления и новейшие отчеты и обработки программ
(0) Для удобства обычно подписывают базу , ТЕСТ БП , ТЕСТ УТ и.т. д.
Когда запускают то уже знают где находятся в тестовой или боевой.
Если запущено много копий , то имеет смысл подписать в синониме название базы, в конфигурацию заходим и меняем поле СИНОНИМ, это очень удобно , всегда видно что находитесь в тестовой базе.
Ну и в конце концов всегда можно нажать кнопку показать информацию о программе , где явно виден и сервер и имя базы.
p.s.
Как правило грамотные ребята пишут что то типа: Сервер test05.udg.ru база ut-test-2.
Не очень грамотно держать тестовые базы на боевом сервере, ну разве что от бедности.
Вот похожее для конфигуратора:https://infostart.ru/public/724715/
А для пользовательского режима у меня скрипт, который делает копию заодно меняет соответствующую константу, которая отображается в заголовке (для разных конфигураций она разная, но сейчас на БСП стало попроще).
Это малоэффективно, у меня во всех копиях в заголовке указано «КОПИЯ!!!», но один хрен иногда по запарке не там где надо действуешь.
Добавил константы «ИмяРабочегоСервера», «ИмяРабочейБазы», код их проверки при запуске и свой стиль. Если выясняется, что это копия, то стиль меняется на добавленный, сильно-отличающийся, и отключаются фоновые задания.
Хранилище конфигурации для этого служит, в базе подключенной к хранилищу ничего не поменяешь пока специально не захватишь.
Учитывая прелести защиты от опасных действий, безопасных режимов, профилей безопасности и прав на открытие внешек — что-то как-то не ахти решение…
Скопировал базу, зашел, поставил дату запрета на 2100 год
Самый очевидный способ — это дать соответствующее название своей базе и проверять при нажатии кнопки информация о программе
В типовых конфигурациях давно реализована проверка на копия или оригинал, для того чтобы регламентные задания случайно не полезли делать обмен или почту получать.
Так что тут какое-то изобретение велосипеда.
Согласен с (9).
Проще из любой типовой скопировать механизм. Что БП 3.0 что ЗУП 3.0
Самый лучший способ сделать различие копии от рабочей за счет цветового оформления форм документов и справочников. У нас копия запускается с ядовитым цветом 🙂
P.S. заголовок программы ни кто не читает..
(4) да, я тоже там, где нет бсп, сделал константу — строка подключения. Две — наверно избыточно.
Авто отключение регламентных, особенно обменов — наше все.))
(11) если разработчикам копии разворачиваете — им тоже кислоту в глаза? )) Или они грамотные, сами переключат на нормальный режим?
(13) Понимаете всё в буквальном смысле..
(10)
ну не так уж и проще,
я передирал в нашу базу этот механизм, — прямо так скажем, минимум полдня убил.
После трех случайных обменов тестовой базы торговли и бухгалтерии и выгрузкой экспериментальных документов и выслушивание криков бухов о том, что порвались все счета в ведомости, выработалось привычка жать кнопку информации перед любимыми действиями! Если не следить за базой в которой находишься хоть Сигнализацию ставь, можешь ошибиться. Только внимание вас выручит.
(11) Не подскажете как разукрасить разом все формы в 1С красным цветом
Лично мне хватает константы «Заголовок системы»
(17) Конфигуратор «Стили» — «Основной» задаем цвет для «Фон формы». Можно создать стиль «ОсновнойКопия» с нужным цветом форм и в зависимости от копии подменять стиль или делайте в ручную
(17) Создать копию основного стиля, поменяв в нём нужные цвета (какие- подбирается эксперементально) и в ПередНачаломРаботыСистемы:
(4)
— а если используется кластер серверов?
— а если в настройках базы прописан IP, а не имя сервера?
— а если конфа не изменяема (запрещено менять)?
Спасибо за идею. Просто и универсально.
(1) зачем каждый раз менять синонимы, один раз прописал путь к обработке и все
(4) может расскажете как это сделать если у Вас это работает ))
да там писанины на две строки
если не считать строку КонецЕсли; 🙂
По дате изменения файла можно посмотреть, рабочая база будет свежее, так как изменения там происходят постоянно.
Я использую функцию СтрокаСоединенияИнформационнойБазы() при старте клиента. В строке соединения есть имя информационной базы, в зависимости от имени меняю заголовок главного окна, чтобы точно знать в какой базе работаю. Благодаря механизму расширений, можно это сделать вообще не внося изменений в конфигурацию на поддержке.
(23)
А каждый раз и не надо менять, только в случае очередного поднятия из бекапа боевой базы и восстановления в тествую, что бы в тестовой появились свежие данные — синоним менять придется.
Можно и обработку написать