Beiträge von RonMat

    Natürlich kann ich das in diesem Fall händisch machen. Aber es können ja auch andere Anforderungen kommen die ich dann auf diesem Weg lösen möchte und ich kenne z.Z. keinen Weg ein Rollout von Agenten zu schreiben.
    Vielleicht könnte mir Jemand einen kurzen Ansatz skizzieren - will ja auch nicht dumm sterben ;-))

    Problembeschreibung:
    Ich habe Agenten geschrieben die in die UserMaildDB hineinkopiert werden müssen. Gibt es eine Möglichkeit dieses mit einer Email zu machen damit man nicht immer in die Maildb muß und diese Agenten hinein zu kopieren.

    Hi Steal und Diali,
    danke für die Ansätze. Habe mit Diali´s Ansatz Erfolg gehabt. Ich hab´s aber immer noch nocht gefunden ( in der Notes Hilfe) das ich Parameter übergeben kann. Aber es funzt und das ist das Wichtigste und ich werde es mir halt merken.

    Hallo Gemeinde,
    nun steh ich hier ich kleiner Wicht ......
    Ich muß per Automat in eine SQL-Table bestimmte Daten holen und diese dann per eMail weiterleiten. In der Formelsprache kann ich das ja mit dbcolumn machen - als Gegenstück in Script wäre getvalue. Nun meine Frage:
    Im dbcolumn kann ich die Parameter für User und Passwort mitgeben ------ wie kann ich das im Script??
    Habe ich etwas verpasst oder bin ich zu blind?

    Ja, die Log.nsf wird unübersichtlich. Es gibt Tage, da werden ca.2000 Dokumente per Decs auf dem Fremdsystem nicht gefunden. Hat keine Auswirkung auf die DB aber es nervt wenn man sich die Log anschaut und aufeinmal 30 Seiten Fehlermeldungen drinnen sind.

    Hallo Gemeinde,
    Problembeschreibung:
    Ich ergänze Daten innerhalb von Masken mit dem Decs.
    Nun habe ich das Problem, daß wenn ein entsprechender Datensatz im Fremdsystem nicht gefunden wird (weil er z.B. noch nicht existiert) der DECS diese Fehlersuche in die Log.nsf einträgt.
    Ich habe keine Möglichkeit gefunden, diese Fehlermeldung zu deaktivieren bzw. in eine eigenständige ***log.nsf zu erstellen.
    Kann mir jemand weiterhelfen? Vielen Dank im vorwege

    Ich habe einen Agenten geschrieben, der aus einer Textdatei entsprechende Dokumente und Antwortdokumente in Notes schreibt. Ich verwende keine UI Programmierung und der Agent funktioniert manuell auf dem Server tadellos. Nun möchte ich den Agent periodisch laufen lassen und es passiert nichts?!? Warum?
    Rechte sind alle vorhanden.

    Liebe Gemeinde,
    nun sitzt ich hier und grübel ......und finde keinen Ansatz.
    Problembeschreibung:
    Innerhalb einer DB werden unterschiedliche Hauptmasken mit entsprechenden Antwortmasken eingesetzt. In einer View werden bestimmte Dokumente gehalten die alle 10 Minuten refreshed werden müssen. Nun habe ich zuerst gedacht ..ist ja easy und schrieb einen Agenten: Zeitgesteuert - auf dem Server


    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim view As NotesView
    Set db = session.CurrentDatabase
    Set view = db.GetView("VAWOBodys")
    Call view.Refresh


    Agent ist auch als Agent auf dem Server zu sehen - aber er tut´s nicht. Was mache ich falsch.
    Als nächsten Ansatz dachte ich mir - so baue eine Collection - hier habe ich dann aber Methode refresh nicht mehr, müsste dann Computedwithform nehmen. Habe aber ne Menge Formen und müsste diese dann erst wieder auslesen und ....und ....und...
    Hat Jemand einen Tip - im Augenblick stehe ich im Dunkeln - oder habe ein Brett vorm Kopf - was letztentlich dann auf das gleiche hinausläuft :cryclaus:

    Danke für die Info, aber leider ist die Zeilenanahl nicht immer gleich. Es können teilweise bis zu 20 Zeilen werden und das gemeine daran ist, daß innerhalb der Zeilen verschiedene Felder sind. Als Beispiel:


    Zeile1: 1-8 Kundennummer, 9-18 Feld x, 19-80 Feld y
    Zeile2: 1-45 text1, 46-80 Text 2 .....

    Aus einem Fremdsystem muß ich eine Datei importieren, die eine bestimmte Struktur enthält. Die Felder sind mit der Startpos. und mit der Länge bekannt. Das Beispiel habe ich mal angehängt. Ich habe zwar Erfahrungen mit CSV-Dat, aber dieses ist mir doch fremd. Kann mir einer weiterhelfen?
    Mir fehlt einfach der Ansatz - LS ist dann kein Problem


    Die ersten zwei Zeichen geben mir die Zeilenherkunft wieder: z.B.
    H1= Auftragsnummer
    H2=Ansprechpartner mit eMail-Adresse
    H3=....
    H4=....
    H7=Zielhafen
    .
    .


    H132712-1003
    H2Testmann,Hugo test@test.com
    H3CHIWCHF 00337-74 INTUT IMP
    H4 Firma XYZ
    H5DCH (siehe Rücklieferung) 40221Düsseldorf
    H7Rotterdam ECT Home 08.10.2003
    H8Düsseldorf DCH 10.10.2003
    C2IPXU314541420DV
    K2001 0010000000000035002
    K2002 0010000000000318002

    Ich habe ein ähnliches Problem folgendermaßen gelöst. Habe quasi einen Dummy mit der Startnummer erstellt und eine View aufgebaut mit folgender Selektierung: Form Dummy und die eigentlichen Masken. In der ersten Spalte wird der Counter angezeigt. View heißt in diesem Beispiel "VTB_Counter". Dann nutze ich Querysave und packe nachfolgenden Script rein. Die vorangestellten Nullen müssen nicht sein - wurde aber so verlangt.


    Dim s As New notessession
    Dim db As notesdatabase
    Set db = s.currentdatabase
    Dim view As notesview
    Set view = db.getview("VTB_Counter")
    Dim ws As New notesuiworkspace
    Dim uidoc As notesuidocument
    Set uidoc = ws.currentdocument
    Dim doc As notesdocument
    Set doc = view.GetFirstDocument
    Dim Act_No As String
    Dim Carrier As String
    Dim AG_Code As String
    Dim Ref_res As String
    Dim Last_No As Variant
    Dim res_From,res_To,Res_Form_T,res_To_T As Variant



    If uidoc.IsNewDoc Then ' *****Öffne die entsprechende View und hole letzte Nummer

    Last_No=doc.GetItemValue("Counter")
    Act_No=Last_No(0)+1

    '_________________________________________________________________


    '*****Werte aus dem Dokument auslesen

    Carrier=uidoc.FieldGetText("WO_Carrier")
    AG_Code=uidoc.FieldGetText("WO_AgencyCode")


    '_________________________________________________________________

    '******Zähler in Format bringen
    Dim RefNo_Form As String
    RefNo_Form= Right$("000000" & Cstr(Act_No),6)


    '----------------------------------------------------------------------
    T="IWO-" 'Vorangestellter Text vor der eigentlichen Referenznummer
    Ref_res=T+Carrier + AG_Code +RefNo_Form
    Uidoc.FieldSetText "WO_Ref_hide", Ref_res
    Uidoc.FieldSetText "WO_Counter",Act_No
    End If

    Habe eine Script erstellt der mir aus einer kommaseparierten Textdatei Dokumente erstellt. Klappt wunderbar - keine Probleme bei kleinen Dateien.
    Das Problem beginnt ab eingelesener Zeile 32767. Notes meldet mir lapidarisch "Overflow" und bricht den Import ab. Hat Jemand eine Lösung für das genannte Problem? Muß täglich ca 300.000 Zeilen einlesen und wollte ungerne daraus 10 Dateien machen

    Hallo Diali,
    was meinst Du mit speichern? Ich würde es sowieso als eine Aktion laufen lassen.
    Nein, wenn ich immer die gleiche Suche hätte, dann würde ich es in der View ja mit Select ..... machen.
    Ich möchte folgendes erreichen: Bevor die View öffnet, per Box meine Suchkriterien erfassen z.B. Feld x: = variabell, Feld y = variabel. Nun genau diese Parameter kann ich beim öffnen der View nicht übergeben. Ein verschieben oder kopieren in einem Folder ist nicht so schön und vergrössert unötig die DB. Stelle Dir vor, das Ergebnis ergibt 30.000 Dokumente oder mehr.
    Das Produkt wird ein Reporttool. Z.Z. löse ich das Problem indem ich bestimmte Daten in Excel exportiere und dort können meine Kollegen dann Ihre Daten reporten wie sie wollen. Aber das kann nicht sein, das man per Script keinen Lösungsansatz vernünftig hinbekommt.
    Bin also für alle Ansätze dankbar.


    ron

    Eigentlich möchte ich eine View erstellen in der die Select Anweisung variabel gestaltet werden können. Leider klappt es nicht, da beim öffnen dieser View keine Abfrageparameter übergeben werden können. Oder habe ich etwas verpasst????
    Nun kann ich ja per FTSearch eindeutige Dokumente in einer Collection catchen,bearbeiten u.s.w. Gibt es eine Möglichkeit diese temporäre Collection in irgenteiner Weise dem User sichtbar zu machen??? Habe vielleicht eine Lücke oder bin zu dämlich. Vielleicht kann mir jemand weiterhelfen.

    Taurec, erstmal vielen Dank für Deine Zeit.
    Also im QuerySave werden die Daten nicht aktualisiert (hierfür ist keine Aktion einprogrammiert worden)
    Die RespDoc Maske übernimmt die entsprechenden Felder aus dem Hauptdocument. (Beim anlegen funktioniert es ja auch gut.
    Aber Du hast mich da auf eine Idee gebracht.
    Ich hatte im Querysave ein Script erstellt der
    1. dem Hauptdoc eine laufende Nummer verpasst
    2. den Status an Respdocs weiterzugeben


    Das Script sieht nachfolgend beschrieben aus


    Dim s As New notessession
    Dim db As notesdatabase
    Set db = s.currentdatabase
    Dim view As notesview
    Set view = db.getview("VTB_Counter")
    Dim ws As New notesuiworkspace
    Dim uidoc As notesuidocument
    Set uidoc = ws.currentdocument
    Dim doc As notesdocument
    Set doc = view.GetFirstDocument
    Dim Act_No As String
    Dim Carrier As String
    Dim AG_Code As String
    Dim Ref_res As String
    Dim Last_No As Variant

    If uidoc.IsNewDoc Then ' *****Öffne die entsprechende View und hole letzte WO Nummer
    Last_No=doc.GetItemValue("WO_Counter")
    Act_No=Last_No(0)+1

    '_________________________________________________________________

    '*****Werte aus dem Dokument auslesen

    Carrier=uidoc.FieldGetText("WO_Carrier")
    AG_Code=uidoc.FieldGetText("WO_AgencyCode")
    '_________________________________________________________________

    '******Zähler in Format bringen > Carrier+AgencyCode+WONummer(6-stellig)<
    Dim RefNo_Form As String
    RefNo_Form= Right$("000000" & Cstr(Act_No),6)


    '----------------------------------------------------------------------
    T="IWO-" 'Vorangestellter Text vor der eigentlichen Referenznummer
    Ref_res=T+Carrier + AG_Code +RefNo_Form
    Uidoc.FieldSetText "WO_Ref_hide", Ref_res
    Uidoc.FieldSetText "WO_Counter",Act_No
    UiDoc.FieldSetText "WO_Drafted","YES"
    UiDoc.FieldSetText "WO_Status_Drafted",Cstr(Now())

    End If


    '*********************************************************************************
    ' Response Dok´s nachziehen um das Feld "EditLock abzugleichen

    '*********************************************************************************
    Dim Respdoc As NotesDocument
    Dim ws2 As New notesUIWorkspace
    Set Respdoc = ws2.CurrentDocument.document
    Dim Wert As String
    wert=uidoc.FieldGetText("EditLock")
    Dim DocCount As Long
    Set db = Respdoc.ParentDatabase
    Dim RespDocColl As notesdocumentCollection
    Dim RespDocCollDoc As notesdocument
    Dim PosCount As Integer
    Set RespDocColl = Respdoc.Responses
    Dim i As Integer
    On Error Resume Next
    If RespDocColl.count > 0 Then

    For i = RespDocColl.count To 1Step -1
    Set RespDocCollDoc = RespDocColl.GetNthDocument(i)
    Call RespDocColl.StampAll("EditLock",Wert)

    Next

    End If


    Ich denke, an dieser Stelle könnte ich mir entsprechende Werte holen und diese der RespDocs "überbügeln".
    Nur was passiert dann, die Werte werden nur nach dem abspeichern des Hauptdocs aktualisiert. Oder habe ich z.Z. ein Brett vorm Kopf???