Сохрание данных в файл
&НаКлиенте
Процедура СохранитьТЗ(Команда)
ИмяФайла = ПолучитьИмяФайла(РежимДиалогаВыбораФайла.Сохранение);
Если ПустаяСтрока(ИмяФайла) Тогда
Возврат;
КонецЕсли;
ФайлТЗ = Новый ТекстовыйДокумент;
ФайлТЗ.УстановитьТекст(ПолучитьДанныеТЗ());
ФайлТЗ.Записать(ИмяФайла);
ОтправитьСообщениеПользователю("Выгрузка регситра выполнена");
КонецПроцедуры
&НаКлиенте Функция ПолучитьИмяФайла(Режим) ВыборФайла = Новый ДиалогВыбораФайла(Режим); ВыборФайла.ПолноеИмяФайла = ""; Фильтр = "Таблица значений 1С(*.1ct)|*.1ct"; ВыборФайла.Фильтр = Фильтр; ВыборФайла.МножественныйВыбор = Ложь; ВыборФайла.Выбрать(); Возврат ВыборФайла.ПолноеИмяФайла; КонецФункции
&НаСервере Функция ПолучитьДанныеТЗ() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗапасыУПоставщика.Контрагент.Наименование КАК КонтрагентНаименование, | ЗапасыУПоставщика.Номенклатура.Наименование КАК НоменклатураНаименование, | ЗапасыУПоставщика.ХарактеристикаНоменклатуры.Наименование КАК ХарактеристикаНоменклатурыНаименование, | ЗапасыУПоставщика.Организация.Наименование КАК ОрганизацияНаименование, | ЗапасыУПоставщика.КодНоменклатурыКонтрагента КАК КодНоменклатурыКонтрагента, | ЗапасыУПоставщика.АртикулНоменклатурыКонтрагента КАК АртикулНоменклатурыКонтрагента, | ЗапасыУПоставщика.НаименованиеНоменклатурыКонтрагента КАК НаименованиеНоменклатурыКонтрагента, | ЗапасыУПоставщика.ШтрихКодНоменклатурыКонтрагента КАК ШтрихКодНоменклатурыКонтрагента, | ЗапасыУПоставщика.ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмеренияНаименование, | ЗапасыУПоставщика.КодТовара КАК КодТовара, | ЗапасыУПоставщика.Количество КАК Количество |ИЗ | РегистрСведений.ЗапасыУПоставщика КАК ЗапасыУПоставщика"; РезультатЗапроса = Запрос.Выполнить().Выгрузить(); ДанныеТЗ = Новый ХранилищеЗначения(РезультатЗапроса); Возврат XMLСтрока(ДанныеТЗ); КонецФункции
Загрузка из файла
&НаКлиенте
Процедура ЗагрузитьТЗ(Команда)
ИмяФайла = ПолучитьИмяФайла(РежимДиалогаВыбораФайла.Открытие);
Если ПустаяСтрока(ИмяФайла) Тогда
Возврат;
КонецЕсли;
ФайлТЗ = Новый ТекстовыйДокумент;
ФайлТЗ.Прочитать(ИмяФайла);
ЗагрузитьДанныеТЗ(ФайлТЗ.ПолучитьТекст());
ОтправитьСообщениеПользователю("Загрузка регситра выполнена");
КонецПроцедуры
&НаСервере
Процедура ЗагрузитьДанныеТЗ(Данные)
ДанныеТЗ = XMLЗначение(Тип("ХранилищеЗначения"), Данные).Получить();
Если ТипЗнч(ДанныеТЗ) = Тип("ТаблицаЗначений") Тогда
//Тут уже получаем свои данные
КонецЕсли;
КонецПроцедуры