Showing posts with label SAP. Show all posts
Showing posts with label SAP. Show all posts

Tuesday, 15 March 2016

Logging of table data changes

SAP provides mechanism to log the changes in any object. For some objects we CDHDR and CDPOS table. In the same way, if one wants to log the changes done in table data like when data was created, when changed and when deleted, SAP has a mechanism for this also. For this we will be taking help of table DBTABLOG and a t-code SCU3.

Now what we need to do when creating the table? I'll create a demo table and log it's data change. So in the process, I am creating a table named ZTEST_LOG. 
 Now while doing the technical settings, we have to check the option for table logging.
 Now we have to create table maintenance generator for this table. While creating table maintenance generator, authorization object S_TABU_DIS comes by-default. Now one thing to remember here. Without creating table maintenance generator also we can create the entries in table. We will b able to see them in table DBTABLOG. But t-code SCU3 won't show us anything and it will give us error for assigning the table in right authorization group. The reason for this error is that table maintenance generator is missing. So always maintain table maintenance generator.


Now we will be first seeing the table content of DBTABLOG, so that we can differentiate later on.

 
We will create 3 entries in table. 

and then we will again check the DBTABLOG table.

 First entry shows the start of change and so the last entry for the end of change. In between there are 3 entries, each for 3 rows we have created. We can click on an entry and can look inside for other fields also.
 Logkey field is the concatenation of the client where data is created and the primary key field's value. It stores the date, time and the user who have done the changes.

Now we will go into T-code SCU3 and will see how it looks. Go into SCU3 and click on "Evaluation of change log". Below screen will come and give the table name and appropriate date and time. Choose Table option in "Evaluation for" box.
 
Now we will go and change one existing entry in table. So table content now looks like below.


Check what table DBTABLOG now has in it.

Again you can see one entry marks for begging of changes and one for end of changes. And one entry in between for the actual data change. If we go inside, again it shows us in which particular row we have done the changes with the field LOGKEY.


Check in t-code SCU3 also. This time it shows the key field of the row which has been changed and also which field particularly has been changed from which value to which value.


So this way you can completely track the table data changes. Table DBTABLOG tells you about the data change done when, by whom and in which client. While as T-code SCU3 tell you exactly what has been changed. What was the old value and what was the new value.

Happy Learning :)

Sunday, 24 January 2016

Basics of ABAP Webdynpro: Getting familiar with Webdynpro jargons

This is the first post of a series on ABAP Webdynpro basics. Prior to actually starting the WD part, this post is about the terms we commonly use while working in WD. Going through this post will make you comfortable reading the further post on this series. So here, let’s start..

Webdynpro Component: The object which we create using SE80 is WD component. While creating WD component, we have to give one view and one window’s name of this component. A WD component can host any number of views and windows.

Webdynpro application: When we are done with the creation of WD component, at last we have to create the WD application. While creating application, we have to give which window out of many existing; we want to be displayed while opening the application. This WD application will have a URL in it, which we will give to our customer for using the WD application.

View: WD component can have any number of views. View means the screen or pages which we want to see in WD application. All the UI designing part we do here in view.

Window: Again a WD component can have any number of windows. Windows basically contain the views. Each and every view has to be attached to some window in order to get displayed in the WD application. A window can have multiple views. So we have to make a view as default view of the window. So in case this window is going to be the WD application’s opening window, you can guess which view, out of many views which window holds, will going to be opening view.

Inbound/Outbound Plug: Now we have a window and this window has multiple views. We want to navigate from view1 to view2. Here plugs will come into picture. View1 will have the outbound plug and view 1 will have the inbound plug. And in window we will attach the outbound plug with the inbound one. Whenever we want the navigation, we will simply fire the outbound plug.

Context node: Context nodes are the entities which will actually be attached with the UI elements in order to be displayed. Of course we will make the local variable also, but ultimately we have to bind those variables to context node and context node will in turn be bind to UI elements.

To be continued…
Happy Learning :)

Tuesday, 12 January 2016

SAP SD Process flow


In our last post we discussed about the MM process flow. In this post we will discuss about the SD process flow.

Source: http://help.sap.com/

Inquiry (Tcode for creation VA11,VA12,VA13. Tables VBAK,VBAP)
The inquiry is therefore a request from the customer for you to provide him with a sales quotation.

Quotation (Tcode for creation VA21,VA22,VA23. Tables VBAK,VBAP)
A quotation presents the customer with a legally binding offer for delivering a product or providing a service within certain fixed conditions.

Purchase Order (Tcode for creation ME21,ME22,ME23. Tables EKKO,EKPO)
A purchase requisition was created from the sales order. In purchasing, a purchase order is created based on this requisition.

Sales Order (Tcode for creation VA01,VA02,VA03. Tables VBAK,VBAP)

Delivery (Tcode for creation VL01,VL02,VL03. Tables LIKP,LIPS) 
As soon as the material availability date or the transportation scheduling date for a schedule line has arrived, the schedule line becomes due for shipping. When you create a delivery, you initiate shipping activities such as picking and transportation scheduling

Shipping (T-code is VT01, Tables are VTTK, VTTP)
collection of deliveries which has to be delivered if route is same. Once goods are shipped, go for billing.

Billing (Tcode for creation VF01,VF02,VF03. Tables VBRK,VBRP): 
Billing is the last / final settlement between client & his customer.

Invoice (T-code is VF21, Tables are VBRK, VBRP) 
Invoice ends the sales flow.

Happy Learning :)

Wednesday, 6 January 2016

SAP MM Process flow

SAP ABAP resources are often encountered with the questions related to basic process flow of few modules. Being the modules which exist generally in every project, SD and MM tops this list. So here I am summing up the flow of these 2 modules.

Source: http://help.sap.com/

Purchasing Requsition PR (Tcode for creation ME51N. Tables EBAN, EBKN)
A purchase requisition is a request or instruction to Purchasing to procure a certain quantity of a material or a service so that it is available at a certain point in time. 

Source Determination and Request for Quotation RFQ (Tcode for creation ME41. Tables EKKO, EKPO)
With respect to new procurement transactions, you initially wish to fall back on data that is already available in the system. Issuing a one-time purchase order or determining a new source through the more time-consuming process of requesting and processing quotations are functions that will often only take place after you have discovered that there is no suitable source for a certain material or service in the system.

A request for quotation (RFQ) is an invitation extended to a vendor by a purchasing organization to submit a quotation (bid) for the supply of materials or performance of services.

Quotation (Tcode for creation ME47. Tables EKPO, EKKP)
 A quotation is an offer by a vendor to a purchasing organization regarding the supply of materials or performance of services subject to specified conditions.

Vendor Selection and Comparison of Quotation (ME49)
You can compare the prices from all quotations received as a result of a competitive bidding process using the price comparison list. The comparison list ranks the quotations by item from lowest to highest price.

Purchase order PO (Tcode for creation ME21N. Tables EKKO, EKPO) 
Based on all parametrs of a quotation sent by vendors, Vendors are selected from whom the material has to be obtained.  The company  gives  purchase order to the vendor.

Purchase Order Follow ups (Tcode ME91, ME91F, ME92F)

Good's receipt (Tcode for creation MIGO Tables  MSEG)
With the goods receipt (GR) you post the physical inward movement of goods from an external vendor or from production and then complete a goods movement, which leads to an increase in the warehouse stock.

Invoice verification (Tcode for creation MIRO Tables  BSEG) 
In invoice verification incoming invoices are verified in terms of their content, prices and arithmetic. When the invoice is posted, the invoice data is saved in the system. The system updates the data saved in the invoice documents in Materials Management and Financial Accounting.

Goods Issue (Tcode for creation MIGO, Tables MSEG)

Payment -> payment is done based on invoice verification. this is part of FI/CO

In next post will see the process flow of SD module

Happy learning :)