Your Ad Here

Monday, February 23, 2009

SAP Tutorial - Part 13 - Sales & Distribution - Pricing - Part 1

Difference between Condition Type

Please explain the difference between Ek01 ( Actual Cost) and EK02 Calculated Cost.

These are the condition type that will display the results of the unit costing for certain type of sales document.

EK01 :
If you use this condition type, the result of unit costing is issued to the first position on the conditions screen for the item. The value can be used as a basis for price determination.

EK02:
If you use this condition type, the result of unit costing is simply a statistical value which you can compare with the price.

Please note the following points :

1) The condition type must have condition category 'Q' (costing).

2) The condition type must agree with the condition type defined for unit costing in the pricing procedure.

I have a customer who is being offered two discounts ie k007 and k005, now I want to exclude k007 for the next 2 orders or so? I have set the exclusion indicator for the condition type, but still the condition is being accepted when I create a sales order. Am I missing something, how do I do it?

I think u need to change the validity of the condition record for the condition type K007 defining it not valid for that particular 2 months. And also the settings of the Requirements as it is correct that it overrules the exclusion.



Accumulate the amount of condition types in accounting document

To accumulate the amount of condition types in accounting document without affecting the pricing display in billing document.

As an illustration :-

ZPXX 3500
ZDXX 1000-
ZWXX 500-

(all condition types are shown separately in pricing view)

Journal:
Dr Vendor 2000
Cr Sales 2000 (ZPXX - ZDXX - ZWXX)

One way to do it is :-

Mark the condition types you want to group as statistical and remove the account assignment key.

Create a subtotal in your pricing procedure that will add them together and put in the account assignment key for it. This way the individual components will still display on your pricing screen but FI will only get one posting.




Creating New Pricing Procedure


What is the transaction code for creating new pricing procedure and how to attach it to specific plant?

You create PP in spro > Sales and Distribution > Basic Functions > Pricing > Pricing Control > Define and Assign Pricing Procedures > Maintain Pricing Procedures

You can't attach PP to specific plant. Pricing Procedure is determined thru trx OVKK. The defining parameters for pricing procedure determination are:

1. SalesOrg
2. Distribution Channel
3. Division
4. Document Procedure (defined in Sales doc\Billing doc maintenance)
5. Pricing procedure assigned to customer (defined in customer master)

Reg pricing procedure.

1. Use transaction code v/07 to create a access sequence and assign tables based on which you want to carry on
pricing as accesses.

2. Use transaction code v/06 to define condition type. It can be for base price, discount, freight etc.,
(Do assign relevant access sequence)

3. Use transaction code v/08 to define pricing procedure.

4. Assign this to your relevant sales area+ dpp+cupp.

While specifying requirement, we can give reqt no.22 which specifies that plant has to be set. This is generally done for output taxes since output taxes depend upon the delivering plant. But directly there is no assignment between plant and pricing procedure.



What is alt cal type & alt base value & Req field in Pricing

The alternate base value is used as the calculation basis only, while the alternate calculation is used to modify the final value.

For example, imagine you have a condition type ZZ01, with a condition record maintained (master data) for $100. Now, condition ZZ02 also exists lower in the schema, but with a rate of 10%. The standard calculation would result in a final value of $110.

The alternate base value could say, "don't use $100 as the basis -- use the original price PR00 only, which was $90." Then, the final value would be $100 + (10% of $90) = $109.

The alternate calculation routine says, "ignore the 10% altogether. Instead, use an externally calculated 20%." Then, you end up with a final value of $100 + (20% of $100) = $120.

Put them both together, and you could end up with $100 + (20% of $90) = $118.

Now once again,

Alternative Calculation Type:

Normally if you want to calculate a value you have to use a calculation type for determinating the value. This calculation type is either addition, subtraction or multiplication. Similarly SAP also has got a default calculation type in the control data of the condition type. There you have the options of either Qty based , Fixed Amount Based or Percentage based.

Here what happens is suppose if you define Your condition type that calculates the base price of a material on Qty based. Then the calculation will be done based on the quantity of the material. If the customer orders 10 Nos and you have maintained a unit price of 100 Rs for each material then the value determined is 1000 INR. Similarly if the discount condition type , you maintain the calculation type as %. This means if you maintain the value of 10 % in the condition record. Then this percentage is taken as the calculation type and the condition value is determined.

In some cases you have to forego the default calculation types and use the customer specific method for calculating a value. For ex if you are calculating the Freight charges for a Material . it depends on so many criteria like, the weight, volume and also the minimum amount etc etc, in those cases, you forego the default value and then use the alternative calculation type in calculating the condition value against the particular condition.

Alternative Condition Base value :

If you have to calculate any value then you have to have a base value for it. For ex if you want to calculate the discount of 10 % for a material then you have to have a base value on which this 10% is calculated. Normally you take the condition value of the base price of the material to calculate the value.

Now you don't want to take the base value and take other values as base value which are derived on some formulae. So you create a routine which will do the mathematical operations in the routine and derive you a value which is now used as the base value for calculating the condition value for a particular condition type.

Requirement:
A factor in the condition technique that restricts access to a condition table. The system only accesses a condition table to determine the price if the requirement specified has been met.

Example:
The system uses an access sequence to determine the price of a material. One of the accesses in the sequence contains the requirement "in foreign currency." The system only uses the table behind this access if the sales order for which the price must be calculated is in a foreign currency.

Sunday, February 22, 2009

SAP Tutorial - Part 13 - Sales & Distribution - Introduction

Sales and Distribution Introduction


The Sales and Distribution (SD) application component fulfills many of the international requirements that supports the sales and distribution activities with functions such as pricing and conditions, customer order processing, delivery monitoring, billing, credit and risk management.

Document Flow in Sales

The sales documents you create are individual documents but they can also form part of a chain of inter-related documents. For example, you may record a customer’s telephone inquiry in the system. The customer next requests a quotation, which you then create by referring to the inquiry. The customer later places an order on the basis of the quotation and you create a sales order with reference to the quotation. You ship the goods and bill the customer. After delivery of the goods, the customer claims credit for some damaged goods and you create a free-of-charge delivery with reference to the sales order. The entire chain of documents – the inquiry, the quotation, the sales order, the delivery, the invoice, and the subsequent delivery free of charge – creates a document flow or history. The flow of data from one document into another reduces manual activity and makes problem resolution easier. Inquiry and quotation management in the Sales Information System help you to plan and control your sales.

The following graphic shows how the various types of sales documents are inter-related and how data subsequently flows into shipping and billing documents.





Basic Process of how Packing Works

Let's say you want to pack a material shirt_jai in test_pack.

Using MM01, create material type=packaging test_pack

[SPRO]
IMG-Logistics Execution-Shipping-Packing-
Define Packaging Material Types
Let's say JPAC. The settings that I chose:
Plant determ. - Plant is entered manually in handling unit
Pack. matl. cat. - Packaging materials
Generate Dlv. Items - blank
Number assignment - Number range interval 'HU_VEKP'

IMG-Logistics Execution-Shipping-Packing-
Define material group for packaging material
Let's say JGRP

IMG-Logistics Execution-Shipping-Packing-
Define allowed packaging materials
JGRP - JPAC


MM02: Check settings for the materials
First, test_pack

Sales:General/Plant -> Matl. Grp. Pack. Matls: JGRP (Note)
Sales:General/Plant -> Packaging Mat. Type: JPAC (Note)
Basic Data 1 -> Material: JMAT

Then, shirt_jai

Sales:General/Plant -> Matl. Grp. Pack. Matls: JGRP
Sales:General/Plant -> Packaging Mat. Type: -
Basic Data 1 -> Material: JMAT

VL01N Outbound Delivery -> Packing
Enter the materials at top and at bottom



The "Packing Process" with an Example

Example:
You created a order for a material(R-1160 - hard disks) for a qty - 120 pieces.

You need to create a delivery and
A)pack 40 pieces each of the material are grouped together into larger cardboard boxes (PK-100 - shipping/packing material) and
B)these 3 cardboard boxes are put into pallet (PK-095).

Solution:
A)Packing 40 pieces each of material (40 x 3 = 120 pieces)

1)Goto [VL02N] to change the delivery, you already created.
Or you can do the following steps while you are creating a delivery also.
2)Go to "pack" icon.
3)In the upper section, enter the "packing material" (PK-100)
4)In the lower section, change the "partial quantity" to 40 of material R-1160.
5)Select both the lines of upper section and lower section and click the green ok. It generates a shipping unit/handling unit number.
6)Now, select both lines of upper & lower section & click the button "per part. qty" (New HU per part qty of material)
Check: click "General Overview" icon to see whether it packed 40 pieces of material in 3 cartons.

B)Packing all 3 cartons in one big carton(PK-095)

1) from above screen, click "pack HUs" (pack shipping unit)
2)enter the packaging material (PK-095) in the upper section and select this line.
3)select 3 lines of PK-100 in lower section since you want to pack them in PK-095.
4)selecting both lines, click "pack" icon.
5)Now all the 3 cartons(PK-100 with 40 pieces each of material) are packed in one big carton (PK-095).
Check: "General overview" icon.

Thursday, February 19, 2009

SAP Tutorial - Part 12 - SAP Transaction Code

SAP Transaction Code


SPRO DEFINE ITEM CATEGORY
MM01 CREATE MATERIAL
MM02 MODIFY MATERIAL
MM03 DISPLAY MATERIAL
MMS1 CREATE MATERIAL MASTER
MMS2 CHANGE MATERIAL MASTER
MMS3 DISPLAY MATERIAL MASTER
MB1C MAINTAIN STOCK
MMPI INITIALISE PERIOD FOR MASTER MATERIAL RECORDFROM CO CODE
MMBE CREATE STOCK
MM60 MATERIAL LIST
XD01 CREATE CUSTOMER
XD02 MODIFY CUSTOMER
XD03 DISPLAY CUSTOMER
VA01 CREATE ORDER
VA02 CHANGE ORDER
VA03 DISPLAY ORDER
VA11 CREATE INQUIRY
VA12 CHANGE INQUIRY
VA13 DISPLAY INQUIRY
VA21 CREATE QUOTATION
VA22 CHANGE QUOTATION
VA23 DISPLAY QUOTATION
VD02 CHANGE SALES PROSPECT
VD03 DISPLAY SALES PROSPECT
VD04 DISPLAY CHANGES
VD06 FLAG FOR DELETION
VK11 MAINTAINING PRICING
VK0A ASSIGN G/L ACCOUNT GENERAL
VOK0 PRICING
VOR1 DEF COMMON DIST CHANEL
VOR2 DEF COMMON DIV
VOV6 DEFINE SCHEDULE LINES
VOV8 DEFINE SALES DOC TYPE
VOFA CREATE/OR CHANGE BILLING TYPES CONFIGURATION
V129 DEFINE INCOMPLETENESS SCHEMAS FOR FOREIGN TRADE
V149 ASSIGN INCOMPLETENESS SCHEMAS FOR COUNTRY CODE
CA01 CREATE ROUTING
CA02 EDIT ROUTING
CA03 DISPLAY ROUTING
CS01 CREATE BOM
CS02 CHANGE BOM
CS03 DISPLAY BOM
OVK1 DEFINE TAX DET RULES
OVK3 DEF TAX REL OF MASTER RECORDS CUSTOMER TAXES
OVK4 DEF TAX REL OF MASTER RECORDS MATERIAL TAXES
OVR6 DEF LEGAL STATUSES
OVS9 DEF CUSTOMER GRP
OVRA MAINT STATISTICS GRPS FOR CUSTOMERS
OVRF MAINT STATISTICS GRPS FOR MATERIAL
OVXC ASSIGN SHIIPING POINT TO PLANT
OVX6 ASSIGN PLANT TO S.O AND DIST CHANEL
OVLK DEFINE DELIVERY TYPE
OVSG DEFINE INCOTERMS
OVLH DEFINE ROUTES
OVXM ASSIGN SALES OFF TO SALES AREA
OVXJ ASSIGN SALES GRP TO SALES OFFICE
OMS2 MATERAIL UPDATE
OVLP DEFINE ITEM CATEGORY FOR DELIVERY
OX10 ASSIGN DEL PLANTS FOR TAX DET
O/S2 DEFINE SERIAL NO PROFILE
O/S1 DEFINE CENTRAL CONTROL PARAMETERS FOR SR NO
OBB8 DEFINE TERMS OF PAYMENT
OKKP ACTIVATION OF COMPONENETS
VB01 CREATE REBATE AGGREMENTS
VB02 CHANGE REBATE AGREMENT
VB03 DISPLAY REBATE AGGREMENT
VB31 CREATE PROMOTION
VB32 CHANGE PROMOTION
VB33 DISPLAY PROMOTION
VB21 CREATE SALES DEAL
VB22 CHANGE SALES DEAL
VB23 DISPLAY SALES DEAL
VB25 LIST OF SALES DEAL
VB35 PROMOTION LIST
VKA4 CREATE ARCHIVE ADMINISTRATION
VKA5 DEL ARCHIVE ADMINISTRATION
VKA6 RELOAD ARCHIVE ADMINISTRATION
VC/1 CUSTOMER LIST
VC/2 CREATE SALES SUMMARY
VDH2 DISPLAY CUSTOMER HIERARCHY
VF01 CREATE PROFORMA INVOICE
VF02 CHANGE PROFORMAINVOICE
VF03 DISPLAYPROFORMA INVOICE
VF07 DISPLAY FROM ARCHIVE
VF11 CANCEL BILL
VFX3 BLOCKED BILLING DOC
VFRB RETRO BILLING
VF04 MAINTAIN BILL DUE LIST
VF06 BACKGROUND PROCESSING
VF21 CREATE INVOICE LIST
VF22 CHANGE INVOICE LIST
VF23 DISPLAY INVOICE LIST
VF44 MAINT REVENUE LIST
VF45 REVENUE REPORTS
VF46 MAINT CANCELLATION LIST
VF31 ISSUE BILLING DOC
VFP1 SET BILLING DATE
VARR ARCHIVE DOCUMENTS
VL01N CREATE DELIVERY
VL02N TO CHANGE DELIVERY WHICH IS ALREADY CREATED
VL03N DISPLAY DELIVERY
V/08 TO CHANGE CONDITION (PR PROCEDURE)
V/30 DEFINE PRINT PARAMETERS
FD32 SETTING CREDIT LIMIT FOR CUSTOMER
/NSM12 TO REMOVE LOCK ENTRY
SM30
ND59 LIST CUSTOMER MATERIAL INFO
VB0F UPDATE BILL DOC

Tuesday, February 17, 2009

SAP Tutorial - Part 11 - SAP Landscape

SAP Landscape Introduction

Landscape is like a server system or like a layout of the servers or some may even call it the architecture of the servers viz. SAP is divided into three different landscape DEV, QAS and PROD.

- DEV would have multiple clients for ex: 190- Sandbox, 100- Golden, 180- Unit Test.
- QAS may again have multiple clients for ex: 300- Integration Test, 700 to 710 Training.
- PROD may have something like a 200 Production.

These names and numbers are the implementer's discreet on how they want it or they have been using in their previous implementations or how is the client's business scenario.

Now whatever you do in the Sandbox doesn't affect the other servers or clients. Whenever you think you are satisfied with your configuration and you think you can use it moving forward, you RE-DO it in the golden client (remember, this is a very neat and clean client and you cannot use it for rough usage). As you re-do everything that you had thought was important and usable, you get a transport request pop up upon saving every time. You save it under a transport request and give your description to it. Thus the configuration is transported to the Unit Test client (180 in this example).

You don't run any transaction or even use the SAP Easy Access screen on the 100 (golden) client. This is a configuration only client. Now upon a successful transport by the Basis guy, you have all the configuration in the Testing client, just as it is in the Golden client. The configuration remains in sync between these two clients.

But in the Testing client you can not even access SPRO (Display IMG) screen. It's a transaction only client where you perform the unit test. Upon a satisfactory unit test, you move the good configuration to the next SERVER (DEV). The incorrect or unsatisfactory configuration is corrected in Golden (may again as well be practiced in the sandbox prior to Golden) and accordingly transported back to 180 (Unit Test) until the unit test affected by that particular Config is satisfactory.

The Golden client remains the 'database' (if you want to call it that) or you may rather call it the 'ultimate' reference client for all the good, complete and final configuration that is being used in the implementation.


SAP System Landscape Directory

Purpose

A modern computing environment consists of a number of hardware and software components that depend on each other with regard to installation, software updates, and demands on interfaces. The SAP System Landscape Directory (SLD) simplifies the administration of your system landscape.

The SLD is a server application that communicates with a client application by using the Hypertext Transfer Protocol (HTTP). The SLD server contains component information, a landscape description, and a name reservation, which are based on the standard Common Information Model (CIM). The CIM standard is a general schema for describing the elements in a system landscape. This standard is independent of any implementation.

Features

The component description provides information about all available SAP software modules. This includes version numbers, current patch level, and dependencies between landscape components. SAP makes this information available to its customers. You can download the current component description from SAP Service Marketplace, which then updates your local component description (see SAP Note 669669). It is also possible to add instances for third-party components to the component description.

The system landscape description represents the exact model of an actual system landscape. Together with the current component description, the system description provides information for various processes (the system administration and implementation, for example).

The example below shows a possible scenario that illustrates how the component and system landscape description functions.

Example

On the left-hand side of the following graphic is the master description for all existing SAP software modules. SAP maintains this information. The local component description on the right-hand side (client side) can be updated in accordance with the master description.

An installed mySAP.com component is registered in the System Landscape Directory. The component description contains information about the installed components. If, for example, a new Support Package is available for this component, SAP publishes this information using the master description. In this way, the customers receive all the latest information relevant for their system landscape promptly.

Sunday, February 15, 2009

SAP Tutorial - Part 10 - SAP Reports

REKH0004 SAP demo program that shows how to do 2D, 3D, and 4D graphics.

RGUGBR00 Substitution/Validation utility

RHGENZ0/HRGRENZ2 Notes RHGRENZ0/2 will abend if there are any inconsistencies between PD and PA (i.e. people in a different controlling area than the position they belong to).

RHGRENZ0 Delimit IT1000 and related 1001s. Program will delete any 1001 infotypes whose start date is after the delimit date.

RHGRENZ1 Extend the end date on delimited records. Very useful when you delimit a bunch of records incorrectly, and need to change the end date.

RHGRENZ2 Delimit IT1001 only.

RKCTSEAR Search source code for up to two strings. Also see RSRSCAN1 and RPR_ABAP_SOURCE_SCAN.

RPDTRA00 List all HR transactions.

RPR_ABAP_SOURCE_SCAN Search ABAP code for a string. Has many more options for selecting the ABAPs to search than RSRSCAN1 or RKCTSEAR.

RPUAUD00 HR Report to list all logged changes for an employee. Uses the PCL4 Audit Cluster.

RPUAUDDL HR Report to delete audit data from the PCL4 Audit Cluster.

RPUDELPN Delete all info for an employee number, including cluster data and infotypes

RPUP1D00/10 View/Delete data from PCL1 Cluster

RPUP2D00/10 View/Delete data from PCL2 Cluster

RPUP3D00/10 View/Delete data from PCL3 Cluster

RPUP4D00/10 View/Delete data from PCL4 Cluster

RSABAPIV Mass print/display of ABAP/4 help text

RSAVGL00 Table adjustment across clients

RSBDCBTC Submit a BDC job with an internal batch number and wait for the end of the batch input session.

RSBDCDRU Prints the contents of a Batch Input session. No options for error transactions only.

RSBDCOS0 Execute UNIX commands. Looks similar to the old SAPMSOS0 program that disappeared in 3.0

RSBDCSUB Release batch input sessions automatically

RSBTCDEL Clean the old background job records

RSCLTCOP Copy tables across clients

RSDBCREO Clean batch input session log

RSINCL00 Extended program list

RSORAREL Get the Oracle Release

RSPARAM Display all instance parameters

RSPO0041 Removing old spooling objects

RSRSCAN1 Search source code for a given string. Will also search includes. Also see RKCTSEAR and RPR_ABAP_SOURCE_SCAN.

RSSNAPDL Clean the old ABAP error dumps

RSTBSERV Compare a contents of a table between clients

RSTXFCON Converts SAPScript page formats

RSTXSCRP Save a SAPScript layout set to disk, and load it back into SAP.

RSTXSCRP Transport SAPscript files across systems

RSTXSCRP Upload and download SAPScript layout sets

RSTXTPDF4 Pass the spool number of a report's output to this program to have the output converted to PDF format.

RSTXTRAN Add standard texts to a transport so they can be moved between systems.

RSUSR003 Check the passwords of users SAP* and DDIC in all clients

RSUSR006 List users last login

RSWBO052 Change development class of a sapscript (provided by Alan Cecchini)

RSWBO060 put objects into a request and transport it to any other systemREKH0004 SAP demo program that shows how to do 2D, 3D, and 4D graphics.

RGUGBR00 Substitution/Validation utility

RHGENZ0/HRGRENZ2 Notes RHGRENZ0/2 will abend if there are any inconsistencies between PD and PA (i.e. people in a different controlling area than the position they belong to).

RHGRENZ0 Delimit IT1000 and related 1001s. Program will delete any 1001 infotypes whose start date is after the delimit date.

RHGRENZ1 Extend the end date on delimited records. Very useful when you delimit a bunch of records incorrectly, and need to change the end date.

RHGRENZ2 Delimit IT1001 only.

RKCTSEAR Search source code for up to two strings. Also see RSRSCAN1 and RPR_ABAP_SOURCE_SCAN.

RPDTRA00 List all HR transactions.

RPR_ABAP_SOURCE_SCAN Search ABAP code for a string. Has many more options for selecting the ABAPs to search than RSRSCAN1 or RKCTSEAR.

RPUAUD00 HR Report to list all logged changes for an employee. Uses the PCL4 Audit Cluster.

RPUAUDDL HR Report to delete audit data from the PCL4 Audit Cluster.

RPUDELPN Delete all info for an employee number, including cluster data and infotypes

RPUP1D00/10 View/Delete data from PCL1 Cluster

RPUP2D00/10 View/Delete data from PCL2 Cluster

RPUP3D00/10 View/Delete data from PCL3 Cluster

RPUP4D00/10 View/Delete data from PCL4 Cluster

RSABAPIV Mass print/display of ABAP/4 help text

RSAVGL00 Table adjustment across clients

RSBDCBTC Submit a BDC job with an internal batch number and wait for the end of the batch input session.

RSBDCDRU Prints the contents of a Batch Input session. No options for error transactions only.

RSBDCOS0 Execute UNIX commands. Looks similar to the old SAPMSOS0 program that disappeared in 3.0

RSBDCSUB Release batch input sessions automatically

RSBTCDEL Clean the old background job records

RSCLTCOP Copy tables across clients

RSDBCREO Clean batch input session log

RSINCL00 Extended program list

RSORAREL Get the Oracle Release

RSPARAM Display all instance parameters

RSPO0041 Removing old spooling objects

RSRSCAN1 Search source code for a given string. Will also search includes. Also see RKCTSEAR and RPR_ABAP_SOURCE_SCAN.

RSSNAPDL Clean the old ABAP error dumps

RSTBSERV Compare a contents of a table between clients

RSTXFCON Converts SAPScript page formats

RSTXSCRP Save a SAPScript layout set to disk, and load it back into SAP.

RSTXSCRP Transport SAPscript files across systems

RSTXSCRP Upload and download SAPScript layout sets

RSTXTPDF4 Pass the spool number of a report's output to this program to have the output converted to PDF format.

RSTXTRAN Add standard texts to a transport so they can be moved between systems.

RSUSR003 Check the passwords of users SAP* and DDIC in all clients

RSUSR006 List users last login

RSWBO052 Change development class of a sapscript (provided by Alan Cecchini)

RSWBO060 put objects into a request and transport it to any other system

Friday, February 13, 2009

SAP Tutorial - Part 9 - SAP Functions - Part 2

CHANGEDOCUMENT_READ_POSITIONS Get the details of a change document, and store them in an internal table. This will tell you whether a field was changed, deleted, or updated.

Example:

CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
objectclass = 'EINKBELEG'
objectid = l_objectid
username = space
TABLES
i_cdhdr = lt_cdhdr.

LOOP AT lt_cdhdr WHERE udate IN s_aedat.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING
changenumber = lt_cdhdr-changenr
TABLES
editpos = lt_editpos.

LOOP AT lt_editpos WHERE fname = 'LOEKZ'
AND f_new = 'L'.
p_desc = text-r01. " Cancel Contract
ENDLOOP.
ENDLOOP.


CLAF_CLASSIFICATION_OF_OBJECTS Return all of the characteristics for a material

CLOI_PUT_SIGN_IN_FRONT Move the negative sign from the left hand side of a number, to the right hand side of the number. Note that The result will be left justified (like all character fields), not right justifed as numbers normally are.

CLPB_EXPORT Export a text table to the clipboard (on presentation server)

CLPB_IMPORT Import a Text Table from the Clipboard (on presentation server)

COMMIT_TEXT To load long text into SAP

CONVERSION_EXIT_ALPHA_INPUT converts any number into a string fill with zeroes, with the number at the extreme right

Example:

input = 123
output = 0000000000000...000000000000123

CONVERSION_EXIT_ALPHA_OUTPUT converts any number with zeroes right into a simple integer

SAP Function

Example:

input = 00000000000123
output = 123

CONVERT_ABAPSPOOLJOB_2_PDF convert abap spool output to PDF

CONVERT_OTF Convert SAP documents (SAPScript) to other types.

Example:

CALL FUNCTION "CONVERT_OTF"
EXPORTING FORMAT = "PDF"
IMPORTING BIN_FILESIZE = FILE_LEN
TABLES OTF = OTFDATA
LINES = PDFDATA
EXCEPTIONS ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.


CONVERT_OTFSPOOLJOB_2_PDF converts a OTF spool to PDF (i.e. Sapscript document)

CONVERT_TO_FOREIGN_CURRENCY Convert local currency to foreign currency.

CONVERT_TO_LOCAL_CURRENCY Convert from foreign currency to local currency

DATE_CHECK_PLAUSIBILITY Check to see if a date is in a valid format for SAP. Works well when validating dates being passed in from other systems.

DATE_COMPUTE_DAY Returns a number indicating what day of the week the date falls on. Monday is returned as a 1, Tuesday as 2, etc.

DATE_GET_WEEK will return the week that a date is in.

DATE_IN_FUTURE Calculate a date N days in the future.

DATE_TO_DAY Converts a date in internal format to a text description of a day. For example 20030529 returns Thursday

DAY_ATTRIBUTES_GET Return useful information about a day. Will tell you the day of the week as a word (Tuesday), the day of the week (2 would be Tuesday), whether the day is a holiday, and more.(provided by Francois Henrotte)

DOWNLOAD download a file to the presentation server (PC)

DYNP_VALUES_READ Read the values from a dynpro. This function can be used to read the values from a report's selection screen too (Another example).

DYNP_VALUES_UPDATE Similar to DYNP_VALUES_READ, this function will allow the updating of fields on a dynpro. Very useful when you want to change a field based on the value entered for another field.

ENQUE_SLEEP Wait a specified period of time before continuing processing.

ENQUEUE_ESFUNCTION Lock an abap program so that it cannot be executed.

Example:

Set the parameters as follows:
RELID = 'ZZ'
SRTF2 = 0
SRTF = (your report name)

Please note that you should not use SY-REPID to pass your report name to the function. The value of SY-REPID will change as it is being passed to the function module, and will no longer hold the value of the calling report.

EPS_GET_DIRECTORY_LISTING return a list of filenames from a local or network drive

EPS_GET_FILE_ATTRIBUTES Pass in a filename and a path, and will return attributes for the file

F4_DATE displays a calendar in a popup window and allows user to choose a date, or it can be displayed read only.

F4_IF_FIELD_VALUE_REQUEST Use values from a DDIC table to provide a list of possible values. TABNAME and FIELDNAME are required fields, and when MULTIPLE_CHOICE is selected, more than one value can be returned.

F4IF_INT_TABLE_VALUE_REQUEST F4 help that returns the values selected in an internal table. Very handy when programming your very own F4 help for a field.

Example:

data:
begin of t_values occurs 2,
value like kna1-begru,
end of t_values,

t_return like ddshretval occurs 0 with header line.

t_values = 'PAR*'.
append t_values.

t_values = 'UGG'.
append t_values.

call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
retfield = 'BEGRU'
value_org = 'S'
tables
value_tab = t_values
return_tab = t_return
exceptions
parameter_error = 1
no_values_found = 2
others = 3.

if sy-subrc = 0.
read table t_return index 1.

o_begru-low = t_return-fieldval.

if o_begru-low = 'PAR*'.
o_begru-option = 'CP'.
else.
o_begru-option = 'EQ'.
endif.

o_begru-sign = 'I'.

append o_begru to s_begru.
else.
o_begru = i_begru.
endif.


F4IF_SHLP_EXIT_EXAMPLE documents the different reasons to use a search help exit, and shows how it is done.

F4IP_INT_TABLE_VALUE_REQUEST This function does not exist in 4.6 and above. Use F4IF_INT_TABLE_VALUE_REQUEST instead.

FILENAME_GET popup to get a filename from a user, returns blank filename if user selects cancel

FM_SELECTION_CRITERIA_PRINT Print out selection criteria. Nicley formatted.

FORMAT_MESSAGE Takes a message id and number, and puts it into a variable. Works better than WRITE_MESSAGE, since some messages use $ as a place holder, and WRITE_MESSAGE does not accommadate that, it only replaces the ampersands (&) in the message.

FTP_COMMAND Execute a command on the FTP server

FTP_CONNECT Open a connection (and log in) to an FTP server

FTP_DISCONNECT Close the connection (and log off) the FTP server

FU CSAP_MAT_BOM_READ You can use this function module to display simple material BOMs. You cannot display BOM groups (for example, all variants of a variant BOM). as in transaction CS03. Current restrictions: You cannot display long texts. You cannot display sub-items. You cannot display classification data of BOM items for batches. You can only display one alternative or variant. You cannot enter an alternative for module CSAP_MAT_BOM_READ, so you always see alternative 01. The following example came from a posting on the SAP-R3-L mailing list.

Example:

data: begin of tstk2 occurs 0.
include structure stko_api02.
data: end of tstk2.

data: begin of tstp2 occurs 0.
include structure stpo_api02.
data: end of tstp2.


data: begin of tdep_data occurs 0.
include structure csdep_data.
data: end of tdep_data.

data: begin of tdep_descr occurs 0.
include structure csdep_descr.
data: end of tdep_descr.

data: begin of tdep_source occurs 0.
include structure csdep_source.
data: end of tdep_source.

data: begin of tdep_order occurs 0.
include structure csdep_order.
data: end of tdep_order.

data: begin of tdep_doc occurs 0.
include structure csdep_doc.
data: end of tdep_doc.

data: flg_warning like capiflag-flwarning.

call function 'CSAP_MAT_BOM_READ'
exporting
material = 'MAT100'
plant = '0001'
bom_usage = '1'
valid_from = '20.12.1996'
* valid_to
importing
fl_warning = flg_warning
tables
t_stko = tstk2
t_stpo = tstp2
t_dep_data = tdep_data
t_dep_descr = tdep_descr
t_dep_source = tdep_source
t_dep_order = tdep_order
t_dep_doc = tdep_doc
exceptions
error = 1.


Function Group GRAP is now obsolete. SAP recommends using functions in function group SFES instead. Below is an overview of the changes.

G_SET_GET_ALL_VALUES Fetch values from a set.

GET_CURRENT_YEAR Get the current fiscal year.

Example:

CALL FUNCTION 'GET_CURRENT_YEAR'
EXPORTING
BUKRS = '1000' " Company Code
DATE = SY-DATUM " Date to find fiscal year for
IMPORTING
CURRM = w_currm " Current Fiscal Month
CURRY = w_curry " Current Fiscal Year
PREVM = w_prevm " Previous Fiscal Month
PREVY = w_prevy. " Previous Fiscal Year



GET_GLOBAL_SYMBOLS Returns a list of all tables, select options, texts, etc for a program. Even includes the text definitions for the selection screen

GET_INCLUDETAB Returns a list of all INCLUDES in a program

GET_JOB_RUNTIME_INFO Get the current job number from a program. Also returns other useful info about the current job.

GET_PAYSLIP Returns a fully formatted payslip, ready for displaying

GUI_CREATE_DIRECTORY Create a directory on the presentation server

GUI_DELETE_FILE Replaces WS_FILE_DELETE. Delete a file on the presentation server

GUI_DOWNLOAD Replaces WS_DOWNLOAD. Download table from the app server to presentation server

GUI_EXEC Replaces WS_EXECUTE. Start a File or Program Asynchronously with WinExec

GUI_GET_DESKTOP_INFO Replaces WS_QUERY. Delivers Information About the Desktop (client)

GUI_REMOVE_DIRECTORY Delete a directory on the presentation server

GUI_RUN Start a File or Program Asynchronously with ShellExecute

GUI_UPLOAD Replaces WS_UPLOAD. Upoad file from presentation server to the app server

HELP_START Display help for a field. Useful for doing AT SELECTION SCREEN ON VALUE REQUEST for those fields that do not provide F4 help at the DDIC level.

HELP_VALUES_GET_WITH_TABLE Show a list of possible values for F4 popup help on selection screens. This function module pops up a screen that is just like all the other F4 helps, so it looks like the rest of the SAP system. Very useful for providing dropdowns on fields that do not have them predefined.

Example:

tables: t001w.

DATA: lc_werks LIKE t001w-werks,
ltab_fields LIKE help_value OCCURS 0 with header line,

BEGIN OF ltab_values OCCURS 0,
feld(40) TYPE c,
END OF ltab_values.

*-- Set up fields to retrieve data
ltab_fields-tabname = 'T001W'.
ltab_fields-fieldname = 'WERKS'.
ltab_fields-selectflag = 'X'.
APPEND ltab_fields.

ltab_fields-tabname = 'T001W'.
ltab_fields-fieldname = 'NAME1'.
ltab_fields-selectflag = space.
APPEND ltab_fields.

*-- Fill values
select * from t001w.
ltab_values-feld = t001w-werks.
append ltab_values.
ltab_values-feld = t001w-name1.
append ltab_values.
endselect.

CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE'
EXPORTING
fieldname = 'WERKS'
tabname = 'T001W'
title_in_values_list = 'Select a value'
IMPORTING
select_value = lc_werks
TABLES
fields = ltab_fields
valuetab = ltab_values
EXCEPTIONS
field_not_in_ddic = 01
more_then_one_selectfield = 02
no_selectfield = 03.

Wednesday, February 11, 2009

SAP Tutorial - Part 8 - SAP Functions - Part 1

SAP Function

ABAP_DOCU_DOWNLOAD Download ABAP documentation in HTML format.

APPL_LOG_DELETE With this function module you delete logs in the database according to specified selection conditions

APPL_LOG_DISPLAY With this function module you can analyze logs in the database.

APPL_LOG_DISPLAY_INTERN With this function module you can analyze logs in local memory, e.g. when you have only collected log records at runtime and do not want to write to the database.

APPL_LOG_INIT This function module checks whether the specified object or sub-object exists and deletes all existing associated data in local memory.

APPL_LOG_READ_DB With this function module you read the log data in the database for an object or sub-object according to specified selection conditions.

APPL_LOG_READ_INTERN With this function module you read all log data whose log class has at least the specified value, from local memory, for the specified object or sub-object.

APPL_LOG_SET_OBJECT With this function module, you create a new object or sub-object for writing in local memory. With a flag you can control whether the APPL_LOG_WRITE_... messages are written in local memory or are output on the screen.

APPL_LOG_WRITE_DB With this function module you write all data for the specified object or sub-object in local memory to the database. If the log for the object or sub-object in question is new, the log number is returned to the calling program.

APPL_LOG_WRITE_HEADER With this function module, you write the log header data in local memory.

APPL_LOG_WRITE_LOG_PARAMETERS With this function module, you write the name of the log parameters and the associated values for the specified object or sub-object in local memory. If this function module is called repeatedly for the same object or sub-object, the existing parameters are updated accordingly. If you do not specify an object or sub-object with the call, the most recently used is assumed.

APPL_LOG_WRITE_MESSAGE_PARAMS With this function module you write a single message, with parameters, in local memory. Otherwise the function module works like APPL_LOG_WRITE_SINGLE_MESSAGE.

APPL_LOG_WRITE_MESSAGES With this function module you write one or more messages, without parameters, in local memory.

APPL_LOG_WRITE_SINGLE_MESSAGE With this function module you write a single message, without parameters, in local memory. If no header entry has yet been written for the object or sub-object, it is created. If you do not specify an object or sub-object with the call, the most recently used is assumed.

ARFC_GET_TID will return the IP address of the terminal in hex.


BAL_CNTL_CREATE Create Control for log display

BAL_CNTL_FREE Release Control

BAL_CNTL_REFRESH Put new data in log display

BAL_DB_DELETE Delete logs from the database

BAL_DB_DEQUEUE Unlock log

BAL_DB_ENQUEUE Lock log

BAL_DB_LOAD Load logs from the database

BAL_DB_LOAD Load log(s)

BAL_DB_SAVE Save logs in the database

BAL_DB_SAVE Save log(s)

BAL_DB_SAVE_PREPARE Prepare save

BAL_DB_SEARCH Find logs in the database

BAL_DSP_LOG_DISPLAY Display messages in memory

BAL_DSP_LOG_DISPLAY Display Log

BAL_DSP_LOG_PARAMETERS Either output extended long text or call a callback routine (based on the data in BAL_S_LOG-PARAMS)

BAL_DSP_LOG_TECHNICAL_DATA Output all log header data

BAL_DSP_MSG_LONGTEXT Display message long text

BAL_DSP_MSG_PARAMETERS Either output extended long text or call a callback routine (based on the data in BAL_S_MSG-PARAMS)

BAL_DSP_MSG_TECHNICAL_DATA Output technical data of a message such as work area, error number, etc.

BAL_DSP_OUTPUT_FREE End output

BAL_DSP_OUTPUT_INIT Initialize output

BAL_DSP_OUTPUT_SET_DATA Set dataset to be displayed

BAL_DSP_PROFILE_DETLEVEL_GET Message hierarchy in DETLEVEL

BAL_DSP_PROFILE_NO_TREE_GET Display without tree (fullscreen)

BAL_DSP_PROFILE_POPUP_GET Display without tree (popup)

BAL_DSP_PROFILE_SINGLE_LOG_GET Standard profile (SLG1) for one log

BAL_DSP_PROFILE_STANDARD_GET Standard profile (SLG1) for a lot of logs

BAL_GLB_AUTHORIZATION_GET Assign authorization

BAL_GLB_AUTHORIZATION_RESET Reset authorization

BAL_GLB_CONFIG_GET Read configuration

BAL_GLB_CONFIG_SET Set configuration

BAL_GLB_MEMORY_EXPORT Put function group memory in ABAP-MEMORY

BAL_GLB_MEMORY_IMPORT Get function group memory from ABAP-MEMORY

BAL_GLB_MEMORY_REFRESH (Partially) reset global memory

BAL_GLB_MEMORY_REFRESH (Partially) initialize memory

BAL_GLB_MSG_CURRENT_HANDLE_GET Get current message handle

BAL_GLB_MSG_DEFAULTS_GET Get message defaults

BAL_GLB_SEARCH_LOG Find logs in memory

BAL_GLB_SEARCH_MSG Find messages in memory

BAL_LOG_CREATE Create log with header data

BAL_LOG_CREATE Create log with header data

BAL_LOG_DELETE Delete log (from database also at Save)

BAL_LOG_EXIST Check existence of a log in memory

BAL_LOG_HDR_CHANGE Change log header

BAL_LOG_HDR_CHECK Check log header data for consistency

BAL_LOG_HDR_READ Read log header and other data

BAL_LOG_MSG_ADD Put message in log

BAL_LOG_MSG_ADD Put message in log

BAL_LOG_MSG_CHANGE Change message

BAL_LOG_MSG_CHANGE Change message

BAL_LOG_MSG_CHECK Check message data for consistency

BAL_LOG_MSG_CUMULATE Add message cumulated

BAL_LOG_MSG_DELETE Delete message

BAL_LOG_MSG_DELETE Delete message

BAL_LOG_MSG_EXIST Check existence of a message in memory

BAL_LOG_MSG_READ Read message and other data

BAL_LOG_MSG_REPLACE Replace last message

BAL_LOG_REFRESH Delete log from memory

BAL_LOG_REFRESH Delete log from memory

BAL_MSG_DISPLAY_ABAP Output message as ABAP-MESSAGE

BAL_OBJECT_SELECT Read Application Log objects table record

BAL_OBJECT_SUBOBJECT Check whether object and subobject exist and the combination is allowed

BAL_SUBOBJECT_SELECT Read subobject table record

BP_EVENT_RAISE Trigger an event from ABAP/4 program

BP_JOBLOG_READ Fetch job log executions

CHANGEDOCUMENT_READ_HEADERS Get the change document header for a sales document, and put the results in an internal table.

Example:

CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
objectclass = 'EINKBELEG'
objectid = l_objectid
username = space
TABLES
i_cdhdr = lt_cdhdr.

LOOP AT lt_cdhdr WHERE udate IN s_aedat.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING
changenumber = lt_cdhdr-changenr
TABLES
editpos = lt_editpos.

LOOP AT lt_editpos WHERE fname = 'LOEKZ'
AND f_new = 'L'.
p_desc = text-r01. " Cancel Contract
ENDLOOP.
ENDLOOP.

Monday, February 9, 2009

SAP BDC Interview Questions Answers Vol - 1

Difference between /N and /BEND ?
/BEND terminates the batch input processing and sets the session to be failed.
/N terminates the current batch input transaction.

SM35 transaction . How to automate BDC ?
After execution of batch input program , the session created is placed in the session queqe which can be viewed using SM35 transaction executing / Releseing the session will start the transfer of the data from the session into the database tables./

Update types in Call transaction method. What is the difference ?
At present with SAP we have only modes of updation
1.Synchronus Update.
2.Asynchronous Update.
There is no more Local Update.

What are the table controls in BDC ? What is the difference between bdc and lsmw ? What is the difference between bdc and rfc ?
BDC - Batch data communication in which there are 2 processes
1. in bound
2. outbound
RFC - remote fucntion call(or) calling

Data conversion experience?
DATA CONVERSIONS:
SAP HAS PROVIDED A TOOL NAMED LSMW WHICH CONVERTS THE LEGACY DATA INTO THE REQUIRED SAP FORMAT AND UPDATES THE DATABASE.

Open datasets, Read datasets ( Reading and writing data to files)?
Date Sets are nothing but files on Application Server,they can even be called as Sequential files.
Open Dataset
Is used to open required file on the application Server.
Read Dataset.
Is used to read the contents required file on the application Server.

How to do back ground processing in BDC Session method ?

goto sm35
select the option background process

Call transaction method, how to capture the errors ?
IN CALL TRANSACTION TO CAPTURE THE ERRORS WE SHOULD PERFORM THE FOLLOWING.
FIRST ME MUST DECLARE AN INTERNAL TABLE WITH THE STRUCTURE OF BDCMSGCOLL TABLE.
THEN WHILE WRITING THE CALL TRANSACTION STATEMENT WE SHOULD PUT THE 'E' MODE FOR CAPTURING ALL THE ERRORS.
THEN FINALLY THE CAPTURED ERRORS MUST TO SENT TO THE INTERNAL TABLE WHICH WE DECLARED IN THE BEGINNING WITH BDCMSGCOLL BY USING THE FUNCTION MODULE "FORMAT_MESSAGE"
AND THUS THE ERROR MESSAGES WILL BE SENT TO THE INTERNAL TABLE WHICH WE DECLARED AT THE BEGINNING.

How to load data from MS Excel sheet to SAP by using BDC method ?
KCD_EXCEL_OLE_TO_INT_CONVERT even takes care of blank cells and is available in older versions of SAP

* Add values to internal table
SORT t_cells BY row col.
LOOP AT t_cells INTO wa_cells.
MOVE : wa_cells-col TO l_index.
ASSIGN COMPONENT l_index OF STRUCTURE itab TO .
MOVE : wa_cells-value TO .
AT END OF row.
APPEND itab
CLEAR itab.
ENDAT.
ENDLOOP.

What is the difference between call transaction and session method?
Session method: The records are not added to the database until the session is processed. sy-subrc is not returned. Error logs are created for error records. Updation in database table is always Synchronous.

Call Transaction method: The records are immediately added to the database table. sy-subrc is returned to 0 if successful. Error logs are not created and hence the errors need to be handled explicitly. Updation in database table is either Synchronous or Asynchronous.

SM35 transaction . How to automate BDC ?
sm35 is used to play girls for better nightfalls.

What is the difference between Upload and WS_Upload ?
The diffrence between WS_Upload and Upload is when you use function Upload it prompts for a dailog box where in you need to key in the file location.Where as in case of WS_Upload you specify the file location in the function input parameters itself

If I want to execute a program only in background not in foreground is there any option for this?
The sm37 transaction can be used for running a program in the background. Also in the session method while processing the session you can specify the processing type as background or foreground.

What kind of BDC programs are written ?

There are five types of BDC methods available. They are 1.Batch input session 2.Call Transaction 3.Recording 4.Direct Input and 5.LSMW

How to read files and process BDCs automatically?
To read file from Presentation server use Upload or GUI Upload or WS upload and to read file from Application server use Opend Dataset,Read dataset and Close dataset

In session method sy-subrc is not returned whereas in call transaction method sy-subrc is returned . what does it mean?
While to transfer the data from the through if any errors occurs until the errors are the complete the data is not transfer to the SAP system.
the system compulsory shows the errors. that errors are stored into the error logs (Transaction is SM35).
so the session method should not return any value.
In call transaction method data is directly pass to the SAP system.
So its compulsory return the value.
Because of the call transaction is the function.
A function should return the value mandatory.

Recording Function
With recording, user can avoid manual search for fields and tables required in a program including screen numbers. SHDB is the transaction code.

BDC vs Direct Loads( have you used direct loads on SAP tables )
Direct loads is 5 times faster than uploading by normal BDC method. but some times while updating the database referential integrity is violated.

Have you set up a back ground job ? How to create a background job without a variant ?
Yes, user can create background job scheduling in two ways.

1. By calling the executable program RSBDCSUB
2. Transaction Code SM37

Friday, February 6, 2009

SAP Tutorial - Part 7 - SAP Tables - Part 2

Human Resources Tables/Infotypes

CATSCO Cross-Application Time Sheet (CATS)- Transfer to CO

CATSDB CATS- Database Table for Time Sheet

CATSHR Cross-Application Time Sheet (CATS)- Transfer to HR

CATSMM Cross-Application Time Sheet (CATS)- Transfer to MM

CATSPM Cross-Application Time Sheet (CATS)- Transfer to PM/CS

CATSPS Cross-Application Time Sheet (CATS)- Transfer to PS

CSKS Cost Center Master Data

CSKT Cost Center Texts

PCL1 HR Cluster 1

PCL2 HR Cluster 2

T001P Personnel Area/Subarea

T001T Company code-dependent texts

T500L Personnel Country Grouping

T500P Personnel Areas

T502T Marital Status Designators

T503 Employee Group/Subgroup

T503T Employee Subgroup Names

T508A Work Schedule Rules

T510 Pay Scale Groups

T510A Pay Scale Types

T510F Assign Pay Scale --- Currency

T510W Pay Scale - Period Parameter Assignment

T511 Wage Types

T512T Wage Type Texts

T512W Wage Type Valuation

T512Z Permissibility of Wage Types per Infotype

T527X Organizational Units

T528T Position Texts

T529T Personnel Action Texts

T529U Status Values

T530 Reasons for Actions

T530T Reason for Action Texts

T549A Payroll Accounting Areas

T549Q Payroll Periods

T550A Daily Work Schedule

T550S Daily Work Schedule Texts

T551S Period Work Schedule Texts

T552A Monthly Work Schedule

T554C Absence Valuation

T554S Attendance and Absence Types

T554T Attendance and Absence Texts

T558B Payroll Account Transfer- Payroll Periods

T569V Control Records

T5K8C Transfer ext. payroll results into Canadian specific tables

T74FA Benefit insurance plan

T74FC Benefits Insurance Coverage Rule

HRP1000 Infotype 1000 DB Table (Objects)

HRP1001 Infotype 1001 DB Table (Relationships)

HRP1002 Infotype 1002 DB Table

HRP1003 Infotype 1003 DB Table

HRP1004 Infotype 1004 DB table



Project Systems Tables

IMAK Appropriation requests - general data

IMAV Appropriation request variant

IMPR Investment Program Positions

IMPU Texts for cap. inv. program positions

IMTP Investment programs

IMZO Assignment Table- CO Object - Capital Investment Prog.Pos.

PMCO Cost structure of maintenance order

PRHI Work Breakdown Structure, Edges (Hierarchy Pointer)

PROJ Project definition

PRPS WBS (Work Breakdown Structure) Element Master Data



Production Planning Tables

MAST Material BOM

STKO BOM Header

STPO BOM Positions (detail)

MAPL Assignment of Task Lists to Materials

PLKO Routing Group Header

PLSO Routing Group Sequence

PLPO Routing Group Operations

AFKO Production Order Header

AFPO Production Order Position (details)



System Tables

ADCP Person/Address assignment (central address administration)

ADIRACCESS Table to store keys for TADIR objects

ADR2 Telephone numbers (central address admin.)

ADRP Persons (central address administration)

APQD DATA DEFINITION Queue

APQI Queue info definition

D010SINF ABAP- Information about ABAP program source code

E071 Change and Transport System- Object Entries of Requests/Tasks

E07T Change and Transport System- Short Texts for Requests/Tasks

ENLFDIR Additional Attributes for Function Modules

INDX System table INDX

NAST Message Status

STXH STXD SAPscript text file header

T005 Countries

T005S Taxes- Region (Province) Key

T005U Taxes- Region Key- Texts

T006 Units of Measurement

T015M Names of the months

T247 Month name and short text

T777A Building Addresses

TADIR Directory of Repository Objects

TBTCO Job status overview table

TBTCP Batch job step overview

TFDIR Function Module

TFTIT Function Module Short Text

TSP03L Spool- Long device names

TSTC SAP Transaction Codes

TSTCT Transaction Code Texts

TUTYP User Types in Current Price List in SAP System

TUZUS Special versions

TVARV Table of variables in selection criteria

TVDIR View Directory

US930 Data Relevant to Measurement for User Master Record

USR01 User master record (runtime data)

USR02 Logon data

USR04 User master authorizations

USR06 Additional Data per User

USR14 Surchargeable Language Versions per User

USR21 Assign user name address key

ARCH_OBJ Objects for archiving and reorganization

BTCUED Description of user event IDs for background processing

BTXSUPB BSI- Upgrade-Information

CCCFLOW Client Copy Control Flow

DBSTATC DB Optimizer Control (Statistics Creation)

DEVACCESS Table for development users

DEVL OBSOLETE- Do not use (See TCETRAL)

E070 Change and Transport System- Header of Requests/Tasks

E070L CTS- Index for Assigning Numbers to Requests/Tasks

INSTVERS Documentation for installation Status and History

PAT03 Patch Directory

SDBAC DBA Action Table

T100 Messages

TAPLT Program Application Long Texts

TASYS OBSOLETE- Do not use, see TCEDELI

TDEVC Development Classes

TEMSE Temp Sequential table.

TLOCK Change and Transport System- Lock Table

TNAPR Processing programs for output. Can be very handy to find the print program for a SAPScript.

TNAST Printed output control table

TPFET Table of profile parameters

TPFHT Profile header, administration data for profiles in DB

TPROT Table contains all DD tables to be logged

TRBAT Communication Table for Transport Control

TRDIRT Title texts for programs in TRDIR

TRESN Table of Naming Conventions in ABAP Workbench

TRJOB Job ID for Coordinating Batch-ABAP/UNIX for Transports

TSP03C Spool- Device Description Extension

TST03 TemSe data

TSYST OBSOLETE- Do not use (see TCESYST)

TWSYS OBSOLETE- Do not use (See TCETRAL)

USOBT Relation transaction - authorization object

USR03 User address data

USR05 User Master Parameter ID

USR12 User master authorization values

USR40 Table for illegal passwords

USR41 User master- Additional data

UST04 User masters

VARIT Variant texts

VARID Variant directory

D010TAB Table for Use Report---Tables

DD02L SAP tables

DD02T R/3 DD- SAP table texts

DD03L Table Fields

DD03T DD- Texts for fields (language dependent)

EDIDC IDOC Control Records

EDIDOT Short description of IDoc types

EDID2 IDOC segments (version 3.1)

EDID4 IDOC segments (version 4.6)

EDSEA EDI- Table of all segments of current release

VRSX2 Central Table for Version Management (Report Source)

TSE05 Can add parameters to the INSERT COMMAND (IC). Then, when you insert command, your info appears in the editor. Useful for comment blocks, common section of code, etc.

CDPOS Change document items

CDHDR Change document header

T529A governs the foreground sequence of infotypes the system will use to prompt the user during online and batch processing. You will have to code your BDC to follow that sequence of creating infotypes.

T588Z governs the dynamic event processing that will only take place during online user inputs. For BDC's you will have to create separate BDC's to handle any infotypes that are inserted dynamically by this table.

T588M Infotype Screen Control

Wednesday, February 4, 2009

SAP Tutorial - Part 6 - SAP Tables - Part 1

Sales and Distribution Tables

KONV Conditions for Transaction Data

KONP Conditions for Items

LIKP Delivery Header Data

LIPS Delivery: Item data

VBAK Sales Document: Header Data

VBAP Sales Document: Item Data

VBBE Sales Requirements: Individual Records

VBEH Schedule line history

VBEP Sales Document: Schedule Line Data

VBFA Sales Document Flow

VBLB Sales document: Release order data

VBLK SD Document: Delivery Note Header

VBPA Sales Document: Partner

VBRK Billing: Header Data

VBRP Billing: Item Data

VBUK Sales Document: Header Status and Administrative Data

VBUP Sales Document: Item Status

VEKP Handling Unit - Header Table

VEPO Packing: Handling Unit Item (Contents)

VEPVG Delivery Due Index


Materials Management Tables

EINA Purchasing Info Record- General Data

EINE Purchasing Info Record- Purchasing Organization Data

MAKT Material Descriptions

MARA General Material Data

MARC Plant Data for Material

MARD Storage Location Data for Material

MAST Material to BOM Link

MBEW Material Valuation

MKPF Header- Material Document

MSEG Document Segment- Material

MVER Material Consumption

MVKE Sales Data for materials

RKPF Document Header- Reservation

T023 Mat. groups

T024 Purchasing Groups

T156 Movement Type

T157H Help Texts for Movement Types



Purchasing Tables

A501 Plant/Material

EBAN Purchase Requisition

EBKN Purchase Requisition Account Assignment

EKAB Release Documentation

EKBE History per Purchasing Document

EKET Scheduling Agreement Schedule Lines

EKKN Account Assignment in Purchasing Document

EKKO Purchasing Document Header

EKPO Purchasing Document Item

IKPF Header- Physical Inventory Document

ISEG Physical Inventory Document Items

LFA1 Vendor Master (General section)

LFB1 Vendor Master (Company Code)

NRIV Number range intervals

RESB Reservation/dependent requirements

T161T Texts for Purchasing Document Types



Plant Maintenance/Sales and Distribution Tables

AFAB Network - Relationships

AFFH PRT assignment data for the work order

AFFL Work order sequence

AFFT Order - Process Instructions

AFFV Order - Process Instruction Values

AFFW Goods movements with errors from confirmations

AFIH Maintenance order header

AFKO Order header data PP orders

AFPO Order item

AFRC Incorrect cost calculations from confirmations

AFRD Default values for collective confirmation

AFRH Header information for confirmation pool

AFRU Order completion confirmations

AFRV Confirmations pool

AFVC Operation within an order

AFVU DB structure of the user fields of the operation

AFVV DB structure of the quantities/dates/values in the operation

AFWI Subsequently posted goods movements for confirmations

AUFK Order master data

AUFM Goods movements for order

BGMK Master Warranty Header

BGMP Master Warranty Item

BGMS Master Warranty Text Item

BGMT Master Warranty Text

BGMZ Warranty Counter

CRHD Work Center Header

CRTX Text for the Work Center or Production Resource/Tool

EQKT Equipment Short Texts

EQST Equipment to BOM Link

EQUI Equipment master data

EQUZ Equipment time segment

HIKO Order master data history

IFLO Table generated for View IFLO

IFLOT Functional Location (Table)

IFLOTX Functional Location- Short Texts

IHGNS Permit Segment for Plant Maintenance

IHPA Plant Maintenance- Partners

IHSG Object-Related Permits in Plant Maintenance

ILOA PM Object Location and Account Assignment

IMPTT Measuring Point (Table)

IMRG Measurement Document

KAKO Capacity Header Segment

KONP Conditions (Item)

KONV Conditions (Transaction Data)

OBJK Plant Maintenance Object List

QMEL Quality Notification

QMFE Quality notification - items

QMIH Quality message - maintenance data excerpt

QMMA Quality notification - activities

QMSM Quality notification - tasks

QMUR Quality notification - causes

T001 Company Codes

T001L Storage Locations

T001W Plants/Branches

T077D Customer account groups

T003O Order Types

T352R Maintenance revisions

T353I_T Maintenance activity type description

T356 Priorities

T357G Permits

T357G_T Text for Table 357GT

T370A Activity Category for PM Lists

TINCT Customers- Incoterms- Texts

TVKO Organizational Unit- Sales Organizations

TVKOS Organizational Unit- Divisions per Sales Organization

TVKOV Org. Unit- Distribution Channels per Sales Organization

TVTA Organizational Unit- Sales Area(s)

VIAUFKST Generated Table for View VIAUFKST



Finance Tables

AGKO Cleared Accounts

ANAR Asset Types

ANAT Asset type text

ANEK Document Header Asset Posting

ANEP Asset Line Items

ANEV Asset downpymt settlement

ANKT Asset classes- Description

ANLA Asset Master Record Segment

ANLB Depreciation terms

ANLC Asset Value Fields

ANLH Main asset number

AT02T Transaction Activity Category- Description

AT02A Transaction Code for Menu TIMN

AT10 Transaction type

AT10T Name of Transaction Type

BKDF Document Header Supplement for Recurring Entry

BKORM Accounting Correspondence Requests

BKPF Accounting Document Header

BLPK Document log header

BLPP Document log item

BLPR Document Log Index and Planned Order (Backflush)

BNKA Bank master record

BP000 Business Partner Master (General Data)

BPBK Doc.Header Controlling Obj.

BPEG Line Item Total Values Controlling Obj.

BPEJ Line Item Annual Values Controlling Obj.

BPEP Line Item Period Values Controlling Obj.

BPGE Totals Record for Total Value Controlling obj.

BPJA Totals Record for Annual Total Controlling Obj.

BSAD Accounting- Secondary Index for Customers (Cleared Items)

BSAK Accounting- Secondary Index for Vendors (Cleared Items)

BSAS Accounting- Secondary Index for G/L Accounts (Cleared Items)

BSEC One-Time Account Data Document Segment

BSEG Accounting Document Segment

BSID Accounting- Secondary Index for Customers

BSIK Accounting- Secondary Index for Vendors

BSIM Secondary Index, Documents for Material

BSIS Accounting- Secondary Index for G/L Accounts

CEPC Profit Center Master Data Table

CEPCT Texts for Profit Center Master Data

COBRA Settlement Rule for Order Settlement

COBRB Distribution Rules Settlement Rule Order Settlement

COKA CO Object- Control Data for Cost Elements

COSP CO Object- Cost Totals for External Postings

COSS CO Object- Cost Totals for Internal Postings

CRCO Assignment of Work Center to Cost Center

CSKA Cost Elements (Data Dependent on Chart of Accounts)

CSKB Cost Elements (Data Dependent on Controlling Area)

CSLA Activity master

FEBEP Electronic Bank Statement Line Items

FPLA Billing Plan

FPLT Billing Plan- Dates

GLPCT EC-PCA- Totals Table

KNA1 General Data in Customer Master

KOMK Pricing Communication Header

MAHNV Management Records for the Dunning Program

REGUT TemSe - Administration Data

SKA1 G/L Account Master (Chart of Accounts)

SKAT G/L Account Master Record (Chart of Accounts- Description)

SKB1 G/L account master (company code)

T003T Document Type Texts

T007S Tax Code Names

T087J Text

TAPRFT Text tab. for investment profile

TKA01 Controlling Areas

TKA09 Basic Settings for Versions

TKVS CO Versions

TZB0T Flow types text table

TZPAT Financial Assets Management product type texts

VBSEGS Document Segment for G/L Accounts Document Parking

VTBFHA Transaction

VTBFHAPO Transaction Flow

VTBFHAZU Transaction Activity

VTBFINKO Transaction Condition

VTIDERI Master Data Listed Options and Futures

VTIFHA Underlying transaction

VTIFHAPO Underlying transaction flows

VTIFHAZU Underlying transaction status table

VTIOF Options Additional Data

VWPANLA Asset master for securities

Monday, February 2, 2009

SAP Tutorial - Part 5 - SAP User Interface

SAP User Interface

The SAP R/3 system presents a Windows interface with several of the familiar Windows functions for screen manipulation. The apparent simplicity of the interface hides the power of the menus residing within the menu bar at the top of the screen. The initial screen shows a menu bar with the following selections. The first level sub menus are listed below to give you an idea of where to start:

Office

Workplace
Telephone Integration
Appointment Calendar
Room Reservations
Start Workflow
Business Documents


Logistics

Materials Management
Sales/distribution
Logistics Execution
Production
Production-process
Plant Maintenance
Customer Service
Quality Management
Logistics controlling
Project Management
Environment Health & Safety
Central Functions


Accounting

Financial Accounting
Treasury
Controlling
Enterprise Control
Investment Management
Project management
Real Estate


Human Resources

Managers Desktop
Personnel admin
Time management
Payroll
Training and Event Management
Organizational Management
Travel
Information system


Information Systems

Executive Information Systems
Logistics
Accounting
Human Resources
Project System
Ad Hoc Reports
General Report System


Tools

ABAP/4 Workbench
Accelerated SAP
Administration
ALE
Business Communication
Business Documents
Business Framework
Business Workflow
CCMS
Web Development
SAP Script
Hypertext
Find