DaryaKoroleva
28.06.13
✎
14:03
Делаю внешнюю печатную форму. Добавила область «Приказ».
Но вылезает ошибка: «Ошибка при вызове метода контекста (ПолучитьОбласть): Область не найдена: »
Вывожу ее кодом:
ОбластьМакета = Макет.ПолучитьОбласть(«Приказ»);
ТабДокумент.Вывести(ОбластьМакета);
ДенисЧ
28.06.13
✎
14:04
Наверное, нет такой области…
1Cv8_accepted
28.06.13
✎
14:05
ОбластьМакета = ПолучитьМакет(«ИмяТвоегоМакета»).ПолучитьОбласть(«Приказ»);
1Cv8_accepted
28.06.13
✎
14:07
(0) Кстати, область, надеюсь, которая красными линиями выделяется (Ctrl+Shift+N), а не именованая область ячеек в табличном документе?
DaryaKoroleva
28.06.13
✎
14:09
(1) Есть =)
(3) Красными-красными =)
Cyberhawk
28.06.13
✎
14:11
Без фото в профиле метод ПолучитьОбласть() работать не будет
ДенисЧ
28.06.13
✎
14:11
(4) Не верю (с)
Скриншоты в студию
DaryaKoroleva
28.06.13
✎
14:19
ДенисЧ
28.06.13
✎
14:22
Ерундистика какая-то.
Может, макет не тот правишь.. А может (5) прав…
User_Agronom
28.06.13
✎
14:25
А все остальные область нормально получаются?
pessok
28.06.13
✎
14:25
а нафига в отдельную область выносить константу? моар кода?
User_Agronom
28.06.13
✎
14:26
+ (9) области
pessok
28.06.13
✎
14:27
а по делу — может не тот макет? например, пытаешься получить общий макет ТОРГ-12, в котором нет этой области?
DaryaKoroleva
28.06.13
✎
14:33
Все исправила!)
Дошло в чем дело =)
Надо было заменить сточку:
Макет = ПолучитьОбщийМакет(«ТОРГ12»);
На:
Макет = ПолучитьМакет(«ТОРГ12»);
И по этому, как бы я не меняла макет, который был добавлен в обработку, на печать выводился общий, в котором нет моих изменений)
Блин)))
DaryaKoroleva
28.06.13
✎
14:34
(12) Ну да)
DaryaKoroleva
28.06.13
✎
14:34
Спасибо)
Mitriy
28.06.13
✎
14:35
гы…
|
|||
DaryaKoroleva
28.06.13 — 14:03 |
Делаю внешнюю печатную форму. Добавила область «Приказ». Но вылезает ошибка: «Ошибка при вызове метода контекста (ПолучитьОбласть): Область не найдена: » Вывожу ее кодом: ОбластьМакета = Макет.ПолучитьОбласть(«Приказ»); ТабДокумент.Вывести(ОбластьМакета); |
||
ДенисЧ
1 — 28.06.13 — 14:04 |
Наверное, нет такой области… |
||
1Cv8_accepted
2 — 28.06.13 — 14:05 |
ОбластьМакета = ПолучитьМакет(«ИмяТвоегоМакета»).ПолучитьОбласть(«Приказ»); |
||
1Cv8_accepted
3 — 28.06.13 — 14:07 |
(0) Кстати, область, надеюсь, которая красными линиями выделяется (Ctrl+Shift+N), а не именованая область ячеек в табличном документе? |
||
DaryaKoroleva
4 — 28.06.13 — 14:09 |
(1) Есть =) (3) Красными-красными =) |
||
Cyberhawk
5 — 28.06.13 — 14:11 |
Без фото в профиле метод ПолучитьОбласть() работать не будет |
||
ДенисЧ
6 — 28.06.13 — 14:11 |
(4) Не верю (с) Скриншоты в студию |
||
DaryaKoroleva
7 — 28.06.13 — 14:19 |
http://s5.uploads.ru/uvGzH.png |
||
ДенисЧ
8 — 28.06.13 — 14:22 |
Ерундистика какая-то.
Может, макет не тот правишь.. А может (5) прав… |
||
User_Agronom
9 — 28.06.13 — 14:25 |
А все остальные область нормально получаются? |
||
pessok
10 — 28.06.13 — 14:25 |
а нафига в отдельную область выносить константу? моар кода? |
||
User_Agronom
11 — 28.06.13 — 14:26 |
+ (9) области |
||
pessok
12 — 28.06.13 — 14:27 |
а по делу — может не тот макет? |
||
DaryaKoroleva
13 — 28.06.13 — 14:33 |
Все исправила!) Дошло в чем дело =) Надо было заменить сточку: Макет = ПолучитьОбщийМакет(«ТОРГ12»); На: Макет = ПолучитьМакет(«ТОРГ12»); И по этому, как бы я не меняла макет, который был добавлен в обработку, на печать выводился общий, в котором нет моих изменений) Блин))) |
||
DaryaKoroleva
14 — 28.06.13 — 14:34 |
(12) Ну да) |
||
DaryaKoroleva
15 — 28.06.13 — 14:34 |
Спасибо) |
||
Mitriy 16 — 28.06.13 — 14:35 |
гы… |
|
TurboConf — расширение возможностей Конфигуратора 1С |
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Автор romanprogrammist, 29 ноя 2013, 21:30
0 Пользователей и 1 гость просматривают эту тему.
Ошибка при вызове метода контекста (ПолучитьОбласть): Область не найдена: НомерСтроки
Сам текст:
Если Тип = "Счет" Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
КонецЕсли;
ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
ОбластьКодов = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
ОбластьСкидок = Макет.ПолучитьОбласть("ШапкаТаблицы|Скидка");
ОбластьСуммы = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");
и тд
макет свой
В твоем макете отсутствует область «НомерСтроки» или названа по-другому.
Правильно ведите учет или пишите программы и вам воздастся!…
(Кстати — кнопочку Сказать Спасибо — никто не отменял)
- Форум 1С
-
►
Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4 -
►
Конфигурирование, программирование в 1С Предприятие 8 -
►
Счет для УТ 10.3: Ошибка при вызове метода контекста (ПолучитьОбласть)
Похожие темы (5)
Поиск
В платформе 1С сообщения об ошибках бывают достаточно запутаны, и без должных навыков разобраться в причинах достаточно сложно. Вот и сообщение об ошибке при вызове контекста может ввести в ступор начинающего разработчика. Однако в подавляющем большинстве случаев мы видим подобное сообщение, если разработчик допустил ошибку в своем коде. Причем речь зачастую идет не об орфографических ошибках, а о логических.
Исправляем ситуацию
Чтобы избавиться от этого неприятного сообщения об ошибке при вызове метода контекста, следует понимать, что контекстом называют методы платформы 1С. Значит в определенной строке кода воспользовались методом с неверными параметрами или вызвали его не от того владельца. Всегда внимательно и полностью читайте сообщения об ошибках – часто в них содержится указание на строку и метод, вызвавший ошибку. Это поможет сэкономить время на отладку и поиск проблемного места в коде.
Рассмотрим действия разработчика на примере со специально допущенной ошибкой. Мы запускаем на исполнение нижеприведенный кусок кода с запросом, в котором забыли дописать условие отбора. Компилятор 1С пропускает такую процедуру, так как орфографических ошибок в написании команд мы не допустили. Однако в режиме предприятия нас ждет такое сообщение об ошибке:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка,
| Номенклатура.ВерсияДанных КАК ВерсияДанных,
| Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
| Номенклатура.Родитель КАК Родитель,
| Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
| Номенклатура.Код КАК Код,
| Номенклатура.Наименование КАК Наименование,
| Номенклатура.Артикул КАК Артикул,
| Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
| Номенклатура.Предопределенный КАК Предопределенный,
| Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| ";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
КонецЦикла;
Приведенный текст ошибки программисту 1С скажет, что в модуле формы обработки «ЧтениеЗаписьXML на 152 строчке кода не может выполниться запрос. Причина в том, что на 17 строчке запроса нет чего-то, что ждал компилятор. Таким образом, чтобы убрать подобное сообщение, необходимо выяснить, что там должно быть и написать недостающий код.
Увидев вышеприведенный кусок кода, разработчик заметит, что в запросе есть служебное слово «ГДЕ», дающее сигнал 1С, что дальше будет условие. Но мы забыли дописать его и, естественно, система с помощью сообщения об ошибке спрашивает нас – «а где условие?». Чтобы исправить эту ситуацию необходимо либо убрать оператор «ГДЕ» из запроса, либо добавить условие.
Но ошибки могут быть не только в текстах запросов. Допустим, мы хотим выбрать всю номенклатуру и узнать, входит ли она в определенную группу. Проверка происходит с помощью метода «ПринадлежитЭлементу» и его параметра, который должен быть типа СправочникСсылка. Мы опять допускаем ошибку и вместо ссылки в параметр метода помещаем строку, содержащую имя переменной.
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка,
| Номенклатура.ВерсияДанных КАК ВерсияДанных,
| Номенклатура.ПометкаУдаления КАК ПометкаУдаления,
| Номенклатура.Родитель КАК Родитель,
| Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
| Номенклатура.Код КАК Код,
| Номенклатура.Наименование КАК Наименование,
| Номенклатура.Артикул КАК Артикул,
| Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| Номенклатура.ТипНоменклатуры КАК ТипНоменклатуры,
| Номенклатура.Предопределенный КАК Предопределенный,
| Номенклатура.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| НЕ Номенклатура.ЭтоГруппа ";
НужнаяГруппаЭлементов = Справочники.Номенклатура.НайтиПоНаименованию("Мебель");
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Сообщить(ВыборкаДетальныеЗаписи.Ссылка.ПринадлежитЭлементу("НужнаяГруппаЭлементов"));
КонецЦикла;
1С выдает настолько же информативное сообщение, из которого мы понимаем, что на 158 строке у 1 параметра неправильный тип. Но что же делать, если мы не знаем, какой тип должен быть? В этом нам поможет Синтакс-помощник, встроенный в платформу 1С.
В конфигураторе находим строку и метод, на который указывало сообщение об ошибке, и нажимаем на него правой кнопкой мыши. Выбираем пункт «Поиск в синтакс-помощнике» и платформа самостоятельно ищет справочную информацию по выделенному методу. В справке мы видим не только подробное описание параметров и самого метода, но и пример. Сверив пример с нашим кодом, приходит понимание, что кавычки не нужны и без них все работает.
Чаще всего причиной подобных ошибок выступают следующие факторы:
- Невнимательность;
- Отсутствие опыта или знаний;
- Несогласованность действий разработчиков друг с другом;
- Изменения в методах контекста в новых версиях платформы.
Но ошибки при разработке ПО случаются постоянно, поскольку иногда ошибаются даже специалисты с многолетним опытом. Самое главное – уметь исправлять их и учиться на них. Постепенно вы будете видеть сообщения об ошибках все реже и научитесь замечать подобные «опечатки» еще до запуска 1С.
Здравствуйте! Альфа авто 5.1.38.04 После закрытия базы в режиме 1с предприятие появление сообщение Прекращена работа программы «1cv8» Ознакомьтесь с заявлением о конфиденциальности в Интернете: http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0419 http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0419 Если заявление о конфиденциальности в Интернете недоступно, ознакомьтесь с его локальным вариантом: Делали Тестирование и исправление, утилитой проверяли chdbfl, чистили кэш, копировали *.1cd в другую папку, выгрузку-загрузку через *.dt — не помогло Подскажите, пожалуйста, как можно исправить ошибку? Спасибо! |
|
Анастасия, добрый день, уточните, пожалуйста, использовали ли Вы рекомендуемую версию платформы 1С (8.3.20.1789)? |
|
Здравствуйте, Светлана! да, использовали, тоже не помогло |
|
Анастасия, по вопросы работы платформы 1С рекомендуем обращаться в компанию, с которой заключен договор ИТС на платформу. |
|
Светлана, а сервер лицензирования как открыть? не получается подключиться в новой версии базы была база Альфа авто 5.1.10.09 (2017 год) из шаблона новой версии новый сервер лицензирования не устанавливали, может в этом ошибка? |
|
установка нового сервера лицензирования проблему не решило |
|
Та же самая ситуация, режим работы — файловый. Что было сделано, переустановка C++ Процесс выглядит следующим образом: |
|
Обновились до релиза 5.1.40.04 — не помогло |
|
Роман, добрый день, по работе платформы 1С нужно обращаться в компанию, с которой заключен договор ИТС на платформу 1С. |
|
#10
28.12.2022 09:08:46 При чем здесь платформа, просиходит краш после обновления релиза. Сам продукт вызывает краш платформы. |
|
#11
28.12.2022 09:36:05 Роман, за восстановление сеансов отвечает платформа 1С. Программный продукт может влиять на это только косвенно. Мы можем попробовать воспроизвести проблему, но возможно придется все таки обращаться в техподдержку по платформе 1С, т.к. только они могут сказать, что вызывает ошибку в платформе. Для воспроизведения нужна информация Изменено: Светлана Сулименко — 28.12.2022 10:15:58 |
|
#12
30.01.2023 14:18:02 Итак, так как далее процесс общения пошел с технической поддержкой тут ничего не писал. Проблему удалось победить собственными силами, однако кому то может помочь. Так же склоняюсь что это все таки косяк конфигурации, так как в прошлых релизах проблем нет, так же как и в других конфигурациях Итого, вводные данные: что было сделано: Решение оказалось не очень тривиальным, на сервере терминалов где работают пользователи, все учетные записи кроме учеток программистов заведены на русском языке Резюмируя — косяк в конфигурации раруса, т.к. в прошлом релизе такой ошибки небыло, в других программах так же нет ошибки. Прошу поставить на исправление |
|
#13
30.01.2023 17:55:27 Роман, добрый день! |
|
#14
31.01.2023 07:02:17 Учетные записи операционной системы |
|
#15
07.02.2023 12:57:32 Принято, не принято? Будет исправлено? Поставлена задача разработчикам? Что дальше? Меня интересует дальнейшая жизнь задачи |
|
#16
07.02.2023 14:04:27 Роман, добрый день! |
|
Александр Заглянувший Сообщений: 60 |
#17
09.02.2023 08:08:37 Добрый день. После обновления релиза на 6.1.03.17 невозможно распечатать счет на оплату (как старый, так и вновь созданый). Текст ошибки по причине: Я так понимаю, это связано с этим: * Добавлена возможность выводить QR код на печатную форму «Счет на оплату» и «Счет на оплату на авто». QR код выводится только в документах, только в случае если контрагент в счете — это физ.лицо или ИП; Каким образом (где) настраивается или отключается этот функционал? |
#18
09.02.2023 09:05:40 Александр, добрый день, указанная Вами ошибка не воспроизводится на типовой конфигурации релиза 6,1,03,17. Изменено: Светлана Сулименко — 09.02.2023 09:35:26 |
|
Александр Заглянувший Сообщений: 60 |
#19
09.02.2023 12:06:27
На стандартной форме ошибки нет. Спасибо. |
||
Александр Заглянувший Сообщений: 60 |
#20
09.02.2023 13:31:40 Ошибка в работе обработки загрузки/выгрузки документов клиент-банка. Сообщает об ошибке в кодировке, хотя на скриншоте видно, что все заполнено верно. Пробовали загружать данные из нескольких банков (расчетных счетов), ошибка появляется во всех случаях. Прикрепленные файлы |
#21
09.02.2023 13:53:59 Александр, направьте, пожалуйста, личным сообщением файл банковской выписки для воспроизведения ошибки. |
|
#22
09.02.2023 16:03:15 Александр, уточните, пожалуйста, у Вас база Альфа-Авто клиент-серверная? на какой ОС расположен сервер 1С? |
|
Александр Заглянувший Сообщений: 60 |
#23
09.02.2023 16:18:47
Серверная, PostgreSQL |
||
#24
09.02.2023 17:28:35 Александр, PostgreSQL на какой операционной системе? |
|
Александр Заглянувший Сообщений: 60 |
#25
10.02.2023 07:13:22 Ubuntu 20. До обновления до последнего релиза загрузка документов работала. Но вообще странно, что в окне выбора кодировки нет UTF-8. Изменено: Александр — 10.02.2023 07:17:07 |
Автор romanprogrammist, 29 ноя 2013, 21:30
0 Пользователей и 1 гость просматривают эту тему.
Ошибка при вызове метода контекста (ПолучитьОбласть): Область не найдена: НомерСтроки
Сам текст:
Если Тип = "Счет" Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
КонецЕсли;
ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
ТабДокумент.Вывести(ОбластьМакета);
ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
ОбластьКодов = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
ОбластьСкидок = Макет.ПолучитьОбласть("ШапкаТаблицы|Скидка");
ОбластьСуммы = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");
и тд
макет свой
В твоем макете отсутствует область «НомерСтроки» или названа по-другому.
Правильно ведите учет или пишите программы и вам воздастся!…
(Кстати — кнопочку Сказать Спасибо — никто не отменял)
- Форум База
-
►
Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4 -
►
Конфигурирование, программирование в 1С Предприятие 8 -
►
Счет для УТ 10.3: Ошибка при вызове метода контекста (ПолучитьОбласть)
Похожие темы (5)
Поиск
Бизнес
Не печатает квитанцию, пишет вот это: {Обработка.бит_ПечатьСчетИзвещений.МодульОбъекта(4136)}: Ошибка при вызове метода контекста (ПолучитьОбласть)… — вопрос №1586888
ЛеваяЧастьПустаяСтрока = мМакет.ПолучитьОбласть(«ЛеваяЧастьПустаяСтрока»); по причине: Область не найдена: ЛеваяЧастьПустаяСтрока
август 11, 2015 г.
-
Всего ответов: 1
-
Виталий
2-й в Технологиях
октябрь 3, 2015 г.
Здравствуйте. В 1С не печатает или где?
Или ошибка в макете (в макете нет определения области ЛеваяЧастьПустаяСтрока), или после обновления версии (или макета) изменилась функция печати, соотв-но нужны правки или макета, или функции печати.
Извините, дату вопроса просмотрел
Похожие вопросы