database publishing GASSENHUBER DATAform DBP

  E-Mail senden
  Info-Material anfordern
 
 
 
   
Erste Seite  <<  >> Letzte Seite
Erste Seite  <<  >> Letzte Seite
V. DATAform-Datenbank-Schnittstelle 124 Entwicklerhandbuch DATAformXTension © 1992-2004 www.gassenhuber.de Die drei Methoden der eigentlichen Schnittstelle DX_Write DX_Write (Selector; {Pfad}) => Boolean Die Funktion DX_Write dient der Übergabe von Objekten an QuarkXPress. Die Übergabe kann über die Zwischenablage oder eine Datei erfolgen. Beim Import in QuarkXPress ist das DATAformXTension auf einen Import aus der Zwischenablage oder einer Datei einzustellen. (S. unter DATAformXTension „Einstellungen…“.) Die Übergabe von Objekten hat i.d.R. folgenden strukturellen Aufbau: DX_Write (0;{Pfad})  ` die Schnittstelle neu initialisieren Schleife durch die zu exportierenden Datensätze Füllung des DX_Arrays mit den Werten eines Rahmens DX_Write (1) `den gefüllten DX_Array an die Schnittstelle übergeben Nächsten Datensatz laden Schleifenende DX_Write (2) `Alle gesammelten Objekte an QuarkXPress übergeben. Die Prozedur DX_DemoWrite  demonstriert den Vorgang. Die Aufrufe müssen in der Reihenfolge 0, 1, 2 erfolgen. DX_Write liefert True, wenn kein Fehler aufgetreten ist. Die Variable "DX_Error" wird 0. DX_Write liefert False, wenn ein Fehler aufgetreten ist. Die Fehlernummer wird dann in die Variable DX_Error geschrieben. DX_Write (0;{Pfad}) => Boolean Initialisert den TextArray DX_Array. Wird ein Pfad übergeben, wird die Datei erzeugt und geöffnet. Fehlt der Pfad, wird mit der Zwischenablage gearbeitet. DX_Write (1) => Boolean Übergibt den DX_Array (das Objekt) an die Schnittstelle.  Die Schittstelle übersetzt das Objekt in DATAformMarken und legt es in einem Puffer ab. Beginnt eine DX_Array-Zeile mit „*“, wird der Inhalt der Zeile wie er ist, ohne Übersetzung, übergeben, vgl. DX_Read (3). DX_Array{1} und DX_Blob Der Text/Bildpfad des Rahmens wird normalerweise in DX_Array{1} übergeben. Bei verketten Rahmen muß der gesamte Text der Kette mit dem ersten Rahmen übergeben werden. Hier können lange Texte entstehen, die die 30K-Grenze für DX_Array{1} überschrei- ten würden. In diesem Fall übergibt man den gesamten Text an den Blob DX_Blob. Viele Texte werden nach diesem Schema addiert: Am Ende folgt ein DX_Write (1) für den gesamten Text des Rahmens. Pro DX_Write(1) kann zwischen der Übergabe an DX_Array{1} und  DX_Blob gewechselt werden. Enthält der Blob Daten, werden seine Daten und nicht die in DX_Array{1} verwendet. Der Blob wird dann durch DX_Write(1) in die Datei geschrieben und wieder auf Null gesetzt. Arbeitet man mit DX_Blob werden die Daten nicht mehr gesammelt, sondern immer sofort in die Datei geschrieben. Bei kleinen Textmengen und Bildpfaden füllt man besser den DX_Array{1} um den Plattenzugriff zu verringern.