Приложение
Здравствуйте, Лидия!
Это ошибка разработчиков в обновлении 3.0.109. Что неприятно — она еще не зарегистрирована, поэтому нужно написать на горячую линию 1С о ней и дожидаться исправления в ближайшем обновлении.
Работа над вашим вопросом была проведена с анализом программного кода.
Вы не указали свою платформу, но судя по совместимости 8.3.16 — это, скорее всего, 8.3.20.
Я все тестируемые действия выполняла на платформе 8.3.20.1590
Первоначально до обновления Уведомление о контролируемых иностранных компаниях формировалось, проверялось и выгружалось нормально.
Недопустимое значение параметра (параметр 1). 1С Честный знак
Рейтинг: 3.3/5 — 14
голосов
Ошибки при сканирование новых кодов маркировки Data Matrix которые пришли от поставщика.
Когда возникает данная ошибка? Вы купили 2-хмерный сканер штрих-кодов который производит чтение кодов типа data matrix, обновили вашу 1с Розницу или Управление торговлей до появления раздела Настройка интеграции с ИС МП, прошили онлайн кассу и заключили договор с ОФД об отправки кодов маркировки в честный знак, и вроде бы всё хорошо, марки клеятся на коробки с обувью. Маркированная продукция списывается, на чеке пишется заветная буковка (М) означающая отправку в честный знак и списание обувной или табачной продукции, но тут Ваш поставщик присылает новую партию обуви и при чтении 2D сканером появляется ошибка «Недопустимое значение параметра (параметр номер ‘1’)».
В каких программах возникает данная ошибка?
- 1С Розница редакция 2.3
- 1С Управление торговлей 11.4
- 1С Далион
- 1С Управление нашей фирмой
- 1С Штрих-М Кассир
Причины появления ошибки в 1С Недопустимое значение параметра (параметр номер ‘1’)
Ранее данная тема уже обсуждалась на популярных сайтах и форумах, например, вот здесь:
https://forum.infostart.ru/forum81/topic236817/
Решения данной проблемы так и не последовало. Вся проблема в том, что до пандемии короновируса, в марте, апреле и ранее множество продавцом обуви и табака спешили перевести программу товароучета на более новую и синхронизировать с системой маркировки «Честный знак». 1С в свою очередь выпустила обновления и учла далеко не все параметры чтения QR кода.
Решением данной проблемы является обновления 1С до последней версии релиза. После обновления 1С ошибка Недопустимое значение параметра (параметр номер ‘1’) – исчезнет. Но при этом появятся другие недочеты 1с, но это уже отдельная тема.
Важно заметить, что коды, которые вы печатали ранее читает без проблем, проблема только со «свежими кодами маркировки».
Удачи Вам в решении ваших задач, если будут вопросы, обращайтесь!
Возможно вас так же заинтересует:
- Настройка обмена 1С розница и честный знак без подключения к СУЗ
- Настройка обмена 1С Управленеи торгволей без подключения к СУЗ
Недопустимое значение параметра |
Я |
30.06.17 — 14:57
{Обработка.РМКУправляемыйРежим.Форма.Форма.Форма(2823)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение)
Объект = РеквизитФормыВЗначение(«Обработка»);
по причине:
Недопустимое значение параметра (параметр номер ‘1’)
Вот функция
&НаСервере
Функция ПолучитьМакетНаСервере()
Объект = РеквизитФормыВЗначение(«Обработка»);
Макет = Объект.ПолучитьМакет(«Макет»);
Возврат Макет;
КонецФункции
Почему может валить ошибку?
1 — 30.06.17 — 15:01
есть реквизит формы «Обработка»?
2 — 30.06.17 — 15:01
(1)Нет
3 — 30.06.17 — 15:02
(2) поэтому 1С и ругается
4 — 30.06.17 — 15:03
ОбъектОбработки = РеквизитФормыВЗначение(«Объект»);
5 — 30.06.17 — 15:03
(3) что сделать?
6 — 30.06.17 — 15:04
(5) Преобразовывать в значение существующий реквизит
7 — 30.06.17 — 15:05
8 — 30.06.17 — 15:19
(7) если я в обработку добавлю макет, как его получить?
9 — 30.06.17 — 15:28
А если добавляю кнопку, то отображается окно с «» и больше ничего, кто нибудь сталкивался?
10 — 30.06.17 — 15:29
из серверной процедуры(функции) модуля формы:
ОбъектОбработки = РеквизитФормыВЗначение(«Объект»);
Макет = ОбъектОбработки.ПолучитьМакет(«Макет»);
11 — 30.06.17 — 15:30
(8) А зачем вообще его в форме получать? Я бы заполнил в модуле объекта и вернул уже готовый табличный документ
12 — 30.06.17 — 15:32
(11) На РМК Кнопку нужно прикрутить, а тут такие подвохи блин, второй час долблюсь
13 — 30.06.17 — 15:32
Помогите плиз
14 — 30.06.17 — 15:34
я уже и другую кнопку отредактировал, теперь вот эта фигня выскакивает
15 — 30.06.17 — 15:34
(11) Дык, чтобы вызвать метод из модуля объекта — его (объект) все-равно получить придется
16 — 30.06.17 — 15:35
{Обработка.РМКУправляемыйРежим.Форма.Форма.Форма(2823)}: Ошибка при установке значения атрибута контекста (Объект)
Объект = РеквизитФормыВЗначение(«Объект»);
по причине:
Нельзя изменять поле, содержащее объект данных формы
Нельзя изменять поле, содержащее объект данных формы
17 — 30.06.17 — 15:35
Объект в реквизиты добавить?
18 — 30.06.17 — 15:36
(15) Таки да, но удобнее заполнять в модуле, а не в форме — если что можно будет вызвать без открытия формы …
да и вообще в форме должен быть только код, связанный с работой самой формы
19 — 30.06.17 — 15:37
(17) Что не понятно в функции РеквизитФормыВЗначение?
20 — 30.06.17 — 15:39
(16) Издеваешься??? Читай (10)
21 — 30.06.17 — 15:40
(17) Посмотри внимательно на форму. Там уже есть реквизит «Объект».
Только не верь глазам своим, он не фига не объект :-).
Это данные формы (можешь пока представлять себе как структуру с полями).
А чтобы вызвать методы этого объекта — его надо преобразовать в»настоящий» при помощи РеквизитФормыВЗначение
22 — 30.06.17 — 15:40
+(20)
Объект = … — так нельзя!!!
23 — 30.06.17 — 15:41
(16) Неправильно: Объект = ….
Правильно ОбъектНастоящий = ….
24 — 30.06.17 — 15:41
+(22) в том случае, если у тебя реквизит формы назван по умолчанию, т.е. «Объект» (назван платформой)
25 — 30.06.17 — 15:47
&НаСервере
Функция ПолучитьМакетНаСервере()
Объект = РеквизитФормыВЗначение(«Отчет»);
Макет =
Возврат Макет;
КонецФункции
26 — 30.06.17 — 15:48
Что тут не так по мимо того что нет значения для макета
27 — 30.06.17 — 15:48
Реквизит на форме нужно разместить?
28 — 30.06.17 — 15:49
(27) нет
29 — 30.06.17 — 15:50
Что отладчик говорит про полученный объект? Тип значения у него какой?
30 — 30.06.17 — 15:51
{Обработка.РМКУправляемыйРежим.Форма.Форма.Форма(2823)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение)
Объект = РеквизитФормыВЗначение(«Отчет»);
по причине:
Недопустимое значение параметра (параметр номер ‘1’)
Недопустимое значение параметра (параметр номер ‘1’)
31 — 30.06.17 — 15:51
ТС, ответь на вопрос: как называется основной реквизит твоей обработки?
32 — 30.06.17 — 15:55
(30) так у тебя есть реквизит формы с именем «Отчет»?
33 — 30.06.17 — 15:56
(32) Да
34 — 30.06.17 — 15:57
(33) Тип значения?
35 — 30.06.17 — 15:57
ОтчетОбъект.ВидыОплатККМ
36 — 30.06.17 — 15:59
(35) А не проще к самому отчету обратится сразу Отчеты.ВидыОплатККМ.ПолучитьМакет()?
37 — 30.06.17 — 16:01
{Обработка.РМКУправляемыйРежим.Форма.Форма.Форма(2875)}: Ошибка при вызове метода контекста (Показать)
ТабДок.Показать();
по причине:
Метод недоступен на сервере
Метод недоступен на сервере
а тут то что не так?
38 — 30.06.17 — 16:01
(36) Спасибо огромное
39 — 30.06.17 — 16:07
(37) Метод показать не работает на сервере?
40 — 30.06.17 — 16:14
(39) А кому и на чем показывать ее на сервере?
Предлагаю немного углубиться в понимание концепции управляемых форм
41 — 30.06.17 — 16:18
(40) а как тогда его на клиенте показать? если он в другой функции?
42 — 30.06.17 — 16:20
(41) верни его оттуда
43 — 30.06.17 — 16:23
(42) Пардон процедура
44 — 30.06.17 — 16:24
(43) сделай функцией
45 — 30.06.17 — 16:24
(41) (43) Параметр передай, заполни его на сервере, а когда вернешься на клиент — покажи. Я повторюсь (40)
46 — 30.06.17 — 16:28
(45) ну серверу он хочет показать…сервер что, не живой, ему что, прекрасное увидеть не хочется…
а то гоняют и в хвост и в гриву, а ничего и не показывают, вот потом и появляются ошибки формата потока)
47 — 30.06.17 — 16:35
Функция ВыполнитьЧО08ОплатаБонусами(ТабДок)
Переменная не определена ТабДок)))
48 — 30.06.17 — 16:38
progaoff
49 — 30.06.17 — 16:52
Спасибо за помощи идиоту!!
1C. «Недопустимое значение параметра» при вызове макета в расширении
Дано: 1С (в данном примере конфигурация 1С:Университет ПРОФ), платформа 8.3.10. Создано расширение, в котором к документу добавлен новый макет. В модуле менеджера документа есть процедура, формирующая печатную форму на базе макета. Необходимо было заменить данную процедуру (при помощи директивы расширения «&Вместо») и заменить вызов встроенного макета на наш, добавленный в расширение.
Проблема: при вызове добавленного макета в момент его печати в режиме «1С:Предприятие» возникала ошибка при получении макета:
{ЗаявлениеПоступающегоРасширение Документ.ЗаявлениеПоступающего.МодульМенеджера(176)}: Ошибка при вызове метода контекста (ПолучитьМакет)
Макет = Документы.ЗаявлениеПоступающего.ПолучитьМакет («Расш1_МакетЗаявлениеПоступающего»);
по причине:
Недопустимое значение параметра (параметр номер ‘1’)
Код, вызывающий ошибку:
Варианты решения:
1. Добавить функцию, выполняемую на сервере, которая вызовет добавленный макет из документа:
&НаСервере
Функция ПолучитьМакетЗаявленияИзРасширения()
Макет = Документы.ЗаявлениеПоступающего.ПолучитьМакет («Расш1_МакетЗаявлениеПоступающего»);
Возврат Макет;
КонецФункции
А затем из заменяемой процедуры вызвать эту функцию:
(как оказалось этот способ не нужен. Причину читайте ниже)
2. Другой вариант — перенести макеты в общие и следующей командой вызвать (получить) макет из «Общие макеты»:
Макет = ПолучитьОбщийМакет («Расш1_МакетЗаявлениеПоступающего»);
——
Видимо это всё-таки какой-то глюк платформы (протестировано на 8.3.10.2252 и 8.3.10.2299), но если просто добавить пустой макет в общие макеты в расширении, то команда, ранее вызывавшая ошибку (ПолучитьМакет из макета документа без допфункций на сервере), начинает нормально работать. При удалении пустого общего макета, команда вызова макета из документа снова вызывает ошибку (даже если вынесена в функцию на сервере, как показано в способе 1).
Т.е. если всё-таки хочется сделать макеты нормально в документе (ожидая, что когда-нибудь этот глюк исправят), то нужно сделать макет-заглушку в общих макетах. Например:
При этом, если в расширении добавлено несколько макетов к документу, то «заглушки» достаточно только одной.
Если Вам понравилась статья, пожалуйста, поставьте лайк, сделайте репост или оставьте комментарий. Если у Вас есть какие-либо замечания, также пишите комментарии.
Ошибка при обновлении 1С 8 КА 2 с подредакции 2.5.8 на 2.5.9: Недопустимое значение параметра (параметр номер ‘1’) (Колонка не принадлежит коллекции). {РегистрСведений.СловарьСопоставленияНоменклатурыБЭД.МодульМенеджера(41)}:ЗаполнитьСловарьСопоставленияН
Описание ошибки:
«Проблема с обработчиками» была встречена при выполнении обработчиков обновления базы Комплексная автоматизация с релиза подредакции 2.5.8.287 на релиз подредакции 2.5.9.119. «Не все процедуры удалось выполнить» из дополнительных процедур обработки данных. Стандартный способ решения, предлагаемый разработчиками, не помог.
Найденные решения:
Данная проблема и последующее ее решение может поджидать Вас не только в конкретной конфигурации, но и в других, которые работают в режиме управляемого приложения, и могут быть «построены» с использованием Библиотеки стандартных подсистем (БСП).
Рис. 1. Частный пример «проблемы с обработчиками», «не все процедуры удалось выполнить».
Общая рекомендация от 1С как подсказка в форме рекомендует открыть список дополнительных процедур обработки данных, перейдя по соответствующей ссылке и нажать в открывшемся окне на кнопку «Запустить», чтобы процесс принудительно снова выполнился.
Рис. 2. Общая рекомендация о том, как исправить «проблемы с обработчиками» при обновлении в 1С 8.
В соответствии с рекомендацией — переходим по ссылке «Не все процедуры удалось выполнить» открываем форму списка «Дополнительные процедуры обработки данных». Находим копку «Запустить» и ожидаем.
Нажатие на изображении увеличит его
Рис. 3. Форма списка «Дополнительные процедуры обработки данных» при обновлении в 1С 8
Если ошибка при дополнительной обработке носит не технический характер, то, возможно, что такой запуск избавит от ее. Но в обсуждаемом примере ошибка носила именно технический характер. И хоть сколько запускай — результат будет один и тот же. В частности, проблема была в участке кода:
Подробный текст ошибки:
Процедура «РегистрыСведений.СловарьСопоставленияНоменклатурыБЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию» обработки данных завершилась с ошибкой:
Недопустимое значение параметра (параметр номер ‘1’) (Колонка не принадлежит коллекции)
Технические подробности:
Ошибка выполнения фонового задания ДлительныеОперации.ВыполнитьСКонтекстомКлиента с идентификатором 10be6416-8958-4124-b61f-023b79cfb16f по причине
Ошибка при вызове метода контекста (ВыгрузитьКолонку)
{РегистрСведений.СловарьСопоставленияНоменклатурыБЭД.МодульМенеджера(246)}:Порция = ОбновляемыеДанные.ВыгрузитьКолонку(«СсылкаНаОбъект»);
{РегистрСведений.СловарьСопоставленияНоменклатурыБЭД.МодульМенеджера(41)}:ЗаполнитьСловарьСопоставленияНоменклатурыБЭД(Параметры);
{(1)}:РегистрыСведений.СловарьСопоставленияНоменклатурыБЭД.ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры[0])
Нажатие на изображении увеличит его
Рис. 4. Ошибка при обновлении базы «Недопустимое значение параметра (параметр номер ‘1’) (Колонка не принадлежит коллекции)».
Так как разрешить подобные «проблемы с обработчиками обновления данных» при обновлении баз 1С 8? Такая ошибка может поджидать не только в данном примере. Можно рассматривать два варианта — первый сразу пробовать исправлять код разработчиков, чтобы обработчик отработал после исправления. Второй — попробовать изменить порядок обновления. Еще раз отметим, что в данном примере выполнялось обновление с подредакции Комплексной автоматизации 2.5.8 на подредакцию 2.5.9, а значит, возможно может быть и в других конфигурациях, «построенных» на БСП (Библиотека стандартных подсистем), таких, как Управление торговлей ред. 11, ERP 2. И, скорее всего, переход с релиза …5.8.287 на релиз …5.9.119 во всех этих конфигурациях может сопровождаться такой ошибкой.
Итак, если имеется архив базы, созданный перед началом обновления, то можно попробовать другую комбинацию, другой порядок обновляемых релизов, предварительно восстановив базу. В данном же примере было еще выполнено обновление до релиза 2.5.8.303, потом обновление до подредакции 2.5.9.125. И при обновлении, при выполнении дополнительных процедур обработки данных все прошло без проблем и ошибок. Т.е. ошибка, которая содержалась, скорее всего, в коде релиза 5.9.119, была устранена в релизе 5.9.125. Можно, конечно, проверить по истории регистрации и исправления ошибок на сайте 1С. Но на это не было времени. И выбранный подход в обходе проблемы помог.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
05-12-2022
Журавлев А.С.
(Сайт azhur-c.ru)