Имя: Пароль:
1C
1С v8
Передача с клиента на сервер через временное хранилище - не работает.
0 nufnufcheg
 
27.04.14
11:54
в модуле набора записей регистра сведений следующий код:

    СтруктураДанныхДляПередачи = Новый Структура("НаборЗаписей, МетаданныеРегистра, Поле1", ЭтотОбъект, ЭтотОбъект.Метаданные(), "ЗначениеПоля1");
    АдресДанныхДляПередачи = ПоместитьВоВременноеХранилище(СтруктураДанныхДляПередачи);
    ОбщийМодульВызовСервера.ЗафиксироватьИзменения(АдресДанныхДляПередачи);


в общем модуле:

Процедура ЗафиксироватьИзменения(АдресДанныхДляПередачи) Экспорт
    
    ОбщийМодульСервер.ЗафиксироватьИзменения(АдресДанныхДляПередачи);
    
КонецПроцедуры


в общем модуле:

Процедура ЗафиксироватьИзменения(АдресДанныхДляПередачи) Экспорт
    
    СтруктураДанныхДляПередачи = ПолучитьИзВременногоХранилища(АдресДанныхДляПередачи);
    НаборЗаписей = СтруктураДанныхДляПередачи.НаборЗаписей;
    МетаданныеРегистра = СтруктураДанныхДляПередачи.МетаданныеРегистра;


Проблема в следующем

В последней процедуре в структуре СтруктураДанныхДляПередачи имею сдедующие значения:
СтруктураДанныхДляПередачи.НаборЗаписей = Неопределено
СтруктураДанныхДляПередачи.МетаданныеРегистра = Неопределено
СтруктураДанныхДляПередачи.Полей = "ЗначениеПоля1";


Это баг или фича?
1 nufnufcheg
 
27.04.14
12:02
хм...
поменял строчку
СтруктураДанныхДляПередачи = Новый Структура("НаборЗаписей, МетаданныеРегистра, Поле1", ЭтотОбъект, ЭтотОбъект.Метаданные(), "ЗначениеПоля1");
на
СтруктураДанныхДляПередачи = Новый Структура("НаборЗаписей, МетаданныеРегистра, Поле1", ЭтотОбъект.Выгрузить(), ЭтотОбъект.Метаданные(), "ЗначениеПоля1");

в итоге в последней процедуре имею:
СтруктураДанныхДляПередачи.НаборЗаписей = ТаблицаЗначений
СтруктураДанныхДляПередачи.МетаданныеРегистра = ТаблицаЗначений
СтруктураДанныхДляПередачи.Полей = "ЗначениеПоля1";

хм...
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший