Domino 9 und frühere Versionen > ND6: Entwicklung
ScriptLibrary via LS erstellen/ändern
dirk_2909:
@Ulrich : ich %%$$§§§ (aka. Blindfisch) ja - genau ::) Ist DIE Lösung ... Danke für den "Schlag auf den Hinterkopf" 8) :-[
Was ich dadurch erreichen will:
eine Hilfe für mich. In fast jeder App habe ich eine "feste" Lib ,die eine "variable" datanbankspefizische Lib benutzt (Use). Den Code für diese "variable" Lib. erstelle/Pflege ich über eine Konfigurations-DB und möchte von da aus die Libs in der entsprechenden DB aktualisieren.
... werde mich jetzt mal an den DXL-Export begeben.
Danke :)
koehlerbv:
Und wie wirst Du nach dem DXL-Import rekompilieren?
Bernhard
Dominique M.:
Hi,
du hast die möglichkeit den "neuen" Quellcode per API in das Feld zu schreiben und kannst nachdem du das gemacht hast die Kompilier API starten.
Wie das genau funktioniert kann ich dir erst in ein paar Wochen sagen, soweit ist mein Projekt noch nicht :-)
Die API "NSFNoteLSCompile" sollte dein Freund sein
dirk_2909:
--- Zitat ---Wie das genau funktioniert kann ich dir erst in ein paar Wochen sagen, soweit ist mein Projekt noch nicht :-)
--- Ende Zitat ---
..würde mir reichen.
@Bernhard: weiß ich noch nicht :-[ .. werde mal mit dem dxl testen.... und probieren.
Ist ja nicht ganz so wichtig/eilig, da es ja (nur) meine Arbeit erleichertern sollte :-:
jBubbleBoy:
Das Kompilieren von NotesDBs habe ich schon mal gemacht (damals unter Notes5).
--- Code: ---Function compileScriptLibsThenAgents( db As notesDatabase ) As String
On Error Goto errorZ
Dim api As Win32DatabaseDesign
Dim s$, v
Set api = New Win32DatabaseDesign( db )
v = api.scriptLibraryDocuments
If Not isArrayEmpty( v ) Then
Forall x In v
' If Not Instr( x.~$flags(0), "j") Then
If api.compile ( x ) Then
s = s & "Lib-" & x.~$title(0) & ": OK" & Chr(10)
Else
s = s & "Lib-" & x.~$title(0) & ": FEHLER" & Chr(10)
End If
' Else
' s = s & "Lib-" & x.~$title(0) & ": kein LotusScript" & Chr(10)
' End If
End Forall
End If
v = api.agentDocuments
If Not isArrayEmpty( v ) Then
Forall y In v
If Instr( y.~$flags(0), "L") Then
If api.compile ( y ) Then
s = s & "Agent-" & y.~$title(0) & ": OK" & Chr(10)
Else
s = s & "Agent-" & y.~$title(0) & ": FEHLER" & Chr(10)
End If
Else
s = s & "Agent-" & y.~$title(0) & ": kein LotusScript" & Chr(10)
End If
End Forall
End If
compileScriptLibsThenAgents = s
Goto endeZ
errorZ:
If errorHandler Then Resume Next Else Goto endeZ
endeZ:
End Function
--- Ende Code ---
Wichtig dabei ist die Reihenfolge, zuerst Lib dann Agents. Die Klasse Win32DatabaseDesign befindet sich in der Lib "DBDesign" zu finden unter http://www-10.lotus.com/ldd/sandbox.nsf/0/f81067f94a1143f3852567d800660625, von Damien Katz.
bubble
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln