|
ПоместитьВоВременноеХранилище таблицу значений | ☑ | ||
---|---|---|---|---|
0
OnCheck
09.07.14
✎
06:41
|
Добрый день, подскажите пожалуйста, в чем ошибка.
Передаю из модально открытой формы значение в форму владельца вот так: Форма владелец: &НаКлиенте Процедура ЗаполнитьТЧИзЕкселя(Команда) Если Объект.ДопИнформация.Количество() > 0 Тогда Если Вопрос("Табличная часть будет очищена. Продолжить?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда Возврат; КонецЕсли; КонецЕсли; СтруктураВФорму = Новый Структура; СтруктураВФорму.Вставить("Объект", Объект.Номер); ФормаВводаЦен = ПолучитьФорму("Документ.ДопИнформацияПоДоговорам.Форма.ФормаЗаполнения", Новый Структура("АдресХранилища", ПоместитьВоВременноеХранилище(СтруктураВФорму)), ЭтаФорма); ФормаВводаЦен.Номер = Объект.Номер; ФормаВводаЦен.Дата = Объект.Дата; ФормаВводаЦен.Документ = Объект.Ссылка; Ответ = ФормаВводаЦен.ОткрытьМодально(); ОбработатьЗагрузкуИзЕксель(Ответ); КонецПроцедуры &НаСервере Процедура ОбработатьЗагрузкуИзЕксель(АдресХранилища) Если АдресХранилища = Неопределено Тогда Возврат; КонецЕсли; Объект.ДопИнформация.Очистить(); Проекты = ПолучитьИзВременногоХранилища(АдресХранилища); Для каждого СтрокаПроект Из Проекты Цикл НоваяСтрока = Объект.ДопИнформация.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаПроект); КонецЦикла; КонецПроцедуры Форма заполнения: &НаКлиенте Процедура ЗагрузитьДанные(Команда) ЭтаФорма.Модифицированность = Ложь; ЭтаФорма.Закрыть(ПеренестиВДокументНаСервере()); КонецПроцедуры &НаСервере Функция ПеренестиВДокументНаСервере() Возврат ПоместитьВоВременноеХранилище(Проекты.Выгрузить()); КонецФункции Так вот в случае если таблица Проекты заполнена вручную, т.е. по кнопке добавить и т.д., все работает. Но если таблица проекты заполнена программно из Excel то в процедуре ОбработатьЗагрузкуИзЕксель метод ПолучитьИзВременногоХранилища(АдресХранилища) возвращает "Неопределено". Почему это происходит, хотя бы как сделать так, чтобы заработало. |
|||
1
OnCheck
09.07.14
✎
07:29
|
Натестил ботльше инфы.
На форме заполнения есть реквизиты которые подлежат к сохранению. И проблема возникает, в том случае, когда я модифицирую один из таких реквизитов, если реквизиты не трогать, то все работает.Видимо путанится с хранилищем, когда я не модифицирую эти реквизиты то, что я положил в хранилище, то там и лежит. Если же, я модифицирую реквизит формы подлежащий сохранению, то форма перезаписывает хранилище, таким образом моего реквизита там нет. Как решить эту проблему? |
|||
2
RomaH
naïve
09.07.14
✎
07:46
|
ПоместитьВоВременноеХранилище(Проекты.Выгрузить());
там второй параметр есть - почитай зачем он |
|||
3
OnCheck
09.07.14
✎
07:58
|
(2) Ок, спасибо, сохранил во временное хранилище формы владельца, все работает. Спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |