|
Программирование. Передача значений из формы.
|
Я
|
|
kachesov 25.10.16 - 18:48 | Добрый вечер!
Имеется ВПФ с формой.
В форме подтягивается табличная часть документа "реализация" и имеется возможность дописать литраж и плотность.
Далее мне надо эти данные записать (в модуле формы), и прочитать в модуле объекта.
Варианта было два:
Для каждого ТекСтрока из Объект.Товары Цикл
СтрокаДок = Объект.СсылкаНаОбъект.Товары[ТекСтрока.НомерСтроки-1];
Если СтрокаДок = Неопределено Тогда
ИначеЕсли ТекСтрока.Плотность = 0 Тогда
ТекСтрока.Литраж = 0;
Иначе
ТекСтрока.Литраж = СтрокаДок.Количество/ТекСтрока.Плотность*1000;
КонецЕсли;
КонецЦикла;
Записать в табличную часть обработочки (с записью всё нормально), и считывать из модуля объекта:
ТекСтрока = Товары[СтрокаДокумента.НомерСтроки-1];
Если ТекСтрока = Неопределено Тогда
СтрокаДокумента.Плотность = 0;
СтрокаДокумента.Литраж = 0;
Иначе
СтрокаДокумента.Плотность = ТекСтрока.Литраж;
СтрокаДокумента.Литраж = ТекСтрока.Плотность;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(СтрокаДокумента.СтавкаНДС) Тогда
ОбластьМакета.Параметры.СтавкаНДС = "--";
Если СтрокаДокумента.СуммаНДС = 0 Тогда
ОбластьМакета.Параметры.СуммаНДС = "--";
КонецЕсли;
КонецЕсли;
Но считать не удается. Товары[0] - индекс выходит за границы.
Я сделал вывод, что не могу из модуля объекта обращаться к табличной части. Или она не записывается.
Далее моя вторая попытка.
Я создал реквизит "Переменная" и решил туда ввести все значения.
Хотел использовать массив
Объект.Переменная = Новый Массив;
но нельзя использовать массивы в модуле формы..
Подскажите пожалуйста, как можно в переменную засунуть множество значений?  |
iceman2112 1 - 25.10.16 - 18:51 | РеквизитФормыВЗначение()
|
Господин ПЖ 2 - 25.10.16 - 18:51 | >но нельзя использовать массивы в модуле формы..
каждый день новые открытия
|
iceman2112 3 - 25.10.16 - 18:53 | ( 2) А это как вам?
"Я СДЕЛАЛ ВЫВОД, что не могу из модуля объекта обращаться к табличной части. Или она не записывается." |
kachesov 4 - 25.10.16 - 19:05 | (2) {ВнешняяОбработка.УПД_литры.Форма.Форма.Форма(75)}: Ошибка при установке значения атрибута контекста (Переменная)
Объект.Переменная = Новый Массив;
по причине:
Тип "Массив" не может использоваться в данных формы |
kachesov 5 - 25.10.16 - 19:08 | ( 1) а можно чуть подробнее? прочитал описание, но не понял как использовать.. |
iceman2112 6 - 25.10.16 - 19:11 | гугл расскажет подробнее
|
kachesov 7 - 25.10.16 - 19:14 | ( 3) а это не так? я просто где-то косячу? |
kachesov 8 - 25.10.16 - 19:53 | 1) В модуле формы:
Объект.Переменная = 10;
В модуле объекта:
ОбластьМакета.Параметры.Плотность = ДопПараметры.Переменная;
Всё работает..
2) В модуле формы:
Переменная = Новый Массив;
Переменная[0] = 10;
Объект.Переменная = Переменная;
В модуле объекта:
ОбластьМакета.Параметры.Плотность = ДопПараметры.Переменная[0];
Ошибка:
{ВнешняяОбработка.УПД_литры.МодульОбъекта(622)}: Получение элемента по индексу для значения не определено
ОбластьМакета.Параметры.Плотность = ДопПараметры.Переменная[0];
Но это же массив( |
experimentator76 9 - 25.10.16 - 20:47 | скока платют ?
|
МимохожийОднако 10 - 25.10.16 - 20:55 | ( 0)"мне надо эти данные записать (в модуле формы)"- это с какого бодуна? |
kachesov 11 - 26.10.16 - 11:19 | ( 10) как-то же надо их в макет вставить. вводятся они в модуле формы |
Господин ПЖ 12 - 26.10.16 - 11:22 | ( 4) модуль формы и данные формы - это 4 разных человека
купи радченко и не дрочи мозг людям |
Господин ПЖ 13 - 26.10.16 - 11:25 | ( 3) теплород примерно так же открывали |
kachesov 14 - 26.10.16 - 11:41 | И всё-таки хотелось бы записать как-то в модуле формы несколько значений в переменную и считать их из модуля объекта.. Не подскажете как?
С одним значением всё выходит, а вот с несколькими беда..
|
DDwe 15 - 26.10.16 - 11:43 | ( 14) Ничего нет невозможного для человека с интеллектом. |
kachesov 16 - 26.10.16 - 11:48 | ( 15) хорошо сказал! жаль не по делу.. |
DDwe 17 - 26.10.16 - 11:51 | ( 16) Как раз по делу, советов уже надавали, включай мозг и вперед. |
kachesov 18 - 26.10.16 - 13:41 | ( 17) Советов надавали? Только один ( 1). Остальное стёб, троллинг и восхищение моими "знаниями".. |
Cyberhawk 19 - 26.10.16 - 13:43 | С учетом ( 5) что еще можно сказать? |
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн