Имя: Пароль:
1C
1С v8
УТ 11 РИБ выгрузка форм объектов при обмене
0 Вася_Бриллиант
 
02.07.13
22:35
Господа, суть проблемы такова: настроил обмен через риб, где по задумке, при переносе из главной в филиальную базу, для объектов справочника номенклатура некоторые реквизиты (прикрепленные файлы) очищаются, т.е. заменяются на пустые ссылки (в процедуре ПриОтправкеДанныхПодчиненному).
Так вот, проблема собственно в том, что после проведения успешного обмена, номенклатура в филиальной базе не открывается, выдает ошибку. после изучения ошибки по отладчику выяснилось, что реквизит  (реквизиты самого объекта 100% очищаются исправно, смотрел по отладчику)... А поскольку
1 Вася_Бриллиант
 
02.07.13
22:38
(0) 1
2 Вася_Бриллиант
 
02.07.13
22:47
блин, извиняюсь, чет случайно отправил не дописав... продолжаю:

что значение реквизита ФОРМЫ выгрузилось из главной базы (реквизиты самого объекта 100% очищаются исправно, смотрел по отладчику)... А поскольку тип этих реквизитов - справочник ПрикрепленныеФайлы - который из главной НЕ выгружается, отсюда и ошибка.
Ну и вопрос собственно в том, как при выгрузке (или загрузке) очистить значения реквизитов формы объекта, и вобще откуда они там взялись (поправьте если не прав, но мне всегда казалось, значения реквизитов формы нигде не хранятся и существуют только при открытой форме).
3 Stim
 
02.07.13
22:50
смешались в кучу кони, люди..

реквизиты формы устанавливаются!
4 Stim
 
02.07.13
22:51
в том числе в зависимости от реквизитов объекта
5 Вася_Бриллиант
 
02.07.13
22:54
И еще забыл добавить: все что я описал имеет место только при первом обмене. В дальнейшем элементы этого справочника переносятся нормально, без ошибок и ненужных реквизитов (даже если их просто перезаписать без каких-либо фактических изменений)
6 Вася_Бриллиант
 
02.07.13
22:59
(4) устанавливаются - это да, но где они хранятся? и как проследить их выгрузку в базу-приемник? ведь процедура  ПриОтправкеДанныхПодчиненному имеет дело с объектом, а как туда форму подцепить, имея только ЭлементДанных?
7 Stim
 
02.07.13
23:03
мда..чукча писатель
8 MrStomak
 
02.07.13
23:36
Вася, форма не передаётся, успокойся - всё дело в реквизитах.
9 Вася_Бриллиант
 
03.07.13
00:06
(8) Ну тогда если предположить, что у меня косяк в передаче реквизитов самого объекта, то почему после первой выгрузки все работает как задумано? Отличается ли чем-нибудь алгоритм создания первоначального образа от последующих обменов?
Кстати, вот собственно код

ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза)
   
Если ТипЗнч(ЭлементДанных)= Тип("СправочникОбъект.Номенклатура") Тогда
       ЭлементДанных.ФайлКартинки = Справочники.НоменклатураПрисоединенныеФайлы.ПустаяСсылка();

КонецЕсли;  

Делать через ПриПолученииДанныхОтГлавного тоже пробовал, реукльтат тот же...
10 Вася_Бриллиант
 
03.07.13
11:10
тема по прежнему актуальна
11 Вася_Бриллиант
 
03.07.13
21:03
неужели ни у кого нет идей? может я что-то непонятно/некорректно изложил?
12 Вася_Бриллиант
 
06.07.13
11:32
ап
13 Вася_Бриллиант
 
18.07.13
23:53
up
14 Вася_Бриллиант
 
29.07.13
22:15
Короч вопрос так и повис, в итоге после создания начального образа использую групповую регистрацию изменений для ВСЕЙ номенклатуры, потом делаю повторный обмен... И да, я писал, что реквизиты объекта очищаются, но я был не прав, дело как раз в них, а не в форме (она, как и предполагалось, не передается). Можно было бы предположить, что изменение реквизитов передаваемого объекта в модуле плана обмена не предусмотрено, но тогда остается только загадкой, почему со второго раза все записывается...
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс