![]() |
![]() |
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
lirt82 24.07.19 - 12:00 | В ERP есть документ "Внутреннее потребление товаров" в таб. части Товары есть составной реквизит "Аналитика" тип Справочники, Доки, Перечисления. Запросом получаю данные для печати макета выбирая в запросе таб. часть Товары и если вывожу этот реквизит "АналитикаРасходов" то в результате запрос ругается "В запросе, формирующем временную таблицу, не могут выбираться вложенные таблицы", потому что в результате запроса в этом поле "АналитикаРасходов" получаю тип ТаблицаЗначений. Пробовал поле преобразовать через ВЫРАЗИТЬ КАК СТРОКА ругается на несовместимость типов. Как исправить? т.е. как этот реквизит "Аналитика" все-таки вывести в макет. | ||
Жан Пердежон 1 - 24.07.19 - 12:04 | у вас ошибка в запросе | ||
lirt82 2 - 24.07.19 - 12:09 | Функция ПолучитьДанныеДляПечатнойФормыЗ6(ПараметрыПечати, МассивОбъектов) Экспорт ДопКолонка = ФормированиеПечатныхФорм.ИмяДополнительнойКолонки(); ИспользуетсяДопКолонка = ЗначениеЗаполнено(ДопКолонка); Запрос = Новый Запрос; Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); Запрос.УстановитьПараметр("ВозвратнаяТара", Перечисления.ТипыНоменклатуры.МногооборотнаяТара); Запрос.Текст = "ВЫБРАТЬ | ВнутреннееПотреблениеТоваров.Ссылка, | ВнутреннееПотреблениеТоваров.Дата, | ВнутреннееПотреблениеТоваров.ВидЦены, | ВнутреннееПотреблениеТоваров.ВидЦены.ВалютаЦены, | Товары.АналитикаРасходов КАК ПричинаСписания//+ ДОБАВИЛ ПОЛЕ |ПОМЕСТИТЬ ТаблицаДокументов |ИЗ | Документ.ВнутреннееПотреблениеТоваров КАК ВнутреннееПотреблениеТоваров |ГДЕ | ВнутреннееПотреблениеТоваров.Ссылка В (&МассивОбъектов) |; | //////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Товары.Ссылка КАК Ссылка, | Товары.НомерСтроки КАК НомерСтроки, | Товары.Номенклатура КАК Номенклатура, | Товары.Характеристика КАК Характеристика, | Товары.Упаковка КАК Упаковка, | Товары.Количество КАК Количество, | Товары.КоличествоУпаковок КАК КоличествоУпаковок, | КОНЕЦПЕРИОДА(ТаблицаДокументов.Дата, ДЕНЬ) КАК ДатаПолученияЦены, | ТаблицаДокументов.ВидЦены КАК ВидЦены, | ТаблицаДокументов.ВидЦеныВалютаЦены КАК ВалютаЦены |ПОМЕСТИТЬ Товары |ИЗ | Документ.ВнутреннееПотреблениеТоваров.Товары КАК Товары | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаДокументов КАК ТаблицаДокументов | ПО Товары.Ссылка = ТаблицаДокументов.Ссылка |ГДЕ | Товары.Ссылка В(&МассивОбъектов) |; | //////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ПериодыЦенНоменклатуры.Ссылка, | ПериодыЦенНоменклатуры.НомерСтроки, | ЦеныНоменклатуры.Цена, | ЦеныНоменклатуры.Упаковка |ПОМЕСТИТЬ Цены |ИЗ | (ВЫБРАТЬ | Товары.Ссылка КАК Ссылка, | Товары.НомерСтроки КАК НомерСтроки, | ЦеныНоменклатуры.ВидЦены КАК ВидЦены, | ЦеныНоменклатуры.Номенклатура КАК Номенклатура, | ЦеныНоменклатуры.Характеристика КАК Характеристика, | МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период | ИЗ | Товары КАК Товары | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры | ПО Товары.ВидЦены = ЦеныНоменклатуры.ВидЦены | И Товары.Номенклатура = ЦеныНоменклатуры.Номенклатура | И Товары.Характеристика = ЦеныНоменклатуры.Характеристика | И Товары.ДатаПолученияЦены >= ЦеныНоменклатуры.Период | И Товары.ВалютаЦены = ЦеныНоменклатуры.Валюта | | СГРУППИРОВАТЬ ПО | Товары.Ссылка, | Товары.НомерСтроки, | ЦеныНоменклатуры.ВидЦены, | ЦеныНоменклатуры.Номенклатура, | ЦеныНоменклатуры.Характеристика) КАК ПериодыЦенНоменклатуры | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры | ПО ПериодыЦенНоменклатуры.Период = ЦеныНоменклатуры.Период | И ПериодыЦенНоменклатуры.ВидЦены = ЦеныНоменклатуры.ВидЦены | И ПериодыЦенНоменклатуры.Номенклатура = ЦеныНоменклатуры.Номенклатура | И ПериодыЦенНоменклатуры.Характеристика = ЦеныНоменклатуры.Характеристика |; | //////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Документы.Ссылка КАК Ссылка, | Документы.Номер КАК Номер, | Документы.Дата КАК ДатаДокумента, | Документы.Дата КАК ДатаСоставления, | Документы.Дата КАК ДатаСдачиВМонтаж, | Документы.Организация КАК Организация, | ПРЕДСТАВЛЕНИЕ(Документы.Склад) КАК СкладПредставление, | Документы.Склад КАК Склад, | "" "" КАК Руководитель, | "" "" КАК ДолжностьРуководителя, | "" "" КАК ГлавныйБухгалтер, | NULL КАК ДокументОснование, | Документы.Склад.ТекущийОтветственный КАК Кладовщик, | Документы.Склад.ТекущаяДолжностьОтветственного КАК ДолжностьКладовщика, | Документы.Ответственный.ФизическоеЛицо КАК Ответственный, | Документы.Склад.ТекущаяДолжностьОтветственного КАК ДолжностьКладовщикаОтправителя, | Документы.ВидЦены КАК УчетныйВидЦены, | Документы.ВидЦены.ВалютаЦены КАК УчетныйВидЦеныВалютаЦены, | ЗНАЧЕНИЕ(Перечисление.ИсточникиИнформацииОЦенахДляПечати.ПоВидуЦен) КАК ИсточникИнформацииОЦенахДляПечати |ИЗ | Документ.ВнутреннееПотреблениеТоваров КАК Документы |ГДЕ | Документы.Ссылка В(&МассивОбъектов) | |УПОРЯДОЧИТЬ ПО | ДатаДокумента, | Ссылка |; | //////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Товары.Ссылка КАК Ссылка, | Товары.Ссылка.ВидЦены.ВалютаЦены КАК Валюта, | Товары.Ссылка.Дата КАК Дата, | Товары.Номенклатура КАК Номенклатура, | Товары.Номенклатура.НаименованиеПолное КАК НоменклатураНаименование, | Товары.Характеристика.НаименованиеПолное КАК ХарактеристикаНаименование, | ПРЕДСТАВЛЕНИЕ(Товары.Номенклатура.ЕдиницаИзмерения) КАК ЕдиницаИзмерения, | Товары.Номенклатура." + ?(ИспользуетсяДопКолонка, ДопКолонка, "Код") + " КАК НоменклатурныйНомер, | ВЫБОР | КОГДА Товары.Номенклатура.ВидНоменклатуры.ТипНоменклатуры = &ВозвратнаяТара | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ КАК ЭтоВозвратнаяТара, | Товары.Номенклатура.СрокГодности КАК СрокСлужбы, | Товары.Количество КАК Количество, | ВЫРАЗИТЬ(ЕСТЬNULL(Цены.Цена, 0) / ЕСТЬNULL(Цены.Упаковка.Числитель, 1) * Товары.Количество КАК ЧИСЛО(15, 2)) КАК СуммаСНДС, | ВЫРАЗИТЬ(ЕСТЬNULL(Цены.Цена, 0) / ЕСТЬNULL(Цены.Упаковка.Числитель, 1) КАК ЧИСЛО(15, 2)) КАК Цена, | Товары.ПричинаСписания,//+ ДОБАВИЛ ПОЛЕ | Товары.НомерСтроки КАК НомерСтроки |ИЗ | Товары КАК Товары | ЛЕВОЕ СОЕДИНЕНИЕ Цены КАК Цены | ПО Товары.Ссылка = Цены.Ссылка | И Товары.НомерСтроки = Цены.НомерСтроки | |УПОРЯДОЧИТЬ ПО | Ссылка, | НомерСтроки |ИТОГИ ПО | Ссылка"; РезультатПакетаЗапросов = Запрос.ВыполнитьПакет(); Возврат Новый Структура( "РезультатПоШапке, РезультатПоТоварам", РезультатПакетаЗапросов[3], РезультатПакетаЗапросов[4]); КонецФункции | ||
Жан Пердежон 3 - 24.07.19 - 12:17 | //+ ДОБАВИЛ ПОЛЕ - вот тут ошибка. ты не поле добавил, а таблицу.уж за 10 лет можно было бы запросы подтянуть. | ||
lirt82 4 - 24.07.19 - 12:23 | (3) в запрос я добавил реквизит составного типа, если точнее:). Пни как исправить? | ||
hhhh 5 - 24.07.19 - 12:26 | (4) пернести это | Товары.АналитикаРасходов КАК ПричинаСписани//+ ДОБАВИЛ ПОЛЕ пониже | ||
lirt82 6 - 24.07.19 - 12:26 | через выбор когда все поля этого составного реквизита? их 38:) | ||
lirt82 7 - 24.07.19 - 12:37 | погодите... в свойствах реквизита АналитикаРасходов у таб. части Товары документа ВнутреннееПотребление указан тип "Характеристика.СтатьиРасходов" | ||
lirt82 8 - 24.07.19 - 12:37 | у этой характеристики тип составной...значит? | ||
Жан Пердежон 9 - 24.07.19 - 13:13 | "ВЫБРАТЬ
| ВнутреннееПотреблениеТоваров.Ссылка,
| ВнутреннееПотреблениеТоваров.Дата,
| ВнутреннееПотреблениеТоваров.ВидЦены,
| ВнутреннееПотреблениеТоваров.ВидЦены.ВалютаЦены,
| ВнутреннееПотреблениеТоваровТовары.АналитикаРасходов КАК ПричинаСписани//+ ДОБАВИЛ ПОЛЕ
|ПОМЕСТИТЬ ТаблицаДокументов
|ИЗ
| Документ.ВнутреннееПотреблениеТоваров КАК ВнутреннееПотреблениеТоваров
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВнутреннееПотреблениеТоваров.Товары КАК ВнутреннееПотреблениеТоваровТовары
| ПО ВнутреннееПотреблениеТоваров.Ссылка = ВнутреннееПотреблениеТоваровТовары.Ссылка
| ВнутреннееПотреблениеТоваровТовары.НомерСтроки=1
|ГДЕ
| ВнутреннееПотреблениеТоваров.Ссылка В (&МассивОбъектов) | ||
lirt82 10 - 24.07.19 - 13:39 | (9) не это первая вт, если в ней выбрать то в последующих ругается | ||
catena 11 - 24.07.19 - 13:44 | (10)Что ругается, как ругается, ты симптомы четко выражай.
Выбор поля в запросе от его типа не зависит. Ты "ДОБАВИЛ ПОЛЕ" в выборку из временной таблицы, а в самой временной таблице добавил? Если слишком запутанно для тебя, пользуйся конструктором, он лишнего выбрать не даст. | ||
lirt82 12 - 24.07.19 - 13:47 | все разобрался))) не в ту таблицу добавил поле, спутал с консолью, т.е. когда в конфу переносил)) получилось, всем спасибо. | ||
lirt82 13 - 24.07.19 - 13:49 | блин эта невнимательность постоянный бич |
|
Список тем форума |
Правила | Описание | Реклама на форуме | Волшебные решения | Поиск | Секции | Рейтинг | Книга знаний | Вики-миста (КЗ2) | Мобильная | Архив | Модераторы | Галерея | Регистрация | 18+ |