Также случались ситуации, что такая ошибка появлялась при установлении отбора по группе в справочнике Номенклатура в 1С Управление торговлей , при открытии журнала Входящие ТТН для ЕГАИС в 1С Розница.
Запросы
Перед тем как возьметесь за конструктор, попробуйте представить поля выходной таблицы, источники этой таблицы, приблизительно как должна получать эти данные система.
Таблицы и поля
Группировка строк запроса.
При формировании запроса очень часто бывает необходимо «свернуть» данные запроса, то есть к примеру у нас в результате выборки получились такие записи
Здесь в процессе группировки в качестве группируемых полей будет выступать сотрудник, в качестве суммируемых сумма. В итоге мы должны получить следующие записи:
Условие и параметры в запросе
Передать параметр в запрос, можно следующим образом:
Псевдонимы
Объединения
Соединения
Перед построением запроса, необходимо четко определить какие данные и из каких таблиц должны попадать в результат запроса. Огромное значение имеет то, как запрос будет связывать между собой данные из нескольких таблиц. Существуют следующие виды соединений:
Внутреннее соединение или inner join(галочка «ВСЕ» не стоит не слева, не справа), необходимо использовать тогда когда из двух таблиц нужно получить только те данные которые совпадают по условию связи в обоих таблицах.
Левое соединение или left inner join (галочка «ВСЕ» стоит слева) – в результат запроса попадают все записи которые находятся в левой таблице, и те записи из правой таблицы которые отвечают условию связи.
Полное соединение или full outer join (галочка «ВСЕ» стоит и слева и справа) в запрос попадут все записи из обоих таблиц, которые 1С попытается сопоставить с помощью условия связи.
Вложенные запросы
Сортировка
Тип данных NULL
NULL тип данных который можно получить только в одном месте: в запросе, этот тип данных получается, когда при соединении таблиц левым, правым или полным соединением, нет данных удовлетворяющих условию соединения. Любая проверка значения с этим типом всегда возвращает Ложь. Любая операция с этим полем возвращает NULL. Для обработки этого типа существуют следующие операторы:
ЕСТЬNULL(ПроверяемоеЗначение, ЗначениеКотороеНадоВернутьЕслиВПроверяемомЗначенииNULL) выражение вернет либо первое значение, либо второе если первое NULL, удобно использовать в полях выходной таблицы
Использование функций
1С Управляемые Формы. Программное создание таблицы значений и динамического списка
Если указать синоним для колонки Ссылка или Наименование в динамическом запросе, то результирующий список на форме не будет отображать Ссылку и Наименование.
ВЫБОР (CASE)
Пример возвратит в поле «ВидНоменклатуры» текстовое значение — «Товар» или «Услуга».
Промокоды на Займер на скидки
В примере мы отбираем записи, у которых значение реквизита «Услуга» установлено в положение «Истина». В данном примере можно было бы обойтись и таким условием:
С помощью оператора «ЗНАЧЕНИЕ()» в условиях использовать обращение к предопределенным элементам и перечислениям в запросе 1С:
Значения времени могут указываться следующим образом:
Чаще всего условия указываются в виде параметров, передаваемых в запрос:
Условие можно наложить на тип реквизита, если он составного типа:
Если необходимо ограничивать отбор из списка значений или массива, можно поступить следующим образом:
Условие может быть и сложное, состоящее из нескольких условий:
Динамическое формирование запроса: Статьи и материалы.
В запросе 1C ЗНАЧЕНИЕ () можно использовать для указания предопределенных значений, таких как значения перечисления, пустую ссылку или значение предопределенного элемента (справочника, плана счетов, ПВХ и т.д).
Тип данных можно проверить следующим образом: с помощью функций ТИП() и ТИПЗНАЧЕНИЯ() или с помощью логического оператора ССЫЛКА.
Оператор Выразить в запросах 1С служит для преобразования типов данных.
С помощью него можно преобразовать строковые значения в дату или ссылочные в строковые данные и так далее.
В практическом применении оператор Выразить() очень часто используется для преобразования полей неограниченной длины, потому что поля неограниченной длины нельзя отбирать, группировать и тд. Если такие поля не преобразовывать, Вы получите ошибку Нельзя сравнивать поля неограниченной длины и поля несовместимых типов.
В практическом применении оператор Выразить очень часто используется для преобразования полей неограниченной длины, потому что поля неограниченной длины нельзя отбирать, группировать и тд.
Очищается ТабличныйДокумент при передаче его как параметр с Клиента на Сервер
Когда параметром передается ТабличныйДокумент из Клиента на Сервер, то его данные очищаются (остаются только группировки).
Если в горизонтальной группе размещается несколько элементов, то «растягиваемым» может быть только первый.
В случае если разместить в такой группе другие «растягиваемые» элементы, то вся группа перестает масштабироваться по горизонтали.
А если хотя бы одна группа из расположенных на странице не масштабируется, то не масштабируются и все остальные.
В результате вся страница не растягивается по горизонтали.
Работа со свойством текущие данные 1С.
1Cv82: Ограничения
При создании произвольного запроса динамического списка, необходимо указывать основную таблицу. Иначе в коде нельзя задать значения параметров запроса — список параметров пуст.
Если запрос устанавливается кодом, и он неправильный, то список параметров тоже пуст
При этом ошибка возникает не в момент установки текста запроса, а в момент установки параметров.
Нельзя группировать в запросе по основной таблице
Если в произвольном запросе указана основная таблица, то группировать по этой таблице не получится. Для обхода этого ограничения результирующую выборку можно соединить с еще одной таблицей и указать, что эта новая таблица основная.
Ограничения на получение данных текущей строки динамического списка
Если колонка динамического списка не отображается в таблице на форме, нельзя получить к ней доступ в коде через «ТекущиеДанные». Это ограничение можно преодолеть таким образом: сделать колонку в редакторе видимой, а при открытии формы скрывать ее (ЭтаФорма.Элементы.Список.ПодчиненныеЭлементы.Колонка.Видимость = ложь).
Нельзя получать реквизиты объектов через точку, для отображения их в таблице на форме
Нельзя получать реквизиты объектов через точку, для отображения их в таблице на форме. Необходимо в запросе динамического списка получать все необходимые реквизиты.
В случае когда основная таблица — накопительный регистр, наблюдаются странные ошибки платформы
После кликания мышкой по табличной части а потом по заголовку колонки, или при развороте на полный экран, платформа не могла найти объект «recorder». Помогло искусственное соединение регистра со справочником, который был сделан основной таблицей:
Нельзя получать реквизиты объектов через точку, для отображения их в таблице на форме
Нельзя получать реквизиты объектов через точку, для отображения их в таблице на форме. Необходимо в запросе динамического списка получать все необходимые реквизиты.
Лучше не указывать синонимы для колонок Ссылка и Наименование
Если указать синоним для колонки Ссылка или Наименование в динамическом запросе, то результирующий список на форме не будет отображать Ссылку и Наименование.
Таблица, для которой отсутствует ключ, уникально идентифицирующий каждую запись таблицы ссылка для объектных таблиц и ключ записи для таблиц регистров.
1С Управляемые Формы. Программное создание таблицы значений и динамического списка (Часть 2)
Перед прочтением данной статьи рекомендуется ознакомиться с первой частью, в которой описаны примеры программного создания элементов, команд, реквизитов управляемой формы, а также описание стандартных возможностей для работы с ними.
В данной же части будет рассмотрено программное создание динамических списков, таблиц значений на форме, их вывод в элементы формы и стандартные возможности для работы.
Модифицировать формы рекомендуется программно для удобного обновления конфигураций и исключения конфликтов, а также для удобной поддержки кода. Со статьями о механизмах модификации можно ознакомиться в разделе полезных ссылок.
Также все описанные в текущем разделе процедуры и функции находятся во внешней обработке УпрФормы.
Примеры программного создания элементов, команд, реквизитов управляемой формы, а также описание стандартных возможностей для работы с ними можно будет посмотреть в части 1.
Для запуска обработки в режиме предприятия необходимо наличие объектов «Справочники.Номенклатура», подчиненный ему «Справочники.ХарактеристикиНоменклатуры» и «РегистрыСведений.ЦеныНоменклатуры”.
Получение ссылки через параметры выполнения команды
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы