Как происходит вызов элемента справочника из отчета?

1. andrew87 07.07.08 06:14 Сейчас в теме
отчет СводнаяПлатежнаяВедомость - там при щелчке происзходит вызов формы элемента справочника сотрудники как это делается?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
3. Abadonna 3958 07.07.08 07:12 Сейчас в теме
Можно просто в поле Расшифровка вставить то же значение, что стоит в поле Выражение
Например, выводится значение ТЗ.Элемент, его же прописываем в поле Расшифровка.
И обязательно должно быть Таб.ТолькоПросмотр(1) иначе не сработает
4. kitt 323 07.07.08 07:30 Сейчас в теме
Простейший пример:

Открываешь конфигуратор, в меню выбираешь "Файл->Новый->Внешний отчет, обработка"

появляется форма новой внешней обработки. Изначально на ней расположены только две кнопки "Сформировать" и "Закрыть",
а в модуле формы создана заготовка процедуры Сформировать
//*******************************************
Процедура Сформировать()

КонецПроцедуры

Также к форме по умолчанию прикреплена Таблица с именем "Таблица". Чтобы не было путаницы нажимаем на закладку таблицы правой кнопкой мыши и выбираем "Задать имя таблицы". В появившемся диалоге вводим "Печать".

В этой таблице выбираем ячейку на пересечении строчки №2 и столбца №2, нажимаем на эту ячейку правой кнопкой, выбираем "Свойства".
В появившемся диалоге на закладке "Текст" в выпадающем списке "Тип" выбираем "Выражение", ниже в самом большом поле ввода на этой же закладке пишем ПечСотр, в поле "Расшифровка" тоже вписываем ПечСотр.

Нажимем "Ок". Не убирая выделение с текущей ячейки идем в меню "Таблица->Включить в секцию". В появившемся диалоге выбираем "Горизонтальные", нажимаем "Ок". В появишвемся диалоге названия секции вводим "СтрокаСотр" и снова нажимаем "Ок". Приготовления таблицы на этом окончены.
Теперь нужно вписать немного кода который создаст эту таблицу, наполнит ее нужным содержимым и выведет на экран.

Идем на закладку "Модуль" и после строки "Процедура Сформировать()" дописываем следующее, чтобы получилось примерно так:

//*******************************************
Процедура Сформировать()

	Таб = СоздатьОбъект("Таблица"); 
	Таб.ИсходнаяТаблица("Печать");
	
	СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
	СпрСотр.ВыбратьЭлементы();
	
	Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
	    ПечСотр = СпрСотр.ТекущийЭлемент();
		Таб.ВывестиСекцию("СтрокаСотр");
	КонецЦикла;
	
	Таб.Опции(0,0,0,0); 
	Таб.ТолькоПросмотр(1);
	Таб.Показать();
	
КонецПроцедуры
Показать


Сохраняем обработку через "Файл->Сохранить"

Запускаемся в режиме 1С:Предприятие, идем "Файл->Открыть..." выбираем только что сохраненную обработку, жмем "Сформировать" и смотрим результат.


Ну это только надводная часть айсберга, есть еще предопределенные функции "ОбработкаЯчейкиТаблицы()" для модуля формы где расположена таблица и "ОбработкаЯчейкиТаблицы()" в глобальном модуле которые все эти действия и выполняют.
2. kitt 323 07.07.08 06:58 Сейчас в теме
в конфигураторе в таблице в ячейке которая должна будет что то выводить есть поле расшифровка, туда нужно вписать название переменной которая будет содержать элемент справочника Сотрудники, а перед вызовом метода ВывестиСекцию() или ПрисоединитьСекцию() в программном коде этой переменной присваиваешь значение агрегатного типа (справочник, документ и т.д.)
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день