Lotus Notes / Domino Sonstiges > Help-Desk Applikation !!Help!!

1.0.10 : Wo wird die Userrolle DEBUG verwendet ?

<< < (2/2)

eknori (retired):
Es knallt definitiv in der LogUIView() und zwar direkt am Anfang beim ersten IF

   Dim me_writelog As Boolean
   
   If Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogScriptErrors = True   

eknori (retired):
OK, kleine Umbaupause:

Im Initialize Event der lib.appl.functions werden ja schon einige globale Variablen gesetzt.
Habe das LogViewAccess jetzt dort eingebaut:

   On Error Goto ERRHANDLE
   
   If Ucase(GetConfigDocByKey ("OpenLogEnabled")) = "YES" Then
      UseOpenLog = True
   End If
   
   If Ucase(GetConfigDocByKey ("LogScriptErrors")) = "YES" Or  Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogScriptErrors = True
   End If
   
   If Ucase(GetConfigDocByKey ("ResumeMethod")) = "NEXT" Then
      ResumeMethodNext = True
   End If   
   
   If Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogViewAccess = True
   End If
Das

If Ucase(GetConfigDocByKey ("OpenLogEnabled")) = "YES" Then

wird auch dort schon gesetzt; daher ist das in der Funktion redundant.

Die Function selber reduziert sich dann auf

Sub LogUIView(ViewSource As NotesUIView)
   Dim session As New NotesSession
   
   If LogViewAccess Then
      xProc = ViewSource.ViewName
      xError = xProc  & ": " & session.UserName
      If UseOpenLog Then
         Call LogError
      Elseif LogScriptErrors Then
         Call ThrowException ( xProc, xError  )
      End If
   End If
End Sub

Und jetzt kann die Datenbank auch ohne den beschriebenen NSD im Debugger betrieben werden  ;D


EDIT: Mist, zu früh gefreut; NSD is running ...

NOCH EIN EDIT:

Die Verlagerung das Aufrufes vom PostOpen Event in das

Sub Queryopen(Source As Notesuiview, Continue As Variant)
   Call loguiview(source)
End Sub

schafft Abhilfe.

FC:

--- Zitat von: eknori am 31.08.05 - 16:57:04 ---
--- Zitat ---Notes starten, Debugger starten, DB aufrufen, 1ter Aufruf Schritt ausführen, dann 2x Fortfahren --> NSD 
--- Ende Zitat ---

Ist ja schon manchmal lustig, auf welche Ideen man so kommen kann  ;D

--- Ende Zitat ---

Kommt nur daher, dass ich versucht hatte hier: http://www.atnotes.de/index.php?topic=25349.msg161826#msg161826

Den Aufruf zu finden, daher wollte ich mir die Anfangsaufrufe nicht im Detail ansehen, sondern nur grob wissen was aufgerufen wird.

Ich denke meine nsd-Files brauchst Du nicht mehr  ;)
Werde mal Deine Lösung einbauen, vielleicht habe ich auch nur ein gutes Händchen für NSD  8)

eknori (retired):
HMM, ich sehe gerade, das

On Error Goto ERRHANDLE
   
   If Ucase(GetConfigDocByKey ("OpenLogEnabled")) = "YES" Then
      UseOpenLog = True
   End If
   
   If Ucase(GetConfigDocByKey ("LogScriptErrors")) = "YES" Or  Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogScriptErrors = True
   End If
   
   If Ucase(GetConfigDocByKey ("ResumeMethod")) = "NEXT" Then
      ResumeMethodNext = True
   End If   
   
   If Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogViewAccess = True
   End If


könnte man auch noch weiter zusammenstreichen und sich einen Zugriff auf die Konfigurationsdocs einsparen, wenn man das so umbaut:

   On Error Goto ERRHANDLE
   
   If Ucase(GetConfigDocByKey ("OpenLogEnabled")) = "YES" Then
      UseOpenLog = True
   End If
   
   If Ucase(GetConfigDocByKey ("LogViewAccess")) = "YES" Then
      LogViewAccess = True
   End If

   If Ucase(GetConfigDocByKey ("LogScriptErrors")) = "YES" Or  LogViewAccess Then
      LogScriptErrors = True
   End If
   
   If Ucase(GetConfigDocByKey ("ResumeMethod")) = "NEXT" Then
      ResumeMethodNext = True
   End If   
   

FC:
So habe jetzt getestet und auch bei mir keinen NSD mehr bekommen  ;D

Kleiner Zusatz:
Dim LogViewAccess As Boolean

unter Declarations muss natürlich rein.

Gruß
Djahan

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln