Как узнать номер последней версии хранилища программно #720454


#0 by Ndochp
День добрый, не подскажете как программно узнать последний номер версии конфы из хранилища 1C.
#1 by ДенисЧ
а что, 1с уже научилась программно работать с хранилищем?
#2 by Dmitry1c
через DLL-ку, которая может анализировать код файлов хранилища там где-то выцеплять напишу за $50 тыс. гривней
#3 by 1Сергей
через sendkey можно сделать очень многое :)
#4 by Armando
"номер последней версии хранилища" или "последний номер версии конфы" Это какбе разные вещи. "номер последней версии хранилища" у меня есть пример
#5 by Armando
Хотя версию конфигурации тоже меожно из хранилища получить из таблицы versions
#6 by Ndochp
Сорри, что не ответил, сдернули на кипяток, закончившийся только в пятницу вечером. Нужен именно номер версии хранилища. (колонка "№" формы "История хранилища") Версию конфы я как-нибудь получу через "Метаданные.Версия" после того как утяну конфу к себе.
#7 by vhl
через ключи коммандной строки. Только это в 8.3 появилось вроде.
#8 by vhl
ConfigurationRepositoryReport
#9 by Ndochp
Может быть. Я ключи смотрел, для 8.2 - там только можно указать какая версия нужна (и -1 для последней) И распарсить MXL... Блин, тяжелый батник получается...
#10 by Ndochp
+ Забавно... запрос отчета без параметров группировки для версии 8.2.18.96 дает отчет без номера версии (такое ощущение, что группировка по комменту), а для 8.3.5.1119 - с версией (командная строка отличалась только именем базы, через которую я обращался к хранилищу) Несмотря на хелп и режим совместимости "не используется" /ConfigurationRepositoryReport <имя файла> [-NBegin <номер версии>] [-NEnd <номер версии>] [-GroupByObject] [-GroupByComment] — построение отчета по истории хранилища. Если параметры группировки не указаны и режим совместимости указан "Не используется", то отчет формируется с группировкой по версиям. В режимах совместимости "Версия 8.1" и "Версия 8.2.13" отчет формируется с группировкой по объектам. Если конфигурация базы данных отличается от редактируемой по свойству совместимости, при обработке командной строки учитывается значение режима совместимости конфигурации базы данных.
#11 by Armando
Вот кусок моего скрипта 'Выгрузка таблицы VERSIONS из хранилища Set objShell = wscript.createobject("wscript.shell") RetCode = objShell.Run("c:ScriptsToolsTool_1CD.exe c:1C_Depository_ING1C_Depository_ING_20141cv8ddb.1CD -quit -NotExclusively -ExportToXML e:DepositoryFiles1C_Depository_ING_2014 ""VERSIONS""", 1, True) 'номер текущего коммита Set xmlParser = CreateObject("Msxml2.DOMDocument.6.0") ' обязательно 6.0, проверял на 3.0 - не работает Для работы нужна тулуза Tool_1CD.exe. В переменной CurrentCommitNumber будет номер версии хранилища.
#12 by Armando
А тебе это зачем надо? Просто интересно
#13 by Ndochp
Рекомендации 1С по разработке тиражных решений говорят, что должно быть одно центральное хранилище, и по хранилищу на каждое долгоживущее задание по доработке. Обмен между этими хранилищами осуществляется через поставки В этой всей их катавасии с поставками (приложение 1, 3) мне не нравится одно: так как номер сборки меняется не перед созданием новой поставки, а согласно "5. Нумерация сборок", то возможно существование отличающихся поставок одной и той же версии, что ИМХО черевато. С другой стороны, если приписать к версии перед самым созданием поставки номер версии хранилища (пятым числом в номере версии или встык с четвертым) то получится четкая система нумерации поставок для техпроектов (каждый номер уникален, все идут по возрастанию). А так как все эти генерации и обновления штука не быстрая, то охота сделать скрипт, который буде генерить поставки для техпроектов по шедулеру перед началом рабочего дня или по требованию, но все равно одной кнопкой.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С