database publishing GASSENHUBER DATAform DBP

  E-Mail senden
  Info-Material anfordern
 
 
 
   
Erste Seite  <<  >> Letzte Seite
Erste Seite  <<  >> Letzte Seite
V. DATAform-Datenbank-Schnittstelle 127 Entwicklerhandbuch DATAformXTension © 1992-2004 www.gassenhuber.de DX_Read (4) => Boolean Ermöglicht es, pro DATAformMarke zu wählen, ob diese in den DX_Array geschrieben oder als DATAformMarken-Text in DX_Array {11} addiert werden soll. Man schreibt dazu in DX_Array{0} einen String aus den Zeichen Char( gewünschte DX_Array-Zeile). DX_Read ( 4 ) liest dann nur die DX_Array {0}-Parameter in den DX_Array. Alle anderen in DX_Array {11} . Beispiel für DX_Read (4) DX_Array{0}:=Char(1)+Char(2)+Char(3)+Char(4)+Char(5)+Char(6)+Char(7) DX_Array{0}:=DX_Array{0}+Char(8)+Char(9)+Char(10)+Char(28)+Char(63) DX_Array{0}:=DX_Array{0}+Char(64)+Char(65)+Char(66)+Char(71)+Char(73) Füllt man DX_Array{0} mit diesem String vor dem Aufruf von DX_Read (4), so verhält sich DX_Read (4) exakt wie DX_Read (3): Nur die Parameter 1–10, 28, 63–66 und 71, 73 werden in ihre DX_Array-Zeile gelesen, alle anderen in DX_Array {11}. Durch Hinzufügen oder Entfernen eines Parameters in der Liste läßt sich einzeln definieren, ob man den Parameter als Array-Zeile oder als Text in DX_Array {11} erhalten möchte. So können auch die Verankerungsinformationen, je nach Anwendung, in einem einzigen Text mit anderen Rahmeneigenschaften oder in einzelnen, eigenen Feldern abgespeichert werden. DX_Buffer für DX_Read Die Funktion DX_Read arbeitet optional mit einem internen Zwischenspeicher. Der Importvorgang ist bei Verwendung des Buffers erheblich (mind. Faktor 2) schneller. Wird der Buffer verwendet, darf die maximale Objektgröße 16 K nicht überschreiten. Die Objektgröße ist die Anzahl der Zeichen, die zur Beschreibung eines QuarkXPress-Rahmens (inkl. seines Textes) benötigt werden, also alle Zeichen zwischen ¶ und ¶. Wird der Buffer nicht verwendet, liegt die maximale Objektgröße bei 32 K. Buffer an- und abschalten Der Buffer wird durch die Funktion DX_Init (-1), aufgerufen in Ihrer StartUp-Prozedur, stan- dardmäßig angeschaltet. Um den Buffer abzuschalten, schreiben Sie nach der Zeile DX_Init (-1) die Zeile: DX_Buffer:=False `Max. Objektgröße: 32K           Der Buffer kann dann an anderer Stelle in Ihrem Programm durch DX_Buffer:=True `Max. Objektgröße: 16K       wieder angeschaltet werden. Die Variable DX_Buffer wird von DX_Read abgefragt und beim nächsten Importvorgang verwendet. DX_FilePos für DX_Read Zeigt die aktuelle Position in der geöffneten Datei. Jeder Lesevorgang durch DX_Read verän- dert die Position. DX_FilePos kann verwendet werden, um z.B. den Fortgang des Einlesevor- gangs anzuzeigen: Vor dem Einlesevorgang wird die Dateilänge in eine Variable gelesen. àFileSize:=Get document size (Pfad) In der eigentlichen Einleseschleife kann der Fortgang dann z.B. in Prozent angezeigt werden: $i:=0 While (DX_Read (3)) $i:=$i+1 If ($i%10=0) MESSAGE("Objekte: "+String($i)+("  "*10)+String(DX_FilePos/àFileSize*100;"## %")) end if End while