Здравствуйте!

Подскажите пожалуйста, почему команда "Выполнить" не хочет выполнять следующий код
Попытка¶ Если Прав(Строка(3),1) = "1"¶ И (3*2) <> 11 Тогда¶ Результат = "часа";¶ Иначе¶ Результат = "часов";¶ КонецЕсли; ¶Исключение¶КонецПопытки;

Выдаёт ошибку:
{ОбщийМодуль.CRM_ОбщегоНазначения.Модуль(332)}: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(1,1)}: Ожидается последовательность операторов

А здесь он вообще не увидел оператора "Исключение":
Попытка ¶ Результат = рбсДополнительныеПроцедуры.ЧислоПрописьюВРодительномПадеже(3); ¶Исключение¶КонецПопытки;

{ОбщийМодуль.CRM_ОбщегоНазначения.Модуль(332)}: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(1,9)}: Ожидается ключевое слово 'Исключение' ('Except')
---
Удалите знаки ¶
---
Удалите знаки ¶
---
Спасибо! Странно, но у меня были примеры, в которых эти символы тоже присутствовали, но при этом все работало
---
А вот здесь, что ему может не нравится?

Результат = Новый ТаблицаЗначений; Результат.Колонки.Добавить("Представление"); Результат.Колонки.Добавить("НаименованиеОбъекта"); Результат.Колонки.Добавить("Адрес"); Результат.Колонки.Добавить("ВозможностьВыездаСтоимость"); Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ | рбсДоговорОбъектыКонтрагентаДляОбслуживания.Ссылка КАК Ссылка, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ОбъектКонтрагентаДляОбслуживания КАК Объект, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ВыездНеПредусмотрен КАК ВыездаНет, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ВыездПлатный, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.СтоимостьВыезда | ИЗ | Документ.рбсДоговор.ОбъектыКонтрагентаДляОбслуживания КАК рбсДоговорОбъектыКонтрагентаДляОбслуживания | ГДЕ | рбсДоговорОбъектыКонтрагентаДляОбслуживания.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл СтрокаТаблицаРезультат = Результат.Добавить(); СтрокаТаблицаРезультат.НаименованиеОбъекта=Выборка.Объект.Наименование; СтрокаТаблицаРезультат.Адрес=Выборка.Объект.Адрес; Если Выборка.ВыездаНет=Истина Тогда СтрокаТаблицаРезультат.ВозможностьВыездаСтоимость="Не предоставляется"; ИначеЕсли Выборка.ВыездПлатный=Истина Тогда СтрокаТаблицаРезультат.ВозможностьВыездаСтоимость=Строка("Неограниченно в период действия договора." +Выборка.СтоимостьВыезда+"руб."); Иначе СтрокаТаблицаРезультат.ВозможностьВыездаСтоимость=Строка("Неограниченно в период действия договора. Бесплатно"); КонецЕсли; КонецЦикла;

:{(1)}: Ошибка при вызове метода контекста (Выполнить): {(1, 9)}: Синтаксическая ошибка "|"
ВЫБРАТЬ <<?>>| рбсДоговорОбъектыКонтрагентаДляОбслуживания.Ссылка КАК Ссылка, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ОбъектКонтрагентаДляОбслуживания КАК Объект, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ВыездНеПредусмотрен КАК ВыездаНет, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.ВыездПлатный, | рбсДоговорОбъектыКонтрагентаДляОбслуживания.СтоимостьВыезда | ИЗ | Документ.рбсДоговор.ОбъектыКонтрагентаДляОбслуживания КАК рбсДоговорОбъектыКонтрагентаДляОбслуживания | ГДЕ | рбсДоговорОбъектыКонтрагентаДляОбслуживания.Ссылка = &Ссылка
---
это кара небесная за рукоягодничный код.
можно обсудить только ужесточение такой кары
---
я думал, что время когда отраслевки пестрели такими перлами уже прошло(
---
иногда никак без "Выполнить"
---
ложь
---
субъективно
---
Объективно

Запустил глобальный поиск по общим модулям ЗУПа.
Там строк не знаю сколько: может сотни тысяч, может миллионы...

Результат: не нашел использования системной команды Выполнить()
как-то без неё обошлись разрабы.

А вот в костыльных поделках без нее никак не обойтись)
---
Не долго думая, ОбщегоНазначения.ВыполнитьВБезопасномРежиме
---
да, там используют.
---
то есть искать в одной!! из многих конфигураций, метод который там может не использоваться (тем более в ЗУП), это объективно?
смешно
---
Попытка Исключение делайте вне команды выполнить:

```1c
    Попытка
    Выполнить(<Выражение>)
    Исключение
    КонецПопытки
```

это во первых а во вторых, там непечатные символы в тексте выражения, не нужно переводы строк использовать, в одну строчку и желательно проще выражения...