Как вывести в журнале документов графу из справочника?

1. Bossy 28.03.17 16:54 Сейчас в теме
Как вывести в журнале документов графу из справочника? Есть справочник ОригиналыДокументов, в котором есть реквизиты Документ и Оригинал. И есть журнал документов "Реализация". Надо в нем вывести колонку из справочника, которая соответствует данному документу.
В какой функции это выводится и как?
Запрос примерно так выглядит:
"ВЫБРАТЬ
     |    ОригиналыДокументов.Документ,
     |    ОригиналыДокументов.Оригинал,
     |    РеализацияТоваров.Ссылка
     |ИЗ
     |    Справочник.ОригиналыДокументов КАК ОригиналыДокументов
     |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваров КАК РеализацияТоваров
     |        ПО ОригиналыДокументов.Документ = РеализацияТоваров.Ссылка"
Показать


форма обычная
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. пользователь 28.03.17 17:21
Сообщение было скрыто модератором.
...
6. корум 287 28.03.17 17:39 Сейчас в теме
(2) не надо графу. Поставь текстовое поле, или даже поле картинки (я не знаю, что есть у вас Оригинал).

Но если совсем никак, то да, и графу тоже можно.

Материал по теме
3. herfis 499 28.03.17 17:27 Сейчас в теме
В обычных формах заполнение значений доп-колонок динамического списка делается через оформление их ячеек в обработчиках ПриВыводеСтроки и ПриПолученииДанных. Если требуется запрос к БД, до расово верно это делать в ПриПолученииДанных, т.к. там хотя бы порцию данных можно обработать, а не по каждой строке запросы фигачить. Это тривиальная задача, гуглиться должна хорошо.
4. Bossy 28.03.17 17:34 Сейчас в теме
вот функция
СписокПриПолученииДанных
мДок = Новый Массив;

Для каждого Оформление Из ОформленияСтрок Цикл


мДок.Добавить(Оформление.ДанныеСтроки.Ссылка);

КонецЦикла;

	Запрос= новый Запрос;
	 Запрос.Текст=
	 "ВЫБРАТЬ
	 |	ОригиналыДокументов.Документ,
	 |	ОригиналыДокументов.Оригинал,
	 |	РеализацияТоваров.Ссылка
	 |ИЗ
	 |	Справочник.ОригиналыДокументов КАК ОригиналыДокументов
	 |		ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваров КАК РеализацияТоваров
	 |		ПО ОригиналыДокументов.Документ = РеализацияТоваров.Ссылка
	 |ГДЕ
	 |	ОригиналыДокументов.Документ В(&ТекДок)";
	 Запрос.УстановитьПараметр("ТекДок", мДок);


Результат = Запрос.Выполнить().Выгрузить();
Результат.ВыбратьСтроку();
Показать

в итоге все зависает...
5. Bossy 28.03.17 17:35 Сейчас в теме
Помогите пожалуйста, как это сделать ничего не нашла нигде!!!!!
10. корум 287 28.03.17 17:44 Сейчас в теме
(5) а я вот нашёл где-то...

(7) респект, солидарен с сан санычем :)
7. ditp 91 28.03.17 17:40 Сейчас в теме
мДок = Новый Массив; 
соотв = Новый Соответствие;

Для каждого Оформление Из ОформленияСтрок Цикл 
  мДок.Добавить(Оформление.ДанныеСтроки.Ссылка); 
  соотв[Оформление.ДанныеСтроки.Ссылка] = Оформление;
КонецЦикла; 

Запрос= новый Запрос; 
Запрос.Текст= 
"ВЫБРАТЬ 
|	ОригиналыДокументов.Оригинал, 
|	РеализацияТоваров.Ссылка 
|ИЗ 
|	Документ.РеализацияТоваров КАК РеализацияТоваров 
|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ОригиналыДокументов КАК ОригиналыДокументов 
|	ПО ОригиналыДокументов.Документ = РеализацияТоваров.Ссылка 
|ГДЕ 
|	РеализацияТоваров.Ссылка В(&ТекДок)"; 
Запрос.УстановитьПараметр("ТекДок", мДок); 

выб = Запрос.Выполнить().Выбрать();
Пока выб.Следущий() Цикл
  соотв[выб.Ссылка].Ячейки.Оригинал.УстановитьТекст(выб.Оригинал);
КонецЦикла;
Показать
корум; herfis; +2 Ответить
9. herfis 499 28.03.17 17:41 Сейчас в теме
Во, респект (7), не поленился :)
18. ditp 91 28.03.17 18:15 Сейчас в теме
(9) благодарю, хотя уверен, что текст в (8) потребовал большего времени и моска, чем код в (7) накалятькать ))
8. herfis 499 28.03.17 17:40 Сейчас в теме
Еще бы оно не зависало. Метод таблицы значений "ВыбратьСтроку" должен открывать таблицу значений на интерактивный просмотр.
Вызов ее при обновлении отображения динамического списка имеет непредсказуемые результаты.
В таблице "Результат" вы получили нужные соответствия.
Теперь нужно еще раз обойти оформления строк и записать нужные данные в оформления (находя данные в полученной таблице).
Я обычно, чтобы два раза оформления не обходить, при первом обходе заполнял соответствие оформлений ссылкам.
Тогда при обходе таблицы соответствий можно напрямую получать нужные оформления из соответствия.
11. herfis 499 28.03.17 17:54 Сейчас в теме
Если будет сильно подтормаживать при листании (справочник большой), стоит проиндексировать поле "Документ".
Но вообще это костыль конечно, от которого только в УФ избавились.
12. корум 287 28.03.17 17:56 Сейчас в теме
(11) лично отстреливал ентузиастов, пихающих что попало в форму списка, ещё в 7.7.
Дополнительное поле рядом так неудобно сделать??
и сразу "тормоза" исчезают, ибо нужно вытащить инфо только по одному элементу...
14. herfis 499 28.03.17 18:01 Сейчас в теме
(12) Инфо по одному элементу - это отдельный вариант. На него все не спишешь.
А в УФ вообще плюнули и разрешили сортировать по любому полю без оглядки на индексы.
Хочешь платить производительностью и есть чем платить - плати.
ИМХО, правильное бизнес-решение.
13. Bossy 28.03.17 17:59 Сейчас в теме
Спасибо всем огромное!!!!! Все получилось!!!!!!!!! Только единственно, что Оригинал - это булево, Надо чтоб галочка была, а ставится "Да"
15. Bossy 28.03.17 18:05 Сейчас в теме
Можно как нибудь галочку вывести вместо да?
16. ditp 91 28.03.17 18:09 Сейчас в теме
(15) можно. а заодно и запрос переписать
мДок = Новый Массив; 
соотв = Новый Соответствие;

Для каждого Оформление Из ОформленияСтрок Цикл 
  мДок.Добавить(Оформление.ДанныеСтроки.Ссылка); 
  соотв[Оформление.ДанныеСтроки.Ссылка] = Оформление;
КонецЦикла; 

Запрос= новый Запрос("ВЫБРАТЬ 
|    ОригиналыДокументов.Документ 
|ИЗ 
|    Справочник.ОригиналыДокументов КАК ОригиналыДокументов 
|ГДЕ 
|    ОригиналыДокументов.Документ В(&ТекДок) И ОригиналыДокументов.Оригинал"); 
Запрос.УстановитьПараметр("ТекДок", мДок); 

выб = Запрос.Выполнить().Выбрать();
Пока выб.Следущий() Цикл
  соотв[выб.Ссылка].Ячейки.Оригинал.УстановитьФлажок(Истина);
КонецЦикла;
Показать
17. ditp 91 28.03.17 18:12 Сейчас в теме
P.S. Если у вас в справочнике просто галочками отмечают документы, по котрым оригиналы получены/выданы, то лучше на встроенный механизм категорий посмотрели бы, кмк.
19. Bossy 28.03.17 18:22 Сейчас в теме
Это только относится к документам закрытых периодов. А так в справочник вносится при записи документа
20. Bossy 28.03.17 18:28 Сейчас в теме
Еще раз всем большое спасибо!!!!!!!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот