Tuesday, March 11, 2008


All job hunters are waiting for that call -- the one that says they've landed the job. But as eager as you may be to escape either your current job or the unemployment ranks, don't abdicate your power position once the offer comes in. Now it's your turn to sit in the interviewer's seat and ask the company and yourself some tough questions -- the answers to which could mean the difference between career bliss and disaster.

Will the actual work and job responsibilities provide gratification, fulfillment and challenge?
This question is often overlooked, because applicants get hung up on job titles, salary and benefits. Try to get a clear sense of what an actual day would be like. What will you spend the majority of your time doing? Is the work in line with your values? Will you likely learn this job quickly and become bored and unchallenged?

What are the boss's strengths and weaknesses?
This question can be tough to answer, and it's best saved for after the job offer has been extended. You'll want to get a good idea for your potential boss's management style. Speak to your potential boss as much as possible to get a feel for his personality and what you can live with. Does he micromanage? Will you get consistent feedback and reviews? Does he make small talk, or is every conversation strictly business?

How much change is in the works at your prospective company, and what kind?
Constant change at work can mean constant stress. Find out if there are any big changes coming, such as new processing systems or management, impending retirements or adoption of new procedures that still need to be ironed out. At the same time, remember that some of these transitions will have less effect on your position than others.

How many of my skills and experiences will I be able to use and learn?
Make sure your unique skills and talents will be used and that training and promotion are open in the future. When you decide to move on, you'll want to have a new crop of experiences to sell to your next employer. Your goal is to perform well at work while constantly growing and learning.

How many people have held the position in the past several years?
Knowing how many people have been in your job and why they left can offer you great insights. You'll want to know if they were promoted or quit altogether. A steady stream of resignations may be a sign you could be reentering the job market soon.

While many of the reasons positions eventually become unfulfilling are unavoidable, such as hitting a plateau after repeatedly performing the same duties, job seekers should consider the ways a new position will advance them.

User Exit & Gap analysis.

Difference between the User Exit & Gap analysis.

Both are quiet a different and has a small relation.

User exits are standard gate ways provided by SAP to exit the standard code and we can write our own code with the help of ABAP workbench. its not new functionality which we are trying to build in sap but its slight enhancement within the same code.

Gap analysis is start point of Realization and once blue print is finished we have to find the realization of sap system for client requirment and there will be certain gaps when compared to system fit.

Those gaps can be closed either by re-engineering of business process to fit with SAP or we have to use USER exits in case of small deviations or complete enhancements with the help of ABAP to fit with the SAP system.


1 ) What is a transaction?

A transaction is dialog program that change data objects in a consistant way.

2) What are the requirements a dialog program must fulfill?

A dialog program must fulfill the following requirements

- A user-friendly user interface.

- Format and consistency checks for the data entered by the user.

- Easy correction of input errors.

- Access to data by storing it in the data bases.

3. What are the basic components of dialog program?

- Screens (Dynpros)

- Each dialog in an SAP system is controlled by dynpros.A dynpros consists of a screen
And its flow logic and controls exactly one dialog step.

- ABAP/4 module Pool.

Each dynpro refers to exactly one ABAP/4 dialog program .Such a dialog program is also called a module pool ,since it consists of interactive modules.

4.What is a PBO and PAI event?

PBO- Process Before Output-It determines the flow logic before displaying the screen.

PAI-Process After Input-It determines the flow logic after the display of the screen and after receiving inputs from the User.

5. What is dynpro? What are its components ?

- A dynpro (Dynamic Program) consists of a screen and its flow logic and controls exactly one-dialog steps.

- The different components of the dynpro are :

Flow Logic:
calls of the ABAP/4 modules for a screen .

Screen layout:
Positions of the text, fields, pushbuttons and so on for a screen

Screen Attributes:
Number of the screen, number of the subsequent screen, and others

Fields attributes:
Definition of the attributes of the individual fields on a screen.

6. What is a ABAP/4 module pool?

-Each dynpro refers to exactly one ABAP/4 dialog program. Such a dialog program is also called
a module pool ,since it consists on interactive modules.

7..Can we use WRITE statements in screen fields? if not how is data transferred from field data to screen fields?

-We cannot write field data to the screen using the WRITE statement. The system instead transfers data by comparing screen fields names with ABAP/4 variable names.

If both names are the same, it
Transfers screen fields values to ABAP/4 programs fields and Vice Versa. This happens immediately after displaying the screen.

8. Can we use flow logic control key words in ABAP/4 and vice-versa?

- The flow control of a dynpro consists os a few statements that syntactically ressemble ABAP/4 statements .However ,we cannot use flow control keywords in ABAP/4 and vice-versa.

9 What is GUI status? How to create /Edit GUI status?

-A GUI status is a subset of the interface elements used for a certain screen.The status comprises
those elements that are currently needed by the transaction .The GUI status for a transaction may be composed of the following elements:

-Title bar.

-Mneu bar.

-Application tool bar

-Push buttons.

To create and edit GUI status and GUI title,we use the Menu Painter.

10. How does the interection between the Dynpro and the ABAP/4 Modules takes place?

-A transaction is a collection os screens and ABAP/4 routines, controlled and executed by a Dialog processor. The Dialog processor processes screen after the screen, thereby triggering the appropriate
ABAP/4 processing of each screen .

For each screen,the system executes the flow logic that contains the corresponding ABAP/4 processing.The controls passes from screen flow logic to ABAP/4 code and back.

11. How does the Dialog handle user requests?

- when an action is performed ,the system triggers the PROCESS AFTER INPUT event.The data passed includes field screen data data entered by the user and a function code.

A functioncode is a technical name that has been allocated in a screen Painter or Menu Painter to a meny entry,a push button,the ENTER key or a function Key of a screen.An internal work field(ok-code)in the PAI module evaluates the function code,and the appropriate action is taken.

12.What is to be defined for a push button fields in the screen attributes?

- A function code has to be defined in the screen attributes for the push buttons in a screen.

13. How are the function code handles in Flow Logic?

- When the User selects a function in a transaction ,the system copies the function code into a specially designated work field called OK_CODE.This field is Global in ABAP/4 Module Pool.The OK_CODE can then be evaluated in the corresponding PAI module.

The function code is always passed in Exactly the same way , regardless of Whether it comes from a screen’s pushbutton,a menu option ,function key or other GUI element.

14.What controls the screen flow?

- The SET SCREEN and LEAVE SCREEN statements controls screen flow.

The Function code currently active is ascertained by what Variable?

- The function code currently active in a Program can be ascertained from the SY-UCOMM Variable.

The function code currently active is ascertained by what variable ?

- By SY-UCOMM Variable.

17.What are the “field” and “chain” Statements?

- The FIELD and CHAIN flow logic statements let you Program Your own checks.FIELD and CHAIN tell the system Which fields you are checking and Whether the System should Perform Checks in the flow logic or call an ABAP/4 Module.

18.What is an “on input filed” statements?

The ABAP/4 module is called only if a field contains the Value other than the initial Value.

This initial Value is determined by the filed’s Dta Type: blanks for character Fields
,Zeroes for numerics. If the user changes the Fields Value back t o its initial value,ON INPUT does not trigger a call.

19.What is an “on request Field” statement?


The ABAP/4 Module is called only if the user has entered the value in the field value since the last screen display .The Value counts as changed Even if the User simply types in the value that was already there .In general ,the ON REQUEST condition is triggered through any

20.What is an on”*-input filed” statement?


- The ABAP/4 module is called if the user has entered the “*” in the first character of the field, and the field has the attribute *-entry in the screen Painter.You can use this option in Exceptional cases where you want to check only fields with certain Kinds of Input.

21.What are conditional chain statement?


The ABAP/4 module is called if any one of the fields in the chain contains a value other than its initial value(blank or nulls).


This condition functions just like ON REQUEST, but the ABAP/4 module is called if any one of the fields in the chain changes value.

22.What is “at exit-command:?

The flowlogic Keyword at EXIT-COMMAND is a special addition to the MODULE statement in the Flow Logic .AT EXIT-COMMAND lets you call a module before the system executes the automatic fields checks.

23.Which Function type has to be used for using “at exit-command” ?

- To Use AT EXIT – COMMAND ,We must assign a function Type “E” to the relevant function in the MENU Painter OR Screen Painter .

24.What are the different message types available in the ABAP/4 ?

- There are 5 types of message types available.






25)Of the two “ next screen “ attributes the attributes that has more priority is -------------------.


26.Navigation to a subsequent screen can be specified statically/dynamically. (TRUE/FALSE).


27.Dynamic screen sequence for a screen can be set using ------------- and ----------------- commands

Set Screen, Call screen.

28.. The commands through Which an ABAP/4 Module can “branch to “ or “call” the next screen are

Set screen,Call screen ,Leave screen, Leave to screen .

29. What is difference between SET SCREEN and CALL SCREEN ?

- With SET SCREEN the current screen simply specifies the next screen in the chain , control branches to this next screen as sonn as th e current screen has been processed .Return from next screen to current screen is not automatic .It does not interrupt processing of the current screen.If we want to branch to the next screen without finishing the current one ,use LEAVE SCREEN.

- With CALL SCREEN , the current (calling) chain is suspended , and a next screen (screen chain) is called .The called can then return to the suspended chain with the statement LEAVE SCREEN TO SCREEN 0 .Sometime we might want to let an user call a pop up screen from the main application screen to let him enter secondary information.After they have completed their enteries, the users should be able to close the popup and return directly to the place where they left off in the main screen.Here comes CALL SCREEN into picture .This statement lets us insert such a sequence intp the current one.


30.Can we specify the next screen number with a variable (*Yes/No)?

- Yes

31.The field SY-DYNR refers to--------------

Number of the current screen.

32.. What is dialog Module?

- A dialog Module is a callable sequence of screens that does not belong to a particular transaction.Dialog modules have their module pools , and can be called by any transaction.

33. The Syntex used to call a screen as dialog box (pop up)is---------


34. What is “call mode”?

- In the ABAP/4 WORLD each stackable sequence of screens is a “call mode”, This is IMP because of the way u return from the given sequence .To terminate a call mode and return to a suspended chain set the “next screen” to 0 and leave to it:

LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to the suspended chain execution resumes with the statement directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether.

35. The max number of calling modes stacked at one time is?


36. What is LUW or Data base Transaction ?

- A “LUW”(logical unit of work) is the span of time during which any database updates must be performed in an “all or nothing” manner .Either they are all performed (committed),or they are all thrown away (rolled back).In the ABAP/4 world , LUWs and

- Transactions can have several meanings:

LUW (or “database LUW” or “database transaction”)

This is the set of updates terminated by a database commit. A LUW lasts, at most, from one screen change to the next (because the SAP system triggers database commits automatically at every screen change).

37. What is SAP LUW or Update Transaction?

Update transaction (or “SAP LUW”)

This is a set of updates terminated by an ABAP/4 commit. A SAP LUW may last much longer than a database LUW, since most update processing extends over multiple transaction screens. The programmer terminates an update transaction by issuing a COMMIT WORK statement.

38. What happens if only one of the commands SET SCREEN and LEAVE SCREEN is used without using the other?

If we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to . If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated and branch directly to the screen specified as the default next-screen in the screen attributes.

39. What is the significance of the screen number ‘0’?

In “calling mode”, the special screen number 0 (LEAVE TO SCREEN 0) causes the system to jump back to the previous call level. That is, if you have called a screen sequence with CALL SCREEN leaving to screen 0 terminates the sequence and returns to the calling screen. If you have not called a screen sequence, LEAVE TO SCREEN 0 terminates the transaction.

40.. What does the ‘SUPPRESS DIALOG’ do?

Suppressing of entire screens is possible with this command. This command allows us to perform screen processing “in the background”. Suppresing screens is useful when we are branching to list-mode from a transaction dialog step.

41. What is the significance of the memory table ‘SCREEN’?

At runtime, attributes for each screen field are stored in the memory table called ‘SCREEN’. We need not declare this table in our program. The system maintains the table for us internally and updates it with every screen change.

42. What are the fields in the memory table ‘SCREEN’?






Name of the screen field



Field belongs to field group 1



Field belongs to field group 2



Field belongs to field group 3



Field belongs to field group4



Field is visible and ready for input.



Field input is mandatory.



Field is ready for input.



Field is display only.



Field is highlighted



Field is suppressed.



Field output length is reduced.



Field is displayed with 3D frames.



Field is displayed with value help.

43. Why grouping of fields is required? What is the max no of modification groups for each field?

If the same attribute need to be changed for several fields at the same time these fields can be grouped together. We can specify up to four modification groups for each field.44. What are the attributes of a field that can be activated or deactivated during runtime?

Input, Output, Mandatory, Active, Highlighted, Invisible.

45. What is a screen group? How it is useful?

Screen group is a field in the Screen Attributes of a screen. Here we can define a string of up to four characters which is available at the screen runtime in the SY-DNGR field. Rather than maintaining field selection separately for each screen of a program, we can combine logically associated screens together in a screen group.

46. What is a Subscreen? How can we use a Subscreen?

A subscreen is an independent screen that is displayed in a n area of another (“main”) screen. To use a subscreen we must call it in the flow logic (both PBO and PAI) of the main screen. The CALL SUBSCREEN stratement tells the system to execute the PBO and PAI events for the subscreen as part of the PBO or PAI events of the main screen. The flow logic of your main program should look as follows:





rea is the name of the subscreen area you defined in your main screen. This name can have up to ten characters. Program is the name of the program to which the subscreen belongs and screen is the subscreen’s number.

47. What are the restrictions on Subscreens?

Subscreens have several restrictions. They cannot:

- Set their own GUI status

- Have a named OK code

- Call another screen

- Contain an AT EXIT-COMMAND module

- Support positioning of the cursor.

48. How can we use / display table in a screen?

ABAP/4 offers two mechanisms for displaying and using table data in a screen. These mechanisms are TABLE CONTROLS and STEP LOOPS.

49. What are the differences between TABLE CONTROLS and STEP LOOPS?

TABLE CONTROLS are simply enhanced STEP LOOPS that display with the look and feel of a table widget in a desktop application. But from a programming standpoint, TABLE CONTROLS and STEP LOOPS are almost exactly the same. One major difference between STEP LOOPS and TABLE CONTROLS is in STEP LOOPS their table rows can span more than one time on the screen. By contrast the rows in a TABLE CONTROLS are always single lines, but can be very long. (Table control rows are scrollable). The structure of table control is different from step loops. A step loop, as a screen object, is simply a series of field rows that appear as a repeating block. A table control, as a screen object consists of: I) table fields (displayed in the screen ) ii) a control structure that governs the table display and what the user can do with it.

50. What are the dynapro keywords?

FIELD, MODULE, SELECT, VALUES and CHAIN are the dynapro keywords.

51. Why do we need to code a LOOP statement in both the PBO and PAI events for each table in the screen?

We need to code a LOOP statement in both PBO and PAI events for each table in the screen. This is because the LOOP statement causes the screen fields to be copied back and forth between the ABAP/4 program and the screen field. For this reason, at least an empty LOOP….ENDLOOP must be there.

52. The field SY-STEPL refers to the index of the screen table row that is currently being processed. The system variable SY-stepl only has a meaning within the confines of LOOP….ENDLOOP processing. Outside the loop, it has no valid value.

53. How can we declare a table control in the ABAP/4 program?

Using the syntax controls type tableview using screen .

54. Differentiate between static and dynamic step loops.

Step loops fall into two classes: Static and Dynamic. Static step loops have a fixed size that cannot be changed at runtime. Dynamic step loops are variable in size. If the user re-sizes the window the system automatically increases or decreases the number of step loop blocks displayed. In any given screen you can define any number of static step loops but only a single dynamic one.

55. What are the two ways of producing a list within a transaction?

By submitting a separate report.

By using leave to list-processing.

56. What is the use of the statement Leave to List-processing?

Leave to List-processing statement is used to produce a list from a module pool. Leave to list processing statement allows to switch from dialog-mode to list-mode within a dialog program.

57. When will the current screen processing terminates?

A current screen processing terminates when control reaches either a Leave-screen or the end of PAI.

58. How is the command Suppress-Dialog useful?

Suppressing entire screens is possible using this command. This command allows us to perform screen processing “in the background”. The system carries out all PBO and PAI logic, but does not display the screen to the user. Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.

59. What happens if we use Leave to list-processing without using Suppress-Dialog?

If we don’t use Suppress-Dialog to next screen will be displayed but as empty, when the user presses ENTER, the standard list output is displayed.

60. How the transaction that are programmed by the user can be protected?

By implementing an authority check.


61. What are the modes in which any update tasks work?

Synchronous and Asynchronous.

62. What is the difference between Synchronous and Asynchronous updates?

A program asks the system to perform a certain task, and then either waits or doesn’t wait for the task to finish. In synchronous processing, the program waits: control returns to the program only when the task has been completed. In asynchronous processing, the program does not wait: the system returns control after merely logging the request for execution.

63. SAP system configuration incluedes Dialog tasks and Update tasks.

64. Dialog-task updates are Synchronous updates.

65. Update –task updates are Asynchronous updates.

66. What is the difference between Commit-work and Rollback-Work tasks?

Commit-Work statement “performs” many functions relevant to synchronized execution of tasks. Rollback-work statement “cancels: all reuests relevant to synchronized execution of tasks.

67. What are the different database integrities?

· Semantic Integrity.

· Relational Integrity.

· Primary Key Integrity.

· Value Set Integrity.

· Foreign Key integrity and

· Operational integrity

68. All SAP Databases are Relational Databases.

69. What is SAP locking?

It is a mechanism for defining and applying logical locks to database objects.

70. What does a lock object involve?

The tables.

The lock argument.

71. What are the different kinds of lock modes?

Shared lock

Exclusive lock.

Extended exclusive list.

72. How can a lock object be called in the transaction?

By calling Enqueue and Dequeue in the transaction.

73. What are the events by which we can program “help texts” and display “possible value lists”?



74. What is a matchcode?

A matchcode is an aid to finding records stored in the system whenever an object key is required in an input field but the user only knows other (non-key) information about the object.

75. In what ways we can get the context sensitive F1 help on a field?

- Data element documentation.

- Data element additional text in screen painter.

- Using the process on help request event.

76. What is roll area?

A roll area contains the program’s runtime context. In addition to the runtime stack and other structures, all local variables and any data known to the program are stored here.

77. How does the system handle roll areas for external program components?

- Transactions run in their own roll areas.

- Reports run in their own roll areas.

- Dialog modules run in their own roll areas

- Function modules run in the roll area of their callers.

78. Does the external program run in the same SAP LUW as the caller, or in a separate one?

- Transactions run with a separate SAP LUW

- Reports run with a separate SAP LUW.

- Dialog modules run in the same SAP LUW as the caller

- Function modules run in the same SAP LUW as the caller.

The only exceptions to the above rules are function modules called with IN UPDATE TASK (V2 function only) or IN BACKGROUND TASK (ALE applications). These always run in their own (separate) update transactions.

79. What are function modules?

Function modules are general-purpose library routines that are available system-wide.

80. What are the types of parameters in the function modules?

In general, function module can have four types of parameters:

- EXPORTING: for passing data to the called function.

- IMPORTING: for receiving data returned from the function module.

- TABLES: for passing internal tables only, by reference (that is, by address).

- CHANGING: for passing parameters to and from the function.

81. What is the difference between Leave Transaction and Call Transaction?

In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION statement causes the system to start a new SAP LUW. This second SAP LUW runs parallel to the SAP LUW for the calling transaction.

82. How can we pass selection and parameter data to a report?

There are three options for passing selection and parameter data to the report.


- Using a report variant.

- Using a range table.

83. How to send a report to the printer instead of displaying it on the screen?

We can send a report to the printer instead of diplaying it on the screen. To do this, use the keywords TO SAP-SPOOL:


84. How can we send data to external programs?

Using SPA/GPA parameters(SAP memory).

Using EXPORT/IMPORT data (ABAP/4 memory)

85. What are SPA/GPA parameters (SAP memory)

SPA/GPA parameters are field values saved globally in memory. There are two ways to use SPA/GPA parmeters:

By setting field attributes in the Screen Painter.

By using the SET PARAMETER or GET PARAMETER statements.

Designing SAP Transactions Example Transaction Code

Sample Code For Transaction ZTRY

Create the Base Module Pool

Invoke SE80 to decide the program to be linked to the transaction

Customer dialog programs should begin with SAPMZ or SAPMY

Lets name the program SAPMZTRY.

Do not forget to give the type as M – module pool

SAP provides some standard include in this main program

Program sapmztry.

Include mztrytop . (include for data declarations)

Include mztryo01. (include for PBO modules)

Include mztryi01. (include for PAI modules)

Include mztryf01. (include for subroutines)

Create the required Screens

We will create 2 screens for our transaction as shown below

Screen 100

Employee Number ………………

Enter Record


Screen 200







Basic Salary

Valid From





Top ten IT skills

The top ten IT skills to have for the next few years

This is not a scientific survey, but merely the opinions of a few agents that we asked. If you have a highly valued skill that isn't on here, don't worry, this is not definitive, but merely the opinions of a few agents. I'm sure if we'd polled others the list might have been slightly different.

Skills on the Up

We polled a number of agents and other sources of information and came up with the following skills that are likely to be on the up over the next few years. Anyone with these skills is likely to be employed, at good rates, even taking into account offshore outsourcing and Fast Track Visa Workers.

1. J2EE
2. .Net
3. C#
4. Project Management
5. Oracle 8 and 9i
6. SAP
7. Business Analysis
8. VB.net
9. NT Novell
10. Java

New Hot Skills

The top three are definitely becoming very hot skills.

It's good to see Project Management up there. It is a much underrated skill.

Business Analysts are also less immune to offshore outsourcing, as they have to remain reasonably close to the business users.

SAP continues to do well and is taking market share from its rivals.

Siebel also gained an honourable mention.

Oracle continues to be very strong, and is also expected to gain even more market share in the coming years.

Honourable Mentions

Other skills that also received honourable mention for the future are some of those from before the downturn such as:-


In fact SQL, Unix and C++ are still the most sought after skills currently, and anyone who has them should stand in good stead.

Those where you might find it a bit of a struggle in the next few years are the skills from before the previous downturn like Cobol, CICS, DB2 etc.

There is still quite a lively market for PL/I though.

As I said at the start, this is not a definitive list, but we thought it would be worthwhile to pass on what agents believe to be the skills that they think they will be looking for more and more in the next few years.

Tips For HR Interview

Entering the room

Prior to the entering the door, adjust your attire so that it falls well.

Before entering enquire by saying, “May I come in sir/madam”.

If the door was closed before you entered, make sure you shut the door behind you softly. Face the panel and confidently say ‘Good day sir/madam’.

If the members of the interview board want to shake hands, then offer a firm grip first maintaining eye contact and a smile.

Seek permission to sit down. If the interviewers are standing, wait for them to sit down first before sitting.

An alert interviewee would diffuse the tense situation with light-hearted humor and immediately set rapport with the interviewers.


The interviewer normally pays more attention if you display an enthusiasm in whatever you say.

This enthusiasm come across in the energetic way you put forward your ideas.
You should maintain a cheerful disposition throughout the interview, i.e. a pleasant countenance hold s the interviewers interest.


A little humor or wit thrown in the discussion occasionally enables the interviewers to look at the pleasant side of your personality,. If it does not come naturally do not contrive it.
By injecting humor in the situation doesn’t mean that you should keep telling jokes. It means to make a passing comment that, perhaps, makes the interviewer smile.

Eye contact

You must maintain eye contact with the panel, right through the interview. This shows your self-confidence and honesty.

Many interviewees while answering, tend to look away. This conveys you are concealing your own anxiety, fear and lack of confidence.

Maintaining an eye contact is a difficult process. As the circumstances in an interview are different, the value of eye contact is tremendous in making a personal impact.

Be natural

Many interviewees adopt a stance which is not their natural self.
It is amusing for interviewers when a candidate launches into an accent which he or she cannot sustain consistently through the interview or adopt mannerisms that are inconsistent with his/her personality.

Interviewers appreciate a natural person rather than an actor.
It is best for you to talk in natural manner because then you appear genuine.

Tickets and Authorization in SAP Business Warehouse

What is tickets? and example?

The typical tickets in a production Support work could be:

1. Loading any of the missing master data attributes/texts.

2. Create ADHOC hierarchies.

3. Validating the data in Cubes/ODS.

4. If any of the loads runs into errors then resolve it.

5. Add/remove fields in any of the master data/ODS/Cube.

6. Data source Enhancement.

7. Create ADHOC reports.

1. Loading any of the missing master data attributes/texts - This would be done by scheduling the infopackages for the attributes/texts mentioned by the client.

2. Create ADHOC hierarchies. - Create hierarchies in RSA1 for the info-object.

3. Validating the data in Cubes/ODS. - By using the Validation reports or by comparing BW data with R/3.

4. If any of the loads runs into errors then resolve it. - Analyze the error and take suitable action.

5. Add/remove fields in any of the master data/ODS/Cube. - Depends upon the requirement

6. Data source Enhancement.

7. Create ADHOC reports. - Create some new reports based on the requirement of client.

Tickets are the tracking tool by which the user will track the work which we do. It can be a change requests or data loads or what ever. They will of types critical or moderate. Critical can be (Need to solve in 1 day or half a day) depends on the client. After solving the ticket will be closed by informing the client that the issue is solved.

Tickets are raised at the time of support project these may be any issues, problems.....etc. If the support person faces any issues then he will ask/request to operator to raise a ticket. Operator will raise a ticket and assign it to the respective person. Critical means it is most complicated issues ....depends how you measure this...hope it helps. The concept of Ticket varies from contract to contract in between companies.

Generally Ticket raised by the client can be considered based on the priority. Like High Priority, Low priority and so on. If a ticket is of high priority it has to be resolved ASAP. If the ticket is of low priority it must be considered only after attending to high priority tickets.

Checklists for a support project of BPS - To start the checklist:

1) InfoCubes / ODS / datatargets

2) planning areas

3) planning levels

4) planning packages

5) planning functions

6) planning layouts

7) global planning sequences

8) profiles

9) list of reports

10) process chains

11) enhancements in update routines

12) any ABAP programs to be run and their logic

13) major bps dev issues

14) major bps production support issues and resolution

SAP Tickets - What Is That?

Handling tickets is called Issue Tracking system. The errors or bugs forwarded by the end user to the support team are prioritized under three seviority High, Medium and Low. Each and every seviority as got its time limits before that we have to fix the error.

The main job of the supporting consultant is to provide assistance on line to the customer or the organisation where SAP is already implemented for which the person should be very strong in the subject and the process which are implemented in SAP at the client side to understand,to analyse,to actuate and to give the right solution in right time.This is the job of the support consultant.

The issues or the tickets(problems) which are arised is taken care of on priority basis by the support team consultants.

The work process in support projects are given below for your reference.

1. The customer or the end user logs a call through any tool or by mail (RADIX).

2. Each one of the support team is a part of support group.

3. Whenever a customer logs a call he /she has to mention to which work group (by name).

4. Once the calls came to the work group the support consultant or the team need to send an IR (Initial Response) to the user depending upon the priority of the calls. (Top,High,Med,Low,None)

5. Then the error is fixed, debugged by the support consultant or the team. Then after testing properly by generating TR(Transport Request through the basis admin)

6. Then it is informed to the end user/customer/super user about the changes which have moved to the production server by CTS process.

These are the process. In summary, what I understand is that if any configuration or customization is required to solve the issue, then the consultant have to work on DEV Client, then the end user will test it in the QA client and after approval the BASIS consultant has to transport it to the PRODUCTION client.

An example:

Tickets in SD can be considered as the problems which the end user or the employee in the company face while working on R/3. Tickets usually occur during the implementation or after the implementation of the project.

There can be numerous problem which can occur in the production support and a person who is working in the support has to resolve those tickets in the limited duration, every ticket has the particular deadline alert so your responsibility is to finish it before that deadline.

To begin with , we should give "TICKET" to you for not knowing it.

Here is an eg of a ticket raise:

Tickets in SD can be considered as the problems which the end user or the employee in the company face while working on R/3. Tickets usually occur during the implementation or after theimplementation of the project. There can be numerous problem which can occur in the production support and a person who is working in the support has to resolve those tickets in the limited duration, every ticket has the particular deadline alert so your responsibility is to finish it before that deadline.

To begin with , we should give "TICKET" to you for not knowing it.

End user is not able to

1. Create Sales order for a customer from a New plant , since shipping point determination is not happened . ( Without Shipping point the document becomes INCOMPLETE and he will not be able to proceed further like DELIVERY, BILLING).

He raises a ticket and the priority is set in one of the below:

1. Low

2. Medium

3. High.

Now you need to solve this ticket. You would analyze the problem and identify that the SP configuration has to be done for the new plant.

You would request a transport for DEV CLIENT to BASIS. You do the change and Request one more Transport to BASIS for QA client. The End user will test the same by creating a sales order for the new plant and approve it.

Finally, you request a transport to move the changes to PRODUCTION. Once the change is deployed in production the TICKET is closed. What I have given is a small example. You would get some real issues with severity HIGH in your day-day support.

Monday, March 10, 2008

Role of SAP Consultant In Testing

1. What is the role of SD Consultant in Testing while implementing the project?

2. What is Unit testing and Integration Testing?

Testing : the core team members along with endusers will test whether the postings done in SAP is resulting as per the requirements of the organisation. They will test whether the output documents such as purchase order, invoice document are printed in the required format and showing the correct data.

Unit testing is refer to the module which are going to implement. SD, MM, FICO etc. there will be test script based on that testing will be performed.

Integration testing will be cross the modules. MM-SD-FICO for example. Integration testing is also called SIT ( System integration testing)

Testing mathologies and types:

There are 6 types of testings-----

1. Unit Testing

2. System Testing

3. System Integration security Testing

4. Performance Testing

5. User Acceptance testing

6. Regression Testing

Unit testing is done in bit and pieces. Like e.g. in SD standard order cycle; we do have 1-create order, then 2-delivery, then 3-transfer order, then 4-PGI and then 5-Invoice. So we will be testing 1,2,3,4 and 5 seperately alone one by one using test cases and test data. We will not be looking and checking/testing any integration between order and delivery; delivery and TO; TO and PGI and then invoice.

Whrereas System testing you will be testing the full cycle with it's integration, and you will be testing using test cases which give a full cyclic test from order to invoice.

Security testing you will be testing different roles and functionalities and will check and signoff.

Performance testing
is refered to as how much time / second will take to perform some actions, like e.g. PGI. If BPP defination says 5 seconds for PGI then it should be 5 and not 6 second. Usually it is done using software.

Regression testing is reffered to a test which verfies that some new configuration doesnot adversly impact existing functionality. This will be done on each phase of testing.

User Acceptance Testing: Refers to Customer testing. The UAT will be performed through the execution of predefined business scenarios, which combine various business processes. The user test model is comprised of a sub-set of system integration test cases.

We use different software during testing. Most commonly use are

Test Director: which is used to record requirement, preparing test plan and then recording the progress. We will be incorporating defects that are coming during these testings using different test cases.

Mercury Load Runner: is used for performance testing. This is an automatic tool.

What does the following terms means :

- Technical Unit Testing

- Functional Unit Testing

- IntegrationTesting

- Volume Testing

- Parallel Testing?

Technical Unit Testing= Test of some technical development such as a user exit, custom program, or interface. the test usually consists of a test data set that is processed according to the new program. A successful test only proves the developed code works and that it performed the process as as designed.

Functional Unit Testing= Test of configuration, system settings or a custom development (it may follow the technical unit testing) These usually use actual data or data that is masked but essentially the same as a real data set. A successful test shows that the development or configuration works as designed and the data is accurate as a result.

IntegrationTesting= Testing a process, development or configuration within the context of any other functions that the process, development or functionality will touch or integrate . The test should examine all data involved across all modules and any data indirectly affected. A successful test indicates that the processes work as designed and integrate with other functions without causing any problems in any integrated areas.

Volume Testing= testing a full data set that is either actual or masked to insure that the entire volume does cause system problems such as network transmission problems, system resources issues, or any systemic problem, A successful test indicates that the processes will not slow or crash the system due to a full data set being utilized.

Parallel Testing= Testing the new system or processes with a complete data set while running the same processes in the legacy system. A successful test will show identical results when both the legacy system and new system results are compared.

I would also note that when a new implementation is being done you will want to conduct at least one cut over test from the old system to the new and you should probably do several.

What kind of testings that are carried out in testing server?

1. Individual Testing ( Individually which we've created)

2. Regressive Testing ( Entire Process)

3. Integration Testing ( Along with other integrated modules)

The 3 types of testing is as follows:-

1. Unit testing (where an individual process relevant to a SD or MM etc is tested)

2. Integration testing (where a process is tested that cuts across all areas of SAP).

3. Stress testing (where lots of transactions are run to see if the system can handle the data)

Tutorials on SAP-ABAP

Adobe Interactive Forms Tutorials

Business Server Pages (BSP)


Web Dynpro for ABAP (Step by step procedure for web dynpro,Tutorials on Web Dynpro,)

ALV Tutorials

Blog Archive