|
Отбор по организации в УФ списка справочника подразделений | ☑ | ||
---|---|---|---|---|
0
svchernova
15.03.12
✎
13:35
|
Здравствуйте,
На управляемую форму списка справочника подразделений поместила поле "Организация" и в свойствах Связь по типу указала "Элементы.Список.Текущие данные.Владелец". На событие "ПриСозданииНаСервере" навесила процедуру &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ОсновнаяОрганизация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация"); Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); Отбор.ЛевоеЗначение = Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Владелец").Поле; Отбор.ПравоеЗначение = ОсновнаяОрганизация; КонецПроцедуры При этом отбор работает. Н при изменении организации что-то уже не соображу, как сделаь отбор подразделений. Ведь список подразделений уже отобран, сформирован, и в нём нет подразделений для нового значения организации. |
|||
1
Grusswelle
15.03.12
✎
13:36
|
imho лучше произвольный запрос с параметром (-ами).
|
|||
2
svchernova
15.03.12
✎
13:38
|
(1) на процедуре "при изменении"?
|
|||
3
Лирик
15.03.12
✎
13:38
|
Все тоже самое вызвать из процедуры события "ОрганизацияПриИзменении"
|
|||
4
svchernova
15.03.12
✎
13:41
|
(3) нет, не получается. Там идёт отбор подразделений новой организации, А в списке уже отобраны подразделения предыдущей организации.
|
|||
5
Лирик
15.03.12
✎
13:44
|
А процедура то корявая.
&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация"); УстановитьОтборПоОрганизации(); КонецПроцедуры &НаСервере Процедура УстановитьОтборПоОрганизации() // сначала попробовать найти а потом добавить если не нашел Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); Отбор.ЛевоеЗначение = Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Владелец").Поле; Отбор.ПравоеЗначение = Организация; КонецПроцедуры |
|||
6
Лирик
15.03.12
✎
13:45
|
(4) Умница. Отбор надо не добавлять а менять.
|
|||
7
svchernova
15.03.12
✎
13:47
|
(6) я понимаю, что менять нужно. Только как?
|
|||
8
Лирик
15.03.12
✎
13:53
|
Список.Отбор.Элементы - это коллекция которую можно перебрать, найти нужный отбор, и изменить его
|
|||
9
Лирик
15.03.12
✎
13:54
|
Напимер по этому условию "Отбор.ЛевоеЗначение = Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Владелец").Поле"
|
|||
10
svchernova
15.03.12
✎
13:57
|
(9) Сейчас повожусь с этим делом.. спасибо
|
|||
11
svchernova
15.03.12
✎
13:59
|
(9) но у меня ведь это и написано в процедуре..
|
|||
12
Лирик
15.03.12
✎
14:02
|
+(9) Где-то в БСП есть общие процедуры которые это делают. Что-то вроде УстановитьОтборСписка(Элемент, ....).
(11) - ты добавляешь!!! Получается 2 отбора Организация = Основная И Организация = Измененная Зайди после смены организации в Все Действия -> Отбор и увидишь, что наложено два отбора |
|||
13
Лирик
15.03.12
✎
14:04
|
О, нашел, живет здесь ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбора
|
|||
14
svchernova
15.03.12
✎
14:04
|
(12) я увидела, что добавляю!!!! Ты прав. Я это видела, но как не добавить, а изменить отбор, чтобы там только одна организация осталась, я не пойму никак
|
|||
15
Defender aka LINN
15.03.12
✎
14:04
|
"Список.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Владелец").Поле" - это 5.
|
|||
16
Лирик
15.03.12
✎
14:04
|
////////////////////////////////////////////////////////////////////////////////
// Функции для работы с отборами динамических списков // |
|||
17
svchernova
15.03.12
✎
14:07
|
(16) Нашла, сейчас попробую!!
|
|||
18
svchernova
15.03.12
✎
14:07
|
(15) Defender, что ты имеешь ввиду?
|
|||
19
Defender aka LINN
15.03.12
✎
14:31
|
(18) А просто - Новый ПолеКомпоновкиДанных("Владелец") - не, не айс?
|
|||
20
acsent
15.03.12
✎
14:34
|
Параметры.Вставить("Отбор", Новый Структура("Организиция", НужнаяОрганизация))
|
|||
21
svchernova
15.03.12
✎
14:40
|
Спасибо всем :) занята была, не могла ответить. сейчас ваши варианты попробую
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |