
- •Постановка задачи сквозного примера
- •1.1. Создание новой информационной базы
- •1.3. Окно "Конфигурация"
- •1.4. Свойства объекта Конфигурации
- •1.4.1. Основные свойства
- •1.4.2. Группа свойств "Представление"
- •1.4.3. Группа свойств "Разработка"
- •1.5. Пункт меню "Конфигурация"
- •1.5.1. Сохранение Конфигурации
- •1.5.2. Обновление Конфигурации
- •1.5.3. Сохранение Конфигурации в файл
- •1.6. Администрирование
- •1.7. Запуск в режиме "1с: Предприятие"
- •1.8. Что мы узнали
- •Глава 2. Работа с константами
- •2.1. Создание константы
- •2.2. Свойства константы
- •2.3. Создание основной формы констант
- •2.4. Обращение к значениям констант из встроенного языка
- •2.4.1. Менеджер константы
- •2.4.2. Набор констант
- •2.5. Самостоятельная работа
- •2.6. Что мы узнали
- •Глава 3. Регистр сведений "Курсы"
- •3.1. Окно редактирования регистра сведений
- •3.1.1. Закладка "Основные"
- •3.1.2. Закладка "Данные"
- •3.1.3. Закладка "Формы"
- •3.2. Ввод данных в регистр сведений
- •3.3. Работа с регистром сведений из встроенного языка системы
- •3.3.1. Получение отдельных значений
- •3.3.2. Менеджер записи
- •3.3.3. Использование выборки
- •3.4. Самостоятельная работа
- •3.5. Использование набора записей
- •3.5.1. Обработка событий
- •3.6. Что мы узнали
- •Глава 4. Объект "Запрос"
- •4.1. Создание запроса "вручную"
- •Написание текста запроса и его выполнение
- •4.1.2. Выборка данных из результата запроса
- •4.2. Что мы узнали
- •Глава 5. Разработка интерфейса пользователя
- •5.1. Создание нового интерфейса
- •5.2. Свойства интерфейса
- •5.3. Редактирование интерфейса
- •5.3.1. Редактирование свойств пункта меню
- •5.3.2. Свойство "Действие"
- •5.3.3. Создание новых пунктов меню
- •5.3.4. Добавление новой панели
- •5.4. Самостоятельная работа
- •Сохраните и обновите конфигурацию.
- •5.5. Тестирование интерфейса
- •5.6. Переключение интерфейсов
- •5.6.1. Добавление команды переключения интерфейса
- •5.6.2. Перенос подменю из одного интерфейса в другой
- •5.6.3. Переключение интерфейсов в режиме "1с: Предприятие"
- •5.7. Что мы узнали
- •Глава 6. Табличный документ
- •6.1. Команда "Вывести список" режима "1с: Предприятие"
- •6.2. Объект "ТабличныйДокумент"
- •6.3. Формирование отчета с использованием макета
- •6.3.1. Создание общего макета
- •6.3.2. Конструктор макета для создания табличного документа
- •6.3.3. Свойства ячейки табличного документа
- •6.3.4. Именованные области
- •6.4. Улучшение вида результирующего табличного документа
- •6.4.1. Объединение ячеек
- •6.4.2. Изменение ширины столбцов
- •6.4.3. Форматирование содержимого ячейки
- •6.4.4. Установка свойств табличного документа
- •6.5. Самостоятельная работа
- •6.6. Формирование отчета без использования макета
- •6.7. Что мы узнали
-
Написание текста запроса и его выполнение
Методически, работа с объектом типа Запрос строится следующим образом:
// Создаем объект запрос Запрос = Новый Запрос(); Запрос.Текст = "Здесь мы запишем текст запроса"; // Если текст запроса содержит некоторые параметры, то перед // его выполнением необходимо им присвоить конкретные значения: Запрос.УстановитьПараметр("Параметр1",ЗначениеПараметра1); …………………………………………………………… Запрос.УстановитьПараметр("ПараметрN",ЗначениеПараметраN); Результат = Запрос.Выполнить(); // Обработка результата
Текст запроса всегда начинается с ключевого слова ВЫБРАТЬ языка запросов, за которым через запятую следует указать: из каких реквизитов каких объектов запрос должен сделать выборку.
Так, в нашем случае нам нужны свойства Период и Курс регистра сведений Курсы. Поэтому мы можем записать следующий текст:
Запрос.Текст ="ВЫБРАТЬ |РегистрСведений.Курсы.Период, РегистрСведений.Курсы.Курс";
Если мы сейчас выполним запрос, то объект построит следующую таблицу, содержащую результат запроса:
Период |
Курс |
28.12.2007 |
25,2600 |
01.01.2008 |
24,8500 |
01.01.2009 |
23,7844 |
31.01.2009 |
23,6222 |
02.03.2009 |
23,5729 |
01.04.2009 |
23,3801 |
01.05.2009 |
23,1021 |
31.05.2009 |
23,7090 |
30.06.2009 |
23,3483 |
30.07.2009 |
23,2450 |
18.08.2009 |
23,3532 |
Для удобства написания текста запроса можно таблице, из которой объект будет выбирать записи, дать краткое название – псевдоним, применив ключевое слово КАК:
Запрос.Текст = " ВЫБРАТЬ Курсы.Период, Курсы.Курс |ИЗ РегистрСведений.Курсы КАК Курсы";
Сейчас в выборку попадают все записи, что есть в регистре (за все возможные периоды). Для того чтобы записи удовлетворяли какому-либо условию, можно в тексте запроса после оператора ВЫБРАТЬ применить ключевое слово ГДЕ, после которого написать условие отбора записей.
В учебных целях мы ограничим выборку датой регистрации объединения:
Запрос.Текст = "ВЫБРАТЬ Курсы.Период, Курсы.Курс |ИЗ РегистрСведений.Курсы КАК Курсы |ГДЕ Курсы.Период >= &Период";
Обратим внимание на знак & перед именем параметра запроса.
Чтобы запрос работал правильно, необходимо этому параметру присвоить значение перед выполнением запроса, поэтому полный текст будет выглядеть следующим образом:
// Создаем объект запрос Запрос = Новый Запрос(); // Формируем текст запроса Запрос.Текст = "ВЫБРАТЬ Курсы.Период, Курсы.Курс |ИЗ РегистрСведений.Курсы КАК Курсы |ГДЕ Курсы.Период >= &Период"; // Устанавливаем значение параметра Запрос.УстановитьПараметр("Период", Константы.ДатаРегистрации.Получить()); // И выполняем запрос Результат = Запрос.Выполнить();
Последнее, что нам осталось сделать - это указать порядок, в котором записи будут располагаться в таблице, содержащей результат запроса:
Запрос.Текст = "ВЫБРАТЬ Курсы.Период, Курсы.Курс |ИЗ РегистрСведений.Курсы КАК Курсы |ГДЕ Курсы.Период >= &Период |УПОРЯДОЧИТЬ ПО Период УБЫВ";