creating messages
DESCRIPTION
TRANSCRIPT
1
Online Text Repository and Messages
2
© SAP AG 2005, ABAP Web Dynpro
Introduction to internationalization
Online Text Repository
Message handling
Contents:
Online Text Repository (OTR) and Messages
3
© SAP AG 2005, ABAP Web Dynpro
After completing this lesson, you will be able to:
Understand ABAP WD support for Online Text Repository
Report messages to the user using the IF_WD_MESSAGE_MANAGER interface
Messages and Error Handling: Objectives
4
InternationalizationDue to the fact that “Internationalization” is such a long word, it is often abbreviated to “I18N”. That is, the first letter “I”, the last letter “N”, and don’t bother about the 18 other letters in between!
© SAP AG 2005, ABAP Web Dynpro
Internationalization
The process by which language specific text is detached from theprogram code that uses it is known as “Internationalization”.
This allows the same program to operate in multiple languages without needing different versions of the code for each language.
5
The Online Text Repository (OTR) is a central storage area for texts and provides services for processing these texts. The Online Text Repository supports the entry and translation of texts and can be used for Web Dynpro applications. OTR directives for entry and translation of text can be used in the layout of a Web Dynpro ABAP. Here a distinction is made between alias texts and long texts. Alias texts are reusable text literals with a length of less than 255 characters.
© SAP AG 2005, ABAP Web Dynpro
Internationalization (I18N) Support
During runtime UI elements bound to an context node/attribute which is based on a DDIC table/structure/type will get the text in appropriate language.
Text properties of UI elements can be bound directly to DDIC text.
Is a text literal entered in a text fields of UI elements a corresponding OTR text will be created.
Existing OTR texts (alias) can be assigned to a properties of a UI element.
List of existing OTR texts
Enter a text or assign an existing OTR text
6
© SAP AG 2005, ABAP Web Dynpro
Using the Online Text Repository
The class CL_WD_UTILITIES provide the method GET_OTR_TEXT_BY_ALIAS to get text from OTR.
Use the WD code wizard to selectthe proper OTR text and generatethe coding.
data:... ...
OTR_text type string.
OTR_text = CL_WD_UTILITIES=>GET_OTR_TEXT_BY_ALIAS('SOTR_VOCABULARY_BASIC/MATERIAL_MASTER' ).... ...
* set single attributeElem_Lable_Text->set_Attribute(exportingName = `TF_LABLE_3`Value = OTR_TEXT ). coding snippet
7
© SAP AG 2005, ABAP Web Dynpro
Web Dynpro Messages and Error Handling
All messages will be displayed in a dedicated message area.
By default the message area appears at the top of the page.
The message are can be moved like a UI element in a view. You find a UI element (Message Area) in the UI library Pattern. Messages will be placed in this area, if it is available.
Messages can be displayed in a dedicated message area
By default messages will be displayed at the top of page
Message area can be moved
* Note: feature released with SP1
8
In the Web Dynpro Application the kind of displaying the message can be set.
© SAP AG 2005, ABAP Web Dynpro
Handling of Message
The handling of messages can be controlled in the WD application
Messages area only visible if a message thrown
Messages area always visible
Messages NOT listed in the message area “box”- Messages are listed in a sequence
Note: feature released with SP1
9
© SAP AG 2005, ABAP Web Dynpro
coding snippet
Parameter
Categories of Messages
Text
EXCEPTION
T100
ATTRIBUTE
Example* report messageCALL METHOD l_message_manager->REPORT_ATTRIBUTE_ERROR_MESSAGEEXPORTINGMESSAGE_TEXT = '&V2 is not a valid date'ELEMENT = Elem_FlightsATTRIBUTE_NAME = 'FLDATE' PARAMS = lt_messages.
Arbitrary text can be used as a message text
ABAP OO exceptions can be
used
Reuse of existing T100 message ID,
No.
Dedicated field will be marked in red color
Parameters can be
assigned to the message
10
© SAP AG 2005, ABAP Web Dynpro
Kind of Messages
REPORT_ATTRIBUTE_ERROR_MESSAGE Reports a WD Exception for a Context Attribute
REPORT_SUCCESS Reports a Success Message
REPORT_WARNING Reports a Warning
REPORT_ERROR_MESSAGE Reports a Web Dynpro Message with Optional Parameters
REPORT_FATAL_ERROR_MESSAGE Reports a Fatal Web Dynpro Message with Optional Parameters
REPORT_ATTRIBUTE_EXCEPTION Reports a WD Exception for a Context Attribute
REPORT_EXCEPTION Reports a Web Dynpro Exception (May Return)
REPORT_FATAL_EXCEPTION Reports a Fatal Web Dynpro Message
REPORT_T100_MESSAGE Reports a Message Using a T100 Entry
REPORT_ATTRIBUTE_T100_MESSAGE Reports a WD Exception for a Context Attribute
T100
EXCEPTION
Text
11
© SAP AG 2005, ABAP Web Dynpro
Create a message
* get message managerdata: l_current_controller type ref to if_wd_controller,
l_message_manager type ref to if_wd_message_manager.
l_current_controller ?= wd_This->Wd_Get_Api( ).
CALL METHOD l_current_controller->GET_MESSAGE_MANAGERRECEIVINGMESSAGE_MANAGER = l_message_manager
* report messageCALL METHOD l_message_manager->REPORT_ATTRIBUTE_ERROR_MESSAGEEXPORTINGMESSAGE_TEXT = 'REPORT_ATTRIBUTE_ERROR_MESSAGE'ELEMENT = Elem_FlightsATTRIBUTE_NAME = 'CITYFROM'.
coding snippet
Use the WD code wizard to create the required coding to report a message.
12
© SAP AG 2005, ABAP Web Dynpro
Create a ‘T100’ message
* get message managerdata: l_current_controller type ref to if_wd_controller,
l_message_manager type ref to if_wd_message_manager.
l_current_controller ?= wd_This->Wd_Get_Api( ).
CALL METHOD l_current_controller->GET_MESSAGE_MANAGERRECEIVINGMESSAGE_MANAGER = l_message_manager
* report messageCALL METHOD l_message_manager->REPORT_T100_MESSAGEEXPORTINGMSGID = 'E1'MSGNO = '360'MSGTY = 'S'P1 = ' -> REPORT_T100_MESSAGE'.
coding snippet
Existing message classes can be reused to create messages
Use the WD code wizard to create the required coding to report a‘T100’ message.
13
WDDOBEFOREACTIONThis Standard Hook method is called just before an action is triggered. Validation can be accomplished before the action is executed.
© SAP AG 2005, ABAP Web Dynpro
Standard Hook Method – View controller
Only a view controller has these hook methods.
The method WDDOBEFOREACTION before an action performed, can be used for data validation.
14
© SAP AG 2005, ABAP Web Dynpro
You should now be able to:
Understand ABAP WD support for Online Text Repository
Report messages to the user using the IF_WD_MESSAGE_MANAGER interface
Messages and Error Handling: Summary