Имя: Пароль:
1C
1С v8
Как передать табличную часть документа в обработку?
0 Мисти
 
04.09.13
13:40
Объект.ДополнительныеРеквизиты = Док.ДополнительныеРеквизиты.Выгрузить();
- не работает.
1 Мисти
 
04.09.13
13:41
Говорит - Обработка.Кос_РедактированиеРеквизитов.Форма.Форма.Форма(8)}: Ошибка при установке значения атрибута контекста (ДополнительныеРеквизиты)
    Объект.ДополнительныеРеквизиты = Док.ДополнительныеРеквизиты.Выгрузить();
по причине:
Нельзя изменять поле, содержащее объект данных формы
2 vicof
 
04.09.13
13:41
Объект.ТабличнаяЧасть. Неожиданное, правда?)
3 vicof
 
04.09.13
13:41
*Неожиданно
4 Любопытная
 
04.09.13
13:41
(0) Объект.ДопРеквизиты.Загрузить(Док.ДополнительныеРеквизиты.Выгрузить())?
5 vicof
 
04.09.13
13:42
(4) еще одна. Нафига?
6 Мисти
 
04.09.13
13:43
Мне синтаксис-помощик сам подсунул "дополнительные реквизиты".
Я не поняла, что именно не нравится?
Как я к этой табличной части обратилась?
то, что это - реквизит объекта, а надо было задать табличную часть в реквизитах формы?
7 Любопытная
 
04.09.13
13:44
(5) что нафига? ДополнительныеРеквизиты это, как я понимаю, ТабЧасть обработки. В нее надо загрузить ТабЧасть документа. Я не права?
8 Мисти
 
04.09.13
13:44
Именно!
9 Wobland
 
04.09.13
13:45
откуда тут ДопРеквизиты возникли?
10 Мисти
 
04.09.13
13:45
Меня даже скорее интересует не как именно это сделать (есть несколько вариантов), а почему нельзя так, как я написала?
11 vicof
 
04.09.13
13:45
(7) У объекта типа "документ" уже есть табличная часть. К ней доступно обращение через точку. Зачем городить огород?
12 Renium
 
04.09.13
13:45
Зачем передавать? Обычно из обработки читают табличную часть документа.
13 vicof
 
04.09.13
13:45
Ладно, девочки, делайте :)
14 Мисти
 
04.09.13
13:46
В обработке есть табличная часть, которая соответствует табличной части "дополнительные реквизиты" многих документов УТ11
15 Любопытная
 
04.09.13
13:46
(11) Ей надо из документы выгрузить, в обработку загрузить. Мало ли зачем, задача в (0) стоит именно так.
16 Любопытная
 
04.09.13
13:47
(10) потому что ты пытаешься заменить табличную часть объекта таблицей значений, а так делать нельзя.
17 Wobland
 
04.09.13
13:47
(15) многие здесь любят делать то, что нормальному человеку в голову не придёт
18 Любопытная
 
04.09.13
13:47
(13) Не надо сливаться с милой улыбкой самого умного. Объясни, в каком месте я не права, это будет намного эффективнее
19 vicof
 
04.09.13
13:48
(18) см. (11)
20 Мисти
 
04.09.13
13:49
А затем, что я хочу редактировать доп. реквизиты независимо от
даты запрета редактирования.
Еще б уговорить документ не перепроводиться, а только записываться!
21 Любопытная
 
04.09.13
13:49
(19) По-моему в (0) четко сказано, что человек хочет сделать. А зачем она этот огород городит, это ни тебе, ни мне неизвестно
22 Wobland
 
04.09.13
13:50
(18) ты неправа только в том, что помогаешь автору производить всякую ересь
23 vicof
 
04.09.13
13:51
(20) Это нереально.
(21) Тогда о чем мы спорим?! Пусть ТС опишет, зачем ей все это надо.
24 Мисти
 
04.09.13
13:51
(21) Получилось, спасибо!
25 Мисти
 
04.09.13
13:51
(23) Почему нереально?
26 vicof
 
04.09.13
13:52
(25) Шутка
27 mdv92
 
04.09.13
14:21
ДокОбъект = Объект.Документ.ПолучитьОбъект();
    ДокОбъект.ДополнительныеРеквизиты.Загрузить(Объект.ДополнительныеРеквизиты.Выгрузить());
    ДокОбъект.ОбменДанными = Истина;
    ДокОбъект.Записать();
Поправили в обработке, теперь загружаем обратно!
Не хочет слушать "ДокОбъект.ОбменДанными = Истина;" - хотя в другой ситуации это срабатывало.
Обработка.Кос_РедактированиеРеквизитов.Форма.Форма.Форма(21)}: Поле объекта недоступно для записи (ОбменДанными)
    ДокОбъект.ОбменДанными = Истина;
А без этого она начнет опять по всем проверкам, подпискам на событие ходить... Мне это ни к чему!
Как ее уговорить записать - и всё?
28 Wobland
 
04.09.13
14:26
.Загрузка
29 Wobland
 
04.09.13
14:34
Мисти дважды заарестовали в чудной формулировкой, но она передаёт нам приветы и говорит, что (28) помогло
30 Renium
 
04.09.13
14:37
:-))