Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
24 Мар 2017, 13:08
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Расшифровка в отчете на СКД, который вызывается из формы справочника(управляемые формы)  (Прочитано 3614 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн anna_vs

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-25
  • Сайт: 
  • Профессия: Программист 1С
Из справочника "Номенклатура"  формируется отчет на СКД "Закупки", в котором отражаются документы поступления указанного товара.Он вызывается из формы "Закупки" справочника "Номенклатура".Необходимо , чтобы было стандартно увидеть докумнет поступления из отчета, дважды кликнув по полю отчета.Но появляются только номера полей.
Вот код вызова отчета из этой формы:
 
&НаСервере
Процедура СформироватьОтчет(ИмяОтчета, ИмяВариантаНастроек = "ПоНоменклатуреКонтекст")
   
   Если Не ПравоДоступа("Использование", Метаданные.Отчеты[ИмяОтчета]) Тогда
       Возврат;
   КонецЕсли;
   
   // Загрузить настройки отчета из схемы компоновки.
   ОтчетОбъект = РеквизитФормыВЗначение(ИмяОтчета);
   АдресСхемы  = ПоместитьВоВременноеХранилище(ОтчетОбъект.СхемаКомпоновкиДанных, УникальныйИдентификатор);
   
   ОтчетОбъект.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы));
   ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек[ИмяВариантаНастроек].Настройки);
   
   // Добавить отбор по номенклатуре.
   ЭлементОтбора = ОтчетОбъект.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
   
   ЭлементОтбора.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных("Номенклатура");
   ЭлементОтбора.ВидСравнения   = ВидСравненияКомпоновкиДанных.Равно;
   ЭлементОтбора.ПравоеЗначение = ОтборНоменклатура;
   ЭлементОтбора.Использование  = Истина;
   
   // Вывести отчет.
   ОтчетОбъект.СкомпоноватьРезультат(ТаблицаРезультатаОтчета(ИмяОтчета));
   
КонецПроцедуры
 
Вот код формирования отчета из модуля отчета:
....
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
   ДанныеРасшифровки=Новый ДанныеРасшифровкиКомпоновкиДанных;//Добавлено
   ДанныеРасшифровки.Настройки=КомпоновщикНастроек.ПолучитьНастройки();//Добавлено
   МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиОтчета, ДанныеРасшифровки);

   Для Каждого ТекМакет Из МакетКомпоновки.Макеты Цикл

       Если ТипЗнч(ТекМакет.Макет) <> Тип("МакетОбластиКомпоновкиДанных") Тогда
           Продолжить;
       КонецЕсли;

       Для Каждого СтрокаТаблицыКомпоновки Из ТекМакет.Макет Цикл
           Для Каждого ЯчейкаТаблицыОбластиКомпоновки Из СтрокаТаблицыКомпоновки.Ячейки Цикл
               Для Каждого Элемент Из ЯчейкаТаблицыОбластиКомпоновки.Элементы Цикл
                   Если МассивЗаголовковРесурсов.Найти(Элемент.Значение) <> Неопределено Тогда

                       Параметр = ЯчейкаТаблицыОбластиКомпоновки.Оформление.Элементы.Найти(Новый ПараметрКомпоновкиДанных("ГоризонтальноеПоложение"));
                       Параметр.Значение = ГоризонтальноеПоложение.Центр;
                       Параметр.Использование = Истина;

                   КонецЕсли;
               КонецЦикла;
           КонецЦикла;
       КонецЦикла;

   КонецЦикла;

   //Создадим и инициализируем процессор компоновки
   ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина);

   //Создадим и инициализируем процессор вывода результата
   ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   ПроцессорВывода.УстановитьДокумент(ДокументРезультат);

   //Обозначим начало вывода
   ПроцессорВывода.НачатьВывод();
....
 
При двойном нажатии на поля отчета появляется только поле с цифрой.Как настроить расшифровку?


Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Как процедура называется в модуле отчета?
У отчета форма есть?
На форме отчета по идее должен быть реквизит "ДанныеРасшифровки".

Оффлайн anna_vs

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-25
  • Сайт: 
  • Профессия: Программист 1С
Процедура в модуле отчета - "ПриКомпоновкеРезультата".
У формы отчета есть реквизит "ДанныеРасшифровки", но отчет вызывается из формы справочника, и расшифровка должна происходить там, а там нет такого реквизита.Как его можно передать из формы отчета в форму справочника?

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Процедура в модуле отчета - "ПриКомпоновкеРезультата".
Какие параметры у этой процедуры?

У формы отчета есть реквизит "ДанныеРасшифровки", но отчет вызывается из формы справочника, и расшифровка должна происходить там, а там нет такого реквизита.Как его можно передать из формы отчета в форму справочника?
Из кода непонятно вызывается полноценная форма отчета или отчет возвращает только табличный документ.
Попробуйте тупо добавить новый реквизит формы справочника "ДанныеРасшифровки"

Оффлайн anna_vs

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-25
  • Сайт: 
  • Профессия: Программист 1С
ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
Уже пробовала добавлять новый реквизит - всё равно при расшифровке выдаются только цифры.

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Из кода непонятно вызывается полноценная форма отчета или отчет возвращает только табличный документ.
???

Оффлайн anna_vs

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-25
  • Сайт: 
  • Профессия: Программист 1С
Как посмотреть что возвращает отчет? При проверке в отладчике в форму отчета не заглядывается.Событие "ОбработкаРасшифровки" возникает в форме справочника.

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
ОтчетОбъект.<Имя отчета> (ReportObject.<Имя отчета>)
СкомпоноватьРезультат (ComposeResult)
Синтаксис:

СкомпоноватьРезультат(<Результат>, <ИнформацияРасшифровки>)
Параметры:

<Результат> (обязательный)

Тип: ТабличныйДокумент.
Табличный документ, в который будет выводиться результат.
<ИнформацияРасшифровки> (необязательный)

Переменная, в которую будет записана информация расшифровки.
Если не указано - расшифровка заполняться не будет.

Оффлайн anna_vs

  • *
  • Сообщений: 10
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-25
  • Сайт: 
  • Профессия: Программист 1С
Перем ИнформацияРасшифровки
...
&НаСервере
Процедура ОбновитьОтчет(ИмяОтчета)
   
   ТаблицаРезультатаОтчета = ТаблицаРезультатаОтчета(ИмяОтчета);
   ТаблицаРезультатаОтчета.Очистить();
   
   ОтчетОбъект = РеквизитФормыВЗначение(ИмяОтчета);
   ОтчетОбъект.СкомпоноватьРезультат(ТаблицаРезультатаОтчета,ИнформацияРасшифровки);
   
КонецПроцедуры


Это вызов отчета из формы справочника. В расшифровке - те же цифры.Как правильно использовать переменную "ИнформацияРасшифровки"?

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
По идее, это не переменная это реквизит формы и что самое печальное обработку расшифровки вы должны писать сами. В форме отчета у формы настраивается вывод результата и где храниться данные расшифровки. В произвольной форме этих свойств нет.
Ну и как бы... до сих пор мучает вопрос: почему просто не открывать полноценный отчет с предустановками? а не так как вы сейчас тяните только результат СКД. на свою форму.


Теги:
 

Как вызвать "Анализ субконто" из справочника "Контрагенты"

Автор EnigManРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 5738
Последний ответ 06 Фев 2012, 10:46
от cska-fanat-kz
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 3331
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Как сделать, чтобы поле в документе имело тип "ссылка на поле справочника"?

Автор друганРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 1442
Последний ответ 05 Мар 2017, 14:36
от Igor100500
Работа с формой Справочника "Физ.Лица" в ЗУП 2.5

Автор Митя_Просто_МитяРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 3309
Последний ответ 15 Дек 2011, 00:04
от Vit1501
Удалить запись из справочника "Сотрудники" уволенного

Автор Alex56Раздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 3055
Последний ответ 02 Фев 2014, 21:37
от LordWizard

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
148 Сообщений
alex0402
116 Сообщений
Norfolk
51 Сообщений
LexaK
48 Сообщений
MuI_I_Ika MuI_I_Ika
44 Сообщений
AsadRoman
22 Сообщений
друган
21 Сообщений
alexandr_ll
19 Сообщений
SlimShady
19 Сообщений
Константин5825
18 Сообщений

* Кто онлайн

  • Точка Гостей: 871
  • Точка Скрытых: 0
  • Точка Пользователей: 13
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal