Имя: Пароль:
1C
1С v8
Заполнить форму и обновить ее без записи документа
,
0 Alexey87
 
13.11.12
15:47
У документа есть табличная часть, заполняемая обработкой. После загрузки значений в ТЧ нужно, чтобы форма обновилась для дальнейшего редактирования пользователем, но без записи документа. Подскажите как сделать?
1 Eugene_life
 
13.11.12
15:48
(0) А разве что-то надо дополнительно делать? Или это УФ?
2 Lama12
 
13.11.12
15:50
(0) Поди установка цен номенклатуры?
3 Alexey87
 
13.11.12
15:51
Обычная, не УФ.
Открываем форму с диалогом выбора файла, форма документа - владелец. Добавляем строки в ТЧ владельца. Ничего не появляется.
4 mikecool
 
13.11.12
15:51
не туда добавляешь
5 mikecool
 
13.11.12
15:51
+4 или обновить()
6 Alexey87
 
13.11.12
15:52
(2)заполнение док-та "Поступление товаров" из файла отбивки поставщика
7 Reset
 
13.11.12
15:53
+(4) или на форме не та ТЧ
8 Reset
 
13.11.12
15:55
Подробней:
Если ТЧ на форме в данных ТП и та, которую заполняешь, одна и та же, то ничего делать не нужно, форма отобразит изменения автоматом
9 ssh2006
 
13.11.12
15:55
(0) > После загрузки значений в ТЧ нужно, чтобы форма обновилась

так и работает система
10 Alexey87
 
13.11.12
16:03
Процедура КоманднаяПанельТоварыЗаполнитьИзФайла(Кнопка)
   Ссылка.ПолучитьФорму("ФормаЗагрузки",ЭтаФорма).Открыть();
КонецПроцедуры

Далее в форме загрузки
ДокПоступление = ВладелецФормы.Ссылка.ПолучитьОбъект();
.....
СтрокаТЧ = ДокПоступление.Товары.Добавить();
.....

с записью все работает и отображается, без записи - пусто
11 НЕА123
 
13.11.12
16:06
(10)
прочитать()
12 ssh2006
 
13.11.12
16:06
(10) Сделай у ФормаЗагрузки реквизит Документ и передавай в него ЭтотОбъект
13 НЕА123
 
13.11.12
16:07
(11)
но вообще-то куйня получается.
14 mikecool
 
13.11.12
16:08
(11) прочитать = перечитать объект из базы
15 Reset
 
13.11.12
16:08
+(12) Или формы загрузки назначить формой объекта (а не произвольной) и писать просто в Товары.
Форму получать через ЭтотОбъект.ПолучитьФорму("
16 Reset
 
13.11.12
16:10
(13) Оно получится, но это действительно вырезание гланд через непредназначенное место
17 Reset
 
13.11.12
16:13
(15) Передумал, вариант (12) лучше.
Кроме того, в той форме можно вовсе не заполнять ничего, а только передавать нужную информацию; а заполнение делать в ОбрабокаВыбора, к примеру
18 Reset
 
13.11.12
16:14
*ОбработкаВыбора основной формы
19 Alexey87
 
13.11.12
16:16
В форме загрузки после заполнения ТЧ вставил ДокПоступление.Прочитать() - не прокатило, не прокатывает и нажатие кнопки "Перечитать данные объекта"...

щас (12) попробую
20 Reset
 
13.11.12
16:17
В большинстве типовых, кстати, уже есть велосипед для этого в лице внешних обработок заполнения табличных частей
21 Reset
 
13.11.12
16:17
(20) Позволяет не трогать конфигуцию совсем
22 Reset
 
13.11.12
16:19
(19) Прочитать/Перечитать сработает, разумеется, только если та копия объекта была записана
23 Alexey87
 
13.11.12
16:19
(20)стандартная обработка загрузки в ТЧ не совсем подходит для загрузки этих файлов
24 Alexey87
 
13.11.12
16:20
(22)загрузка происходит в записанный док-т с пустой табличной частью
25 Reset
 
13.11.12
16:20
(23) Имеется в виду не стандартный загрузчик, а стандартный механизм для создания своих (внешних) загрузчиков
26 Reset
 
13.11.12
16:22
(24) записанный ПОСЛЕ загрузки в его тч.
Забей на этот путь, это архикрво
27 Alexey87
 
13.11.12
16:24
(25)думаю, в Альфа-Авто такого нет
не могу понять что изменится, если использовать (12)
сейчас вот так:

ДокПоступление = ВладелецФормы.Ссылка.ПолучитьОбъект();
.....
СтрокаТЧ = ДокПоступление.Товары.Добавить();

в чем разница, если в реквизит формы загрузки передавать ссылку формы владельца, а с реквизита формы снова получать объект?
28 Reset
 
13.11.12
16:29
(27) Полоска у тебя вроде длинная -.-

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

Далее в форме загрузки
.....
СтрокаТЧ = ДокументКуда.Товары.Добавить();
29 Reset
 
13.11.12
16:29
+ФормаЗагрузки.Открыть()
30 Alexey87
 
13.11.12
16:43
(28)
наверное
ФормаЗагрузки.ДокументКуда=ЭтотОбъект.Ссылка

а разве в форме загрузки ДокументКуда не нужно получать для изменения?
31 Alexey87
 
13.11.12
16:46
(30)хотя не, тип ДокументОбъект, все верно
32 Alexey87
 
13.11.12
16:46
Reset все получилось, спасибо