открытие формы выбора с отбором |
Я |
02.12.16 — 12:41
есть перечисление, оно задано реквизиту справочника
есть реквизит у этого справочника, типа другого справочника
где так же есть реквизит типа перечисления
как при открытии формы справочника, устанавливать отбор элементов
в форме выбора равному значению перечисления?
1 — 02.12.16 — 12:43
присвоить отбору значение
2 — 02.12.16 — 12:43
Если смотреть сбоку, то сверху кажется, что снизу ничего не видно
3 — 02.12.16 — 12:45
(1) средствами свойств конфигурации?
4 — 02.12.16 — 12:50
или кодом накладывать?
5 — 02.12.16 — 12:53
кодом конечно, программа сама не знает чего ты хочешь
6 — 02.12.16 — 12:54
можешь в типовых посмотреть как открываются формы выбора программно, глядишь и наткнешься на установку отбора
7 — 02.12.16 — 13:38
почему может ругаться на такую конструкцию, не соответсвие типов
&НаКлиенте
Процедура ДежурныйНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«ЭксплуатационныйРайон», Объект.ЭксплуатационныйРайон);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.Дежурный.ФормаВыбора», ПараметрыВыбора, Элемент);
КонецПроцедуры
8 — 02.12.16 — 13:41
а такой отбор точно есть в форме выбора?
9 — 02.12.16 — 13:48
(8) подскажите пожалуйста, где это посмотреть?
10 — 02.12.16 — 13:51
(8) видимо нет, взял пример, но не знаю как его приделать
11 — 02.12.16 — 13:58
(9) Напиши коротенький пример, без туманных намеков как в (0).
12 — 02.12.16 — 14:09
(11) я сделал как в примере (7)
у формы создал параметр «Отбор»
13 — 02.12.16 — 14:10
(12) у формы владельца есть реквизит перечисление
у формы выбора есть параметр отбор типа этого перечисления
есть реквизит типа этого перечисления у подчиненного справочника
14 — 02.12.16 — 14:10
(7) из-за совпадения имени переменной ПараметрыВыбора с параметром формы
15 — 02.12.16 — 14:13
(7) вообще, в подробном тексте ошибки всё написано, но ты за 10 лет так и не научился ни читать его, ни копировать на Мисту
16 — 02.12.16 — 14:16
(15) от туда не перенесешь его
17 — 02.12.16 — 14:17
(16) откуда?
18 — 02.12.16 — 14:21
(17) текст ошибки с сервера
19 — 02.12.16 — 14:22
(18) нет ничего невозможного для человека с интеллектом
20 — 02.12.16 — 14:34
(19) ну ошибка называется «несоответствие типов»
на строке ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
чт опоправить, до меня не доходит (((
21 — 02.12.16 — 14:37
(11) просто нужно открыть форму выбора справочника с отбором
22 — 02.12.16 — 14:40
(20) в (14) написано, думай
23 — 02.12.16 — 14:45
(22) ну понятно, я создал параметр формы отбор
и в строке (20) тоже отбор
так он же и должен совпадать?
как иначе то?????
24 — 02.12.16 — 14:58
(22) ну изменю значение параметра на другое, попробую
непомогло
25 — 02.12.16 — 15:08
ПОДСКАЖИТЕ В ЧЕМ ДЕЛО?
26 — 02.12.16 — 15:10
(25) еще раз: ошибка возникает из-за того, что имя переменной ПараметрыВыбора совпадает с именем параметра формы ПараметрыВыбора
27 — 02.12.16 — 15:35
(26) я не могу сделать, ты можешь сказать как нужно поправить?
28 — 02.12.16 — 15:41
везде одинаковые примеры
ЗначениеОтбора = Новый Структура(«Контрагент», «ОАО Рога и копыта»);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Документ.ПриходнаяНакладная.ФормаСписка», ПараметрыВыбора);
29 — 03.12.16 — 07:38
ребят продолжаю, развернул маленькую конфигурацию у себя на компе
имитирую этот момент, ошибка та же, подскажите как исправить???
{Справочник.Сотрудники.Форма.ФормаЭлемента.Форма(6)}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора)
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
по причине:
Несоответствие типов
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора, Элемент);
КонецПроцедуры
30 — 03.12.16 — 07:40
Уважаемый Lexey_, говорит что дело в имени переменной ПараметрыВыбора.
Как исправить, подскажите кто понимает?
Я всяко разно пробовал. Причем во всех примерах все так же, у меня не работает ((((
31 — 03.12.16 — 07:46
Согласно (26) исправил, понимая буквально замечание, на
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
КонецПроцедуры
Но сейчас нет ошибки, но и отбор не устанавливается в форме выбора справочника, подскажите почему?
32 — 03.12.16 — 07:48
и так пробую
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
//ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
//ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ЗначениеОтбора, Элемент);
КонецПроцедуры
33 — 03.12.16 — 07:50
нужно ли как то саму форму дорабатывать на какие либо параметры
используя (31) или (32)
34 — 03.12.16 — 07:58
Возьми фрагмент «НачалоВыбора(» и полным поиском в типовой конфигурации найдешь кучку примеров
35 — 03.12.16 — 07:59
(34) да я в интернете много примеров нахожу
все они подобные, но не работает у меня (((((
36 — 03.12.16 — 07:59
(34) в конфигурации какой? в УТ 11.3 попробую поискать
37 — 03.12.16 — 08:01
(35) Так бывает…
(36) в типовой или в своей, если типовая.
38 — 03.12.16 — 08:01
(37) в которой я стал делать пример
там вообще пара объектов, не доделанные
39 — 03.12.16 — 08:10
реально не понимаю (((( все подобно везде!!!!
40 — 03.12.16 — 08:13
не работает отбор (
41 — 03.12.16 — 08:20
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособыРубок», Объект.СпособРубки);
ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
вот так сработало, важно было в значении отбора, установить название параметра таким же как у справочника
EvgeniuXP
42 — 03.12.16 — 13:22
Посмотри курсы, чтобы множество вопросов у тебя отпало — и с энономишь кучу времени себе и другим.
открытие формы выбора с отбором |
Я |
falselight
02.12.16 — 12:41
есть перечисление, оно задано реквизиту справочника
есть реквизит у этого справочника, типа другого справочника
где так же есть реквизит типа перечисления
как при открытии формы справочника, устанавливать отбор элементов
в форме выбора равному значению перечисления?
DrShad
1 — 02.12.16 — 12:43
присвоить отбору значение
Ёпрст
2 — 02.12.16 — 12:43
Если смотреть сбоку, то сверху кажется, что снизу ничего не видно
falselight
3 — 02.12.16 — 12:45
(1) средствами свойств конфигурации?
falselight
4 — 02.12.16 — 12:50
или кодом накладывать?
DrShad
5 — 02.12.16 — 12:53
кодом конечно, программа сама не знает чего ты хочешь
DrShad
6 — 02.12.16 — 12:54
можешь в типовых посмотреть как открываются формы выбора программно, глядишь и наткнешься на установку отбора
falselight
7 — 02.12.16 — 13:38
почему может ругаться на такую конструкцию, не соответсвие типов
&НаКлиенте
Процедура ДежурныйНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«ЭксплуатационныйРайон», Объект.ЭксплуатационныйРайон);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.Дежурный.ФормаВыбора», ПараметрыВыбора, Элемент);
КонецПроцедуры
DrShad
8 — 02.12.16 — 13:41
а такой отбор точно есть в форме выбора?
falselight
9 — 02.12.16 — 13:48
(8) подскажите пожалуйста, где это посмотреть?
falselight
10 — 02.12.16 — 13:51
(8) видимо нет, взял пример, но не знаю как его приделать
SergTheGreat
11 — 02.12.16 — 13:58
(9) Напиши коротенький пример, без туманных намеков как в (0).
falselight
12 — 02.12.16 — 14:09
(11) я сделал как в примере (7)
у формы создал параметр «Отбор»
falselight
13 — 02.12.16 — 14:10
(12) у формы владельца есть реквизит перечисление
у формы выбора есть параметр отбор типа этого перечисления
есть реквизит типа этого перечисления у подчиненного справочника
Lexey_
14 — 02.12.16 — 14:10
(7) из-за совпадения имени переменной ПараметрыВыбора с параметром формы
Lexey_
15 — 02.12.16 — 14:13
(7) вообще, в подробном тексте ошибки всё написано, но ты за 10 лет так и не научился ни читать его, ни копировать на Мисту
falselight
16 — 02.12.16 — 14:16
(15) от туда не перенесешь его
Lexey_
17 — 02.12.16 — 14:17
(16) откуда?
falselight
18 — 02.12.16 — 14:21
(17) текст ошибки с сервера
Lexey_
19 — 02.12.16 — 14:22
(18) нет ничего невозможного для человека с интеллектом
falselight
20 — 02.12.16 — 14:34
(19) ну ошибка называется «несоответствие типов»
на строке ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
чт опоправить, до меня не доходит (((
falselight
21 — 02.12.16 — 14:37
(11) просто нужно открыть форму выбора справочника с отбором
Lexey_
22 — 02.12.16 — 14:40
(20) в (14) написано, думай
falselight
23 — 02.12.16 — 14:45
(22) ну понятно, я создал параметр формы отбор
и в строке (20) тоже отбор
так он же и должен совпадать?
как иначе то?????
falselight
24 — 02.12.16 — 14:58
(22) ну изменю значение параметра на другое, попробую
непомогло
falselight
25 — 02.12.16 — 15:08
ПОДСКАЖИТЕ В ЧЕМ ДЕЛО?
Lexey_
26 — 02.12.16 — 15:10
(25) еще раз: ошибка возникает из-за того, что имя переменной ПараметрыВыбора совпадает с именем параметра формы ПараметрыВыбора
falselight
27 — 02.12.16 — 15:35
(26) я не могу сделать, ты можешь сказать как нужно поправить?
falselight
28 — 02.12.16 — 15:41
везде одинаковые примеры
ЗначениеОтбора = Новый Структура(«Контрагент», «ОАО Рога и копыта»);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Документ.ПриходнаяНакладная.ФормаСписка», ПараметрыВыбора);
falselight
29 — 03.12.16 — 07:38
ребят продолжаю, развернул маленькую конфигурацию у себя на компе
имитирую этот момент, ошибка та же, подскажите как исправить???
{Справочник.Сотрудники.Форма.ФормаЭлемента.Форма(6)}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора)
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
по причине:
Несоответствие типов
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
ПараметрыВыбора = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора, Элемент);
КонецПроцедуры
falselight
30 — 03.12.16 — 07:40
Уважаемый Lexey_, говорит что дело в имени переменной ПараметрыВыбора.
Как исправить, подскажите кто понимает?
Я всяко разно пробовал. Причем во всех примерах все так же, у меня не работает ((((
falselight
31 — 03.12.16 — 07:46
Согласно (26) исправил, понимая буквально замечание, на
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
КонецПроцедуры
Но сейчас нет ошибки, но и отбор не устанавливается в форме выбора справочника, подскажите почему?
falselight
32 — 03.12.16 — 07:48
и так пробую
&НаКлиенте
Процедура ВидРубкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособРубки», Объект.СпособРубки);
//ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
//ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ЗначениеОтбора, Элемент);
КонецПроцедуры
falselight
33 — 03.12.16 — 07:50
нужно ли как то саму форму дорабатывать на какие либо параметры
используя (31) или (32)
МимохожийОднако
34 — 03.12.16 — 07:58
Возьми фрагмент «НачалоВыбора(» и полным поиском в типовой конфигурации найдешь кучку примеров
falselight
35 — 03.12.16 — 07:59
(34) да я в интернете много примеров нахожу
все они подобные, но не работает у меня (((((
falselight
36 — 03.12.16 — 07:59
(34) в конфигурации какой? в УТ 11.3 попробую поискать
МимохожийОднако
37 — 03.12.16 — 08:01
(35) Так бывает…
(36) в типовой или в своей, если типовая.
falselight
38 — 03.12.16 — 08:01
(37) в которой я стал делать пример
там вообще пара объектов, не доделанные
falselight
39 — 03.12.16 — 08:10
реально не понимаю (((( все подобно везде!!!!
falselight
40 — 03.12.16 — 08:13
не работает отбор (
falselight
41 — 03.12.16 — 08:20
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура(«СпособыРубок», Объект.СпособРубки);
ПараметрыВыбора1 = Новый Структура(«Отбор», ЗначениеОтбора);
ОткрытьФорму(«Справочник.ВидыРубок.ФормаВыбора», ПараметрыВыбора1, Элемент);
вот так сработало, важно было в значении отбора, установить название параметра таким же как у справочника
EvgeniuXP
42 — 03.12.16 — 13:22
Посмотри курсы, чтобы множество вопросов у тебя отпало — и с энономишь кучу времени себе и другим.
Содержание:
1. Ошибка при установке значения атрибута контекста
2. Ошибка при получении значения атрибута контекста
Одной из наиболее частых ошибок исполнения кода 1С являются ошибки, связанные с установкой реквизита либо получением реквизита через точку, либо ошибка при вызове функции или процедуры через точку. Все данные объекты являются атрибутами информационных объектов-владельцев, к которым они принадлежат. Рассмотрим примеры таких ошибок и причины их возникновения.
1. Ошибка при установке значения атрибута контекста
Ошибка при установке значения атрибута контекста говорит нам о невозможности присвоить выбранное значение определенному атрибуту информационного объекта. Вызвано это либо несовпадением типа атрибута и присваиваемого ей значения, отсутствием возможности присвоить значение выбранному атрибуту, так как его можно только читать, но не записывать в него, отсутствием прав у текущего пользователя на запись значений в данный атрибут. Например, в реквизит «ДатаДокумента» с типом «Дата» пытаемся записать строку, в реквизит с типом данных ссылки на документ пытаемся записать не ссылку, а объект, полученный по ссылке, что невозможно из-за несоответствия типов, что приводит к ошибке установки значения атрибута.
Другой пример – проходя циклом выборку запроса, пытаемся в колонку выборки записать значение, что невозможно, так как значения выборки запроса можно только считывать, а для того, чтобы можно было полученные из запроса данные изменять в коде, нужно пользоваться не выборкой, а выгружать результат запроса в таблицу значений, в таком случае в цикле по ней можно будет менять значения в колонках, но только на значения, соответствующие типу колонки. Либо у пользователя, под которым выполняется код, нет прав на изменение даты документа, при попытке записать в данный реквизит новую дату, будет выведено сообщение об ошибке установке значения, но в причине будет указано отсутствие прав у пользователя.
2. Ошибка при получении значения атрибута контекста
Ошибка при получении значения атрибута контекста указывает на невозможность прочитать значение атрибута объекта в силу его отсутствия, либо отсутствия прав на его чтение. Например, обращение к несуществующему реквизиту объекта, несуществующему полю выборки из запроса, несуществующему свойству элемента формы и т.п. Так же как пример можно рассмотреть получение текущего пользователя из параметров сеанса — если данный параметр сеанса не установлен, то тоже будет выведена ошибка получения значения атрибута контекста, но в причине будет указана попытка получения неинициализированного значения параметра сеанса.
При возникновении данных ошибок значения атрибута в 1Св первую очередь следует проверить существование атрибута, к которому обращаются, затем проверить совпадение типов значений атрибута и присваиваемого ему значения, затем уже проверить права на установку либо чтение значения. Проверить, является ли дело в правах либо дать права на действия с атрибутом, можно, установив привилегированный режим для совершения действия с данным атрибутом, прописав перед строчкой с ошибкой УстановитьПривилегированныйРежим(Истина), после строчки — УстановитьПривилегированныйРежим(Ложь).
Специалист компании «Кодерлайн»
Александр Суворов
Несоответствие типов 1С
Ошибка по причине Несоответствие типов в 1С 8.3 связана с передачей параметров в командах и запросах 1С.
Изучив статью, вы:
- ознакомитесь с порядком исправления ошибки в запросе и командах 1С и узнаете, как исправить;
- получите два внешних отчета, демонстрирующих ошибочный и правильный коды.
В какой момент выходит ошибка
Как правило, параметры в командах 1С идут в определенной очередности и ссылаются на данные конкретного типа. Ошибка в указании параметра не на том месте или не того типа приводит к появлению сообщения о несоответствии типов:
Исправляется подобная ошибка восстановлением правильной последовательности в строке параметров команды или указанием нужного типа данных Ошибка 1С Несоответствие типов наиболее часто появляется при написании запросов и при некорректном указании параметров команды.
Рассмотрим причины ее возникновения и исправление на конкретном примере.
Ошибка в таблице запроса
При чтении цен номенклатуры по регистру сведений Цены номенклатуры из внешнего отчета появляется ошибка Неоднозначное поле «ТипЦен.Номенклатура».
В окне сообщений уже указано место возникновения ошибки: Несоответствие типов Параметр номер «1» в строке Регистр сведений.ЦеныНоменклатуры.СрезПоследних(&&ТипЦен,) КАК ЦеныНоменклатурыСрезПоследних.
Для исправления ошибки необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы указанную строчку.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1 С Предприятие:
Из описания видно, что команда СрезПоследних имеет 2 параметра:
- Период;
- Отбор.
Если параметр Период не указывается, место в команде остается пустым, а через запятую указывается параметр отбора, в нашем случае: ТипЦен. Исправленная команда выглядит следующим образом: СрезПоследних(, ТипЦен = &ТипЦен ).
После исправления команды запустите отчет в 1 С Бухгалтерия по кнопке Главное меню — Файл — Открыть:
Теперь отчет формируется правильно!
Исправление ошибки в команде 1С
При поиске ссылок на контрагента в отчете 1С появляется ошибка Несоответствие типов (параметр номер 2):
1С сообщает место ошибки — Параметр номер 2 при нажатии кнопки ERROR.
Для ее исправления необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы строчку с командой НайтиПоСсылкам.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1С:
Из описания идно, что команда НайтиПоСсылкам имеет 4 параметра:
- СписокСсылок;
- ОбластьПоиска;
- ВключитьОбъекты;
- ИсключитьОбъекты.
Параметр ОбластьПоиска имеет тип «массив», а в нашем примере указано число 1: НайтиПоСсылкам(МассивПоиска, 1, , МассивИсключений). Область поиска — необязательный параметр, поэтому исправленная команда может выглядеть следующим образом: НайтиПоСсылкам(МассивПоиска, , , МассивИсключений).
После исправления команды запустите внешний отчет в 1С по кнопке Главное меню — Файл — Открыть:
Теперь команда поиска ссылок на контрагента отрабатывает правильно.
Вот так можно получить ошибку 1С Несоответствие типов в 1С, поэтому контролируйте правильность указания параметров в запросах и командах 1С в Синтаксис-Помощнике!
Заказать консультацию
По этой или иной ошибке Вы можете обратиться к нашим специалистам, мы Вам поможем решить Вашу проблему.
Построитель
Автор Альбина, 16 мар 2010, 17:41
0 Пользователей и 1 гость просматривают эту тему.
Всем добрый день!
Помогите разобраться, пожалуйста, с возникшей проблемой.
Суть:
Формируется отчёт с помощью построителя с отбором по дате.
Необходимо проверить роль активного пользователя, и если это не «Администратор», то добавить отбор по сотруднику(по текущему пользователю) без возможности снятия этого отбора.
Добавляю отбор так:
Сотрудник = ПараметрыСеанса.ТекущийПользователь;
Если (НЕ РольДоступна("Администратор"))
Тогда
ОтборСотрудник = ПостроительОтчетаТрудозатраты.Отбор.Добавить("Сотрудник");
ОтборСотрудник.Значение = Сотрудник;
ОтборСотрудник.ВидСравнения = ВидСравнения.Равно;
ПостроительОтчетаТрудозатраты.Отбор.Сотрудник.Использование = Истина;
Выдаёт ошибку:
Ошибка при установке значения атрибута контекста (Значение): Неверный тип значения
ОтборСотрудник.Значение = Сотрудник;
Пожалуйста,кто-нибудь подкиньте идейку.Мои идеи уже исчерпали себя(((((
Заранее,спасибо
проверь значения (ПараметрыСеанса.ТекущийПользователь)
Проверила,Там всё в норме.
а какой тип у «ОтборСотрудник.Значение»?
Что значит в норме???? Типы через отладчик посмотри. тип «ПараметрыСеанса.ТекущийПользователь» и тип «ОтборСотрудник.Значение»
— они разные у тибя
я не понимаю, как мне их к одинаковому типу привести.
спасибо всем большое)Всё заработало)
)) хоросе
Теги:
- Форум 1С
- ►
Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4 - ►
Конфигурирование, программирование в 1С Предприятие 8 - ►
Построитель
Похожие темы (5)
Поиск
&НаКлиенте Он стал выдавать ошибку. {Документ.УведомлениеКлиентТаможеннаяПроцедура.Форма.ФормаДокумента.Форма}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора) ПараметрыВыбора = Новый Структура(«Отбор», ЗначенияОтбора); по причине: СписКлиентДТО имеет тип массив из СправочникСсылка.Партнеры Подскажите в чем может быть дело.
переименуй переменную ПараметрыВыбора
теперь так надо отбор делать? раньше то у меня работал этот код
см и Отбор можно использовать, но он считается устаревшим параметром, оставлен только для совместимости..
&НаКлиенте И ошибка теперь {Документ.УведомлениеКлиентТаможеннаяПроцедура.Форма.ФормаДокумента.Форма}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора) ПараметрыВыбора = Новый Структура(«ФиксированныеНастройки», ФиксированныеНастройки); по причине: Несоответствие типов
как обычно те же грабли ))) Спасибо огромное…
Вот то что взлетело, но отбор списком не выводит &НаКлиенте Процедура КлиентНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СписКлиентДТО — список значений со ссылками на справочник партнеры
если список ссылок помещать в массив, то тоже не работает
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
1 февраля, 2017
21 апреля, 2017
Дано
- 1С конфигурация бухгалтерия предприятия 2.0
- Ошибка печати ПКО (приходный кассовый ордер):
{ОбщаяФорма.ФормаПечати.Форма(18)}: Ошибка при установке значения атрибута контекста ЭлементыФормы.ПолеДокумента.ПолеСверху по причине: Несоответствие типов |
Анализ проблемы
На первый взгляд все ужасно:
- в конфигураторе видно, что система пытается выполнить строчку кода:
ЭлементыФормы.ПолеДокумента.ПолеСверху = ПечатныйДокумент.ПолеСверху; |
- в отладке видно, что обе переменные типа “Число”,
- синтакс-помощник говорит что:
ТабличныйДокумент (SpreadsheetDocument) ПолеСверху (TopMargin) Использование: Чтение и запись. |
То есть ПолеСверху доступно для записи и обе переменные типа число и все тут корректно, но система говорит “Несоответствие типов” – полный бред.
Решение
На решение проблемы натолкнула фраза “Ошибка при установке значения атрибута контекста”, значит что-то не так с доступом.
Оказалось в базе нет ни одного пользователя и работа осуществлялась под пользователем НеАвторизован. После создания пользователя с необходимыми правами все заработало.
Дополнено 2017.04.10
Проблема повторилась, но уже при печати РТУ и с использованием уже настроенной учетной записи.
Помогло создание нового пользователя с такими же правами доступа. То есть нового создаем, старого удаляем и после этого все работает.
Ошибка Несоответствие типов в 1С 8.3 связана с передачей параметров в командах и запросах 1С.
Изучив статью, вы:
- ознакомитесь с порядком исправления ошибки в запросе и командах 1С;
- получите два внешних отчета, демонстрирующих ошибочный и правильный коды.
Содержание
- Несоответствие типов в 1С 8.3
- Ошибка в таблице запроса
- Исправление ошибки в команде 1С
Как правило, параметры в командах 1С идут в определенной очередности и ссылаются на данные конкретного типа. Ошибка в указании параметра не на том месте или не того типа приводит к появлению сообщения о несоответствии типов:
Поиск
&НаКлиенте Он стал выдавать ошибку. {Документ.УведомлениеКлиентТаможеннаяПроцедура.Форма.ФормаДокумента.Форма}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора) ПараметрыВыбора = Новый Структура(«Отбор», ЗначенияОтбора); по причине: СписКлиентДТО имеет тип массив из СправочникСсылка.Партнеры Подскажите в чем может быть дело.
переименуй переменную ПараметрыВыбора
теперь так надо отбор делать? раньше то у меня работал этот код
см и Отбор можно использовать, но он считается устаревшим параметром, оставлен только для совместимости..
&НаКлиенте И ошибка теперь {Документ.УведомлениеКлиентТаможеннаяПроцедура.Форма.ФормаДокумента.Форма}: Ошибка при установке значения атрибута контекста (ПараметрыВыбора) ПараметрыВыбора = Новый Структура(«ФиксированныеНастройки», ФиксированныеНастройки); по причине: Несоответствие типов
как обычно те же грабли ))) Спасибо огромное…
Вот то что взлетело, но отбор списком не выводит &НаКлиенте Процедура КлиентНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СписКлиентДТО — список значений со ссылками на справочник партнеры
если список ссылок помещать в массив, то тоже не работает
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
1 февраля, 2017
21 апреля, 2017
Дано
- 1С конфигурация бухгалтерия предприятия 2.0
- Ошибка печати ПКО (приходный кассовый ордер):
{ОбщаяФорма.ФормаПечати.Форма(18)}: Ошибка при установке значения атрибута контекста ЭлементыФормы.ПолеДокумента.ПолеСверху по причине: Несоответствие типов |
Анализ проблемы
На первый взгляд все ужасно:
- в конфигураторе видно, что система пытается выполнить строчку кода:
ЭлементыФормы.ПолеДокумента.ПолеСверху = ПечатныйДокумент.ПолеСверху; |
- в отладке видно, что обе переменные типа “Число”,
- синтакс-помощник говорит что:
ТабличныйДокумент (SpreadsheetDocument) ПолеСверху (TopMargin) Использование: Чтение и запись. |
То есть ПолеСверху доступно для записи и обе переменные типа число и все тут корректно, но система говорит “Несоответствие типов” – полный бред.
Решение
На решение проблемы натолкнула фраза “Ошибка при установке значения атрибута контекста”, значит что-то не так с доступом.
Оказалось в базе нет ни одного пользователя и работа осуществлялась под пользователем НеАвторизован. После создания пользователя с необходимыми правами все заработало.
Дополнено 2017.04.10
Проблема повторилась, но уже при печати РТУ и с использованием уже настроенной учетной записи.
Помогло создание нового пользователя с такими же правами доступа. То есть нового создаем, старого удаляем и после этого все работает.
Ошибка Несоответствие типов в 1С 8.3 связана с передачей параметров в командах и запросах 1С.
Изучив статью, вы:
- ознакомитесь с порядком исправления ошибки в запросе и командах 1С;
- получите два внешних отчета, демонстрирующих ошибочный и правильный коды.
Содержание
- Несоответствие типов в 1С 8.3
- Ошибка в таблице запроса
- Исправление ошибки в команде 1С
Как правило, параметры в командах 1С идут в определенной очередности и ссылаются на данные конкретного типа. Ошибка в указании параметра не на том месте или не того типа приводит к появлению сообщения о несоответствии типов:
Исправляется подобная ошибка восстановлением правильной последовательности в строке параметров команды или указанием нужного типа данных Ошибка 1С Несоответствие типов наиболее часто появляется при написании запросов и при некорректном указании параметров команды.
Рассмотрим причины ее возникновения и исправление на конкретном примере.
Ошибка в таблице запроса
При чтении цен номенклатуры по регистру сведений Цены номенклатуры из внешнего отчета появляется ошибка Неоднозначное поле «ТипЦен.Номенклатура».
В окне сообщений уже указано место возникновения ошибки: Параметр номер «1» в строке Регистр сведений.ЦеныНоменклатуры.СрезПоследних(&&ТипЦен,) КАК ЦеныНоменклатурыСрезПоследних.
Для исправления ошибки необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы указанную строчку.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1С:
Из описания видно, что команда СрезПоследних имеет 2 параметра:
- Период;
- Отбор.
Если параметр Период не указывается, место в команде остается пустым, а через запятую указывается параметр отбора, в нашем случае: ТипЦен. Исправленная команда выглядит следующим образом: СрезПоследних(, ТипЦен = &ТипЦен ).
После исправления команды запустите отчет в 1С по кнопке Главное меню — Файл — Открыть:
Теперь отчет формируется правильно!
Скачать внешний отчет Вывод списка цен номенклатуры
Исправление ошибки в команде 1С
При поиске ссылок на контрагента в отчете 1С появляется ошибка Несоответствие типов (параметр номер 2):
1С сообщает место ошибки — Параметр номер 2 при нажатии кнопки ERROR.
Для ее исправления необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы строчку с командой НайтиПоСсылкам.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1С:
Из описания идно, что команда НайтиПоСсылкам имеет 4 параметра:
- СписокСсылок;
- ОбластьПоиска;
- ВключитьОбъекты;
- ИсключитьОбъекты.
Параметр ОбластьПоиска имеет тип «массив», а в нашем примере указано число 1: НайтиПоСсылкам(МассивПоиска, 1, , МассивИсключений). Область поиска — необязательный параметр, поэтому исправленная команда может выглядеть следующим образом: НайтиПоСсылкам(МассивПоиска, , , МассивИсключений).
После исправления команды запустите внешний отчет в 1С по кнопке Главное меню — Файл — Открыть:
Теперь команда поиска ссылок на контрагента отрабатывает правильно.
Скачать внешний отчет Поиск ссылок на контрагента
Вот так можно получить ошибку 1С Несоответствие типов в 1С, поэтому контролируйте правильность указания параметров в запросах и командах 1С в Синтаксис-Помощнике!
См. также:
- Неоднозначное поле в запросе
- Исправление технических ошибок при работе с 1С:Бухгалтерия: для начинающих и опытных пользователей
- Метод объекта не обнаружен
- Неизвестный идентификатор формы
- Переменная не определена
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы Бухэксперт8, записи поддерживающих эфиров и вы сможете задавать любые вопросы по программе 1С.
Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно