Содержание:
1. Ошибка при установке значения атрибута контекста
2. Ошибка при получении значения атрибута контекста
Одной из наиболее частых ошибок исполнения кода 1С являются ошибки, связанные с установкой реквизита либо получением реквизита через точку, либо ошибка при вызове функции или процедуры через точку. Все данные объекты являются атрибутами информационных объектов-владельцев, к которым они принадлежат. Рассмотрим примеры таких ошибок и причины их возникновения.
1. Ошибка при установке значения атрибута контекста
Ошибка при установке значения атрибута контекста говорит нам о невозможности присвоить выбранное значение определенному атрибуту информационного объекта. Вызвано это либо несовпадением типа атрибута и присваиваемого ей значения, отсутствием возможности присвоить значение выбранному атрибуту, так как его можно только читать, но не записывать в него, отсутствием прав у текущего пользователя на запись значений в данный атрибут. Например, в реквизит «ДатаДокумента» с типом «Дата» пытаемся записать строку, в реквизит с типом данных ссылки на документ пытаемся записать не ссылку, а объект, полученный по ссылке, что невозможно из-за несоответствия типов, что приводит к ошибке установки значения атрибута.
Другой пример – проходя циклом выборку запроса, пытаемся в колонку выборки записать значение, что невозможно, так как значения выборки запроса можно только считывать, а для того, чтобы можно было полученные из запроса данные изменять в коде, нужно пользоваться не выборкой, а выгружать результат запроса в таблицу значений, в таком случае в цикле по ней можно будет менять значения в колонках, но только на значения, соответствующие типу колонки. Либо у пользователя, под которым выполняется код, нет прав на изменение даты документа, при попытке записать в данный реквизит новую дату, будет выведено сообщение об ошибке установке значения, но в причине будет указано отсутствие прав у пользователя.
2. Ошибка при получении значения атрибута контекста
Ошибка при получении значения атрибута контекста указывает на невозможность прочитать значение атрибута объекта в силу его отсутствия, либо отсутствия прав на его чтение. Например, обращение к несуществующему реквизиту объекта, несуществующему полю выборки из запроса, несуществующему свойству элемента формы и т.п. Так же как пример можно рассмотреть получение текущего пользователя из параметров сеанса — если данный параметр сеанса не установлен, то тоже будет выведена ошибка получения значения атрибута контекста, но в причине будет указана попытка получения неинициализированного значения параметра сеанса.
При возникновении данных ошибок значения атрибута в 1Св первую очередь следует проверить существование атрибута, к которому обращаются, затем проверить совпадение типов значений атрибута и присваиваемого ему значения, затем уже проверить права на установку либо чтение значения. Проверить, является ли дело в правах либо дать права на действия с атрибутом, можно, установив привилегированный режим для совершения действия с данным атрибутом, прописав перед строчкой с ошибкой УстановитьПривилегированныйРежим(Истина), после строчки — УстановитьПривилегированныйРежим(Ложь).
Специалист компании «Кодерлайн»
Александр Суворов
Что то наверно накосячил, помогите найти в чем косяк. Вот код: Тип поля ВрНачало — Дата, но когда запускаю вылетает с ошибкой «Ошибка при установке значения атрибута контекста (ВидСравнения): Недопустимый тип сравнения Отбор[«ВрНачала»].ВидСравнения = ВидСравнения. ИнтервалВключаяГраницы; по причине: Недопустимый тип сравнения » перепробывал все типы, работает только с типом равно. в чем косяк??
сначала установи вид сравнения, а потом границы задавай
пробывал, вид сравнения устанваливать и до и после, и просто ставить «Больше», никак не катит (
дело в «Если Отбор.Найти(«ВрНачала») = Неопределено Тогда» клянусь своей треуголкой: одно из двух — либо поля такого нет принципиально в данных СписокЗаданийНаДень, либо оно имеет тип какой-то не кошерный
В отладчике открываю отбор, там есть тип поля «Врначала» тип Дата, и по умолчанию тип сравнения стоит «Равно», если ставить такой-же то все работает. Но мне нужен другой тип сравнения. (
Попробуй перед установкой отбора Отбор[«ВрНачала»].Использование = Ложь;
СписокЗаданийДень — это кто?
потом лезь в СП и внимательно читай про отбор этого типа.
Это регистр сведений, а ВрНачала — это его измерение
Если это набор записей: Использование: Только чтение. Описание: Тип: Отбор. Содержит объект Отбор, по которому осуществляется текущая фильтрация записей при считывании или записи набора. Список свойств объекта зависит от свойств регистра: для регистров сведений, для которых в конфигураторе установлен режим записи «Подчинение регистратору», отбор возможен только по регистратору, для периодических регистров сведений отбор возможен по периоду и значениям измерений, для непериодических — только по значению измерений. Важно! Отбор может устанавливаться только на равенство.
Регистр у меня непериодический, и способ записи независимый,вот толькоинтересно почему отбор нельзя по другому выставить Спасибо
Тэги:
Комментарии доступны только авторизированным пользователям
После обновления модуля 4.0.0.3 {ПланОбмена.Б_ОбменССайтом.Форма.ФормаСписка.Форма(193)}: Метод объекта не обнаружен (ЗаполнитьПорядокПостроителяТоваров) Когда будет обновление модуля для 1С ? |
|
Администратор Сообщений: 4915 |
Посмотрю в чем дело. Если ошибка у меня воспроизведется — в новой версии будет поправлено. |
Администратор Сообщений: 4915 |
В версии 4.0.0.6 эта бага будет поправлена. |
а когда версия 4.0.0.6 — просто без этого тестить трудновато |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#5 28.04.2014 12:27:51
Специально для вас сейчас собрал. Можете скачать по ссылке http://yadi.sk/d/49KQrpWHNUT6V |
||
спасибо! Будем дальше изучать . |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#7 28.04.2014 15:29:08
Не за что. Если что — пишите. Баги исправим, замечания или предложения рассмотрим и, возможно, добавим. |
||
вот такая ошибка выходит например, при попытке обмена заказами: УТ 10.3.29.1 модуль обмена 4.0.0.3 и 4.0.0.6 по ссылке выше попробовали. Такая же ошибка выходила и при выгрузке товаров у html-описания товара. видимо не нравиться MaxLength. описания все удалили, обмен товарами прошел. а заказы не ходят. |
|
Администратор Сообщений: 4915 |
Да, есть такая проблема в XDTO… Посмотрю, что можно сделать. Придется проверять длину на данные, хотя и не хотелось бы, т.к. упадет скорость.. |
Александр Денисюк
Администратор Сообщений: 4915 |
#10 28.04.2014 16:05:48
С описанием товаров поправил, а вот с контрагентом не совсем понятно.Походу первоначально он пришел с сайта и у него длина Ид больше 40.. |
||
Пользователь 9984 Эксперт Сообщений: 303 |
#11 28.04.2014 16:23:34
Похоже что так. Спасибо! Может скомпилируете сборку на попробовать? skype: bob_kulikoff |
||
Александр Денисюк
Администратор Сообщений: 4915 |
#12 28.04.2014 16:37:30
Тут http://yadi.sk/d/JngBHM_3NWm5N лежит 4.0.0.7 |
||||
Спасибо! Теперь обмен с заказами прошел легко и непринужденно. Александр, не подскажите, не планируется ли обмен «рекомендуемых товаров», т.е. сопутки? Новый компонент для сопутки уже есть, а можно ли будет ее штатно выгружать? Пока для себя делаем с новым обменом на произвольном справочнике. |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#14 28.04.2014 16:53:30
Пока, насколько мне известно, не планируется. Сейчас надо бы модули обмена оттестировать и выпустить адаптации. А в будущем посмотрим. |
||
Александр, тестируем дальше. Создали справочник c одним реквизитом и одной ТЧ. Типы данных ссылочные на номенклатуру. В выгрузке отмечаем только «обмен пользовательскими справочниками». При выгрузке сразу ошибка: {ОбщийМодуль.Б_ПроцедурыОбменаССайтом.Модуль(144 }: Ошибка при вызове метода контекста (Выполнить) |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#16 29.04.2014 13:22:32
Тут есть нюанс. Если вы сами создаете свой справочник, то вам его нужно добавить в состав узла Б_ОбменССайтом. К сожалению 1С не позволяет сразу указать всевозможные справочники, поэтому по там стоят только типовые. |
||
Идем еще проще. Создали справочник с одним текстовым реквизитом. При записи элемента получаем сообщение: Не удалось зарегистрировать изменение для элемента 0000000001. Элемент не будет отправлен на сайт Битрикс в режиме изенений. |
|
Зарегистрировали в узле. Но сейчас созданный пользовательский справочник с одним текстовым реквизитом не выгружается: Выгрузка информации по пользовательским справочникам Перед этим, штатный справочник «Должности организаций» выгрузился без проблем. |
|
Администратор Сообщений: 4915 |
Может там есть нечитаемый символ? Ошибка как раз во время разбора XML на стороне сайта. |
Александр, а табличная часть справочника не выгружается, правильно? |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#21 29.04.2014 15:05:29
Нет, не выгружается. |
||
кстати после интеграции Ошибка при выполнении обработчика — ‘ПриЗаписи’ |
|
Как я понял |
|
Александр Денисюк
Администратор Сообщений: 4915 |
#24 30.04.2014 10:44:40
Задумывалось, что все документы, которые влияют на заказ, должны регистрировать эти заказы. Но вообще, можно указать только заказы и отгрузки. |
||
Александр Денисюк
Администратор Сообщений: 4915 |
#25 30.04.2014 11:25:33
В следующей версии будет поправлено. |
||
-
30.09.2011, 06:41
#1
Пришел за помощью
Ошибка внешней компоненты ПРИ ПЕЧАТИ ШТРИХ-КОДА
Доброго времени суток !
Имеется 1С:Предприятие 8.2 (8.2.13.219) Конфигурация Управление торговлей, редакция 11.0 (11.0.6.9)
Проблемы заключается в следующем: Необходимо распечатать этикетку со штрих-кодом. И при печати появляется «ошибка внешней компоненты» если кликнуть подробно то появлется сие сообщение:
{Обработка.ПечатьЭтикетокИ Ценников.МодульМенеджера(24 5)}: Ошибка при установке значения атрибута контекста (РазмерШрифта)
ВнешняяКомпонента.РазмерШ� �ифта = ПараметрыШтрихкода.Размер� �рифта;
по причине:
Ошибка внешней компонентыВот такие дела. Кто с таким сталкивался и как победил ? Заранее спасибо !
Последний раз редактировалось VDIGIT; 30.09.2011 в 06:41.
Причина: Опечатка
-
07.10.2011, 19:59
#2
Помогает людям
А компонента 1С: Печать штрихкода установлена? если нет, то такая есть на диске ИТС
-
10.10.2011, 06:33
#3
Пришел за помощью
Сообщение от AVS300
А компонента 1С: Печать штрихкода установлена? если нет, то такая есть на диске ИТС
Установлена (причем вариантов компоненты немерено было переставлено). «Ошибка» в самой конфигурации, а точнее в размере шрифта. Слегка изменил саму конфигурацию (и само формирование и печать) и все заработало как надо ! Только надо немного доделать, чтобы было на «автоматическом» уровне, а то лезть и править конфигурацию не есть гут ! как сделаю выложу !
-
29.01.2012, 19:46
#4
Гость форума
Сообщение от VDIGIT
Установлена (причем вариантов компоненты немерено было переставлено). «Ошибка» в самой конфигурации, а точнее в размере шрифта. Слегка изменил саму конфигурацию (и само формирование и печать) и все заработало как надо ! Только надо немного доделать, чтобы было на «автоматическом» уровне, а то лезть и править конфигурацию не есть гут ! как сделаю выложу !
блин! будь другом! подскажи как вышел из ситуёвины!… клинит напроч что-то…
-
09.04.2012, 06:36
#5
Гость форума
Сабж
Столкнулись с такой же проблемой: при печати созданного в 1С Розница 8.2 штрихкода выводилось сообщение: . При переходе в конфигуратор выдавалось более подробное описание:
Ошибка времени выполнения:
{Обработка.ПечатьЭтикетокИ Ценников(256)}: Ошибка при установке значения атрибута контекста (РазмерШрифта) в модуле Обработка.ПечатьЭтикетокИ� �енников, строка 256..
При этом созданная «этикетка по умолчанию», содержащая шрихкод, прекрасно выводилась на печать до тех пор пока не изменялся ее размер. Изменение параметров штрихкода-картинки («растянуть», «реальный размер», «пропорционально») никакого эффекта не давали.
Победить проблему не удалось, зато удалось ее «замаскировать»:
1. В конфигураторе был задействован режим отладки: меню Отладка\ Остановка по ошибке\ ставим галочку в пункт Останавливаться по ошибке и сохраняемся (Сделайте бекап базы и/или конфигурации на всякий пожарный случай)
2. Запускаем одновременно с конфигуратором (можно прямо из него) 1С и повторяем событие ошибки.
3. Нас перебрасывает в конфигуратор на нужную нам строку в которой как-раз и стоит параметр «размер шрифта»
4. Закомментируем (то есть «спрячем» от исполнения программой) эту строку кода: перед строкой впереди поставим два слэша — \\ (строка поменяет цвет текста на зеленый)
5. Сохраняем конфигурацию и перезапускаем 1С
6. В 1Ске делаем следующее: открываем шаблон нашей этикетки и видим, что рядом с надписью: «Тип кода (выборка) EAN13» чуть правее стоит галочка в пункте «Отображать текст». Снимаем галочку.
7. Теперь сформированный штрихкод будет отображаться просто как штрихкод, без записи его значения в цифровом отображении (с размером шрифта этих цифр и происходит сбой при выводе на печать).
8. Создаем свою этикетку, правим ее, вставляем штрихкод и растягиваем его как нам нужно.
9. Если кроме штрихкода вам нужны еще и цифры составляющие его, то ниже/выше/рядом со штрихкодом вставьте еще один, но уже в текстовом виде (при вставке штриха 1С вас спросит – вставить ли его как картинку – откажитесь и получите штрихкод в цифровом символьном виде) и отредактируйте что бы оба штриха были у вас рядом и выглядели так как вам нужно.
Это конечно не решение проблемы, но это поможет вам сделать этикетку на печати нужного вам вида и размера.P.S. Для тех кто мучается с выводом текста этикетки на печать (этикетка печатается со смещением от края/ распечатывается кусками на 4-6 наклеек/ печатается криво и не позволяет менять размер шрифта и пр.): не забудьте что в 1С 8.2 есть в верхнем левом углу меню Файл\ Параметры страницы так же отвечающие за вывод текста на печать (а так же есть настройки отображения при печати в самом драйвере принтера – щелкните по принтеру правой клавишей мыши и настройте).
Всем удачи.
Что то наверно накосячил, помогите найти в чем косяк. Вот код: Тип поля ВрНачало — Дата, но когда запускаю вылетает с ошибкой «Ошибка при установке значения атрибута контекста (ВидСравнения): Недопустимый тип сравнения Отбор[«ВрНачала»].ВидСравнения = ВидСравнения. ИнтервалВключаяГраницы; по причине: Недопустимый тип сравнения » перепробывал все типы, работает только с типом равно. в чем косяк??
сначала установи вид сравнения, а потом границы задавай
пробывал, вид сравнения устанваливать и до и после, и просто ставить «Больше», никак не катит (
дело в «Если Отбор.Найти(«ВрНачала») = Неопределено Тогда» клянусь своей треуголкой: одно из двух — либо поля такого нет принципиально в данных СписокЗаданийНаДень, либо оно имеет тип какой-то не кошерный
В отладчике открываю отбор, там есть тип поля «Врначала» тип Дата, и по умолчанию тип сравнения стоит «Равно», если ставить такой-же то все работает. Но мне нужен другой тип сравнения. (
Попробуй перед установкой отбора Отбор[«ВрНачала»].Использование = Ложь;
СписокЗаданийДень — это кто?
потом лезь в СП и внимательно читай про отбор этого типа.
Это регистр сведений, а ВрНачала — это его измерение
Если это набор записей: Использование: Только чтение. Описание: Тип: Отбор. Содержит объект Отбор, по которому осуществляется текущая фильтрация записей при считывании или записи набора. Список свойств объекта зависит от свойств регистра: для регистров сведений, для которых в конфигураторе установлен режим записи «Подчинение регистратору», отбор возможен только по регистратору, для периодических регистров сведений отбор возможен по периоду и значениям измерений, для непериодических — только по значению измерений. Важно! Отбор может устанавливаться только на равенство.
Регистр у меня непериодический, и способ записи независимый,вот толькоинтересно почему отбор нельзя по другому выставить Спасибо
Тэги:
Комментарии доступны только авторизированным пользователям
Heltarion 2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
||||
1 |
||||
02.12.2011, 11:18. Показов 9775. Ответов 11 Метки нет (Все метки)
Добрый день! ТПП — «табличное поле правил», в ней уже занесены некотрые значения из XML Код процедуры:
0 |
309 / 309 / 1 Регистрация: 16.01.2011 Сообщений: 1,073 |
|
02.12.2011, 11:32 |
2 |
СохранитьНажатие(Элемент) это событие формы
1 |
2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
|
02.12.2011, 11:56 [ТС] |
3 |
СохранитьНажатие(Элемент) это событие формы В МодулеОбъекта создал функцию «Процедура СохранитьВЭксель(ТПП) Экспорт»
0 |
309 / 309 / 1 Регистрация: 16.01.2011 Сообщений: 1,073 |
|
02.12.2011, 12:10 |
4 |
процедуру ИнициализацияЭкселя() тоже закинь в модуль объекта
1 |
2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
|
02.12.2011, 12:19 [ТС] |
5 |
Да я именно так и сделал, просто забыл упомянуть, ТПП нужна в противном случае он не понимает что это за переменная Добавлено через 4 минуты Так работает, но если я поставлю Дело в том что «стр.НоменклатураБазы» — это справочник ссылка, если у нее текстовый тип то программа глотает и записывает.
0 |
19 / 18 / 1 Регистрация: 15.11.2011 Сообщений: 54 |
|
02.12.2011, 12:22 |
6 |
чет вы мудрено делаете.
1 |
2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
|
02.12.2011, 12:28 [ТС] |
7 |
В данный момент ему не нравится присваемое значение к ячейке экселя (если я правильно понимаю сообщение «Ошибка при установке значения атрибута контекста (Value)» ) Причем если тип значения строка, то он его получает без вопросо, если тип значения СправочникССсылка, то он руегается на «Ошибка при установке значения атрибута контекста (Value)». Я просто не понимаю как обратиться к такому типу переменных чтобы получить значение типа строка.
0 |
19 / 18 / 1 Регистрация: 15.11.2011 Сообщений: 54 |
|
02.12.2011, 12:30 |
8 |
а принудительно все значения в текст перевести нельзя?
1 |
309 / 309 / 1 Регистрация: 16.01.2011 Сообщений: 1,073 |
|
02.12.2011, 12:30 |
9 |
стр.НоменклатураБазы.Наименование например
1 |
2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
|
02.12.2011, 12:32 [ТС] |
10 |
стр.НоменклатураБазы — это уже есть наименование интересующего меня поля (имя столбца), в некотрых случаях можно писать: стр.НоменклатураБазы.Значение, но это нетот случай Добавлено через 56 секунд
0 |
309 / 309 / 1 Регистрация: 16.01.2011 Сообщений: 1,073 |
|
02.12.2011, 12:34 |
11 |
значение из Excel?
1 |
Heltarion 2 / 2 / 0 Регистрация: 21.11.2011 Сообщений: 57 |
||||
02.12.2011, 12:43 [ТС] |
12 |
|||
Рабочий код:
0 |
Дата создания: 03.02.2023
Дата изменения: 06.02.2023
- 6096
- Документ Электронный акт выполненных работ
-
Бухгалтерия 8 для Казахстана, ред 3.0
Вопрос:
В нашей базе настроена работа с электронными актами выполненных работ посредством прямой отправки в ИС ЭСФ. Ранее электронные документы отправлялись без ошибок.
При отправке документов с 03 февраля 2023 года выходит сообщение с таким текстом «Ошибка при установке значения атрибута контекста (awpType): Несоответствие типов XDTO: Ошибка проверки данных XDTO…».
Ответ:
В ночь на 3 февраля 2023 года на портале ИС ЭСФ было выполнено обновление системы в части работы модуля Акты выполненных работ. С полным описанием изменений можно ознакомиться в следующих материалах:
- Обновление ИС ЭСФ 3 февраля 2023 года (меняется механизм работы с АВР)
- Что изменилось по АВР с 3 февраля 2023 года (в ИС ЭСФ и 1С)
- Выпущен патч для релиза БК 3.0.46.1 (ЭАВР по версии 2 + механизм исправления)
Одно из важных изменений в работе с ЭАВР на портале ИС ЭСФ – это внедрение новой версии (электронного шаблона) самого документа Электронный Акт выполненных работ (оказанных услуг), которая разработана в соответствии с утвержденной формой Р-1.
В связи с этим разработчиками 1С уже 3 февраля 2023 года был выпущен патч к релизу 3.0.46.1 конфигурации «1С:Бухгалтерия 8 для Казахстана», редакции 3.0., который позволяет создавать в учетной системе электронный АВР соответствующий всем изменениям на портале ИС ЭСФ.
При этом обратите внимание, что если до обновления (патч к релизу 3.0.46.1) в вашей учетной уже были созданы документы Электронный акт выполненных работ, то для их отправки на портал ИС ЭСФ после 3 февраля 2023 года требуется заполнить новые реквизиты, которые появились в новой версии акта.
При попытке отправить из 1С электронные акты, созданные по «старой» версии система выдает информационное сообщение об ошибке со следующим текстом «Ошибка при установке значения атрибута контекста (awpType): Несоответствие типов XDTO: Ошибка проверки данных XDTO…».
Для успешной отправки ЭАВР на портал ИС ЭСФ в учетной системе необходимо перезаполнить электронные документы в соответствии с новой версией, отправить без перезаполнения созданные ЭАВР до обновления нельзя – система ИС ЭСФ их не примет (не соответствует версия документа).
Данная ошибка возникает по причине того, что в обновленной версии акта выполненных работ появился новый реквизит Тип документа ЭАВР, заполнение которого является обязательным условием для регистрации документа в ИС ЭСФ. В связи с добавлением функционала по исправлению электронных актов, начиная с 3 февраля, ЭАВР могут быть следующих типов: Первичный или Исправленный.
В созданных до обновления учетной системы ЭАВР поле Тип документа ЭАВР не заполнено и для успешной отправки таких документов требуется выполнить их перезаполнение по кнопке Автозаполнение – Перезаполнить по документу основанию.
При перезаполнении в документе Электронный акт выполненных работ (после установки патча) автоматически установится значение Первичный в поле Тип документа АВР и документ готов для регистрации в ИС ЭСФ в соответствии с новой версией ЭАВР.
Документы Электронный акт выполненных работ, созданные в 1С после обновления конфигурации посредством патча к релизу 3.0.46.1, корректно формируются и отправляются в ИС ЭСФ после 3 февраля 2023 года.
- 6096
Комментировать материалы сайта могут зарегистрированные пользователи.
Вход с помощью STSL