Autor Thema: Daten in ein Text File schieben  (Gelesen 2232 mal)

Offline LisaS

  • Senior Mitglied
  • ****
  • Beiträge: 429
  • Geschlecht: Weiblich
  • Ich liebe dieses Forum!
    • [WCM4U]
Daten in ein Text File schieben
« am: 24.07.03 - 14:57:37 »
Hallo,
ich habe mich entschlossen Daten, die aus sechs Feldern in einer Eingabemaske kommen, in einem Text-Dokument (data.doc), welches in einem Richtextfeld liegt, zu schreiben.
Hintergrund:
Die Daten werden für den Export nach Word gebraucht. In letzter Zeit ist immer öffter ein 64k-Problem aufgetreten, weil wir alle Eingaben in Textfeldern gespeichert haben und diese ihr Limit erreicht haben.
Da diese Daten zum größten Teil nur für dem Export gebraucht werden, könnte mann sie doch gleich in ein txt-file schreiben und in einem RTFeld speichern.
Soweit die Theorie... ich brauch etwas Hilfe bei der Umsetzung ::)
Ich hab mir schon folgendes zurechtgelegt:

Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim fileNum As Integer

Set uidoc = workspace.CurrentDocument
fileName$ = "data.doc"
If ObjCont="" Then
   Call uidoc.GotoField( "ObjCont" )
   Call uidoc.CreateObject("data.doc", "Word.Document")
   'Werte aus der Eingabemaske übernehmen
   start$=uidoc.fieldgettext("Datum_Start")
   ende$=uidoc.fieldgettext("Datum_Ende")
   kunde$=uidoc.fieldgettext("BezeichnungKunde")
   branche$=uidoc.fieldgettext("BezeichnungBranche")
   prjf$=uidoc.fieldgettext("ProjektFunktion")
   prjt$=uidoc.fieldgettext("ProjektTask")
        fileNum% = Freefile()
   Open fileName$ For Output As fileNum%
   Write #fileNum% ,start$,Ende$,kunde$,branche,$branche,prjt$,prjf$
   End If
..das funzt aber nicht :'(
 
Helft mir...
Gruß
Hitcher

Dem einen oder andern mag das bekannt  vorkommen, es handelt sich um das selbe Problem welches ich vorgestern gepostet habe. Da wollte ich aber die Daten in ein RTfeld pressen. Der jetzige Weg scheint aber sinnvollerzu sein.
« Letzte Änderung: 24.07.03 - 14:59:47 von Hitcher »
Rechtschreibfehler sind beabsichtigt und dienen der allgemeinen Belustigung.
Server Windows , Domino 8.5.2, Workstation Win 7, Client 8.5.2, Designer 8.5.2 Browser IE 9, Firefox

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Daten in ein Text File schieben
« Antwort #1 am: 24.07.03 - 15:28:26 »
Bevor sich jetzt jemand 'nen Wolf sucht, sagst Du erstmal an, was wo "nicht funzt".
Und in Dein Script baust Du immer brav "Option Declare" ein - dann fallen schon die ersten Fehler beim Kompilieren auf ;-)

Glombi

  • Gast
Re:Daten in ein Text File schieben
« Antwort #2 am: 24.07.03 - 20:03:47 »
Hi,
Du willst nicht allen Ernstes auf diesen Weg die Daten in die Datei "data.doc" schreiben, die im Dokument ist, oder ??? :o

Bei der Angabe fileName$ = "data.doc" fehlt der Pfad. Das write wird daher wohl nicht funktionieren.

Aber wie gesagt, Du solltest uns Dein Konzept mal erläutern und dann können wir zusammen versuchen, das programmtechnisch umzusetzen.

Andreas
« Letzte Änderung: 24.07.03 - 20:04:26 von Glombi »

Offline LisaS

  • Senior Mitglied
  • ****
  • Beiträge: 429
  • Geschlecht: Weiblich
  • Ich liebe dieses Forum!
    • [WCM4U]
Re:Daten in ein Text File schieben
« Antwort #3 am: 25.07.03 - 09:05:37 »
@all:
Ok, der Code oben war ja auch nur ein erster Ansatz. Ich habe leider wenig Erfahrung rund um das Open-Statement.
@Andreas:
Ich versuche mal kurz zusammen zu fassen worum es bei dem Projekt geht.
Es werden Daten zu einem Mitarbeiter in einer Art Qualifikationsprofil gesammelt. In dem Dokument sind circa 80 Felder die 4 Bereichen zugeordnet sind, diese Felder sind zum größten Tei für den Export nach Word bestimmt. Wie gesagt diese Sache funktionierte auch ganz gut bis zu dem Zeitpunkt als in einem Bereich ein Speicherplatz-Problem auftrat. Die Daten werden nämlich alle in Text Felder gesammelt und gerade in dem Teil wo die Projekterfahrung beschrieben wird kommt schnell was zusammen.
Meine Idee ist jetzt, den Teil der Daten Projekterfahrung, sofort in ein Textfile zu schreiben und in einem Richtextfeld zu Speichern. Es handel sich hierbei um Datesätze die in einer Eingabemaske erfasst werden, ist die Eingabemaske ausgefüllt, drückt man eine Schaltfläche und die Daten werden in das Textfile an die oberste Stelle geschrieben.
Unseren derzeitigen Exportagent (Ansichts-Aktion ausgewähtes Qualiprofil) wüßt ich dann nur noch sagen das er sein und das Textfile im Dokument zusammenfügen soll.
Aber das ist ja noch nicht alles.
Die einzelnen Projektdatensätze muß man ja noch nachbearbeiten, löschen bzw. ersetzen können, daß könnte man über endsprechnende Masken realisieren.
Ich hoffe das meine Idee nicht zu blöd, aber ich denke daß in dem Fall ein Textfile ein idealer Speicher für viel Text ist.
Allerdings habe ich noch nicht viel mehr als die Idee zusammen gebracht, für die Umsetzung würde ich gerne Deine/Eure Hilfe in Anspruch nehmen. Vieleich hat ja schon jemand was in der Art  ;D.

Gruß
Hitcher
Rechtschreibfehler sind beabsichtigt und dienen der allgemeinen Belustigung.
Server Windows , Domino 8.5.2, Workstation Win 7, Client 8.5.2, Designer 8.5.2 Browser IE 9, Firefox

Offline LisaS

  • Senior Mitglied
  • ****
  • Beiträge: 429
  • Geschlecht: Weiblich
  • Ich liebe dieses Forum!
    • [WCM4U]
Re:Daten in ein Text File schieben
« Antwort #4 am: 30.07.03 - 09:52:46 »
@all:
Ok, hier ist ein Stück Code...

Sub Click(Source As Button)

Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim fileNum As Integer
Dim filename As String
Dim start As Variant
Dim ende As Variant
Dim startmonat,startjahr,endejahr,endemonat,prjf, prjt, branche, kunde As String

Set uidoc = workspace.CurrentDocument
fileName = "c:\textport.doc"

start=uidoc.fieldgettext("Datum_Start")
ende=uidoc.fieldgettext("Datum_Ende")
kunde=uidoc.fieldgettext("BezeichnungKunde")
branche=uidoc.fieldgettext("BezeichnungBranche")
prjf=uidoc.fieldgettext("ProjektFunktion")
prjt=uidoc.fieldgettext("ProjektTask")
'Inhalte Prüfen
......

fileNum% = Freefile()
Open fileName For Output As fileNum%
Write #fileNum% ,start,ende, kunde,branche, prj,prjt

End Sub

... das funtioniert auch so weit, aber wie bekomme ich es hin, daß die einzelnen
Werte mit | getrennt werden und nicht mit Komma.
Jetzt steht auch jeder Wert in "", das soll auch nicht sein, was muß ich tun?

Gruß
Hitcher



Rechtschreibfehler sind beabsichtigt und dienen der allgemeinen Belustigung.
Server Windows , Domino 8.5.2, Workstation Win 7, Client 8.5.2, Designer 8.5.2 Browser IE 9, Firefox

Glombi

  • Gast
Re:Daten in ein Text File schieben
« Antwort #5 am: 30.07.03 - 09:57:40 »
Hi,
wenn Du mit Write# arbeitest, schreibt er alle "Spalten" mit Komma getrennt. Der Trick ist, nur einen String zu nehmen. Also:

dim writeString as string

writeString = start & "|" & ende & "|" & kunde & "|" & branche & "|" & prj,prjt

fileNum% = Freefile()
Open fileName For Output As fileNum%
Write #fileNum% ,writeString

Anstelle des Write# kannst Du auch Print# verwenden. Dann werden die "" nicht geschrieben!

Also:
writeString = start & "|" & ende & "|" & kunde & "|" & branche & "|" & prj,prjt

fileNum% = Freefile()
Open fileName For Output As fileNum%
Print #fileNum% ,writeString


Andreas
« Letzte Änderung: 30.07.03 - 10:07:04 von Glombi »

Offline LisaS

  • Senior Mitglied
  • ****
  • Beiträge: 429
  • Geschlecht: Weiblich
  • Ich liebe dieses Forum!
    • [WCM4U]
Re:Daten in ein Text File schieben
« Antwort #6 am: 30.07.03 - 10:18:42 »
@Andreas:
Das hat geklappt.
Trotzdem wird dieser String in "" gesetzt, kann man das umgehen?

Ist es eigendlich möglich, jeden weiteren Datensatz an den Anfang
einzufügen, oder kann man nur anhängen?

Gruß
Hitcher
Rechtschreibfehler sind beabsichtigt und dienen der allgemeinen Belustigung.
Server Windows , Domino 8.5.2, Workstation Win 7, Client 8.5.2, Designer 8.5.2 Browser IE 9, Firefox

Glombi

  • Gast
Re:Daten in ein Text File schieben
« Antwort #7 am: 30.07.03 - 10:31:03 »
Hi,
wenn man Print # verwendet, werden keine "" geschrieben. Habe es sicherheitshalber getestet.
Andreas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz