Общие вопросы > Разработка приложений

При попытке удалить ACLentry пишет ошибку 4005, которая не имеет описания.

<< < (2/3) > >>

Zinych:
тогда удаляемая запись является последним манагером в этой БД,
попробуйте поставить default манагером, если вы оставляете его одного

Sergey_st85:
Вфяснил. Все записи записаны в полном формате записи записи, а не в кратком как "Воробьев В. А./Pens" например.

Вот код, который выставит манагером сервак и дефаулт в ноакесс только с репликацией правом.

Set ACL=db.ACL
      Set newACL=newdb.ACL
      
      Set newACLentry=newACL.GetFirstEntry
      While Not newACLentry Is Nothing
         Set ACLentryToDel=newACLentry
         Set newACLentry=newACL.GetNextEntry(newACLentry)
         If Ucase(ACLentryToDel.Name)<>Ucase("CN=MopSrv01/O=IFDK") Then
            If Instr(Ucase(ACLentryToDel.Name),Ucase("DEFAULT"))=0 Then
               Call ACLentryToDel.Remove
            Else
               ACLentryToDel.CanCreateDocuments=False
               ACLentryToDel.CanCreateLSOrJavaAgent=False
               ACLentryToDel.CanCreatePersonalAgent=False
               ACLentryToDel.CanCreatePersonalFolder=False
               ACLentryToDel.CanCreateSharedFolder=False
               ACLentryToDel.CanDeleteDocuments=False
               ACLentryToDel.CanReplicateOrCopyDocuments=True
               ACLentryToDel.IsAdminReaderAuthor=False
               ACLentryToDel.IsAdminServer=False
               ACLentryToDel.IsGroup=False
               ACLentryToDel.IsPerson=False
               ACLentryToDel.IsPublicReader=False
               ACLentryToDel.IsPublicWriter=False
               ACLentryToDel.IsServer=False
               ACLentryToDel.Level=0
               Forall xxx In ACLentryToDel.Roles
                  If xxx<>"" Then Call ACLentryToDel.EnableRole(xxx)
               End Forall
            End If
         Else
            ACLentryToDel.CanCreateDocuments=True
            ACLentryToDel.CanCreateLSOrJavaAgent=True
            ACLentryToDel.CanCreatePersonalAgent=True
            ACLentryToDel.CanCreatePersonalFolder=True
            ACLentryToDel.CanCreateSharedFolder=True
            ACLentryToDel.CanDeleteDocuments=True
            ACLentryToDel.CanReplicateOrCopyDocuments=True
            ACLentryToDel.IsAdminReaderAuthor=True
            ACLentryToDel.IsAdminServer=True
            ACLentryToDel.IsGroup=False
            ACLentryToDel.IsPerson=False
            ACLentryToDel.IsPublicReader=True
            ACLentryToDel.IsPublicWriter=True
            ACLentryToDel.IsServer=True
            ACLentryToDel.Level=6
            Forall xxx In ACLentryToDel.Roles
               Call ACLentryToDel.EnableRole(xxx)
            End Forall
         End If
      Wend
      Set newACLentry=newACL.CreateACLEntry("Anonymous",0)
      newACLentry.CanReplicateOrCopyDocuments=True
      Call newACL.Save()

Sergey_st85:
И тут же другой вопрос: че за шняга:
newACLentry.EnableRole
newACLentry.DisableRole

дизаблю - в асл не увижу, или что?

Zinych:
это функции,
ставят и снимают галочки соответственно с ролей:
call newACLentry.EnableRole("роль")

Sergey_st85:
Но ведь нет галочек в ACL, если ее в GUI смотреть. Есть запись. Есть роли. Усё. Нет галочки ДЛЯ ЗАПИСИ...

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Перейти к полной версии