![]() |
![]() |
![]() |
|
ОТбор по более чем одному реквизиту | ☑ | ||
---|---|---|---|---|
0
Eugenewolf
28.09.05
✎
13:05
|
Можно ли в форме списка справочника каким-то образом сделать отбор по более чем одному реквизиту одновременно?
|
|||
1
Широкий
28.09.05
✎
13:06
|
Вроде нет
|
|||
2
Танюха
28.09.05
✎
13:06
|
может также как в журнале?
|
|||
3
isabel
28.09.05
✎
13:10
|
доп. реквизит должен быть - типа ключ
кот. уникально задает строки с нужным отбором по более чем одному реквизиту одновременно. по ключу и делаешь отбор (не забудь про галочку в св-вах реквизита) |
|||
4
isabel
28.09.05
✎
13:12
|
если отбор по двум реквизитам, то можно один сделать родителем. Тогда отбираешь по родителю и устанав. стандартный отбор по реквизиту.
|
|||
5
child
28.09.05
✎
13:12
|
(0) Можно. Только для этого необходимо использовать дополнительно поле, в котором будет указан составной ключ по твоим двум параметрам. А сам отбор строй уже по этому ключу.
(2) А в журнале докумнтов разве есть стандартный отбор по двум элементам? |
|||
6
Eugenewolf
28.09.05
✎
13:15
|
Я имею в виду когда в программе пишется функция УстановитьОТбор() для формы - там же только один реквизит задается?
|
|||
7
Танюха
28.09.05
✎
13:15
|
(5) не стандартный есть, тоже по составному ключу.
|
|||
8
Eugenewolf
28.09.05
✎
13:16
|
А как же его сделать, составной ключ-то?
Реквизиты я есс-но задал, отбор по одному идет, а вот составной ключ в 1с-ке? как? |
|||
9
isabel
28.09.05
✎
13:18
|
(7)Пожалуйста, поподробнее, в двух словах. Обязательное условие, что значение отбора у двух рекв. разное.
|
|||
10
Eugenewolf
28.09.05
✎
13:20
|
Имеют место быть N реквизитов, для отбора. КОгда оператор открывает окно подбора, он должен иметь возможность сделать отбор например по одному реквизиту - скажем, серия, или одновременно выбрать СЕрия, автор, Издательство
|
|||
11
isabel
28.09.05
✎
13:20
|
(8)Используй ЗначениеВСтрокуВнутр() и РазделительСтрок.
|
|||
12
child
28.09.05
✎
13:21
|
(6) И что. пусть и один, но кто сказал что этого мало? смотри что сделай:
1. добавь новый реквизит в справочник, наприме "КлючДляОтбора" (тип "Строка 255"), 2. При записи элемента вставь процедуру КлючДляПодбора = СокрЛП(Реквизит1) + СокрЛП(Реквизит2); 3. Перед использованием функции установить отбор найди ключ, например: Ключ = СокрЛП(ВыбРеквизит1) + СокрЛП(ВыбРеквизит2); 4. Установи отбор по значению ключа, например: УстановитьОтбор("КлючДляОтбора",Ключ); По аналогии можешь сделать отбор по 3,4 и т.д. реквизитам. |
|||
13
Eugenewolf
28.09.05
✎
13:23
|
Боюсь, вариант с созданием дополнительного поля не пройдет - таблица номенклатуры слишком здоровая, я с трудом там реквизиты проиндексировал... Пришлось методику применять, которую тут же на форуме и нашел
|
|||
14
isabel
28.09.05
✎
13:24
|
(12)Пускай сам думает, наше дело чуть-чуть подтолкнуть md нужном направлении
|
|||
15
Eugenewolf
28.09.05
✎
13:25
|
А как можно использовать ЗначениеВСТрокуВнутр() ?
|
|||
16
isabel
28.09.05
✎
13:26
|
(13)плиз, ссылочку
|
|||
17
Eugenewolf
28.09.05
✎
13:27
|
ЧТо?
|
|||
18
isabel
28.09.05
✎
13:28
|
(15)так как писал child, только вместо СокрЛП(ВыбРеквизит1) -> ЗначениеВСТрокуВнутр(ВыбРеквизит1)
|
|||
19
isabel
28.09.05
✎
13:28
|
(17) "Пришлось методику применять, которую тут же на форуме и нашел"
где? |
|||
20
Eugenewolf
28.09.05
✎
13:31
|
Значит, по поводу создания реквизитов - таблица номенклатуры довольно здоровая, порядка 52000 наименований. Я добавил реквизиты, и, есс-но, начал проставлять галочки отбора/сортировки. В общем, закончилось все тем, что индекс у меня распух до 2 гигов, после чего реорганизация метаданных грохнулась.
|
|||
21
OFF
28.09.05
✎
13:32
|
Нормальное явление, ограничение на размер файла в два гектара
|
|||
22
isabel
28.09.05
✎
13:34
|
отбирай запросом и используй ИспользоватьСписокЭлементов().
Вообще для чего отбтраем? |
|||
23
Eugenewolf
28.09.05
✎
13:35
|
ВОТ! А делать-то что-то надо было? Сократить базу оперативно не получилось, потому что нужно было быстро загонять остатки и вообще суетиться :) В первую очередь меня удивило, что индекс так пухнет - казалось бы, с чего - поля по 20- 35 байт, их всего 5 или 6.
|
|||
24
Eugenewolf
28.09.05
✎
13:35
|
ОТбирать запросом и выводить в Таблицу значений?
|
|||
25
child
28.09.05
✎
13:43
|
(23) Учти колличество записей и полнотекстовые индесы 1С - вот тебе и размер. Загони базу на сиквел сначала.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |