ОСкрипты для деплоя и копирования базы данных

Публикация № 617478 02.05.17

Разработка - Инструментарий разработчика

oscript deploy deployka MSSQL SQL Copy Копирование база данных скрипт os bat RAS RAC обновление

Набор оскриптов для деплоя базы 1С через хранилище и копирование через sql-бекап одной базы в другую

Что делают эти скрипты, если кратко?

Скрипт по копированию базы данных CopyBase.os

Вам звонят и сообщают, что в заказе номер 667 ошибка и надо бы поправить. А в вашей базе нет этого заказа. Не набивать же его вручную? Запускаете скрипт Import.bat, ждете 2-30 минут, и вот уже в вашей базе самая свежая копия рабочей, уже подключена к хранилищу разработки и обновлена.

Скрипт по деплою Deploy.os

Настала пора обновить рабочую базу. Вы заранее положили все нужно в хранилище рабочей базы.

В час X вы начинаете обновление: оповещаете пользователей о том, что надо бы из 1Ски всем выйти (никто конечно не выходит),

начинаете рубить соединения вручную (фоновые задания и самые упертые возвращаются быстрее, чем вы их успеваете удалить),

ставите блокировку на базу (и сами долго мучаетесь с заходом в конфигуратор. Доходит до того, что вы снимаете блокировку, забегаете в конфигуратор и снова ставите блокировку, надеясь, что именно сеанс конфигуратора не умрет. Он умирает),

делаете бекап (он длится что то долго и вы отвлекаетесь на пару статей. Когда возвращаетесь в базе уже тусуются пользователи, а бекап уже морально устарел),

обновляете (ребутнув сервер пару раз, т.к. пользователи так  и не перестали заходить),

с чистой совестью идете гулять с семьей/пить пиво с друзьями (вам звонят и говорят, что не могут зайти в базу. Видимо кто то забыл выполнить миграцию).

Скрипт же делает все то же самое, но быстрее и надежнее. Он ставит мягкую блокировку (когда новые пользователи не могут зайти, а старым выскакивает сообщение с предложением сохраниться и завершить работу), потом отрубает все соединения принудительно, выполняет бекап, обновляется из хранилища, обновляет базу данных, запускает миграцию данных и снимает блокировку, когда все завершено.

Как работают скрипты, если подробнее

Сами скрипты написаны на oscript. На инфостарте этот проект уже известен, поэтому не буду сильно его хвалить.

Через батник запускается на выполнение оскрипт, ему передается скрипт и параметры к нему. 

Особым образом читаются все необходимые параметры (об этом чуть ниже).

Выполняется тестирование параметров - что к хранилищу коннектится, что кластер отвечает и что доступ к SQL получен. Если передать параметр -testparam, то на этом скрипт будет остановлен. Нужно это для проверки всех важных параметров до того, как начались длительные или безвозвратные операции, а то очень обидно, когда уже и пользователи изгнаны и бекап выполнен, а пароль к хранилищу не подошел.
Если добавить флаг -debug, то будут выведены все подробности (будет включен режим отладки для логоса, если вы понимаете о чем я).

CopyBase.os

Шаг Выполнить бекап. 

Выполняет бекап базы источника средствами SQLCMD (в моем примере это рабочая база).

Может быть пропущен, если параметр "Source_SQL.UseBackup" = false .

Выполняет бекап в файл "FileBackup" для SQL базы-источника с параметрами "Source_SQL.Server", "Source_SQL.User", "Source_SQL.Password", "Source_SQL.Base"

Если бекап выполнить не удалось- скрипт завершает работу аварийно.

Шаг Проверить соединения

Проверяет, что в базе-приемника (в моем примере это наша база разработки, в которую мы разворачиваем копию) нет соединений.

Пропускается, если "SQL.UseRestore" = false

Получает количество соединений для SQL базы-приемника с параметрами "SQL.Server", "SQL.User", "SQL.Password", "SQL.Base"

Если получить соединения не удалось или соединений больше 0 - скрипт завершает работу аварийно.

Шаг Выполнить восстановление

Запускает скрипт "Script_Restore" для базы "SQL.Server", "SQL.User", "SQL.Password", "SQL.Base"

Может быть пропущен, если "SQL.UseRestore" = false

Обойтись без отдельного скрипта не получилось, и проще всего восстановления было сделать через sql-скрипт. Этот скрипт можно получить при интерактивной попытке восстановить бекап в нужную базу (указав пути к файлам, расставив нужные флажки и быть может указав дополнительные действия). Скрипт должен восстанавливать именно ту базу, для который запущен оскрипт и именно из файла "FileBackup"

Шаг Удалить файл бекапа

Удаляет файл "FileBackup". Может быть пропущен, если "SQL.UseRestore" = false или "SQL.DelBackup" = false

Шаг Переподключить хранилище

Может быть пропущен, если "Repo.Blind" = false.

Подключается к базе-приемнику с параметрами "EXE1CV8", "Base.Connect", "Base.User", "Base.Password"

Отключает базу от хранилища (на случай, если она подключена к другому хранилищу), подключается к хранилищу с параметрами "Repo.Connect", "Repo.User" и "Repo.Password"

Если "UpdateCfg"=true, то выполняет обновление БД

Deploy.os

Шаг Включить RAS

Может быть пропущен, если "Cluster.UseLock" = false, "UseDynamicUpdate" = false или не заполнен "EXERAS".

Выполняет запуск RAS. Есть смысл, если скрипт выполняется на том же сервере, что и сервер 1С.

Именно с помощью RAS и RAC происходит взаимодействие с кластером, с помощью которого устанавливается блокировка и выполняется принудительное завершение работы у пользователей.

Шаг Устанавить блокировку

Может быть пропущен, если "Cluster.UseLock" = false, "UseDynamicUpdate" = false

Для установки блокировки используется куча параметров: 

  • "Cluster.ras" - сетевой адрес к RAS, например localhost
  • "EXERAC" - путь к RAC
  • "Base.Base" - имя базы в кластере
  • "Cluster.Admin"
  • "Cluster.Password"
  • "v8version" - используемая версия 1Ски
  • "Cluster.lockuccode" - код блокировки
  • "Cluster.lockmessage" - сообщение о блокировке
  • "Cluster.lockstart" - дата и время начала блокировки
  • "Cluster.lockstartat" - количество секунд, через которое нужно установить блокировку

Шаг Пауза перед удалением сеансов

Может быть пропущен, если "Cluster.UseLock" = false, "UseDynamicUpdate" = false

Скрипт останавливается на время до окончательной блокировки, которое задается параметрами "Cluster.lockstart" или "Cluster.lockstartat"

Шаг Удалить соединения

Может быть пропущен, если "Cluster.UseLock" = false, "UseDynamicUpdate" = false

Удаляет все соединения.

Шаг Выполнить бекап

Пропустить нельзя

Выполняет бекап в файл "FileBackup" для SQL базы-приемника с параметрами "SQL.Server", "SQL.User", "SQL.Password", "SQL.Base". В отличие от выполнения аналогичного шага в скрипте CopyBase.os тут выполняется бекап именно для текущей базы, а не для базы-источника.

Шаг Обновить конфигурацию из хранилища

Можно пропустить, если "UpdateCfg"=false

Подключается к базе-приемнику с параметрами "EXE1CV8", "Base.Connect", "Base.User", "Base.Password"

Подключается к хранилищу с параметрами "Repo.Connect", "Repo.User" и "Repo.Password", получает из него все обновления и выполняет обновление БД. Если указан флаг "UseDynamicUpdate" = true то обновление динамическое.

Шаг Запуск миграции

Можно пропустить, если "UpdateCfg"=false

Запускает 1С с параметром запуска указанным в "UpdateLaunchParameter". Подразумевается, что в самой базе уже есть код, который по этому параметру запуска полностью автоматически выполнит обновление. Для баз на основе БСП уже все есть и этот ключ "ВыполнитьОбновлениеИЗавершитьРаботу", но это не точно.

Шаг Снять блокировку

Может быть пропущен, если "Cluster.UseLock" = false, "UseDynamicUpdate" = false

Снимает блокировку и разрешает вход пользователям. 

Указание параметров и файлы настроек

Пример файлов с настройками лежит в папке bin.

Параметры читаются за счет библиотеки https://github.com/Stepa86/ReadParams

Параметры хранятся в json файлах. Они удобны для чтения и редактирования без использования спец. инструментов. Главное не забывать заменять \ на \\

Особенности указания параметров в строке запуска

Файл параметров по умолчанию

В первую очередь читается файл param_os.json, его не нужно указывать в строке запуска. Таким образом строка запуска

oscript ..\..\..\src\deploy.os

Прочитает файлы из файла param_os.json и нормально отработает.

Переданный файл параметров

Файл с параметрами можно указать явно, причем файлов может быть несколько - они должны быть разделены ;. Каждый последующий файл может переопределить параметры предыдущего.

oscript ..\..\..\src\deploy.os -debug -testparam "..\param\exe1c.json";"..\param\cluster.json";"..\param\sql.json";base.json;Dynamic.json

Особенности чтения файлов параметров

При разработке я придерживался правила - один параметр указывается один и только один раз. Когда обновляется 1Ска на сервере - нужно изменить только один параметр, а не 15 файлов.

Для этого при чтении параметров работает механизм подстановки 

{
    "v8version": "8.3.10.2168",
    "EXE1CV8": "c:\\program Files (x86)\\1cv8\\%v8version%\\bin\\1cv8.exe",
    "EXERAC": "C:\\Program Files\\1cv8\\%v8version%\\bin\\rac.exe",
    // Если RAS уже запущен, то этот параметр следует удалить. Используется для старта RAS принудительно
    "EXERAS": "C:\\Program Files\\1cv8\\%v8version%\\bin\\ras.exe"
}

и в качестве параметра можно указать другой файл для чтения. Вот пример файла param_os.json, который подтянет все остальные параметры из других файлов

{
	"ReadFile.exe1c": "..\\param\\exe1c.json",
	"ReadFile.cluster": "..\\param\\cluster.json",
	"ReadFile.sql": "..\\param\\sql.json",
	"ReadFile.Base": ".\\base.json"
}

Флаги запуска

Можно перед указанием файлов указать флаги -debug и -testparam . Что они делают описано выше.

Рекомендуемое расположение файлов параметров

[bin]               // Папка в проекте
  [Server]          // Папка, в которой лежат все параметры для одного этого сервера
    [param]         // Папка с общими параметрами, применимыми для этого сервера
      cluster.json  // Общие параметры кластера для Server
      exe1c.json    // Общие параметры с путями к exe 
      import.json   // Общие параметры для импорта скриптом CopyBase
      sql.json      // Общие параметры текущего SQL, который использует текущий Server
    [DB1]           // Папка с параметрами, применимыми для этой базы
      deploy.bat    // Батник для деплоя
      import.bat    // Батник для CopyBase
      testparam.bat // Батник для тестов параметров
      base.json     // Параметры этой базы
      import.json   // Параметры базы, из которой нужно импортировать
      param_os.json // Файл с ссылкой на другие файлы параметров
      Restore_BaseName_PC.sql // SQL скрипт для восстановления в текущую базу из базы-источника

Исходный код и всегда самая свежая версия доступна на гитхабе https://github.com/Stepa86/1C-Deploy-and-CopyDB

Скачать файлы

Наименование Файл Версия Размер
ОСкрипты для деплоя и копирования базы данных:

.zip 98,49Kb
50
.zip 98,49Kb 50 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Soloist 541 02.05.17 08:43 Сейчас в теме
Годно. Здорово было бы, чтобы ещё версию 1С цепляла, как у текущего сервера. Может это возможно через реестр посмотреть?

И было бы бомбой автоматизировать автоматическое обновление любой конфигурации стоящей на поддержке. Типа скрипт мониторит текущие версии конфигурации на https://releases.1c.ru/total и если видит что-то новое, то составляет оптимальный путь к обновлению, скачивает нужные поставки и последовательно обновляет (с запуском 1С в режиме предприятия разумеется).
2. nomadon 359 02.05.17 09:53 Сейчас в теме
(1) для обновления уже есть наработки oscript-AutoUpdateIB
3. Soloist 541 02.05.17 11:11 Сейчас в теме
(2) спасибо, заценим. Антон ещё мне в личку кинул решение конкретно по моей проблеме http://helpme1c.ru/obnovlyator-1s-gruppovoe-paketnoe-obnovlenie-vsex-baz-za-odin-raz
4. romankoav 02.05.17 12:49 Сейчас в теме
5. Brawler 441 02.05.17 12:53 Сейчас в теме
Чет какой-то сложный процесс описан))
Пользователей обязательно трогать?
Средствами SQL легко делается бэкап со сжатием (так быстрее) и не выгоняя пользователей.
Потом бэкап разворачивается в новой тестовой базе.
Можно даже базу на 1С сервере одну и ту же тестовую использовать, только на SQL ее удалять и заново создавать. Сервак 1С новую базу сам подключит как только она будет создана вновь.
Ну и остается только переподключить к хранилищу конфигураций и то не обязательно может быть в этом потребность.
6. Stepa86 1501 02.05.17 13:20 Сейчас в теме
(5) При копировании базы а) Пользователи не трогаются б) Используются те же средства SQL, только заскриптованные в) Скрипт по восстановлению можно использовать любой, в том числе с созданием новой базы.
Сейчас чтобы сымпортировать базу из рабочей я делаю двойной клик по батнику и иду наливать кофе, когда возвращаюсь - уже можно полноценно работать. Это как с посудомойкой - она дольше моет и руками получается порой качественнее и быстрее. Но сам факт того, что можно запустить и уйти по делам, решает.

(4) У меня нет ни одной публикации, где бы не придрались к моему русскому/английскому. Я уже начинаю комплексовать (на самом деле нет)
7. AntonSm 30 02.05.17 15:26 Сейчас в теме
Про Deploy.os можно сказать, что этот велосипед уже придуман.
Называется deployka.
https://github.com/oscript-library/deployka
8. Stepa86 1501 02.05.17 15:55 Сейчас в теме
(7) А если заглянуть в гитхаб, то станет видно, что этот проект основан на деплойке и расширяет ее возможности.
olegtymko; корум; Evil Beaver; sorb; JohnyDeath; +5 Ответить
9. sorb 02.05.17 16:34 Сейчас в теме
10. JohnyDeath 300 02.05.17 18:17 Сейчас в теме
Спасибо! В хозяйстве обязательно пригодится
11. 1cProfit 03.05.17 10:14 Сейчас в теме
Ошибка.
Прикрепленные файлы:
12. Stepa86 1501 03.05.17 10:36 Сейчас в теме
(11) В параметрах для копирования базы нужно указать
"Cluster.UseLock": false
Иначе он настройки кластера пытается протестировать.
13. dis_2015 22 15.05.17 11:51 Сейчас в теме
Добрый день.
Получаю вот такую ошибку:

00:00. Инициализация
00:00. 	! Включен режим тестирования параметров
00:00. 	ОШИБКА Ошибка чтения файла C:\1CDev\auto_restore\PC\param\exe1c.json: Не удалось прочитать JSON. {Модуль C:\Program Files (x86)\OneScript\lib\json\src\json.os / Ошибка в строке: 558 / JSON: Неверный формат данных в позиции 182.}
00:00. 	ОШИБКА Ошибка чтения файла C:\1CDev\auto_restore\PC\param\sql.json: Не удалось прочитать JSON. {Модуль C:\Program Files (x86)\OneScript\lib\json\src\json.os / Ошибка в строке: 558 / JSON: Неверный формат данных в позиции 7.}
00:00. 	ОШИБКА Ошибка чтения файла import.json: Не удалось прочитать JSON. {Модуль C:\Program Files (x86)\OneScript\lib\json\src\json.os / Ошибка в строке: 589 / JSON: Некорректный пакет данных в позиции 3.}
{Модуль C:\1CDev\auto_restore\src\Классы\ПараметрыРаботы.os / Ошибка в строке: 101 / Конструктор не найден (КомандаУправлениеСеансами)}


В exe1c.json вот такое

{
    "v8version": "8.3.9.2170",
    "EXE1CV8": "C:\\Program Files (x86)\\1cv8\\%v8version%\\bin\\1cv8.exe",
    "EXERAC": "C:\\Program Files (x86)\\%v8version%\\bin\\rac.exe",

}


В sql.json вот это

 {
    // Удалять ли промежуточный бекап после восстановения
    "SQL.DelBackup": true,
    // Использовать ли восстановление из бекапа
    "SQL.UseRestore": true,
    // Параметры сервера SQL-источника. Откуда будет копироваться база
    "Source_SQL.User": "sa",
    // Использовать ли выполнение бекапа. 
    // Если не использовать, но "SQL.UseRestore": true, то база будет восстановлена из файла "FileBackup" 
    "Source_SQL.UseBackup": true,
    "Source_SQL.Password": "*****",
    "Source_SQL.Server": "srv",
    // Выполнять ли подключение к хранилищу после восстановления
    "Repo.Blind": true,
    // Обновлять ли базу данных после подключения к хранилищу
	"UpdateCfg": true,
    // Отключение использования блокировки. 
    "Cluster.UseLock": false	
}
Показать


Подскажите в чем может быть проблема ?
14. Stepa86 1501 15.05.17 12:27 Сейчас в теме
(13) В exe1c.json последняя запятая лишняя, а в остальных json комментарии не поддерживаются видимо, их нужно удалить. И надо последнюю версию скачать с гитхаба, там ошибка "Ошибка в строке: 101 / Конструктор не найден (КомандаУправлениеСеансами)}" исправлена
15. dis_2015 22 15.05.17 14:41 Сейчас в теме
(14)
Спасибо. Это помогло. Но дальше я получил другую ошибку


Далее я установил библиотеку readparams

opm install readparams


Снова запустил проверку параметров

Получаю ошибку

C:\1CDev\auto_restore\PC\DIS>oscript C:\1CDev\auto_restore\src\CopyBase.os -testparam import.json 
{Модуль C:\Program Files (x86)\OneScript\lib\package-loader.os / Ошибка в строке: 90 / Невозможно загрузить модуль ЧтениеПараметров. Такой символ уже определен.}
16. dis_2015 22 15.05.17 14:47 Сейчас в теме
17. Stepa86 1501 15.05.17 14:50 Сейчас в теме
(16) Что было? В идеале про ошибки писать в ишузы в гитхабе
18. dis_2015 22 15.05.17 14:56 Сейчас в теме
Я библиотеку чтение параметров вначале положил еще в папку lib к самому CopyBase.os и был конфликт
19. Fragster 1123 13.07.17 11:27 Сейчас в теме
а я такое на bash сделал... правда не уничерсальное, и cygwin пришлось поставить на винду....
20. maxx 976 14.07.17 10:12 Сейчас в теме
1.) После прочтения не понял для PostgreSQL эти скрипты подходят?

2.) Эти скрипты необязательно запускать на сервере, где крутиться сервер 1С, можно с любой машины, где прямое подключение к базе?
21. Stepa86 1501 14.07.17 12:33 Сейчас в теме
(20) 1) Разрабатывал только под ms sql, т.к. используется утилита SQLCMD. Код открыт, можно попытаться переделать под себя под постгри. По идее там только один модуль адаптировать

2) Для копирования базы из одной в другую запускать можно с любой машины, на которой есть доступ к нужным скулям. Для деплоя вся соль в подключении к RAS. Локально он стартуется из скрипта и взаимодействие идет через него, но можно RAS поднять как сервис с доступом по сети и общаться через сеть, но у меня это так и не взлетело
22. Wadus161 31 25.09.17 14:40 Сейчас в теме
Спасибо за статью! Отличная штука! Уже пользуюсь. OneScript мощный инструмент.
23. bogdan_sukonnov 57 06.06.19 17:45 Сейчас в теме
Для тех кто будет смотреть на этот инструмент: очень хорошая разработка, но подкачала версия библиотеки deployka , на которой основывался автор. Та старая deployka не могла устанавливать блокировку регламентных заданий. Поскольку deployka сделана как отдельный инструмент, запускаемый из командной строки с параметрами, а автор хотел расширить ее логику, ему пришлось дописать деплойку, потеряв возможность обновления. Я долго это все выяснял и теперь не уверен что делать. Хотелось бы найти такое же решение, как и это, с удобными параметрами, с тестами, с оповещениями в мессенжер. Но чтобы оно было готовое. Т.к. найду ли я время доработать новую деплойку, умеющую блокировать регламентные задания, под использование в данном окружении, неясно...
24. Stepa86 1501 06.06.19 19:31 Сейчас в теме
(23) У меня регл. задания блокировались. Вот даже коммит чтоб блокировка лучше работала https://github.com/Stepa86/1C-Deploy-and-CopyDB/commit/b3402866aec2cc87847563158469b80bdf040021 . Вы точно последнюю версию взяли?
25. Niki_Pro 23.06.19 13:18 Сейчас в теме
(24) наверное bogdan_sukonnov имел ввиду что в вашей разработке потерялось возможность обновления оригинальной deployka. У Вас как-то учитываются новые релизы deployka? (хотя она последнее время не менялась, но тем не менее)
26. cosmo2004 38 14.05.20 08:23 Сейчас в теме
В скриптах используется конструктор РаботаСSQL
выполнениеБекапа = Новый РаботаСSQL();


Подскажите в какой библиотеке находится РаботаСSQL ?
27. Stepa86 1501 14.05.20 08:24 Сейчас в теме
28. Kyrales 143 13.03.21 08:28 Сейчас в теме
Крайне сложно в развертывании...

Откуда берется модуль ОбщегоНазначения ? У меня ошибку на него выдает.
Прикрепленные файлы:
29. Kyrales 143 19.06.21 15:53 Сейчас в теме
(28) Развернул на тестовом SQL. Заработало
30. DiegoLidabo 11 17.08.22 20:57 Сейчас в теме
Буду использовать
Как правильно прочитать прикрепленный файл ?
Прикрепленные файлы:
33c035fd749ae569c2d60e96.json
31. DiegoLidabo 11 18.08.22 07:43 Сейчас в теме
Не читает файл такого содержания

https://habr.com/ru/post/554274/

[
{
"value": "Иванов Виктор",
"unrestricted_value": "Иванов Виктор",
"data": {
"surname": "Иванов",
"name": "Виктор",
"patronymic": null,
"gender": "MALE"
}
},
{
"value": "Иванченко Виктор",
"unrestricted_value": "Иванченко Виктор",
"data": {
"surname": "Иванченко",
"name": "Виктор",
"patronymic": null,
"gender": "MALE"
}
},
{
"value": "Виктор Иванович",
"unrestricted_value": "Виктор Иванович",
"data": {
"surname": null,
"name": "Виктор",
"patronymic": "Иванович",
"gender": "MALE"
}
}
]
32. andiv73 13.10.22 16:34 Сейчас в теме
Господа, если кто знает особенности запуска Фоновых заданий 1С из скрипта OneScript?
Оставьте свое сообщение

См. также

Infostart Toolkit

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Простые и удобные инструменты: Консоль запросов, СКД, Редактор объекта, Поиск ссылок и другие. Редактор запросов и кода с раскраской и контекстной подсказкой. Улучшенный конструктор тонкого клиента и др.

10000 руб.

02.09.2020    80421    394    366    

467

SALE! %

PowerTools

Инструментарий разработчика Обработка документов Инструменты администратора БД Корректировка данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

2400 1920 руб.

14.01.2013    164537    1010    0    

769

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    93443    227    95    

275

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    19767    11    14    

18

Универсальная обработка создания связанных документов (универсальный "ввод на основании")

Инструментарий разработчика Обработка документов Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Универсальная внешняя обработка призвана предоставить пользователю механизм, позволяющий быстро, в удобной и понятной форме настроить в программе функционал по созданию и заполнению новых документов на основании данных других документов (и не только), т.е. возможность настраивать типовой механизм "ввода на основании" для заполнения создаваемых документов по своим правилам.

2500 руб.

02.04.2017    42033    72    27    

128

Заполнение документа "Корректировка регистров" произвольными данными

Закрытие периода Корректировка данных Инструментарий разработчика Обработка документов Платформа 1С v8.3 Система компоновки данных 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 руб.

13.07.2015    46417    155    27    

105

Программное формирование существующих печатных форм

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Получение списка печатных форм, формирование выбранной печатной формы и сохранение ее в файл.

1 стартмани

17.12.2021    12621    32    RocKeR_13    5    

42

Бустер Конвертации данных 3 (Infostart Toolkit)

Инструментарий разработчика 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 руб.

07.10.2021    11501    2    12    

36

Универсальный редактор данных (УРД)

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

1 стартмани

27.08.2021    15903    206    Adeptus    57    

92

Автоматизация труда программиста. Библиотека прикладных функций

Инструментарий разработчика Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Конфигурации 1cv8 Платные (руб)

Программист - это человек, непрерывно принимающий решения. Написание кода не является процессом принятия решения - это всего лишь трансляция ваших желаний. Если вас периодически тяготит написание сотен строк кода ради решения задач, то прошу обратить внимание. Данный продукт позволит существенно сократить время на рутинные операции при разработке. За счет библиотечной реализации сокращается объём кода, а его читаемость повышается. К библиотеке прилагается документация API и шаблоны кода для наиболее популярных методов.

4200 руб.

16.04.2021    10549    2    9    

7

Подсистема "Показатели объектов"

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Если вашим пользователям нужно вывести в динамический список разные показатели, которые нельзя напрямую получить из таблиц ссылочных объектов, и вы не хотите изменять структуру справочников или документов - тогда эта подсистема для вас. С помощью нее вы сможете в пользовательском режиме создать свой показатель, который будет рассчитываться по формуле или с помощью запроса. Этот показатель вы сможете вывести в динамический список, как любую другую характеристику объекта. Также можно будет настроить отбор или условное оформление с использованием созданного показателя.

2 стартмани

06.03.2021    14420    8    pila86    17    

29

Чтение метаданных 1С из SQL Server и PostgreSQL

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

Описание файла DBNames таблицы Params и файлов объектов метаданных таблицы Config.

16.02.2021    11730    zhichkin    72    

79

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    19559    32    huxuxuya    11    

36

DaJet Studio: расширенный язык запросов 1С, очереди сообщений и web сервисы

Инструментарий разработчика Платформа 1С v8.3 Бесплатно (free)

DaJet Studio - разработка и управление скриптами, хранимыми процедурами и функциями, написанными на расширенном языке запросов 1С, а также очередями сообщений и web сервисами, основанными на использовании Microsoft SQL Server.

10.11.2020    12747    126    zhichkin    14    

25

Проверка ведения учета (универсальная)

Инструментарий разработчика Анализ учета Платформа 1С v8.3 Запросы Абонемент ($m)

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

2 стартмани

11.08.2020    11537    61    vozhd    4    

19

Глобальное меню разработчика для управляемых форм

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

Подсистема "Инструменты разработчика". Глобальное контекстное меню разработчика для управляемых форм в толстом клиенте.

03.08.2020    9026    tormozit    29    

94

Внешний регламент для 1С

Инструментарий разработчика Платформа 1С v8.3 Россия Абонемент ($m)

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

1 стартмани

05.03.2020    17334    14    moolex    13    

15

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    14989    3    6    

32

Markdown-editor в 1С (с сохранением в HTML)

Инструментарий разработчика Управляемые формы Конфигурации 1cv8 Абонемент ($m)

В этой обработке вы пишете свой текст, используя синтаксис Markdown, а на выходе получаете чистый HTML-код, избавленный от JS-библиотеки, которая его сформировала. Совместим с Webkit и IE.

1 стартмани

04.07.2019    19716    34    riposte    6    

52

Модель объекта

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    24789    3    vadim1980    5    

17

CFU & CFE - reader (версия 3.1).

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для анализа файлов обновлений (.cfu) и расширений (.cfe) в режиме предприятия в любой конфигурации для 1С 8.3.+. Основана на разработке https://infostart.ru/public/97194/.

2 стартмани

21.06.2019    17394    48    vandalsvq    12    

28

Блин, мы забыли включить регламентные задания…

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Привет, Инфостарт! Сегодня расскажу, как я решил проблему с выключенными регламентными заданиями в рабочих базах. Желая исключить человеческий фактор и минимизировать количество ошибок, я написал небольшую конфигурацию.  В конфигурации два регламентных задания. Первое периодически подключается к кластеру и сохраняет текущие параметры: имя, Сервер БД, базу СУДБ, блокировки входа и регламентных заданий и т.д. Второе задание периодически проверяет эти параметры на ошибки.

1 стартмани

08.04.2019    34917    23    slozhenikin_com    37    

61

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

31.01.2019    105576    bonv    261    

874

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Бухгалтерский учет Управленческий учет Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    77896    286    informa1555    246    

207

Легкое и гибкое управление списком доступных баз 1С у пользователей

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

7 стартмани

05.12.2018    30451    30    RomikR    11    

18

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек.

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    68285    647    Eugen-S    36    

52

Навигатор по конфигурации базы 1С 8.3

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.95 от 07.05.2023

3 стартмани

28.10.2018    59915    535    ROL32    72    

183

Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Абонемент ($m)

Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка

10 стартмани

14.08.2018    159477    3532    Evg-Lylyk    800    

624

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    46452    35    informa1555    30    

77

Работа со схемой запроса

Инструментарий разработчика Платформа 1С v8.3 Запросы Абонемент ($m)

Стандартом взаимодействия с реляционной базой данных стал язык SQL. Приемником SQL в 1С является язык запросов. Язык запросов, также как и SQL, является структурированным. Составляющие структуры запроса отвечают на разные вопросы о том, какие данные требуется получить и какие манипуляции с множествами данных необходимо произвести при получении. В простых случаях текст запроса можно написать вручную, однако в сложных случаях, а также при программном формировании, - лучше воспользоваться объектной моделью запроса и использовать объект "Схема запроса". В статье дается описание объектной модели и особенностей работы с ней, а также приводится решение, упрощающее взаимодействие с объектом "Схема запроса".

1 стартмани

24.04.2018    59315    kalyaka    40    

212

Регистры правил [Расширение]

Инструментарий разработчика Платформа 1С v8.3 Управление правами 1С:Управление торговлей 11 Абонемент ($m)

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    32419    33    33lab    5    

18

Заполняем по шаблону (по умолчанию)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

08.02.2018    44262    25    mvxyz    17    

79

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    26103    2    10    

9

Программное формирование форматированной строки в стиле html+inline CSS

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    58686    60    bonv    13    

74

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

При обновлении платформы 1С:Предприятие 8 предыдущие версии не удаляются. Со временем количество неиспользуемых версий платформы растет. Они занимают место на диске. Для решения этой проблемы предназначена программа OneCleaner. Она позволяет быстро удалить неиспользуемые версии платформы, а также почистить кэш метаданных и удалить ненужные информационные базы данных.

1 стартмани

14.11.2017    39118    109    bonv    17    

48

Закрываем всплывающие сообщения платформы

Инструментарий разработчика Управляемые формы Абонемент ($m)

Принудительное закрывание сообщений платформы 8.3.10.

1 стартмани

10.11.2017    20767    13    RomaH    8    

12

DataReducer — R-консоль для «1С:Предприятия»

Инструментарий разработчика Платформа 1С v8.3 Анализ и прогнозирование Абонемент ($m)

Программа для обработки, анализа и визуализации данных информационных баз «1С:Предприятия» с использованием возможностей языка программирования R.

10 стартмани

10.07.2017    33504    3    DataReducer    13    

47

Многопоточность. Универсальный «Менеджер потоков» (фреймворк) с отслеживанием зависимости объектов

Универсальные функции HighLoad оптимизация Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Восстановление партий, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

26.05.2017    54031    DarkAn    87    

196

Набор подсистем "Умные таблицы"

Инструментарий разработчика Платформа 1С v8.3 Беларусь Россия Казахстан Абонемент ($m)

Данный набор подсистем – прикладная библиотека, призванная помочь программисту 1С быстрее решать ряд типовых задач бизнес-логики, таких как: ведение статусов объектов, отправка почтовых сообщений в определенное время, ведение произвольных таблиц с возможностью редактирования, сохранения и группировки, ориентированные на расчет бюджетных таблиц (план продаж, ретробонусы B2C, проценты по договорам B2B и договорные условия по КАМ), расчет коммерческой политики для бюджетных таблиц, исполнение произвольных алгоритмов с хранением кода в информационной базе, определение рабочих баз, хранение файлов во внешних СУБД (Postgre SQL, MS SQL и MongoDB) и выполнение произвольного кода после изменений ссылочного объекта вне транзакции изменения.

1 стартмани

22.05.2017    48875    119    Silenser    34    

75