|   |   | 
| 
 | v7: Обход справочников циклом и вывод их количества | ☑ | ||
|---|---|---|---|---|
| 0
    
        Ayvengo 01.05.14✎ 18:35 | 
        Ребят, подскажите как это сделать в 7ке? А-то мышление 8е, не сообразить никак без знаний     | |||
| 1
    
        ДенисЧ 01.05.14✎ 18:37 | 
        Чо?
 Кого куда обойти и вывести? | |||
| 2
    
        Ork 01.05.14✎ 18:37 | 
        (0) Чего нужно конкретно? Посчитать количество справочников или число элементов в справочнике?     | |||
| 3
    
        Ayvengo 01.05.14✎ 18:38 | 
        Что-то в этом роде, но на 7ке
     Запрос = Новый Запрос(
 | |||
| 4
    
        vcv 01.05.14✎ 18:38 | 
        Сообщить(Метаданные.Справочник()) - количество справочников     | |||
| 5
    
        Ayvengo 01.05.14✎ 18:39 | 
        упс, вот так
 Для каждого Строчка Из Метаданные.Справочники Цикл Запрос = Новый Запрос( "ВЫБРАТЬ | СУММА(1) КАК Количество |ИЗ | Справочник."+Строчка.Имя+" КАК Список"); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Сообщить(Строчка.Имя + ". Количество элементов: " + Выборка.Количество); КонецЕсли; КонецЦикла; | |||
| 6
    
        Ork 01.05.14✎ 18:42 | 
        //В Метаданные.Справочник() сидит количество
 Для поз=1 По Метаданные.Справочник() Цикл Спр = Метаданные.Справочник(поз); Сообщить(Спр.Идентификатор); КонецЦикла; | |||
| 7
    
        Torquader 01.05.14✎ 18:45 | 
        Ой какая интересная задача ^_^
 Макс=Метаданные.Справочник(); Для лч=1 По Макс Цикл лмс=Метаданные.Справочник(лч); лз=СоздатьОбъект("Запрос"); лр=лз.Выполнить("Выбирать Все;Функция Кол1=КОЛИЧЕСТВО(Справочник."+лмс.Идентификатор+");"); кол=лр.Получить(); КонецЦикла; | |||
| 8
    
        Torquader 01.05.14✎ 18:45 | 
        Только не выбирать, а Обрабатывать Все;     | |||
| 9
    
        Ayvengo 01.05.14✎ 18:51 | 
        (7) не работает :(
 (6) не понял где там сидит количество элементов. | |||
| 10
    
        Torquader 01.05.14✎ 18:53 | 
        (9) Там запрос на количество элементов по памяти написан - так что - не взлетит без напильника.     | |||
| 11
    
        Ayvengo 01.05.14✎ 18:54 | 
        Эх, знать бы еще как допиливать :(     | |||
| 12
    
        Ayvengo 01.05.14✎ 18:55 | 
        Пишет про неожиданное выражение "Количество"     | |||
| 13
    
        Torquader 01.05.14✎ 18:57 | 
        (12) Блин, функцию зовут счетчик.     | |||
| 14
    
        Ayvengo 01.05.14✎ 19:06 | 
        Вот так взлетело
 МаксСправочников=Метаданные.Справочник(); Для лч=1 По МаксСправочников Цикл лмс=Метаданные.Справочник(лч); Запрос=СоздатьОбъект("Запрос"); Запрос.Выполнить(" |ТекЭлемент = Справочник."+лмс.Идентификатор+".ТекущийЭлемент; |Функция Сч = Счётчик();"); Сообщить(лмс.Представление() + " " + Запрос.Сч); КонецЦикла; Всем спасибо. | |||
| 15
    
        Torquader 01.05.14✎ 19:22 | 
        (14) Я никогда не был силён в семёрочных запросах, так как там никакого подобия SQL не было.     | |||
| 16
    
        Злопчинский 02.05.14✎ 00:05 | 
        внезапный вопрос - а как считать группы? и надо ли их считать?     | |||
| 17
    
        ДенисЧ 02.05.14✎ 00:06 | 
        (16) Группы по осени считают :-)
 Делай запрос ко всему и фильтруй | |||
| 18
    
        Torquader 02.05.14✎ 00:36 | 
        (16) А разве запрос не считает группы ?     | |||
| 19
    
        Torquader 02.05.14✎ 00:37 | 
        Можно, конечно, простым перебором - в него попадут все элементы, которые есть. А можно считать заголовок dbf-файла и посмотреть, сколько там записей (но попадут и недавно удалённые).     | |||
| 20
    
        Мигало 02.05.14✎ 00:39 | 
        Очучаешь себя суперстаром ...     | |||
| 21
    
        КонецЦикла 02.05.14✎ 01:16 | 
        "А-то мышление 8е"
 СП пропил? | |||
| 22
    
        Torquader 02.05.14✎ 01:27 | 
        (21) Нужно ещё определённое умение, чтобы читать СП, так как они достаточно различаются.     | |||
| 23
    
        Злопчинский 02.05.14✎ 01:33 | 
        однозначно, клюшки и снеговика писали люди рахных политических формаций. Снеговик - он как Жириновский, клюшки - как Зюганов     | |||
| 24
    
        Torquader 02.05.14✎ 01:35 | 
        (23) А как Сталин у вас ничего нет - чтобы работало как часы и за всём следило ?     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |