Autor Thema: TXT Datei importieren  (Gelesen 1254 mal)

Offline leusel

  • Frischling
  • *
  • Beiträge: 28
  • Geschlecht: Männlich
TXT Datei importieren
« am: 19.09.03 - 14:46:39 »
Hallo,


ich importiere eine Textdatei mit folgendem Script:
Wenn ich dieses Script nach einem Import nochmal ausführe, mit der gleichen TXT Datei, habe ich alle doppelt. kann ich dies vermeiden?

Sub verr_import(session As NotesSession, ws As NotesUIWorkspace,db As notesDatabase, view As NotesView, doc As NotesDocument)
   Dim doc2 As NotesDocument
   Dim  thr_rec(1 To 6)
'   Set view = db.GetView( "()" )
   fileNum% = Freefile()
   counter% = 0
   'Call dir_open (directory)
   'Msgbox directory
'   filename$= Inputbox$("Bitte Importdatei angeben mit Path?","Importagent","c:\test.txt",200,200)
   filename= ws.OpenFileDialog(False, "Bitte Importdatei auswählen !", "", "c:")
   If filename(0) ="" Then
      Msgbox "Dateiname nicht angeben !"
      Exit Sub
   End If
   Open filename(0) For Input As fileNum%
   Do While Not Eof(fileNum%)
      Line Input #fileNum%, txt$
      counter% = counter% + 1
   Loop
   
   Seek fileNum%, 1
   For countRec% = 1 To counter%-1
      spos=1
      epos=1
      string1 = ";"
      i = 1
      j = 6
      Line Input #fileNum%, txt$
      epos =Instr ( spos,   txt$, string1)
      Do
         length = epos - spos
         thr_rec(i)=Trim(Mid (txt$, spos,length))
         spos = epos + 1
         epos =Instr ( spos,   txt$, string1)
         i = i+1
      Loop Until epos = 0
      Set doc = New NotesDocument(db)
      doc.Form="#mitarbeiter"      
      doc.doctype = "Mitarbeiter"
      doc.n_name = thr_rec(1)
      doc.v_name = thr_rec(2)
      doc.kostenst = thr_rec(5)
      doc.eintritt = thr_rec(3)
      doc.gdatum = thr_rec(4)
      doc.Taetigk = thr_rec(6)
      
      Call doc.save(True,True)         
      
   Next
   Print countRec%
   Close fileNum%




Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:TXT Datei importieren
« Antwort #1 am: 19.09.03 - 14:55:48 »
Logisch, daß Du alles doppelt drin hast nach dem zweiten Import, und dreifach nach dritten usw.
Du mußt vor dem Anlegen eines neuen Dokuments vorher einfach abfragen, ob es dieses Dokument schon gibt (entsprechend der Dir vorliegenden Anforderungen "Wann ist ein Dokument schon vorhanden").
Also: Vor Set doc = New ...
ein If <Deine Bedingungen sind nicht erfüllt> then

Es könnte auch erforderlich sein, daß Du prüfen mußt, ob es erforderlich ist, ein bestehendes Dokument upzudaten - aber ich kenne ja Deine Anforderungen nicht.

HTH,
Bernhard

Offline leusel

  • Frischling
  • *
  • Beiträge: 28
  • Geschlecht: Männlich
Re:TXT Datei importieren
« Antwort #2 am: 19.09.03 - 16:07:13 »
bekomme das mit der If Abfrage nicht hin.......

Wie Frage ich bereits vorhandene Dokumente ab?
Ich muss doch nur die beiden Namens Felder abfragen.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:TXT Datei importieren
« Antwort #3 am: 19.09.03 - 16:47:29 »
Guckst Du zuerst bei DesignerHelp, NotesView.GetDocumentByKey.
Baust dann eine sortierte Ansicht, die in den Spalten die von Dir gewünschten Felder beinhaltet.
Dann suchst Du vor Anlage eines neuen Dokuments, ob mit den Kriterien Deiner Namensfelder schon ein Dokument vorhanden ist.

Gleiches Verfahren gilt für ein eventuell erforderliches Update bereits vorhandener Dokumente - falls erforderlich.

Bernhard

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:TXT Datei importieren
« Antwort #4 am: 19.09.03 - 17:13:40 »
Hallo, leusel,

woher hast Du überhaupt Deine Import-Subroutine ? Hast Du da schon mal geprüft, wofür welche Parameter überhaupt gebraucht (oder nicht gebraucht) werden ?

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz