Das Notes Forum
Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: Fussel2020 am 22.01.20 - 09:45:12
-
Hallo zusammen :-)
ich bin mehr Notes-Admin als Entwickler und habe nun eine Frage zu einem Code aus einer Anwendung.
Der Code stammt aus einer Benutzerverwaltung. Mir geht es speziell um den Ausschnitt aus dem einen Modul. Was genau macht dieser Code? Als Hintergrund: An dieser Stelle wird definiert welche User in einer Liste aufgenommen werden und welche nicht. Deaktivierte User und Nichtzahler werden nicht mit aufgenommen. Wenn das nicht reicht, kann ich auch gerne das gesamte Modul hier posten (ca. 500 Zeilen).
Set abrechnung = New CAbrechnung( lns, lndb )
u = 0
d = 0
flagnichtzahler = True
flagabrechnung = True
ReDim vdummy(0)
c = -1
ForAll m In ma
flag = True
flagdeak = False
Set antrag = m
If ( antrag.technicaluser <> "1" ) Then
' Die letzte Aktion aus der History
strdummy = antrag.historie(antrag.c)
vsplit = Split( strdummy, "@" )
If ( vsplit(0) = "4" ) Then
' Vorher eine Deaktivierung?
flagdeak = True
If ( UBound( vsplit ) = 3 ) Then
If ( vsplit(3)= "0" ) Then
' Nicht im betrachteten Monat -> keine Berücksichtigung
flag = False
'Stop
Else
'MsgBox "USER: '" & antrag.fullname & "'"
Print "USER: '" & antrag.fullname & "'"
End If
End If
End If
' 04.06.2015
' Deaktivierungen
If ( flagdeak ) Then
Set antragdeak = antrag.copyAntrag()
Call abrechnung.getAbrechnung(antragdeak)
antragdeak.sort = "9@" & antragdeak.abrechnung & "@" & antragdeak.sort
c = c + 1
ReDim Preserve vantrag( c )
Set vantrag( c ) = antragdeak
End If
' Es müssen alle betrachtet werden, da Deaktivieurngen aufgelistet werden sollen!
'flag = True
If ( flag ) Then
Call abrechnung.getAbrechnung(antrag)
If ( antrag.abrechnung <> "" ) Then
'If ( flagdeak ) Then
' antrag.sort = "9@" & antrag.abrechnung & "@" & antrag.sort
'Else
antrag.sort = antrag.abrechnung & "@" & antrag.sort
'End If
End If
If ( antrag.abrechnung <> "0" ) Then
flagnichtzahler = False
End If
If ( c = -1 ) Then
strabrechnung = antrag.abrechnung
Else
If ( strabrechnung <> m.abrechnung ) Then
flagabrechnung = False
End If
End If
c = c + 1
ReDim Preserve vantrag( c )
Set vantrag( c ) = antrag
End If
End If
End ForAll
-
Mit diesem Code kann NIEMAND was anfangen, außer dem, der ihn geschrieben hat oder den kompletten Code zur Verfügung hat: Hier sind keinerlei Standard- LotusScript- Klassen im Einsatz sondern nur eigene Klassen und ggf. Typen...
Was der Code tut, kann man nur raten, und ausserdem sind die Verzweigungen noch von Daten in den Klassen abhängig, von denen wir nicht mal erahnen können, was da drin steht.
Da musst Du wohl jemanden bezahlen, dass er Dir das analysiert, und zwar Remote in Deinem System unter Einbeziehung der Daten.
-
Ok, danke :-)