Skip to Content
Author's profile photo Uwe Fetzer

[Brainstorming] Translation Tools for ABAP in Eclipse

Last week I’ve been at the DSAG ABAP Developments Days in Walldorf. At the usual visit of the tapas bar in the evening we had a discussion about the translation of development objects in ABAP in Eclipse (ABAP Development Tools ADT). SAP currently suggests, that we use the SE63 to translate the objects after we finished our developments.

At least my “development workflow” looks a bit different: every time I’ve created a translation relevant object, for example a new message or text element, I immediately translate this object (let it be from German to English or vice versa, depends on my current project).

Let’s play Design Thinking and give the Persona a name:

Hello, my name is Uwe and I’m an ABAP developer. On a daily basis I’m working with translation relevant objects. This is how I’m currently working

1. Text elements

I’m using the following format, because no comment for text-xxx is needed


WRITE:/ 'This is just a test'(001).

With <f2> on the text I’m creating the element.

Image2.png

Marking the element and going to the translation are just two clicks away

Image3.png

After entering the text, save and exit I’m finished.

Image4.png

2. Messages

MESSAGE i002(ytestmsg) WITH 'Another test'(002).

<F2> on “i002” and the message will be created.

Again: after entering the text I’m going directly to the translation

Image5.png

Translate the text save and exit. Finished

Image6.png

3. Data element labels

After entering the last Field label I’m going immediately to the translation

Image7.png

Translate all text save and exit. Finished

Image8.png

Or do you have another translation procedure? Do you have in-house rules?

In Eclipse we currently have this situation: after <f3> on a non-existing text element or message we get

Image9.png

(Object not found. Creation via navigation not supported)

To be honest: I had to google where to find the text elements. Here you are:

Image10.png

The result is, that we end in the SAP GUI. Would be nice if we’ll get an Eclipse tool for text element, but that’s not part of this blog post.

Now my dear developer college it’s up to us to help SAP to “translate” this workflow to the Eclipse world.

Suggestion 1

a new Eclipse view which is active for every translation relevant object

Suggestion 2

a new tab in the properties view

Image11.png

Looking forward to your opinion. (and I promise you: SAP is listening 😉 )

You can find me on Twitter and G+

Assigned Tags

      26 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Christian Guenter
      Christian Guenter

      Hi Uwe,

      In Eclipse we currently have this situation: after <f3> on a non-existing text element or message we get

      Image9.png

      (Object not found. Creation via navigation not supported)

      it's already possible in eclipse to create texts via quick fix. This works almost the same as F2 in classical SAPGui (and i really like this quick fix thing).

      2016-05-11 16_26_14-.png

      (Sorry for the german and english mixture. The first line means 'create text 002 in textpool')

      Then a nice form appears. Maybe another option could be that you can maintain translations directly in this form?

      2016-05-11 16_27_40-ABAP_2 - Program Z_TEST_TEXT3 [DVA] - inactive, locked - DVA_010_guenterc_de - E.png

      Otherwise i'll vote for suggestion 1.

      Regards Christian

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      Hi Christian,

      oh, this is a bit inconsistent then:

      • I thought "quick fix" is just to "fix" something broken (yellow or red underlined)
      • there IS a form to enter text elements, but it will NOT be called, if I want to jump exactly to this text (by pressing <f3>), let it be to create or change the text

      Eclipse team: can you "quick fix" the second point 😉

      Author's profile photo Former Member
      Former Member

      "Quick Fix" is the master-key to all the developer woes - refactoring, method extraction, method creation, local data declaration etc.

      In 😘 with "Ctrl + 1"  ...

      Author's profile photo Christian Guenter
      Christian Guenter

      there IS a form to enter text elements, but it will NOT be called, if I want to jump exactly to this text (by pressing <f3>), let it be to create or change the text

      yes, good point.

      Author's profile photo Christian Guenter
      Christian Guenter

      I thought "quick fix" is just to "fix" something broken (yellow or red underlined)

      well, actually it isn't a quick fix but a quick assist function (others are e.g. refactorings). It's a bit confusing though that both are accessible under the same shortcut. For quick asisst there's also a seperate view with the same name.

      So it seems that whole text and translation thing is a good candidate for quick assist.

      Author's profile photo Michael Gutfleisch
      Michael Gutfleisch

      Quick Fix or Quick Assist, that's the question 😉

      Uwe said that a quick fix should be provided if something is broken (yellow or red underlined).

      Well, a missing text element which is adressed in the code is kind of (at least minor) issue, isnt't it? Ok, syntax check does not tell, but there is an ATC check which marks a missing text element as warning.

      This means that running an ATC check before would make a quick assist to a quick fix...

      This is one of the reasons, why we dicided to provide all that stuff into the CTRL-1 and just call it quick assist.

      I like the idea to connect this feature also to F3 navigtion, we will figure out how to do this.

      Regards,

      Michael

      Author's profile photo Thomas Fiedler
      Thomas Fiedler

      Hi Uwe,

      you can access the popup again via the Quick assist 'Edit Text'.

      Regards,

      Thomas.

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      Isn't this a bit of a surprising behaviour? Everywhere else I'm able to jump to just by pressing <f3>.

      (and I don't like surprises if I'm using software)

      Author's profile photo Martin Fischer
      Martin Fischer

      First of all thanks Uwe for continuing the discussion here.

      I would also go for the solution Christian suggested: integrate it on the "quick fix" form.

      Maybe a "translation" button below the langugage field opening a dialog in table format with two columns language and text could solve it.

      Uwe Fetzer I have the same workflow as you have and never had a customer with a separate translation team

      Author's profile photo Thomas Fiedler
      Thomas Fiedler

      Hi Uwe,

      thanks for the feedback concerning the translation topic. We are planning to integrate the translation of UI texts closer with the editor where you enter the text. So your proposals are very helpful.

      Questions: 

      - Is it not sufficient to just switch the language in the editor and enter the translated text in the same input field for the text?

      - Which features of the translation transaction (SE63) are you using in addition to just enter the translated text?


      Regards,

      Thomas.

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      Hi Thomas,

      in the translation tool I'm using "copy source" and "use proposal" (don't know exactly the function text)  by double click on the text.

      Regarding you first question: what do you mean with "switch language"? In the source editor? In data elements? (ich stehe gerade auf dem Schlauch)

      Author's profile photo Thomas Fiedler
      Thomas Fiedler

      Hi Uwe,

      I mean that you just switch the editing language in the editor e.g. data element editor (currently this is not possible).

      After the switch to the other language you can enter the translated text and save the object again.

      Regards,

      Thomas.

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      If the entries in the original language are still visible, then yes.

      It's more an "add addidtional language" than a "switch language".

      Author's profile photo Thomas Fiedler
      Thomas Fiedler

      "Add Addtional Language" sounds great!

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      This topic araised again today at #ABAPConf. Any news?

      Author's profile photo Martin Fischer
      Martin Fischer

      Hi Thomas,

      I would like to have a table where I see the source text on the top and where I can enter the translations for several languages at once.

      I'm using the same functions as Uwe.

      Cheers,

      Martin

      Author's profile photo Uwe Fetzer
      Uwe Fetzer
      Blog Post Author

      ... and don't forget to add translation possibilities for the new fancy UI annotations in CDS views... #justsaying 😛

      Author's profile photo Martin Fischer
      Martin Fischer

      and again adding more lines of code to CDS view. Still not really convinced...

      Author's profile photo Thomas Fiedler
      Thomas Fiedler

      Hi Martin,

      the translations of UI Texts will not be part of the CDS source. They will be stored separetly in a db table.

      Regards,

      Thomas.

      Author's profile photo Stefan Schmöcker
      Stefan Schmöcker

      Hello Uwe,

      thank you for starting discussion.  Basically I follow your standard procedure concerning translations, because when there are different objects involved and I don't translate at once I'll probably forget a few objects when trying to translate everything retroactivly.

      Concerning the "switching of languages":  Unless the original is displayed this would behave like a multilingual maintenance view.  And if I ever have to translate these I open two windows to have the original as reference for my translation.  Here the current behavior of the non-eclipse environment is much more comfortable.

      Since this seems to be a whishing well this is roughly what I'd like to see ( painted it in Excel )Unbenannt.png

      Left hand side:  Original texts ( Key = message number or any other identifier ), Type is non-relevant for message-classes but for objects with differing short text types ( i.e. domains where we can translate the domain name and the fixed values ) + the text

      Right hand side:  Translated texts list + tabstrips for every language that I want to translate to ( maybe even with an indicator showing me missing translations ).

      Also the add some way of using/setting the proposals - these really speed up translating.

      And last but not least something I am missing in the "old" environment: Navigation to translate a longtext

      Author's profile photo Martin Fischer
      Martin Fischer

      Hi Stefan,

      I really like your idea!

      Cheers,

      Martin

      Author's profile photo Former Member
      Former Member

      Hi Uwe,

      Our company has branch offices in many countries and we solved this by "forcing" the developer/customizer to translate all UI related objects at transport release (English and German are required) Without translation it is not possible to release a transport. Additional we developed a powerful translation tool to make it easy for normal skilled SAP users to do translation in the company/country specific language based on the english/german template. If a new object is released which is UI-relevant a SAP-Workflow is triggered and a special user will be informed.

      For me it will be great to have a easy to handle view to do the translation inside eclipse. Additional an idea could be to provide missing translation information in the ADT Problem View (Warning or maybe Error) with direct navigation into the translation view.

      Looking forward for further proposal/experiences.

      Regards,

      Christian

      Author's profile photo Sérgio Fraga
      Sérgio Fraga

      Hello,

      Today I had to do some translations and I was surprised that I am forced to go to the GUI to create them.

      Then I googled and arrived here.

      The last input on this topic is from May 2016.

      Still no update on how to translate texts in Eclipse?

      Thanks

      Sérgio Fraga

      Author's profile photo Joachim Rees
      Joachim Rees

      Yeah it would be nicet to learn how things went on this one!

      Author's profile photo Robert Schulz
      Robert Schulz

      Just found this blog and found its comments interesting...but also frustrating! By now we have 2019 and ADT still does not show any function for translating texts - not only text elements but also texts in message classes! 🙁

      I don't think anyone still tracks this with HANA and CP being the first thing on (SAP-)everybodys mind, but still had to try pushing this...

      Author's profile photo Sven Delangle
      Sven Delangle

      Any news on effective translation capabilities for SAP objects in eclipse ?