Seite 1 von 1

Office 2010 Professional

Verfasst: Do, 05. Feb 2015 9:56
von xbaseklaus
Guten Morgen,

warum werden bei einem identischen Office 2010 mit Windows 7 , auf dem einen Computer der Inhalt der DBF Datenbank ( z.B. für Serienbrief ) beim Anzeigen in Word 2010
von OEM nach ANSI automatisch gewandelt und auf dem anderen Computer muß ich vorher die Daten mit ConvToAnsiCP bearbeiten , damit Sie im Serienbrief richtig dargestellt werden ?????

mfg Klaus

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 10:55
von brandelh
Kann es sein, dass da im Office DBF Format der Zeichensatz gewählt werden kann und die Einstellungen unterschiedlich sind ?
Ich meine, dass ich immer DBFNTX mit OEM genutzt habe und das gut funktioniert hat.

PS: wenn man die EXE auf ANSI umgestellt hat und die FOXCDX nutzt um eine DBF neu zu erstellen, wird diese intern ANSI haben.
Xbase++ kommt damit zurecht, ein Office nicht. Eventuell hat der andere User noch die ursprüngliche DBF Datei die noch auf OEM läuft.

Mehr wüsste ich jetzt nicht :wink:

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 11:13
von xbaseklaus
Hallo Hubert , dem ist leider alles nicht so !!!

Die xbase Anwedung ist ne reine OEM Anwendung - die DBF sind OEM, das Xbase Programm, die erstellten Datenbanken und das Office 2010 ist bei beiden Computern
identisch , sogar die erstellten Verküpfungen mit Word bzw Excel sind die gleichen : ABER einmal wird die DBF intern anscheinend umgewandelt !!!

Standartmäßig habe ich alle verwendeten DBF für Office mit convtoansicp bearbeitet um die Umlaute zu haben ... bei dem einen PC kommt dabei natürlich misst raus, da er in
Office die DBF nch ANSI wandelt , obwohl sie ja schon in ANSI ist.

Jetzt habe ich in meinem Programm in Einstellungen einen Menüpunkt eingerichtet : Office DBF nach ANSI wandeln J oder N !!!

Aber ich weiß immer noch nicht wieso die DBF Dateien auf dem einen PC von Office automatisch gewandelt werden ??????????????? Da ist nirgendswo ne Einstellung für OEM beachten oder so ... Außerdem verwende ich die Word Dokumente mit Verknüpfung von dem PC auf dem nach ANSI vorher gewandelt werden muß 1:1 auf dem andern PC wo er selbständig wandelt. Ich habe auf auf dem PC wo er die DBF selbsändig von OEM nach ANSI wandelt neu erstellt , immer das gleiche Problem :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead: :banghead:

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 11:55
von DelUser01
Hallo Klaus

habe Dir keine Antwort - aber so einen Effekt hatte ich die letzten Wochen auch festgestellt. Bin der Sache aber wegen Zeitmangel nicht weiter nachgegangen.
Ich meine, dass das etwas mit dem CreateObject() zu tun hat. Da muss Xbase++ oder das Betriebssystem erkennen, dass es die Zeichen wandeln muss oder auch nicht...

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 12:22
von Herbert
Warum gehst du direkt auf eine .dbf los?
Ich erstelle eine Schnittstellen-Textdatei, mit dem Vorteil, Daten aus mehreren .dbfs zusammenmischen zu können (z.B. Vertreteradresse anstelle der "normalen" Adresse usw.

Code: Alles auswählen

nze := FCREATE(cPrt,0)
 IF nze >= 0    
  FWRITE(nze,'ANREDE!NAMEVORNAME!VORNAMENAME!BEZEICHN!STRASSE!PLZORT!VERSNR!HORT!BRIEFANREDE!BETRIFFT'+CRLF)
  DO WHILE !EOF()
  ......   // Daten ev,. zusammensuchen
      cBuf := ....
      FWRITE(nze,OemToAnsi(cBuf)+CRLF)   // Umwandeln oder auch nicht, wie man will
      DbSelectArea(32)
      SKIP
    ENDDO

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 12:27
von DelUser01
OK - wenn er die DBF direkt in Word öffnet ist meine Antwort natürlich Quatsch.
(Auf die Idee bin ich noch gar nicht gekommen DBF als Serienbrief-Steuerdatei zu )nehmen...

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 12:31
von xbaseklaus
Hallo Herbert,

diese Vorgehensweise ist nicht schlecht , da ich damit wahrscheinlich auch im neuen Office 2013 keine Probleme mit der Einbindung haben werde.

Aber wie sieht das aus bei FELDERN die mit "..." oder , oder ; oder -_ oder ähnlichen Sonderzeichen belegt sind !?!

mfg Klaus

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 12:35
von xbaseklaus
Ja Roland ich nehme speziell erstellte DBF Dateien als Steuerdatei .... da meine Kunden öfters Sonderzeichen in den Feldern verwenden mit denen dann Office nicht klarkommt, da sie als Trennzeichen interpretiert werden ...

mfg Klaus

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 12:43
von Tom
Ich halte das für keine gute Idee, Tabellen direkt verwenden zu lassen. Wenn jemand parallel mit genau diesen Tabellen zu arbeiten versucht, kann es Probleme geben.

Ursache sind vermutlich unterschiedliche Office-Importfilter.

Ich würde eine Excel-Tabelle exportieren, mit der gearbeitet werden kann. Beispielcode dafür dürfte es hier im Forum geben.

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 13:15
von Herbert
xbaseklaus hat geschrieben:Hallo Herbert,
diese Vorgehensweise ist nicht schlecht , da ich damit wahrscheinlich auch im neuen Office 2013 keine Probleme mit der Einbindung haben werde.
Aber wie sieht das aus bei FELDERN die mit "..." oder , oder ; oder -_ oder ähnlichen Sonderzeichen belegt sind !?!
Egal. Du bestimmst das Trennzeichen. Ich habe das Ausrufezeichen gewählt. Alles vom einen zum nächsten Trennzeichen gehört zum jeweiligen Feldnamen.

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 13:28
von brandelh
xbaseklaus hat geschrieben:Ja Roland ich nehme speziell erstellte DBF Dateien als Steuerdatei .... da meine Kunden öfters Sonderzeichen in den Feldern verwenden mit denen dann Office nicht klarkommt, da sie als Trennzeichen interpretiert werden ...

mfg Klaus
Die Sonderzeichen sollten dann kein Problem sein, wenn du die CSV Datei selbst baust und alle Textfelder mit " umschließt !
Dazu muss man nur wissen, dass ein " im Feld mit zwei "" escaped werden muss.
Ob das so geht oder über einen Zwischenschritt bin ich überfragt.

Wenn Excel installiert ist, ist der ActiveX Exceltransport wie von TOM angesprochen der einfachere Weg, dazu kann man sogar eines der mitgelieferten Beispiele nutzen (ich meine die zeigen DBF öffnen, XLS speichern ...) bei neueren Excelversionen muss man halt die Ecxel.CH neu machen (notfalls habe ich für 2007 und 2010 auch welche hier).

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 13:31
von DelUser01
Um alle Zeichen in einem Feld verwenden zu können müsstest Du vermutlich eine Excel-Tabelle als Steuerdatei verwenden. Und auch dort gibt es irgendwelche Probleme und die Excel-Tabelle muss in Word importiert werden (lt. MS).
Mit einer Zeichenkombination als Trenner müsste das klappen, aber ob Office eine Zeichenkombination als Trenner zulässt weiß ich nicht.

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 13:47
von xbaseklaus
Danke erst mal an ALLLE , da ich an Office 2013 und folgende über kurz oder lang nicht vorbeikomme werden ich mit euren Vorschlägen in nächster Zeit testen und bei Problemen diesen Thread wieder nach oben holen .

mfg Klaus

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 13:52
von xbaseklaus
Ach ja eine Frage hätte ich dann doch noch...

benutzt jemand die Freeware Lösung OPEN OFFICE , da ist die DBF Unterstützung soweit ich weiß nach wie vor gesichert ?

Wäre Open OFFICE eine mögliche Alternative ?

mfg Klaus

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 14:28
von Tom
Ich weiß nicht, ob OO Importfilter anbietet, die OEM-DBF unterstützen. Möglich isses. Aber Du konfrontierst die Anwender dann mit veränderten Instrumenten, um Dir selbst die Lösung einer kleinen Aufgabe zu vereinfachen. Außerdem hast Du auch in dieser Konstellation immer noch das Problem, dass eine andere Anwendung konkurrierend auf Tabellen zugreifen will, und das ist immer gefährlich. Ganz haarig wird es, wenn DBF-Tabellen in solchen Anwendungen geöffnet und verändert werden - dann geht alles den Bach runter.

Serienbriefe sind eine wunderbare Aufgabe für Reportgeneratoren. Die meisten guten Reportgeneratoren bieten von Haus aus Möglichkeiten, Office-Dokumente in Reports zu platzieren und zu verwenden, während die Anwendung die weiteren Inhalte steuern kann, bei der Datenauswahl hilft und möglicherweise sogar die Ergebnisse archiviert. Das ist zwar etwas mehr Arbeit, als den Kunden dabei zu helfen, einen Serienbrief an eine Tabelle zu hängen, aber Du würdest eine generelle Lösung liefern, die ohne Dein Eingreifen funktioniert.

Ansonsten, wie gesagt: Export (Excel, CSV, VCF). Am einfachsten in der Handhabung ist meistens Excel.

Re: Office 2010 Professional

Verfasst: Do, 05. Feb 2015 16:24
von Wolfgang Ciriack
Ansonsten kannst du auch einfach die *.dbf nach *.xls kopieren und diese direkt ohne Umwandlung mit Excel öffnen.