Hallo zusammen,
ein Scriptanfänger hat mal 'ne Frage:
Folgendes Problem:
In der Helpdesk habe ich eine neue Funktion hinzugefügt, die einen Start-Stop der Ticketberechnenden Zeit ermöglichen soll. Das erfassen der Minuten funktioniert im Querysave auch soweit.
Beim Abschließen eines Tickets sollen nun die Werte aus diesem Feld zusammengezählt werden und von der Zeit assigned-completed abgezogen werden.
Folgende Informationen habe ich:
Ich habe ein Feld. DT Pause (kann Mehrfachwerte), welches mit Informationen gefüllt ist. Ich hatte das Feld zuerst vom Typ Zahl, aber da hat er mir gemeckert -NotesItem cannot be set to an arry of mixed data types
Darauf hin habe ich das ganze als Typ Text (bearbeitbar, aber verborgen) genommen und das Feld wird mit "Zahlen" gefüttert.
Den Code hierfür seht ihr hier.
If source.Document.PauseStat(0) ="2" Then
Dim strdt1 As String
Dim strdt2 As String
Dim vpause As Variant
Dim elapsed As String
Set item = doc.GetFirstItem("DTPauseStart")
strdt1 = item.text
Set item = doc.GetFirstItem("DTPauseStop")
strdt2 = item.text
elapsed = DTCalcpause.GetElapsedTime( strdt1, strdt2 )
If source.Document.DTPause(0) = "" Then
Call doc.ReplaceItemValue ("DTPause", elapsed)
Else
vpause = doc.GetItemValue ("DTPause")
Redim Preserve vpause(Ubound(vPause) + 1)
vpause(Ubound(vpause)) = elapsed
Call doc.ReplaceItemValue ("DTPause", vpause)
End If
Set item = doc.ReplaceItemValue("PauseStat",0)
End If
Sprich ich müsste die Textinhalte in Zahlen umwandlen und dann zusammen rechnen...
Ich habe die letzten Tage soviel über Arrays gelesen, aber wirklich schlauer bin ich nicht.... brauche ich das überhaupt oder kann ich das schon in meiner Funktion im Querysave zusammen rechnen und das Feld nur mit einem Wert füllen?
Für Verbesserungsvorschläge bin ich offen, auch was meinen Code betrifft.
Bin mir nicht sicher ob das ganze in die Kategorie "Help" gehört, da es eigentlich eher eine allgemeine Frage zu Lotus Scrip ist.
P.S. Gibt es eigentlich zu Arrays irgendwie ein Best Practice hier im Forum??
Hoffe mein Anliegen ist klar genug geschieldert, sonst noch mal nachaken.
Was ich noch vergessen habe... diesen Start Stop kann man natürlich jederzeit und beliebig oft ausführen, daher kann ich das fest dimensionieren.