diff --git a/src/cf/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Ext/Template.xml b/src/cf/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Ext/Template.xml index 0aabaaf2b..fb075428d 100644 --- a/src/cf/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Ext/Template.xml +++ b/src/cf/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Ext/Template.xml @@ -2982,9 +2982,9 @@ Day 1 true - 2016-12-13T19:00:00 - 2016-12-22T19:59:59 - 2016-12-13T19:00:00 + 2016-12-18T09:00:00 + 2016-12-27T09:59:59 + 2016-12-18T09:00:00 Gradient 3 Day diff --git a/src/scripts/.vscode/tasks.json b/src/scripts/.vscode/tasks.json new file mode 100644 index 000000000..3b148a41d --- /dev/null +++ b/src/scripts/.vscode/tasks.json @@ -0,0 +1,65 @@ +{ + "version": "0.1.0", + "command": "oscript", + "isShellCommand": true, + "showOutput": "silent", + "args": [ + "-encoding=utf-8" + ], + "tasks": [ + { + "taskName": "OneScript: compile", + "args": [ + "-compile", + "${file}" + ], + "echoCommand": true, + "showOutput": "always", + "suppressTaskName": true, + "isBuildCommand": false + }, + { + "taskName": "OneScript: check", + "args": [ + "-check", + "${file}" + ], + "echoCommand": true, + "showOutput": "always", + "suppressTaskName": true, + "isBuildCommand": false + }, + { + "taskName": "OneScript: make", + "args": [ + "-make", + "${file}", + "${fileBasename}.exe" + ], + "echoCommand": true, + "showOutput": "always", + "suppressTaskName": true, + "isBuildCommand": false + }, + { + "taskName": "OneScript: run", + "args": [ + "${file}", + "1.0.1.012" + ], + "echoCommand": true, + "showOutput": "always", + "suppressTaskName": true, + "isBuildCommand": true, + "problemMatcher": { + "fileLocation": "absolute", + "pattern": { + "regexp": "^{Модуль\\s+(.*)\\s\\/\\s.*:\\s+(\\d+)\\s+\\/\\s+(.*)}$", + "file": 1, + "location": 2, + "message": 3 + } + } + } + ] +} \ No newline at end of file diff --git a/src/scripts/CreateRelease.os b/src/scripts/CreateRelease.os new file mode 100644 index 000000000..9376422e4 --- /dev/null +++ b/src/scripts/CreateRelease.os @@ -0,0 +1,56 @@ +#Использовать v8runner +#Использовать logos + +Перем Лог; +Перем Конфигуратор; +Перем НоваяВерсия; + +Процедура Инициализация() + Лог.УстановитьУровень(УровниЛога.Отладка); + + Конфигуратор = Новый УправлениеКонфигуратором(); + Конфигуратор.УстановитьКонтекст("/FD:\Cloud\Dev\Tasks\Base","Иванов Антон Борисович", ""); + //Конфигуратор.ВыгрузитьКонфигурациюВФайлы("d:\Cloud\Dev\GitRep\Tasks\src\cf\") + + //Версия = "1.0.1.012"; + НоваяВерсия = АргументыКоманднойСтроки[0]; + + СоздатьФайлыПоставкиДляРелиза(); + + //СоздатьФайлыКомплектаДляРелиза(); + +Конецпроцедуры + +Процедура СоздатьФайлыКомплектаДляРелиза() + КаталогСозданияФайловКомплектовПоставки = "d:\Cloud\Dev\Tasks\_Rel\distribute\"+НоваяВерсия+"\"; + + ИмяФайлаОписанияКомплектаПоставки = "d:\Cloud\Dev\Tasks\_Rel\releases\ОписаниеПоставки.edf"; + Лог.Отладка("ИмяФайлаОписанияКомплектаПоставки "+ ИмяФайлаОписанияКомплектаПоставки); + Конфигуратор.СоздатьФайлыКомплекта(КаталогСозданияФайловКомплектовПоставки,ИмяФайлаОписанияКомплектаПоставки); +КонецПроцедуры + +Процедура СоздатьФайлыПоставкиДляРелиза() + КаталогРелизов = "d:\Cloud\Dev\Tasks\_Rel\releases\"; + ПутьФайлаПолнойПоставки = КаталогРелизов + ""+НоваяВерсия+"\1Cv8.cf"; + ПутьФайлаПоставкиОбновления = КаталогРелизов + ""+НоваяВерсия+"\1Cv8.cfu"; + //Сообщить("ПутьФайлаПолнойПоставки "+ ПутьФайлаПолнойПоставки); + //Сообщить("ПутьФайлаПоставкиОбновления "+ ПутьФайлаПоставкиОбновления); + + МассивДистрибутивовДляОбновления = Новый Массив(); + НайденныеФайлы = НайтиФайлы(КаталогРелизов,"*"); + Для каждого пФайл Из НайденныеФайлы Цикл + Если пФайл.ЭтоКаталог() + И пФайл.Имя <> НоваяВерсия Тогда + ПутьДистрибутиваДляОбновления = пФайл.ПолноеИмя + "\1Cv8.cf"; + МассивДистрибутивовДляОбновления.Добавить(ПутьДистрибутиваДляОбновления); + Лог.Отладка("ПутьДистрибутиваДляОбновления "+ ПутьДистрибутиваДляОбновления); + КонецЕсли; + КонецЦикла; + + Конфигуратор.СоздатьФайлыПоставки(ПутьФайлаПолнойПоставки,ПутьФайлаПоставкиОбновления,МассивДистрибутивовДляОбновления); +КонецПроцедуры + +////////////////////////////////////////////////////////////////////////////////////// +// Инициализация +Лог = Логирование.ПолучитьЛог("СоздатьРелиз"); +Инициализация(); \ No newline at end of file diff --git a/src/scripts/distr_build.os b/src/scripts/distr_build.os new file mode 100644 index 000000000..7281783c6 --- /dev/null +++ b/src/scripts/distr_build.os @@ -0,0 +1,255 @@ +////////////////////////////////////////////////////////////////////// +// Демонстрационный скрипт создания дистрибутива +// Copyright: EvilBeaver 2014 +// +// Выполняет следующие шаги: +// 1. Получает из Хранилища крайнюю версию конфигурации +// 2. Создает на ее основе файл "конфигурации поставщика" +// 3. Собирает дистрибутив, включающий в себя конфигурацию поставщика +// +// Во время работы сценарий использует специальный "каталог сборки" (BuildArea) в котором +// накапливает временные файлы и сохраняет финальный результат. +// +// В качестве входных параметров используются: +// 1. Путь к хранилищу конфигурации +// 2. Логин/Пароль доступа в хранилище в виде строки Пользователь[:Пароль] +// (если пароля нет, то текст в квадратных скобках можно опустить) +// 3. Путь к файлу настройки дистрибутива (*.edf). Файл создается в Конфигураторе +// в меню Конфигурация\Поставка конфигурации\Комплект поставки. +// О том, как его создать см. документацию 1С:Предприятия 8 +// +// Путь к платформе и каталог сборки жестко прописаны в процедуре ЗадатьНачальныеНастройки +// +// DISCLAIMER: +// Этот скрипт является примером использования OneScript и не может быть использован в реальных бизнес-решениях. +// Скрипт поставляется "как есть" и вы используете его на свой страх и риск. +// Вы также несете ответственность за любые желательные и нежелательные последствия его применения. + +Перем мПараметрыДоступаКБазе; +Перем мПараметрыДоступаКХранилищу; +Перем мПутьКПлатформе; +Перем мКаталогСборки; + +Функция СкопироватьМассив(Источник) + + НовыйМассив = Новый Массив; + Для Каждого Элемент Из Источник Цикл + НовыйМассив.Добавить(Элемент); + КонецЦикла; + + Возврат НовыйМассив; + +КонецФункции + +Функция ЗапуститьИПодождать(Параметры) + + СтрокаЗапуска = ""; + Для Каждого Параметр Из Параметры Цикл + + СтрокаЗапуска = СтрокаЗапуска + " " + Параметр; + + КонецЦикла; + + КодВозврата = 0; + ЗапуститьПриложение(мПутьКПлатформе + СтрокаЗапуска, , Истина, КодВозврата); + + Возврат КодВозврата; + +КонецФункции + +Функция ФайлИнформации() + + Возврат мКаталогСборки + "\log.txt"; + +КонецФункции + +Функция ПутьКВременнойБазе() + Возврат мКаталогСборки + "\TempDB"; +КонецФункции + +Процедура ВывестиФайлИнформации() + + Файл = Новый Файл(ФайлИнформации()); + Если Файл.Существует() Тогда + Чтение = Новый ЧтениеТекста(Файл.ПолноеИмя); + Сообщение = Чтение.Прочитать(); + Сообщить(Сообщение); + Чтение.Закрыть(); + Иначе + Сообщить("Информации об ошибке нет"); + КонецЕсли; + +КонецПроцедуры + +Функция ПараметрыВременнойБазы() + + ПараметрыВремБазы = СкопироватьМассив(мПараметрыДоступаКБазе); + ПараметрыВремБазы[1] = "/F""" + ПутьКВременнойБазе() + """"; + ПараметрыВремБазы.Удалить(2); + + Возврат ПараметрыВремБазы; + +КонецФункции + +Процедура ПолучитьВерсиюИзХранилища() + + КаталогСборки = мКаталогСборки; + + Файл = Новый Файл(КаталогСборки); + Если НЕ Файл.Существует() Тогда + СоздатьКаталог(КаталогСборки); + ИначеЕсли Не Файл.ЭтоКаталог() Тогда + ВызватьИсключение "Каталог сборки не является каталогом"; + КонецЕсли; + + ПараметрыПолучитьВерсию = СкопироватьМассив(мПараметрыДоступаКХранилищу); + ПараметрыПолучитьВерсию.Добавить("/ConfigurationRepositoryDumpCfg """+КаталогСборки+"\source.cf"""); + + Сообщить("Получение версии из хранилища"); + КодВозврата = ЗапуститьИПодождать(ПараметрыПолучитьВерсию); + Если КодВозврата = 0 Тогда + Сообщить("Версия получена"); + Иначе + Сообщить("Не удалось получить версию из хранилища:"); + ВывестиФайлИнформации(); + ЗавершитьРаботу(1); + КонецЕсли; + +КонецПроцедуры + +Процедура СоздатьВременнуюБазу() + + КаталогВременнойБазы = ПутьКВременнойБазе(); + Файл = Новый Файл(КаталогВременнойБазы); + Если Не Файл.Существует() Тогда + СоздатьКаталог(КаталогВременнойБазы); + ИначеЕсли Файл.ЭтоКаталог() Тогда + УдалитьФайлы(КаталогВременнойБазы, "*.*"); + Иначе + ВызватьИсключение "Не удалось создать каталог временной базы TempDB"; + КонецЕсли; + + ПараметрыЗапуска = Новый Массив; + ПараметрыЗапуска.Добавить("CREATEINFOBASE"); + ПараметрыЗапуска.Добавить("File="""+КаталогВременнойБазы+""";"); + ПараметрыЗапуска.Добавить("/UseTemplate""" + мКаталогСборки + "\source.cf" + """"); + ПараметрыЗапуска.Добавить("/Out""" + ФайлИнформации() + """"); + + Сообщить("Создание временной базы"); + КодВозврата = ЗапуститьИПодождать(ПараметрыЗапуска); + Если КодВозврата = 0 Тогда + Сообщить("Временная база создана"); + Иначе + Сообщить("Не удалось создать временную базу:"); + ВывестиФайлИнформации(); + ЗавершитьРаботу(1); + КонецЕсли; + +КонецПроцедуры + +Процедура СоздатьФайлПоставки() + + ПараметрыВремБазы = ПараметрыВременнойБазы(); + + ПараметрыВремБазы.Добавить("/CreateDistributionFiles -cffile """ + мКаталогСборки + "\1cv8.cf" + """"); + + Сообщить("Создание файла поставки"); + Если ЗапуститьИПодождать(ПараметрыВремБазы) = 0 Тогда + Сообщить("Файл поставки создан"); + Иначе + Сообщить("Не удалось создать файл поставки:"); + ВывестиФайлИнформации(); + ЗавершитьРаботу(1); + КонецЕсли; + +КонецПроцедуры + +Процедура СоздатьДистрибутив() + + КаталогСборки = мКаталогСборки + "\setup"; + Файл = Новый Файл(КаталогСборки); + Если Не Файл.Существует() Тогда + СоздатьКаталог(КаталогСборки); + ИначеЕсли Файл.ЭтоКаталог() Тогда + УдалитьФайлы(КаталогСборки, "*.*"); + Иначе + ВызватьИсключение "Не удалось создать каталог сборки"; + КонецЕсли; + + // Сюда должен быть передан путь к файлу настройки дистрибутива, например: + // "С:\Users\Андрей\Documents\install.edf"; + + ФайлПараметров = АргументыКоманднойСтроки[2]; + + ПараметрыВремБазы = ПараметрыВременнойБазы(); + ПараметрыВремБазы.Добавить("/CreateDistributive """ + КаталогСборки + """"); + ПараметрыВремБазы.Добавить("-File """ + ФайлПараметров + """"); + ПараметрыВремБазы.Добавить("-MakeSetup"); + + Сообщить("Создание дистрибутива"); + Если ЗапуститьИПодождать(ПараметрыВремБазы) = 0 Тогда + Сообщить("Дистрибутив создан"); + Иначе + Сообщить("Не удалось создать дистрибутив:"); + ВывестиФайлИнформации(); + ЗавершитьРаботу(1); + КонецЕсли; + +КонецПроцедуры + +Функция ОпределитьПараметрыВходаВХранилище(Знач СтрокаПараметров) + + ПараметрыВхода = Новый Структура; + + ПозицияРазделителя = Найти(СтрокаПараметров,":"); + + Если ПозицияРазделителя > 0 Тогда + ПараметрыВхода.Вставить("Пользователь", Лев(СтрокаПараметров, ПозицияРазделителя-1)); + ПараметрыВхода.Вставить("Пароль", Сред(СтрокаПараметров, ПозицияРазделителя+1)); + Иначе + ПараметрыВхода.Вставить("Пользователь", СтрокаПараметров); + ПараметрыВхода.Вставить("Пароль", ""); + КонецЕсли; + + Возврат ПараметрыВхода; + +КонецФункции + +Процедура ЗадатьНачальныеНастройки() + + Если АргументыКоманднойСтроки.Количество() <> 3 Тогда + Сообщить("Не заданы аргументы командной строки"); + Сообщить("Требуется задать:"); + Сообщить("<КаталогХранилища> <ПользовательХранилища[:ПарольХранилища]> <ПараметрыДистрибутива>"); + ЗавершитьРаботу(1); + КонецЕсли; + + мПутьКПлатформе = """C:\Program Files (x86)\1cv82\8.2.19.102\bin\1cv8.exe"""; + мКаталогСборки = "c:\Users\Андрей\Documents\1C\BuildArea"; + + КаталогИБ = ПутьКВременнойБазе(); + Хранилище = АргументыКоманднойСтроки[0]; + ВходВХранилище = ОпределитьПараметрыВходаВХранилище(АргументыКоманднойСтроки[1]); + + мПараметрыДоступаКБазе = Новый Массив; + мПараметрыДоступаКБазе.Добавить("DESIGNER"); + мПараметрыДоступаКБазе.Добавить("/F""" + КаталогИБ + """"); + мПараметрыДоступаКБазе.Добавить("/Out""" + ФайлИнформации() + """"); + + мПараметрыДоступаКХранилищу = СкопироватьМассив(мПараметрыДоступаКБазе); + мПараметрыДоступаКХранилищу.Добавить("/ConfigurationRepositoryF """+Хранилище+""""); + мПараметрыДоступаКХранилищу.Добавить("/ConfigurationRepositoryN """ + ВходВХранилище.Пользователь + """"); + Если Не ПустаяСтрока(ВходВХранилище.Пароль) Тогда + мПараметрыДоступаКХранилищу.Добавить("/ConfigurationRepositoryP """ + ВходВХранилище.Пароль + """"); + КонецЕсли; + мПараметрыДоступаКХранилищу.Добавить("/DisableStartupDialogs /DisableStartupMessages"); + +КонецПроцедуры + +ЗадатьНачальныеНастройки(); +СоздатьВременнуюБазу(); +ПолучитьВерсиюИзХранилища(); +СоздатьФайлПоставки(); +СоздатьДистрибутив(); +Сообщить("Работа завершена"); + diff --git a/src/scripts/nqepbsnk.si1.txt b/src/scripts/nqepbsnk.si1.txt new file mode 100644 index 000000000..2304ca0d3 --- /dev/null +++ b/src/scripts/nqepbsnk.si1.txt @@ -0,0 +1 @@ +