|
v7: Обход справочника
| ☑ |
0
SRM1C
05.05.17
✎
06:50
|
День добрый!
У кого имеется любой код, для примера как обойти все элементы справочника игнорируя группы в 7.7, а то не знаком с ней, а годных примеров не нашел.
|
|
1
Antony8x
05.05.17
✎
06:55
|
(0) интересно, как искали?
Спр = СоздатьОбъект(“Справочник.ВидСправочника“);
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент() = 1 Цикл
Если Спр.ТекущийЭлемент().ЭтоГруппа() Тогда
Продолжить;
КонецЕсли
// Дальнейшие действия с Спр.ТекущийЭлемент()
КонецЦикла;
|
|
2
Zmich
05.05.17
✎
06:57
|
(1). В 7.7 нет типа Булево.
|
|
3
Antony8x
05.05.17
✎
06:57
|
"ЭтоГруппа() = 1"
|
|
4
SRM1C
05.05.17
✎
07:02
|
Потестим, спасибо
|
|
5
Chameleon1980
05.05.17
✎
07:39
|
(4) фигли тестить - наливай да пей.
Можно еще запросом (черным, прямым) :)
|
|
6
vladko
05.05.17
✎
08:18
|
(0) Вот пример того же, но через запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|ТекЭлемент = Справочник.ВидСправочника.ТекущийЭлемент;
|Группировка ТекЭлемент без групп;
|"//}}ЗАПРОС
;
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
Спр = СоздатьОбъект(“Справочник.ВидСправочника“);
Пока Запрос.Группировка(1) = 1 Цикл
Спр.НайтиЭлемент(Запрос.ТекЭлемент);
// Дальнейшие действия с Спр.ТекущийЭлемент()
КонецЦикла;
|
|
7
Смотрящий
05.05.17
✎
08:19
|
(6) Функция где ? Он пустой будет твой запрос
|
|
8
Zmich
05.05.17
✎
08:22
|
(7). Не будет он пустым. Не обязательны функции в запросе.
|
|
9
mishaPH
модератор
05.05.17
✎
08:24
|
(7) не будет. это на ранних релизах без функции пустой выходил.
|
|
10
пипец
05.05.17
✎
08:59
|
есть еще универсальные обработки refprint.ert например
|
|
11
Злопчинский
05.05.17
✎
09:46
|
(8) для обработки справочников можно без функции, а регистры нужна функция
|
|
12
Злопчинский
05.05.17
✎
09:48
|
(1) достаточно Если Спр.ЭтоГруппа()=1 Тогда....
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший