• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Вопрос по Shared, Private-on-first-usе Views

  • Автор темы Galina
  • Дата начала
G

Galina

Подскажите, пожалуйста, как решить следующую проблему.

Есть View, определенное как Shared, private-on-first-usе. Через некоторое время после открытия пользователем базы на панели с деревом выбора появляется дубль этого View (то же название и содержимое), только значок этого нового View такой же как у Shared View.
Как убрать этот дубль и что сделано неправильно?

Спасибо.
 
F

Fossil Code

У этих частных (после первого использования) видов есть пара неприятных особенностей. Первая из них состоит в том, что после изменения дизайна такого вида, это -- уже другой, новый вид. И возникает необходимость удалить из базы все частные виды, созданные на основе исходного (до изменения дизайна). Иными словами, изменения дизайна не наследуются автоматически. Вторая неприятность в том, что если упомянутые изменения дизайна вносятся очень часто, то базе, как правило становится "плохо" и начинает она вести себя непредсказуемо. Ее приходится "лечить", а то и пересоздавать с нуля.
 
G

Galina

Но в том-то и дело, что дизайн не меняется. При открытии базы в дереве выбора все, как и положено - только частные Views. Но затем появляются эти дубли, причем со значком, соответствующим Shared View. Пробовала удалять частные View, но дубли появляются снова.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Бывает. Попробуй использовать Outline для навигации.
 
K

K-Fire

Первоначально в базе только 1 шаред вью. Когда пользователь первый раз входит туда - создается приватная вью. Вот отсюда и получается дубль. Нормальное явление вполне.

Оутлайн поможет "видеть" только 1 вью
 
E

Elena Nefedova

Для: Galina
В дополнительной литературе IBM рекомендует использовать вместо таких вьюх форму с встроенным видом и заданной категорией.
Если все правильно сделать, то выглядеть будет точно, как обычная вьюха, но без возможности пользовательской сортировки. Тут на форуме где-то пример должен лежать, как у меня решен в этом случае вопрос с сортировкой.

--------------------
Не могу найти файл с примером - видимо, на другой форум выложила.
Вот заново закачиваю - красоты в базе нет, но функционал весь представлен
Посмотреть вложение _Form.rar
 
G

Galina

Спасибо. Но встроенное View не очень хочется использовать, т.к. таких пользовательских View - много и строить для каждого еще и форму не хочется. Если не получу, что хочу при помощи OutLine, буду разбираться.

Еще раз огромное спасибо за помощь.
 
O

oshmianski

Для: Galina
лучше уж создать 30 форм, чем 30 представлений, над которыми будет карпеть индексер. да и места они занимать будут больше.
с другой стороны согласен, использование встроенных представлений лишает многих преимуществ: сортировки и отсутствие поиска
 
K

K-Fire

<!--QuoteBegin-Galina+24:01:2007, 17:15 -->
<span class="vbquote">(Galina @ 24:01:2007, 17:15 )</span><!--QuoteEBegin-->Спасибо. Но встроенное View не очень хочется использовать, т.к. таких пользовательских View - много и строить для каждого еще и форму не хочется. Если не получу, что хочу при помощи OutLine, буду разбираться.
[snapback]53950" rel="nofollow" target="_blank[/snapback]​
[/quote]

BWT, когда услышал что таких представлений "будет много", сразу возникло подозрение что задача решается неадекватными средствами.

Можно узнать, вообще зачем вам вообще надо использовать private вьюшки?
 
E

Elena Nefedova

Уважаемые коллеги!
И особенно Галина!

Вы пример-то посмотрите. Всего 1 форма и 3 представления решают проблему и с личными вьюхами, и с сортировкой для любого количества пользователей.
 
N

nor

такие приватные представления великолепно работают, если каждый раз при открытии бд автоматически их удалять и чистить cache.ndk. время открытии бд увеличивается примерно на 10 секунд для стандартного офисного ПК для следующего соотношения: 16 приватных и 32 общих представления. (чем меньше общее количество представлений в бд, тем меньше время обновления (открытия бд)). эта практика также позволяет обновлять дизайн таких представлений без проблем (аналогично общим представлениям).
 
E

Elena Nefedova

Для: nor
Что именно нужно чистить в cache.nkd?
 
N

nor

Для: Galina
В дополнительной литературе IBM рекомендует использовать вместо таких вьюх форму с встроенным видом и заданной категорией.

--------------------
Не могу найти файл с примером - видимо, на другой форум выложила.
Вот заново закачиваю - красоты в базе нет, но функционал весь представлен
Посмотреть вложение 699

Пользуясь такой дурацкой рекомендаций от IBM нельзя организовать приватные представления типа Calendar.
 
E

Elena Nefedova

<!--QuoteBegin-nor+25:01:2007, 17:08 -->
<span class="vbquote">(nor @ 25:01:2007, 17:08 )</span><!--QuoteEBegin-->Пользуясь такой дурацкой рекомендаций от IBM нельзя организовать приватные представления типа Calendar.
[snapback]54121" rel="nofollow" target="_blank[/snapback]​
[/quote]И правда - нельзя :(
 
G

Galina

BWT, когда услышал что таких представлений "будет много", сразу возникло подозрение что задача решается неадекватными средствами.

Можно узнать, вообще зачем вам вообще надо использовать private вьюшки?

Личные View нужны для того, чтобы пользователь мог работать только с теми док-тами, которые ему отданы. Чтобы корректно можно было работать с @UserName в Select для View мне и нужно такое View. Плюс разнообразная информация для вывода из разных документов. Вот и получается много представлений.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
<!--QuoteBegin-Galina+25:01:2007, 17:43 -->
<span class="vbquote">(Galina @ 25:01:2007, 17:43 )</span><!--QuoteEBegin-->Личные View нужны для того, чтобы пользователь мог работать только с теми док-тами, которые ему отданы. Чтобы корректно можно было работать с @UserName в Select для View мне и нужно такое View. Плюс разнообразная информация для вывода из разных документов. Вот и получается много представлений.

[snapback]54127" rel="nofollow" target="_blank[/snapback]​
[/quote]
Поля Readers не пробовали использовать ?
 
K

K-Fire

<!--QuoteBegin-Galina+25:01:2007, 16:43 -->
<span class="vbquote">(Galina @ 25:01:2007, 16:43 )</span><!--QuoteEBegin-->Личные View нужны для того, чтобы пользователь мог работать только с теми док-тами, которые ему отданы. Чтобы корректно можно было работать с @UserName в Select для View мне и нужно такое View. Плюс разнообразная информация для вывода из разных документов. Вот и получается много представлений.
[snapback]54127" rel="nofollow" target="_blank[/snapback]​
[/quote]
<!--QuoteBegin-Medevic+25:01:2007, 16:47 -->
<span class="vbquote">(Medevic @ 25:01:2007, 16:47 )</span><!--QuoteEBegin-->Поля Readers не пробовали использовать ?
[snapback]54129" rel="nofollow" target="_blank[/snapback]​
[/quote]

О том и речь! Использование корректной модели видимости документов в 80-90% позволяет избавится от необходимости private вьюх или подобных вещей. Есть конечно исключения, например: пользователь должен видеть все документы, но во вью должны отображаться только те, что имеют, допустим, исполнителя - текущего пользователя. Если у вас именно такая ситуация - используйте на здоровье приватные вью ;)
 
G

Galina

О том и речь! Использование корректной модели видимости документов в 80-90% позволяет избавится от необходимости private вьюх или подобных вещей. Есть конечно исключения, например: пользователь должен видеть все документы, но во вью должны отображаться только те, что имеют, допустим, исполнителя - текущего пользователя. Если у вас именно такая ситуация - используйте на здоровье приватные вью :)

Да, у меня именно такая задача.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!