You are on page 1of 5

Functional Spec?

Functional Spec is mainly prepared for the purpose of developing the new reports (this happens only
when SAP standard report not achieve the client purpose) using the ABAP Program. for ABAPers you
need to give the details of the Tables , Fields and the logic how to pick the value and get the report.

The information contains in the functional specs are:

a)Document segment (BSEG): which contains the company code,posting keys, vendors,etc.

b)the line items(BKPF) consists of document type, etc.

for example: from BSEG table you have to go to the field of BUKRS for company code, BSCHL for
Posting Keys.
From BKPF table you have to go to the field of BELNR for document Number, etc.

Based on your functional specification the Abaper will design the report using his technical specifications.

The above are examples only to understand. There are plenty of tables & fields for FI, CO and Assets
separately.

Please assign points, if the above are useful.

Functional spec are based on the business requirment and contains details of end user
expectations of the product Functionality

document describes requested properties of inputs and outputs


the blueprint for how you want a particular application to look and work
it details what the finished product will do
who a user will interact with it and
what it will look like
the key benefit of writing up a funtional spec is streamlining the development process. time
and productivity are saved during development stage because the programmers can
program instead of also working out the logic of the user experience

S/W or program will be developed based on the functional specs


it consist of

1. business requirments- brief detail about the business process and the need of
your cutomized program/report
2. security consideration- who all can have access to this program and level of
security whether it is at co.code level or country level
3. business dependences- whether is there any other process / program should
have been completed before the execution of this program
4. Data requirement
5. priority- whether the failure lead to production stoppage or any work around
6. error management
7. how the program retrieve the data if it is a report program
Eg:-1
The requirement was to add the vendor name to the fbl3n screen, we couldn’t add this so we went for a
new report with all the fbl3n fields + vendor name. This is a spec for the program.

DEV ID; Sales tax report


Functional Team ;Zaid Azam
(phone)
SAP Dev. Team (lead) Zaid Azam (phone #)
(member) (phone #)
Phase / Priority Phase 1
Medium

The above part is just a header, which system the report is, in what report is it i.e sales report, material
reprot etc, then the consultants name, lead name etc.

how important it is medium , low, high

Revisions
Rev. Id Rev. date Author Description
00 Initial release

1 Report definition
Basic Information

Report type 1 A/P


Report type 2 Printed
Language require.
Printer requirement Local printer / system printer
Paper requirement Landscape
Source environment: R/3
Module: FI
Suggested technique ALV / other
Triggered: Manually
Frequency: On-demand
Volume: Daily

Then in the report definition

you specify what module it is in i.e. FI, MM etc

what sub ledger AP/AR etc

how often it will be printed etc etc ( nothing really useful here, just giving a business touch)
2.Functional Requirements

Functional Requirements
Selection Posting Date, G/l account

Narrative flow; The report should list the all the transactions of the G/l account( all items i.e open and
cleared) selected on the initial screen. It should list the vendor name and number when a G/l transaction
is of a vendor
Assumptions / issues;
Should have the capability of being exported to excel
This is the important part

here you tell what are the fields on the selection screen.
Then in the narrative flow you should tell the abapper what thre report should do like its mentioned above,
eg ;apart from above get the sales for customers who reside in California between the date range
specified on the selection screen

3.Processing logic

Processing logic
Step 1 Enter g/l account (HKONT) on the selection screen and run with or without a date range Or run by
a date range only without specifying a G/L

Step 2 Get the G/L number from BSIS that was selected on the initial screen Or get all the G/ls that had
postings in the posting date ( BUDAT) specified on the initial screen.

Step 3 Get the amount ( WRBTR) from BSIS ( Open and cleared both are in BSIS)

Step 4 Take the Document Number (BELNR) from BSIS and get the vendor number for that doc number
from BSIK ( open item), from BSAK ( cleared) if item is paid.

Step 8 Should get the vendor name from LFA1 for the vendor number from BSIK or BSAK
Step 9
Step 10

Processing Logic tells him in detail about which fields should come and from which table( not necessary
to give technical names and tables, he could find that out, depends on the abbapper)

4.Output
Output

4.1 Layout

FORMAT

G/L Posting date Amount Doc type Text Doc number Pk


Vendor # Name
650100 12/03/2006 500 SA Test for report 19000042342 40
10229 GMC

In the format i put an excel view of how the final report should look like
4.2 Header elements

SAP Field Report Field Comment

BSAK _LIFNR, BSIK_LIFNR Vendor number


LFA1_NAME1 Vendor Name
BSIS_BUDAT Posting Date
BSIS_HKONT G/l account

4.3 Line item

SAP Field Report Field Comment

BSIS_WRBTR amount
BSIS_BLART Document type
BSIS_SGTXT Item text
BSIS_BSCHL Posting Key

Then i enter the fields that should be there in the report first the table name is list then the technical name
and then the English name. Both header and line items are specified.

Additional topics

Unit Test Suggestions: Same as the standard SAP report FBL3N. Only addition is the vendor name and
number
Security/ Authorizations:

Error handling
Dependencies
References
Out of scope requirements NA

2. Eg
I need one new report like in the output i need only company code, Vendor number and recon. Account
assigned. like as below:
Company Code Vendor Recon account
1000 90000001 156001
1000 90000002 156001
2000 90000001 156002

for the above requirement with the input selection criteria like as below

Company Code ( ) ( )
Vendor ( ) ( )

if you give input selection as above as required you will get the output as given above

Logic should be as below:

for input selection


Company Code - BUKRS is the ABAP field for the company code
Vendor - LIFNR

for the output

Company Code - LFB1-BUKRS


Vendor - LFB1-LIFNR
Recon account - LFB1-HKONT

You will get the recon account details in the LFB1 table , if you give the logic as above , ABAP er will write
the program for the same.

You might also like