Quantcast
Channel: SCN : Document List - SAP ERP Sales and Distribution (SAP SD)
Viewing all 239 articles
Browse latest View live

Customer Delivery - Stock in Transit (EHP5 - LOG_MM_SIT functionality)

$
0
0

Introduction

 

     Enhancement package 5 for Procurement business function “LOG_MM_SIT” allow to control goods movements both for sales to external customers and for stock transfer processes between plants belonging to the same or different company codes within the same company. Using valuated stock in transit and new movement types, we can specify the time of the transfer of title precisely. Throughout the process, material quantities and material values are recorded transparently and can be displayed in the stock overview, the purchase order history, and the individual stock accounts. The functions are also available for the corresponding intra-company-code and cross-company-code return stock transfers.

 

     This document covers the customer delivery with transfer of title at customer location. The customer deliveries with valuated stock in transit, is used to pin point the exact time of the transfer of title. The transfer of title depends on the delivery type. The system determines this based on the sales document type. The system finds the item categories and thereby the corresponding schedule line categories, using Customizing for item category determination in the delivery. The process is controlled by the movement types that are assigned to the respective schedule line categories.

 

Client Requirement

    

     The requirement for our project was to recognize the COGS & Sales revenue at the same time based on the Incoterms. Incoterms were divided into two categories as ‘Immediate Risk transfer’ & ‘Delayed risk transfer’. ICC Incoterms like EXW & FCA were classified as immediate risk transfer as the risk transfer lies with ‘Buyer’ once the Goods are loaded onto carrier from plant. The other incoterms like FOB, CPT, CIF, etc.. were classified are Incoterms with Delayed Risk Transfer.

 

     Based on the Delayed Risk Transfer Incoterms, the item category in the sales order would get determined. This was one of the key developments of the project. Based on the item category the posting to COGS / SiT account would happen at the time of PGI.

 

     The Requested delivery date would be maintained by the Customer Service Representative while processing the Sales Order. Based on the
RDD & route information in the sales order, the PoD is carried out through a program scheduled automatically.

 

Features of Business Function LOG_MM_SIT

 

     Business Function LOG_MM_SIT covers below business processes. In the following processes, valuated stock in transit specifies the exact time of the transfer of title.

 

  •      Intra Company Code Stock Transfer: Transfer of title at goods issue / goods receipt / during transit.
  •      Cross Company Code Stock Transfer: Transfer of title at goods issue / goods receipt / during transit.
  •      Delivery with transfer of title at the customer location.

 

In a cross-company-code or intra-company-code stock transfer, valuated stock in transit allows you to retain the quantity and value of a material that has already left the issuing plant but has not yet reached the receiving plant. The functions are also available for the corresponding intra-company-code and cross-company-code return stock transfers. In addition, in sales processes to external customers, you can post the quantity and value of a material to issuing valuated stock in transit initially and then remove it when proof of delivery arrives.

 

Fig 1.jpg

 

Pre-Requisites

 

A. SD Customizing requirments:

 

 

     i. Defining new Sales Order Type

 

     IMG Menu path:IMG --> Sales and Distribution --> Sales --> Sales Documents --> Sales Document Header --> Define Sales Document Types

 

     Create the new sales document type Delivery from Issuing Valuated Stock in Transit (ORNC) as a copy of the sales document type Standard Order           (TA/OR).

 

    Sales order Type 1.jpg     Sales order Type 2.jpg

 

     ii. Defining new Delivery Type

 

     IMG Menu path:IMG --> Logistics Execution --> Shipping  --> Deliveries  --> Define Delivery Types

 

     Create New Delivery Type (NCCU - Delivery from Issuing Valuated Stock in Transit) for the process Outbound Delivery with Transfer of Title at                     Customer Location.

 

     Delivery type.jpg

 

     Note: Creating a new order type/delivery types are optional. You can use the existing order types & assign the item category for this functionality to work.

 

     iii. Assigning the New Delivery Type to New Sales Order Type

    

     IMG Menu path:IMG --> Sales and Distribution --> Sales --> Sales Documents --> Sales Document Header --> Define Sales Document Types

 

     In the Shipping section of the detail view, assign the appropriate delivery type, NCCU to the sales document type Outbound Delivery from Issuing       Valuated Stock in Transit (ORNC).

 

     Assign del type.jpg

 

     iv. Defining new Item Categories

 

     IMG Menu path: IMG --> Sales and Distribution --> Sales --> Sales Documents --> Sales Document item --> Define Item Categories

 

     For this solution, the item category is important configuration. Item category is assigned to schedule line category which has movement type. We can      define new item categories or use the existing item categories as per the client’s requirement. But it has to be ensured that proper schedule line           category is determined.

 

     Define Item Category.jpg         

 

     Ensure that the new item category Delivery from Issuing Valuated Stock in Transit (NCCU) has been created as a copy of the item category      Standard Item (TAN).

 

     v. Defining Item Categories in Deliveries

    

     IMG Menu path:  IMG --> Logistics Execution --> Shipping  --> Deliveries --> Define Item Category Determination in Deliveries

 

     When the item category is copied from reference & if made relevant for copy control i.e., “Is this entry also relevant for copying control?” – If yes,      then      the delivery item category will be created, else define delivery item category manually.

 

     Del item cat.jpg

 

     Ensure that for all entries with delivery type Outbound Delivery (LF), a copy has been created and altered as follows:

 

     Delivery type LF has been changed for each entry to delivery type Delivery from Issuing Valuated Stock in Transit (NCCU).

    

     Item category Standard Item (TAN) has been changed for each entry to item category Delivery from Issuing Valuated SiT (NCCU).

 

 

    vi. Defining Schedule Line categories

    

     IMG Menu path: IMG --> Sales and Distribution --> Sales --> Sales Documents --> Sales Document item --> Define Item Categories

    

     One of the important configurations of this solution is defining the Schedule line category. When you define the schedule line category, you see      the      changes in the screen with addition of fields MvT Iss. Val. SiT & Spec. Iss. Val. SiT. Ensure that for the process Outbound Delivery from Issuing                Valuated Stock in Transit the new schedule line category NU has been created as a copy of schedule line category Material Requirements Planning           (CP),  detailed data:

 

     Movement type = 687 (Goods Delivery to Issuing Valuated Stock in Transit)

 

     Movement Type for Issuing Valuated Stock in Transit = 601 (Goods Issue for Delivery)

 

     Specification for Issuing Valuated Stock in Transit = 3 (Sales-Order-Related Goods Issue from Issuing Valuated Stock in Transit).

 

     Define sch lines.jpg

 

     vii. Assigning New Schedule Line Categories to the New Item Category

    

     IMG Menu path:  IMG --> Sales and Distribution --> Sales  --> Sales Documents  --> Schedule Lines  --> Define Schedule Line  Categories

     Ensure that a new entry has been created as a copy of the entry with item category Standard Item (TAN) and schedule line category Material                          Requirements Planning (CP) with the following changes:

 

     Item category TAN has been changed to item category Delivery from Issuing Valuated Stock in Transit (NCCU).

     Schedule line  category CP has been changed to schedule line category Delivery from Issuing Valuated Stock in Transit (NU).

 

     Assign Schedule Lines.jpg

 

     viii. Assigning New Item Categories to the Sales Document type

 

     IMG Menu path: IMG --> Sales and Distribution --> Sales --> Sales Documents --> Sales Document item --> Assign Item Categories

 

     item cat assgnmt.jpg

 

     Normally when the Sales Order type OR is copied & item category is copied from TAN all the related settings are copied & the assignment will take                place. In case, if the item category is created newly without any reference, then maintain the assignment to the Order Type.

 

 

     ix. Assign PoD relevance to the Delivery Item Category

 

     IMG Menu path: IMG --> Logistics Execution --> Shipping --> Deliveries --> Proof of Delivery --> Set POD-Relevance Depending on Delivery Item      Category

 

     Maintain the PoD relevance for the delivery item categories which are created.

 

     PoD rel.jpg

 

B. MM & FI Customizing requirments:

 

    i. Create G/L account

 

     The necessary G/L accounts has to be created by FI team for posting of the Stock in Transit Account.

 

     ii. Define Valuation Class

 

     IMG Menu path: IMG --> Materials Management --> Valuation and Account assignment --> Account Determination -->       Account determination without wizard --> Define Valuation classes

 

     The valuation class is a group of materials with the same account determination. If a transaction is to be posted to different  accounts depending on the           valuation class. The valuation classes allowed depend on the material type. Several valuation classes are generally allowed for one material type. A                valuation class can also be allowed for several material types. The link between the valuation classes and the material types is set up via the      account category reference.

 

     Val class.jpg

 

     iii. Automatic Postings - BSX & GBB

    

     IMG Menu path: IMG --> Materials Management --> Valuation and Account assignment --> Account Determination --> Account determination without         wizard --> Configure Automatic Postings

 

     BSX.jpg

     GBB.jpg

    

     These settings are required for automatic posting of the Stock in Transit account & the Cost of Goods Sold at the time of PGI & POD respectively.

 

C. Master Data requirments:

 

     i. Customer Master

   

     The Customer Master Data has to have the PoD relevance for this solution. This can be maintained by using Transaction Code XD02 / VD02. Go to                the Sales Area Data, under the shipping tab, you find the Relevant for PoD checkbox as shown below. Check the box, to make the customer relevant for      PoD.

 

     Customer Master.jpg

 

      ii. Material Master

 

     Based on the requirement of the client to identify the stocks & for their reporting purposes, the valuation class can be maintained against the      VC:Sales Order Stk field as shown below. The maintenance of this Valuation Class is to account for separate G/L when the Goods issue is done & the      stock is moved to Stock in Transit.

 

      Material Master.jpg

Process Demo

 

     We will create the sales order and delivery to check the process flow. The following values are used for this:

    

     Sales Area: 1000 / 10 /00
     Material: P-100; Plant: 1000
     Order Type: ORNC

 

     Create the Sales order & save the order.

     Sales Order.jpg

     Before proceeding further, we shall note down the stock of the material considered in MMBE & MB5SIT.

 

     Initial Stock.jpg

     Detials of MB5SIT before Delivery

 

     Initial MB5SIT.jpg

     Now, create the delibery (VL01N).

 

     Delivery screen.jpg

     Notice that the Post Goods Issue Icon is greyed out in create mode as compared to our standard process. Do the picking / WH TO & save the delivery.

 

     Del #.jpg

     Now, go to VL02N & do the Post Goods Issue (PGI)

 

     Check the document flow once the PGI is done.

 

     Doc Flow - Before PoD.jpg

 

     Check the posting, the finished goods inventory has been credited & Stock in Transit G/L has been debited.

    

     Now, we will have a look at the stock level MMBE & report MB5SIT

 

     MMBE after PGi.jpg

     MB5SIT after PGi.jpg

     You will see the qty under Iss. SiT column in the MB5SIT report, against the delivery.

 

     Now, carry out Proof of Delivery (PoD) - Transaction VLPOD

 

VLPOD.jpg

Once the PoD is saved, another material document gets posted, as you could see above.

 

Now, we shall look into the document flow again.

 

Doc flow after PoD.jpg

      

     Now, the Stock in Transit G/L has been credited & Cost of Goods Sold (Inventory change –fin) has been debited.

 

     After PoD check the report MB5SIT

 

 

     MB5SIT after POD.jpg

     In this way, based on the requirement of the client, the posting to the COGS & thereby Sales revenue (at the time of billing) can be controlled using the      Proof of Delivery.

 

 

     References:

 

     www.help.sap.com

    

 

     Please let me have your feedback on the suggestions & improvements for this document further, if necessary.


Giving some life to SAP menu screen

$
0
0

Time ago, I decided to look for a way to add some life and additional functionalities to my personal boring menu screen... Wait!
This not another document on how change background colours or image on the right upper...

1.JPG

 

And after some work, I wanted to share with you the results and how-to.

2.JPG

 

Let’s have a look at the differences:

 

Block 1: added pushbuttons in toolbar to exit SAP and navigate to SPRO in a new session.

 

Block 2: added gifs in application bar with different functionalities: navigate to Accuweather and to Google Maps, execute:
MS Word, SAP general menu and SAP logistics menu, send an email by outlook and navigate to Google and to SCN.

 

Block 3: added gifs in menu area with different functionalities: navigate to gmail, to SAP business workplace, to SPRO,
to Google and to SAP help portal, execute: SAP logistics menu, SAP financial menu, SAP workbench menu, SAP systems menu and SAP general menu.

 

Block 4 and Block 5: added a specific icon by client and descriptive text displayed in title bar on status bar to distinguish visually the client and transaction we’re working with. This will help to avoid committing mistakes when working with different clients and sessions in a smart way. Icon is only displayed in status bar.

 

Of course you’ll be able to add/remove pushbuttons, gifs and icons and adjust functionalities as you like after reading this document.

 

Interested?

 

Great, that means you’ll keep reading this document...

 

Steps

 

1-Create the following directory: C:\guixt\scripts. This is where our scripts will be stored by default. A script is a file that contains sentences to execute things. We don’t need to have programming skills for this script.

 

2- Open notepad editor, copy & paste the script at the end of the document and save it as  saplsmtr_navigation.0100.txt in C:\guixt\scripts and close it.

 

3-Icon and gifs. Download from http://ge.tt/1ngALYy to C:\guixt\scripts (download available for next 30 days). Alternatively you can create/use your own (change name of them in script if needed).

 

4- Activate GuiXT in our laptop & desktop. By doing so, script will be executed when creating a new session or after new login. This script is run locally in our laptop/desktop.

 

5- Test & Enjoy

 

Activating/Deactivating GuiXT

 

We need to use GuiXT, software developed by Synactive and available for free, with limited functionality. To use it, we need to activate it locally in our desktop/laptop.

 

To activate/deactivate, just click on customize local layout icon and click on Activate:

3.JPG

Once activated, minimize Guixt screen and at the bottom of our screen, a GuiXT icon becomes available

4.JPG

 

Now we click on GuiXT icon and select Edit, Profile and tic on No language key in script name in further options block. In that way, the scripts we create are non language dependant. We click on Ok button and minimize GuiXT screen.

5.JPG

 

Log out from SAP. Next time you log in, you should notice changes in your screen...But before, let’s keep reading.

 

Understanding this script

 

You can comment any sentence by setting at the beginning of it these two symbols \\ and it won’t be executed.

 

The script is divided into blocks that correspond with the blocks shown in the screenshot at the beginning of the document for better understanding.

 

Block 1: sentences executed here are similar of those executed in command field.

 

Block 2: sentences with start means that when clicking on a image (gif) system will start execute something (navigation on internet, execution of an executable...) when sentence starts with Input, is similar to using command field but thru an image.

 

You need to adjust the sentence mailto and set proper TO email.

 

Block 3: same as Block 2. Sentence POS will shift SAP menu downwards 2 lines.

 

Block 4 & 5: according to client number, we use a specific icon and a text that contains two system variables (_client and _transaction).

 

You need to replace client number by yours.

 

It’s not the goal of this document explain in detail syntax of the sentences in the script. You can find in Internet GuiXT documentation on syntax and keywords for further details.

 

Logon and test it

 

Log on and your screen should have a new look. Try different functionalities. If you want to know which functionally has every image, just click on GuiXT button and read the script we’ve copied and once done, minimize GuiXT screen (if you close it by mistake, you’ll have to logout and login).

 

If no GuiXT is displayed, check directory and script names and if GuiXT is activated.

 

Errors

 

If GuiXT icon is red

6.JPG

it means that there is an error in our script. If this happens, we click on GuiXT icon and a GuiXT window will open, containing our script and showing the error. We click on Edit, Script and notepad opens the script for us to modify.

7.JPG

 

Once we correct the sentence, we can save (file, save) and exit editor (file, exit) and finally minimize GuiXT screen. We open a new session to check the results (GuiXT icon in this new session should not be red, otherwise there’s still an issue and we have to repeat the process of editing the script and looking for the issue). This process (clicking in the GuiXT icon and edit & save & exit notepad) can also be used to update the script on the fly and see the results immediately. Remember to close editor (not GuiXT! If you close it, you’ll need to logout and logon) if you’re modifying on the fly to avoid having several scripts opened simultaneously with the risk of overwriting the script depending on the order you’ll close them.

 

Graphics

 

In block 1, SAP icons can be found with tcode RSTXICON (select Icons as Abap list and use values in column code. In the script the value must be between @’s).

 

In block 2 and 3 we can use images with extension bmp, gif or jpg. Size of gifs used in block 2 must be 18x18, while for block 3, they can we bigger, I used 34x34.

 

In block 4 we must use images with extension ico. Size I used is 32x32.

 

Gifs and icons come from free to use websites or created by myself.

 

Finally

 

To avoid someone updating the script, once it works fine, we can hide GuiXT icon. To do it, we click on GuiXT icon and select Edit,
Profile:

8.JPG

And in start window, select Hidden instead of normal.

9.JPG

 

If you need GuiXT icon back, execute guixt.exe visible in C:\Program Files\SAP\FrontEnd\SAPgui. It will be visible till you log off. If you want it visible permanently, update the profile and in start window area set normal.

 

Stop using GuiXT

 

If you decide to stop using GuiXT, deactivate Sap GuiXT as we saw at the beginning of the document. If you don’t want to use a script, rename or delete it.

 

Script. Copy & paste below sentences and change client number and mailto email as explained in step 2

 

//

// Start script

//

 

// Block 1

 

pushbutton (toolbar) "@VB@bye bye" "/nend"

pushbutton (toolbar) "@OJ@SPRO" "/ospro"

 

// Block 2 in tool bar gif size 18x18

 

image (toolbar) "C:\GuiXT\Scripts\jscn_18x18_1.gif" Start="http://scn.sap.com/welcome\"

image (toolbar) "C:\GuiXT\Scripts\google18x18.gif"   Start="http:\\www.google.com\"

image (toolbar) "c:\guixt\scripts\mail_18x18_1.gif"     start="mailto:xx@xx.com?subject=Some issues in system &V[_client]&body=Hello, "

image (toolbar) "C:\GuiXT\Scripts\menu18x18_log.gif" "Input=OK:/ns000_lo"

image (toolbar) "C:\GuiXT\Scripts\menu18x18.gif"    "Input=OK:/ns000"

image (toolbar) "C:\GuiXT\Scripts\word18x18.gif"      Start="C:\Program Files\Microsoft Office\Office12\winword.exe"

image (toolbar) "C:\GuiXT\Scripts\maps18x18.gif"     Start="http:\\maps.google.com\"

image (toolbar) "C:\GuiXT\Scripts\weather18x18.gif" Start="http://www.accuweather.com/"

 

// Block 3 in Menu Area gif size 34x34 Images horizontal

 

pos X[image_container] X[image_container]+(2,0)

 

image (0.1,0.1) (1,3)  "C:\GuiXT\Scripts\gmail234x34.gif"       Start="http:\\www.gmail.com\"

image (0.1,5.1) (1,8)  "C:\GuiXT\Scripts\sms34x34.gif"           "Input=OK:sbwp"

image (0.1,10.1) (1,13) "C:\GuiXT\Scripts\custo34x34.gif"      "Input=OK:spro"

image (0.1,15.1) (1,18) "C:\GuiXT\Scripts\google34x34.gif"     Start="http:\\www.google.com\"

image (0.1,20.1) (1,23) "C:\GuiXT\Scripts\sap34x34.gif"          Start="http:\\help.sap.com\"

image (0.1,25.1) (1,28) "C:\GuiXT\Scripts\Logistics34x34.gif" "Input=OK:s000_lo"

image (0.1,30.1) (1,33) "C:\GuiXT\Scripts\Finance34x34.gif"   "Input=OK:s000_fi"

image (0.1,35.1) (1,38) "C:\GuiXT\Scripts\Workbench34X34.gif" "Input=OK:s001"

image (0.1,40.1) (1,43) "C:\GuiXT\Scripts\System34x34.gif"    "Input=OK:s002"

image (0.1,45.1) (1,48) "C:\GuiXT\Scripts\General34x34.gif"   "Input=OK:s000"

 

// Block 3.A in Menu Area gif size 18x18 Images vertical

 

//pos X[image_container] X[image_container]+(0,5)

//image (0,0) "C:\GuiXT\Scripts\gmail18x18Alt.gif"     Start="http:\\www.gmail.com\"

//image (1,0) "C:\GuiXT\Scripts\sms18x18Alt.gif"       "Input=OK:sbwp"

//image (2,0) "C:\GuiXT\Scripts\custo18x18Alt.gif"     "Input=OK:spro"

//image (3,0) "C:\GuiXT\Scripts\google18x18Alt.gif"    Start="http:\\www.google.com\"

//image (4,0) "C:\GuiXT\Scripts\sap18x18Alt.gif"         Start="http:\\help.sap.com\"

//image (5,0) "C:\GuiXT\Scripts\Logistics18x18Alt.gif" "Input=OK:s000_lo"

//image (6,0) "C:\GuiXT\Scripts\Finance18x18Alt.gif"   "Input=OK:s000_fi"

//image (7,0) "C:\GuiXT\Scripts\Workbench18X18Alt.gif" "Input=OK:s001"

//image (8,0) "C:\GuiXT\Scripts\System18x18Alt.gif"    "Input=OK:s002"

//image (9,0) "C:\GuiXT\Scripts\General18x18Alt.gif"   "Input=OK:s000"

 

// Block 4 & 5

 

SET V[var1] "&"

 

if Q[client=500]

Icon "C:\guixt\scripts\social_aim.ico"

TitlePrefix "Client IDES &[_client]:&V[var1]V[_transaction]"

endif

 

// Adjust yourself for rest of your clients by removing // and using client and proper icon name 

 

// if Q[client=xxx]

// Icon "C:\GuiXT\Scripts\social_evernote.ico"

// TitlePrefix "Client IDES &[_client]:&V[var1]V[_transaction]"

// endif

 

// if Q[client=xxx]

// Icon "C:\GuiXT\Scripts\social_twitter_bird.ico"

// TitlePrefix "Client IDES &[_client]:&V[var1]V[_transaction]"

// endif

 

// if Q[client=xxx]

// Icon "C:\GuiXT\Scripts\social_apple.ico"

// TitlePrefix "Client IDES &[_client]:&V[var1]V[_transaction]"

// endif

 

// End script

 

A variant

 

You might prefer not having menu shifted downwards. We can set icons vertically on left side and shift menu rightwards. In that case, I recommend reduce size from 34x34 to 18x18 or less.

10.JPG

 

The only thing that we have to do is modify our script, commenting (//) block 3 and un-commenting block 3.A.

 

Last comment

 

You’ll notice that when creating a new session, added gifs in application bar shift leftwards. Opening a menu or executing a tcode in command field will set them to their original place.

 

 

Enjoy!

 

 

Regards,

JM

Giving some life to SAP menu screen Part II

$
0
0

Hi,

 

Following http://scn.sap.com/docs/DOC-48796 it’s time now to focus on upper right corner motion picture...

 

1.JPG

Let’s see in this document how to create one motion picture and replace standard one by ours. You’ll find 3 files to download for your use (original animated gif and 2 versions of final bmp) in http://www.ge.tt/#!/9M8Y6401 during one month.

 

Introduction

 

This standard motion picture, called sapalogo.bmp is nothing but a bmp file composed by frames, each one with the same size. This motion picture is included in the file theme.xml. There’s one theme.xml for each of the different themes available. You’ll find themes in

C:\Program Files\SAP\FrontEnd\SAPgui\themes.

 

Creating

 

1- Create a folder to work and keep everything at hand, Copy sapalogo.bmp from,for example, C:\Program Files\SAP\FrontEnd\SAPgui\themes\TradeShow to your folder.

 

2- Look for an animated gif we like in a free to use and download it.

 

3- We need to extract frames from animated gif into separate bmp files. There’s plenty of free software for this purpose. At the time of writing this document,
I found and used
http://www.evanolds.com/dl/GIFFrame.exe (just run it, don’t install, open animated gif and save frame by frame in the directory we created).

 

4- Open sapalogo.bmp with paint. We need to check size of each frame. Zoom it to size 300.Click on View tab and tick on rules, gridlines and status bar. We can see that each frame has a length of 123 and height of 60 (first frame ends in 123, second starts in 124 and ends in 245 third starts in 246...and so on). No spaces between frames.

 

2.JPG

 

5- Now in another paint session, let’s open each frame from step 3 and save it in bmp format (if your frames don’t have this format yet).

 

In this session let’s open first frame, click on View tab and tick on rules, gridlines and status bar and zoom to size 300 and overlay this paint session
with first one so we can compare sizes and resize (123x60) our frame.

3.JPG

 

Once resized, save and repeat steps for rest of frames. Ensure each frame is 123 x 60 exactly.

 

6- Once finished, don’t close paint, click on new to start the process of joining the frames in a single bmp file.

 

I looked for free software but could find any and as it was a rainy day, I decided to do it manually.

 

Notice that animated gifs usually have a certain delay between frames. This delay when building the bmp file has to be simulated by adding more frames. In this case each original frame is repeated 5 times in final bmp to give a sense of slow motion.

 

We need to resize the new file length by multiplying 123 x number of frames (in this case 30 frames) keeping height to 60.

 

4.JPG

 

And we start pasting from, selecting the frames from our working directory, frame after frame very carefully (from second frame on, once pasted we have to shift it rightwards to its starting position). To help, we can use a excel file to calculate every starting position of next frame.

 

5.JPG

 

Replacing

 

You’ve decided for which theme you want to replace the motion picture and you’ve chosen it as theme in SAP.

 

Copy our bmp from working directory to

 

C:\Program Files\SAP\FrontEnd\SAPgui\themes\your-theme-directory\

 

Edit theme.xml in (select file and click on mouse right button) in

 

C:\Program Files\SAP\FrontEnd\SAPgui\themes\your-theme-directory\

 

And look for AnimationLo and Animation Hi and replace sapalogo.bmp by our bmp (2 replacements) and update size in <right> by the length of our bmp file
(3690).

6.JPG

 

 

Save and logon.  Results below:

 

7.JPG

 

Using snail2.bmp file.

 

8.JPG

 

Using snail3.bmp file, (with a more artistic look).

 

Enjoy.

 

Regards,

JM

How to change texts in SAP screens. An alternative

$
0
0

Hi,

 

Let me share with you an alternative way to change texts in SAP screens. Changes are global (apply to any client and to any SAP screen) and are applied locally by laptop/desktop.

 

Let’s see an example. A company sells services and would like to have service instead of material in SAP screens. We can achieve this very easily, in blink of an eye...

 

Global changes apply to:

 

1.JPG

 

 

To message lines

 

2.JPG

 

To menus in inside a tcode

 

3.JPG


To column header in tables


4.JPG

 

and to table titles.

 

How?

 

We will need only 5 minutes... steps:

 

1- Create this directory C:\guixt\scripts

2- Open notepad editor and copy & paste below text (from start script to end script), save it as session.txt in C:\guixt\scripts and close notepad

 

// Start script

//

// Script to change texts globally

// 

 

GlobalTextReplace "Material" "Service"

 

// End script

 

3- Activate GuiXT

4- Log out of all sessions and logon

5- Check the results

 

Activating/Deactivating GuiXT

 

We need to use GuiXT (software developed by Synactive and available for free, with limited functionality. Functionality used in the script doesn’t require any license and is available for its use) and activate it locally in our desktop/laptop.

 

To activate/deactivate, just click on customize local layout icon and click on Activate:

 

5.JPG

Once activated, minimize Guixt screen and at the bottom of our screen, a GuiXT icon becomes available

6.JPG

Now we click on GuiXT icon and select Edit, Profile and tic on No language key in script name in further options block. In that way, the scripts we create are non language dependant. We click on Ok button and minimize GuiXT screen.

 

7.JPG

 

 

Log out from SAP.

 

Understanding the script

 

// means the sentence is commented, that is, not executed

 

GlobalTextReplace "White" "Black" this sentence replaces text White by Black. It’s not case sensitive.

 

We can add as many GlobalTextReplace in the script as needed.

 

Script session.txt is executed locally (in the laptop/desktop, where the script is saved), only one time after the logon screen.

 

Finally

 

To avoid someone updating the script, once it works fine, we can hide GuiXT icon. To do it, we click on GuiXT icon and select Edit, Profile:

8.JPG

 

And in start window, select Hidden instead of normal.

 

9.JPG

 

If you need GuiXT icon back, execute guixt.exe visible in C:\Program Files\SAP\FrontEnd\SAPgui. It will be visible till you log off. If you want it visible permanently, update the profile and in start window area set normal.

 

Stop using GuiXT

 

If you decide to stop using GuiXT, deactivate Sap GuiXT as we saw previously. If you don’t want to use a script, rename or delete it.

 

Enjoy.

 

Regards,

JM

 



  
 

   
 


    
    
     
     
     
     
     
     
     
     
     
     
     
     
    
    
    
   
    
   


   
   

How to Explore Tables and Particular Fields through 'SE15'

$
0
0

Business Requirement:I have seen in my business Scenario that many time we are unable to find the exact tables, fields, programs and structures, reason can be restrictions or time management issues and mostly beginners like me usually cannot able to find it out. so i have written a little document to find the related tables and fields in one run. How we can Search all related Tables with a particular Field name, related fields in particular table.

 

Solution:Solution is very simple but also creative, i am going to share some basic Information for finding all relevant tables name in which particular field exists. I hope this document will be helpful for the beginners usually to not waste their time in digging out fields & tables through some difficult practice.


How to search a field for which table it belongs?

 

Go to Transaction code SE15 and Select the Folder ABAP Dictionary, after then Select the Folder Fields and Double Click on Table Fields. You will see an open window on Right side, now give the Field Name of which you want to explore relevant table names and execute it. This will give you all the Tables where the field exists in it:

 

Run T-Code SE15:

 

1. I have searched All fields exits related with table "MARA" (General Material Data) i.e:

 

scn 11.png

I have selected Material Number & Executed it i.e:

scn 12.png

I want to see the related content to any material Number i.e

 

scn 13.png

give any material number and execute it you will find out the info regarding all fields in this table have for particular material:

scn 14.png

There are are some fields i have given below regarding this material:

scn 18.png

2. You Can search this by giving Table and Field name to check the particular contents regarding particular field:

 

scn 16.png

 

scn 17.png

 

 

scn 19.png

 

I hope that this will be helpful material for SD USERS to dig out the particular fields & tables easily. As beginners like me, usually need to go for tables and fields searching, so this is good way to search it out. I appreciate everyone's reading for this document.

 

Best Regards,


Suhaib Bin Aziz

Incompletion Log in SD

$
0
0

In general

 

Incompletion Log ensures that all required fields in a document are populated. Incompletion procedures can be configured to (1) raise no messages, (2) raise a warning message, or (3) raise an error message.

If configured with no warning message, the system will indicate the sales document is incomplete and offer an option to complete missing data upon save. The incompletion procedure determines to what extent further processing of the document is allowed and if subsequent documents can be created. If a document is incomplete, it cannot be referenced.

 

Incompletion procedure

 

An incompletion procedure groups the fields together that must be checked for completion. If any of the fields are blank, the document is incomplete. Incompletion procedures can be assigned and maintained at various levels and for various document types:

 

  • Sales header (different procedures can be assigned to different document types)
  • Sales item (item categories can contain different procedures)
  • Schedule line (each can contain different procedures)
  • Partners (can maintain different procedures for each partner function)
  • Sales activity
  • Delivery header
  • Delivery item

 

To display the procedures run transaction OVA2 or use the IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Incompletion Procedures.

proc.JPG

Incompletion procedures are assigned to each document type via transaction VUA2 or use IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Assign Incompletion Procedures > Assign Procedures to Sales Document Type. The incompletion procedure can be viewed in document configuration (VOV8) but can only be changed here. To prevent the document from being saved if any fields are incomplete, check the box IC-dialog. In example below document type CR (Credit Memo Request) cannot be saved if any fields in incompletion procedure 14 are not populated.

cr.JPG

 

 

Sales - Header Group (A) uses incompletion procedure 14 which contains the following fields:

14.JPG 

The Table, Field Name and Description fields above are self explanatory. Screen field is the function code (Fcode) the system uses to navigate from incompletion log to the screen where field is missing. If no entry is made here, you cannot branch to correct screen to complete missing data. See Note 422132.

 

The available Fcodes for sales header screens are:

 

<BLANK>

No automatic screen selection available      

KBESSales: Header - PO data
KBUCSales: Header - Financial accounting
KDE2Sales: Header - Shipping
KDE3Sales: Header - Billing document
KGRUSales: Header - Additional data A
KKASSales - Item proposal: Header - Business data
KKAUSales: Header - Sales
KKNTSales: Header - Product allocation
KKONSales: Header - Conditions
KKPBSales - Independent Requirements: Header - Business data
KPARSales - Header - Partner
KPAR_SUBSales: Header - Partner (Subscreen)
KSTASales: Header - Status
KTEXSales: Header - Texts
KTPRSales: Account determination analysis
KVERSales: Header - Extras - Sales data
KZKUSales: Header - Additional data B
WPA1Sales: Header - Partner - Detail
WUMASales - Delivery order: Header data

 

Status group indicates whether system will record a status message in item or header status screens in sales document. Path: transaction OVA0 or IMG > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Status Groups.

 

Warning indicates if a warning message is received if no entry is made. Can only be used for fields in sales order. If this box is not checked but fields are incomplete, upon saving the document you will be brought to incompletion screen where you can branch to each missing field.

 

Sequence refers to the order the missing fields will be processed in the incompletion log. The first field to be procesed is given the lowest value but fields with no value are processed last.

 

 

Status groups

 

Status Groups are assigned to specific fields in the incompletion log and control further processing of the document.  It is possible to specify that if field X is missing, further processing is allowed, but if field Y is missing, no further processing is permitted. Further activities of the document can be blocked, for example, the sales document can be saved but a subsequent document for delivery, billing, or pricing can be blocked. Status groups can be defined in transaction OVA0. 

Standard Status Groups include:

 

General: Checks status of general fields assigned to this status group in the incompletion procedure. General fields can include PO Number, document date, etc. 

 

Delivery: Setting this status in the status group and assigning the status group to a field in the incompletion procedure causes the sales document to be incomplete and may prevent creation of delivery document, e.g. if the plant or shipping point is missing.

 

Billing: Setting this status causes the sales document to be incomplete for further processing and may prevent the creation of a billing document, e.g. if the terms of payment is blank in the sales order.

 

Pricing: If pricing is not carried out, the sales document is incomplete and may prevent subsequent billing documents from being created.

 

Goods Movement: System determines the status of the goods movement data by checking the fields that comprise this status group in the incompletion procedure. For example, you can specify that the item data of a delivery is incomplete for goods issue if the quantity picked is missing.  If the quantity

picked is not specified during delivery processing, the system issues corresponding status message. This is only valid for shipping documents.

 

Picking: You can specify that the item data of a delivery is incomplete for picking if the serial numbers have not been assigned, and the system issues corresponding status message. This is only valid for shipping documents.

 

Packing: You can specify that the item data of a delivery is incomplete for packing if the external delivery identification is missing.  If the external delivery identification has not been specified during delivery processing, the system issues status message. This is only valid for shipping documents.

group.JPG

This table indicates whether the system records a status message in the header and item status screens of sales documents. If you mark this status for a particular status group, the system determines the status by checking the fields assigned to the status group in the relevant incompletion procedure. If some or all of the fields are missing information, the status message says that the function is partially incomplete or incomplete. If all the fields are filled, the status message will say complete.

 

 

Configuration

 

  1. Set up Status Groups (OVA0).
  2. Define procedure (OVA2).
  3. Assign status group to fields (OVA2).
  4. Assign procedure to various document types as follows:
    1. Orders (VUA2)
    2. Deliveries (VUA4)
    3. Items (VUP2)
    4. Schedule Lines (VUE2)
    5. Partners (VUPA)
    6. Sales Activities (VUC2)
  5. Set Error or warning message (VUA2).
  6. Test expected results.

 

Important transactions

 

OVA2Define incompletion procedure
VUA4Assign incompletion procedure to delivery type
VUA2Assign incompletion procedure to Sales document Header
VUP2Assing incompletion procedure to Sales item category
VUE2Assign incompletion procedure to Schedule line category
VUPAAssign incompletion procedure to Partner functions
VUC2Assign incompletion procedure to Sales Activities
OVA0Define Status groups
V.02List incomplete sales orders
VUA2Set warning or error message on document save

 

Important tables

 

VBUVIncompletion log - Sales documents
VBUKHeader incompletion
VBUPItem incompletion
TVUVGGroups
TVUVProcedures
TVUVFFields
TVUVSStatus groups
TVUVFCFcodes
V50UCIncompletion log - Deliveries
V50UC_USERIncompletion log - Deliveries - Enhancements
FMII1Funds Management Account Assignment Data

A Pricing Analysis Tool

$
0
0

Hi,

 

There’s a standard pricing analysis tool, report RV61A_ANALYSEREPORTS_PRICING or transaction code PRCAT, hidden… but available to be used.

 

Let’s have an overview to the most interesting options, last three ones.

 

1.JPG

 

RV61A GETFORMULAS is useful to get conditions and formulas a sales document used. We can use restrictions (customized formulas / all formulas,
used conditions / all in pricing procedure, with / without subtotals).

 

Document number entry mustbe filled with leading zeroes. Once run we have similar info as when checking document’s pricing procedure

 

2.JPG

 

Selecting all conditions we’ll get actual conditions defined in the pricing procedure the document is using.

 

Columns KOBED, KOFRM and KOFRA show routines from VOFM. As a reminder,

 

In KOBED we have pricing requirements routines LV61Annn and RV61Annn

In KOFRM we have condition value formulas FV64Annn and RV64Annn

In KOFRA we have condition base value routines FV63Annn and RV63Annn

 

Once we know what routines our document used, we can move to next option...

 

RV61A USEREXITS and Formulas / conditions defined in VOFM

 

In this option we can see, in 2 different tabs, active / inactive user exits, with their coding, and formulas / conditions defined in VOFM.

 

Formulas/Condition

3.JPG

 

We can select copy requirements, data transfer, requirements and formulas.

 

In GETFORMULAS previous screenshot example we saw following info:

 

- in column KOBED (pricing requirements)  routines 2, 9 and 10.

- In column KOFRM (condition value formulas) routines 14, 18 and 48

- In column KOFRA (condition base value) routine 16

 

 

Then in order to see what coding was used we would select

4.JPG

 

And then chose evaluate all conditions and formulas in next screen (there’s a problem with input format and this option seems the only one working) and execute to display source code:

 

5.JPG

 

In this case, I've select price requirement routine 2

6.JPG

 

User exits

 

7.JPG

 

Select the ones you want to check, and in next screen you’ll see which ones are active / inactive. Select and execute to see the source code. For example user exit RV61AFZA form userexit_pricing_rule which is inactive (0 lines active):

 

8.JPG

Last option is also interesting...

 

RV61A compare KONV, T683S and T685A.

 

This is a comparison among tables KONV (conditions), T683S (pricing procedure data) and T685A (additional price elements).

 

When running this option, SAP will display differences found between the document price procedure used when creating the document and actual pricing procedure,  showing the differences found.

 

The following fields are checked:

 

KSTAT statistical condition, KVSL1 Account key, KVSL2 Accrual account key, KDUPL Struct. Condition,

KFKIV Intercompany billing, KGRPE Group condition, KNTYP Condition category, KOAID Condition class,

KOUPD Condition update, KRECH Calculation type, KRELI Invoice type condition, KRUEK Accruals,

KTREL Rel. for acct assigt, KVARC Variant condition, KZBZG Scale basis, MDLFG Matrix maintenance

 

Unfortunately it is not checked if a condition existing in the sales document is not anymore in the actual pricing procedure (fortunately it is easy to find out).

 

Enjoy.

 

Regards,

JM

 

           

AUTO PACKING

$
0
0

AUTO PACKING

 

Prerequisites:

    

You have to defined one or more package types.

Requirement

 

While doing the delivery process assigning the material with the suitable packing material with correct quantity by manually will be muddled sometimes (most of the times), to avoid this SAP has provided a solution. By using these you can pack Number of different materials with suitable packing material with single click.

 

STEP 1:Create a Packing Instruction (single level)                T.CODE: POP1

 

You can give your own packing instruction here.

 

1.JPG

2.JPG

Here the first line represents the item level; the second one is the Item category.

By default the first line will be the packing material. Type the Packing material code.

  1. M      Material(FERT)
  2. P       Packaging materials(VERP)
  3. I         subordinate packing instruction
  4. R       Reference material
  5. T        Text item(TATX)

Target Quantity:  it represents the total quantity to be packed in that particular packing material. It is nothing but according to the customer need or according to the business process the packing quantity is made.

 

Minimum Quantity: There should be at least certain numbers of material to be packed in the packing material.

EX: Let us assume you receive an order for 550 nos.

If the target quantity is 500 and minimum quantity is 100 while doing packing only 500 will be get packed. 50 numbers remains unpacked. (100 or more than 100 are allowed to pack).

 

If the target quantity is 500 and minimum quantity is not maintained or left blank. While doing packing you can pack 550 quantities in two boxes

The first one contains 500 and the second will have 50.

 

Rounding Quantity:

Let us take a cotton box which has a capacity to hold 500 no’s of the finished goods, and it is further going to pack in pallet. The pallet has a capacity to load 10 cotton boxes.

Now you receive a customer order for 4600, which has to be sending in pallet. If you maintain the rounding quantity as 10 then system will not allow packing the pallet. The reason is

  1. Each cotton box can have 500 no’s so {(4500/500) =9} only nine cotton box will be there. So it will not allow packing the pallet.

If you not maintain are left blank the rounding quantity, system will allow packing the pallet irrespectively the number of boxes not exceeding the Target Quantity.

 

Unit of measure: In sales you have different unit of measures according to the needs. Kindly make sure the units of measure of the materials you enter are correct. 

 

Note:  The Target Quantity is a Mandatory Field whereas the Minimum Quantity and Rounding Quantity are Optional Fields.

 

 

Kindly maintain the check profile as 01(SAP Standard.) in admin data.

 

 

STEP2:Create Determination Record                  T.CODE: POF1

 

 

 

5.JPG

Select determination type as SHIP.

6.JPG

     Enter the material and Packing instruction which we created in POP1. You can also maintain alternate packing instructions.

By clicking the packing instruction icon above the valid date field, you can cross verify the selected packing instruction is correct or not.save and exit

 

 

Create a sale order and then do the delivery processes, in delivery click the packing icon

 

7.JPG

 

Click auto packing icon.

 

8.JPG

The material is packed in the carton box.and handling unit number will get generated.

9.JPG

To see the ordinal status of packing, click the total content tab.

 

10.JPG

The Number "0" represents the packing material and "1" is the material. Each carton box contains 10 nos of the material.

 

 

Click back button and check the number of packages in the delivery overview screen.

 

11.JPG

 

With Regards,

 

R.Karthick


Map any structure to Extension Data (bapiparex) used in BAPI Create

$
0
0

Hello,

 

There is no API readily avaliable to map user specified enhanced fields into extension data to be passed into standard BAPI's for creation of either quotation / sales order or PO documents.

 

Taking example of customer quotation creation scenario.Specific customer requirement needs enhancement of standard SD tables like VBAK, VBAP, VBEP and VBKD.These enhancements are done using Include Structure in respective tables.Now, customer requirement could be maintaining these enhanced fields

using BAPI.BAPI provides a flexibility to update these enhanced fields using EXTENSION Structure and system automatically continues processing it.Structure

of this extension field is BAPIPAREX which contains Include Structure name and four value parts each of length CHAR240.Now, mapping of any structure to

extension data for BAPI input is a tedious task as individual fields needs to be mapped to BAPIPAREX.This API shall solve this problem of mapping any structure to Extension Data.It takes any structure and its name as input and converts it into BAPIPAREX structure which can be directly passed in BAPI. No other processing shall be required.For a typical quotation creation, we use BAPI BAPI_QUOTATION_CREATEFROMDATA2. This BAPI has table type EXTENSIONIN as input for enhancement fields.Similarly this API can be used in any BAPI which supports user-specific enhancments and take BAPIPAREX as input.

 

Code:

 

 

*"*"Local Interface:

*"  IMPORTING

*"     REFERENCE(IR_DATA) TYPE  ANY

*"     REFERENCE(IV_TAB) TYPE  TABNAME

*"  EXPORTING

*"     REFERENCE(ES_EXTENSION_OUT) TYPE  BAPIPAREX

*"     REFERENCE(ET_RETURN) TYPE  BAPIRET2_T

*"----------------------------------------------------------------------


  DATA lref_data        TYPE REF TO data,

          lv_length        TYPE i,

          ls_return        TYPE bapiret2,

          ls_extensionout  TYPE bapiparex.



  FIELD-SYMBOLS : <fs_data> TYPE any.



  CONSTANTS: lc_len TYPE i VALUE 30.



  "Get Input reference

  GET REFERENCE OF ir_data INTO lref_data.

  ASSIGN lref_data->* TO <fs_data>.



  "Get length of bapiparex

  DESCRIBE FIELD <fs_data> LENGTH lv_length IN BYTE MODE.



  "Fill valuepart(s)

  CALL METHOD cl_abap_container_utilities=>fill_container_c

    EXPORTING

      im_value               = <fs_data>

    IMPORTING

      ex_container           = ls_extensionout+lc_len(lv_length)

    EXCEPTIONS

      illegal_parameter_type = 1

      OTHERS                 = 2.



  IF sy-subrc <> 0.



    "Return Error message

    ls_return-type = 'E'.

    ls_return-id = 'MSG_CLASS'.

    ls_return-number = '021'.

    MESSAGE ID 'MSG_CLASS'

     TYPE 'E'

    NUMBER '021'

     INTO ls_return-message.

    APPEND ls_return TO et_return.

    CLEAR ls_return.



  ELSE.



    "Move Structure name to extension

    ls_extensionout-structure = iv_tab.

    MOVE ls_extensionout TO es_extension_out.



  ENDIF.

 

Enjoy

Data Archiving – Billing Documents (SD_VBRK)

$
0
0

Data Archiving – Billing Documents

 

Object : SD_VBRK

Usage  : Billing Documents

Residence Time : 600 Days

Tables : 53 Tables are considered for archiving

Prerequisites :

 

- The residence time for billing documents is longer than the runtime for rebate processing 

- The residence time must have expired.

- The billing document must have overall processing status "C" (completed) or "Blank" (not relevant).

- The subsequent documents should completed (VBUK-GBSTK = "C" or "Blank").

- The relevant FI documents must have cleared (optional).

 

Note:

Though not mandatory, It is advisable to archive the following before billing documents are archived with SD_VBRK:

- RV_LIKP (SD Deliveries)

- FI_DOCUMNT (Accounting Documents)

 

 

Archiving Write Job : Creating the archive file

 


 

Run the SAP Archive Administration (transaction code SARA). Give the object name SD_VBRK in the Object Name input field. Click on the write button .

 

 

Give a variant name, click on maintain button.

 

 


 

 

Maintaining the Variant

 

The variant for selection can be created by providing the sales document, billing type, created on range ,sales organization or by company code.

 

In options,if the change date: Residence time check should be maintained if the residence period check to be calculated based on the document change date. If left unchecked, the residence period check will be done based on the creation date.

 

If the Check Flow Documents Residence option is checked then the billing document will be archived only if the residence time for all the documents in its document flow has completed their residence time.

 

The processing mode selected should be ‘Production Mode’.

 

Note: To have more control on the process, use maximum selection options while creating the variant.

If you want a detail log, check the detail Log checkbox. You can also give a note for the archiving session. To view the variant attributes, click on the attributes button

 

 

 

Use the meaningfield to give a short description of the report variant. If you select the field Protect variant, the variant can only be changed by the person who created it or last changed it. Selecting the field Background only makes the variant executable only in the background.

 

 


 

 

 

 

 

 

 

 

 

    

 

 

 

 

 

 

 

 

 

How to hide cost price in Sales Process and MB51

$
0
0

Dear Fellows

 

I came across a requirement once in my previous job and many users ask me on E-Mails or on other IM about this so I thought I should share some points which we need to consider achieving this requirement. Although some points have already been disccused in many threads for different requirements but in this document I am going to gather all the documents/discussions under one umbrella so that actual requirement can be fulfilled with all of these ideas.

 

Requirement was to hide the cost price from different screens for all end users except few. In other words it was to control cost price display access SAP user wise. In sale order process we can view the cost price in condition tab VPRS condition in sale order and billing document and in billing document overview screen.

 

I don’t know what other transactions you have given to your end users where they can view cost price but in my case there were Sales Order, Billing document, MM03 and MB51. Our internal audit department was concerned about these transactions. I will share some previously published documents and discussions here which I used to get the information about this requirement. Let’s go one by one.

Material Master

 

If you have given the access of MM03 to your end users you can control the views with authorization object M_MATE_STA. I restricted the Costing view for all end users except those to whom we wanted to give access of viewing material’s cost price.

 

Sales Order and Billing Document Condition tabs

 

It is difficult and tricky to hide VPRS condition value or any other condition value for some users in sales order and billing document condition tab. There are no settings in standard SAP to do this neither any screen variant or transaction variant. I searched for this and found SAP note 105621 in which they have mentioned step by step how to implement this note to restrict some conditions for some users. We can hide condition value or restrict users to enter any condition manually. This note is applicable in sales order and billing document condition tabs. 

I have shared another document which you can view herewhich describes how to implement this note and if still you need some assistance to implement this note you can ask me in comments or direct message.

Billing Document Overview

 

We can view cost price during billing document create, change or display process. To restrict this we need to use SAP standard table control settings. We can hide any column, change location of columns and set the variant as default. There is an authorization object S_ADMI_FCDwhich takes care of this table control variant access and no user can change it until he has appropriate access in this object. There is a document which you can view by clicking hereand it was shared by * Ammarah * on how to control table control settings and its uses.

 

MB51 Report

 

MB51 is the report which shows detailed information on material movements. Importance of this report was like a back bone in my company due to batch management in finished goods material. Controlling department was using this report for different analysis purposes.

 

We can add or remove different fields from MSEG and MKPF tables in MB51 selection or output screns through standard IMG settings. For this there is a document which you can view here and it was published by A M This approach was not useful for me because it will add or remove the field for every user within our SAP system but I was asked to do this for some specific users. I was not able to control this user wise and I raised thread in SCN but didn’t get anything from there. I then checked it with my ABAPER and we debugged the standard MB51 report and got a triggering point where we added our own logic by implementing implicit enhancement and controlled the Amount in LC field user wise in MB51.

 

We used RM07DOCS program and in its subroutines section we added the coding in DATA_SELECTION. You can view this in below screen shot as well.

 

21212221.JPG

 

For this we maintained a Z table with SAP User names and validated the current user names with that table. If users were same then Amount in LC field was displayed otherwise it was blank. We can also use some customized authorization object for this but I got this idea later after I transported the Z table and logic so I didn't change the settings but if you wana go for this technique please go with authorization object instead  a Z table.

There are also some other reports like MB5B and MM60 etc but these were not in my target. May be you get some requirement like this and I am sure if you debug that report you would get similar triggering point where you can add your own logic.

 

I haven't added screen sho for every process because this document is to give you an idea. All processes and screen shots are there in each document and discussion which I have shared in this document so you can follow those. If you have some other screen/place where cost price can be viewed please highlight that so that we can find a way out to control that user specifically.

Hope it will be helpful for some of you.

 

 

Regards

 

MoazzaM

"Default Values In VK11"

$
0
0

Hello Guys,

 

By default maintaining of fields in transaction-VK11

 

This can be useful for the client/end users who have to maintain there condition record several times.

 

For eg. This is a condition record maintaining for Export process FOB, it’s a small example for reference you can use as per user requirement.

 

Here parameter are been user for sales organization and price group and it’s been assigned in specific user ID. Below screen shot will help you to understand the process.

 

First step is to find the parameter of particular field which you want to maintain by default.

 

Step 1:-Find Parameter


Go to respective field as here sales organization press F1 then click on Technical Information. You will arrive at below screen.

 

pic3.jpg

 

Step 2:-

 

Assign parameter for all fields needed by requirement as per above you are clear how to find parameter,in this example i am making use of Sales organization-VKO and Price Group-VKA in t code SU3 with help of basis  in parameter tab. as in snapshot below.

 

 

pc4.jpg

 

 

Step 3:-Go to VK11 enter condition type

 

Enter condition type as here ZFOB.

 

pic2.jpg

 

Step 4:-


Enter default value will be appearing as below snap shot.

 

pic1.jpg

 

This is just small example as per requirement it can be designed...

 

Hope it will be helpful,plz give valuable comment if useful....

 

Thanks and regards,,

MWST - Is it calculating wrong ? No way.

$
0
0

I had a peculiar problem posed by one of my user and thanks for this.

 

As per the User, SAP is calculating wrong MWST for a perticular line item as in the inset

 

scn1.png

 

Here it shows for the Value 144.80 the tax is 23% means it should calculate = 33.30

 

But calculating 33.33 i.e. .03 pence more and then checked in item condition MWST where I didnt understand first what is this condition round diff .03

 

scn1.png

 

why should SAP calculate MWST wrong?

 

I posted the thread and scratched my head endlessly and then found a peculiar behaviour of SAP

 

SAP calculates the Net VAT (MWST) to the correct value at the  bottom line, but rounds up and adjust with the highest calculated priced line item. I have checked randomly few invoices and found rounding can be seen for the highest calculated priced line item.

 

For example: 

Line item 40 in the sales order had the highest value and there the SAP rounded up.

 

scn1.png

and the line item 40 is highest priced and now go to item condition select MWST, double click and see

 

scn1.png

 

But when you see for the less then this priced line item you would not see the condition round diff as in inset

 

scn1.png

 

 

Similarly I check for several orders and this is the same thing I seen on every order.

 

One can calculate the whole Sales Order and see if the MWST is wrong?

for each line item if you see might be confusing, but when you total it up, will be right.

 

So in a nutshell, I can say SAP is calculating MWST right at the bottom line, but when you see each individual lines, it will be sometime confusing.

 

Any comments and suggestions are welcome.

 

By the way I have a related thread which inspired me to write this for the SAP Community is

 

http://scn.sap.com/thread/3423707

 

Thanks,

Sridhar Vijjhalwar

 

 

 

Text At sales order level....

$
0
0

Text for all sales order same should appear in all sales order...

 

It can be used for any text object this is one example for sales header level text.

 

Just have to maintain text once as below...

 

 

 

Follow the below steps:

 

Go T.code- SO10

 

Enter Any text name for.eg. ZZTEXT as below

         Text Id -ST

          Create tab

11.png

Enter your text and save it as below...

 

2.png

Now Go To-VOTXN-depend on requirement as here i chosen header

 

Sales header as above-and click change3.png

 

 

select header note access sequence

 

 

and add one seq. new as ex.

 

seq:-5

text obejcet:-TEXT

ID:ST

Text Name-ZZTEXT ( it will be last block in row)

and save and create sales order

 

 

6.png

9.png

 

create sales order and go in header and - text tab

 

7.png

 

it will be helpful for all sales order hope its helpful and fulfill your requirement

 

Regards..

Incompletion Log in SD

$
0
0

In general

 

Incompletion Log ensures that all required fields in a document are populated. Incompletion procedures can be configured to (1) raise no messages, (2) raise a warning message, or (3) raise an error message.

If configured with no warning message, the system will indicate the sales document is incomplete and offer an option to complete missing data upon save. The incompletion procedure determines to what extent further processing of the document is allowed and if subsequent documents can be created. If a document is incomplete, it cannot be referenced.

 

Incompletion procedure

 

An incompletion procedure groups the fields together that must be checked for completion. If any of the fields are blank, the document is incomplete. Incompletion procedures can be assigned and maintained at various levels and for various document types:

 

  • Sales header (different procedures can be assigned to different document types)
  • Sales item (item categories can contain different procedures)
  • Schedule line (each can contain different procedures)
  • Partners (can maintain different procedures for each partner function)
  • Sales activity
  • Delivery header
  • Delivery item

 

To display the procedures run transaction OVA2 or use the IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Incompletion Procedures.

proc.JPG

Incompletion procedures are assigned to each document type via transaction VUA2 or use IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Assign Incompletion Procedures > Assign Procedures to Sales Document Type. The incompletion procedure can be viewed in document configuration (VOV8) but can only be changed here. To prevent the document from being saved if any fields are incomplete, check the box IC-dialog. In example below document type CR (Credit Memo Request) cannot be saved if any fields in incompletion procedure 14 are not populated.

cr.JPG

 

 

Sales - Header Group (A) uses incompletion procedure 14 which contains the following fields:

14.JPG 

The Table, Field Name and Description fields above are self explanatory. Screen field is the function code (Fcode) the system uses to navigate from incompletion log to the screen where field is missing. If no entry is made here, you cannot branch to correct screen to complete missing data. See Note 422132.

 

The available Fcodes for sales header screens are:

 

<BLANK>

No automatic screen selection available      

KBESSales: Header - PO data
KBUCSales: Header - Financial accounting
KDE2Sales: Header - Shipping
KDE3Sales: Header - Billing document
KGRUSales: Header - Additional data A
KKASSales - Item proposal: Header - Business data
KKAUSales: Header - Sales
KKNTSales: Header - Product allocation
KKONSales: Header - Conditions
KKPBSales - Independent Requirements: Header - Business data
KPARSales - Header - Partner
KPAR_SUBSales: Header - Partner (Subscreen)
KSTASales: Header - Status
KTEXSales: Header - Texts
KTPRSales: Account determination analysis
KVERSales: Header - Extras - Sales data
KZKUSales: Header - Additional data B
WPA1Sales: Header - Partner - Detail
WUMASales - Delivery order: Header data

 

Status group indicates whether system will record a status message in item or header status screens in sales document. Path: transaction OVA0 or IMG > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Status Groups.

 

Warning indicates if a warning message is received if no entry is made. Can only be used for fields in sales order. If this box is not checked but fields are incomplete, upon saving the document you will be brought to incompletion screen where you can branch to each missing field.

 

Sequence refers to the order the missing fields will be processed in the incompletion log. The first field to be procesed is given the lowest value but fields with no value are processed last.

 

 

Status groups

 

Status Groups are assigned to specific fields in the incompletion log and control further processing of the document.  It is possible to specify that if field X is missing, further processing is allowed, but if field Y is missing, no further processing is permitted. Further activities of the document can be blocked, for example, the sales document can be saved but a subsequent document for delivery, billing, or pricing can be blocked. Status groups can be defined in transaction OVA0. 

Standard Status Groups include:

 

General: Checks status of general fields assigned to this status group in the incompletion procedure. General fields can include PO Number, document date, etc. 

 

Delivery: Setting this status in the status group and assigning the status group to a field in the incompletion procedure causes the sales document to be incomplete and may prevent creation of delivery document, e.g. if the plant or shipping point is missing.

 

Billing: Setting this status causes the sales document to be incomplete for further processing and may prevent the creation of a billing document, e.g. if the terms of payment is blank in the sales order.

 

Pricing: If pricing is not carried out, the sales document is incomplete and may prevent subsequent billing documents from being created.

 

Goods Movement: System determines the status of the goods movement data by checking the fields that comprise this status group in the incompletion procedure. For example, you can specify that the item data of a delivery is incomplete for goods issue if the quantity picked is missing.  If the quantity

picked is not specified during delivery processing, the system issues corresponding status message. This is only valid for shipping documents.

 

Picking: You can specify that the item data of a delivery is incomplete for picking if the serial numbers have not been assigned, and the system issues corresponding status message. This is only valid for shipping documents.

 

Packing: You can specify that the item data of a delivery is incomplete for packing if the external delivery identification is missing.  If the external delivery identification has not been specified during delivery processing, the system issues status message. This is only valid for shipping documents.

group.JPG

This table indicates whether the system records a status message in the header and item status screens of sales documents. If you mark this status for a particular status group, the system determines the status by checking the fields assigned to the status group in the relevant incompletion procedure. If some or all of the fields are missing information, the status message says that the function is partially incomplete or incomplete. If all the fields are filled, the status message will say complete.

 

 

Configuration

 

  1. Set up Status Groups (OVA0).
  2. Define procedure (OVA2).
  3. Assign status group to fields (OVA2).
  4. Assign procedure to various document types as follows:
    1. Orders (VUA2)
    2. Deliveries (VUA4)
    3. Items (VUP2)
    4. Schedule Lines (VUE2)
    5. Partners (VUPA)
    6. Sales Activities (VUC2)
  5. Set Error or warning message (VUA2).
  6. Test expected results.

 

Important transactions

 

OVA2Define incompletion procedure
VUA4Assign incompletion procedure to delivery type
VUA2Assign incompletion procedure to Sales document Header
VUP2Assing incompletion procedure to Sales item category
VUE2Assign incompletion procedure to Schedule line category
VUPAAssign incompletion procedure to Partner functions
VUC2Assign incompletion procedure to Sales Activities
OVA0Define Status groups
V.02List incomplete sales orders
VUA2Set warning or error message on document save

 

Important tables

 

VBUVIncompletion log - Sales documents
VBUKHeader incompletion
VBUPItem incompletion
TVUVGGroups
TVUVProcedures
TVUVFFields
TVUVSStatus groups
TVUVFCFcodes
V50UCIncompletion log - Deliveries
V50UC_USERIncompletion log - Deliveries - Enhancements
FMII1Funds Management Account Assignment Data

How to trigger output message determination for already created sales documents

$
0
0

Hi,

 

we may face a situation where for already created sales documents, we need to determine and print messages that, for whatever reason, were not determined when creating the documents (for example, a failure in output determination, missing records) or there’s a new output type now in use that we need to print.

 

How to trigger output in those cases?

 

Once the process for output determination is completed in customizing & functional, we will need to open documents for modification and save them to trigger output determination.

 

If number of documents is really small, we can think of manually open and close them (for example, VA02, VA05N for sales orders) but if number is big, we’ll need another approach: we can use MASS transaction or develop an abap program that opens sales documents for change and saves them.

 

MASS transaction. Let’s see how-to with an example for sales orders.

 

First we need to find a field we don’t use in our sales orders. Let’s say purchase order field.

 

Then we run MASS transaction and select object code type BUS2032 and execute. Then in tab TABLES, we select table MASSSDHEAD_S, and in tab FIELDS, we select field MASSSDHEAD_S-BSTKD (purchase order). Now we select our sales orders and execute. In the following screen we set a value, for example, a dot (.) in new values and click on icon carry out a mass change.

1.JPG

 

This will copy a dot (.) to our sales documents in purchase order field. When saving, system will update sales orders in background, triggering output determination. Now we can open a new session to check the results in our sales orders. If dispatch time is set to 4 for the output message, output should start immediately.

 

Now we come back to MASS transaction session, to undo the changes. We remove values from New values, click on icon carry out a mass change to remove the dot (.) from our sales orders and save.  If dispatch time is set to 3, we can print the sales orders with report SD70AV1A.

 

Regards,

JM

Multiple free goods (FOC's) - 1: Many

$
0
0

Hi


We can give multiple free of charge item's (Free Goods) for one main item.


Using Cross Selling function we can do this process.


Points to be considered why suggesting this process:

1. We can give validity periods for the condition records.

2. Simple master data maintenance.

3. Material moment processes working normally.

4. FI postings are happening properly


First do the Cross selling Configuration process.


Menu path - In the IMG screen - Sales & distribution - Basic functions - Cross selling

 

1.Define the determination procedure for cross selling

Create condition tables:- e.g - 501 - Material

Maintain access sequence and assign the condition table to it.

Define condition types:- e.g - C001 and assign Access sequence to it.

Maintain procedure:- e.g - C00001 - Cross selling and assign condition type C001.


2.Maintain customer/document procedure for cross selling:-


Assign this customer procedure "B - Cross selling" - Customer master(XD02/VD02) - sales area data section - sales tab - PP cust. proc. as 'B' - cross selling.

Define Document procedure for cross selling:- 'B' - Cross selling.

Assign document procedure for cross selling to Sales document type:- Choose the sales doc type, e.g - OR and assign doc. proc. as 'B' - Cross selling.


3.Define and assign cross selling profile:-


New entries we have to define the Key for cross selling profile, e.g - CS001 - Cross selling profile.

And in the General Controls we have to specify the product proposal procedure:- e.g - A00002, Cross selling procedure - C0001, Pricing procedure:- which pricing procedure you want to use multiple free goods (For example standard RVAA01 or your company pricing procedure starts with "Z'.

Dialogues for cross selling indicator:-  Select # 2 - 'Blank' - dialogue box appears only on request and after data is released.

    

We have to check the Cross selling ATP indicator to carry out ATP check on cross selling items. Then we will Save it & go back.

 

4. Assign cross selling Profile


New entries - Sales area  + Cross selling Customer procedure + Cross selling Document procedure + Cross selling profile.

 

Item Category Determination:


The item category determination (VOV4) should be made as:-


OR+NORM+BLANK+BLANK = TAN

 

fig6.JPG


OR + NORM + CSEL + TAN = TANN.

new 5.JPG


Create Condition records:

 

Goto VB41:- Specify material determination type, e.g - C001 and select key combination as per your requirements.


1. First material column enter Main material item

2. Second material column enter Free material item

3. Select 'A' in cross-selling delivery control for "Out. delivery only if main item has been partially delivered"


new 6.jpg


After entering second material column click Alternative Materials Icon (F2).

1. Enter validity period for the multiple free goods condition

2. Enter list of materials which we want to give as a free goods.

3. Select 'A' in cross-selling delivery control for "Out. delivery only if main item has been partially delivered"

new7.JPG

Save the condition record.

 

Goto VA01 enter main material and quantity which we maintained in 'VB41'.


1. POP UP appears with sub items. (Standard cross selling process we need to enter sub item quantity manually)

Ask your abaper to do enhancement spot for the particular process to copy main item quantity to sub-item's quantity and make it grey.

so that end user cant able to change the sub-item's quantity.

new1.jpg

2. Select copy icon (F8) - The items which are in the popup screen copied to the sales order.

new2.JPG

Check all the line item's, Item category in Item overview tab. Main Item - TAN, Sub-Item's (FOC Item's) - TANN

 

Do the rest of the sales cycle process.

 

Invoice screen

new 3.JPG

Invoice output layout:

new 4.JPG

Do test with sales returns cycle, cash sales cycle also.

 

I've tested and It's works fine.



 

Thanks & Regards,

 

Dinesh. A

Displaying text on overview screen + Copying text in Sales Doc

$
0
0

There are number of blogs / documents where we can get the how to get do the text determination and lot of discussions in the community. This document is continuation of such contributions, as I could not find this piece of information.


This document illustrates how to display the text in the overview screen of the sales order & also Change/display the text, when customer / material are entered in the order.


1. Text Display on the overview screen


Business Scenario:In some cases, the end users may ask for easy/fast entry of data where they can key in all the details without much navigation. It may not be required in all cases, but user will have easy accessibility to enter the text.


This feature is available only for Sales document header level in VOTXN.


Suppose you have the texts as shown below in the Sales Document Header.


D1.jpg

You create text procedure according to requirement of the client.


Access Sequence is created, if data has to be copied from the Master data or some source and assigned to the text procedure.


When you go to assign the Text Determination procedure to the Sales document type, you will see the, ‘Text in Overview screen’ checkbox option. If this is ticked, we will be able to see the text in the sales order overview screen.


D1.jpg

D1.jpg

Here, you can see texts under the Sales tab.


2. Display text while copying.


Business Scenario: There may be requirement of client that in the order confirmation output where texts are printed they need to modify certain data. If the option of display while copying is entered, then users can make the changes to the master data text, if necessary. 


Example: A company XYZ has customer ABC. In the master data of ABC they have maintained some payment instructions in the customer master, which will be printed on their order confirmation / acceptance output. Later while creating the sales order for customer ABC, they may need to change text looking into a particular payment situation for that order. The intension of this is to make it easy entry for the users, during sales order entry.


TD - ASeq.jpg

In the above screen, notice that sequence 60 has access sequence 54. In this access sequence, the text is being copied from customer master.


D2.jpg

In the text determination procedure, ‘Text is obligatory’ column, you have option Y & Z. If you select either of the option, text will be displayed while creation of sales orders.


D2.jpg


I have selected option Y & let us see the effect.


Let us create a Sales Order & enter the customer.


D3.jpg


Once you enter the Sold-to Party, you will see the pop-up display. This text has been maintained in the customer master.


Similarly, you can maintain text for item level i.e., you can display text when material is entered.


Notes for Reference:


There may be some issues while we use this option for which there are some notes / corrections to be applied, which are as referred below.


If "Text will be displayed during copying" is set for the text ID in the text determination procedure in text Customizing, the text is not displayed correctly. This may occur for Cyrillic fonts.


  • SAP Note 1353999 Text not displayed correctly
  • SAP Note 1357124 Text is not displayed correctly II
  • SAP Note 1439262 Text not displayed correctly III
  • SAP Note 1534640 Text not displayed correctly IV

Incompletion Log in SD

$
0
0

In general

 

Incompletion Log ensures that all required fields in a document are populated. Incompletion procedures can be configured to (1) raise no messages, (2) raise a warning message, or (3) raise an error message.

If configured with no warning message, the system will indicate the sales document is incomplete and offer an option to complete missing data upon save. The incompletion procedure determines to what extent further processing of the document is allowed and if subsequent documents can be created. If a document is incomplete, it cannot be referenced.

 

Incompletion procedure

 

An incompletion procedure groups the fields together that must be checked for completion. If any of the fields are blank, the document is incomplete. Incompletion procedures can be assigned and maintained at various levels and for various document types:

 

  • Sales header (different procedures can be assigned to different document types)
  • Sales item (item categories can contain different procedures)
  • Schedule line (each can contain different procedures)
  • Partners (can maintain different procedures for each partner function)
  • Sales activity
  • Delivery header
  • Delivery item

 

To display the procedures run transaction OVA2 or use the IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Incompletion Procedures.

proc.JPG

Incompletion procedures are assigned to each document type via transaction VUA2 or use IMG path > Sales & Distribution > Basic Functions > Log of Incomplete Items > Assign Incompletion Procedures > Assign Procedures to Sales Document Type. The incompletion procedure can be viewed in document configuration (VOV8) but can only be changed here. To prevent the document from being saved if any fields are incomplete, check the box IC-dialog. In example below document type CR (Credit Memo Request) cannot be saved if any fields in incompletion procedure 14 are not populated.

cr.JPG

 

 

Sales - Header Group (A) uses incompletion procedure 14 which contains the following fields:

14.JPG 

The Table, Field Name and Description fields above are self explanatory. Screen field is the function code (Fcode) the system uses to navigate from incompletion log to the screen where field is missing. If no entry is made here, you cannot branch to correct screen to complete missing data. See Note 422132.

 

The available Fcodes for sales header screens are:

 

<BLANK>

No automatic screen selection available      

KBESSales: Header - PO data
KBUCSales: Header - Financial accounting
KDE2Sales: Header - Shipping
KDE3Sales: Header - Billing document
KGRUSales: Header - Additional data A
KKASSales - Item proposal: Header - Business data
KKAUSales: Header - Sales
KKNTSales: Header - Product allocation
KKONSales: Header - Conditions
KKPBSales - Independent Requirements: Header - Business data
KPARSales - Header - Partner
KPAR_SUBSales: Header - Partner (Subscreen)
KSTASales: Header - Status
KTEXSales: Header - Texts
KTPRSales: Account determination analysis
KVERSales: Header - Extras - Sales data
KZKUSales: Header - Additional data B
WPA1Sales: Header - Partner - Detail
WUMASales - Delivery order: Header data

 

Status group indicates whether system will record a status message in item or header status screens in sales document. Path: transaction OVA0 or IMG > Sales & Distribution > Basic Functions > Log of Incomplete Items > Define Status Groups.

 

Warning indicates if a warning message is received if no entry is made. Can only be used for fields in sales order. If this box is not checked but fields are incomplete, upon saving the document you will be brought to incompletion screen where you can branch to each missing field.

 

Sequence refers to the order the missing fields will be processed in the incompletion log. The first field to be procesed is given the lowest value but fields with no value are processed last.

 

 

Status groups

 

Status Groups are assigned to specific fields in the incompletion log and control further processing of the document.  It is possible to specify that if field X is missing, further processing is allowed, but if field Y is missing, no further processing is permitted. Further activities of the document can be blocked, for example, the sales document can be saved but a subsequent document for delivery, billing, or pricing can be blocked. Status groups can be defined in transaction OVA0. 

Standard Status Groups include:

 

General: Checks status of general fields assigned to this status group in the incompletion procedure. General fields can include PO Number, document date, etc. 

 

Delivery: Setting this status in the status group and assigning the status group to a field in the incompletion procedure causes the sales document to be incomplete and may prevent creation of delivery document, e.g. if the plant or shipping point is missing.

 

Billing: Setting this status causes the sales document to be incomplete for further processing and may prevent the creation of a billing document, e.g. if the terms of payment is blank in the sales order.

 

Pricing: If pricing is not carried out, the sales document is incomplete and may prevent subsequent billing documents from being created.

 

Goods Movement: System determines the status of the goods movement data by checking the fields that comprise this status group in the incompletion procedure. For example, you can specify that the item data of a delivery is incomplete for goods issue if the quantity picked is missing.  If the quantity

picked is not specified during delivery processing, the system issues corresponding status message. This is only valid for shipping documents.

 

Picking: You can specify that the item data of a delivery is incomplete for picking if the serial numbers have not been assigned, and the system issues corresponding status message. This is only valid for shipping documents.

 

Packing: You can specify that the item data of a delivery is incomplete for packing if the external delivery identification is missing.  If the external delivery identification has not been specified during delivery processing, the system issues status message. This is only valid for shipping documents.

group.JPG

This table indicates whether the system records a status message in the header and item status screens of sales documents. If you mark this status for a particular status group, the system determines the status by checking the fields assigned to the status group in the relevant incompletion procedure. If some or all of the fields are missing information, the status message says that the function is partially incomplete or incomplete. If all the fields are filled, the status message will say complete.

 

 

Configuration

 

  1. Set up Status Groups (OVA0).
  2. Define procedure (OVA2).
  3. Assign status group to fields (OVA2).
  4. Assign procedure to various document types as follows:
    1. Orders (VUA2)
    2. Deliveries (VUA4)
    3. Items (VUP2)
    4. Schedule Lines (VUE2)
    5. Partners (VUPA)
    6. Sales Activities (VUC2)
  5. Set Error or warning message (VUA2).
  6. Test expected results.

 

Important transactions

 

OVA2Define incompletion procedure
VUA4Assign incompletion procedure to delivery type
VUA2Assign incompletion procedure to Sales document Header
VUP2Assing incompletion procedure to Sales item category
VUE2Assign incompletion procedure to Schedule line category
VUPAAssign incompletion procedure to Partner functions
VUC2Assign incompletion procedure to Sales Activities
OVA0Define Status groups
V.02List incomplete sales orders
VUA2Set warning or error message on document save

 

Important tables

 

VBUVIncompletion log - Sales documents
VBUKHeader incompletion
VBUPItem incompletion
TVUVGGroups
TVUVProcedures
TVUVFFields
TVUVSStatus groups
TVUVFCFcodes
V50UCIncompletion log - Deliveries
V50UC_USERIncompletion log - Deliveries - Enhancements
FMII1Funds Management Account Assignment Data

How to Find the Table Navigation Logic for Sales Document Variant Configuration (CUOBJ) Values

$
0
0

Many times we are using BAPIs / Function modules to fetch the characteristics values for the Sales Order, Deliveries and Invoices. But it may cause the performance issue in the program. Also as a functional consultant we have to remember the FM names for the required characteristics values and sometimes we do not have such authorization to execute the FM. This can be easier to us if we know the table navigation just like other sales tables joining logic to fetch the characteristics values based on SO/DO/Bill. The below table join logic will help to fetch the values for the Variant Characteristic’s values.

 

 

Remarks: You need to go to these tables IBIN and V_IBIN_SYVAL.

 

IBIN has VBAP object number and use that to get the IB: unique record number and then go to V_IBIN_SYVAL using that record number as the key.

 

Use Configuration Object number (VBAP-CUOBJ) to read the instance value in table IBIN and then get corresponding characteristics values selected from view V_IBIN_SYVAL

 

Similarly we can find it for LIPS-CUOBJ,VBRP-CUOBJ & etc.

 

  Table join diagram;

 

     VBAP                                             IBIN                                                  V_IBIN_SYVAL

Figure1.png

Figure 1: A sample Table join logic view through SQVI

 

 

Example:

 

Order Number: 400035129 (Line Item: 10)

 

  1. VBAP: Enter order no, get Configuration (CUOBJ): 4264666 leading zeroes not needed.

 

   2.  IBIN: Enter Component (INSTANCE): 4264666.

 

Get Record Number (IN_RECNO): KPNzEgcN483X08002XC4FG

 

   3.  V_IBIN_SYVAL: Enter Record Number (IN_RECNO).

 

Get Internal Char no. (ATINN) and Characteristic Value (ATWRT) (Multiple values for these two fields).

 

 

 

Step by Step Screen Shot

 

Figure2.png

Figure2: Sales order item configuration (CUOBJ) data

 

Figure3.png

Figure3: VBAP-CUOBJ in table IBIN-INSTANCE

 

Figure4.png

Figure4: Record number from table IBIN with the help of Component (VBAP-CUOBJ)

 

Figure5.png

Figure5: IBIN-IN_RECNO in table V_IBIN_SYVAL

 

Figure6.png

 

Figure5: Sales Order item Variant Configuration Values

 

I hope this document will help to test the sales vc values required in various reports as output.

 

Thanks,

Suman$

 

End of Document

Viewing all 239 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>