From d4433c3914395be5de1147bd1ede71f4987abeff Mon Sep 17 00:00:00 2001 From: Oleg Tymko Date: Thu, 31 May 2018 23:15:17 +0700 Subject: [PATCH 1/2] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D1=87=D0=B8=D0=BA?= =?UTF-8?q?=D0=BE=D0=B2=20=D0=9F=D0=9A=D0=9E=20=D0=9F=D1=80=D0=B8=D0=97?= =?UTF-8?q?=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B5=20=D0=B8=20=D1=82.?= =?UTF-8?q?=D0=BF.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\260\320\236\320\261\320\274\320\265\320\275\320\260.os" | 5 +++++ 1 file changed, 5 insertions(+) diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" index 2b08410..84147aa 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" @@ -80,7 +80,12 @@ МассивОбработчиков.Добавить("ПослеВыгрузки"); МассивОбработчиков.Добавить("ПослеВыгрузкиОбъектаВФайл"); МассивОбработчиков.Добавить("ПослеЗагрузки"); + МассивОбработчиков.Добавить("ПослеВыгрузкиВФайл"); + МассивОбработчиков.Добавить("ПередЗагрузкой"); + МассивОбработчиков.Добавить("ПриЗагрузке"); + МассивОбработчиков.Добавить("ПередЗагрузкой"); + МассивОбработчиков.Добавить("ПередЗагрузкойОбъекта"); МассивОбработчиков.Добавить("ПриЗагрузкеОбъекта"); МассивОбработчиков.Добавить("ПослеЗагрузкиОбъекта"); From 97c55ec94c7280bc93d53057c75c3bded67e7915 Mon Sep 17 00:00:00 2001 From: Tymko Oleg Date: Fri, 1 Jun 2018 10:07:45 +0700 Subject: [PATCH 2/2] =?UTF-8?q?=D0=A0=D0=B0=D0=B7=D0=B1=D0=BE=D1=80=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=80=D0=B5=D0=B3=D0=B8?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=B0=D1=86=D0=B8=D0=B8.=20=D0=9F=D0=BE?= =?UTF-8?q?=D0=B2=D1=8B=D1=88=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B2=D0=B5=D1=80?= =?UTF-8?q?=D1=81=D0=B8=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Добавлена возможность разбирать правила регистрации на файлы и каталоги. Повышена версия библиотеки до 0.1.1. --- packagedef | 2 +- ...20\261\320\274\320\265\320\275\320\260.os" | 46 +++++++++++++------ 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/packagedef b/packagedef index 8d6666f..c5dc811 100644 --- a/packagedef +++ b/packagedef @@ -3,7 +3,7 @@ ИмяПродукта = НРег(ПараметрыСистемы_ЛокальнаяВерсия.ИмяПродукта()); Описание.Имя("gitrules") - .Версия("0.1.0") + .Версия("0.1.2") .Автор("otymko") .АдресАвтора("olegtymko@yandex.ru") .Описание("Версионирование правил обмена 1С с помощью git") diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" index 84147aa..c6ea85b 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\240\320\260\320\267\320\276\320\261\321\200\320\260\321\202\321\214\320\237\321\200\320\260\320\262\320\270\320\273\320\260\320\236\320\261\320\274\320\265\320\275\320\260.os" @@ -10,6 +10,8 @@ Перем ИменаИсключений; Перем ТекущийПорядок; +Перем ЭтоПравилаРегистрации; + //Служебные переменные Перем НаименованиеКаталогаСобытий; @@ -81,10 +83,8 @@ МассивОбработчиков.Добавить("ПослеВыгрузкиОбъектаВФайл"); МассивОбработчиков.Добавить("ПослеЗагрузки"); МассивОбработчиков.Добавить("ПослеВыгрузкиВФайл"); - МассивОбработчиков.Добавить("ПередЗагрузкой"); МассивОбработчиков.Добавить("ПриЗагрузке"); - МассивОбработчиков.Добавить("ПередЗагрузкой"); МассивОбработчиков.Добавить("ПередЗагрузкойОбъекта"); МассивОбработчиков.Добавить("ПриЗагрузкеОбъекта"); @@ -92,10 +92,10 @@ МассивОбработчиков.Добавить("ПоследовательностьПолейПоиска"); //ПравилаРегистрацииОбъектов - МассивОбработчиков.Добавить("ПередОбработкойПравила"); - МассивОбработчиков.Добавить("ПриОбработкеПравила"); - МассивОбработчиков.Добавить("ПриОбработкеДополнительныйПравила"); - МассивОбработчиков.Добавить("ПослеОбработкиПравила"); + МассивОбработчиков.Добавить("ПередОбработкой"); + МассивОбработчиков.Добавить("ПриОбработке"); + МассивОбработчиков.Добавить("ПриОбработкеДополнительный"); + МассивОбработчиков.Добавить("ПослеОбработки"); //ПравилаОчисткиОбъектов МассивОбработчиков.Добавить("ПередОбработкойПравила"); @@ -161,6 +161,8 @@ УдалитьФайлы(КаталогИсходныхПравил); Возврат; КонецЕсли; + + //ЭтоПравилаРегистрации = ИмяКорневогоУзла = "ПравилаРегистрации"; КорневойУзел.Каталог = КаталогИсходныхПравил; @@ -199,13 +201,17 @@ Или ИмяЭлементаСтроки = "ПравилаВыгрузкиДанных" Или ИмяЭлементаСтроки = "ПравилаОчисткиДанных" Или ИмяЭлементаСтроки = "Алгоритмы" - Или ИмяЭлементаСтроки = "Запросы" Тогда + Или ИмяЭлементаСтроки = "Запросы" + Или ИмяЭлементаСтроки = "СоставПланаОбмена" + Или ИмяЭлементаСтроки = "ПравилаРегистрацииОбъектов" + Или ИмяЭлементаСтроки = "ОтборПоСвойствамПланаОбмена" + Или ИмяЭлементаСтроки = "ОтборПоСвойствамОбъекта" + Или ИмяЭлементаСтроки = "ТаблицаСвойствОбъекта" + Или ИмяЭлементаСтроки = "ТаблицаСвойствПланаОбмена" Тогда ИмяКаталогаСтроки = ОбъединитьПути(ТекущийКаталог, ИмяЭлементаСтроки); - СоздатьКаталог(ИмяКаталогаСтроки); - - ТекущаяСтрока.Каталог = ИмяКаталогаСтроки; - + СоздатьКаталог(ИмяКаталогаСтроки); + ТекущаяСтрока.Каталог = ИмяКаталогаСтроки; РекурсивноРазобратьДеревоПравил(ТекущаяСтрока, ИмяЭлементаСтроки, ИмяКаталогаСтроки); ИначеЕсли ИменаСобытийКонвертации.Найти(ИмяЭлементаСтроки) <> Неопределено Тогда @@ -237,7 +243,9 @@ Или ИмяЭлементаСтроки = "Алгоритм" Или ИмяЭлементаСтроки = "Значение" Или ИмяЭлементаСтроки = "Свойство" - Или ИмяЭлементаСтроки = "Параметр" Или ИмяЭлементаСтроки = "Обработка" Тогда + Или ИмяЭлементаСтроки = "Параметр" + Или ИмяЭлементаСтроки = "Обработка" + Или ИмяЭлементаСтроки = "ЭлементОтбора" Или ИмяЭлементаСтроки = "Элемент" Тогда МассивРеквизитовТекущегоУзла = Новый Массив; @@ -258,7 +266,6 @@ ЗаписатьСобытиеПравилВФайл(ТекущаяСтрока, "ДвоичныеДанные", ТекущаяСтрока.Каталог, Неопределено); КонецЕсли; КонецЕсли; - Иначе Если МассивРеквизитовУзла = Неопределено Тогда @@ -376,6 +383,7 @@ Функция ПрочитатьXMLВДеревоЗначений(Путь) + ЭтоПравилаРегистрации = Ложь; Дерево = ПолучитьСтруктуруДерева(); ЧтениеXML = Новый ЧтениеXML; ЧтениеXML.ОткрытьФайл(Путь); @@ -397,6 +405,10 @@ Пока ЧтениеXML.Прочитать() Цикл Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда + Если Не ЭтоПравилаРегистрации И ЧтениеXML.Имя = "ПравилаРегистрации" Тогда + ЭтоПравилаРегистрации = Истина; + КонецЕсли; + НоваяСтрока = ТекущаяСтрокаДерева.Добавить(); НоваяСтрока.Имя = ЧтениеXML.Имя; НоваяСтрока.ТипСтроки = "Элемент"; @@ -420,10 +432,14 @@ ТекущаяСтрокаДерева.Родитель.Значение = СокрЛП(ЧтениеXML.Значение); - Если ТекущаяСтрокаДерева.Родитель.Имя = "Код" Или ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя" Тогда + Если (ТекущаяСтрокаДерева.Родитель.Имя = "Код" Или ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя") И Не ЭтоПравилаРегистрации Тогда + ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); + ИначеЕсли ЭтоПравилаРегистрации И (ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя" Или ТекущаяСтрокаДерева.Родитель.Имя = "Наименование") Тогда + ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); + ИначеЕсли ЭтоПравилаРегистрации И ТекущаяСтрокаДерева.Родитель.Имя = "Тип" И ТекущаяСтрокаДерева.Родитель.Родитель.Имя = "Элемент" Тогда ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); ИначеЕсли ТекущаяСтрокаДерева.Родитель.Имя = "Порядок" Тогда - ТекущаяСтрокаДерева.Родитель.Родитель.Порядок = Число(СокрЛП(ЧтениеXML.Значение)); + ТекущаяСтрокаДерева.Родитель.Родитель.Порядок = Число(СокрЛП(ЧтениеXML.Значение)); КонецЕсли; ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда