Имя: Пароль:
1C
1С v8
Подружить тонкий клиент и ДанныеРасшифровки
0 el-gamberro
 
31.01.12
12:04
У кого-нить получилось?
1 SUA
 
31.01.12
12:07
да,
на сервер и вперед
2 el-gamberro
 
31.01.12
12:11
(1) Однако ругается
3 patapum
 
31.01.12
12:16
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
   
   Перем ДействиеРасшифровки;
   Перем ПараметрДействияРасшифровки;
   
   
   СтандартнаяОбработка = Ложь;
   
   Если АдресХранилищаСКД <> "" Тогда
       
       Источник = Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресХранилищаСКД);
       Обработка = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Источник);
       ДоступныеДействия = Новый Массив;
       ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
       ДопМеню = Новый СписокЗначений;
       ДопМеню.Добавить("Задать цену");
       Обработка.ВыбратьДействие(Расшифровка, ДействиеРасшифровки, ПараметрДействияРасшифровки, ДоступныеДействия, ДопМеню);
       
       
       Если ДействиеРасшифровки = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать
           ИЛИ ДействиеРасшифровки = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Отфильтровать Тогда
           
           //Сообщить("1");
           // Открываем в новом окне
           
           //Описание = Новый ОписаниеОбработкиРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Расшифровка, ПараметрДействияРасшифровки);
           //
           //СтруктураПараметров = Новый Структура;
           //СтруктураПараметров.Вставить("ПараметрОбработкиРашифровки", Описание);
           //СтруктураПараметров.Вставить("ПроизвольныйОтчет",           Отчет.ПроизвольныйОтчет);
           //СтруктураПараметров.Вставить("СохраненнаяНастройка",        СохраненнаяНастройка);
           //СтруктураПараметров.Вставить("ФормироватьПриОткрытии",      Истина);
           //
           //ОткрытьФорму("Отчет.ПроизвольныйОтчет.ФормаОбъекта", СтруктураПараметров);
           
       ИначеЕсли ДействиеРасшифровки = ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение Тогда
           
           ОткрытьЗначение(ПараметрДействияРасшифровки);
           
       ИначеЕсли ДействиеРасшифровки = "Задать цену" Тогда
           //СтруктураПолей = ПолучитьСтруктуруПолей(Расшифровка);
           СтруктураПараметров = Новый Структура;
           ПолучитьДокументУстановкиЦен(Расшифровка);
           СтруктураПараметров.Вставить("рамТаблицаТовары", ТаблицаНоменклатуры);
           СтруктураПараметров.Вставить("рамНоменклатура", ТаблицаНоменклатуры.Получить(0).Номенклатура);
           ОткрытьФорму("Документ.УстановкаЦенНоменклатуры.ФормаОбъекта", СтруктураПараметров);
       ИначеЕсли ДействиеРасшифровки <> ДействиеОбработкиРасшифровкиКомпоновкиДанных.Нет Тогда
           
           //ВыполнитьРасшифровку(Расшифровка, ДанныеРасшифровки, ПараметрДействияРасшифровки);
           //ОбновитьОтчет();
           
       КонецЕсли
       
   КонецЕсли;
   
КонецПроцедуры



&НаСервере
Процедура ПолучитьДокументУстановкиЦен(ИдРасшифровки)

   ТаблицаНоменклатуры.Очистить();
   МассивРодителей = ПолучитьИзВременногоХранилища(ДанныеРасшифровки).Элементы.Получить(ИдРасшифровки).ПолучитьРодителей();
   
   СтруктураПолей = Новый Структура;
   
   Номенклатура = Справочники.Номенклатура.ПустаяСсылка();
   Для каждого ПолеРодитель Из МассивРодителей Цикл
       ЗначениеПоля = ПолеРодитель.ПолучитьПоля().Получить(0);
       СтруктураПолей.Вставить(ЗначениеПоля.Поле, ЗначениеПоля.Значение.Ссылка);
   КонецЦикла;
   
   ТаблицаНоменклатуры.Добавить().Номенклатура = СтруктураПолей.Номенклатура;
   
КонецПроцедуры
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой