09-07-2007 7:09 AM
hiii all,
plz tell me hw to handle
!) multiple applications in SESSION method & in which cases we required it. (plz gv me step-by-step procedure to achieve it)?
2) And what is the structure of FIELD_CATALOG_MERGE?
3) can anyone tell me abt SD & MM business process flow.?
thank u in advance.
good answers will be rewarded with points
sweta
09-07-2007 7:52 AM
09-07-2007 10:20 AM
<b>SD</b>
Sales Documents
You create a sales document to enter information about different sales transactions. R/3 provides a number
of predefined sales document types. However , these can be customized to suit your company's needs when
R/3 is installed.
Some examples of sales documents include:
sales queries
sales orders
outline agreements
complaints
You use sales queries to enter information about potential sales into R/3.Types of sales query documents
include:
inquiries
quotations
free-of-charge deliveries
An inquiry is used to record any general queries a customer may have about goods or services they
are thinking of buying from your company. An inquiry is one of the first possible documents you can
create in the customer order management cycle. An example of the type of information contained in an
inquiry is whether your company stocks a certain product line. Along with entering general customer
queries, you can use inquiries to record the goods or services that a customer is interested in. And you
can enter descriptions of goods or services that your company should research in order to answer customer
queries. You can carry out automatic pricing for any goods or services you enter in an inquiry. This will
enter the price of goods or services into the inquiry for you. You can also check whether any goods you
entered in the inquiry are available in your company's warehouse. The order probability function enables
you to determine the likelihood that a customer will buy from you. To increase the probability of a sale,
you can offer the customer alternative goods and services.
Quotations are sales query documents that you create when a customer requests specific information
about a product. For example, you can use a quotation if a customer makes a query regarding how much
goods or services cost or you can use a query if a customer asks when goods will be available for shipping.
You can create quotations from scratch or you can create them by copying inquiries. If a customer is
interested in the products or services after they have made an inquiry, you can provide a quotation based
on the original inquiry. R/3 allows you to copy the information directly from an inquiry to a quotation.
Let's say an inquiry was created when a customer inquired whether your company, could manufacture
twenty motorcycles. Assume a quotation was created by copying this inquiry when the customer called
back to inquire how much twenty motorcycles would cost. You can use quotations to enter information and
descriptions for goods and services that are to be researched. You can also use them to carry out automatic
pricing and to check goods availability. You can use quotations to calculate the probability that a customer
will buy the goods or services entered on a quotation. This function is called order probability.You can
also use quotations to enter details about alternative goods or services. These are goods or services that a
customer did not inquire about but that you think they will consider purchasing. Once you have created a
quotation for a query in R/3, you send the quotation to the customer who made the query. The quotation
represents a binding offer made to the customer that includes quantity and cost details.
You create a free of charge delivery when you send free samples of any goods that your company
produces to customers. These contain information about the goods that are delivered but they don't
include the corresponding pricing information for them.
Let's look at the sales orders that exist in R/3.You create a sales order when a customer has ordered
goods or services from your company. They are a part of the customer order management cycle.
You can carry out automatic pricing in sales orders to enter the price of goods or services.
R/3 will also run a credit check on the customer to see if they will be exceeding their credit limit.
You can also check whether ordered goods will be available in your company's warehouse for delivery.
Examples of types of sales order include
standard orders
consignment orders
cash orders
rush orders
You create standard orders for goods and services that will be delivered or rendered according to
the standard R/3 sales cycle. This means that goods are ordered, picked from the warehouse, and
then shipped before customers are billed for them. Likewise, services are rendered before customers
are billed for them.
Your company may store its goods in its customers' warehouses. You create a
consignment order when a customer is ready to retrieve stock from the warehouse.
SAP can propose the most suitable stock to retrieve, including third-party stock.
A consigment order is like a standard sales order for goods but it doesn't have any delivery
information.
You create cash orders and rush orders for the sale of goods only.
You create a cash order when a customer picks up and pays for a delivery as soon
as it is ordered. And you create a rush order when the customer picks up the goods on the
same day as the order is placed. In this case, the invoice is created later.
You can arrange to deliver goods or render services in installments. To do this, you create an
outline agreement. Examples of some types of outline agreement include :
quantity and value contracts
master contracts
scheduling agreements
service contracts
You create a quantity contract if a customer has agreed to order a certain quantity
of goods from your company during a specified period.
And you create a value contract if a customer has agreed to order goods of a certain
cumulative value from your company during a specified period.
Quantity and value contracts do not include delivery dates, so releases are made
using a sales order.
You can unite multiple contracts in a single master contract.
Let's say you create a quantity contract because a customer has agreed to order
500 engines in the first six months of the current year. If the customer orders 100 of these
engines in January, you create a sales order called a release order.You refer to a quantity
contract in a release order. So you refer to the quantity contract created for the 500 engines in
each release order created for these engines. R/3 will then update the quantity contract
automatically so it contains the correct number of remaining engines to be ordered.
Scheduling agreements specify the installments in which goods will be delivered
to a customer. They include the quantity of a product that will be delivered in each
installment. And they include the delivery date of each installment. You process a delivery
for each installment contained in the scheduling agreement in the same way that you process
a delivery for a regular sales order.No sales documents, such as release orders, are created before
the products included on a scheduling agreement are processed for delivery.
You create a service contract if a customer requests a service over a particular
period of time.For example, you could create a service contract if a customer ordered five
one-hour maintenance checks from your company's motorcycle repair department.
You create complaint sales documents if there has been a fault with any goods that
have been delivered, or with any services rendered, by your company.
For example, you create complaint sales documents if customers have been billed
incorrectly for an item or service, or if goods are faulty.
Different types of complaint sales document include
returns
credit memo requests
debit memo requests
You create a returns document if a customer returns goods they have purchased from
you because they are not satisfied with them. You can create returns from scratch or you can
create them by copying the sales order that was originally created for the returned delivery.
A returns document records that you expect stock to be returned to your warehouse.
You can create one or more credit memo requests if a customer has been overcharged
for a quantity of goods or services. You can also create a credit memo request if goods were
damaged during transit and you want to credit the customer for the goods damaged.
When you create a credit memo request, your Accounting department reviews it to
confirm that it can be justified. If the credit memo request is approved, the Accounting department
creates a credit memo based on the request. You can create credit memo requests by copying other
sales documents such as the sales order where the overcharge occurred.
You create debit memo requests when customers have been undercharged for products
or services.Your companys Accounting department can then create an invoice to bill the
undercharged customer.
<b>MM</b>
PR >Release the PR>RFQ>Quotation>Quotation Comparison>PO>Release the PO>GR>Invoice Verification
MM Process flow:
Process Flow
The typical procurement cycle for a service or material consists of the following phases:
1. Determination of Requirements
Materials requirements are identified either in the user departments or via materials planning and control. (This can cover both MRP proper and the demand-based approach to inventory control. The regular checking of stock levels of materials defined by master records, use of the order-point method, and forecasting on the basis of past usage are important aspects of the latter.) You can enter purchase requisitions yourself, or they can be generated automatically by the materials planning and control system.
2. Source Determination
The Purchasing component helps you identify potential sources of supply based on past orders and existing longer-term purchase agreements. This speeds the process of creating requests for quotation (RFQs), which can be sent to vendors electronically via SAP EDI, if desired.
3. Vendor Selection and Comparison of Quotations
The system is capable of simulating pricing scenarios, allowing you to compare a number of different quotations. Rejection letters can be sent automatically.
4. Purchase Order Processing
The Purchasing system adopts information from the requisition and the quotation to help you create a purchase order. As with purchase requisitions, you can generate Pos yourself or have the system generate them automatically. Vendor scheduling agreements and contracts (in the SAP System, types of longer-term purchase agreement) are also supported.
5. Purchase Order Follow-Up
The system checks the reminder periods you have specified and - if necessary - automatically prints reminders or expediters at the predefined intervals. It also provides you with an up-to-date status of all purchase requisitions, quotations, and purchase orders.
6. Goods Receiving and Inventory Management
Goods Receiving personnel can confirm the receipt of goods simply by entering the Po number. By specifying permissible tolerances, buyers can limit over- and under deliveries of ordered goods.
7. Invoice Verification
The system supports the checking and matching of invoices. The accounts payable clerk is notified of quantity and price variances because the system has access to PO and goods receipt data. This speeds the process of auditing and clearing invoices for payment.
Pur info record is nothing but a master data like thing which will be maintained for different materials to determine the prices etc.It Specifies the number that uniquely identifies a record.
For Example: an info record is based on Plant Vendor and Material
Based on these three the Material Prices will be calculated
for different combinations different values are taken into consideration.
During pricing it brings these values automatically based on this info record.
Use ME11 Tcode to create this record.
Common Tables used by SAP MM
Below are few important Common Tables used in Materials Management Modules:
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
MOFF Lists what views have not been created
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
Tcodes:
RFQ to Vendor - ME41
Raising Quotation - ME47
Comparison of Price - ME49
Creation of PO - ME21N
Goods Receipt - MIGO
Invoice (Bill PAssing) - MIRO
Goods Issue - MB1A
Physical Inventory - MI01( Create doc)
MI04 (Enter Count)
MI07 (Post)
<b>call session method in BDC</b>
In this method you transfer data from internal table to database table through sessions.
In this method, an ABAP/4 program reads the external data that is to be entered in the SAP System and stores the data in session. A session stores the actions that are required to enter your data using normal SAP transaction i.e., Data is transferred to session which in turn transfers data to database table.
Session is intermediate step between internal table and database table. Data along with its action is stored in session i.e., data for screen fields, to which screen it is passed, the program name behind it, and how the next screen is processed.
When the program has finished generating the session, you can run the session to execute the SAP transactions in it. You can either explicitly start and monitor a session or have the session run in the background processing system.
Unless session is processed, the data is not transferred to database table.
BDC_OPEN_GROUP
You create the session through program by BDC_OPEN_GROUP function.
Parameters to this function are:
User Name: User name
Group: Name of the session
Lock Date: The date on which you want to process the session.
Keep: This parameter is passed as X when you want to retain session after
processing it or to delete it after processing.
BDC_INSERT
This function creates the session & data is transferred to Session.
Parameters to this function are:
Tcode: Transaction Name
Dynprotab: BDC Data
BDC_CLOSE_GROUP
This function closes the BDC Group. No Parameters.
Some additional information for session processing
When the session is generated using the KEEP option within the BDC_OPEN_GROUP, the system always keeps the sessions in the queue, whether it has been processed successfully or not.
However, if the session is processed, you have to delete it manually. When session processing is completed successfully while KEEP option was not set, it will be removed automatically from the session queue. Log is not removed for that session.
If the batch-input session is terminated with errors, then it appears in the list of INCORRECT session and it can be processed again. To correct incorrect session, you can analyze the session. The Analysis function allows to determine which screen and value has produced the error. If you find small errors in data, you can correct them interactively, otherwise you need to modify batch input program, which has generated the session or many times even the data file.
sample program
REPORT ZSAG_BS .
********TABLES
TABLES : MARA,MAKT .
*******INTERNAL TABLE
DATA : BEGIN OF ITAB OCCURS 0 ,
MATNR LIKE MARA-MATNR,
MBRSH LIKE MARA-MBRSH,
MTART LIKE MARA-MTART ,
MAKTX LIKE MAKT-MAKTX,
MEINS LIKE MARA-MEINS ,
END OF ITAB.
DATA : BDCTAB LIKE BDCDATA OCCURS 0 WITH HEADER LINE .
********WS_UPLOAD
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
FILENAME = 'C:\DAT1.TXT'
FILETYPE = 'DAT'
TABLES
DATA_TAB = ITAB .
****************BDC_OPEN_GROUP
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = 'CHANDU'
KEEP = 'X'
USER = SY-UNAME
PROG = SY-CPROG .
LOOP AT ITAB .
REFRESH BDCTAB .
*********FIRST SCREEN
BDCTAB-PROGRAM = 'SAPLMGMM'.
BDCTAB-DYNPRO = '0060'.
BDCTAB-DYNBEGIN = 'X' .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'RMMG1-MATNR' .
BDCTAB-FVAL = ITAB-MATNR .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'RMMG1-MBRSH' .
BDCTAB-FVAL = ITAB-MBRSH .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'RMMG1-MTART' .
BDCTAB-FVAL = ITAB-MTART .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'BDC_OKCODE'.
BDCTAB-FVAL = '=AUSW' .
APPEND BDCTAB .
CLEAR BDCTAB.
********SECOND SCREEN
BDCTAB-PROGRAM = 'SAPLMGMM'.
BDCTAB-DYNPRO = '0070'.
BDCTAB-DYNBEGIN = 'X' .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'MSICHTAUSW-KZSEL(01)' .
BDCTAB-FVAL = 'X' .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'BDC_OKCODE'.
BDCTAB-FVAL = '=ENTR' .
APPEND BDCTAB .
CLEAR BDCTAB.
***************THIRD SCREEN
BDCTAB-PROGRAM = 'SAPLMGMM'.
BDCTAB-DYNPRO = '4004'.
BDCTAB-DYNBEGIN = 'X' .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'MAKT-MAKTX' .
BDCTAB-FVAL = ITAB-MAKTX.
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'MARA-MEINS'.
BDCTAB-FVAL = ITAB-MEINS .
APPEND BDCTAB .
CLEAR BDCTAB.
BDCTAB-FNAM = 'BDC_OKCODE'.
BDCTAB-FVAL = '=BU' .
APPEND BDCTAB .
CLEAR BDCTAB.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'MM01'
TABLES
DYNPROTAB = BDCTAB .
ENDLOOP .
CALL FUNCTION 'BDC_CLOSE_GROUP' .
<b>
Session method is mainly used in cases when the amount of data is very large and the data needs to be loaded frequently (transaction data).</b>
<b>REUSE_ALV_FIELDCATALOG_MERGE</b> is a function module that can be used to help you fill in the values in the field catalog internal table. You can call this function and give it the name of a dictionary structure or a structure defined in your program code and it will add the details for each field in the structure to the field catalog internal table.
regards,
srinivas
09-08-2007 8:18 AM
hii srinivas
i thank u for these good answers,but can u make me clear abt :
hw to maintain multiple applications in SESSION method & in which cases we required it.like(Xk01& ME21N) i have to maintain both at -a-time how?
good answers will rewarded
warm regards,
sweta