|
10 | 10 | Перем ИменаИсключений; |
11 | 11 | Перем ТекущийПорядок; |
12 | 12 |
|
| 13 | +Перем ЭтоПравилаРегистрации; |
| 14 | + |
13 | 15 | //Служебные переменные |
14 | 16 | Перем НаименованиеКаталогаСобытий; |
15 | 17 |
|
|
80 | 82 | МассивОбработчиков.Добавить("ПослеВыгрузки"); |
81 | 83 | МассивОбработчиков.Добавить("ПослеВыгрузкиОбъектаВФайл"); |
82 | 84 | МассивОбработчиков.Добавить("ПослеЗагрузки"); |
83 | | - |
| 85 | + МассивОбработчиков.Добавить("ПослеВыгрузкиВФайл"); |
| 86 | + МассивОбработчиков.Добавить("ПередЗагрузкой"); |
| 87 | + МассивОбработчиков.Добавить("ПриЗагрузке"); |
| 88 | + |
84 | 89 | МассивОбработчиков.Добавить("ПередЗагрузкойОбъекта"); |
85 | 90 | МассивОбработчиков.Добавить("ПриЗагрузкеОбъекта"); |
86 | 91 | МассивОбработчиков.Добавить("ПослеЗагрузкиОбъекта"); |
87 | 92 | МассивОбработчиков.Добавить("ПоследовательностьПолейПоиска"); |
88 | 93 |
|
89 | 94 | //ПравилаРегистрацииОбъектов |
90 | | - МассивОбработчиков.Добавить("ПередОбработкойПравила"); |
91 | | - МассивОбработчиков.Добавить("ПриОбработкеПравила"); |
92 | | - МассивОбработчиков.Добавить("ПриОбработкеДополнительныйПравила"); |
93 | | - МассивОбработчиков.Добавить("ПослеОбработкиПравила"); |
| 95 | + МассивОбработчиков.Добавить("ПередОбработкой"); |
| 96 | + МассивОбработчиков.Добавить("ПриОбработке"); |
| 97 | + МассивОбработчиков.Добавить("ПриОбработкеДополнительный"); |
| 98 | + МассивОбработчиков.Добавить("ПослеОбработки"); |
94 | 99 |
|
95 | 100 | //ПравилаОчисткиОбъектов |
96 | 101 | МассивОбработчиков.Добавить("ПередОбработкойПравила"); |
|
156 | 161 | УдалитьФайлы(КаталогИсходныхПравил); |
157 | 162 | Возврат; |
158 | 163 | КонецЕсли; |
| 164 | + |
| 165 | + //ЭтоПравилаРегистрации = ИмяКорневогоУзла = "ПравилаРегистрации"; |
159 | 166 |
|
160 | 167 | КорневойУзел.Каталог = КаталогИсходныхПравил; |
161 | 168 |
|
|
194 | 201 | Или ИмяЭлементаСтроки = "ПравилаВыгрузкиДанных" |
195 | 202 | Или ИмяЭлементаСтроки = "ПравилаОчисткиДанных" |
196 | 203 | Или ИмяЭлементаСтроки = "Алгоритмы" |
197 | | - Или ИмяЭлементаСтроки = "Запросы" Тогда |
| 204 | + Или ИмяЭлементаСтроки = "Запросы" |
| 205 | + Или ИмяЭлементаСтроки = "СоставПланаОбмена" |
| 206 | + Или ИмяЭлементаСтроки = "ПравилаРегистрацииОбъектов" |
| 207 | + Или ИмяЭлементаСтроки = "ОтборПоСвойствамПланаОбмена" |
| 208 | + Или ИмяЭлементаСтроки = "ОтборПоСвойствамОбъекта" |
| 209 | + Или ИмяЭлементаСтроки = "ТаблицаСвойствОбъекта" |
| 210 | + Или ИмяЭлементаСтроки = "ТаблицаСвойствПланаОбмена" Тогда |
198 | 211 |
|
199 | 212 | ИмяКаталогаСтроки = ОбъединитьПути(ТекущийКаталог, ИмяЭлементаСтроки); |
200 | | - СоздатьКаталог(ИмяКаталогаСтроки); |
201 | | - |
202 | | - ТекущаяСтрока.Каталог = ИмяКаталогаСтроки; |
203 | | - |
| 213 | + СоздатьКаталог(ИмяКаталогаСтроки); |
| 214 | + ТекущаяСтрока.Каталог = ИмяКаталогаСтроки; |
204 | 215 | РекурсивноРазобратьДеревоПравил(ТекущаяСтрока, ИмяЭлементаСтроки, ИмяКаталогаСтроки); |
205 | 216 |
|
206 | 217 | ИначеЕсли ИменаСобытийКонвертации.Найти(ИмяЭлементаСтроки) <> Неопределено Тогда |
|
232 | 243 | Или ИмяЭлементаСтроки = "Алгоритм" |
233 | 244 | Или ИмяЭлементаСтроки = "Значение" |
234 | 245 | Или ИмяЭлементаСтроки = "Свойство" |
235 | | - Или ИмяЭлементаСтроки = "Параметр" Или ИмяЭлементаСтроки = "Обработка" Тогда |
| 246 | + Или ИмяЭлементаСтроки = "Параметр" |
| 247 | + Или ИмяЭлементаСтроки = "Обработка" |
| 248 | + Или ИмяЭлементаСтроки = "ЭлементОтбора" Или ИмяЭлементаСтроки = "Элемент" Тогда |
236 | 249 |
|
237 | 250 | МассивРеквизитовТекущегоУзла = Новый Массив; |
238 | 251 |
|
|
253 | 266 | ЗаписатьСобытиеПравилВФайл(ТекущаяСтрока, "ДвоичныеДанные", ТекущаяСтрока.Каталог, Неопределено); |
254 | 267 | КонецЕсли; |
255 | 268 | КонецЕсли; |
256 | | - |
257 | 269 | Иначе |
258 | 270 |
|
259 | 271 | Если МассивРеквизитовУзла = Неопределено Тогда |
|
371 | 383 |
|
372 | 384 | Функция ПрочитатьXMLВДеревоЗначений(Путь) |
373 | 385 |
|
| 386 | + ЭтоПравилаРегистрации = Ложь; |
374 | 387 | Дерево = ПолучитьСтруктуруДерева(); |
375 | 388 | ЧтениеXML = Новый ЧтениеXML; |
376 | 389 | ЧтениеXML.ОткрытьФайл(Путь); |
|
392 | 405 | Пока ЧтениеXML.Прочитать() Цикл |
393 | 406 | Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда |
394 | 407 |
|
| 408 | + Если Не ЭтоПравилаРегистрации И ЧтениеXML.Имя = "ПравилаРегистрации" Тогда |
| 409 | + ЭтоПравилаРегистрации = Истина; |
| 410 | + КонецЕсли; |
| 411 | + |
395 | 412 | НоваяСтрока = ТекущаяСтрокаДерева.Добавить(); |
396 | 413 | НоваяСтрока.Имя = ЧтениеXML.Имя; |
397 | 414 | НоваяСтрока.ТипСтроки = "Элемент"; |
|
415 | 432 |
|
416 | 433 | ТекущаяСтрокаДерева.Родитель.Значение = СокрЛП(ЧтениеXML.Значение); |
417 | 434 |
|
418 | | - Если ТекущаяСтрокаДерева.Родитель.Имя = "Код" Или ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя" Тогда |
| 435 | + Если (ТекущаяСтрокаДерева.Родитель.Имя = "Код" Или ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя") И Не ЭтоПравилаРегистрации Тогда |
| 436 | + ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); |
| 437 | + ИначеЕсли ЭтоПравилаРегистрации И (ТекущаяСтрокаДерева.Родитель.Имя = "Номер" Или ТекущаяСтрокаДерева.Родитель.Имя = "Имя" Или ТекущаяСтрокаДерева.Родитель.Имя = "Наименование") Тогда |
| 438 | + ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); |
| 439 | + ИначеЕсли ЭтоПравилаРегистрации И ТекущаяСтрокаДерева.Родитель.Имя = "Тип" И ТекущаяСтрокаДерева.Родитель.Родитель.Имя = "Элемент" Тогда |
419 | 440 | ТекущаяСтрокаДерева.Родитель.Родитель.Идентификатор = СокрЛП(ЧтениеXML.Значение); |
420 | 441 | ИначеЕсли ТекущаяСтрокаДерева.Родитель.Имя = "Порядок" Тогда |
421 | | - ТекущаяСтрокаДерева.Родитель.Родитель.Порядок = Число(СокрЛП(ЧтениеXML.Значение)); |
| 442 | + ТекущаяСтрокаДерева.Родитель.Родитель.Порядок = Число(СокрЛП(ЧтениеXML.Значение)); |
422 | 443 | КонецЕсли; |
423 | 444 |
|
424 | 445 | ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда |
|
0 commit comments