08.08.2024 Максим Овечёнков 2687
Различия декларативного языка программировани...

Содержание:

1.    Описание типов значений в запросах

2.    Различия в разграничении функций при работе с данными с помощью SQL и внутреннего языка запросов 1С 

3.    Процесс разыменования ссылочных полей

4.    Возможность работы на двух языках: русском и английским 


Внутренний язык запросов 1С (ЯЗ 1С) имеет много общего с SQL, и это неудивительно, ведь он был создан на основе SQL. Обе системы используют схожие языковые конструкции и функции, такие как "ВЫБРАТЬ" в ЯЗ 1С, эквивалентное "SELECT" в SQL. Однако, несмотря на значительное сходство, существуют и важные различия. Понимание этих различий может быть интересно для тех, кто только начинает изучать язык запросов 1С и до этого уже сталкивался с SQL, так и для тех, кто уже знает ЯЗ 1С и хочет продолжить работу в IT, но уже в области SQL. В этой статье мы рассмотрим основные расхождения между SQL и языком запросов 1С, а также обсудим уникальные возможности и ограничения каждой из систем.  


1.    Описание типов значений в запросах


Изучение любого языка программирования начинается с понимания типов значений, и внутренний язык запросов 1С (ЯЗ 1С) не является исключением. В ЯЗ 1С существует несколько основных типов: строка, дата, число, ссылка и булево. В то время как в SQL их гораздо больше — около двадцати. В ЯЗ 1С литералы «1», «-1» и «1.2» просто имеют тип ЧИСЛО, в то время как в SQL все гораздо сложнее: существуют отдельные типы для целых чисел, дробных чисел и даже для денег.


Тип ДАТА в ЯЗ 1С также отличается своей уникальностью. Он имеет формат ‘01010001000000’, который включает в себя как дату, так и время. В SQL для времени существует специальный отдельный тип, что добавляет гибкость, но и усложняет синтаксис.


Самым же уникальным типом в ЯЗ 1С является ссылка. В отличие от SQL, который работает с данными в таблицах, в 1С имеются документы, справочники, регистры и другие объекты. Каждый из этих объектов характеризуется и идентифицируется с помощью типа ссылка, что делает работу с данными более удобной и интуитивной в контексте 1С.


2.    Различия в разграничении функций при работе с данными с помощью SQL и внутреннего языка запросов 1С


Еще одно важное различие между SQL и ЯЗ 1С заключается в возможности изменения данных. В SQL вы можете удалять, добавлять новые и изменять существующие строки в таблицах, что делает его мощным инструментом для управления данными. В ЯЗ 1С такие операции невозможны: он предназначен исключительно для выборки данных. Это ограничение обусловлено спецификой платформы 1С Предприятие, где изменение данных осуществляется через другие механизмы и инструменты.


Такое разграничение функций делает ЯЗ 1С более узкоспециализированным, сосредотачивая его возможности на анализе и извлечении данных, в то время как SQL обеспечивает полный цикл работы с данными, включая их модификацию.  


3.    Процесс разыменования ссылочных полей


Но что есть в языке запросов 1С чего нет в SQL? Разыменование ссылочных полей. Что это такое. В языке запросов 1С можно обращаться не только к полям исходных таблиц, указанных в предложении ИЗ, но и к полям таблиц, на которые ссылаются поля этих таблиц, если они имеют ссылочный тип. При этом имена полей указываются через точку. Использование такой конструкции приводит к неявному присоединению дополнительных таблиц для получения значений полей, указанных "через точку".


Пример:

ВЫБРАТЬ

ОстатокНаСкладах.Номенклатура КАК Номенклатура,

ОстатокНаСкладах.Количество КАК Количество,

ОстатокНаСкладах.Товар.Номер КАК Номер

ИЗ

РегистрНакопления. ОстатокНаСкладах КАК ОстатокНаСкладах

…………

Такой возможности в SQL нет. Там используются просто соединения.


4.    Возможность работы на двух языках: русском и английским 


Еще одним уникальным отличием ЯЗ 1С от SQL является поддержка двух языков: русского и английского. Хотя английский признан международным языком программирования, платформа 1С, будучи особенно популярной в России и странах СНГ, позволяет писать запросы на кириллице. Это делает работу с системой более доступной для русскоязычных пользователей, устраняя языковой барьер и упрощая написание и чтение запросов. Возможность использования родного языка при написании кода значительно повышает удобство и эффективность работы с 1С.


Язык запросов 1С и SQL имеют много общего, так как ЯЗ 1С был создан на основе SQL. Однако между ними существуют важные различия, которые делают каждый из них уникальным и подходящим для своих специфических задач. ЯЗ 1С предлагает более узкоспециализированный подход, ориентированный на анализ и извлечение данных, в то время как SQL обеспечивает полный цикл работы с данными, включая их модификацию.


Особенности ЯЗ 1С, такие, как поддержка русского языка и возможность разыменования ссылочных полей, делают его особенно удобным для работы в платформе 1С Предприятие. Эти возможности позволяют упростить синтаксис запросов и сделать их более читаемыми и интуитивными для русскоязычных пользователей.


Понимание разницы между тем и другим языком запросов позволяет ускоренной миграции специалисту в ту или другую область IT.

 

Специалист компании "Кодерлайн"
Максим Овечёнков

Наши проекты

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в период опытной эксплуатации на новой версии....

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

Фармацевтическое предприятие «Оболенское»
АО «Фармацевтическое предприятие «Оболенское»

Отрасль:
Фармацевтическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием

- Адаптации блоков/подсистем планирования продаж, закупок и казначейства. ...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот» для сервиса «1С:Облачная карта решений»; - Возможность интеграц...

Внедрение ПП "1С:Корпоративный инструментальный пакет 8" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Различная отраслевая специфика:
- Переработка давальческого сырья
- Учет спецодежды и спецоснастки
Управление отношениями с кли...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в данные международного учета (ГААП) на платформе «1С:Предприятие 8»:...

ООО "Эскорт-Центр"
ООО "Эскорт-Центр"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Сквозной учет затрат по объектам
- Бухгалтерский учет
- Расчет зарплаты
- Планирование и учет производства собственных изделий ...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

Реализовали разработку уникального модуля «Интернет-магазины» на базе программного продукта «1С:Управление холдингом» согласно технического ...

ООО "ТК "Сытый Дом-НН"
ООО "ТК "Сытый Дом-НН"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Управление торговлей 8

Взаиморасчеты с покупателями
Оптовая торговля
Управление складскими запасами...

Разработка функциональных требований к информсистеме на базе «1С:Управление холдингом 8»
ФГУП «СВЯЗЬ-безопасность»

Отрасль:
Охранные услуги

Внедренное типовое решение:
1С:Управление холдингом

- Зафиксировали процессы по блокам бухгалтерского, налогового учета, казначейства, бюджетного управления, CRM, подсистем закупок и реализаци...

Филиал ГлавУпДК при МИД России фирма «Инпредкадры»
Филиал ГлавУпДК при МИД России фирма «Инпредкадры»

Отрасль:
Государственное управление

Внедренное типовое решение:
1С:Бухгалтерия

- Расчеты с контрагентами;
- Управленческий учет;
- Формирование отраслевой отчетности;
- Интеграция с отраслевыми продуктами ст...

 ЗАО "Инвестгеосервис" -ДО
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Работа с файлами;
- Делопроизводство;
- Процессы движения документов;
- Учет и контроль исполнения поручений;
- Учет рабо...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение