Работа с объектами на основе табличной модели. Запросы и обработки в среде 1с 8.2

 

Табличная модель подразумевает работу с данными на основе запросов.

 

Запрос – агрегатный объект используемый для выборки данных аналогичный сквл в релящионных базах данных.

Для задания содержания запроса используется специальный язык аналогичный SQL

Пример содержания запроса.

"ВЫБРАТЬ

| Номенклатура.Наименование,

| Номенклатура.ЦенаПродажи,

| Номенклатура.ВидНоменклатуры,

| Номенклатура.ОсновнаяЕдиницаИзмерения

|ИЗ

| Справочник.Номенклатура КАК Номенклатура";

 

 

"ВЫБРАТЬ

| Номенклатура.ВидНоменклатуры,

| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Номенклатура.Наименование) КАК | Наименование,

| МИНИМУМ(Номенклатура.ЦенаПокупки) КАК ЦенаПокупки

| ИЗ

| Справочник.Номенклатура КАК Номенклатура

| СГРУППИРОВАТЬ ПО

| Номенклатура.ВидНоменклатуры"

 

Обычно работа с запросами включает следующие этапы.

· Создание запроса Запрос1 = Новый Запрос;

· Задание содержания запроса Запрос1.Текст =

"ВЫБРАТЬ

· Выполнение запроса Запрос.Выполнить();

· Обработка результатов запроса

 

 

Создание запросов выполняется как создание объектов в среде 1с, с помощью конструктора Новый.

 

Запрос1 = Новый Запрос;

Задание содержания запроса – задание его свойства "Текст".

Запрос1.Текст =

"ВЫБРАТЬ

| Номенклатура.ВидНоменклатуры,

| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Номенклатура.Наименование) КАК Наименование,

| МИНИМУМ(Номенклатура.ЦенаПокупки) КАК ЦенаПокупки

|ИЗ

| Справочник.Номенклатура КАК Номенклатура

|ГДЕ

| Номенклатура.ЭтоГруппа = ЛОЖЬ

|

|СГРУППИРОВАТЬ ПО

| Номенклатура.ВидНоменклатуры";

 

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();

 

 

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

 

 

 

Рис.1.59. Вызов конструктора запроса.

 

 

 

Рис.1.60. Вызов конструктора запросов с обработкой результатов

 

Рис.1.61. Формирование текста запроса в конструкторе запросов

 

Кнопка "запрос" позволяет показать результаты.

 

В результате работы конструктора будет создан такой текст запроса

 

&НаСервере

Процедура ВыполнитьЗапросСервер() //{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

 

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Номенклатура.Наименование,

| Номенклатура.ЦенаПродажи,

| Номенклатура.ВидНоменклатуры,

| Номенклатура.ОсновнаяЕдиницаИзмерения

|ИЗ

| Справочник.Номенклатура КАК Номенклатура";

 

Результат = Запрос.Выполнить();

 

ВыборкаДетальныеЗаписи = Результат.Выбрать();

 

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

// Вставить обработку выборки

[ИмяПоля]

ВыборкаДетальныеЗаписи

КонецЦикла;

 

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

 

 








Дата добавления: 2017-08-01; просмотров: 178;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.