Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Конвертация. Создать регистр сведений после загрузки

Конвертация. Создать регистр сведений после загрузки
Я
   Плехоть
 
01.11.18 - 08:56
Приветствую всех!
   Моя задача в конвертации 2.1 программно создать регистр сведений после загрузки объекта. При переносе данных Универсальным обменом все отрабатывает корректно, но когда код работает в синхронизации, регистр не создается.
Я делаю В ПКО справочника, в событии "После обработки":
        НаборЗаписей = РегистрыСведений.ПорядокОтраженияЗарплатыВБухУчете.СоздатьНаборЗаписей();
        НаборЗаписей.Отбор.СпособОтраженияЗарплатыВБухУчете.Установить(Объект.Ссылка);
        НоваяЗапись = НаборЗаписей.Добавить();
        НоваяЗапись.СпособОтраженияЗарплатыВБухУчете= Объект.Ссылка;
        НаборЗаписей.Записать();

Делал и через СоздатьМенеджерЗаписи(), но не помогло. 
Подскажите, плиз, как можно, всё-таки, создать РС после загрузки объекта справочника?
 
 
   Cool_Profi
 
1 - 01.11.18 - 08:59
Может, транзакция отваливается?
   Плехоть
 
2 - 01.11.18 - 09:02
Я пробовал записывать в реквизит перенесенного справочника созданный РС... Реквизит на стороне приемника не пустой.
   Cyberhawk
 
3 - 01.11.18 - 09:09
С таким подходом к терминологии далеко не уедешь
   Плехоть
 
4 - 01.11.18 - 09:12
что не так с терминологией? )
   Плехоть
 
5 - 01.11.18 - 09:19
Тему не дописал? Может так: "Конвертация. Создать регистр сведений после загрузки объекта справочника"
   Очевидно
 
6 - 01.11.18 - 09:23
Думаю речь об "Создать набор записей в РС после загрузки справочника". Прочитав название темы действительно выглядит странно ... "Создать регистр сведений при обмене".
   Плехоть
 
7 - 01.11.18 - 09:27
Извиняюсь, что не смог понятно изложить тему. На инфостарте тоже бились с этим вопросом, но решения не получилось. https://forum.infostart.ru/forum15/topic184055/
   azt-yur
 
8 - 01.11.18 - 09:40
а в базе-приемнике правила обновили?
   Плехоть
 
9 - 01.11.18 - 09:46
В базу-приемник переносятся правила из файла данных, которые выгружены в xml из базы-источника. Или Вы о каких правилах?
Все изменения, которые я делаю в коде конвертации, а потом загружаю в базу-источник - отрабатывают. Создание набора записей в РС - нет.
   Cyberhawk
 
10 - 01.11.18 - 09:55
"В базу-приемник переносятся правила из файла данных, которые выгружены в xml из базы-источника" // В типовых это давно уже не так. Внезапно.
 
 Рекламное место пустует
   Cyberhawk
 
11 - 01.11.18 - 09:56
Но суть не в этом. В ЖР посмотри есть ли события записи в этот твой РС.
   Плехоть
 
12 - 01.11.18 - 10:02
Нет. Про события записи ни слова. Начало процесса обмена данными и отработано 4 объекта. Ещё регистры состояния обменов данными меняются, но это не то.
   Плехоть
 
13 - 01.11.18 - 10:03
В процессе синхронизации был создан и справочник, но про него в ЖР тоже ничего
   elCust
 
14 - 01.11.18 - 10:04
В ПКО нет правила "После обработки".

Это правило есть в "ПВД".

А создавать запись регистра нужно в ПКО в правиле "После загрузки".
   Плехоть
 
15 - 01.11.18 - 10:05
Да, и план обмена и правила не типовые. Если это важно.
   azt-yur
 
16 - 01.11.18 - 10:08
(9) база приемник у тебя какая? если из последних на управляемых формах, то обработчики выполняемые в приемнике берутся из правил корреспондента, которые должны быть загружены в приемник.
   Плехоть
 
17 - 01.11.18 - 10:09
14. Вы правы. Я пишу код создания набора РС в событии "После загрузки". Опять мои огрехи терминологии )
   Плехоть
 
18 - 01.11.18 - 10:11
(16) БП КОРП 3.0.65.72. Я повторюсь "Все изменения, которые я делаю в коде конвертации, а потом загружаю в базу-источник - отрабатывают. Создание набора записей в РС - нет."
   Cyberhawk
 
19 - 01.11.18 - 10:11
(13) "В процессе синхронизации был создан и справочник, но про него в ЖР тоже ничего" // Уровень регистрации какой?
   Плехоть
 
20 - 01.11.18 - 10:20
Что такое "уровень регистрации"?
   ptiz
 
21 - 01.11.18 - 10:22
(0) Вставь в этот код ЗаписьЖурналаРегистрации() чтобы убедиться, что он срабатывает.
Если у меня большое подозрение, что в каком-то другом месте у тебя идет очистка этого РС.
   hhhh
 
22 - 01.11.18 - 10:25
(18) в базе приемнике надо правила обновить. правила корреспондента
   elCust
 
23 - 01.11.18 - 10:25
Давайте для начало определим, что обработчик выполняется.

Заходим в ПКО, в правило После записи и перед созданием записи РС пишем код:

ОбщегоНазначенияКлиентСервер.СообщитьПользователю("Метка 1");

Таким кодом вы однозначно определите, что обработчик правила выполняется.
   Плехоть
 
24 - 01.11.18 - 10:25
(20) Сейчас попробую
   Плехоть
 
25 - 01.11.18 - 10:26
(24) это для (21)
   elCust
 
26 - 01.11.18 - 10:26
(22) Конвертация 2.1 ж.
   Плехоть
 
27 - 01.11.18 - 10:27
(23) и это попробую
   Cyberhawk
 
28 - 01.11.18 - 10:27
(20) http://v8.1c.ru/overview/Term_000000292.htm последняя картинка
   Плехоть
 
29 - 01.11.18 - 10:28
(26) да, Конвертация 2.1.8.2
   Cyberhawk
 
30 - 01.11.18 - 10:28
(26) Ты отстал от жизни. См. (10)
   hhhh
 
31 - 01.11.18 - 10:29
(26) правила через файл не передаются теперь. Из-за требований безопасности запрещено.
   Плехоть
 
32 - 01.11.18 - 10:30
(28) в базе стоит "Регистрировать ошибки, предупреждения, информацию, примечания"
   Плехоть
 
33 - 01.11.18 - 10:30
(31) у нас пока передается через файл ) Дальше видно будет
 
 
   azt-yur
 
34 - 01.11.18 - 10:31
(22) ему об этом уже несколько раз сказали, но уверен что ему это не надо.
   Cyberhawk
 
35 - 01.11.18 - 10:33
(32) Ну тогда явно что-то там не так у тебя (возможно, в твоей голове, возможно в инфобазе, возможно в ЖР), раз элемент справочника ты утверждаешь что создался, а в ЖР не залогировалось это.
   Плехоть
 
36 - 01.11.18 - 10:37
(35) Я понимаю, что что-то не так. Поэтому в поиске и обратился в мисту.
И опять повторюсь "план обмена и правила не типовые."
   hhhh
 
37 - 01.11.18 - 12:36
(32) в после загрузки элемент справочника еще не записан. поэтому непонятно что там Объект.Ссылка делает. И ежу понятно, что там Ссылка пустая.
   Плехоть
 
38 - 01.11.18 - 13:53
(37) Элемент справочника записан, и ссылка есть. В любом случае кроме этого измерения РС есть ещё, которые я не писал в код в первом сообщении. И ещё раз повторюсь "При переносе данных Универсальным обменом все отрабатывает корректно, но когда код работает в синхронизации, регистр не создается"
   Cyberhawk
 
39 - 01.11.18 - 14:04
Очевидно же значит, что в обработке, используемой при встроенном обмене, другие параметры загрузки делаются, чем ты ставишь при ручной загрузке
   Cyberhawk
 
40 - 01.11.18 - 14:06
А возможно там и не только в параметрах обработки обмена дело, но и в обвязке встроенного обмена. Например, различается перенос наборов записей регистров (в одном месте он через отбор сразу на все записи, в другом - каждая запись отдельно).
   Плехоть
 
41 - 01.11.18 - 14:11
(40) Поэтому я и спрашиваю у мудрейших и опытнейших, как сделать программное создание набора в РС при синхронизации, чтобы не делать постоянно универсальным переносом.
   Плехоть
 
42 - 01.11.18 - 14:14
+(41) *не пользоваться обработкой "универсальный обмен данными в формате XML" )
   Cyberhawk
 
43 - 01.11.18 - 14:39
Отладка загрузки в помощь
   Плехоть
 
44 - 01.11.18 - 15:13
Боюсь, что отладка будет показывать работу аналогичную универсальному обмену
   Черный маклер
 
45 - 01.11.18 - 15:22
(0) ПКО для ТвойСправочник
После выгрузки:

ВыгрузитьПоПравилу(Источник, , , , "ПорядокОтраженияЗарплатыВБухУчете");

и создать правило для РСв "ПорядокОтраженияЗарплатыВБухУчете"
   Плехоть
 
46 - 01.11.18 - 16:25
Метод "ВыгрузитьПоПравилу()" отработает в ПКО в правиле "После загрузки"? Это опробовано? Я пробовал что-то подобное, у меня не получилось


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует