Имя: Пароль:
1C
1С v8
Упр.форма. Реквизит типа Хранилище зничения в ТЧ. Не получается
,
0 ilpar
 
22.09.11
14:28
В общем есть код. Не могу пока догнать почему не работает

&НаКлиенте
Процедура ТестНаКлиенте

ПоместитьАдресВХранилищеНаСервере(Результат, Элементы.абМестаПогрузкиРазгрузки.ТекущаяСтрока);

//Тут получаем неопределено
абАдресТЗ=абПолучитьАдресИзТекущейСтрокиТЧ(Элементы.абМестаПогрузкиРазгрузки.ТекущаяСтрока);
КонецПроцедуры

&НаСервере
Процедура ПоместитьАдресВХранилищеНаСервере(Результат, НомерСтроки)
   
   абОбъект=РеквизитФормыВЗначение("Объект");
   ХранилищеАдреса=Новый ХранилищеЗначения(Результат.ЗначенияПолей);
   СтрокаТЧ=абОбъект.абТЗ[НомерСтроки];
   СтрокаТЧ.абАдресСтруктура=ХранилищеАдреса;
   
   //абТЗ=СтрокаТЧ.абАдресСтруктура.Получить();
//Если этот код раскомментировать, то получим нужный результат, т.е. ТЗ
   ЗначениеВРеквизитФормы(абОбъект,"Объект");
   
КонецПроцедуры// абНовыйХранилищеЗначенияНаСервере(Результат)()


&НаСервере
Функция абПолучитьАдресИзТекущейСтрокиТЧ(НомерСтроки)

   абОбъект=РеквизитФормыВЗначение("Объект");
   СтрокаТЧ=абОбъект.абТЧ[НомерСтроки];
   абТЗ=СтрокаТЧ.абАдресСтруктура.Получить();
   
   Возврат абТЗ;

КонецФункции // абПолучитьАдресИзТекущейСтрокиТЧ()
1 ilpar
 
22.09.11
14:28
Блин , счас исправлю первую процедуру
2 ilpar
 
22.09.11
14:29
&НаКлиенте
Процедура ТестНаКлиенте

//Результат - это Структура, данные есть
//Результат.ЗначенияПолей - это ТЗ

ПоместитьАдресВХранилищеНаСервере(Результат, Элементы.абТЗ.ТекущаяСтрока);

//Тут получаем неопределено

абАдресТЗ=абПолучитьАдресИзТекущейСтрокиТЧ(Элементы.абТЗрузкиРазгрузки.ТекущаяСтрока);
КонецПроцедуры
3 ilpar
 
22.09.11
14:30
еще одно исправление

&НаКлиенте
Процедура ТестНаКлиенте

//Результат - это Структура, данные есть

//Результат.ЗначенияПолей - это ТЗ


ПоместитьАдресВХранилищеНаСервере(Результат, Элементы.абТЗ.ТекущаяСтрока);

//Тут получаем неопределено


абАдресТЗ=абПолучитьАдресИзТекущейСтрокиТЧ(Элементы.абТЗ.ТекущаяСтрока);
КонецПроцедуры
4 ilpar
 
22.09.11
15:30
Как я понял, когда делаю
5 ilpar
 
22.09.11
15:31
ЗначениеВРеквизитФормы(абОбъект,"Объект");

У меня т.к. документ не записан - реквизит очищается
6 ilpar
 
22.09.11
15:31
т..к. когда после присвоения реквизиту ТЧ значения и записи документа все сохраняется, как обойти ?
7 H A D G E H O G s
 
22.09.11
15:35
(6) Хранить до ПередЗаписьюНаСервере() в временном гнобилище
8 ilpar
 
22.09.11
15:51
нужно для каждой строки ТЧ хранить Адрес.

Строки могут отсортировать ?

Как хранить ?
9 ilpar
 
22.09.11
16:02
придумал, нахер хранилище
10 Defender aka LINN
 
22.09.11
16:03
ПоместитьАдресВХранилищеНаСервере(Результат, Элементы.абТЗ.ТекущаяСтрока);
...
СтрокаТЧ=абОбъект.абТЗ[НомерСтроки];

Вам таки кто-то сказал, что в "ТекущаяСтрока" будет индекс строки? Плюньте ему в лицо.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.