Längenbegrenzung in smartforms?

für eilige Fragen

Längenbegrenzung in smartforms?

Postby Yunus3041 » Tue Oct 16, 2007 2:06 pm

Hallo,

ich übergebe einem smartforms eine tabelle mit der struktur text8192 (8192 character pro zeile). das wird in smartforms per loop ausgegeben, vorher einer variable vom typ string zugewiesen. die ausgabe zeigt aber nur 255 zeichen pro zeile. kann ich keine längeren textvariablen benutzen?

mit debuggen im generierten code komme ich auch nicht weiter...

gruß,
manuela.
Yunus3041
..
..
 
Posts: 65
Joined: Mon May 21, 2007 1:18 pm

Re: Längenbegrenzung in smartforms?

Postby ewx » Tue Oct 16, 2007 6:41 pm

mawi hat geschrieben:kann ich keine längeren textvariablen benutzen?

Das kann gut sein. Aber 8192 Zeichen kannst du ja eh nicht nebeneinander ausgeben...
Mein Vorschlag: Übergib den Text als Texttabelle (Struktur TLINE). Den Text müsstest du natürlich mappen, aber du könntest dann die Langtext-Funktionalität nutzen. Das heisst, dass am Fensterende umgebrochen wird.
Wenn eine neue Zeile kommen soll, füllst du TDFORMAT mit "*" oder "/" oder einem definierten Absatzformat ("AS"...).
ewx
.....
.....
 
Posts: 2840
Joined: Mon Aug 04, 2003 9:02 pm

Postby Yunus3041 » Wed Oct 17, 2007 8:51 am

Das mit den Zeilenumbrüchen habe ich noch nicht ganz kapiert (TDFORMAT),

aber ansonsten habe ich mir einen Workaround geschaffen, indem ich im smartforms ein stück programmiert habe (Tabelle mit entsprechender Zeilenlänge 255 gefüllt pro Zeile meiner übergebenen Tabelle) und dann einen loop angelegt habe, der über meine lokale Tabelle schaut. Damit habe ich zwar einen Loop im Loop, kann somit aber auch den Beginn neuer Zeilen steuern (im äußeren Loop wird jeweils eine neue Zeile begonnen).

Wahrscheinlich wäre es günstiger gewesen, mit Textbausteinen zu arbeiten - aber der Text liegt nunmal nicht in solcher Form vor. Hätte man wohl auch dynamisch machen können/sollen.

Interessant auf jeden Fall, daß ich wieder auf SAP und meine Grenzen gestoßen bin! Und danke für die Antwort.
Yunus3041
..
..
 
Posts: 65
Joined: Mon May 21, 2007 1:18 pm

Postby Svenja4429 » Thu Nov 15, 2007 3:26 pm

Hallo mawi,

wie hast du es geschafft, den Zeilenanfang zu steuern? Ich habe gestern genau dasselbe Aha-erlebnis mit der 255 Zeichen Begrenzung gehabt wie du, und meine Lösung (Tabelle mit 255-Zeichen Textteilen) ist auch gleich.

Aber wenn ich dann über meine Tabelle loope, beginnt er bei jedem neuen 255 Zeichenstück eine neue Zeile. Das Textelement im Smartform ist als "Beginn: A Direkt anhängen" definiert". Allerdings ist das Absatzformat "*". Ich denke, ich muss hier ein "=" analog SAPScript eintragen, die Auswahlmöglichkeit habe ich aber nicht.

Wie funktioniert dein "im äußeren Loop wird jeweils eine neue Zeile begonnen"?

Ich bin für jeden Tipp dankbar, wie ich das halbwegs elegant hinbekomme, ich bin schon kurz davor abzuzählen und immer nach 76 Zeichen eine neue Zeile zu beginnen, aber das kanns doch nicht sein...

Danke schonmal,
smurf
Svenja4429
.
.
 
Posts: 2
Joined: Thu Nov 15, 2007 3:26 pm

Postby Yunus3041 » Thu Nov 15, 2007 3:35 pm

Ich bin gerade "ABAP-Offline", so daß ich nicht nachsehen kann... Ich meine aber, daß das einzustellen ging im Smartforms, also nicht im Smartstyles. Im inneren Loop mußt Du angeben, daß der Text direkt hintereinander geschrieben wird ("Text anhängen" oder so) und im äußeren Loop meine ich eingegeben zu haben "Neue Zeile" o.ä. und ein Leerzeichen im Eingabebereich, damit irgendwas gezogen wird. Ich schau aber gerne nochmal nach, wenn Dir das nicht hilft - wird aber frühestens Montag.

LG, Manuela.
Yunus3041
..
..
 
Posts: 65
Joined: Mon May 21, 2007 1:18 pm

Postby Svenja4429 » Fri Nov 16, 2007 9:22 am

Ja, perfekte Idee! So habe ich es jetzt auch umgesetzt, vielen Dank!

CU,
Timo
Svenja4429
.
.
 
Posts: 2
Joined: Thu Nov 15, 2007 3:26 pm


Return to Kurzfragen

Who is online

Users browsing this forum: No registered users and 8 guests