Monday, August 27, 2007

Screen Painter

Screen Painter is an ABAP Editor tools allowed us to create dialog screen. Dialog screen usually created as a screen to catch user input. It can be accessed by tcode SE51.



Screen Painter Architecture:
1. Screen Attributes
Define screen title, define its type (normal, subscreen).

2. Flow logic
Flow logic control flow of program. The event block is introduced by the corresponding keyword statement, and it concludes either when the next block is introduced, or at the end of the program.
There are four event blocks, each of which is introduced with the screen keyword PROCESS:
PROCESS BEFORE OUTPUT.
...
PROCESS AFTER INPUT.
...
PROCESS ON HELP-REQUEST.
...
PROCESS ON VALUE-REQUEST.

A simple sample of flow logic.


PROCESS BEFORE OUTPUT.
MODULE PBO_module1.
MODULE PBO_module2.
PROCESS AFTER INPUT.
MODULE PAI_module1.
MODULE PAI_module2.

Flow logic structured on event, in above example we can see there are two event involved, "process before output" (PBO) and "process after input" (PAI).
PBO processed before the screen is displayed. It allow us to define toolbar and title, positioning the cursor, showing and hiding fields and changing field attributes dynamically.
PAI processed after user command (double click, push button). It is allow us to validate user input, and determine next process based on user command.
In flow logic, we only define module name to define program flow, to create "real code", double click on module name to create it, then write program in it.

3. Layout Editor
We use layout editor to place screen element in screen layout. There are two modes in editing layout: Graphical and alphanumeric. Both modes offer the same functions but use different interfaces. In graphical mode, you use a drag and drop interface similar to a drawing tool. In alphanumeric mode, you use your keyboard and menus. It is easier to work in graphical mode, to toggle beetween this mode, in SE51 go to: Utilities->Settings: in screen painter tabs check graphical layout editor.


Layout editor containing this tools:
i. Element pallete
On left screen you will find list of element (textbox, label, checkbox) you can use. Drag and drog element to put it on screen.
ii. Name & Text
Aftef put element on screen, write its name and text (in textbox, text will set default value).
iii. Attributes Window
Double click the element to display its attributes, or select it then click :Goto->Secondary window->attributes. For example, in textbox element, we can set its length, read only mode, in this window.
iv. Dictionary/program field.
If we want to create a field refer to field in data dictionay or field already declared in program, use this menu to create text field with the same type compared to its referral.

4. Element list.
Element list shown all element in screen. We rarely use this menu, because it easier to maintain element in layout editor.

30 comments:

Anonymous said...

If I make a control in the LayoutEditor(LE), I have make the corrresponding DATA in the source code, in order to get the values in the control.
But if I change the control's name, I have to change the variable's (data) name in the source code.
Is there any way to automatically synchronize these two editor (souce and layout) for data/control naming?
Thank you.

alionzo said...

Unfortunately there's no way to synchronize them

Changkong said...

hi there. i already guessed that there's no way to do such nice thing. but since you told me to use CALL SCREEN 100 to quickly move from 38 to 51, so i thought there would probably a chance for you to know how to to refactor ABAP code :)
anyway, do you suggest beginners to learn the selection screen first before going into this "screen painter" thing?
and i also feel a little awkward since SAP never published an easy to read reading such as MS' Step-By-Step Series :)
have you read the language's complete reference? weird!

alionzo said...

For beginner, I suggest you to learn ABAP report & Data dictionary first.
Instead of searching complete reference, I suggest you to focus on "what to do" then find out "how" to create it.

Anonymous said...

Hi Everybody,
I am new to SAP (ABAP) technology,
so plz mail me some e-books, or PDF formats file including the basic topics such as- SELECTION SCREEN,
SCREEN PAINTERS, DATA-DICTIONARY,
n starting overviw.
My id is- Vishu_111285@yahoo.co.in.

Thanxxxxxxxxxx

basu said...

Hi Alionzo,

I want to change texbox height, i mean to say i want textbox of height 6 or 8. but it is displaying by default height of text box is 1.

So could you please help me how to do this.

Thanks
Basu

manish said...

hi everybody,
i want to the position of pushbutton at runtime..
i expect every possible suggestion from ur side as early as possible.
thank you.

Anonymous said...

I am new ABAP & hence pls send me the following details
Pls send me some e-books or pdf files that can explain things like screen paiter, menu painter, Sap script, Idoc, Bapi with screen shots if possible.
Pls email me to arohini03_anbu@yahoo.com

Thanks
Rohini

Bhavin P Shah said...
This comment has been removed by the author.
Bhavin P Shah said...

I am new to ABAP),
Can you please share any ebooks or PDFs related to - SMARTFORMS,
SCREEN/MENU PAINTERS..
Thanks
Bhavin
sbp242@yahoo.co.in

Jayanthi said...

alionzo how is indonasia???

alionzo said...

Hi Jayanthi,
Thanks for visiting my blog.
Indonesia just fine, crowded but peaceful :P

Anonymous said...

Hi
it's Article very surface, but then again thanks.

meyyappan said...

THIS IS MEYAPPAN FROM CHENNAI, I AM PRACTISING ABAP. I AM WORKING ON MENU AND SCREEN. I NEED SOME CLARIFICATION ON USAGE OF SELECTION SCREEN - IN SCREEN PAINTER. ANY EXAMPLE FROM MENU ,SCREEN,SELECTION SCREEN AND LIST. MY MAIL ID IS mshannu@yahoo.com

mrkramzzz said...

Hi Alionzo,

I am new to screen painter though i already have a background in hr abap. unfortunately since i was in a support project, doing programs from scratch is such a pain in the ass for me. especially screen painter.

i am enhancing an infotype at the moment, but, i am stucked at 1 push button that doesnt seem to work. everytime i test my modification in pa30, i get this error that the function is not possible.

so.. my question is:
how am i going to make make a pop up screen?
i already created the screens.. but, when i call them in my program.. it cant display the output i desired.

here is the piece of my code:
MODULE user_command INPUT.
IF sy-ucomm = 'RNE'.
CALL SCREEN 201 STARTING AT gc_x1 gc_y1 ENDING AT gc_x2 gc_y2.
ENDif.
ENDMODULE.

thanks for you future reply.

pls email me your answer:
mythalar@gmail.com


thanks a lot in advance once again.

muhamed said...

Hi,
this is great blog.
how can I update custom table (insert, delete) on click of the pushbutton?
for example I have two fields, when user fills them and presses button they should be written in custom table, how?
and how to call FM under pushbutton?

Thanks in advance
Nihad

Anonymous said...

I link wow gold and world of warcraft gold wow power leveling wow gold

Anonymous said...

How can I move some of the objects and convert them into a tab to make the screen not so cluttered. I tried the tab wizard but no luck. There is items that needs to be put into tabs. How can I do that?

seventyros said...

For a Excellent Online Resource for SAP EP and SAP Web Dynpro ABAP, Visit Learn SAP Online

seventyros said...

For a Excellent Online Resource for SAP EP and SAP Web Dynpro ABAP, Visit Learn SAP Online

SAP EP - Standard Portal Services
Portal Eventing and Navigation
Portal Look and Feel - Branding the Portal
How to Develop Portal Applications
SAP EP-Developing portal content and assigning permissions
SAP EP-Role maintenance
SAP EP-How to make Enterprise Portal highly available
SAP Material Management Introduction
SAP EP-J2EE architechture

And Many More...

Basics of Web Dynpro ABAP
ABAP Data Types and Objects
ABAP Statements
WD4A - Topics to be covered in the upcoming posts
WD4A - Introduction
WDA - SAP Logon Procedures
WD4A-Format the Values appearing on value Axis of Business Graphic
WD4A-Navigate from one view to another and back to previous view
WD4A - How to Calculate next 12 months from current month in web dynpro ABAP
WD4A - Validate Inputs in a web dynpro ABAP Application

And Many More...

premjit said...

hi, can u mail me sap abap material.
my id - yourpremjit@gmail.com.

aleem said...

hi sir can you mail me sap abap material pls sir.
thanks.my mail id is
mdaleem138@gmail.com

google said...

WExcellent Online Resource for SAP EP and SAP Web Dynpro ABAP. Visit Learn SAP Online

for Free


SAP Enterprise Portal Application

in NWDS

SAP and Their Produstcs - SMB Customer - SAP

Business One

What is SAP ?
Architecture of SAP Business One

Application

Navigation in SAP Business One
SMB Portal and its Functionality
Netweaver Administrator Day to

Day Work

SAP Business Intelligence
Business Partners in SAP Business

One

Continuous Stock System in SAP

business one

How to make WDJ Component

available on SAP EP


And Many Morte Topics

google said...

Excellent Online Resource for SAP EP and SAP Web Dynpro ABAP. Visit Learn SAP Online

for Free


SAP Enterprise Portal Application

in NWDS

SAP and Their Produstcs - SMB Customer - SAP

Business One

What is SAP ?
Architecture of SAP Business One

Application

Navigation in SAP Business One
SMB Portal and its Functionality
Netweaver Administrator Day to

Day Work

SAP Business Intelligence
Business Partners in SAP Business

One

Continuous Stock System in SAP

business one

How to make WDJ Component

available on SAP EP


And Many Morte Topics

Roshan said...

Excellent Online Resource for SAP EP and SAP Web Dynpro ABAP. Visit Learn SAP Online for Free

SAP and Their Produstcs - SMB Customer - SAP Business One

What is SAP ?

Architecture of SAP Business One Application
Navigation in SAP Business One
SMB Portal and its Functionality
Netweaver Administrator Day to Day Work
SAP Business Intelligence
Business Partners in SAP Business One
Continuous Stock System in SAP business one
How to make WDJ Component available on SAP EP
SAP Enterprise Portal Application in NWDS

And Many Morte Topics

chennai said...

land marvel construction in chennai
Hill County is one of the popular Residential Developments in Tambaram

shankar said...

I created a table in ABAP dictionary. how to display complete structure of an table in ABAP editor.

seenu said...

Hi All,
I am new to SAP (ABAP) technology,
I request all to mail me some e-books, or PDF formats file including the basic topics such as- SELECTION SCREEN,
SCREEN PAINTERS, DATA-DICTIONARY.
My mail ID- srikarthik.atp@gmail.com

kodyaz said...

Thank you for providing the brief and useful information about dynpro programming basics. I would like to get more detail about ON HELP-REQUEST and ON VALUE-REQUEST processes take place in flow logic of the program.
I'll be soon publishing a tutorial for ABAP programmers for processing dynpro controls on PBO and PAI at SAP and ABAP tutorials
Thank you

Rustam khan said...

Vendor management ChefMod: Professionally managed restaurant purchasing solution for foodservice. Simple to use ordering and receiving platform. EZRecipe for recipe management and live costing