• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

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

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

Galina

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

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

Спасибо.
 
У этих частных (после первого использования) видов есть пара неприятных особенностей. Первая из них состоит в том, что после изменения дизайна такого вида, это -- уже другой, новый вид. И возникает необходимость удалить из базы все частные виды, созданные на основе исходного (до изменения дизайна). Иными словами, изменения дизайна не наследуются автоматически. Вторая неприятность в том, что если упомянутые изменения дизайна вносятся очень часто, то базе, как правило становится "плохо" и начинает она вести себя непредсказуемо. Ее приходится "лечить", а то и пересоздавать с нуля.
 
Но в том-то и дело, что дизайн не меняется. При открытии базы в дереве выбора все, как и положено - только частные Views. Но затем появляются эти дубли, причем со значком, соответствующим Shared View. Пробовала удалять частные View, но дубли появляются снова.
 
Бывает. Попробуй использовать Outline для навигации.
 
Первоначально в базе только 1 шаред вью. Когда пользователь первый раз входит туда - создается приватная вью. Вот отсюда и получается дубль. Нормальное явление вполне.

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

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

Еще раз огромное спасибо за помощь.
 
Для: Galina
лучше уж создать 30 форм, чем 30 представлений, над которыми будет карпеть индексер. да и места они занимать будут больше.
с другой стороны согласен, использование встроенных представлений лишает многих преимуществ: сортировки и отсутствие поиска
 
<!--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 вьюшки?
 
Уважаемые коллеги!
И особенно Галина!

Вы пример-то посмотрите. Всего 1 форма и 3 представления решают проблему и с личными вьюхами, и с сортировкой для любого количества пользователей.
 
такие приватные представления великолепно работают, если каждый раз при открытии бд автоматически их удалять и чистить cache.ndk. время открытии бд увеличивается примерно на 10 секунд для стандартного офисного ПК для следующего соотношения: 16 приватных и 32 общих представления. (чем меньше общее количество представлений в бд, тем меньше время обновления (открытия бд)). эта практика также позволяет обновлять дизайн таких представлений без проблем (аналогично общим представлениям).
 
Для: nor
Что именно нужно чистить в cache.nkd?
 
Для: Galina
В дополнительной литературе IBM рекомендует использовать вместо таких вьюх форму с встроенным видом и заданной категорией.

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

Пользуясь такой дурацкой рекомендаций от IBM нельзя организовать приватные представления типа Calendar.
 
<!--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]И правда - нельзя :(
 
BWT, когда услышал что таких представлений "будет много", сразу возникло подозрение что задача решается неадекватными средствами.

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

Личные View нужны для того, чтобы пользователь мог работать только с теми док-тами, которые ему отданы. Чтобы корректно можно было работать с @UserName в Select для View мне и нужно такое View. Плюс разнообразная информация для вывода из разных документов. Вот и получается много представлений.
 
<!--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 не пробовали использовать ?
 
<!--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 вьюх или подобных вещей. Есть конечно исключения, например: пользователь должен видеть все документы, но во вью должны отображаться только те, что имеют, допустим, исполнителя - текущего пользователя. Если у вас именно такая ситуация - используйте на здоровье приватные вью ;)
 
О том и речь! Использование корректной модели видимости документов в 80-90% позволяет избавится от необходимости private вьюх или подобных вещей. Есть конечно исключения, например: пользователь должен видеть все документы, но во вью должны отображаться только те, что имеют, допустим, исполнителя - текущего пользователя. Если у вас именно такая ситуация - используйте на здоровье приватные вью :)

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

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab