|
УТ 11,3 Дополнительные реквизиты во внешнюю печатную форму | ☑ | ||
---|---|---|---|---|
0
AlexNF
15.03.19
✎
09:26
|
Пытаюсь изучить создание внешних печатных форм.
Форму создал, работает, но не могу найти как правильно в нее подтянуть дополнительные реквизиты. Делаю договор - доп реквизит, это доверенность менеджера, заключающего этот договор, добавлен в справочник физ лиц. Нашел вариант: ДопСвойство = ДанныеПечати.Менеджер.ДополнительныеРеквизиты.Найти("Основание"); Значение=ДанныеПечати.Менеджер.ДополнительныеРеквизиты.Найти(ДопСвойство); УстановитьПараметр(ОбластьМакета, "ФИОМ", Значение); но то ли не работает, то ли не правильно обращаюсь... В общем может есть пример какой то работы с дополнительными реквизитами? |
|||
1
Mankubus
15.03.19
✎
09:39
|
(0) посмотри в отладчике.
И ещё почитай в СП что возвращает метод Найти у табличной части |
|||
2
AlexNF
15.03.19
✎
09:55
|
там ошибка
вот так у меня: ДопСвойство = ДанныеПечати.Менеджер.ДополнительныеРеквизиты.НайтиПоНаименованию("Основание"); Основание - это наименование дополнительного реквизита физ лица, которое является Пользователем "Менеджер" почти уверен что тут ошибка( |
|||
3
AlexNF
15.03.19
✎
10:14
|
Пишет
"метод объекта не обнаружен (НайтиПоНаименованию)" |
|||
4
FIXXXL
15.03.19
✎
10:20
|
(3) правильно пишет. откуда у ТЧ НайтиПоНаименованию?
|
|||
5
sqr4
15.03.19
✎
10:39
|
Для Каждого ТекСтрока из ДанныеПечати.Менеджер.ДополнительныеРеквизиты Цикл
Если ТекСтрока.Свойство.Имя = "Основание" Тогда //Тут возвращаешь что тебе нужно Прервать; КонецЕсли; КонецЦикла; Если допреквизитов много, юзай запрос. |
|||
6
AlexNF
15.03.19
✎
10:40
|
А как правильно?
Документ Заказ покупателя, в нем есть менеджер - надо подтянуть из физ лица этого менеджера, строковое значение доп реквизита с наименованием "Основание" Проще конечно на примере бы... |
|||
7
jsmith82
15.03.19
✎
10:41
|
жесть
|
|||
8
jsmith82
15.03.19
✎
10:41
|
прежде надо бы 1ску выучить
|
|||
9
jsmith82
15.03.19
✎
10:45
|
СвойствоОснование = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведений.НайтиПоНаименованию("Основание");
Отбор = Структура("Свойство", СвойствоОснование); МассивСтрок = ....Менеджер.ФизическоеЛицо.ДополнительныеРеквизиты.Найти(Отбор); Основание = ""; Если МассивСтрок.Количество() > 0 Тогда Основание = МассивСтрок[0].Значение; КонецЕсли; |
|||
10
jsmith82
15.03.19
✎
10:45
|
*ДополнительныеРеквизитыИСведения
*Менеджер.ФизическоеЛицо.ДополнительныеРеквизиты.НайтиСтроки(Отбор); |
|||
11
jsmith82
15.03.19
✎
10:47
|
>>НайтиПоНаименованию("Основание");
Наименование обычно в базе идёт как "Основание (Физические лица"); можно и полное задать в поиске, если других подобных нет |
|||
12
AlexNF
15.03.19
✎
11:07
|
СвойствоОснование = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Основание");
Отбор = Структура("Свойство", СвойствоОснование); МассивСтрок = ДанныеПечати.Менеджер.ФизическоеЛицо.ДополнительныеРеквизиты.НайтиСтроки(Отбор); Основание = ""; Если МассивСтрок.Количество() > 0 Тогда Основание = МассивСтрок[0].Значение; КонецЕсли; так? |
|||
13
AlexNF
15.03.19
✎
11:10
|
Я делаю, на основе встроенной печатной формы заказа клиента. Скопировал ее во внешнюю и теперь меняю.
сейчас пишет ошибку при сохранении: {ВнешняяОбработка.ДоговорР.МодульОбъекта(337,11)}: Процедура или функция с указанным именем не определена (Структура) Отбор = <<?>>Структура("Свойство", СвойствоОснование); (Проверка: Сервер) |
|||
14
SSSSS_AAAAA
15.03.19
✎
11:17
|
(13) Трындец...
Отбор = Новый Структура("Свойство", СвойствоОснование); |
|||
15
AlexNF
15.03.19
✎
11:33
|
Теперь при открытии формы. Поле объекта не обнаружено (Дополнительные реквизиты)
Я понимаю что для вас это вообще детские вопросы - но хочется разобраться самому. Поэтому и писал, что проще бы было на работающем примере посмотреть, но ни каких обработок для учебных целей не нашел ) |
|||
16
jsmith82
15.03.19
✎
12:54
|
ой вей, мэн
кидай обработину в студию |
|||
17
AlexNF
15.03.19
✎
13:48
|
Нашел вот такое решение:
ЗначениеМоегоРеквизита = УправлениеСвойствами.ЗначениеСвойства(ДокОбъект, "МойРеквизит"); Общий модуль УправлениеСвойствами // Возвращает значение дополнительного свойства объекта. // // Параметры: // Объект - ЛюбаяСсылка - ссылка на объект, например, СправочникСсылка.Номенклатура, // ДокументСсылка.ЗаказПокупателя, ... // Свойство - ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения - ссылка на // дополнительный реквизит, значение которого нужно получить. // - Строка - Имя дополнительного свойства. // // Возвращаемое значение: // Произвольный - любое значение, допустимое для свойства. // Если я верно понимаю - то это стандартная функция чтения этих доп реквизитов? |
|||
18
AlexNF
15.03.19
✎
13:50
|
Пытаюсь вот так прочитать:
ЗначениеМоегоРеквизита = УправлениеСвойствами.ЗначениеСвойства(СправочникСсылка.ФизическиеЛица, "Основание"); Пишет: {ВнешняяОбработка.ДоговорР.МодульОбъекта(355,72)}: Переменная не определена (СправочникСсылка) ЗначениеМоегоРеквизита = УправлениеСвойствами.ЗначениеСвойства(<<?>>СправочникСсылка.ФизическиеЛица, "Основание"); (Проверка: Сервер) |
|||
19
AlexNF
15.03.19
✎
13:52
|
Модуль УправлениеСвойствами - есть и в нем функция ЗначениеСвойства - тоже есть.
СправочникСсылка ФизическиеЛица тоже есть Или я как то не так на него ссылаюсь? |
|||
20
Сияющий в темноте
15.03.19
✎
14:08
|
СправочникСсылка.ФизическиеЛица это имя типа,сомневаюсь,что у вас есть такая переменная.
если из массива получили справочник,как обьект для печати,то будет ТекущийОбьект или подобное |
|||
21
AlexNF
15.03.19
✎
14:21
|
попробовал немного упростить и теперь хочу найти доп реквизит пользователя, а не его физ лица:
реквизит тот же ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеПечати.Менеджер.ДополнительныеРеквизиты, "Основание"); Пишет Метод объекта не обнаружен (методанные) Предположу, что что-то не выгружается в ДанныеПечати - Верно? |
|||
22
AlexNF
15.03.19
✎
14:27
|
вот от куда они берутся:
Функция ПолучитьДанныеДляПечатнойФормыЗаказаНаТоварыУслуги(МассивОбъектов, ПараметрыПечати) Экспорт Если ПараметрыПечати <> Неопределено И ПараметрыПечати.Свойство("ОтображатьСкидки") Тогда ОтображатьСкидки = ПараметрыПечати.ОтображатьСкидки; Иначе ОтображатьСкидки = (Константы.ОтображениеСкидокВПечатныхФормахДокументовПродажи.Получить() <> Перечисления.ВариантыВыводаСкидокВПечатныхФормах.НеВыводитьСкидки); КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Документы.Ссылка КАК Ссылка, | Документы.Номер КАК Номер, | Документы.Дата КАК Дата, | Документы.АдресДоставки КАК АдресДоставки, | Документы.Организация КАК Организация, | Документы.Организация КАК Исполнитель, | ВЫБОР КОГДА Документы.НалогообложениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС) | ИЛИ Документы.НалогообложениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяЕНВД) ТОГДА | ЛОЖЬ | ИНАЧЕ | ИСТИНА | КОНЕЦ КАК УчитыватьНДС, | ИСТИНА КАК ПоказыватьНДС, | ИСТИНА КАК ИспользоватьАвтоСкидки, | &ВыводитьДопКолонкиНДС КАК ПоказыватьНДСВСтроках, | """" КАК Тип, | &ПредставлениеДокумента КАК ПредставлениеДокумента, | &ПредставлениеВОшибке КАК ПредставлениеВОшибке, | Документы.Организация.Префикс КАК Префикс, | Документы.Контрагент КАК Контрагент, | Документы.Контрагент КАК Заказчик, | Документы.БанковскийСчет КАК БанковскийСчет, | Документы.БанковскийСчет.ТекстКорреспондента КАК БанковскийСчетТекстКорреспондента, | Документы.ЦенаВключаетНДС КАК ЦенаВключаетНДС, | Документы.Валюта КАК Валюта, | Документы.Менеджер.ФизическоеЛицо КАК Менеджер, | Документы.ДополнительнаяИнформация КАК ДополнительнаяИнформация, | Документы.Грузоотправитель КАК Грузоотправитель, | Документы.Грузополучатель КАК Грузополучатель |ИЗ | Документ.ЗаказКлиента КАК Документы |ГДЕ | Документы.Ссылка В(&МассивОбъектов) | |УПОРЯДОЧИТЬ ПО | Документы.МоментВремени |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | 1 КАК Порядок, | ЭтапыГрафикаОплаты.Ссылка КАК Ссылка, | ЭтапыГрафикаОплаты.НомерСтроки КАК НомерСтроки, | ЭтапыГрафикаОплаты.ДатаПлатежа КАК ДатаПлатежа, | ЭтапыГрафикаОплаты.ВариантОплаты КАК ВариантОплаты, | ЭтапыГрафикаОплаты.ПроцентПлатежа КАК ПроцентПлатежа, | ЭтапыГрафикаОплаты.СуммаПлатежа КАК СуммаПлатежа, | ЛОЖЬ КАК ЭтоЗалогЗаТару |ИЗ | Документ.ЗаказКлиента.ЭтапыГрафикаОплаты КАК ЭтапыГрафикаОплаты |ГДЕ | ЭтапыГрафикаОплаты.Ссылка В(&МассивОбъектов) | И ЭтапыГрафикаОплаты.СуммаПлатежа <> 0 | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | 2 КАК Порядок, | ЭтапыГрафикаОплаты.Ссылка КАК Ссылка, | ЭтапыГрафикаОплаты.НомерСтроки КАК НомерСтроки, | ЭтапыГрафикаОплаты.ДатаПлатежа КАК ДатаПлатежа, | ЭтапыГрафикаОплаты.ВариантОплаты КАК ВариантОплаты, | ЭтапыГрафикаОплаты.ПроцентЗалогаЗаТару КАК ПроцентПлатежа, | ЭтапыГрафикаОплаты.СуммаЗалогаЗаТару КАК СуммаПлатежа, | ИСТИНА КАК ЭтоЗалогЗаТару |ИЗ | Документ.ЗаказКлиента.ЭтапыГрафикаОплаты КАК ЭтапыГрафикаОплаты |ГДЕ | ЭтапыГрафикаОплаты.Ссылка В(&МассивОбъектов) | И ЭтапыГрафикаОплаты.Ссылка.ТребуетсяЗалогЗаТару | И ЭтапыГрафикаОплаты.СуммаЗалогаЗаТару <> 0 | |УПОРЯДОЧИТЬ ПО | НомерСтроки, | Порядок |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Таблица.Ссылка КАК Ссылка, | | ВариантыКомплектацииНоменклатуры.Ссылка КАК ВариантКомплектацииНоменклатуры, | ВариантыКомплектацииНоменклатуры.ВариантПредставленияНабораВПечатныхФормах КАК ВариантПредставленияНабораВПечатныхФормах, | ВариантыКомплектацииНоменклатуры.ВариантРасчетаЦеныНабора КАК ВариантРасчетаЦеныНабора, | Таблица.НоменклатураНабора КАК НоменклатураНабора, | Таблица.ХарактеристикаНабора КАК ХарактеристикаНабора, | | Таблица.НомерСтроки КАК НомерСтроки, | Таблица.Номенклатура КАК Номенклатура, | Таблица.Упаковка КАК Упаковка, | | Таблица.Количество КАК Количество, | Таблица.КоличествоУпаковок КАК КоличествоУпаковок, | | ВЫБОР КОГДА &ОтображатьСкидки ТОГДА | Таблица.Цена | ИНАЧЕ | Таблица.Сумма/Таблица.КоличествоУпаковок | КОНЕЦ КАК Цена, | | Таблица.Сумма КАК Сумма, | Таблица.СтавкаНДС КАК СтавкаНДС, | Таблица.СуммаНДС КАК СуммаНДС, | Таблица.ДатаОтгрузки КАК ДатаОтгрузки, | Таблица.Характеристика КАК Характеристика, | | ВЫБОР КОГДА &ОтображатьСкидки ТОГДА | Таблица.СуммаРучнойСкидки + Таблица.СуммаАвтоматическойСкидки | ИНАЧЕ | 0 | КОНЕЦ КАК СуммаСкидки, | | Таблица.Сумма + Таблица.СуммаРучнойСкидки + Таблица.СуммаАвтоматическойСкидки КАК СуммаБезСкидки, | Таблица.Содержание КАК Содержание, | | ВЫБОР КОГДА Таблица.Ссылка.ВернутьМногооборотнуюТару | И Таблица.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.МногооборотнаяТара) ТОГДА | ИСТИНА | ИНАЧЕ | ЛОЖЬ | КОНЕЦ КАК ЭтоВозвратнаяТара | |ПОМЕСТИТЬ Товары |ИЗ | Документ.ЗаказКлиента.Товары КАК Таблица | | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВариантыКомплектацииНоменклатуры КАК ВариантыКомплектацииНоменклатуры | ПО ВариантыКомплектацииНоменклатуры.Владелец = Таблица.НоменклатураНабора | И ВариантыКомплектацииНоменклатуры.Характеристика = Таблица.ХарактеристикаНабора | И ВариантыКомплектацииНоменклатуры.Основной | |ГДЕ | Таблица.Ссылка В(&МассивОбъектов) | И Таблица.Отменено = ЛОЖЬ |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Таблица.Ссылка КАК Ссылка, | Таблица.НоменклатураНабора КАК НоменклатураНабора, | Таблица.ХарактеристикаНабора КАК ХарактеристикаНабора, | МИНИМУМ(Таблица.НомерСтроки) КАК НомерСтроки, | СУММА(Таблица.Сумма) КАК Сумма, | СУММА(Таблица.СуммаНДС) КАК СуммаНДС, | МАКСИМУМ(Таблица.ДатаОтгрузки) КАК ДатаОтгрузки, | СУММА(Таблица.СуммаСкидки) КАК СуммаСкидки, | СУММА(Таблица.СуммаБезСкидки) КАК СуммаБезСкидки |ПОМЕСТИТЬ ВременнаяТаблицаНаборыПодготовка |ИЗ | Товары КАК Таблица | |ГДЕ | Таблица.НоменклатураНабора <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | |СГРУППИРОВАТЬ ПО | Таблица.Ссылка, | Таблица.НоменклатураНабора, | Таблица.ХарактеристикаНабора |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Товары.Ссылка КАК Ссылка, | Товары.ВариантКомплектацииНоменклатуры КАК ВариантКомплектацииНоменклатуры, | Товары.ВариантПредставленияНабораВПечатныхФормах КАК ВариантПредставленияНабораВПечатныхФормах, | Товары.ВариантРасчетаЦеныНабора КАК ВариантРасчетаЦеныНабора, | Товары.НоменклатураНабора, | Товары.ХарактеристикаНабора, | Товары.Номенклатура, | Товары.Характеристика, | ВЫБОР КОГДА Товары.ВариантКомплектацииНоменклатуры.НоменклатураОсновногоКомпонента = Товары.Номенклатура | И Товары.ВариантКомплектацииНоменклатуры.ХарактеристикаОсновногоКомпонента = Товары.Характеристика ТОГДА | ИСТИНА | ИНАЧЕ | ЛОЖЬ | КОНЕЦ КАК ОсновнаяКомплектующая, | Товары.СтавкаНДС КАК СтавкаНДС, | 0 КАК КоличествоПоУмолчанию, | Товары.Количество КАК Количество |ПОМЕСТИТЬ ВременнаяТаблицаНаборыДополнительноЧастьПервая |ИЗ | Товары КАК Товары |ГДЕ | Товары.НоменклатураНабора <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | Т.Ссылка КАК Ссылка, | ВариантыКомплектацииНоменклатурыТовары.Ссылка КАК ВариантКомплектацииНоменклатуры, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.ВариантПредставленияНабораВПечатныхФормах КАК ВариантПредставленияНабораВПечатныхФормах, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.ВариантРасчетаЦеныНабора КАК ВариантРасчетаЦеныНабора, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.Владелец КАК НоменклатураНабора, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.Характеристика КАК ХарактеристикаНабора, | ВариантыКомплектацииНоменклатурыТовары.Номенклатура КАК Номенклатура, | ВариантыКомплектацииНоменклатурыТовары.Характеристика КАК Характеристика, | ЛОЖЬ КАК ОсновнаяКомплектующая, | NULL КАК СтавкаНДС, | СУММА(ВариантыКомплектацииНоменклатурыТовары.Количество) КАК КоличествоПоУмолчанию, | 0 КАК Количество |ИЗ | Справочник.ВариантыКомплектацииНоменклатуры.Товары КАК ВариантыКомплектацииНоменклатурыТовары | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ Т.Ссылка ИЗ Товары КАК Т) КАК Т | ПО ИСТИНА |ГДЕ | ВариантыКомплектацииНоменклатурыТовары.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ Т.ВариантКомплектацииНоменклатуры ИЗ Товары КАК Т) | |СГРУППИРОВАТЬ ПО | Т.Ссылка, | ВариантыКомплектацииНоменклатурыТовары.Ссылка, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.Владелец, | ВариантыКомплектацииНоменклатурыТовары.Ссылка.Характеристика, | ВариантыКомплектацииНоменклатурыТовары.Номенклатура, | ВариантыКомплектацииНоменклатурыТовары.Характеристика, | ВариантыКомплектацииНоменклатурыТовары.Упаковка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Таблица.Ссылка, | Таблица.ВариантКомплектацииНоменклатуры, | Таблица.ВариантРасчетаЦеныНабора, | Таблица.ВариантПредставленияНабораВПечатныхФормах, | Таблица.НоменклатураНабора, | Таблица.ХарактеристикаНабора, | Таблица.Номенклатура, | Таблица.Характеристика, | МАКСИМУМ(Таблица.СтавкаНДС) КАК СтавкаНДС, | МАКСИМУМ(Таблица.ОсновнаяКомплектующая) КАК ОсновнаяКомплектующая, | СУММА(Таблица.КоличествоПоУмолчанию) КАК КоличествоПоУмолчанию, | СУММА(Таблица.Количество) КАК Количество |ПОМЕСТИТЬ ВременнаяТаблицаНаборыДополнительноЧастьВторая |ИЗ | ВременнаяТаблицаНаборыДополнительноЧастьПервая КАК Таблица | |СГРУППИРОВАТЬ ПО | Таблица.Ссылка, | Таблица.ВариантКомплектацииНоменклатуры, | Таблица.ВариантРасчетаЦеныНабора, | Таблица.ВариантПредставленияНабораВПечатныхФормах, | Таблица.НоменклатураНабора, | Таблица.ХарактеристикаНабора, | Таблица.Номенклатура, | Таблица.Характеристика |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Результат.Ссылка, | Результат.ВариантКомплектацииНоменклатуры, | Результат.ВариантРасчетаЦеныНабора, | Результат.ВариантПредставленияНабораВПечатныхФормах, | Результат.НоменклатураНабора, | Результат.ХарактеристикаНабора, | МАКСИМУМ(ВЫБОР | КОГДА Результат.ОсновнаяКомплектующая | ТОГДА Результат.СтавкаНДС | ИНАЧЕ null | КОНЕЦ) КАК СтавкаНДС, | ВЫРАЗИТЬ(МИНИМУМ(ВЫБОР | КОГДА Результат.КоличествоПоУмолчанию <> 0 И Результат.ОсновнаяКомплектующая | ТОГДА Результат.Количество / Результат.КоличествоПоУмолчанию | ИНАЧЕ null | КОНЕЦ) + 0.5 КАК Число(10,0)) - 1 КАК Количество |ПОМЕСТИТЬ ВременнаяТаблицаНаборыДополнительно |ИЗ | ВременнаяТаблицаНаборыДополнительноЧастьВторая КАК Результат |СГРУППИРОВАТЬ ПО | Результат.Ссылка, | Результат.ВариантКомплектацииНоменклатуры, | Результат.ВариантРасчетаЦеныНабора, | Результат.ВариантПредставленияНабораВПечатныхФормах, | Результат.НоменклатураНабора, | Результат.ХарактеристикаНабора |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВременнаяТаблицаНаборыДополнительно.ВариантКомплектацииНоменклатуры, | ВЫБОР КОГДА Таблица.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию) ТОГДА | ВЫБОР КОГДА ВременнаяТаблицаНаборыДополнительно.ВариантПредставленияНабораВПечатныхФормах = ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.ТолькоНабор) ТОГДА | ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие) | ИНАЧЕ | ВременнаяТаблицаНаборыДополнительно.ВариантПредставленияНабораВПечатныхФормах | КОНЕЦ | ИНАЧЕ | ВременнаяТаблицаНаборыДополнительно.ВариантПредставленияНабораВПечатныхФормах | КОНЕЦ КАК ВариантПредставленияНабораВПечатныхФормах, | ВЫБОР КОГДА Таблица.Ссылка.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию) ТОГДА | ВЫБОР КОГДА | ВЫБОР КОГДА ВременнаяТаблицаНаборыДополнительно.ВариантПредставленияНабораВПечатныхФормах = ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.ТолькоНабор) ТОГДА | ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие) | ИНАЧЕ | ВременнаяТаблицаНаборыДополнительно.ВариантПредставленияНабораВПечатныхФормах | КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие) | И ВременнаяТаблицаНаборыДополнительно.ВариантРасчетаЦеныНабора В (ЗНАЧЕНИЕ(Перечисление.ВариантыРасчетаЦенНаборов.ЦенаЗадаетсяЗаНаборРаспределяетсяПоЦенам),ЗНАЧЕНИЕ(Перечисление.ВариантыРасчетаЦенНаборов.ЦенаЗадаетсяЗаНаборРаспределяетсяПоДолям)) ТОГДА | ЗНАЧЕНИЕ(Перечисление.ВариантыРасчетаЦенНаборов.РассчитываетсяИзЦенКомплектующих) | ИНАЧЕ | ВременнаяТаблицаНаборыДополнительно.ВариантРасчетаЦеныНабора | КОНЕЦ | ИНАЧЕ | ВременнаяТаблицаНаборыДополнительно.ВариантРасчетаЦеныНабора | КОНЕЦ КАК ВариантРасчетаЦеныНабора, | Таблица.Ссылка КАК Ссылка, | Таблица.НоменклатураНабора КАК НоменклатураНабора, | Таблица.ХарактеристикаНабора КАК ХарактеристикаНабора, | Таблица.НомерСтроки КАК НомерСтроки, | ЕСТЬNULL(ВременнаяТаблицаНаборыДополнительно.Количество, 1) КАК КоличествоУпаковок, | ЕСТЬNULL(ВременнаяТаблицаНаборыДополнительно.Количество, 1) КАК Количество, | Таблица.Сумма КАК Сумма, | Таблица.СуммаНДС КАК СуммаНДС, | Таблица.ДатаОтгрузки КАК ДатаОтгрузки, | Таблица.СуммаСкидки КАК СуммаСкидки, | Таблица.СуммаБезСкидки КАК СуммаБезСкидки, | ВременнаяТаблицаНаборыДополнительно.СтавкаНДС КАК СтавкаНДС |ПОМЕСТИТЬ ВременнаяТаблицаНаборы |ИЗ | ВременнаяТаблицаНаборыПодготовка КАК Таблица | ЛЕВОЕ СОЕДИНЕНИЕ ВременнаяТаблицаНаборыДополнительно КАК ВременнаяТаблицаНаборыДополнительно | ПО Таблица.НоменклатураНабора = ВременнаяТаблицаНаборыДополнительно.НоменклатураНабора | И Таблица.ХарактеристикаНабора = ВременнаяТаблицаНаборыДополнительно.ХарактеристикаНабора | И Таблица.Ссылка = ВременнаяТаблицаНаборыДополнительно.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | | Товары.Ссылка КАК Ссылка, | Товары.ВариантПредставленияНабораВПечатныхФормах КАК ВариантПредставленияНабораВПечатныхФормах, | Товары.ВариантРасчетаЦеныНабора КАК ВариантРасчетаЦеныНабора, | Товары.НоменклатураНабора КАК НоменклатураНабора, | Товары.ХарактеристикаНабора КАК ХарактеристикаНабора, | Товары.ЭтоНабор КАК ЭтоНабор, | Товары.ЭтоКомплектующие КАК ЭтоКомплектующие, | | Товары.НомерСтроки КАК НомерСтроки, | Товары.Номенклатура КАК Номенклатура, | Товары.Номенклатура.Код КАК Код, | Товары.Номенклатура.Артикул КАК Артикул, | Товары.Номенклатура.НаименованиеПолное КАК НаименованиеПолное, | | ВЫБОР КОГДА Товары.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка) ТОГДА | ПРЕДСТАВЛЕНИЕ(Товары.Номенклатура.ЕдиницаИзмерения) | ИНАЧЕ | Товары.Упаковка.Наименование | КОНЕЦ КАК ЕдиницаИзмерения, | | Товары.КоличествоУпаковок КАК Количество, | | Товары.Цена КАК Цена, | | Товары.Сумма КАК Сумма, | Товары.СтавкаНДС КАК СтавкаНДС, | Товары.СуммаНДС КАК СуммаНДС, | НЕОПРЕДЕЛЕНО КАК ВидЦеныИсполнителя, | Товары.ДатаОтгрузки КАК ДатаОтгрузки, | ЕСТЬNULL(Товары.Характеристика.НаименованиеПолное, """") КАК Характеристика, | | ВЫБОР КОГДА ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1) = 1 ТОГДА | НЕОПРЕДЕЛЕНО | ИНАЧЕ | Товары.Упаковка.Наименование | КОНЕЦ КАК Упаковка, | | Товары.СуммаСкидки КАК СуммаСкидки, | | Товары.СуммаБезСкидки КАК СуммаБезСкидки, | Товары.Содержание КАК Содержание, | | Товары.ЭтоВозвратнаяТара КАК ЭтоВозвратнаяТара | |ИЗ ( | | ВЫБРАТЬ | Таблица.Ссылка, | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.НомерСтроки, 0) <> 0 ТОГДА | ВременнаяТаблицаНаборы.ВариантПредставленияНабораВПечатныхФормах | ИНАЧЕ | ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.ПустаяСсылка) | КОНЕЦ КАК ВариантПредставленияНабораВПечатныхФормах, | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.НомерСтроки, 0) <> 0 ТОГДА | ВременнаяТаблицаНаборы.ВариантРасчетаЦеныНабора | ИНАЧЕ | ЗНАЧЕНИЕ(Перечисление.ВариантыРасчетаЦенНаборов.ПустаяСсылка) | КОНЕЦ КАК ВариантРасчетаЦеныНабора, | Таблица.НоменклатураНабора, | Таблица.ХарактеристикаНабора, | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.НомерСтроки, 0) <> 0 ТОГДА | ИСТИНА | ИНАЧЕ | ЛОЖЬ | КОНЕЦ КАК ЭтоКомплектующие, | ЛОЖЬ КАК ЭтоНабор, | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.НомерСтроки, 0) <> 0 ТОГДА | ВременнаяТаблицаНаборы.НомерСтроки | ИНАЧЕ | Таблица.НомерСтроки | КОНЕЦ КАК НомерСтроки, | Таблица.Номенклатура, | Таблица.Количество, | Таблица.КоличествоУпаковок, | Таблица.Цена, | Таблица.Сумма, | Таблица.СтавкаНДС, | Таблица.СуммаНДС, | Таблица.ДатаОтгрузки, | Таблица.Характеристика, | Таблица.Упаковка, | Таблица.СуммаСкидки, | Таблица.СуммаБезСкидки, | Таблица.Содержание, | Таблица.ЭтоВозвратнаяТара | ИЗ | Товары КАК Таблица | ЛЕВОЕ СОЕДИНЕНИЕ ВременнаяТаблицаНаборы КАК ВременнаяТаблицаНаборы | ПО ВременнаяТаблицаНаборы.НоменклатураНабора = Таблица.НоменклатураНабора | И ВременнаяТаблицаНаборы.ХарактеристикаНабора = Таблица.ХарактеристикаНабора | И ВременнаяТаблицаНаборы.Ссылка = Таблица.Ссылка | | ГДЕ | Таблица.НоменклатураНабора = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | ИЛИ (Таблица.НоменклатураНабора <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | И ВременнаяТаблицаНаборы.ВариантПредставленияНабораВПечатныхФормах В (ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.ТолькоКомплектующие), | ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие))) | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | ВременнаяТаблицаНаборы.Ссылка, | ВременнаяТаблицаНаборы.ВариантПредставленияНабораВПечатныхФормах, | ВременнаяТаблицаНаборы.ВариантРасчетаЦеныНабора КАК ВариантРасчетаЦеныНабора, | ВременнаяТаблицаНаборы.НоменклатураНабора, | ВременнаяТаблицаНаборы.ХарактеристикаНабора, | ЛОЖЬ КАК ЭтоКомплектующие, | ИСТИНА КАК ЭтоНабор, | ВременнаяТаблицаНаборы.НомерСтроки, | ВременнаяТаблицаНаборы.НоменклатураНабора, | ВременнаяТаблицаНаборы.Количество, | ВременнаяТаблицаНаборы.КоличествоУпаковок, | ВЫБОР | КОГДА &ОтображатьСкидки ТОГДА | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.КоличествоУпаковок, 1) <> 0 ТОГДА | (ВременнаяТаблицаНаборы.СуммаБезСкидки) / ЕСТЬNULL(ВременнаяТаблицаНаборы.КоличествоУпаковок, 1) | ИНАЧЕ | 0 | КОНЕЦ | ИНАЧЕ | ВЫБОР КОГДА ЕСТЬNULL(ВременнаяТаблицаНаборы.КоличествоУпаковок, 1) <> 0 ТОГДА | (ВременнаяТаблицаНаборы.Сумма) / ЕСТЬNULL(ВременнаяТаблицаНаборы.КоличествоУпаковок, 1) | ИНАЧЕ | 0 | КОНЕЦ | КОНЕЦ КАК Цена, | ВременнаяТаблицаНаборы.Сумма КАК Сумма, | ВременнаяТаблицаНаборы.СтавкаНДС, | ВременнаяТаблицаНаборы.СуммаНДС, | ВременнаяТаблицаНаборы.ДатаОтгрузки, | ВременнаяТаблицаНаборы.ХарактеристикаНабора, | ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка) КАК Упаковка, | ВременнаяТаблицаНаборы.СуммаСкидки, | ВременнаяТаблицаНаборы.СуммаБезСкидки, | """", | ЛОЖЬ | ИЗ | ВременнаяТаблицаНаборы КАК ВременнаяТаблицаНаборы | ГДЕ | ВременнаяТаблицаНаборы.ВариантПредставленияНабораВПечатныхФормах В (ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.ТолькоНабор), | ЗНАЧЕНИЕ(Перечисление.ВариантыПредставленияНаборовВПечатныхФормах.НаборИКомплектующие)) |) КАК Товары | |УПОРЯДОЧИТЬ ПО | Товары.НомерСтроки, | ЭтоНабор УБЫВ |"; Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ТекстЗапросаКоэффициентУпаковки", Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки( "Товары.Упаковка", "Товары.Номенклатура")); Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); Запрос.УстановитьПараметр("ОтображатьСкидки", ОтображатьСкидки); Запрос.УстановитьПараметр("ПредставлениеДокумента", НСтр("ru = 'Заказ клиента'")); Запрос.УстановитьПараметр("ПредставлениеВОшибке", НСтр("ru = 'заказа клиента'")); Запрос.УстановитьПараметр("ВыводитьДопКолонкиНДС", Константы.ВыводитьДопКолонкиНДС.Получить()); ПакетРезультатовЗапроса = Запрос.ВыполнитьПакет(); СтруктураДанныхДляПечати = Новый Структура; СтруктураДанныхДляПечати.Вставить("РезультатПоШапке", ПакетРезультатовЗапроса[0]); СтруктураДанныхДляПечати.Вставить("РезультатПоЭтапамОплаты", ПакетРезультатовЗапроса[1]); СтруктураДанныхДляПечати.Вставить("РезультатПоТабличнойЧасти", ПакетРезультатовЗапроса[ПакетРезультатовЗапроса.Количество() - 1]); Возврат СтруктураДанныхДляПечати; КонецФункции |
|||
23
AlexNF
15.03.19
✎
14:27
|
в этих запросах - я ни че не понимаю(
|
|||
24
FIXXXL
15.03.19
✎
14:30
|
ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеПечати.Менеджер.*ФизЛицо, "Основание");
*ФизЛицо или как оно там у тебя называется |
|||
25
AlexNF
15.03.19
✎
14:43
|
В запросе вот так:
Документы.Менеджер.ФизическоеЛицо КАК Менеджер, мне нужно вытянуть доп реквизит или физ лица или Пользователя "Менеджер" Если брать из Менеджера, то видимо по образцу должно быть так: ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеПечати.Менеджер.ДополнительныеРеквизитыИСведения, "Основание"); Но так не работает, ругается на ДополнительныеРеквизитыИСведения - посмотрел справочник физ лиз и пользователей - там есть только ДополнительныеРеквизиты, поэтому заменил на ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеПечати.Менеджер.ДополнительныеРеквизиты, "Основание"); Пишет Метод объекта не обнаружен (методанные) Хотя вроде как я беру доп реквизит менеджера - который является элементом справочника пользователей, у которых есть доп реквизит... бля вообще запутался |
|||
26
AlexNF
15.03.19
✎
14:48
|
Вот так вот:
ЗначениеМоегоРеквизита =ДанныеПечати.Менеджер; Выводит ФИО физ лица |
|||
27
AlexNF
15.03.19
✎
15:14
|
Видимо в ДанныеПечати.Менеджер - содержится только значение ?
А можно во внешней печатной форме обратится не с запросу, а непосредственно к значению реквизита документа? |
|||
28
AlexNF
15.03.19
✎
15:20
|
Хотя нет, вот так:
ЗначениеМоегоРеквизита =ДанныеПечати.Менеджер.ДатаРождения; Выводится дата рождения! Почему же вот так: ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеПечати.Менеджер.ДополнительныеРеквизиты, "Основание"); Метод объекта не обнаружен (методанные) ??? |
|||
29
AlexNF
15.03.19
✎
15:31
|
Ошибка ссылается на вторую строку функции:
Функция ЗначениеСвойства(Объект, Свойство) Экспорт ПолучатьРеквизиты = УправлениеСвойствамиСлужебный.ЭтоОбъектМетаданныхСДополнительнымиРеквизитами(Объект.Метаданные()); Результат = ЗначенияСвойств(Объект, ПолучатьРеквизиты, Истина, Свойство); Если Результат.Количество() = 1 Тогда Возврат Результат[0].Значение; КонецЕсли; КонецФункции |
|||
30
FIXXXL
15.03.19
✎
17:02
|
(29) ЗначениеСвойства(ДанныеПечати.Менеджер, "Основание");
|
|||
31
AlexNF
18.03.19
✎
08:47
|
Спасибо тебе, добрый человек. Заработало!
|
|||
32
AlexNF
19.03.19
✎
12:34
|
А не подскажите еще, как доп реквизит самого документа вытянуть (заказ покупателя), во внешнюю печатную форму?
Доп Реквизит называется "Установка" |
|||
33
AlexNF
19.03.19
✎
13:41
|
ЗначениеМоегоРеквизита = ЗначениеСвойства(ДанныеДокумента, "Установка");
вот так ругается на методанные Метод объекта не обнаружен (методанные) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |