Форум продуктов IBM Lotus

Общие вопросы => Разработка приложений => Тема начата: nadya от 23 Сентябрь 2009, 09:03:55

Название: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 09:03:55
Вопрос: после того как представление shared, private on first use стало частным, как посмотреть, где оно хранится? как его можно удалить, каким образом?? или только сам пользователь может удалить его, у администатора нет прав на частное представление???
Название: Re: частные представления
Отправлено: ViV от 23 Сентябрь 2009, 09:08:07
Администратор может получить доступ к ним под Full Access Administration
Название: Re: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 09:09:33
а где они хранятся?? не могу понять =)
Название: Re: частные представления
Отправлено: ViV от 23 Сентябрь 2009, 09:11:52
В разделе Folders
Название: Re: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 09:25:07
я про физическое хранение имела в виду, в разделе папок их нет, во вьюхах есть они,
то есть я так поняла в базах пользователей на сервере они хранятся? просто смотрела под администратором, их не было видно, только в моей базе видела свои частные.
а можно как то скрипт написать, который в базе пользователя найдет и удалит все частные представления???? которые Shared, private-on-first-use views
Название: Re: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 09:31:02
 под Full Access Administration частные представления не видно....
Название: Re: частные представления
Отправлено: ViV от 23 Сентябрь 2009, 10:48:40
В Domino Administrator на вкладке Files правой кнопкой мыши по БД -> Manage Views. Находите нужную папку -> кнопка "Delete".
Название: Re: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 13:09:05
простите за глупый вопрос, но обьясните мне пожалуйста одну вещь:
я в базе данных создаю частное ( shared, private on first use) представление, в котором выборка по @UserName,
пользователь заходит в эту базу,  открывает это представление, и видит данные, которые только на его имя.

Это представление хранится в базе, где мы его создали, и представление пользователя - тоже в той же самой базе?? или не только? я не пойму где оно хранится.

Название: Re: частные представления
Отправлено: ViV от 23 Сентябрь 2009, 13:11:38
хранится в той же базе
Название: Re: частные представления
Отправлено: nadya от 23 Сентябрь 2009, 13:29:56
то есть оно наращивается чтоли - для всех пользователей там хранятся все данные?
и в зависимости от того какой пользователь ее выбрал, идет выборка получается?
а есди его удалить из базы, у пользователей же оно не удалится? где в каком месте оно сохраняетсятак, что для пользователей оно есть??
Название: Re: частные представления
Отправлено: ViV от 23 Сентябрь 2009, 18:34:44
Для каждого пользователя создается свое представление, копия первоначального. Т.е. в дизайне будут плодиться эти виды, по мере подключения новых пользователей.
Название: Re: частные представления
Отправлено: nadya от 24 Сентябрь 2009, 08:10:23
копии будут храниться в той же базе, что и оригинал?
Название: Re: частные представления
Отправлено: ViV от 24 Сентябрь 2009, 08:46:57
да
Название: Re: частные представления
Отправлено: nadya от 24 Сентябрь 2009, 10:12:52
Спасибо!!!
Название: Re: частные представления
Отправлено: nadya от 03 Ноябрь 2009, 08:00:57
вообще, у меня для удаления таких вьюх в базе написан агент для пользователей

Sub Initialize
   Dim ss As New NotesSession
   Dim db As NotesDatabase
   Dim doc As NotesDocument
   On Error Resume Next
   
   Set db = ss.CurrentDatabase
   viewList = db.Views
   count% = 0
   Forall x In viewList
      If x.IsPrivate Then
         Set doc = db.GetDocumentByUNID(x.UniversalID)
         If (Not doc Is Nothing) And doc.hasItem("$Authors") Then
            If doc.GetItemValue("$Authors") = ss.UserName Then
               y$ = x.LastModified
               txtList$ = txtList$ + x.Name + " -- " + ", " + y$ +Chr(10)
               Call x.Remove
               count% = count% +1
            End If
         End If
      End If
   End Forall
   Print "Частные представления пользователя: " + txtList$
   Print "Всего удалено " + Cstr(count%) + " частных представлений"   
   
End Sub

код может неидеальный, но проверка не повредит  :)
еслиу кого есть идеи лучше, давайте  :)