Имя: Пароль:
1C
1С v8
Расшифровка отчета другим отчетом
0 ONE1
 
14.12.21
17:26
Я только учусь, не понимаю почему не передается параметр в другой отчет, подскажите пожалуйста, что не так?
&НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    СтандартнаяОбработка = Ложь;
    Номенклатура = ПолучитьРасшифровкуНаСервере(Расшифровка);
    РасшифровкаДанных = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки,
    Новый ИсточникДоступныхНастроекКомпоновкиДанных(Отчет));
    ВыбранноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Расшифровать;
    ПараметрВыбранногоДействия = Неопределено;
    ДоступныеДействия = Новый Массив;
    ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение);
    Меню = Новый СписокЗначений;
    Меню.Добавить(1, "Открыть список заказов/реализаций");
    РасшифровкаДанных.ВыбратьДействие(Расшифровка, ВыбранноеДействие, ПараметрВыбранногоДействия, ДоступныеДействия, Меню);
    Если ВыбранноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Нет Тогда
        Возврат;
    ИначеЕсли ВыбранноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение Тогда
        ОткрытьЗначение(ПараметрВыбранногоДействия);
    ИначеЕсли ТипЗнч(ВыбранноеДействие) = Тип("Число") Тогда
        Параметры = Новый Структура();
        Параметры.Вставить("СформироватьПриОткрытии", Истина);
        Параметры.Вставить("Номенклатура", Номенклатура);
        ОткрытьФорму("ВнешнийОтчет.СписокЗаказовРеализаций.Форма.ФормаОтчета", Новый Структура("Парам", Параметры));
    КонецЕсли;    
КонецПроцедуры

&НаСервере
Функция ПолучитьРасшифровкуНаСервере(Расшифровка)    
    Данные = ПолучитьИзВременногоХранилища(ДанныеРасшифровки);
    Поля = Данные.Элементы.Получить(Расшифровка).ПолучитьПоля();
    ПолеНоменклатура = Поля.Найти("Номенклатура");
    Если ПолеНоменклатура = Неопределено Тогда
        Возврат Неопределено;
    Иначе
        Возврат ПолеНоменклатура.Значение;
    КонецЕсли;
КонецФункции
1 fisher
 
14.12.21
17:36
Запускаешь отладчик и в пошаговом исполнении смотришь когда и что свернуло не туда.
2 ONE1
 
15.12.21
11:16
(1) Отладчик не работает во внешнем отчете
3 Guk
 
15.12.21
11:19
(2) а конфигуратор работает?...
4 Dmitrii
 
гуру
15.12.21
11:21
(2) Открывай отчет не через справочник, а из меню сервиса через "Файл - Открыть".
Либо переделай внешний отчет на расширение.
5 ONE1
 
15.12.21
13:23
Разобрался, тема закрыта (Если как то можно закрыть, сорри не нашел)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший