Autor Thema: Ansicht: gemeinsam/ beim 1. Öffnen privat  (Gelesen 3577 mal)

Offline Steffen_Albrecht

  • Senior Mitglied
  • ****
  • Beiträge: 300
  • Geschlecht: Männlich
  • Trübsal ist nicht das Einzige was man blasen kann!
Ansicht: gemeinsam/ beim 1. Öffnen privat
« am: 31.03.03 - 11:27:00 »
Hallo,

wie kann ich Gestaltungsänderungen in o.g. Ansichten übernehmen, wenn die User diese Ansichten bereits verwenden/ verwendet haben?

Gruß
    Steffen

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #1 am: 31.03.03 - 11:37:32 »
Hi,

der User muß die Ansicht löschen und neu anlegen.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #2 am: 31.03.03 - 11:44:44 »
bei mir klappt selbst das nicht immer ...


Ciao
Don Pasquale

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #3 am: 31.03.03 - 11:47:19 »
wenn die private View uff dem Server liegt, kann man auch das machen (s.u.). Ist ein alter Code, aber klappte immer. Gibt mittlerweile auch neuere. Das kommt ins PostOpen des Datenbankscripts. Läuft nur einmal täglich, wenn User reingeht. Wert wird in Notes.ini dazu abgelegt, damit nicht bei jedem Öffnen der Käse läuft.

Code
Sub Postopen(Source As Notesuidatabase)
%REM ====================================================
This code removes out-of-date private views stored on the server.  
Each time the database is opened, it searches for private views.  For each private view, it compares
the Created date to the LastModified date of the corresponding shared view.  If the shared view design 
was updated after the private view was created, then we know that the private view's design is out of date.
The private view is then removed and the user is issued a message box advising that they close and reopen
the database.

Usage:  This code can be used ad-hoc by the database manager to remove all private views.  It is more efficient that way,
but requires manual execution.

For R5.0 and later, use the isPrivate property of NotesView rather than isPrivateView(v)

22 March 1999
Jamie Magee
Martin Scott Consulting LLC
McLean, Virginia
www.MartinScott.com
Jamie.Magee@MartinScott.com

(c) copyright 1999 Martin Scott Consulting LLC

%END REM =================================================
   
   Dim session As New notessession
   Dim Eintrag As String
   Eintrag = session.getenvironmentstring("pbtraxx")
   Dim Heute As String
   Heute = Today()
   If Heute = Eintrag Then
      Exit Sub          
   End If
   
   Set db = Source.database     '...works in Database PostOpen event, modify for other contexts
   count=0     
   privateviewtext=""
   Dim masterView As NotesView
   tot = Ubound(db.views) + 1
   Forall v In db.views
      count=count+1
      Print "Suche veraltete, private Ansichten " & count & " von " & tot & "..."
      If isPrivateView(v) Then                   
         Set masterView = getMasterView(v)  '...get the shared view on which this personal view is based
         If Not(masterView Is Nothing) Then
            If v.Created < masterView.LastModified Then      '...if the shared view design was updated after the private view was
                        '...then remove the private view
               privateviewtext=privateviewtext & Chr(10) & v.name                         
               v.remove                       
            End If
         End If
      End If
   End Forall
   
   If privateviewtext="" Then
      Print "Keine veralteten Ansichten gefunden."
   Else
      Print ""
      Messagebox "folgende private ""Meine"" Ansichten mußten entfernt werden:" & privateviewtext & Chr(10) & "Schließen Sie die Datenbank und gehen wieder hinein."
   End If 
   Call session.setenvironmentvar("pbtraxx",Heute)
End Sub

Function isPrivateView(v As NotesView) As Integer
   isPrivateView = False
   
   Set vdoc = v.parent.GetDocumentByUnid( v.UniversalID )     
   If Not (vdoc Is Nothing) Then
      If vdoc.HasItem("$Flags") Then
         If Instr(vdoc.GetItemValue("$Flags")(0), "V") Then
            isPrivateView = True 
            Exit Function
         End If
      End If
   End If
   
End Function

Function getMasterView(pView As NotesView) As NotesView
   Set db = pView.parent
   viewList = db.views
   Dim view As NotesView
   Forall v In viewList
      If v.Name = pView.Name Then
         Set view = v
         If Not(isPrivateView(view)) Then
            Set getmasterView = v  '...get the shared view on which this personal view is based
            Exit Function                               
         End If
      End If          
   End Forall     
   Set getMasterView = Nothing
   Print "Die ursprüngliche Vorlage der privaten Ansicht '" & pView.name & "' konnte nicht gefunden werden."
End Function
« Letzte Änderung: 31.03.03 - 11:49:49 von Rob Green »
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline Steffen_Albrecht

  • Senior Mitglied
  • ****
  • Beiträge: 300
  • Geschlecht: Männlich
  • Trübsal ist nicht das Einzige was man blasen kann!
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #4 am: 01.04.03 - 05:31:07 »
Danke!
Funktioniert super!

Gruß
    Steffen

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #5 am: 01.04.03 - 09:42:00 »
hallo rob green
Was wird da genau in die ini geschrieben und durch welchen befehl wird das gemacht ich hab da nichts im script gefunden?
robertpp
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #6 am: 01.04.03 - 09:47:10 »
durch

Dim session As New notessession
   Dim Eintrag As String
 2. =  Eintrag = session.getenvironmentstring("pbtraxx")
   Dim Heute As String
   Heute = Today()
   3.= If Heute = Eintrag Then
      Exit Sub          

   End If
...
1. = Call session.setenvironmentvar("pbtraxx",Heute)

1. wird die Ini beim heutigen Erstöffnen beschrieben
2. beim Öffnen wird die Ini Variable pbtraxx gelesen
3. wenn Wert "Heute" entspricht (also Datum), dann kein Check machen

mußte ich damals machen, da einige Stellen noch mit 19.6 bzw. 64 K an die Server angeschlossen waren.
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #7 am: 01.04.03 - 10:52:23 »
ich hab das jetzt noch nicht ausprobiert aber dann sieht man in der notes.ini den eintrag zb pbtraxx="Datum"

Hab ich das richtig verstanden!
wenn dieser eintrag noch nie drinnen gestanden iast dann wird er autom. erstellt oder muss man den selber mal erstellen?
danke robertpp
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline Rob Green

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.651
  • Geschlecht: Männlich
    • Meipor
Re:Ansicht: gemeinsam/ beim 1. Öffnen privat
« Antwort #8 am: 01.04.03 - 11:02:44 »
das macht Notes selbst..steht auch so in der Help *wink*  ;)
Vielleicht verdirbt Geld wirklich den Charakter.
Auf keinen Fall aber macht Mangel an Geld ihn besser.
(John Steinbeck)

Meiporblog: http://www.meipor.de/blog
allg. Unternehmerblog: http://www.m-e-x.de/blog

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz