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