Свежая пресса
Изменения в законе «О бухгалтерском учете и финансовой отчетности в Украине»

Опубликовано: 2017.11.10

Уважаемые коллеги-бухгалтера! Спешим сообщить Вам, об изменениях в ЗУ «О бухгалтерском учете и финансовой отчетности в Украине», касающихся изменений некоторых положений, и вступит в силу с 01.01.2018, а уже с 01.01.2019 года вступят в силу тот абзац, касающийся предоставления финотчетности.

Подробнее...
Обновление программы EffectorSaver

Опубликовано: 2017.10.20

Уважаемые пользователи! Спешим сообщить вам о выходе новой версии программы Effector Saver! 

Подробнее...
Осенняя акция от компании FinSoft

Опубликовано: 2017.10.09

Что еще может так скрасить серые осенние будни, как не акция на программный продукт 1С от компании FinSoft

Подробнее...

Обучающие статьи. Урок 13 - Запросы в 1С

Опубликовано: 2017.02.06

Урок 13 - компания FinSoft

Начинаем новую трудовую неделю с новым уроком от компании FinSoft. Сегодня мы узнаем, что такое запросы в 1С и с чем их едят.

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

Конструкция запроса:

Запрос = Новый Запрос;
Запрос.Текст = «<Текст запроса>»;
РезультатЗапроса = Запрос.Выполнить.Выгрузить();

Давайте разберем. В первой строке мы присвоили переменную «Запрос» новому типу Запрос.

Далее указали сам текст запроса, который, кстати, тоже может быть переменной, организованной ранее. Третей строкой мы указали запросу «Выполниться», а затем «Выгрузить()» результат в переменную «РезультатЗапроса». Итогом наших действий станет таблица значений в переменной «РезультатЗапроса». Метод «Выгрузить()» чем-то похож на метод таблицы значений «ВыгузитьКолонку()».

Текст запроса. Чтобы не писать все вручную, нам на помощь приходит конструктор запросов 1С.
Открыть его можно через контекстное меню в любом месте модуля. После завершения конструирования на этом месте будет текст запроса.

Пример запроса.

Обратите внимание, из какого места я вызвал контекстное меню, между двумя кавычками.

Конструктор задаст вопрос, нужно ли нам в указанном месте создать текст запроса – соглашаемся.

Сам конструктор выглядит так:

Конструктор запроса

Давайте пройдемся кратко по закладкам.

Таблицы и поля – тут мы укажем, какие именно нам нужны таблицы, откуда мы собираемся получить данные. И поля это собственно данные, например наименование. Это основная закладка

Группировка – бывают такие ситуации, когда нужно сгруппировать несколько строк с одинаковыми значениями, в этом случае вам на эту закладку. Тут так же можно суммировать некоторые выражения.

Условия – на этой закладке можно задавать определенные условия запросов.

Дополнительно – тут можно указать параметры выборки, например, выбрать только одну запись или только разрешенные или сделать выборку в виртуальную таблицу. Виртуальная таблица это тоже таблица 1с, вот только ее нигде не существует вне этого запроса. Этот инструмент будет нам полезен в сложных запросах.

Объединения и псевдонимы. Объединения – с помощью этого механизма мы можем указать на объединение некоторых полей, если у них одинаковое значение. Этот механизм будет нужен при выборке из двух и более таблиц, т.е. в сложном запросе. Псевдонимы – вы можете назвать отобранные поля, так как вам захочется. Это полезно если у вас есть источник, куда нужно загрузить выборку из запроса с определенными колонками. Этими псевдонимами можно задать соответствие колонок и полей. Так же псевдонимы могут помочь не запутаться в выбранных полях.

Порядок – на этой закладке можно установить сортировку выводимых данных. Эта закладка визуализация метода «Сортировать()» от таблицы значений.

Итоги – тут можно указать, по какому полю сделать итоги и что суммировать. Полученный результат запроса, будет иметь вид дерева. Итоги тоже можно отнести к сложным запросам.

Построитель – эту закладку пока пропустим, для нее будет отдельная тема.

Пакет запросов – тут будут расположены пакеты запросов, если их несколько.

Попробуем сделать свой первый запрос. Обратимся к справочнику номенклатура и попробуем получить все его элементы. Выбираем таблицу номенклатура, двойным щелчком по ней в закладке таблицы и поля. Таблица переместится в среднюю колонку. В этой колонке будут таблицы, с которыми работает текущий запрос. Давайте развернем состав этой таблицы и найдем поле «Наименование». Двойной щелчок по нему и поле отправится в третью колонку, это колонка отобранных полей в текущем запросе. На этом закончим настройки конструктора и нажмем «Ок». Конструктор сформирует текст запроса.

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

Листинг 1. Простой запрос к справочнику номенклатура

Текст запроса

Запрос можно изменять, если повторно вызвав, конструктор, находясь курсором на тексте запроса. Сам текст запроса можно редактировать по кнопке «Запрос» в левом нижнем углу конструктора запросов.

Что же, давайте запустим отладку и посмотрим на нашу таблицу, полученную в результате Выполнения и Выгрузки запроса.

Результат выгрузки запроса

В результате получаем знакомую уже нам таблицу значений с одной колонкой «Наименование». Если раскрыть саму таблицу внутри нее знакомая строка таблицы значений со значением наименование одной из номенклатур. Вот так просто работает запрос в 1С.

 

Так же, наша компания проводит обучение по двум курсам:

 Обучение проводится в вечернее время, что позволит вам не отрываться от работы или обучения, практикующим программистом нашей компании.

 От вас требуются уверенные знания ПК, и желание научиться чему-то новому.