Фирма «1С» анонсировала изменения в языке запросов и выражениях СКД для 8.3.22

19.11.2021      77649

Фирма «1С» планирует добавить новую функцию для получения уникального идентификатора объекта из ссылки в запросе. Функциональность будет полезна при интеграции приложений 1С с внешними системами.

Что планируют изменить в языке запросов

Официальный технологический блог «Заметки из Зазеркалья» анонсировал изменения в языке запросов и выражениях СКД. Начиная с версии 8.3.22 в технологической платформе добавится функция УникальныйИдентификатор(Ссылка), где параметр Ссылка – выражение, результатом которого является ссылка (кроме ссылок на таблицы внешних источников данных). Функция возвращает уникальный идентификатор переданной ссылки или NULL, если передано значение NULL.

Данное нововведение сделано по многочисленным просьбам сообщества разработчиков 1С, и должно упростить задачи интеграции систем на платформе 1С:Предприятие с внешними системами.

Как будет работать новая функция

В качестве примера работы новой функциональности приводится интеграция с внешней системой на уровне данных, когда таблица внешней системы ссылается на справочник «Товары» в исходной информационной базе, а структура таблицы внешней системы имеет такой вид:

 

Идентификатор

Ключ (число)

Наименование

Название товара на английском языке (строка)

УникальныйИдентификатор

Ссылка на элемент справочника Товары (уникальный идентификатор)

 

Для решения такой задачи нужно на стороне 1С вывести содержимое справочника «Товары», и для каждого товара показать его название на английском языке.

В текущих релизах платформы необходимо выполнить следующие действия:

  1. Добавить в таблицу значений колонку, которую надо заполнить ссылкой на элементы справочника «Товары», обойдя все записи таблицы значений в цикле.
  2. Полученную таблицу значений с помощью запроса объединить со справочником «Товары».

С использованием новой функции, начиная с 1С 8.3.22, сделать это можно будет значительно проще:

 

Пример кода, иллюстрирующий работу новой функции.
Источник: wonderland.v8.1c.ru

 

Полный текст сообщения о развитии языка запросов в платформе 8.3.22 доступен в официальном технологическом блоге.


Автор:
Обозреватель


См. также

Новость Платформа 1С v8.3 Зазеркалье

Фирма «1С» сообщила о запланированных на релиз 8.3.27 изменениях. От нового релиза платформы можно ожидать ускорения в работе, новых возможностей для управления хранилищем двоичных данных, а также асинхронного создания объектов внешних компонент.

23.07.2024    5166    ЕленаЧерепнева    1       

0

Новость Платформа 1С v8.3 Зазеркалье

Разработчики платформы рассказали о планах по оптимизации нагрузки при выполнении ресурсоемких операций, которые будут реализованы в версии 8.3.27. Администраторы смогут настраивать подключение определенных клиентов к выбранным серверам кластера.

17.07.2024    672    ЕленаЧерепнева    0       

1

Новость ИТ-Новость Кадры

Согласно прогнозу Министерства труда, к 2029 году потребность бизнеса в руководителях значительно снизится, а в высококвалифицированных специалистах возрастет. Также ведомство отметило, в каких сферах труда в целом уменьшится и повысится спрос на кадры.

15.07.2024    604    AnastasiaKl    0       

2

Новость Зазеркалье

Фирма «1С» обещает добавить в версию платформы 8.3.27 новую возможность – задавать расписание перезапуска процессов для рабочего сервера.  

10.07.2024    1239    ЕленаЧерепнева    0       

4

Новость Зазеркалье

В «1С:Предприятие 8.3.27» можно будет использовать форматированную строку для вывода в табличный документ. Можно будет определять внешний вид строк в табличном документе, задавая нужные параметры шрифта: размер, начертание, цвет.

03.07.2024    4441    ЕленаЧерепнева    0       

4

Новость Платформа 1С v8.3 Зазеркалье

Официальный технологический блог «Заметки из Зазеркалья» анонсировал новые возможности технологической платформы версии 8.3.27 для настройки быстрого обмена сообщениями с приложениями с использованием протокола WebSocket.

25.06.2024    3272    ЕленаЧерепнева    3       

6

Новость ИТ-Новость Отчетность

С 15 июля 2024 года отчет о движении финансов по зарубежным счетам ИП-резидентов и ЮЛ-резидентов нужно будет сдавать в новом формате. Предыдущие форматы из писем ФНС утратят актуальность.

21.06.2024    795    user1915669    0       

2

Новость Платформа 1С v8.3 Зазеркалье

Фирма «1С» анонсировала задачи, которые разработчики планируют реализовать в технологической платформе 1С:Предприятие 8.3.28. Всего в плане присутствует 20 пунктов. Пока все задачи имеют статус «Запланировано».

18.06.2024    3121    ЕленаЧерепнева    2       

1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ImHunter 320 19.11.21 15:57 Сейчас в теме
Еще бы генерилось новое значение, например, если в ф-ю передать Неопределено.
2. insurgut 207 20.11.21 07:26 Сейчас в теме
Ещё бы на уровне запросов можно было определять битая ссылка или нет, отбирать запросом записи с битыми ссылками.
3. karpik666 3802 20.11.21 15:20 Сейчас в теме
(2) ну по идее это итак есть, надо сравнить с пустой ссылкой, и добавить проверку на Значение.Ссылка is NULL , тогда вернутся все битые ссылки.
4. insurgut 207 20.11.21 17:19 Сейчас в теме
(3) не работает это. Как минимум для полей с составным типом данных.
5. karpik666 3802 20.11.21 17:22 Сейчас в теме
(4) Для составного типа надо добавить проверок на все типы, что туда входят, плюс на неопределено, но принцип тот же.
6. insurgut 207 20.11.21 17:25 Сейчас в теме
(5) так?
ВЫБРАТЬ
	ПлатежныйКалендарь.Период КАК Период,
	ПлатежныйКалендарь.Регистратор КАК Регистратор,
	ПлатежныйКалендарь.СчетНаОплату КАК СчетНаОплату
ИЗ
	РегистрНакопления.ПлатежныйКалендарь КАК ПлатежныйКалендарь
ГДЕ
	ВЫРАЗИТЬ(ПлатежныйКалендарь.СчетНаОплату КАК Документ.ЗаказПокупателя) ЕСТЬ NULL
	И НЕ ВЫРАЗИТЬ(ПлатежныйКалендарь.СчетНаОплату КАК Документ.ЗаказПокупателя) = НЕОПРЕДЕЛЕНО
Показать
7. karpik666 3802 20.11.21 17:29 Сейчас в теме
(6) вот так
ВЫБРАТЬ
    ПлатежныйКалендарь.Период КАК Период,
    ПлатежныйКалендарь.Регистратор КАК Регистратор,
    ПлатежныйКалендарь.СчетНаОплату КАК СчетНаОплату
ИЗ
    РегистрНакопления.ПлатежныйКалендарь КАК ПлатежныйКалендарь
ГДЕ
    ВЫРАЗИТЬ(ПлатежныйКалендарь.СчетНаОплату КАК Документ.ЗаказПокупателя).Ссылка ЕСТЬ NULL
    И ПлатежныйКалендарь.СчетНаОплату Ссылка Документ.ЗаказПокупателя
    И НЕ ПлатежныйКалендарь.СчетНаОплату = Значение(Документ.ЗаказПокупателя.ПустаяСсылка)
Показать
m_aster; insurgut; +2 Ответить
8. insurgut 207 20.11.21 17:33 Сейчас в теме
(7) всё понял где собака зарыта, не само Значение проверять на ЕСТЬ NULL, а Значение.Ссылка. Спасибо!

P.S. Но конечно что-то вроде "ГДЕ ЭтоБитаяСсылка(ЗаписьРегистра.Регистратор) = ИСТИНА" вне зависимости от того, составной тип у поля или нет - очень упростило бы жизнь.
Оставьте свое сообщение