|
Ошибка при вызове метода контекста (Выполнить) | ☑ | ||
---|---|---|---|---|
0
3463
31.07.13
✎
15:36
|
Здравствуйте,помогите пожалуйста!вся запуталась уже.делаю гарантийный лист предприятие 8.2 УП 10.3. выдает ошибку :
Не удалось сформировать внешнюю печатную форму! Метод объекта не обнаружен (Выбрать) Функция Печать() Экспорт ТабДок = Новый ТабличныйДокумент; ВидДокумента = СсылкаНаОбъект.Метаданные().Имя; ИмяТабЧасти = "Товары"; Макет = ПолучитьМакет("ГарантийныйТалон"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ДокТабЧасть.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ДокТабЧасть.Номенклатура КАК Номенклатура, | ДокТабЧасть.ХарактеристикаНоменклатуры КАК Характеристика, | ДокТабЧасть.СерияНоменклатуры КАК Серия, | ПРЕДСТАВЛЕНИЕ(ДокТабЧасть.ЕдиницаИзмерения) КАК ПечЕдиницаИзмерения, | ПРЕДСТАВЛЕНИЕ(ДокТабЧасть.Номенклатура) КАК ПечНоменклатура, | ДокСерийныеНомера.СерийныйНомер КАК СерийныйНомер, | ДокТабЧасть.Количество КАК Количество, | ДокТабЧасть.НомерСтроки КАК НомерСтроки, | ЗначенияСвойствОбъектов.Значение.Наименование КАК Гарантия |ИЗ | Документ." + ВидДокумента + "." + ИмяТабЧасти + " КАК ДокТабЧасть | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ." + ВидДокумента + ".СерийныеНомера КАК ДокСерийныеНомера | ПО ДокТабЧасть.КлючСвязи = ДокСерийныеНомера.КлючСвязи | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ПО ДокТабЧасть.Номенклатура.Ссылка = ЗначенияСвойствОбъектов.Объект.Ссылка |ГДЕ | ДокТабЧасть.Ссылка = &ТекДок | И ДокСерийныеНомера.Ссылка = &ТекДок | И ЗначенияСвойствОбъектов.Свойство.Наименование = ""Гарантия"" | |УПОРЯДОЧИТЬ ПО | НомерСтроки, | ДокСерийныеНомера.НомерСтроки"; Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект); Макет = ПолучитьМакет("ГарантийныйТалон"); Запрос.УстановитьПараметр("ТекДок", СсылкаНаОбъект); Запрос.УстановитьПараметр("ИмяТабЧасти", "Товары"); ТабДокумент = Новый ТабличныйДокумент; Запрос = Новый Запрос; Шапка = Запрос.Выбрать(); Шапка = "ГАРАНТИЙНЫЙ ТАЛОН" ; Макет.ПолучитьОбласть("Шапка"); Шапка = Запрос.Выполнить().Выбрать(); Если НЕ Шапка.Следующий() Тогда Сообщить("Документ """+СсылкаНаОбъект+""" - основание Гарантийного талона не найдено", СтатусСообщения.Важное); Возврат Ложь; КонецЕсли; КонтактнаяИнформацияОрганизации = ПолучитьКонтактнуюИнформацию(Шапка.Организация); СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, ТекущаяДата()); Если Шапка.Организация.Наименование="ООО ""Оптион""" Тогда ОбластьЗаголовок = Макет.ПолучитьОбласть("ЗаголовокОПТИОН"); ИначеЕсли Шапка.Организация.Наименование="ООО ""Единая Региональная Торговая Компания""" Тогда ОбластьЗаголовок = Макет.ПолучитьОбласть("ЗаголовокЕРТК"); Иначе ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); КонецЕсли; ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьТаблицаШапка = Макет.ПолучитьОбласть("ТаблицаШапка"); ОбластьЗаголовок.Параметры.Заполнить(Шапка); ОбластьШапка.Параметры.Заполнить(Шапка); ОбластьТаблицаШапка.Параметры.Заполнить(Шапка); СтрокаРеквизитов = ""; Если СведенияОбОрганизации.ИНН<>"" Тогда СтрокаРеквизитов = СтрокаРеквизитов + "ИНН "+СведенияОбОрганизации.ИНН; КонецЕсли; Если СведенияОбОрганизации.КПП<>"" Тогда СтрокаРеквизитов = СтрокаРеквизитов + ", КПП "+СведенияОбОрганизации.ИНН; КонецЕсли; Если СведенияОбОрганизации.Свидетельство<>"" Тогда СтрокаРеквизитов = СтрокаРеквизитов + " "+СведенияОбОрганизации.Свидетельство; КонецЕсли; ОбластьЗаголовок.Параметры.ОрганизацияАдрес = СведенияОбОрганизации.ФактическийАдрес; ОбластьЗаголовок.Параметры.ОрганизацияРеквизиты = СтрокаРеквизитов; Если СведенияОбОрганизации.Телефоны<>0 Тогда ОбластьЗаголовок.Параметры.ОрганизацияТелефон = "телефон: "+СведенияОбОрганизации.Телефоны; КонецЕсли; стрСайт = КонтактнаяИнформацияОрганизации.Найти("Сайт", "Вид"); Если стрСайт<>Неопределено Тогда ОбластьЗаголовок.Параметры.ОрганизацияСайт = "сайт: "+стрСайт.Представление; КонецЕсли; стрEmail = КонтактнаяИнформацияОрганизации.Найти("Email", "Вид"); Если стрEmail<>Неопределено Тогда ОбластьЗаголовок.Параметры.ОрганизацияПочта = "электронная почта: "+стрEmail.Представление; КонецЕсли; ТабДокумент.Очистить(); ТабДокумент.Вывести(ОбластьЗаголовок); ТабДокумент.Вывести(ОбластьШапка); ТабДокумент.Вывести(ОбластьТаблицаШапка); ТабДокумент.НачатьАвтогруппировкуСтрок(); ОбластьЗаголовок = Макет.ПолучитьОбласть("ЗаголовокОПТИОН"); ОбластьЗаголовок = Макет.ПолучитьОбласть("ЗаголовокЕРТК"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьТаблицаШапка = Макет.ПолучитьОбласть("ТаблицаШапка"); ОбластьНоменклатура = Макет.ПолучитьОбласть("ТабНоменклатура"); ОбластьСерийныйНомер = Макет.ПолучитьОбласть("ТабСерийныйНомер"); Индекс = 0; ТекНоменклатура = Неопределено; ТекХарактеристика = Неопределено; ТекСерия = Неопределено; РезультатЗапроса = Запрос.Выполнить(); Обход = РезультатЗапроса.Выгрузить().Выбрать(); Пока Обход.Следующий() Цикл Если ТекНоменклатура <> Обход.Номенклатура ИЛИ ТекХарактеристика <> Обход.Характеристика ИЛИ ТекСерия <> Обход.Серия Тогда Индекс = Индекс + 1; ТекНоменклатура = Обход.Номенклатура; ТекХарактеристика = Обход.Характеристика; ТекСерия = Обход.Серия; ОбластьНоменклатура.Параметры.НомСтр = Индекс; ОбластьНоменклатура.Параметры.ПечНоменклатура = Обход.ПечНоменклатура + ФормированиеПечатныхФорм.ПредставлениеСерий(Обход); ОбластьНоменклатура.Параметры.Номенклатура = Обход.Номенклатура; ОбластьНоменклатура.Параметры.ЕдИзм = Обход.ЕдиницаИзмерения; ОбластьНоменклатура.Параметры.ПечЕдИзм = Обход.ПечЕдиницаИзмерения; ОбластьНоменклатура.Параметры.Количество = Обход.Количество; ТабДокумент.Вывести(ОбластьНоменклатура); КонецЕсли; ОбластьСерийныйНомер.Параметры.ПечСерийныйНомер = Обход.СерийныйНомер; ОбластьСерийныйНомер.Параметры.СерийныйНомер = Обход.СерийныйНомер; ОбластьСерийныйНомер.Параметры.ГарантийныйСрок = Обход.Гарантия; ТабДокумент.Вывести(ОбластьСерийныйНомер); КонецЦикла; КоличествоЭкземпляров = 1; НаПринтер = Истина; ТабДокумент.РазмерСтраницы="A4"; ТабДокумент.Автомасштаб=истина; ТабДокумент.ПолеСлева=20; ТабДокумент.ПолеСправа=10; ТабДокумент.ПолеСверху=10; ТабДокумент.ПолеСнизу=10; ТабДокумент.Показать("Гарантийный талон"); Возврат ТабДокумент; Возврат Неопределено; УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, 1, Ложь, "Гарантийный талон"); КонецФункции; |
|||
1
salvator
31.07.13
✎
15:37
|
Запрос = Новый Запрос;
Шапка = Запрос.Выбрать(); Это чо? |
|||
2
Starhan
31.07.13
✎
15:38
|
(0)
1. фотку в личку поставь 2. Покажи на какую строчку ругается. |
|||
3
3463
31.07.13
✎
15:39
|
я хотела в шапку записать "гарантийный талон"
|
|||
4
3463
31.07.13
✎
15:39
|
Шапка = Запрос.Выбрать();
на эту ругается |
|||
5
salvator
31.07.13
✎
15:40
|
(4) А у Запрос есть метод Выбрать()?
|
|||
6
3463
31.07.13
✎
15:42
|
А что нет?Выгрузить надо?((((((((((((
|
|||
7
wangoff
31.07.13
✎
15:43
|
Алена, тебе (1) все сказал. Ты текст запроса сделала.
А потом обнулила, сделав новый запрос. Вот потому и ругается. Короче, удали строчку Запрос = Новый Запрос; Перед Шапка = Запрос.Выбрать(); |
|||
8
Starhan
31.07.13
✎
15:44
|
(6)
Запрос = Новый Запрос; Шапка = Запрос.Выбрать(); Шапка = "ГАРАНТИЙНЫЙ ТАЛОН" ; Макет.ПолучитьОбласть("Шапка"); Шапка = Запрос.Выполнить().Выбрать(); нет ты же создала заново пустой запрос. Тут вообще чехарда какая-то |
|||
9
salvator
31.07.13
✎
15:45
|
Еще удали строку
Шапка = "ГАРАНТИЙНЫЙ ТАЛОН" ; и поудаляй строки, где по 100 раз переопределяешь переменные. |
|||
10
3463
31.07.13
✎
15:48
|
вы все очень хорошие и даже не ругаетесь, пока.но все равно ошибка эта
Не удалось сформировать внешнюю печатную форму! Метод объекта не обнаружен (Выбрать) сидела бы дома борщи варила,нет ведь понесло меня |
|||
11
salvator
31.07.13
✎
15:49
|
(10) Что тебе нужно было доработать в существующей, работающей печатной форме?
|
|||
12
3463
31.07.13
✎
15:50
|
с чего ты взял,что работающая она была.гарантийный талон надо сделать
|
|||
13
salvator
31.07.13
✎
15:51
|
РезультатЗапроса = Запрос.Выполнить();
Обход = РезультатЗапроса.Выгрузить().Выбрать(); замени на РезультатЗапроса = Запрос.Выполнить(); Обход = РезультатЗапроса.Выбрать(); |
|||
14
3463
31.07.13
✎
15:54
|
((( он все равно на это поле ругается
Шапка = Запрос.Выбрать(); |
|||
15
Fish
31.07.13
✎
15:57
|
(14) Убери эти строки:
Запрос = Новый Запрос; Шапка = Запрос.Выбрать(); Шапка = "ГАРАНТИЙНЫЙ ТАЛОН" ; |
|||
16
Fish
31.07.13
✎
15:58
|
А вообще, надо убрать весь текст из (0) и написать заново.
|
|||
17
3463
31.07.13
✎
15:59
|
Легко сказать
|
|||
18
Fish
31.07.13
✎
16:00
|
(17) (15) сделала?
|
|||
19
3463
31.07.13
✎
16:00
|
{ОбщийМодуль.УниверсальныеМеханизмы.Модуль(1051)}: Значение не является значением объектного типа (АвтоМасштаб)
Если НЕ ПечДокумент.АвтоМасштаб новая ошибка,сил моих дамских нет |
|||
20
3463
31.07.13
✎
16:00
|
да и вот результат
|
|||
21
Капитан О
31.07.13
✎
16:03
|
(19) ну и зачем ты в общий модуль всякую хню передаёшь?
|
|||
22
3463
31.07.13
✎
16:04
|
честно,не знаю,что сказать(
|
|||
23
3463
31.07.13
✎
16:04
|
не передавала я
|
|||
24
Капитан О
31.07.13
✎
16:06
|
(23) оно само?
|
|||
25
salvator
31.07.13
✎
16:06
|
Зачем тебе это
УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, 1, Ложь, "Гарантийный талон"); в функции, которая возвращает табличный документ? |
|||
26
Fish
31.07.13
✎
16:06
|
(22) А почему ты вообще решила делать этот гарантийный лист? Судя по коду из (0) у тебя нету даже малейшего представления о том, что ты делаешь. Попробуй почитать для начала умные книжки, посмотреть типовые примеры.
|
|||
27
Fish
31.07.13
✎
16:07
|
(25) У неё эта строчка никогда не выполнится, т.к. пере ней стоит:
Возврат ТабДокумент; Возврат Неопределено; |
|||
28
Капитан О
31.07.13
✎
16:07
|
(25) она к этой строке даже через два возврата дошла, заметил? ;)
|
|||
29
salvator
31.07.13
✎
16:08
|
(27)(28) Да, слона-то я и не приметил
|
|||
30
3463
31.07.13
✎
16:10
|
вот я все убрала,что вы сказали,все рано этот автомасштаб
|
|||
31
salvator
31.07.13
✎
16:11
|
Возврат Неопределено; - убери
УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, 1, Ложь, "Гарантийный талон"); - вызывай из процедуры печати, а не из функции получения Табличного Документа |
|||
32
Капитан О
31.07.13
✎
16:11
|
имхается мне, заставлять думать девушку бесполезно. ей нужен принц, который возьмёт и сделает
|
|||
33
Fish
31.07.13
✎
16:13
|
(31) Судя по ошибке (19) у неё и так эта функция вызывается откуда-то. Но понимания, как это работает вообще даже приблизительно имхо нет. Хотел было посоветовать отладчик, но сомневаюсь, что поможет.
|
|||
34
3463
31.07.13
✎
16:13
|
яведь день с ним сижу,и вот уж ни как не жду ,что мне кто-то что-то сделает
|
|||
35
Капитан О
31.07.13
✎
16:14
|
(34) ну пиши письму, посмотрим, чо там
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |