Основы запросов в языке 1С 8.3

топ 100 блогов luckyea7708.07.2022

/// Как запросить все строки со значениями всех столбцов 
/// из таблицы в 1с 8.3, 8.2
 
&НаСервере
Процедура КакЗапроситьВсеСтрокиИВсеСтолбцыИзТаблицыНаСервере()
 
    // Если нужно выбрать абсолютно все столбцы
    // из таблицы - используем звёздочку.
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |  *
        |ИЗ
        |  Справочник.Номенклатура"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 

/// Как запросить все строки со значениями определенных столбцов
/// в 1с 8.3, 8.2
 
&НаСервере
Процедура КакЗапроситьВсеСтрокиСЗначениямиОпределенныхСтолбцовНаСервере()
 
    // У каждого столбца в таблице есть своё имя.
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |  Наименование,
        |  Вкус,
        |  Цвет
        |ИЗ
        |  Справочник.Номенклатура"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 
/// Как использовать в запросах псевдонимы для столбцов и таблиц
/// в 1с 8.3, 8.2
 
&НаСервере
Процедура КакИспользоватьПсевдонимыВЗапросахНаСервере()
 
    // Псевдонимы делают текст запроса более лаконичным
    // и понятным.
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |   Продукты.Наименование КАК ИмяПродукта,
        |   Продукты.Вкус КАК ВкусПродукта
        | ИЗ
        |   Справочник.Номенклатура КАК Продукты"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 
/// Как добавить в результат запроса столбец с определенным
/// значением в 1с 8.3, 8.2
 
&НаСервере
Процедура КакДобавитьВРезультатЗапросаСтолбецСОпределеннымЗначениемНаСервере()
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ
        |  Наименование,
        |  1000 КАК Цена,
        |  Калорийность
        |ИЗ
        |  Справочник.Номенклатура"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 
/// Как убрать дубликаты из результата запроса в 1с 8.3, 8.2
 
&НаСервере
Процедура КакУбратьДубликатыИзРезультатаЗапросаНаСервере()
 
    // В справочнике Цвета есть повторящиеся элементы.
    // Построим запрос так, чтобы в результат попали
    // только различные цвета.
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ РАЗЛИЧНЫЕ
        |  Наименование
        |ИЗ
        |  Справочник.Цвета"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 
/// Как ограничить количество строк в результате запроса
/// в 1с 8.3, 8.2
 
&НаСервере
Процедура КакОграничитьКоличествоСтрокВРезультатеЗапросаНаСервере()
 
    // Сделаем выборку первых 5 самых каллорийных продуктов.
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ ПЕРВЫЕ 5
        |  Наименование,
        |  Калорийность
        |ИЗ
        |  Справочник.Номенклатура
        |УПОРЯДОЧИТЬ ПО
        |   Калорийность УБЫВ"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры
 
/// Как отобрать из таблицы только те строки,
/// на чтение которых у пользователя есть права в 1с 8.3, 8.2
 
&НаСервере
Процедура КакВыбратьТолькоРазрешенныеСтрокиНаСервере()    
 
    // Эта возможность нужна для баз, в которых
    // включено ограничение прав на уровне записей (RLS).
 
    // Например, мы хотим, чтобы конкретный пользователь ни
    // при каких условиях не смог прочитать документы
    // другой организации, которые хранятся в этой же базе.
 
    // Вот и получается, что на некоторые записи (строки) таблицы
    // документов ему надо дать права на чтение, а не некоторые нет.
 
    // Если данное слово не указать, то в случае, когда запрос
    // выберет записи, на которые у пользователя нет прав,
    // запрос отработает с ошибкой. 
 
    Запрос = Новый Запрос(
        "ВЫБРАТЬ РАЗРЕШЕННЫЕ
        |   Ссылка
        | ИЗ
        |   Документ.ПродажаЕды"
    );
 
    ВыполнитьЗапросИВывестиНаФорму(Запрос);
 
КонецПроцедуры

Смотрите также:
Электронный учебник по программированию в 1С
Рекомендации по изучению программирования 1С с нуля
Игра "Кто хочет стать миллионером?" с вопросами на определенную тематику (язык программирования JavaScript, английские, немецкие, французские, испанские, португальские, ни­дер­ландские, итальянские слова, электробезопасность, промышленная безопасность, бокс и т.п.), написанная на 1С
Программирование в 1С 8.3 с нуля — краткий самоучитель
Комплексная подготовка программистов 1С:Предприятие 8.2
Сайты с уроками программирования и со справочниками
Youtube-каналы с уроками программирования
Сайты для обучения программированию
Лекции и уроки


Оставить комментарий

Архив записей в блогах:
... нашу немного эмоциональную неделю. Что важного? - Самая важная и хорошая новость: Спортивный арбитражный суд не удовлетворил иск Олимпийского комитета России к Международной ассоциации легкоатлетических федераций. Таким образом, российские легкоатлеты на Олимпиаду не едут. И в воск ...
Почему-то я ее именно так восприняла. Как исповедь. Хотя написана она не в этом совсем стиле, а так стандартно с юмором, как сейчас модно. Но несмотря на юмор, Крэйг почему-то постоянно оправдывается, извиняется и вспоминает "стыдные" моменты, где он был совсем не на высоте. ...
В то время как иные отцы гордятся неуплатой алиментов и отказом от общения с детьми, другие выдирают детей из материнских рук, рискуя всем.  Ведь тебя все равно поймают. Тебя ...
Валить или не валить? Остаться в России или уехать? Об этом спрашивали себя наши родители в 1990-х. Возможно, этим же вопросом были озадачены их прабабушки и прадедушки в начале XX века. Дилемма, претендующая на статус новой русской, в не меньшей мере тревожит и нас — поколение без ...
Когда ты в прорубь погружаешь Свою башку, но и не знаешь, Как правмльно Христу креститься... Толь слева - вправо, то ль наоборот... Одумайся! Еб*ный рот! Всё то, что стоит твоя вера Ничто не стоит ни хрена - Ведь ты же - лузер в этой вере... Зачем тебе, ведь жизнь одна... P.S. ...