- В этой теме 1 ответ, 2 участника, последнее обновление 28 минут назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как устранить ошибку в 1С при использовании пустых строк в ВЫРАЗИТЬ()?
Ошибка при вызове метода контекста (ОткрытьФорму)
{Обработка.ЖурналДокументовВнутреннегоТовародвижения.Команда.ВнутреннееТовародвижение.МодульКоманды(8)}:ОткрытьФорму(«Обработка.ЖурналДокументовВнутреннегоТовародвижения.Форма.СписокДокументов»,
[ОшибкаВоВремяВыполненияВстроенногоЯзыка]
по причине:
Ошибка при выполнении запроса.
по причине:
{(56, 11)}: Синтаксическая ошибка «»»
ВЫРАЗИТЬ(<<?>>» КАК Строка(50)) КАК СостояниеГИСМТ
Ошибка в запросе связана с использованием конструкции
|ВЫРАЗИТЬ(» КАК Строка(50)) КАК СостояниеГИСМТ
Платформа 1С не принимает пустую строку в кавычках » как корректное значение для ВЫРАЗИТЬ.
Чтобы исправить ошибку, замените пустую строку на строку с пробелом или используйте функцию ПустаяСтрока():
Правильный вариант:
|ВЫРАЗИТЬ(ПустаяСтрока() КАК Строка(50)) КАК СостояниеГИСМТ
Или, если ПустаяСтрока() не поддерживается в вашем контексте, можно так:
|ВЫРАЗИТЬ(» » КАК Строка(50)) КАК СостояниеГИСМТ
То есть, в вашем запросе замените строку
|ВЫРАЗИТЬ(» КАК Строка(50)) КАК СостояниеГИСМТ
на
|ВЫРАЗИТЬ(ПустаяСтрока() КАК Строка(50)) КАК СостояниеГИСМТ
Это решит синтаксическую ошибку.
—
Если ПустаяСтрока() не работает, используйте
|ВЫРАЗИТЬ(» » КАК Строка(50)) КАК СостояниеГИСМТ
(один пробел в кавычках).
—
В 1С пустые строки в запросах лучше задавать через ПустаяСтрока(), а не через ».
—
Пример исправленного фрагмента:
|ВЫРАЗИТЬ(ПустаяСтрока() КАК Строка(50)) КАК СостояниеГИСМТ