Также ошибка может появиться, если ранее код использовался в режиме толстого клиента, но после был запущен в тонком клиенте.

1С запрос выбор когда несколько условий
Эти операторы возможно использовать во всех 4 ситуациях, но контекст (окружаемые переменные у них отличаются).
В первых двух случаях условия накладываются на поля выборки, например:
ВЫБРАТЬ Ссылка ИЗ Справочник.Контрагенты КАК СпрКонтрагенты ГДЕ СпрКонтрагенты.ИНН»»
Обращение идет через имя таблицы (в простых запросах может опускаться, но в сложных может вызывать неоднозначность поля).
Данное условие вызывает ограничение выборки (обычно уменьшает ее)
В конструкторе запроса находятся на вкладке условия:
В произвольном варианте пишется текстом, в обычном выбирается поле, оператор сравнения и значение:
Как пользоваться конструктором запросов в 1С 8.3
ВЫБОР КОГДА
Этот условный оператор используется для преобразования значения, ограничивает же выборку только когда расположен после служебного слова ГДЕ.
Допустимо несколько подчиненных условий. Может находится в полях выборки, полях условий ГДЕ, группировок, итогов (универсальный оператор для сложных условий)
ВЫБРАТЬ
ВЫБОР
КОГДА 1 = 2
ТОГДА «Никогда не будет истиной»
КОГДА 1 = 1
ТОГДА «Всегда будет истиной»
ИНАЧЕ ДАТАВРЕМЯ(1, 1, 1)
КОНЕЦ КАК ПолеПредставленияЗначения
Вариант использования в условии ГДЕ, результат выборки должен возвращать булево значение либо сравниваться с чем-то еще
ВЫБРАТЬ Ссылка ИЗ Справочник.Контрагенты КАК К ГДЕ ВЫБОР КОГДА К.ИНН = «» ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ
ВЫБРАТЬ Ссылка ИЗ Справочник.Контрагенты КАК К ГДЕ ВЫБОР КОГДА К.ИНН = «» ТОГДА «» ИНАЧЕ «Заполнено» КОНЕЦ = «Заполнено»
Итак, в указанном нами окне мы должны получить результат выполнения нашего кода, а именно сейчас переменной Результат , так как мы сейчас еще не выполнили данную строку кода мы имеем пустое значение и тип данных переменной Неопределено.

Использование некоторых функций в запросах. Сложные запросы
Возвращает значение, отформатированное согласно аргументам функции. В экономических информационных системах она часто используется для преобразований полей даты или времени. Синтаксис функции:
format — определяет формат возвращаемого значения. Необязательный аргумент;
firstdayofweek — константа, которая определяет первый день недели. Необязательный аргумент;
firstweekof year — константа, которая определяет первую неделю года. Необязательный аргумент.
Возможные значения аргумента format (символ «» является обязательным):
- ? «шш» — возвращает номер месяца в текстовом формате;
- ? «шшшт» — возвращает наименование месяца в текстовом формате;
- ? «d» — возвращает номер дня месяца в текстовом формате;
- ? «ddd» — возвращает краткое наименование дня недели в текстовом формате;
- ? «dddd» — возвращает полное наименование дня недели в текстовом формате;
- ? «у» — возвращает номер дня года в текстовом формате.
Возвращает значение Истина, если аргументу соответствует пустое значение, в противном случае возвращает значение Ложь.
Промокоды на Займер на скидки
В качестве аргумента могут быть: идентификатор, выражение, другая функция. Как правило, используется в качестве встроенной функции, например, в функциях IIF, NZ.
Возвращает одно из двух значений в зависимости от истинности или ложности логического выражения.
truepart — возвращаемое значение (выражение для расчета значения, константа, идентификатор поля), если логическое выражение истинно;
f alsepart -— возвращаемое значение (выражение для расчета значения, константа, идентификатор поля), если логическое выражение ложно.
Возвращает существующее значение для записей с непустым значением выражения и заданное значение для записей с пустым значением выражения.
где expr — выражение. В качестве аргумента могут использоваться выражения, идентификаторы;
valueif null — устанавливаемое значение для записей с пустым значением поля.
Пример: Nz ( [Спецификация поставки]![КолСдано]; 0) — если для записи значение поля Количество сдано пусто, то присвоить 0.
Важно! Функцию NZ при создании запроса в режиме SQL использовать нельзя
Задание 3.13. Менеджерам по продажам и закупкам, а также руководителю постоянно необходима информация о помесячных поставках каждого наименования товара. Создать необходимый запрос.
Создадим новый запрос. Исходные таблицы — Поставка, Товар, СпецПоставки. Выбираем поле Наименование (товара).
В бланке запроса для нового поля установим флажок Вывод на экран. Зададим имя нового поля — Месяц.
Установим группировку записей по полям: Товар, Месяц.
В режиме Конструктора запроса добавим в бланк запроса поле Количество. Для поля Количество в строке Групповые Операции необходимо определить функцию SUM и присвоить полю имя Поставлено. Проверим результат выполнения запроса и сохраним запрос.
1С запрос выбор когда несколько условий –
Стоит отметить, что обычно используется ограничение над измерениями, так как иначе условие отнесется к выборке для получения, а не на сам результат на ресурсы ограничения следует наложить в операторе ГДЕ, чтобы получить ожидаемый результат.

Левое (Правое) соединение
Контрагенты | |
Контрагент | Полное наименование |
Иванов | Иванов И.И. |
Петров | Петров П.П. |
Сидоров | Сидоров С.С. |
Семёнов | Семёнов С.С. |
Продажи | |
Контрагент | Сумма |
Иванов | 5000 |
Петров | 7500 |
Сидоров | 15000 |
Продажи контрагентам | ||
Контрагент | Полное наименование | Сумма |
Иванов | Иванов И.И. | 5000 |
Петров | Петров П.П. | 7500 |
Сидоров | Сидоров С.С. | 15000 |
Семёнов | Семёнов С.С. | Null |
Контрагенты | |
Контрагент | Полное наименование |
Иванов | Иванов И.И. |
Петров | Петров П.П. |
Сидоров | Сидоров С.С. |
Продажи | |
Контрагент | Сумма |
Иванов | 5000 |
Петров | 7500 |
Сидоров | 15000 |
Создание и работа с запросами (для начинающих): Статьи и материалы.
Полное соединение
Поскольку полное соединение несколько сложнее других видов соединений, немного изменим наш пример. Теперь нам нужно получить не просто развёрнутый список продаж, а список всех действующих контрагентов.
Закупки | |
Контрагент | Сумма |
Иванов | 4000 |
Андреев | 3500 |
Продажи | |
Контрагент | Сумма |
Иванов | 5000 |
Петров | 7500 |
Сидоров | 15000 |
Таблица после полного соединения, со всеми полями исходных таблиц:
Действующие контрагенты | |||
КонтрагентЗакупки | СуммаЗакупки | КонтрагентПродажи | СуммаПродажи |
Иванов | 4000 | Иванов | 5000 |
Null | Null | Петров | 7500 |
Null | Null | Сидоров | 15000 |
Андреев | 3500 | Null | Null |
Окончательный вид таблицы, в которой контрагенты сведены в одно поле:
Действующие контрагенты | ||
Контрагент | СуммаЗакупки | СуммаПродажи |
Иванов | 4000 | 5000 |
Петров | 7500 | |
Сидоров | 15000 | |
Андреев | 3500 |
Ниже приводится вариант соответствующего запроса. Обратите внимание, что данные по контрагентам мы получаем не просто из документов, а из подзапросов. В них мы выполняем группировку по контрагентам таким образом, что бы каждый контрагент был представлен в выборке но одному разу. И, естественно, не забываем про Null:
При построении вычисляемых полей для строковых значений может быть использована операция конкатенации соединения строк, которая записывается с помощью символа или.

Процедура не может возвращать значение
Такой текст ошибки платформа 1С выдает на этапе синтаксического контроля, при сохранении конфигурации, внешнего отчета или обработки.
Причин у этой ошибки может быть несколько.
- Опечатка в имени переменной
- Обращение к переменной, которая нигде в области видимости не объявлена (неявной инициализацией с присвоением значения, явным образом с использованием ключевого слова “Перем”, или передана в качестве параметра)
- Написание на клиенте серверного кода. Например, обращение к менеджеру справочников “Справочники”, и т.п. Клиентская часть приложения “не видит ” серверные объекты языка
- Также ошибка может появиться, если ранее код использовался в режиме толстого клиента, но после был запущен в тонком клиенте.
Внимательно следить за правильностью набранного кода, своевременно объявлять переменные или передавать их в качестве параметров. Писать серверный код только в серверных модулях, а также использовать соответствующие инструкции препроцессора, например “&НаСервере”.
Оператор EXCEPT – Вычитание
- Использование при обходе коллекции количества элементов вместо индекса. Индексы начинаются с нуля, а количество элементов – с единицы. Поэтому следующий код гарантированно приведет к ошибке: Массив[Массив.Количество()]
- Последствия удаления элементов из коллекции, очистки коллекции или замены коллекции на пустую
- Ошибочное увеличение счетчика в цикле “Для”
Обращение к процедуре как к функции
Суть этой ошибки в том, что процедура не может возвращать значение. И если мы в коде используем вызов процедуры справа от знака присваивания, это приведет к ошибке.
А вот неправильное использование процедуры синтаксическая проверка (Ctrl + F7) успешно обнаруживает, и не даст сохранить конфигурацию или внешнюю обработку/отчет, пока ошибка не будет устранена.
1. Воспроизведем ошибку “ Обращение к процедуре как к функции” . При этом платформа не даст сохранить изменения, т.к. не проходит синтакс-контроль.
2. Воспроизведем ошибку “ Обращение к процедуре объекта как к функции” . Здесь мы неверно используем метод объекта массива “Добавить”, который является процедурой.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы