cancel
Showing results for 
Search instead for 
Did you mean: 

English and Arabic Text in smartform

Former Member
0 Kudos

Dear Gurus,

I am working on smartform developments in CRM.

I am facing a problem when there is a combination of texts (English and Arabic) needs to be displayed in smartform in English Logon of SAP.

I tried many ways, but still the arabic words are printing Left to Right (LTR) instead of Right to Left (RTL).

I tried following ways:

1. I tried logon in Arabic language and then executing in English Logon is not working.

2. I tried SET LOCALE-LANGUAGE 'A' which is not helpful.

3. I tried using 'READ_TEXT' - which is not useful.

Please Help me on this.

Thanks,

S.Meganadhan.

Accepted Solutions (0)

Answers (2)

Answers (2)

david_liu1
Advisor
Advisor
0 Kudos

Hello,

Laout destroyed when English text is included into an Arabic or

Hebrew document

This is a general problem of the OTF layout mirroring. If an RTL

document (Arabic or Hebrew) contains parts that are labeled with an

LTR language (like English), then layout mirroring and BIDI

processing stops as soon as this part is reached. When another

include with RTL language is encountered, layout mirroring and BIDI

processing are resumed. The result is an incompletely mirrored

document.

The only solution is to avoid the mixture of RTL and LTR languages

when a document consists of several includes. If parts of the

documents are not yet translated but exist only in English or

another LTR language, but you want nevertheless to include them into

an RTL document, then the only solution is to copy the untranslated

parts into an include that has the RTL language as language key and

include this one instead.

Please have a look at SAP note 999136 for more details.

Regards,

David

Former Member
0 Kudos

Hi David,

Thanks for your Response.

But My Problem is quite Different from your response.

I have a smartform which has combination of English and Arabic Text like;

تحديث بيانات المستأجر

Tenant Information Update

Now i need to display the both the texts as above.

When i tried to do this, the arabic texts are coming LTR instead of RTL.

What i am doing is:

1. Copy the arabic text from word file.

2. Paste it in the smartform in the texts

( i tried using structure like first assigning the text to structure and then calling the text varibale in form ).

3. I tried maintaining text using SO10.

But none of the above is solved my problem.

Please Help me on this.

Thanks & Regards,

S.Meganadhan

david_liu1
Advisor
Advisor
0 Kudos

Hi S.Meganadhan,

Unfortunately there are several restrictions for printing documents with

mixed Arabic and English text.

1. Arabic text is only processed correctly if the document language is

Arabic.

2. Only short English texts can be processed within an Arabic document.

If you want to print Arabic text, the language key of the

Smartform (and of the text, if you include a standard text

into the Smartform) must be Arabic. This is a fixed requirement.

Only if the language key is Arabic, a correct mirroring and

shaping of the Arabic text will happen.

Of course you can still mix Arabic and English text in the form. But the

language key of the form must be Arabic.

Note 999136 point 6 means this: Let's say you have a Smartform

with three text nodes TEXT1, TEXT2 and TEXT3, which are printed

in this sequence. Let's say the original language of the form

is English and the form is only partly translated to Arabic: TEXT1

and TEXT3 are translated to AR, TEXT2 is not translated yet.

Now you print the Arabic version of the form:

- TEXT1 is printed in Arabic, because the Arabic translation exists

- The Arabic translation of TEXT2 doesn't exist, so TEXT2 of the

original language EN is used. Because EN is a left-to-right

language, the mirroring of the text is stopped here. It is only

started again, if a text with explicit language key AR is printed

(a standard text, which was created via transaction SO10 and which

is printed as include text).

- TEXT3 is no include text, so the Arabic text is printed incorrectly

here, because the mirroring is still switched off

This is the problem, which is described in note 999136, point 6.

To prevent this you should always translate the complete form.

Or you should see to it that the original language of the form

is AR.

Regards,

David

Former Member
0 Kudos

i fear you need to do it manually.

you could make use of FM "TERM_TEXT_INVERS" which inverts texts, so to say make RTL texts to LTR texts and vice versa.

maybe this helps.