Autor Thema: Anstossen der Ansichtsaktualisierung per Script  (Gelesen 2395 mal)

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Anstossen der Ansichtsaktualisierung per Script
« am: 29.09.05 - 08:58:42 »
Hallo zusammen,

Ich versehe eine Datenbank automatisch mit einem neuen Template(nächste Version). Jetzt ist es aber meistens so,
dass dabei der Ansichtenindex flöten geht. Diesen möchte ich nun wieder aufbauen und das automatisiert.
Ein view.Refresh kommt nicht in Frage, weil das bei ca. 600 Ansichten für den User, der den Agenten für den Schablonen-Wechsel anstösst,
zu lange dauert.

Gibt es irgendein Befehl, den ich an die Konsole absenden könnte. Da der Agent mit der Server-ID signiert ist,
dürfte die Ausführung kein Problem darstellen.

Bin für jeden Tipp dankbar.

mfg

Kjeld
« Letzte Änderung: 29.09.05 - 21:05:28 von gossifu »
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Driri

  • Gast
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #1 am: 29.09.05 - 09:12:17 »
load updall db.nsf -R auf der Konsole

Aus der Admin-Hilfe :

Zitat
Alle verwendeten Ansichten werden neu aufgebaut. Der Einsatz dieser Option ist ressourcenintensiv; Sie sollten sie daher als letzte Möglichkeit zur Behebung von Beschädigungsproblemen für eine bestimmte Datenbank verwenden.

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #2 am: 29.09.05 - 09:19:07 »
Danke für die schnelle Antwort,

aber ich will das aus dem Script heraus und nicht über die Konsole machen, da der User, der diesen Agenten ausführt nicht unbedingt einen Admin-Client hat. :-\

mfg

Kjeld
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Driri

  • Gast
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #3 am: 29.09.05 - 09:28:01 »
Achso, sorry, hatte das mit Konsole dann falsch verstanden.

Ich wüßte aber nicht, daß es da per Script eine Möglichkeit gibt. Refresh der NotesView funktioniert leider nicht, weil da kein Index aufgebaut wird.  :(

Offline Gandhi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 918
  • Geschlecht: Männlich
  • Domino for the masses
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #4 am: 29.09.05 - 09:30:05 »
lass den User doch einen Agenten anstossen, der RunOnServer ist. dann bekommt der User davon so wenig mit, als hätte er ein Konsolenkommando abgegeben.
Der "Wenn ich" und der "Hätt' ich" das sind zwei arme Leut'
oder für den Süden:
Hatti Tatti Wari - san drei Larifari

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: Anstossen der Ansichtsaktualisierung per Script
« Antwort #5 am: 29.09.05 - 09:36:52 »
Ich versehe eine Datenbank automatisch mit einem neuen Template(nächste Version).

Hi,

eins verstehe ich nicht so ganz. Das Gestaltungsupdate machst du automatisch, das Aktualisieren der Ansichten soll der User manuell anstoßen. Wo liegt denn da der Sinn.

Warum machst du denn nicht beides automatisiert, beispielsweise übers Wochenende? Freitags replizierst du das Gestaltungsupdate auf den Server. In der Nacht wird die Gestaltung der DB über den Designtask aktualisiert. Über ein Programmdokument startest du dann am Samstag einen updall auf diese DB.


Axel

BTW: Ich habe bei unseren DB schon mehrmals, teilsweise auch größere, Designupdates gemacht und nie den Index aktualisiert.

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

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #6 am: 29.09.05 - 09:53:29 »
Hallo,

der Agent, mit dem die Gestaltung aktualisiert wird, hat auch noch andere Aufgaben, weshalb ich nicht bis zu irgeneinem Datum warten kann.
Der User/Kunde bekommt das neue Release geliefert und legt es im Data-Pfad ab. Jetzt drückt er zu dem ihm genehmen Zeitpunkt das Knöpken.
Die Schablone der entsprechenden DB wird gewechselt, einige Dokumente werden ausgetauscht.
Und dann soll die DB mit neuem Design und voller Funktionalität 'erstrahlen'.
Mein einziges Problem ist der Ansichten-Index.

mfg

Kjeld
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #7 am: 29.09.05 - 13:06:58 »
Hallo,

Axel hat recht, der Index veränderte sich nicht. Aber gibt es keine  :'( Möglichkeit, irgendwelche
Aufrufe an die Konsole zu senden? Naja, Hauptsache es klappt erstmal  ;).

mfg

Kjeld
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

Driri

  • Gast
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #8 am: 29.09.05 - 13:40:12 »
Najaa, es gibt da einen API-Call, mit dem man Befehle an die Konsole absetzen kann. Aber dann müßten die User ja das Recht bekommen, dies auch zu tun.

Zitat
Here's some LotusScript code that executes server console commands. It uses C API calls, so it will only work on an Win32 client.

(Declarations)
Declare Function NSFRemoteConsole Lib "nnotes.dll" (Byval ServerName As String, Byval ConsoleCommand As String, rethBuffer As Long) As Long
Declare Function OSLockObject Lib "nnotes.dll" (Byval hBuffer As Long) As String
Declare Sub OSUnlockObject Lib "nnotes.dll" (Byval hBuffer As Long)
Declare Sub OSMemFree Lib "nnotes.dll" (Byval hBuffer As Long)

Sub Initialize
Dim hBuf As Long
Dim pBuf As String
Dim result As Long
result = NSFRemoteConsole("Server/Domain", "sh ta", hBuf)
pBuf = OSLockObject(hBuf)
Messagebox pBuf
Call OSUnlockObject(hBuf)
Call OSMemFree(hBuf)
End Sub

P.S. : Ich hab das glaub ich mal unter R5 getestet, bin mir nicht sicher, ob das unter R6 auch noch läuft.

Glombi

  • Gast
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #9 am: 29.09.05 - 13:43:55 »
In R6 geht es mit Script. Das ganze in einen periodischen Agenten (nie ausführen) packen, der mit der Admin ID unterzeichnet ist. Den Agenten  - kannst Du mit Script aufrufen: call agent.RunOnServer

consoleReturn$ = notesSession.SendConsoleCommand( serverName$, consoleCommand$ )
Parameters
serverName$
String. The name of the server. The user must have administrative access to the server. Use an empty string ("") to indicate the current computer.
consoleCommand$
String. The console command. Must be a valid console command.
Return value
consoleReturn$
String. The server's response to the command. This value is the same as would be sent to a remote console.
Usage
This method can be used in a scheduled agent on a server to send console commands to another server. The signer of the agent must have privilege to "Run unrestricted methods and operations" on the server receiving the console command.
If this method is executed on a client, the current user must have privilege under "Full Remote Console Administrators" on the server receiving the console command.
If a console command abruptly closes the network connection to the server (for example, "drop all"), subsequent commands to the server fail with a network timeout until the connection is reestablished.

Andreas

Offline gossifu

  • Senior Mitglied
  • ****
  • Beiträge: 352
  • Geschlecht: Männlich
  • Dummheit schafft Freizeit
Re: Anstossen der Ansichtsaktualisierung per Script
« Antwort #10 am: 29.09.05 - 21:05:08 »
Hallo Driri & Glombi,

danke für die Tipps, werde ich am Dienstag gleich probieren. Mit den Rechten ist das kein Problem, da sowieso alles von einem Agenten ausgeführt wird. Der ist mit der Server-ID signiert.

mfg

Kjeld
Immer lustig und vergnügt, bis der A.... im Sarge liegt. ;-)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz