Доброго время суток, уважаемые.
Только начинаю разбираться в конфигурировании. Вот возник вопрос: Стоит задача посчитать количество элементов справочника. Что быстрее отработает в данном случае?
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| Квартиры.Ссылка
|ИЗ
| Справочник.Квартиры КАК Квартиры
|ГДЕ
| Квартиры.Дом = &Дом";
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| КОЛИЧЕСТВО (Квартиры.Ссылка) КАК Количество
|ИЗ
| Справочник.Квартиры КАК Квартиры
|ГДЕ
| Квартиры.Дом = &Дом";
Запрос.Параметры.Вставить("Дом", Дом);
Выборка = Запрос.Выполнить().Выгрузить();
Пока Выборка.Следующий() Цикл
Количество = Выборка.Количество;
КонецЦикла;
Возврат Количество;
Сам спросил - сам отвечаю)) Выбрать количество работает слегка быстрее вроде, чем выбирать в запросе все элементы, а потом выгружать выборку и считать в ней количество. Разобрался:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КОЛИЧЕСТВО(Квартиры.Ссылка) КАК КоличествоКвартир
|ИЗ
| Справочник.Квартиры КАК Квартиры
|ГДЕ
| Квартиры.Дом = &Дом";
Запрос.УстановитьПараметр("Дом", Дом);
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Возврат Выборка.КоличествоКвартир;
Убираем цикл, так как в поле выборки только одно значение всегда будет. Нет смысла цикл крутить.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой