Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 10:45

ЭлементыФормы.ПолеТабличногоДокумента

Автор nenoob, 20 фев 2012, 09:55

0 Пользователей и 3 гостей просматривают эту тему.

sergejK74

Для каждого ЛицевыеСчета Из Результат Цикл для твоего случая (это к вопросу о итераторе). Только код какой-то необычный. Может имеет смысл воспользоваться Конструктором запроса с обработкой результата?
Кнопочка Спасибо - слева!

nenoob

Результат получается, сначала итоговая сумма, а потом список сетов, а нужна итоговая сумма, не пойму как ее одну в таблицу ставить ...

sergejK74

Ты хочешь узнать сколько у тебя элементов в справочнике Лицевые счета?

Тогда может как-то так
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КОЛИЧЕСТВО(ЛицевыеСчета.Ссылка) КАК КоличествоЛицевыхСчетов
|ИЗ
| Справочник.ЛицевыеСчета КАК ЛицевыеСчета";

Результат = Запрос.Выполнить();
Если Не Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Если Выборка.Следующий() Тогда
сообщить(Выборка.КоличествоЛицевыхСчетов);
КонецЕсли;
КонецЕсли;
Кнопочка Спасибо - слева!

nenoob

Да да да! Спасибо. именно это и надо, я с "если" запутался ! :)

nenoob

Пытаюсь сдедать вывод в таблицу результата, что не правильно делаю?
Если есть где почитать про это то ткните пальцем ...


   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |  КОЛИЧЕСТВО(ЛицевыеСчета.Владелец.ОсновнойЛицевойСчет) КАК Абонент
   |ИЗ
   |   Справочник.ЛицевыеСчета КАК ЛицевыеСчета";

   Результат = Запрос.Выполнить().Выгрузить();
   КоличествоАбонентов = Результат.Количество();
   
   Результат = Запрос.Выполнить();
   
    ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");
ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("Строка");

ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");

Если Не Результат.Пустой() Тогда
Выборка = Результат.Выбрать();
Если Выборка.Следующий() Тогда
ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("Строка");
ОбластьЛицевыеСчета.Параметры.Квартиросъемщик = ЛицевыеСчета.Абонент;
КонецЕсли;
КонецЕсли;
ТабДок.Показать();

sergejK74

ОбластьЛицевыеСчета.Параметры.Квартиросъемщик = Выборка.Абонент;
Кнопочка Спасибо - слева!

nenoob

Да тут затупил, поправил, но открывается пустая таблица?

sergejK74

Кнопочка Спасибо - слева!

nenoob

да, на другом примере он работал, а именно так выдает пустую

sergejK74

Не совсем понятно что ты хочешь получить из запроса? количество счетов? названия переменных не отражают логики
Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
|    КОЛИЧЕСТВО(ЛицевыеСчета.Ссылка) КАК КоличествоЛицевыхСчетов
|ИЗ
|    Справочник.ЛицевыеСчета КАК ЛицевыеСчета";

   Результат = Запрос.Выполнить().Выгрузить();
   КоличествоАбонентов = Результат.Количество();
   Результат = Запрос.Выполнить();
    ТабДок = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");
   
    Если Не Результат.Пустой() Тогда
        Выборка = Результат.Выбрать();
Выборка.Следующий();
            ОбластьЛицевыеСчета = Макет.ПолучитьОбласть("Строка");
ОбластьЛицевыеСчета.Параметры.Квартиросъемщик = Выборка.КоличествоЛицевыхСчетов;
ТабДок.Вывести(ОбластьЛицевыеСчета);
    КонецЕсли;
    ТабДок.Показать();

Кнопочка Спасибо - слева!

Теги:
Рейтинг@Mail.ru

Поиск