PDA

View Full Version : Konstanten mit POSITION drucken



dirkus
15-03-04, 20:30
Hallo,

weiß wer, wie man Konstanten mit dem Schlüsselwort POSITION positionieren kann?

Mein Printerfile sieh so aus:



A R REP8D FNTCHRSET(C0H20090 T1001141)

A SUPP_P 8 POSITION(1,850 0,950)
A ADR1_P 50 POSITION(2,000 0,950)

A 'LS-Nr.:'
A POSITION(1,850 5,450)

A 'Lief. Datum:'
A POSITION(2,000 5,450)


Die Umwandlung bricht immer mit CPD7554 (Schlüsselwort bei aktueller Datenart oder Tastaturumschaltung nicht gültig.) bei 'LS-Nr.:' und mit CPD5231 (Da Schlüsselwort mehrfach angegeben, Auswahlbezugszahlen erforderlich) bei POSITION ab.

Wisst Ihr wie das geht :confused:

Gruß
Dirk

Fuerchau
15-03-04, 20:35
Verlagere die Konstanten in eine MSGF, definiere dann ein Zeichenfeld mit MSGCON(ID FILE), dann müsste es gehen.

dirkus
15-03-04, 20:38
so schlimm gleich!?!

Fuerchau
15-03-04, 20:41
Dadurch, dass die Textkonstante keine Zeilen/Spalten-Info hat, bekommt der Compiler keine Info über ein neues Feld, so dass die POSITION danach auf das Feld vorher bezogen wird.

Du kannst auch jede Konstante in ein eigenes Satzformat packen, dann könnte es ggf. klappen.

Aber was hast du gegen MSGCON ?
Vereinfacht doch die Generierung mehrsprachiger Umgebungen.

dirkus
15-03-04, 20:50
merci erstmal für die schnellen antworten!

ich finde printerfiles ja eh schon extrem unübersichtlich, und wenn ich jetzt die konstanten auch noch auslagere, finde ich mich gleich gar nicht mehr zurecht. jetzt kann ich mir noch sicher sein, daß hinter ls-nr.: die lieferscheinnummer kommen wird...

ich glaube ich werde das satzformat wieder auf zeilen und spalten umbauen.

jedoch stimmt dann irgendwie immer die positionierung von den pagesegmenten bei host-print-transform nicht richtig. wohl wegen den seitenrändern der drucker. auf den ipds-lasern gebaute listen stimmen nach hpt nicht mehr...

weißt du hierzu auch was?

danke nochmal.

gruß
dirk

Fuerchau
15-03-04, 21:01
Hierzu habe ich schon mal was geschrieben, weiß aber nicht obs noch im Forum ist.

Bei zeilenweiser Ausgabe (SCS/IPDS) wird die ganze Seite durch Hosttransform auf den druckbaren Bereich verschoben.

Bei AFPDS wird jedes Feld einzeln verschoben.
Druckst du also ein Feld auf Spalte 1, wird dieses Feld auf z.B. Spalte 3 verschoben, da 1+2 nicht bedruckbar sind.
Das nächste Feld passt aber und wird deshalb nicht verschoben !

Also: Hosttransform bedruckt nicht Zeile 1 und Spalte 1+2.