|
ВПФ Гарантийный талон | ☑ | ||
---|---|---|---|---|
0
dj_romeo
27.01.18
✎
17:20
|
Здравствуйте уважаемые!
Конфигурация Управление торговлей для Украины (2.3.28.1) 1С 8.3 Пытаюсь настроить внешнюю печатную форму в докумете Реализация товаров и услуг. Для этого а карточке номенклатуры добавлено свойство с наименованием "Гарантия" Снизу привожу код модуля Если в таком виде оставляю, то формируется печ. форма, только без серийников В запросе вижу, что серийник берется из табличной части, если он указан в серии. НО. Нужно вытащить просто серийник, серии не ведутся в базе. Пытался в запросе писать "ДокСерийныеНомера.СерийныйНомер КАК СерийныйНомер", но при печати выдает ошибку: "Не удалось сформировать внешнюю печатную форму! Ошибка при вызове метода контекста (Выполнить): {(8, 2)}: Поле не найдено "ДокСерийныеНомера.СерийныйНомер" <<?>>ДокСерийныеНомера.СерийныйНомер КАК СерийныйНомер," Подскажите пожалуйста, как вытащить серийный номер Вот сам код: Функция Печать() Экспорт ВидДокумента = СсылкаНаОбъект.Метаданные().Имя; ИмяТабЧасти = "Товары"; ТекДок = СсылкаНаОбъект; ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ДокТабЧасть.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ДокТабЧасть.Номенклатура КАК Номенклатура, | ДокТабЧасть.ХарактеристикаНоменклатуры КАК Характеристика, | ДокТабЧасть.СерияНоменклатуры КАК Серия, | ПРЕДСТАВЛЕНИЕ(ДокТабЧасть.ЕдиницаИзмерения) КАК ПечЕдиницаИзмерения, | ПРЕДСТАВЛЕНИЕ(ДокТабЧасть.Номенклатура) КАК ПечНоменклатура, | ДокСерийныеНомера.СерийныйНомер КАК СерийныйНомер, | ДокТабЧасть.Количество КАК Количество, | ДокТабЧасть.НомерСтроки КАК НомерСтроки, | ЗначенияСвойствОбъектов.Значение.Наименование КАК Гарантия |ИЗ | Документ." + ВидДокумента + "." + ИмяТабЧасти + " КАК ДокТабЧасть | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ПО ДокТабЧасть.Номенклатура.Ссылка = ЗначенияСвойствОбъектов.Объект.Ссылка | И ЗначенияСвойствОбъектов.Свойство.Наименование = ""Гарантия"" |ГДЕ | ДокТабЧасть.Ссылка = &ТекДок | |УПОРЯДОЧИТЬ ПО | НомерСтроки |"; Запрос = Новый Запрос; Запрос.Текст = ТекстЗапроса; Запрос.УстановитьПараметр("ТекДок", СсылкаНаОбъект); Запрос.УстановитьПараметр("ИмяТабЧасти", "Товары"); ТабДокумент = Новый ТабличныйДокумент; РезультатЗапроса = Запрос.Выполнить(); Макет = ПолучитьМакет("Гарантия"); Область = Макет.ПолучитьОбласть("Заголовок"); Область.Параметры.ТекстЗаголовок = "ГАРАНТИЙНОЕ ОБЯЗАТЕЛЬСТВО"; ТабДокумент.Вывести(Область); Область = Макет.ПолучитьОбласть("ПредставлениеОрганизации"); Область.Параметры.ПредставлениеОрганизации = ФормированиеПечатныхФорм.ОписаниеОрганизации(УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(ТекДок.Организация, ТекДок.Дата),"ПолноеНаименование,КодПоЕДРПОУ,ФактическийАдрес,Телефоны"); ТабДокумент.Вывести(Область); Область = Макет.ПолучитьОбласть("ТабШапка"); ТабДокумент.Вывести(Область); ОбластьНоменклатура = Макет.ПолучитьОбласть("ТабНоменклатура"); Индекс = 0; ТекНоменклатура = Неопределено; ТекХарактеристика = Неопределено; ТекСерия = Неопределено; Обход = РезультатЗапроса.Выбрать(); Пока Обход.Следующий() Цикл Если ТекНоменклатура <> Обход.Номенклатура ИЛИ ТекХарактеристика <> Обход.Характеристика ИЛИ ТекСерия <> Обход.Серия Тогда Индекс = Индекс + 1; ТекНоменклатура = Обход.Номенклатура; ТекХарактеристика = Обход.Характеристика; ТекСерия = Обход.Серия; ОбластьНоменклатура.Параметры.НомСтр = Индекс; ОбластьНоменклатура.Параметры.ПечНоменклатура = Обход.ПечНоменклатура; ОбластьНоменклатура.Параметры.Номенклатура = Обход.Номенклатура; ОбластьНоменклатура.Параметры.ЕдИзм = Обход.ЕдиницаИзмерения; ОбластьНоменклатура.Параметры.ПечЕдИзм = Обход.ПечЕдиницаИзмерения; ОбластьНоменклатура.Параметры.Количество = Обход.Количество; СерийныйНомер = ?(ЗначениеЗаполнено(Обход.СерийныйНомер),Обход.СерийныйНомер,""); ОбластьНоменклатура.Параметры.СерийныйНомер = СерийныйНомер; Гарантия = ?(ЗначениеЗаполнено(Обход.Гарантия),Обход.Гарантия,""); ОбластьНоменклатура.Параметры.ГарантийныйСрок = Гарантия; ТабДокумент.Вывести(ОбластьНоменклатура); КонецЕсли; КонецЦикла; Область = Макет.ПолучитьОбласть("ТабПодвал"); Область.Параметры.Ответственный = ?(ТекДок.Ответственный.Ссылка.Пустая()=1,"______________________",ТекДок.Ответственный); ТабДокумент.Вывести(Область); Возврат ТабДокумент; КонецФункции |
|||
1
Cyberhawk
27.01.18
✎
21:42
|
Сколько платят за решение вопроса?
|
|||
2
h-sp
27.01.18
✎
22:41
|
(0) а откуда взялось это странное слово ДокСерийныеНомера?
|
|||
3
dj_romeo
29.01.18
✎
20:13
|
(2) ну как бы в ОбщемМодуле УчетСерийныхНомеров есть такая функция "ПечатьСерийныхНомеров", через которую формируется общий макет СписокСерийныхНомеров.
С этой функции и содран код |
|||
4
cw014
29.01.18
✎
20:54
|
(3) Примкну к (1)
|
|||
5
dj_romeo
30.01.18
✎
12:01
|
(4) (1) я не понимаю, здесь форум, на котором можно получить помощь, или просто лавочка с бабушками, чтобы потрепаться про цены разработок?
|
|||
6
Cyberhawk
30.01.18
✎
13:04
|
(5) Ты даже ответить на вроде бы простой вопрос и удовлетворить наш праздный интерес не готов, чего же ты тогда ожидаешь в ответ? :)
|
|||
7
catena
30.01.18
✎
13:12
|
(3)"В запросе вижу, что серийник берется из табличной части, если он указан в серии. НО. Нужно вытащить просто серийник, серии не ведутся в базе."
Расшифруй что где хранится и откуда берется. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |