![]() |
|
OLE. Получить категории контрагентов из 7.7 | ☑ | ||
---|---|---|---|---|
0
Slon747
10.02.19
✎
15:25
|
СпрКонтрагенты = ВнешняяБаза.CreateObject("Справочник.Контрагенты");
СпрКонтрагенты.ПорядокНаименований(); СпрКонтрагенты.ВыбратьЭлементы(); Пока СпрКонтрагенты.ПолучитьЭлемент() = 1 Цикл Если СпрКонтрагенты.ЭтоГруппа() = 1 Тогда Продолжить; КонецЕсли; СпрКатегории = ВнешняяБаза.CreateObject("Справочник.Категории"); СпрКатегории.ИспользоватьВладельца(СпрКонтрагенты.ТекущийЭлемент()); СпрКатегории.ВыбратьЭлементы(); Пока СпрКатегории.ПолучитьЭлемент() = 1 Цикл Сообщить("Контрагент: " + СпрКонтрагенты.Наименование + ". Категория: " + СпрКатегории.Наименование); Продолжить; КонецЦикла; КонецЦикла В результате для каждого контрагента выводятся все существующие категории из 7.7, как будто не установлен отбор по владельцу. Что не так и как исправить? |
|||
1
ДенисЧ
10.02.19
✎
15:31
|
СпрКатегории.ИспользоватьВладельца(СпрКонтрагенты.ТекущийЭлемент());
Вот тут правь |
|||
2
Slon747
10.02.19
✎
16:26
|
(1) Нельзя передавать COMОбъект?
А что указать? |
|||
3
Ёпрст
гуру
10.02.19
✎
16:33
|
(2) все можно.
И твой код верный. Только ты выводишь "первую" категорию у выбранного владельца. Выводи код, а не наименование (если конечно, серии кодов не в пределах подчинения у тебя) увидишь, что категории твои разные. Ну или так: Сообщить("Контрагент: " + СпрКонтрагенты.Код+ ". Категория.Владелец: " + СпрКатегории.Владелец.Код); |
|||
4
Slon747
10.02.19
✎
16:46
|
(3) Не понял. Почему только первую вывожу?
У меня для каждого контрагенты выводится 15 строк с разными категориями, хотя там у контрагентов по одной категории. Когда вывожу код, ничего не меняется. Один и тот же код 15 раз. И, кстати, у меня СпрКатегории.Владелец = Неопределено |
|||
5
Ёпрст
гуру
10.02.19
✎
16:48
|
(4) Продолжить;
|
|||
6
Ёпрст
гуру
10.02.19
✎
16:48
|
ну и так,
СпрКатегории.ВыбратьЭлементы(1); |
|||
7
Slon747
10.02.19
✎
16:53
|
(5) Последний "Продолжить" был лишний. Но он ничего не меняет.
(6) СпрКатегории.ВыбратьЭлементы(1) - не помогло. |
|||
8
Ёпрст
гуру
10.02.19
✎
16:55
|
весь код покажи и результат
|
|||
9
Slon747
10.02.19
✎
16:57
|
(8)
СпрКонтрагенты = ВнешняяБаза.CreateObject("Справочник.Контрагенты"); СпрКонтрагенты.ПорядокНаименований(); СпрКонтрагенты.ВыбратьЭлементы(); Пока СпрКонтрагенты.ПолучитьЭлемент() = 1 Цикл ОбработкаПрерыванияПользователя(); Если СпрКонтрагенты.ЭтоГруппа() = 1 Тогда Продолжить; КонецЕсли; СпрКатегории = ВнешняяБаза.CreateObject("Справочник.Категории"); СпрКатегории.ИспользоватьВладельца(СпрКонтрагенты.ТекущийЭлемент()); СпрКатегории.ВыбратьЭлементы(1); Пока СпрКатегории.ПолучитьЭлемент() = 1 Цикл Сообщить("Контрагент: " + СпрКонтрагенты.Наименование + ". Категория: " + СпрКатегории.Наименование); КонецЦикла; КонецЦикла Контрагент: Диляра Ходжиева. Категория: Категории контрагентов Контрагент: Диляра Ходжиева. Категория: . Контрагент: Диляра Ходжиева. Категория: Визажист Контрагент: Диляра Ходжиева. Категория: Депиляция Контрагент: Диляра Ходжиева. Категория: Директор/админ. салона Контрагент: Диляра Ходжиева. Категория: Другие города Контрагент: Диляра Ходжиева. Категория: другое Контрагент: Диляра Ходжиева. Категория: Косметолог Контрагент: Диляра Ходжиева. Категория: Магазин/учебная студия Контрагент: Диляра Ходжиева. Категория: Мастер маникюра Контрагент: Диляра Ходжиева. Категория: Мастер-парикмахер Контрагент: Диляра Ходжиева. Категория: Поставщики Контрагент: Диляра Ходжиева. Категория: Преподаватель-парикмахер Контрагент: Диляра Ходжиева. Категория: Розничный Контрагент: Диляра Ходжиева. Категория: Салон красоты Контрагент: Диляра Ходжиева. Категория: Учебный центр Контрагент: Диляра Ходжиева. Категория: Хозяин салона Контрагент: Диляра Ходжиева. Категория: Категории товаров Контрагент: Шадрина Светлана. Категория: Категории контрагентов Контрагент: Шадрина Светлана. Категория: . Контрагент: Шадрина Светлана. Категория: Визажист Контрагент: Шадрина Светлана. Категория: Депиляция Контрагент: Шадрина Светлана. Категория: Директор/админ. салона Контрагент: Шадрина Светлана. Категория: Другие города Контрагент: Шадрина Светлана. Категория: другое Контрагент: Шадрина Светлана. Категория: Косметолог Контрагент: Шадрина Светлана. Категория: Магазин/учебная студия Контрагент: Шадрина Светлана. Категория: Мастер маникюра Контрагент: Шадрина Светлана. Категория: Мастер-парикмахер Контрагент: Шадрина Светлана. Категория: Поставщики Контрагент: Шадрина Светлана. Категория: Преподаватель-парикмахер Контрагент: Шадрина Светлана. Категория: Розничный Контрагент: Шадрина Светлана. Категория: Салон красоты Контрагент: Шадрина Светлана. Категория: Учебный центр Контрагент: Шадрина Светлана. Категория: Хозяин салона Контрагент: Шадрина Светлана. Категория: Категории товаров и т.д. |
|||
10
Ёпрст
гуру
10.02.19
✎
16:58
|
и есть уверенность, что категории имеют владельцем именно справочник клиентосво ? А не номенклатуру, к примеру ?
|
|||
11
Ёпрст
гуру
10.02.19
✎
16:59
|
еще и из под снеговика..
|
|||
12
Ёпрст
гуру
10.02.19
✎
17:03
|
че возвращает
Метаданные.Справочник("Категории").Владелец.Выбран() у тебя ? |
|||
13
Ёпрст
гуру
10.02.19
✎
17:03
|
справочник поди, ни разу не подчиненный
|
|||
14
Ёпрст
гуру
10.02.19
✎
17:04
|
И так, что кажет ?
Сообщить("Контрагент: " + СпрКонтрагенты.Наименование + ". Категория: " + СпрКатегории.Код+"" ""+СпрКатегории.Владелец.Код); |
|||
15
Slon747
10.02.19
✎
17:17
|
Да, Категории не подчиненный. И вообще, нужно было читать справочник КатегорииКонтрагентов
Всё получилось. Большое спасибо! |
|||
16
Ёпрст
гуру
10.02.19
✎
17:29
|
)
|
|||
17
Kigo_Kigo
10.02.19
✎
21:38
|
И еще в цикле каждай раз СпрКатегории = ВнешняяБаза.CreateObject("Справочник.Категории"); моветон
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |