![]() |
![]() |
![]() |
|
Быстрый выбор из справочника с отбором Ø |
☑ | ||
---|---|---|---|---|
0
Deryni
08.12.05
✎
11:07
|
Можно ли каким-то способом при быстром выборе из справочника включить в нем отбор, или это не возможно стандартным способом.
ЗЫ: Способ с предварительным созданием списка значений и потом выбором из него не предлагать. До него я и сам додумался. |
|||
1
zzz
08.12.05
✎
11:14
|
Деруны :)
"Включить отбор" - слишком общая фраза. Отбор по родителю? Запросто. |
|||
2
Deryni
08.12.05
✎
11:23
|
во первых не надо задрачивать.
что значить общая фраза. У меня в справочнике есть поле, по которому я могу сделать отбор при желании. Вопрос в том, можно ли включить отбор этот обор перед тем как откроется список быстрого выбора. И кстати как делается отбор по родителю? |
|||
3
Бит
08.12.05
✎
11:28
|
(2)Думаю после "задрачивать", (1) если и ответит то не ваш вопрос. поповоду первого вопросто то ИМХО штатными средствами не как, по поводу второго вопроса - "Связан с".
|
|||
4
zzz
08.12.05
✎
11:30
|
2(2) Да как же мне тебе "задрачить" если ты далеко, противный?
ИспользоватьРодителя - Установить родителя для формы списка справочника. УстановитьОтбор - Установить отбор списка справочника. ПриОткрытии, Форма.Параметр и т.п. РТФМ, ЖКК |
|||
5
Deryni
08.12.05
✎
11:42
|
(2) У нас был тут как-то конфликт.
(3) Господа. Я знаю как устанавливать отбор в форме списка и метод использовать родителя знаю. Я говорю о быстром выборе. Нужно объяснять что это такое? Насколько я помню о ИСпользоватьРодителя, УстановитьОтбор можно использовать только в форме списка справочника. У меня же используется выбор без открытия формы списка. |
|||
6
Deryni
08.12.05
✎
11:45
|
в (0) было написано:
"при быстром выборе " |
|||
7
ИС
08.12.05
✎
11:47
|
"У меня же используется выбор без открытия формы списка."
Это как? |
|||
8
Deryni
08.12.05
✎
11:50
|
РТФМ, ЖКК. "Конфигурирование и администрирование т.2"
В форме элемента на свойствах элемента формы соответствующего реквизиту типа "Справочник" на вкладке дополнительно "Быстрый выбор". В этом случае при выборе элемента открывается не форма списка справочника а маленький список, в котором перечень элементов справочника. |
|||
9
zzz
08.12.05
✎
11:50
|
Если ты используешь "Быстрый выбор" значит у тебя там элементов - раз/два и обчёлся. Иначе - смысл?
Но если надо - то только СпЗн. |
|||
10
Deryni
08.12.05
✎
11:53
|
А шо все замолчали?
|
|||
11
Deryni
08.12.05
✎
11:56
|
(9)
О, наконец то понял. Объясняю зачем это. Есть справочник типов цен. Там от 10 до 15 элементов. Посему выбираем списком. Но нужно вставить ограничение, чтобы некоторые пользователи не могли видеть все типы цен. Я сделал со списком, но подтормаживает (у нас начальство жаба давит на новый сервер, посему в дбф-базе порядка 1Гб на 20 человек, которые работают не в терминале). Имхо нормальный отбор будет работать быстрее. Но вот как его использовать я не представляю. Хотя может в алгоритме формирования списка чегой-то изменить нужно. Короче я так понял в лоб проблема не решается. |
|||
12
zzz
08.12.05
✎
12:02
|
2(11) ограничивать в выборе - это хорошо, но проверки обязательно ставить в проведение дока.
Что у тебя притормаживает, Дерунчик?? Там нечему тормозить. Формируешь единожды СпЗн и всё. // ------------------- Процедура ПриНачалеВыбораЗначения( текРеквизит, флСтанд) Если текРеквизит="ТипЦен" Тогда флСтанд = 0; текТипЦен = ТипЦен; Если спзнДопустимыеТипыЦен.ВыбратьЗначение(текТипЦен, ,, 120, 2)<>1 Тогда Возврат; КонецЕсли; ТипЦен = текТипЦен; КонецЕсли; КонецПроцедуры //ПриНачалеВыбораЗначения |
|||
13
Deryni
08.12.05
✎
12:06
|
Ой ну не надо строить из себя самого умного.
Я знаю как формируется список. Только вот с единожды способ не проходит. Единожды я так понимаю при запуске системы (или при отркрытии документа?). Оба варианта далеко не идеальны. Не буду объяснять почему, сам поймешь. Поэтому приходится формировать список перед каждым выбором. Почему то поддтормаживает. Почему не знаю. Хотя элементов там всего ничего. Посмотрю еще алгоритм формирования списка. Хотя собственно говоря там тоже ничего особенного нет. |
|||
14
zzz
08.12.05
✎
12:08
|
2(13)
1. Код подтормживания 2. Не понимаю почему надо формировать каждый раз! Такой я вот глупенький, Дерунчик .. Объясни, а? |
|||
15
ИС
08.12.05
✎
12:09
|
8)В этом случае штатными средствами никак. Выход, создай отдельную форму списка справочника и в нем ПриОткрытии() все и ваяй.
|
|||
16
Deryni
08.12.05
✎
12:09
|
И еще.
Я не хочу проверять при проведении. Я просто хочу не показывать некоторым пользователям весь перечень цен. |
|||
17
zzz
08.12.05
✎
12:10
|
2(16) Да не проверяй. Просто это был совет.
|
|||
18
Deryni
08.12.05
✎
12:16
|
(14)
Объясняю. Если сам не можешь сообразить. Поскольку типы цен - справочник, то: а) могли добавить удалить новые типы цен в процессе работы. б) могли изменить статус типа цены (виден всем / не виден всем) в процессе работы. в) при открытии документа список формировать нет смысла потому, что пользователю возможно вообще не придется выбирать тип цен. И могут быть варианты а) и б). (15) Эта мысль тоже приходила мне в голову. Я тоже думал, что штатными средствами нельзя. Так оно и оказалось. Я не просил давать мне код с формирование списка или предлагать ИспользоватьРодителя и т.д. Просто хотел услышать мнение других. Возможно это или нет. Оказалось невозможно. Или по крайней мере никто не знает как это сделать. Все всем спасибо. |
|||
19
zzz
08.12.05
✎
12:20
|
2(18) пожалуйста, Деруны.
Я ж не знал что у вас ежеминутно типы цен и доступ к ним меняют. Классный у вас учёт. |
|||
20
Deryni
08.12.05
✎
12:21
|
в дополнение, хотя конечно варианты, описанные в (18) маловероятны. Формирование списка вначале не лишено смысла. Ладно всем спасибо.
|
|||
21
zzz
08.12.05
✎
12:23
|
19+ А код так и не показал.. Стесняется.
|
|||
22
Deryni
08.12.05
✎
12:27
|
Я не говорил, что ежеминутно. Но это возможно в процессе работы. Даже если это произойдет два раза в год, нафига мне нужно, чтобы мне звонили пользователи и " а вот мы добавили новый тип цен у Васи его видно, а у меня не видно, что делать???". Директор у нас такой. Щас скажет. А давайте придумаем не два уровня цен для клиентов и три.
Формирование цены в нашей фирме происходит очень интересно иногда. Кстати пришлось решать такую проблему. Есть тип цен розничная. Для него установлено цена на каждый товар. Но на одну группу товаров цена устанавливается в зависимости от купленного единоразово количества. Еще пришлось делать, пересчет цен практически как в Екселе. В смысле меняется скажем приходная цена на товар, нужно по заданной формуле автоматически пересчитать все остальные цены на этот товар. Поэтому изменение типа цен в процессе - это для нас нормально. Кстати еще. В типовой укр. конфигурации так же способ сделан выбор вида НДС в документах (вид НДС - элемент справочник Налоги и отчисления), где естественно есть и другие налоги. Так вот там список формируется каждый раз. |
|||
23
Deryni
08.12.05
✎
12:30
|
(21)
Я просто у клиента, а базы с собой нет. |
|||
24
Deryni
08.12.05
✎
12:39
|
Процедура глВыбратьКатегориюЦены(Конт,ИмяРекв = "", Рекв = "") Экспорт
Перем Выб; Спис = СоздатьОбъект("СписокЗначений"); СпрКЦ = СоздатьОбъект("Справочник.КатегорииЦен"); СпрКЦ.ВыбратьЭлементы(); Пока СпрКЦ.ПолучитьЭлемент() = 1 Цикл Если (Найти(Константа.РазрешеноСмотретьВсеЦены, НазваниеНабораПрав()) <> 0) или (Найти(Константа.РазрешеноСмотретьВсеЦены, ИмяПользователя()) <> 0) или (СпрКЦ.ПоказатьВсем = 1) Тогда Спис.ДобавитьЗначение(СпрКЦ.ТекущийЭлемент()); КонецЕсли; КонецЦикла; Выб = ПолучитьПустоеЗначение("Справочник.КатегорииЦен"); Если Спис.ВыбратьЗначение(Выб,,,,2) = 0 Тогда Возврат; КонецЕсли; Попытка Конт.УстановитьАтрибут(ИмяРекв,Выб); Исключение Рекв = Выб; КонецПОпытки; КонецПроцедуры //глВыбратьНДС Наверное перепишу по другому. Через ВыбратьЭлементыПоРеквизиту(). Хотя для тех, кто видит все цены все равно придется перебирать все элементы, чтобы заполнить список. Хотя для этих людей можно просто открывать справочник. Короче надо переписать, но лень. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |