|
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) А как Сталин у вас ничего нет - чтобы работало как часы и за всём следило ?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |