Продвинутый курс. Домашнее задание №5
Пятое задание по 0-му блоку продвинутого курса.
Для выполнения рекомендуется изучить следующие главы 0-го курса.
Глава 23. Средства обмена данными.
Глава 24. Распределенные информационные базы.
Глава 25. Хранилище настроек.
Глава 26. Механизмы обеспечения целостности данных.
К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте — залогиньтесь. Если Вы оплачивали курс, у Вас активирован токен доступа, Вы залогинены, но Вы видите эту запись — напишите нам на e-mail поддержки.
Моя концепция отличалась от предыдущих тем, что я не делал авто регистрацию для документов, а использовал метод ЗарегистрироватьИзменения. Регистрировал, если мы не находимся в филиальном узле. Также для выгрузки наборов регистров я использовал этот подход – перед записью регистрирую набор записей анализируя их регистратор. Как написать обработку подглядел в типовых, там у этих строк кода уже борода выросла :)
1. на момент просмотра (наверно уже 2 года назад) я “закрыл” все свои пробелы по теме РИБа и RLS, до сих пор ни в 1 ЖКК я не увидел аналогичный материал.
2. ТЖ! будь он не ладен… на практике пришлось настраивать его 1 раз за 3 года, причем его логи мне так и не помогли.
3. никакую :)
Домашнее задание сделал
Задание сделал, но только после просмотра решения.
Задание выполнено. Повторила решение Евгения. До этого сама пыталась, но были проблемы при загрузке от подчиненного узла главному, не получалось одностороннего обмена.
Очень много нового материала и материала, о котором что-то слышала и читала, но на практике не работала.
Очень интересны были темы про РИБ, взаимодействие с др приложениями. И про RLS
Очень жду отдельного курса по Конвертации
1. Настройка RLS, логирование, Чтение/ЗаписьXML
2. Применение разных способов обмена через XML. До конца не прочувствовал когда что использовать.
3. Хотелось бы разобрать побольше сложных примеров по RLS, а также примеров по реальному применению ТЖ
Задание выполнил, не получилось сделать блокирование документа после регистрации в подчиненном узле. В документах создал табличную часть в нее заносятся элементы справочника ВидыБаз, в плане обмена реквизит ВидыБаз.
После изучения нулевого блока:
1) Особо интересны были: RLS – ранее казалось что это что-то очень сложное, ТЖ, РИБ
2) Наибольшие трудости возникали при работе с ТЖ.
3) Хотелось бы рассмотреть приемы анализа производительности при использовании RLS.
Домашнее задание выполнено.
Подготовительная работа:
Создал план обмена с признаком РИБ. Создал внешнюю обработку «ОбменРИБ» с возможностью выгрузить изменения, загрузить изменения, зарегистрировать изменения, удалить регистрацию изменения и установить главный узел.
Создал регламентированную базу через интерфейсные возможности по созданию начального образа, а базу ЗУП создал из конфигурации Центрального офиса, настроив план обмена и установив главный узел с помощью обработки. Тем самым получил пустую базу (ну в общем как учили)
Теперь пройдемся по пунктам специфики РИБ
1) Во все документы добавил реквизиты БП,ЗУП типа булево. Создал подписку на событие «Перед Записью» и «Перед удалением» у документов, и анализировав эти булевские реквизиты формировал набор узлов «ОбменДанными.Получатели». Хотел таким же образом обрабатывать и регистры через подписку на событие ОбработкуПроведения и движения документа…но ничего не получилось. Поэтому обработку регистров перенес в событии «ПриОтправкеДанныхПодчиненному», в которой выполнял очистку Набора записей, проверив Регистратор и флажки ( Кстати чем-то отличается очистка набора записей и установки параметра «ОтправкаЭлемента» в игнорирование с точки зрения отправки данных, ведь в обоих случаях они попадут в подч. базу?)
2) В подписке добавлена проверка на ГлавныйУзел, если он возвращает не Неопределено, то мы находимся в подч. Узле и следовательно чистим «ОбменДанными.Получатели». Аналогично в событии «ПриОтправкеДанныхГлавному»
3) Свойству формы «ТолькоПросмотр» присваивал истину, если таблица изменений была, по хотя бы одному из узлов. Это не касалос только новых документов и которые не относились ни к БУ, ни к ЗУП.
Обратная Связь:
1) Нового было много…да и в том с чем так часто сталкиваешься было разжевано до мельчайших деталей. Спасибо вам.
2) Затруднения в основном вызвали RLS и планы обмена, так как до этого с ними работал тока поверхностно
3) Как и многим, хотелось бы узнать про возможности Конвертации данных 2.0.
ДЗ выполнил.
По пунктам задания:
1. Во все документы и в план обмена добавлены реквизиты Рег и ЗП. Выгрузка документа в узел происходит только при соответствии установленных флажков. В узле плана обмена задается перечень выгружаемых в него документов (хранится в ТЧ). Проверка флажков и вхождение документа в перечень выгружаемых происходит в подписке перед записью документов.
2. Сделано в подписке перед записью документов с помощью:
Получатели = Источник.ОбменДанными.Получатели;
Получатели.Очистить();
Если ПланыОбмена.ГлавныйУзел() = Неопределено Тогда
// заполняем получателей и пр.
….
КонецЕсли;
3. При загрузке в главный узел по номеру принятого сообщения из зарегистрированных
изменений выбираются документы и дописываются, если их там нет, в регистр сведений ВыгруженныеДокументы. Для главного узла в подписке перед записью документов проверяется наличие документа в указанном регистре.
По пунктам касательно нулевого блока:
1. Все, что появилось в 8.2. Также ТЖ и РИБ, т. к. раньше с ними не работал. С РИБ оказалось все очень просто.
2. В настройке ТЖ. Так и не разобрался до конца.
3. Хотелось бы рассмотреть шаблоны RLS из типовых конфигураций, особенно те, в которых коррелированные подзапросы.
ДЗ №5 выполнил. Реализовал иначе, чем в решении. Регистрация необходимости выгрузки и факта возврата сделана через регистр сведений. Документ всегда возвращается в центральную базу, при возврате в центре записывается, что данные получены в подчиненной базе.
1. Наибольший интерес вызвали части по журналу регистрации, технологическому журналу и обмену (ХМЛ и РИБ), RLS (др. главы тоже были полезны).
2. Наибольшие затруднения вызвал технологический журнал, помогли ответы в ветке соответствующего задания.
3. Интересно было бы подробнее раскрыть вопросы анализа производительности (как искать причины замедления операций с б.д.).
3. Об этом говорим в 1-ом блоке.
ДЗ № 5 выполнил. Интересное задание, пришлось пару раз пересмотреть теорию и реализовать на практике. Стыдно признаться, но долго просидел в поисках ошибки – Получатели не хотели добавляться, пока не понял в чем дело (добавил в документ ТЧ и назвал ее по “ОбменДанными”). Также обработал ошибку, когда в ТЧ документа могут добавлять узел, соответствующий текущему. Был очень удивлен когда при создании первоначального образа обнаружил отсутствие синхронизации между узлами по УникальномуИдентификатору кроме главного узла. Получается, что в документах подчиненных баз в ТЧ битые ссылки….Думаю, что это не является критичным, т.к. маловероятно, что в реальных решения прийдется использовать ссылки на узлы плана обмена в качестве объектов обмена.
1. Новым и интересным стали главы о логировани и ТЖ, об XML и РИБ.
2. Наибольшие затруднения испытал при работе с XML и РИБ. Повторное обращение к теории и практические работы помогли преодолеть барьер :)
3. Хотелось бы более подробно рассмотреть различные приемы работы с RLS и описание параметров ТЖ.
>добавил в документ ТЧ и назвал ее по »ОбменДанными»
Сложная ошибка для поиска. Нужно обращать внимание на типы данных (смотреть отладчиком).
ДР № 5 сделала.
Задание выполнено. Пока выполняю задания опираясь на аналоги в видиокурсах + варианты предложенные другими. В завершении воспользовался решением данного задания.
Моя текущая деятельность никак не связанна с 1С, хотя и стараюсь по пол дня на работе заниматься, все равно очень сложно. Плохо что нет возможности на практики все это применить, а также сказываеться на обучении пробелы в знаниях по базовому курсу.
1. Для меня все новое. Оказалось что 1С не просто среда программирования со своим языком, но еще куча других технологий которые также нужно знать и изучать.
2. Проблемы возникли с 23 главой – Средства обмена данными. XML, планы обмена оказались для меня очень сложными. Очень много кода для их реализации. Повторные просмотры помогают немного навести порядок в голове, но без практики постоянной боюсь чтонедели через 2 все забуду, тем более впереди новые темы.
3. Очень интересуюсь темой связанной с анализом данных. Применяеться ли он разработчиками и насколько этому анализу можно доверять в плане расчетов.Тема очень перспективная и хотелось бы знать будет ли развиваться эта подсистема в дальнейщем или свернется за неннадобностью.
>Применяеться ли он разработчиками и насколько этому анализу можно доверять в плане расчетов.
В типовых конфигурациях вы не встретите применение этих объектов.
И не потому, что они не работают. А потому что еще не отлажен основной функционал по главным бизнес-процессам.
Возможно со временем в типовых будут средства анализа данными.
На текущий момент есть ряд отраслевых решений, которые используют эти механизмы.
Насколько можно доверять? На самом деле это вопрос статистики. Ведь эти объекты используют точные математические модели.
Ничего нового здесь разработчики не изобрели..
>Тема очень перспективная и хотелось бы знать будет ли развиваться эта подсистема в дальнейщем или свернется за неннадобностью.
Кажется, что будет развиваться. Как только пользователи к этому будут готовы..