|
Заполнение ТЧ из обработки | ☑ | ||
---|---|---|---|---|
0
dgamelya
15.02.13
✎
10:00
|
Добрый день! На форме документа при нажатии на кнопку открывается обработка. в этой обработке есть ТЧ, которую заполняет пользователь. После заполнения данные из ТЧ обработки должны перенестись в ТЧ документа.
ТаблЧ = ОтчетПроизводства.ПолучитьОбъект(); Если ТаблЧ.РаспределениеМатериалов.Количество() <> 0 Тогда Ответ = Вопрос("Табличная часть ""Распределение материалов"" уже содержит строки." + Символы.ПС + "При заполнении они будут удалены!" + Символы.ПС, РежимДиалогаВопрос.ДаНет); Если Не Ответ = КодВозвратаДиалога.Да Тогда Возврат; КонецЕсли; ТаблЧ.РаспределениеМатериалов.Очистить(); Для каждого стр из РаспределениеМатериалов Цикл НовСтр = ТаблЧ.РаспределениеМатериалов.Добавить(); НовСтр.ЕдиницаИзмерения = стр.ЕдиницаИзмерения; НовСтр.Количество = стр.Количество; НовСтр.Коэффициент = стр.Коэффициент; НовСтр.Номенклатура = стр.Номенклатура; НовСтр.НоменклатурнаяГруппа = стр.НоменклатурнаяГруппа; Новстр.Продукция = стр.Продукция; НовСтр.СерияНоменклатуры = стр.СерияНоменклатуры; НовСтр.Спецификация = стр.Спецификация; НовСтр.СтатьяЗатрат = стр.СтатьяЗатрат; НовСтр.ХарактеристикаНоменклатуры = стр.ХарактеристикаНоменклатуры; НовСтр.ХарактеристикаПродукции = стр.ХарактеристикаПродукции; КонецЦикла; КонецЕсли; Но ТЧ документа не заполняется. Подскажите пожалуйста в чем может быть ошибка? |
|||
1
Godofsin
15.02.13
✎
10:04
|
записать
|
|||
2
Wobland
15.02.13
✎
10:05
|
в днк, однозначно
|
|||
3
Wobland
15.02.13
✎
10:05
|
ТаблЧ.РаспределениеМатериалов.Очистить();
Для каждого стр из РаспределениеМатериалов Цикл |
|||
4
dgamelya
15.02.13
✎
10:09
|
После записи все равно не заполняется
|
|||
5
Godofsin
15.02.13
✎
10:10
|
(4) Записывать ПОСЛЕ заполнения!
|
|||
6
dgamelya
15.02.13
✎
10:10
|
(3) Это две разные ТЧ. В обработке и в документе они с одинаковым названием РаспрелениеМатериалов
|
|||
7
Godofsin
15.02.13
✎
10:12
|
ТаблЧ.РаспределениеМатериалов.Очистить();
Для каждого стр из РаспределениеМатериалов Цикл НовСтр = ТаблЧ.РаспределениеМатериалов.Добавить(); НовСтр.ЕдиницаИзмерения = стр.ЕдиницаИзмерения; НовСтр.Количество = стр.Количество; НовСтр.Коэффициент = стр.Коэффициент; НовСтр.Номенклатура = стр.Номенклатура; НовСтр.НоменклатурнаяГруппа = стр.НоменклатурнаяГруппа; Новстр.Продукция = стр.Продукция; НовСтр.СерияНоменклатуры = стр.СерияНоменклатуры; НовСтр.Спецификация = стр.Спецификация; НовСтр.СтатьяЗатрат = стр.СтатьяЗатрат; НовСтр.ХарактеристикаНоменклатуры = стр.ХарактеристикаНоменклатуры; НовСтр.ХарактеристикаПродукции = стр.ХарактеристикаПродукции; КонецЦикла; КонецЕсли; Табч.Записать(); |
|||
8
Godofsin
15.02.13
✎
10:15
|
и вообще это моветон, пользуйся так:
Табч.РаспределениеМатериалов.Загрузить(РаспределениеМатериалов); |
|||
9
Godofsin
15.02.13
✎
10:16
|
все поля по наименованию совпадают
|
|||
10
dgamelya
15.02.13
✎
10:26
|
Спасибо, так и сделала. Но тч документа не обновляется. т.е. добавленные строки становятся видны только после закрытия и открытия документа
|
|||
11
Godofsin
15.02.13
✎
10:30
|
(10) У тебя чо, еще и документ при этом открыт?
|
|||
12
Godofsin
15.02.13
✎
10:30
|
Ты хочешь как "подбор номенклатуры"?
|
|||
13
Godofsin
15.02.13
✎
10:33
|
Короче, опиши задачу в целом
|
|||
14
dgamelya
15.02.13
✎
10:38
|
да,документ открыт. на вкладке материалы есть кнопка, при нажатии на которую открвается обработка. пользователь заполняет тч обработки, после чего данные переносятся в тч документа который открыт
|
|||
15
Godofsin
15.02.13
✎
10:42
|
(14) ну токда кури Подбор, обработкаПодбора, ОповеститьОВыборе
|
|||
16
Godofsin
15.02.13
✎
10:43
|
Посмотри как в РТиУ сделан подбор номенклатуры, делай по аналогии, что неясно, спрашивай
|
|||
17
dgamelya
15.02.13
✎
10:58
|
А не подскажите как передать значения из обработки в документ?
|
|||
18
zippygrill
15.02.13
✎
11:03
|
а почему ты не хочешь через Заполнить и обработка табличной часть?
|
|||
19
zippygrill
15.02.13
✎
11:04
|
(17) владелей формы по моему.
|
|||
20
zippygrill
15.02.13
✎
11:05
|
*через владелец
|
|||
21
Godofsin
15.02.13
✎
11:06
|
(17) ОповеститьОВыборе()
|
|||
22
dgamelya
15.02.13
✎
11:11
|
(18) не соображу что то.. это как?
|
|||
23
Начинающий_13
15.02.13
✎
11:19
|
Форма обработки
Перем ДокументОбъект Экспорт; Процедура Перенести(Кнопка) // Действие выполняется, если еще не закрыли документ Если ДокументОбъект <> Неопределено Тогда МетаданныеДокумента = ДокументОбъект.Метаданные(); // Выгрузим ТЧ обработки в таблицу значений для дальнейших преобразований ТаблицаОбработки = ТЧ.Выгрузить(); МетаТЧ = МетаданныеДокумента.ТабличныеЧасти.Найти(СокрЛП(ИмяТабличнойЧасти)); // Загрузим полученную таблицу в документ МетаДок = ДокументОбъект.Метаданные(); МетаТЧ = МетаДок.ТабличныеЧасти.Найти(СокрЛП(ИмяТабличнойЧасти)); ИмяТЧ = СокрЛП(ИмяТабличнойЧасти); ДокументОбъект[ИмяТЧ].Загрузить(ТаблицаОбработки); КонецЕсли; ИмяТабличнойЧасти=НЕОПРЕДЕЛЕНО; Закрыть(); КонецПроцедуры Из документа передай параметры и ИМЯ ТАБЛИЦЫ КУДА ВОЗВРАЩАЕШЬ |
|||
24
Godofsin
15.02.13
✎
11:20
|
эээхххх....
//Из документа: ФормаПодбора = Обработки.ТвояОбработка.ПолучитьФорму("ТвояФорма",ЭтаФорма); ФормаПодбора.Открыть(); //В обработке СтруктураПодбора = Новый Структура(); СтруктураПодбора.Вставить("ТабЧасть",РаспределениеМатериалов); ОповеститьОВыборе(); //в документе Процедура ОбработкаВыбора(ЗначениеВыбора, Источник) перем ТЧ; ЗначениеВыбора.Свойство("ТабЧасть", ТЧ); РаспределениеМатериалов.Загрузить(ТЧ); КонецПроцедуры |
|||
25
Godofsin
15.02.13
✎
11:21
|
+(24) очепятка: ОповеститьОВыборе(СтруктураПодбора);
|
|||
26
Начинающий_13
15.02.13
✎
11:23
|
В моем случае больше не надо никаких процедур в документе при приеме данных из обработки. Если Имя ТЧ будте в обработке ввиде видимого параметра можешь возвращать в любую ТЧ документа надо только написать имя ТЧ в параметр руками.
|
|||
27
Начинающий_13
15.02.13
✎
11:25
|
ИЗ документа
Процедура ЗаполнитьИзДокумента(Кнопка) МетаданныеДокумента = ДокументОбъект.Метаданные().Представление(); СтруктураПараметровПодбора = Новый Структура(); СтруктураПараметровПодбора.Вставить("Заголовок" , "ДОКУМЕНТ - " + Врег(МетаданныеДокумента) ); // Здесь твои параметры КонецПроцедуры |
|||
28
Godofsin
15.02.13
✎
11:26
|
(26) Ничего не имею против твоего варианта ))) Ээто ж хорошо, у ТС теперь куча вариантов ))))
|
|||
29
Godofsin
15.02.13
✎
11:28
|
Единственно, что ТС вряд ли поймет, что делает твой вариант )))
|
|||
30
dgamelya
15.02.13
✎
13:26
|
огромное всем спасибо!все получилось!)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |