|
Язык запросов v8.
Язык запросов версии 8.0 сильно изменился
по сравнению с версией 7.7. Можно сказать, что
он стал "русским братом SQL", потому
что из обычных возможностей языка SQL в 1С:Предприятии
8.0 поддерживаются следующие:
° выборка определенных полей (или всех полей
с помощью звездочки *) (SELECT / ВЫБРАТЬ);
° указание таблиц-источников данных (FROM /
ИЗ);
° задание условий отбора (WHERE / ГДЕ);
° группировка по заданным полям с подсчетом
агрегатных функций (GROUP BY / СГРУППИРОВАТЬ
ПО, SUM, COUNT, MIN, MAX);
° отбор групп (HAVING / ИМЕЮЩИЕ);
° сортировка результата (ORDER BY / УПОРЯДОЧИТЬ
ПО)
° соединения таблиц (JOIN...ON / СОЕДИНЕНИЕ
ПО), в том числе левые и правые внешние соединения;
° объединения нескольких запросов (UNION / ОБЪЕДИНИТЬ);
° вложенные подзапросы.
Но по российской традиции мы всегда находим
свой собственный путь и язык запросов системы
1С:Предприятия 8.0 не исключение. Кроме вышеперечисленных
возможностей SQL, в нем поддерживаются уникальные
собственные расширения, в частности:
° обращение к свойствам объектов через точку
или несколько точек (по-научному это называется
"разыменование ссылочных полей");
° обращение к табличным частям объектов, например,
справочников и документов (специфика 1С:Предприятия);
° подсчет промежуточных и общих итогов, в том
числе по группировочным полям и уровням иерархии
(итоговые строки включаются в результат запроса
вместе с детальными);
° виртуальные таблицы для быстрого обращения
к нужным данным из регистров (остатки, обороты
и т.д.);
° расширения для построителя отчетов (о!...
это такая важная тема, что лучше рассмотреть
ее отдельно).
Стоит отметить, что стандартный SQL, кроме выборки
данных, поддерживает также некоторые другие
операции, например, изменение данных, изменение
структуры таблиц, управление правами пользователей
и т.д. Но по статистике обычный SELECT, т.е.
выборка данных, — это 95% всех запросов в мире.
Поэтому ничего страшного нет в том, что в 1С:Предприятии
8.0 с помощью языка запросов можно только считывать
данные и еще можно накладывать блокировку на
считываемые данные с помощью предложения ДЛЯ
ИЗМЕНЕНИЯ, но об этом как-нибудь в следующих
выпусках. Изменение данных в 1С:Предприятии
8.0 производится только средствами встроенного
языка, а изменять структуру конфигурации можно
только в Конфигураторе.
Двуязычность языка запросов
Все конструкции языка запросов в 1С:Предприятии
8.0 можно писать как на русском, так и английском
языке, кроме слова Null, которое на русский
язык никак не переводится. Внимание: объявляется
конкурс на лучший перевод слова Null.
Учтите, что слово "Неопределено" в
версии 8.0 уже занято, а 0 (ноль) или пустая
строка ("") не отражают суть значения
Nul. Присылайте ваши варианты на адрес stasmit@mail.ru.
Самые интересные варианты будут опубликованы
на сайте и предложены разработчикам фирмы "1С"
для реализации. Юморные варианты тоже принимаются
к рассмотрению. :)
Обработка результата запроса
Теперь продвинемся немного дальше и рассмотрим
механизмы обработки результата запроса.
Важным инструментом в 1С:Предприятии 8.0 является
механизм выборки из результата запроса. Можно
организовать линейный и иерархический обход
записей, а также обход по группировкам, причем
в произвольном порядке измерений.
Более того, на основе результата запроса вообще
без усилий (как по волшебству!) можно сформировать
сводную таблицу, в которой будут представлены
итоговые данные по комбинации измерений. Порядок
измерений пользователь может менять буквально
мышкой, перетаскивая измерения и ресурсы, как
ему вздумается. Это позволяет на основе одного
запроса получить множество отчетов, в том числе
разнообразные кросс-таблицы!
Подведем итоги
Действительно, возможности версии 8.0 поражают
воображение и, я уверен, нужно приложить все
усилия, чтобы как можно быстрее ее освоить!
Это даст вам премущество на рынке, более высокую
зарплату и подарит радость от реализации своих
проектов!
Меня недавно спросили, когда восьмерка станет
массовой, то есть когда наберется критическая
масса по количеству внедренных проектов, пользователей
и программистов? Отвечу немного невежливо вопросом
на вопрос: а зачем вам ждать? Изучайте сейчас
и получайте конкурентное преимущество! Если
вы разработчик, то сможете реализовывать более
масштабные и интересные проекты, если руководитель
предприятия — получите премущество над конкурентами,
снизите издержки, если пользователь — сможете
работать с самой современной программой, облегчите
себе работу, ваша ценность в глазах работодателя
только возрастет! Нет смысла ждать каких-нибудь
полгода, когда восьмеркой серьезно заинтересуются
поголовно все, нужно создавать свое будущее
именно сегодня, своими собственными руками!
|
из рассылки
|
|

');
document.write('');
//-->
place for your ads
place for your ads
place for your ads
place for your ads
place for your ads
place for your ads
place for your ads |
|
|