|
ошибка при использовании функции ПредопределенноеЗначение | ☑ | ||
---|---|---|---|---|
0
Wefast
01.03.19
✎
10:05
|
Переношу обработку из УТ 11.1 в УТ 11.4
Перестал работать код ТипыНоменклатуры.Добавить(ПредопределенноеЗначение("Перечисления.ТипыНоменклатуры.Товар")); Ошибка: {ВнешняяОбработка.УстановкаЦенНоменклатуры.Форма.Форма.Форма(2833)}: Ошибка при вызове метода контекста (ПредопределенноеЗначение) ТипыНоменклатуры.Добавить(ПредопределенноеЗначение("Перечисления.ТипыНоменклатуры.Товар")); по причине: Предопределенное значение "Перечисления.ТипыНоменклатуры.Товар" не найдено. |
|||
1
123GO
01.03.19
✎
10:16
|
ПеречислениЕ?
|
|||
2
aleks_default
01.03.19
✎
10:19
|
(1)+1 а уверен что раньше работало? :)
|
|||
3
RomanYS
01.03.19
✎
10:33
|
(1) Да!
Два дня назад городил огород чтобы получить пустую ссылку по имеющемуся типу, про ПредопределенноеЗначение не вспомнил(( |
|||
4
Вафель
01.03.19
✎
10:41
|
не могло раньше работать, ну никак
|
|||
5
aleks_default
01.03.19
✎
10:44
|
(3)ОписаниеТипов.ПривестиЗначение
|
|||
6
RomanYS
01.03.19
✎
10:46
|
(5) Это я рассматривал, но что-то не взлетело
так предлагаешь ОписаниеТипов.ПривестиЗначение(Неопределено)? |
|||
7
aleks_default
01.03.19
✎
10:54
|
Если не передавать значение то возвращается значение по умолчанию данного типа. Для справочника например это будет пустая ссылка
|
|||
8
RomanYS
01.03.19
✎
11:06
|
(7) Да, норм.
А я для теста засунул конструкцию типа (Новый ОписаниеТипов("СправочникСсылка.Банки")).ПривестиЗначение() в табло, получил ошибку и пошел другим путём. |
|||
9
Wefast
01.03.19
✎
13:01
|
(1) (2) Уверен, да и через пробел само все пишется, так что ошибки в написание нет.
Сделал в общем так: ПолучитьПеречисл() &НаСервере Функция ПолучитьПеречисл() Возврат Перечисления.ТипыНоменклатуры.Товар; КонецФункции |
|||
10
Alex87r
01.03.19
✎
13:07
|
(9) очень некрасиво сделал. с клиента сервер вызывать из за этого. а если это в цикле, то вообще ужас
|
|||
11
Wefast
01.03.19
✎
13:08
|
(10) что поделать, переписывать что то там кардинально из-за этого не целесообразно. Но это и не в цикле
|
|||
12
catena
01.03.19
✎
13:19
|
(9)"так что ошибки в написание нет"
Хм, а СП утверждает, что есть: Синтаксис: ПредопределенноеЗначение(<ИмяПредопределенногоЗначения>) Параметры: <ИмяПредопределенногоЗначения> (обязательный) Тип: Строка. Содержит полный путь до предопределенного значения, включая имя самого значения. Например, "ПланСчетов.Основной.Счет41". Синтаксис описания предопределенного значения совпадает с синтаксисом оператора ЗНАЧЕНИЕ языка запросов: <Тип предопределенного значения>.<Имя объекта метаданных>.<Значение>. Тип предопределенного значения> может быть: Справочник (Catalog); ПланВидовХарактеристик (ChartOfCharacteristicTypes); ПланСчетов (ChartOfAccounts); ПланВидовРасчета (ChartOfCalculationTypes); Документ (Document) - только пустая ссылка; Перечисление (Enum); БизнесПроцесс (BusinessProcess) - только пустая ссылка и получение точек бизнес процесса; Задача (Task) - только пустая ссылка. |
|||
13
Сияющий в темноте
01.03.19
✎
13:22
|
будтл бы предопределенное значение на сервер не ходит?
|
|||
14
catena
01.03.19
✎
13:23
|
(13)Один раз же, потом кэш.
|
|||
15
aleks_default
01.03.19
✎
13:24
|
(9)Молодец, надо быть уверенным в себе, исправляют и проверяют только трусы
|
|||
16
Wefast
01.03.19
✎
13:42
|
(12) ну я же говорю система через ctrl+пробел дописывает как надо. Через точку все видит.
(15) это не критично, поэтому не понимаю зачем мне логику какую то менять. Но вот код: &НаКлиенте Процедура ПодборВычеркнуть(Команда) ПараметрыФормы = Новый Структура(); ПараметрыФормы.Вставить("Заголовок", НСтр("ru = 'Подбор вычеркнуть'")); ПараметрыФормы.Вставить("ЗаголовокКнопкиПеренести", НСтр("ru = 'Вычеркнуть из списока'")); ПараметрыФормы.Вставить("УникальныйИдентификатор", ЭтаФорма.УникальныйИдентификатор); ПараметрыФормы.Вставить("РежимВыбора", Истина); ТипыНоменклатуры = Новый Массив(); ТипыНоменклатуры.Добавить(ПолучитьТипТовар()); ОтборПоТипуНоменклатуры = Новый ФиксированныйМассив(ТипыНоменклатуры); ПараметрыФормы.Вставить("ОтборПоТипуНоменклатуры", ОтборПоТипуНоменклатуры); ОткрытьФорму("Обработка.ПодборТоваровПоОтбору.Форма", ПараметрыФормы, ЭтаФорма); КонецПроцедуры Куда же мне убрать лишний вызов сервера? Единственное могу поставить &НаСервереБезКонтекста |
|||
17
aleks_default
01.03.19
✎
13:46
|
"ну я же говорю система через ctrl+пробел дописывает как надо. Через точку все видит"
правильно, система не может ошибаться, это же 1С, самая надежная система в мире. |
|||
18
catena
01.03.19
✎
13:50
|
(16)А скрин можно? И платформу. У меня на 8.3.10.2580 всё согласно СП, просто академический интерес.
|
|||
19
Wefast
01.03.19
✎
14:13
|
(18) начал делать скрины восстанавливая тот код и все работает.
В (0) и правда опечатка Неловко, что так упорно сопротивлялся, извините. Поверил на слово, что раньше работало. Уверен, что проверял что через пробел все заполняется. Может не сохранил после проверки. Может не увидел разницы когда заново строчку написал. Хз короче куда смотрел. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |