Erzeugen RTF

Von Ausgaben mit der Gra-Engine über Generatoren bis zum Export in diversen Formaten

Moderator: Moderatoren

Antworten
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Erzeugen RTF

Beitrag von Rolf Ramacher »

Hallo zusammen,

ich erzeuge Listen in form RTF die dann angezeigt oder auch ausgedruckt werden können.
Die Datei heisst immer gleich. Word läßt aber das erzeugen mit den neuen Daten nicht zu. das funktioniert nur zeitversetzt verzögert.

kann ich das irgendwie umgehen??
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
HaPe
1000 working lines a day
1000 working lines a day
Beiträge: 995
Registriert: So, 15. Nov 2015 17:44
Wohnort: 71665 Vaihingen-Enz
Hat sich bedankt: 17 Mal
Danksagung erhalten: 15 Mal

Re: Erzeugen RTF

Beitrag von HaPe »

Hallo Rolf !
Ich erzeuge Listen in form RTF die dann angezeigt oder auch ausgedruckt werden können.
Die Datei heisst immer gleich. Word läßt aber das erzeugen mit den neuen Daten nicht zu. das funktioniert nur zeitversetzt verzögert.
Ich kann dir nicht ganz folgen :-(

Du erzeugst per Word-Automation RTF-Listen und stellst diese den Usern zum Anzeigen oder Ausdruck zur Verfügung?
Soweit richtig?
Geht es, wenn du bei der Automation zunächst einen temporären Dateinamen verwendest, die RTF-Liste erstellen läßt und gaaanz zum Schluß kopiert Xbase++ Code die erstellte Liste in den IMMER gleichen Dateinamen?
Das Erstellen der Liste muss ja nicht im gleichen Verzeichnis sein in dem später der Anwender die Datei öffnen kann.
--
Hans-Peter
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Rolf Ramacher »

die heisst immer gleich und immer in dem entsprechend eingestellten verzeichnis. die anzeige oder druckfunktion gilt für alle Listen
an die function wird der pfad und die Datei übergeben. d.h. ich müsste mir den neuen dateinamen merken.

aber du bringst mich auf eine idee. ich werde mal testen, wenn der Dateiname existiert ich diesen dann löschen kann. und dann neu erzeugen.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Rolf Ramacher »

das funktioniert auch nicht. die RTF gibt es nicht wird auch nicht erzeugt.
ich hatte es vorher mit memowrit - da gab es keine Meldung

jetzt habe ich es versucht mit Fcreate - und erhalte die fehlermeldung
fehler beim erzeugen der Datei -

trotz admin-rechte

was ist zu tun?

Code: Alles auswählen

	If File ("artikeller.rtf")
		FErase("artikelker.rtf")
	Endif
	Dateischreiben("artikelker.rtf",cRtf)
	
	hier die function dateischreiben
	#include "Fileio.ch"

Function Dateischreiben(cDatei,cDateiText)
	nHandle := FCreate( cDatei, FC_NORMAL )
	nLen:=Len(cDateiText)
   IF nHandle == -1 
      msgbox("Fehler beim Erzeugen der Datei:", FError() )
   ELSE 
      FWrite( nHandle, cDateiText, nLen ) 
      FClose( nHandle ) 
   ENDIF 

 Return Nil

Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Scarmo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 188
Registriert: Di, 24. Jul 2007 9:17

Re: Erzeugen RTF

Beitrag von Scarmo »

Hallo Rolf

Ich gehe davon aus, dass der Code korrekt ist und es im Beispiel nur ein Tippfehler ist (bei "if file..." prüfst Du auf einen anderen Dateinamen wie bei FErase). Stimmt denn der Pfad zur Datei? Ich würde die Datei immer inkl. Pfad abfragen.

Gruss
Marco
ramses
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2513
Registriert: Mi, 28. Jul 2010 17:16
Hat sich bedankt: 12 Mal
Danksagung erhalten: 77 Mal

Re: Erzeugen RTF

Beitrag von ramses »

Hallo Rolf

benutzt du ein Netzwerklaufwerk? Dann könnte es an den verschiedenen Varianten des Directory Cache von Windows liegen. Wenn es der Systemadmin zulässt könnte dieses deaktiviert werden andernfalls müsstest du fortlaufende unterschiedliche Dateinamen verwenden.
Valar Morghulis

Gruss Carlo
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Rolf Ramacher »

nein kein Netzlaufwerk. ist auch bei mir die lokale Platte. aber jetzt scheint es anscheinend doch zu funktionieren.

ich werde es beobachten was passiert
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Herbert »

Verwendest du anschliessend Word-Funktionen?
Falls ja, Word blockiert die Datei, so lange von da in Verwendung.

Zudem ist es nicht zu empfehlen, immer denselben Dateinamen zu verwenden. Was machst denn, wenn zwei Benutzer gleichzeitig dasselbe tun?
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Rolf Ramacher »

Hallo Herbert

nein ich nehme Word nur zum drucken. Der gleiche Dateiname funktioniert deshalb, da die RTF-Datei in einem lokalen Ordner abgelegt wird.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Herbert »

Zur Info, unabhängig vom bisherigen Thema.

Unsere Programme packen eine .rtf und füllen an bestimmten Stellen Werte aus Tabellen ein. So weit so klar.
Bei einem Kunde geht das Ersetzen plötzlich nicht mehr. Warum? Ein neues Release der Kaspersky-Antivirensoftware blockiert das. Momentan konnten wir den nur ausschalten, damit das weiter klappt.
Also, wer solche Phänomene trifft, auf den Anti-Virus schauen...
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Erzeugen RTF

Beitrag von AUGE_OHR »

hi,
Rolf Ramacher hat geschrieben: Fr, 29. Mai 2020 11:09

Code: Alles auswählen

	If File ("artikeller.rtf")
		FErase("artikelker.rtf")
	Endif
wenn man eine Datei löscht sollte man prüfen (!) ob die Aktion Erfolg hatte

Code: Alles auswählen

IF FErase( <cFilename> ) --> nSuccess 
Rolf Ramacher hat geschrieben: Fr, 29. Mai 2020 11:09 nein kein Netzlaufwerk. ist auch bei mir die lokale Platte
seit Windows 7 besteht das Problem mit dem LOKALEN Cache da der "Lokale Server" immer aktiviert ist.
gruss by OHR
Jimmy
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Erzeugen RTF

Beitrag von Rolf Ramacher »

ich mache das jetzt nicht mehr mit memowrit, sondern mit fcreate . funktioniert jetzt mit fcreate
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Antworten