Caution: I am indicating RM/1 Work-Instructions to help you find quick answers  to your FAQs. But I recommend that you go through all the work-instructions as given. It will eliminate many of your problems by suggesting better tools and techniques for Report development. Remember, your individual problems are solely due to unplanned development.


Frequently Asked Questions -  Reports

Requirement Specification
Q-1. I am forced to  make frequent changes while  developing a report . Most of the time it is because of changes in the User requirement. How to do User Requirement Study for a Report  ?

A. You need to be clear about following points of the report :

           Find out the application area of the report and go to SAP business Navigator. Understand the Background and
           context  of the report.            Your Report may represent a result of one or more processes of  a Business Cycle. A Report may summarize one
           or more than  one . Ask SAP application specialist regarding what all he expects to be included in the report.            A Data-item  may represent a combination of more than one fields of  SAP data base  e.g. Quantity  in Pipeline
           in purchase reports may mean a summation of
                - Purchase order quantity   yet to be supplied
                - Supplied quantity  which has been rejected
                - Purchase  Requisition quantity yet to be converted in purchase order
          SAP field descriptions  sometimes do not describe the values correctly. Use field mapping information to find out what
          a data-item represents.
          e.g. During mapping if Old customer no. is mapped on to the Train station field, the SAP train station field will
          represent Old Customer No. In case of doubt take help of SAP Application Experts. Get an understanding of the activities your organization performs in carrying out its business as well.
RM/1 report user  requirement study template guides you in User requirement study.

Q-2. Is Requirement specification sacrosanct ?

A. No. If you have a doubt regarding anything please get it clarified by the SAP application specialist. Sometimes when you realize that it is not possible to develop a program as mentioned in Functional Specification, talk to the SAP Application Specialist they may change their requirement.

Source-code development
Q - 1. I usually find the Table and Field keeping a data by taking help( F1 ) on the field followed by Technical Info, but sometime the tables don't keep data. What to do ?

A. It is not necessary that every field of the screen lies in one field of the table. Goto Q. 3 and follow the stes in there to find table and field.

Q - 2. Which tables store this Entity e.g. Purchase Order, RFQ, A/R Invoice etc. ?

A. Do 'ABAP/4 Runtime Analysis' of one of the following proceses related to the Entity:

   create Entity  e.g. create  PO
   or
   change Entity  e.g. change  PO
   or
   display Entity e.g. display PO
 

Q - 3. Which table and Which field keeps this data e.g. Quantity of material being requested of an RFQ, Delivery date for RFQ, GR date,the accumulated amount for each cost center like table SKC1C holds the accumulated amount for each G/L account ?
 
A. Identification of SAP table and field keeping a data is done in three steps:
   1) Identification of relevant processe(s) 
   2) Identification of relevant table(s)
   3) Identification of Field(s) of table
   A field may be affected by more than one process, may lie in more than one table and field.

Q - 4. The two fields are available in the  RM06E (ANMNG and EEIND respectively) but I cannot get data from RM06E ?

A. RM06E is a structure and structures do not keep values. They get filled during execution of programs. You have to find tables. Follow these steps:
   1) Identification of relevant processe(s) 
   2) Identification of relevant table(s)
   3) Identification of Field(s) of table
 
 
Q - 5. How can I find all the related DB tables for a perticular process(transaction) ?

A. By doing ABAP/4 Runtime Analysis  of the process(transaction).
 
 
Q - 6. If I have to generate a report for listing all the objects which belong to a particular class and have a certain set of characteristics. How would I go about finding the relevant & related DB tables  that I would need to write the report ?

A. Please goto :
   Reports Problem Definition -->  Identification of relevant processe(s) 
   then,
   Reports Work-instructions  -->  Identification of relevant table(s) 
 

Q - 7. I need to print the GL account codes in my layout set.  How do I extract the GL account codes.  Where do I find the table for the GL account codes? .

A. GL account code lies in many tables. Which table is relevant for you will depend upon the Processes related to the report.
   For identification of relevant processes:
   Reports Problem Definition -->  Identification of relevant processe(s) 
   To find relevant tables and fields:
   Reports Work-instructions -->  Identification of relevant table(s)
 
Q-8. I am a new programmer in SAP. I spend a lot of time in searching ABAP/4 commands to do a particular job. I also resort to trial and error to get a syntax working.

A. RM/1 has prepared Source code Template for different problem domains like Reports, Batch data lode program. These Templates indicats ABAP/4 syntax’s required for Reports and BDC programs along with examples regarding how to use the syntax.
These has come as a result of compilation of the work-Instructions (related to a report )using the most suitable syntax and constructs of ABAP/4. These  reduce the number of syntax  required to write a Report or Batch data load program. Needless to say, the template will change with changes in ABAP/4 syntax library.

Q-9. Due to time pressure I usually go for Direct coding without analysis and design of problem.

A. Most of the problems of program development and maintenance are because of this only. RM/1 has made Templates for Reports and Batch data load programs which is a result of generic analysis and design. Use of these templates during development provides the benefit of Analysis and Design in the program development and maintenance without asking for analysis and design.
 
Q-10. Error in determining the records that should take part in determining the value of the data item of a report .

A.  Determine constraints for fields              Tools and Techniques              Example 

Q-11. A no. of times I find myself doing what someone else has already done. So how to coordinate the work of different people to avoid re-inventing the wheel.

A. RM/1 has made groups of problems and developed templates for each program class. These templates reduce the re-invent the wheel in different ways:

  1. 1. It reuses the Analysis and Design effort
  2. 2. It reuses the syntax knowledge by using the same syntax for different programs(Problem group).
  3. 3. It reuses the knowledge regarding the use of syntax by giving examples of syntax use.
  4. 4. It promotes source code module reuse by keeping it in easily retrievable modules.
Documentation
Q-1. lack of coordination of communication related to a process

A. Standardization of documentation and Architecture of Source code as a Template makes communication easier.

Testing & Debugging
Q-1. I spent a lot of time debugging source code to identify errors. What is the way out ?

A. RM/1 template has tried to modularize source code such that one has two isolated source code modules:
 1. Data collection module
 2. Routing data to a Destination module
One need not go through each and every line but can see the output of modules by setting break-points at the end of the modules. These modules has been further sub-divided into Process based totally isolated modules which allow setting of break-points rather than line by line debugging.

Q-2. How to create test data for my program. I have rarely found my program taking care of all conditions right the first time.

A. Creating test data requires knowledge of all the process related to the report and know how to execute the process in SAP. This step is facilitated by user requirement study. Very often you will need to take help of SAP Application Specialist in doing this. Template’s Business process oriented code modules will be helpful.

Job Satisfaction
Q-1. I don’t like doing programming. It is very often frustrating.

A. Communicating with something as dumb as computer will be frustrating. But Trial and error along with detailed debugging aggravates it . Clear work-instructions with tools to be used in the work-instruction reduces it. Business process oriented source code development makes the job more meaningful and interesting. RM/1 is a result of this frustration and addresses this issue pretty well.