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

Authorization for displaying manual condition in Sale order.

$
0
0

this all ready explain mozzam , in my explanation with out authorization group hiding some specific condition values



Business Requirement:

 

Sometime client asks for hiding some specific condition value like VPRS etc from condition tab of sale order or invoice. This is not possible in standard.  All process has been described step by step in this note. I am just explaining it with screen shots .

 

Now you need to add these includes in program LV69AFZZ. Here you have to take help of your ABAPER for implementing this Enhancement. Once its implemented, you can add your coding in it. Go to T-Code SE38 give program LV69AFZZ and click on display button.


&---------------------------------------------------------------------*

*&      Form  USEREXIT_FIELD_MODIFICATION

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

 

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1) Form USEREXIT_FIELD_MODIFICATION, End                                                                                                             A

*$*$-Start: (1)---------------------------------------------------------------------------------$*$*

ENHANCEMENT ZZ_FLOOR_PRICE_AUTH1.    "active version

        INCLUDE ZZ_FLOOR_PRICE_AUTH.

ENDENHANCEMENT.

*$*$-End:   (1)---------------------------------------------------------------------------------$*$*

endform.                               " USEREXIT_FIELD_MODIFICATION


include ZZ_FLOOR_PRICE_AUTH.logic


*&---------------------------------------------------------------------*

*&  Include           ZZ_FLOOR_PRICE_AUTH

*&---------------------------------------------------------------------*

 

    DATAlt_user_list   TYPE STANDARD TABLE OF tvarvc,

           lw_user_list   TYPE tvarvc,

           lr_user        TYPE RANGE OF syuname,

           lw_user        LIKE LINE OF lr_user.

 

**Get list of users who are allowed to See

    SELECT * FROM tvarvc

      INTO TABLE lt_user_list

      WHERE name = 'ZSD_FLOOR_PRICE_AUTH'

        AND type = 'S'.

    IF sy-subrc = 0.

      LOOP AT lt_user_list INTO lw_user_list.

        lw_user-sign = lw_user_list-sign.

        lw_user-option = lw_user_list-opti.

        lw_user-low    = lw_user_list-low.

        lw_user-high   = lw_user_list-high.

        APPEND lw_user TO lr_user.

        CLEAR lw_user.

      ENDLOOP.

    ENDIF.

 

    IF sy-uname NOT IN lr_user.

 

 

      IF ( komv-kschl eq 'ZBPP' or komv-kschl eq 'ZBFP' or komv-kschl eq 'ZFPA' or

           komv-kschl eq 'ZPPA' or komv-kschl eq 'ZEPA' ).

        IF                ( SCREEN-NAME = 'RV61A-SELKZ'

                            OR   SCREEN-NAME = 'KOMV-KAWRT'

                            OR   SCREEN-NAME = 'RV61A-AWEIN'

                            OR   SCREEN-NAME = 'KOMV-KBETR'

                            OR   SCREEN-NAME = 'RV61A-KOEIN'

                            OR   SCREEN-NAME = 'KOMV-KPEIN'

                            OR   SCREEN-NAME = 'KOMV-KMEIN'

                            OR   SCREEN-NAME = 'KOMV-KWERT'

                            OR   SCREEN-NAME = 'KOMV-KWERT_K'

                            OR   SCREEN-NAME = 'KOMV-KUMZA'

                            OR   SCREEN-NAME = 'RV61A-MEINS'

                            OR   SCREEN-NAME = 'KOMV-KUMNE'

                            OR   SCREEN-NAME = 'RV61A-KMEI1').

          SCREEN-ACTIVE = 0.

        ENDIF.

      ENDIF.

      MODIFY SCREEN.

    ENDIF.


include this logic and maintain the user ids in STVARV t code level varint name like this ZSD_FLOOR_PRICE_AUTH

here you maintain the which user ids display the condition values , those user only see the condition type values .


dear experts pl comment on this

 




Uploading Customer Master Texts through LSMW.

$
0
0

Uploading long text for Customer Master through LSMW

 

Requirement: Loading the long text for Customer Master data in SAP.

The flat file in our example contains the long text for General Data tab in  Customer Master Data. The same LSMW can be used to upload the texts in Company Code Data and also in the Sales Area Data tabs. The header record contains the Customer information (Table name, Customer Number and Text ID) and is identified by the starting character ‘H’. The item records contain the long text to be uploaded for the Customer and the starting character ‘I’ identifies the record. See the screenshot below: 

  1.png

 

Enter the T code LSMW and press Enter.

On the Screen "Legacy System Migration Workbench" click on create icon  2.pngor Press (Shift + F1)

Enter the  Project, Subproject and Object and their descriptions as shown in the below screen shot and press Execute icon 3.png    or F8.

 

4.png

5.png

Once executed we will reach the below screen and we need to follow the below steps:


6.png

  1. 1.Maintain Object Attributes

Now select the Maintain Object Attributes radio button and press execute 3.png.

On the screen LSMW Workbench: Display Object Attributes click on the icon  7.pngand select the Standard Batch/Direct Input.

On the field Object Enter "2000" (SAP script Texts) and Method as "0000" or you can select from the drop down menu.


8.png

After selecting the

Object : 2000

Method : 0000 (Defaults to 0000 automatically), save the changes  and press back icon  or F3.

You will reach the below screen with radio button selected on "Maintain Source Structures", now click on execute.


11.png

 

  1. 2.      Maintain Source Structures

Create two structures one for Header and one for Item. The item structure will be at lower level for the Header and save. Press back and select the radio button "Maintain Source Fields".

  12.png

Press back button and select the radio button "Maintain Source Fields" and click on Execute.

 

  1. 3.      Maintain Source Fields

Define the fields as per the flat file structure. In both the structures the first field must be identifier. Create the identifier field of character 1 and specify the identifying field content 'H' for header structure and 'I' for item stricture as shown below. 

13.png

 

Header Structure

  14.png

Item Level Structure.

15.png

Here the Field LINE of item structure is char 132, so each text line from the input file must be less than or equal to the length 132.  Save the changes and press back button. Now we have to maintain the Structure Relations.

Select the radio button "Maintain Structure Relations" and click on execute


  1. 4.Maintain Structure Relations

Assign the header source structures to all the Header target structure and Item source structure to all Item target structure.

Select the header texts and click on the icon "Relationships"  and select the header structure as shown below.

17.png

Your screen should look like the below screen shot after assigning all the header and Item structures.

18.png

Save the changes and go back by pressing F3 or the Back icon.

Now select the radio button " Maintain Field Mapping and Conversion Rules " and press execute.

  1. 5.      Maintain Field Mapping and Conversion Rules

Map the source fields to the target fields


Header mapping

  19.png

Item mapping

 

20.png

Save the changes and press the back button.

Now we need to specify the files. Select the radio button "Specify Files" and press execute.

  1. 6.      Specify Files

Place the cursor on Legacy data On the PC Front end and click create button

Enter the input file details

  21.png

Select the delimiter 'Tabulator', if the fields in the input file are separated by tab. Save the changes and press back button.

  1. 7. Assign Files

Select the Assign files and click on execute

Now we need Assign the input file to both the structures, Select the header structure and click on Assignment icon  and also select the Item structure and click on Assignment icon . See the below screen shot which should look like this after assigning the files both at header and item level.

22.png

  Save the changes and press the back button.

  1. 8.      Read Data

Execute the Read data.

23.png

Once again execute to show the read data as below.

24.png

Press back twice to reach the below screen and now we need to execute the "Display Read Data"

25.png

  1. 9. Display Read Data

Execute the Display Read Data and click continue on the Popup.

26.png

The system displays the read data from the flat file as shown in the below screen shot.

27.png

Press back to reach the main screen.

  1. 10.  Convert Data - Execute the convert data

Now execute the Convert data step. Once again click on execute, So that the system shows the converted data as in the below screenshot.


28.png

Press the back button twice to reach the LSMW menu in order to execute the next step i.e., Display Converted Data.

  1. 11.  Display Converted Data.

Press execute on the Display Converted Data and on the popup select continue,

29.png

So, that the system displays the converted data as below.

30.png

 

Press back to reach the LSMW menu and execute the last step " Start Direct Input Program"

  1. 12.  Start Direct Input Program

Click on Execute, once again click on execute

31.png

 

Result: The Long text will be updated for the selected customers. 

Transaction XD03 to view the Customer text uploaded through LSMW.

32.png

Double click on the text line to display the uploaded text in the editor mode.

 



End of LSMW for Customer Master Texts.

Batch Management in Sales and Distributions

$
0
0
  1. 1.0 Batch
  2. 1.1 Definition

Batch is a quantity or partial quantity of a certain material or product that has been produced according to the same recipe. It represents a homogenousunit with unique specifications.

Note :

  • Batches are always assigned to a material
  • Batches can only be used for materials that are to be handled in batches

  1.2 Purpose 

In various industries – particularly the process industry – you have to work with homogenous partial quantities of a material or product throughout the logistics quantity and value chain

There are various reasons for this:

  • Legal requirements (for example, the guidelines set out by GMP (Good Manufacturing Practice) or regulations on hazardous material
  • Defect tracing, callback activities, and regression requirement
  • The need for differentiated quantity-and value-based Inventory Management (for example, due to heterogeneous yield/result qualities or varying constituents in Production.
  • Differences in usage and the monitoring thereof in materials planning in SD and Production.
  • Production or procedural requirements (for example, settlement of material quantities on the basis of different batch specifications).

  2.0 Batch Level and Number Assignment 

  1. 2.1 Batch Level

In the SAP System, the batch number uniquely identifies the batch. You use the batch level to specify whether the batch number for a material is unique in one plant, or in all plants.

  • Plant level
    The batch number is unique in connection with the plant and material.

The batch number is only known in the plant in which it was created if the stock is transferred to another plant, the batch is unknown in the recipient plant and the system does not adopt any data. You have to recreate and specify the batch in the receiving plant; that is, the same batch number may have different specifications in several plants.

  • Material level:
    The batch number is unique in all plants in connection with the material.

  The same batch number has the same meaning for the material in all plants. One batch number cannot have different specifications in different plants. During stock transfer to another plant, the specification of the batch is known in the destination plant even if the batch is placed into storage in that plant for the first time. 

  • Client level:
    The batch number is unique in the whole client. A batch number can only be assigned once in the client. You cannot assign the same batch number for different materials
  1. 2.2 Batch Number Assignment

The batch number may be assigned at different times, for example:

  • During manual creation of a batch
  • When carrying out goods movements, for example, goods receipt or transfer posting
  • During creation of a process or production order
  • When a usage decision is made in quality management
  • During quality analysis (due to aging, for example)
  • When creating a purchase order

  3.0 Batches in Sales Processing 

  1. 3.1 Sales Documents for Batches

For materials managed in batches individual batch numbers can be entered for the following documents:

  • Pre-sales documents (such as inquiries or quotations)
  • Sales orders
  • Delivery

  3.2 Batch Checks 

If you enter a batch number directly into the sales document, system may carry out the following checks :

  1. Availability of Batch
  2. Expiry Date for Batch etc.

  4.0 Copying Batch Numbers  

  1. 4.1 Copying Batch Numbers in Sales Documents

When a pre-sales document is copied to a sales order, any existing batch numbers are also automatically copied but cannot be changed in the sales order.

For a sales order with materials to be managed in batches that does not have a preceding document,  batch numbers can be changed until subsequent documents, such as the delivery, have also been created.

  1. 4.2 Copying Batch Numbers from Sales Order to Deliveries

When copying a sales order with batch numbers to a delivery, all batch data is automatically copied. The batch numbers which are copied to the delivery cannot be changed.

when creating a delivery, if the system discovers that the copied batch is not valid, a warning is issued by the system. In this case, the batch specification must be changed in the sales document source

  1. 4.3 Automatic Batch Determination in Delivery Documents

If no batch number is proposed in the sales order for an item with material to be handled in batches, automatic batch determination can be carried out in the delivery.

  1. 5.0 Splitting Batches in a Delivery

Batch split describes the situation when you want to specify quantities from more than one batch for a particular delivery item.

To carry out batch split in a delivery, proceed as follows:

In the delivery, mark the item for which you want to split batches and choose Goto ItemBatch split.

  1. 6.0 Master Data for Materials handled in Batches
  2. 6.1 Batch Management Indicator

If a material is managed in batches, you indicate this fact in the material master record in either the Purchasing or Plant data/storage 1 views.

  1. 6.2 Availability Check

In the General Sales view, or in the MRP view, choose availability check group CH. The replenishment lead time should not be considered in the dynamic availability check for batches, since batches are not reproducible.

  1. 6.3 Classification

A Class must be assigned with Class type 022 or 023.

  1. 7.0 Batch Specifications
  2. 7.1 Definition

Batch specifications describe the technical, physical and/or chemical properties of a batch. You store batch specifications, such as batch status or active ingredient potency, as characteristics in the Classification System.

Example : Batches of car paint are specified by color value, viscosity and expiration date. The characteristics color value, viscosity and expiration date for these properties are stored in the classification system and the respective values are assigned to each individual batch.

  1. 7.2 Specifications in the Classification System [Characteristics]

You define properties of the material and its batches and store them as characteristics in the classification system.

  1. 7.3 Classes

You create classes for the material and the batches and assign the characteristics to the classes.

  1. 7.4 Class Type

The class must be assigned to a class type. There are two class types of the category Batch for batches and their materials:

    • 022 at plant level
    • 023 at client or material level

  7.5 Material Master Record 

Material master record is to be created and assigned the desired class to the material and assign characteristics to the material. Only one Class may be assigned for the Class type 022 or 023.

The replenishment lead time should not be considered in the dynamic availability check for batches, since batches are not reproducible. In the General Sales view, or in the MRP view, choose availability check group CH.

  1. 8.0 Path for creating various objects
  2. 8.1 Characteristics [CT04]

Cross Application ComponentsClassificationMaster DataCharacteristics

  1. 8.2 Classes [CL01]

Cross Application ComponentsClassificationMaster DataClasses

  1. 8.3 Batch [MSC1N]

LogisticsCentral FunctionsBatch ManagementBatchCreate

  1. 9.0 Creating a Batch Master Record
  2. 9.1 Creating a Batch Master Record Manually

To create a batch master record manually, choose LogisticsCentralFunctionsBatch ManagementBatchCreate

  1. 9.2 Creating a Batch Master Record in the Background

The system creates a batch master record in the background in the following procedures:

  • The first time goods are received for a batch
  • During creation of a process or production order
  • When a usage decision is made in quality management
  • During a recurring inspection
  • For transfer postings (when you want to split a batch, for example)
  • When creating a purchase order

  10.0 Batch Determination 

  1. 10.1  Batch determination in Supply Chain Process

Batch determination is used for all types of goods movements from the warehouse to find batches that meet defined specifications. It is used for the following areas :

  1. i. Inventory Management (IM),
  2. ii. Production (PP/PP-PI)
  3. iii. Sales and Distribution (SD)
  4. iv. Warehouse Management System (WM)
  5. 10.2 Condition Technique

Condition Technique is used for the determination of Batches.

  1. 11.0 Batch Determination in Sales and Distribution
  2. 11.1 Points for Batch Determination

There are four points at which you should use batch determination in Sales & Distribution. These are:

  • Quotations
  • Quantity contracts
  • Sales orders (or scheduling agreement)
  • Delivery

  11.2 Path for Configuration 

IMG Logistics General Batch Management Batch Determination and Batch Check

  1. 11.3 Path for Condition Records

LogisticsCentralFunctionsBatch ManagementBatchCreate

  1. 12.0 Batch Determination – Configuration[for Sales and Distribution]
  2. 12.1 Standard Condition Tables
  3. 12.2 Standard Access Sequences
  • 001 Material
  • 002 Customer/material
  • 003 Customer/plant/material
  • 004 Destination country/material group
  • 005 Destination country
  • 006 Material group

Access sequences SD01, SD02, and SD03 are defined in the standard SAP R/3 System

  1. 12.3 Standard Strategy types [Condition Types]

Strategy types SD01, SD02, and SD03 are defined in the standard SAP R/3 System

  1. 12.4 Standard Batch Search Procedure

The standard SAP R/3 System contains search procedure SD0001

  1. 12.5 Allocate Batch Search Procedure/Activate Check

Batch search procedures are assigned to the combinations of sales organization, distribution channel, division and sales document type. [1000 10 00 OR → SD0001].

Set indicator Check batch, if the system has to check manually entered batches

  1. 12.6 Activate Automatic Batch Determination in SD

Auto batch determination indicator is set for those order and delivery item categories for which batch determination is to be triggered automatically.

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

Different freight scenarios and copy freight condition from delivery to billing document.

$
0
0

Hi

 

From sales point of view there are different processes that how you are managing your freight. If you are delivering some physical goods by using some vehicle and paying its transportation cost to vednor then you can have various options or requirements that how this freight should be calculated and posted. It depends on management decision and their requirement that how do they want you to configure this in system. I am listing down some scenarios and in this document I am going to explain most simplest one and after this I'll move on to others in next documents.

 

  1. Freight is being paid to vendor/transporter and you don't have transportation module implemented. You also create accrual/clearing entry for this.
  2. Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Company pays this freight and bears the expense.
  3. Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Comapny doens't pay this freight but charges to customers.
  4. Company has it's own transportation vehicles and it doesn't pay freight to any vendor but calculates and charges this separately to customer.

 

In this document I'll be covering point number one only which is how to enter freight in delivery document and copy this to billing and post in FI with accrual entry. This accrual entry will be debiting freight expense and crediting freight payable liability which will be debited later on when we will pay to vendor.

 

Configuration steps.

 

While explaining these steps I assume that you are familiar with basic configuration steps and prcesses.

 

Create separate pricing procedure in V/08 with only one condition in it i.e. Freight Expense. This freight expense is basically an accrual condition and you have marked it as accrual in V/06 under control data 2. Condition class A and calculation type is C. This is manual condition and no need to maintain any access sequence. If you want to make it automatic then use access sequence and maintain condition record.

 

Capture.JPG

 

Assign this pricing procedure to your delivery type. For delivery types we can't determine pricing procedure like we do for orders or billing documents.

Capture.JPG

Capture.JPG

 

Now maintain E in pricing source for copy control from delivery to billing document in VTFL Tcode.

 

Capture.JPG

Configuration is completed and you can now test your scenario. I am listing down the steps that I did for its testing.

 

 

Created sale order with VA01.

 

Created delivery order with VL01N and entered freight charges at header level in delivery document because this freight is for complete delivery document.

Capture.JPG

 

Created invoice in VF01 and here you can see that freight charges have been copied from DO to billing document.

 

Capture.JPG

 

Posted invoice to FI with VF02 and in accounting document you can view that freight expense is with debit entry and freight accrual is with credit.

 

Capture.JPG

 

 

This is how we control freight with most simplest and easiest way. I will continue this document by explaining key points in process number 2 I have listed above. If you have some other scenario which I have not covered in these 4 listed scenarios then I would appreciate if you share that in comments section and I will try my level best to cover that too in this document.

Positive/negative feedback will help me to improve next documents.

 

Thank$

CONSIGMENT STOCK AND RETURNABLE PACKAGING BY SHIP TO

$
0
0

Dear all:

 

With this document I explain the steps necessaries to manage the Consigment Stock and Returnable Packaging material by SHIP TO.

 

Introduction:

 

The stock on loan to the customer as CONSIGMENT STOCK or RETURNABLE PACKAGING MATERIAL is managed by the function SB Special stock partner.

 

By default is managed by the SOLD TO.

 

 

With this customizing is posible to manage by SHIP TO.

 

1. Assign the Partner determination for WE/SH Ship to Party with SB Partner function.

 

SPRO--> Sales and Distribution --> Master Data --> Business Partner --> Customers --> Customer Hierarchy --> Set Partner determination for Hierarchy categories --> Set up partner determination for customer master.

 

a) Assign SB partner funtion to SH Partner procedure

 

image 1.JPG

With this customizing you assing to to partner funtion SOLD TO the function SB SPECIAL STOCK PARTNER

 

b) Assign Account groups with SB partner function

 

image 2.JPG

 

With this customizing you assing to Account groups for SHIP TO the partner function SB.

 

2. Update customer with SB partner function

 

image 5.JPG

 

3 Choose both functions in Sales order

 

image 6.JPG

 

image 7.JPG

 

In parter tab for the sales order you can see both ,partner functions.

 

image 8.JPG

 

Later with MB58 you can track the stock for consignment stock or Returnable material packaging for each SHIP TO instead SOLD TO.

 

I hope this information are useful for you.

 

Antonio Martínez R

Credit management: how to use a helpful log on sales documents changes

$
0
0

Hi,

 

Have you ever needed a log where sales documents changes involved in credit are recorded? If the answer is yes, keep reading.

 

The log can be very helpful to get further details on document changes in tables S066 and S067 when you need to find out answers to what, when, who ... questions.

 

While report RVKRED88 show us actual data, report SD_VKMLOG_SHOW will show us what has happened during the way, along with actual data.

 

 

Let´s go:

 

We only need to activate table TVKMLOG, creating an entry via tcode SE11 (once entered table name, click on display, go to menu bar, utilities, table contents, create entries).

 

We activate it by setting X in ACTIVE field, enter the number of days the system will maintain the logs in field KEEP and decide if we want the system delete the logs automatically, field DELE AUTOM, after the number of days we typed in field KEEP. We can, at any moment, add a new entry to change actual values (for example, leave blank field ACTIVE to stop recording logs).

 

 

0.JPG

 

 

 

Once active, report SD_VKMLOG_SHOW (tcode SE38) will display logs created for our documents since activation.

 

Let´s have a quick look at the report.

 

After creating our sales order, we select logs for sales orders, type in our sales order number and tick on show lines w/o update

 

 

2.JPG

 

Because sales order, in the example, was blocked by credit, amounts are 0.

 

 

3.JPG

 

 

Once released, running report again with same parameters, we can see and understand changes (who, when, how).

 

 

4.JPG

 

 

After creating the delivery, we can see that open order amount has moved to open delivery. Here, we select logs for SD document and type in delivery number (you can type also sales order number).

 

 

 

5.JPG

6.JPG

 

 

 

We can select option Logs for Credit Account to display changes by credit account and credit control area and data is displayed by document flow (sales, delivery, invoice) with totals

 

7.JPG

 

8.JPG

 

 

 

Finally, option “Delete Logs”

 

 

9.JPG

 

checks values set in table TVKMLOG. If we left blank entries KEEP and DELE AUTOM in table TVKMLOG (see activation explanation at the beginning of the document), we can delete logs by selecting this option, otherwise, log deletion will depend on values set in KEEP and DELE AUTOM fields.

 

If table TVKMLOG or report SD_VKMLOG_SHOW is not available in your system, you´ll find table definition and report coding in OSS note 1042857.

 

Regards,

JM

 

 

 

 

What´s additional price condition and how to use it

$
0
0


What´s additional price condition and how to use it


What is it?


An additional price condition is a price condition that depends on another price condition that has been previously retrieved when pricing is carried out in sales documents.

 

How to use it: business case


There was recently a request in the forum on how to solve the following scenario:

 

A price condition should be determined only if another condition was determined by a specific key combination (customer and material). Then and only then, a discount, if exists, has also to be determined.

 

Although a posible solution sounds to abap coding, it can be solved by using additional conditions. Let see how.

 

Custo


We define our own pricing conditions, for example,  PRZJ (price) and ZZKA (discount)

 

1.JPG

 

Remarks:

 

Once created the additional pricing procedure (see below in the document), we´ll need to update the condition to add it in field PricingProc.

 

Access sequence has exclusive search.

 

2.JPG

 

Condition ZZKA

 

3.JPG

 

Remarks:

 

Athough we´re not creating records for this condition directly on VK11, we need to type in an access sequence (when pricing, system will use PRZJ condition access sequence to retrieve PRZJ and its linked ZZKA condition).

 

In our normal pricing procedure we must have defined both price conditions.

 

4.JPG

We need to define an additional pricing procedure that will be called automatically in case system determines price condition PRZJ.

 

This price procedure will contain only conditions PRZJ and ZZKA (in our example).

 

5.JPG

Now, once saved, we can update our condition PRZJ and type ZJPR00 in firld PricingProc as already stated before.

 

Funcional


Now we create a record for PRZJ condition in VK11 for customer-material. Once typed in condition value, we click on goto-condition supplements.


6.JPG

To add an additional condition, set the cursor in a blank line and we select from matchcode condition ZZJA and enter discount value. Now condition ZZJA is linked to condition PRZJ for this key combination (customer-material).


7.JPG


Remarks:


If we don´t want to apply this discount  for the combination of a specific customer and material, we just don´t add ZZKA condition here.

 

We create another price record PRZJ for key combination material but without condition suplements.


10.JPG

Test


We create a sales order and system will retrieve price for material (price 10 euros) and its condition supplement ZZJA (2% discount).


8.JPG


When selecting details of condition PRZJ or ZZJA, we can see that they´ve been determined together.


9.JPG

Now, we delete price record for customer-material and create a new sales order. Sytem retrieves price condition by material key combination and condition  supplement it´s not determined as per requirement.


11.JPG


Regards,


Pricing Relevant Customizing - Tables, Structures, Transactions, Userexits

$
0
0

General path:

SPRO > Sales and Distribution > Basic Functions > Pricing

spro.JPG

 

 

ObjectsTablesTransaction codes

Condition type

(KSCHL)

T685, T685A

V/06 for Sales,

M/06 for Purchasing

or SM30 with View Cluster V_T685A

Access sequence

(KOZGF)

T682, T682I, T682Z

V/07 for Sales,

M/07 for Purchasing

orSM34 with View Cluster V_T682

Pricing procedure

(KALSM)

T683, T683S

V/08 for Sales,

M/08 for Purchasing

orSM34 with View Cluster V_T683

Pricing type

(KNPRS)

Internal table STEU

hardcoded in include LV61AA12 and

FORM USEREXIT_PRICING_RULE

Condition exclusion groups

T684

T684G

T684S

SM30 with View Cluster VV_T684_VA 

SM30 with View Cluster VV_T684G_VA 

SM34 with View cluster VVC_T683A_VA

Default condition sales overviewT683VOVKK
Pricing type used in copy control of documentsVTAA, VTFA, VTFL, etc.

 

 

 

Pricing relevant master data  <->  Pricing condition records

Conditionmasterdatatables

How to maintain condition

master data ?

Axxx (e.g. A004)
(Data field KNUMH)

This table is used for the condition access. If access is successful a condition

record number is found (KNUMH).

Transaction

 

VK11 - VK13

 

(or VK31 - VK33)

 

for SD condition records

KONH

(Key field KNUMH)

This table contain administrative data of the condition record, e.g.

ERNAM, ERDAT, ...

KONP

(Key field KNUMH)

This table contains the actual information of the condition recrod, e.g.

9,50 EUR per 1 PC

KONM

(Key field KNUMH)

Quantity scales, e.g.

From  1 PC  9,50 EUR per 1 PC

         10 PC  8,50 EUR per 1 PC

Transaction

 

MEK1 - MEK3

 

for MM condition records

KONW

(Key field KNUMH)

Value scales, e.g.

From  50,00 EUR   5,00 EUR

         100,00 EUR  15,00 EUR

 

 

 

 

Preparation of pricing calls in

TKOMK (header) and TKOMP (item) structures are prepared in

Purchasing

Header data:  FUNCTION ME_FILL_KOMK_PO (include LMEKOU24)

Item data:  FUNCTION ME_FILL_KOMP_PO (include LMEKOU25)

Sales

FORM PREISFINDUNG_VORBEREITEN

in include FV45PF0P_PREISFINDUNG_VORBEREI

BillingFORM PREISFINDUNG_VORBEREITEN in include LV60AA58

 

 

 

 

Relevant structures and tables in SAPLV61A (Functions for pricing) in debugging mode
(T)KOMK

Structure (internal table) with header data.

(T)KOMP

Structure (internal table) with item data.

XKOMV

Internal table with the pricing result of the item processed (conditions and subtotal lines).
When pricing is called this table is always refreshed and built up again.

TKOMV

Internal table with the total pricing result of the document. It contains no subtotal lines.

KOMT1Internal table which contains the customizing data of the pricing procedure and the condition types (T683S, T685, T685A).
KOMT2Internal table which contains the customizing of the relevant access sequences and accesses (T682, T682I, T682Z).

 

 

 

 

 

Userexits in calling programs
Preparation of pricing calls in 'Purchasing'

Header data:  FUNCTION EXIT_SAPLMEKO_001 (include LXM06U14)

Item data:  FUNCTION EXIT_SAPLMEKO_002 (include LXM06U15)

Preparation of pricing calls in 'Sales'

Header data:  FORM USEREXIT_PRICING_PREPARE_TKOMK (include MV45AFZZ)

Item data:  FORM USEREXIT_PRICING_PREPARE_TKOMP (include MV45AFZZ)

Additional triggering of pricing calls in 'Sales'

FORM USEREXIT_NEW_PRICING_VBAP (include MV45AFZB)

FORM USEREXIT_NEW_PRICING_VBKD (include MV45AFZB)

Preparation of pricing calls in 'Billing'

Header data:  FORM USEREXIT_PRICING_PREPARE_TKOMK (include RV60AFZZ)

Item data:  FORM USEREXIT_PRICING_PREPARE_TKOMP (include RV60AFZZ)

 

 

 

 

 

 

Userexits in pricing itself
in the pricing processing logic (program SAPLV61A)

include RV61AFZA:

FORM USEREXIT_PRICING_RULE

FORM USEREXIT_PRICING_COPY

 

include RV61AFZB:

FORM USEREXIT_PRINT_ITEM

FORM USEREXIT_PRINT_HEAD

FORM USEREXIT_XKOMV_BEWERTEN_INIT

FORM USEREXIT_XKOMV_BEWERTEN_END

FORM USEREXIT_XKOMV_ERGAENZEN

FORM USEREXIT_XKOMV_ERGAENZEN_MANU

FORM USEREXIT_XKOMV_FUELLEN

FORM USEREXIT_XKOMV_FUELLEN_O_KONP

in the pricing screen logic (program SAPLV69A)include (LV69AFZZ)
[custom] requirements (KOBED)include LV61ANNN  [RV61ANNN]
[custom] scale base formula (KOFRS)include FV62ANNN  [RV62ANNN]
[custom] condiiton basis formula (KOFRA)include FV63ANNN  [RV63ANNN]
[custom] condition value formula (KOFRM)include FV64ANNN  [RV64ANNN]
[custom] grouping key routines (GRLNR)include FV65ANNN  [RV65ANNN]

 

 

 

 

Pricing procedure with custom requirement, condition value formula and condition basis formula (Number >= 600):

Picture1.png

 

.

.

Delivery lead time Configuration

$
0
0

Hi All

This is how the Delivery lead time configuration can be achieved in sales Order since my route is getting determined at Sales Order level .

Route determination has been used to calculate back picking date from customer required delivery date.

1. Change sales document type to enable route determination


01.PNG

2. Click on Sales document type and required scheduling as below .


01.PNG


3.  Create new routes with delivery lead time in days


01.PNG


4.Transit duration in Days as below in Route creation.

01.PNG



5.Create transportation zones for shipping points and ship-to customers

01.PNG


6.Define T.zone

01.PNG


7.  Assign shipping points to transportation zones


01.PNG


8.See as the assignment below .


01.PNG


9.Setup route determination where you link departure country code and transport zone (shipping point) to destination (ship-to) departure country code and transport zone and route


01.PNG


10. Set up the route as below .


01.PNG


Golden Tax System (China)

$
0
0

Like any other country China has its own tax system. In China for standard business scenario, Business require to register each and every invoice to Chinese legal system. This system is called as Golden tax system.

 

I find there are very less information available on this in English language .

Here I am trying to share my experience, hope it will be helpful to community.

 

Introduction:


Golden Tax System is a system developed by the China Tax Bureau (CTB) to register and pay VAT.

Without Golden Tax System a company cannot issue or print special VAT invoices. Without this company will not able to verify input VAT invoices and would not be able to submit VAT returns.

GTS was originally implemented to combat VAT fraud and invoice counterfeiting since the invoices issued and verified from the central system have unique identifier codes.

As per legal requirements, companies registered in China can issue VAT invoices only using the government owned Golden Tax System (GTS), which issues GT numbers for the VAT invoices sent to it.


SAP Golden Interface:


Capture.PNG


Golden Tax System : Process


  • The process is to send all the required list of invoices to be sent to government owned Golden Tax System.

 

  • The data received by GTS will be validated by Chinese Government officials and once it is done, an official invoice numbers will be issued by GTS against all the successfully validated invoices. As of now, this process of downloading Invoice list from SAP system and uploading the same into GTS system is done through a Third-Party Software. However, now this functionality becomes one of the new business functions in Version SAP ECC 6.0.

 

  • This function helps the Chinese suppliers (who are using SAP for their business) to manage their Invoicing functionality.

 

  • Golden Tax system is not available by default in ECC. We need to activate / enable the Business Function - FIN_LOC_CI_1 using transaction code - SFW5 in ECC6.0.


  • GTS configuration is FI, SD integration area. This will require FI consultant help to do FI settings.

 

Business Function Activation:


After activation of Business Function, you will find three new nodes available under Country Specific Function for China in SAP Easy Access Screen as shown in the below screenshot.


Capture.PNG


  • Creation of Outbound File for GTS Interface (China) from SAP (T Code GT_ULN):

•This report enables to send invoice list details to the GTS for invoice number creation or cancellations.

 

  • Upload of Inbound File from GTS Interface (China) to SAP (T Code GT_DLN):

•This report enables to retrieve invoice numbers that are issued by the GTS after validation of received Invoice lists.

 

We use SAP to create VAT Invoice, and these data must transfer to GTS to print the real invoice and send them to the customer. And in GTS each invoice has its own  GTS invoice Number. so sometimes we need to send these info back to SAP.

 

Therefore we have 3 Steps in SAP:

  1. Generate outbound file to GTS,
  2. Upload inbound file from GTS
  3. Check VAT invoice list.


Processing Steps:

  • Create invoice following the standard procedure.

 

  • Go to Transaction – GT_ULN (Creation of Outbound File for GTS Interface (China) report) and create the file with invoice lists that can be sent to GTS interface for invoice number creation. This file will be stored in the specified directory in local computer.

 

  • Then upload this file from the local computer to GTS (separate system) by logging into GTS and you can also perform the following process:

 

     •Generate VAT invoice numbers and other details for the invoices included in the file.

     • Print the invoices.

     •Create an inbound file to transfer the invoice details from GTS to SAP system.

 

  • Upload the inbound file from GTS into the SAP system.

 

  Using Transaction Code GT_DLN, we can upload the invoice details received from GTS into SAP system.


Configuration Settings:


  • Configuration path:Sales and Distribution ->Billing -> Billing Documents ->Country-specific Features -> Country-Specific Features for China

 

Capture.PNG


Define GTI Tax Invoice Keys:

 

 

•The maximum total amount of an invoice included in the outbound file. When the total amount of an invoice exceeds this value, the SAP system splits the invoice.

 

•The maximum number of line items in an invoice included in the outbound file. When the total number of line items exceeds this value, the Creation of Outbound File for Golden Tax Interface (China) report splits the invoice so that the invoice contains the fixed number of line items.

 

The default unit price mode, either with tax (full price) or without (tax-free price), in the outbound file.


Define Invoice Types:

In this Customizing activity, you make settings that enable the system to generate separate outbound files for requesting the following data from the tax authorities in China:

 

Special VAT invoice numbers

Normal VAT invoice numbers

According to tax laws in China, the VAT payable for general taxpayers and small-scale taxpayers has to be calculated differently.

 

  Activities

If you create normal VAT invoices for specific customers, enter the customer numbers and assign the VAT invoice type as small-scale taxpayer.


Assign Goods Tax Catalogs to Tax Codes:

In this Customizing activity, you make the settings that determine which goods tax catalog code the system enters for each business transaction record when you use the Creation of Outbound File for Golden Tax Interface (China) report.


Activities :

  To define a goods tax catalog code, proceed as follows:

• Create a goods tax catalog code for each of your business transactions to be reported to Golden Tax System.

• Enter a tax code for each of your goods tax catalog codes.

The system defaults to check if the goods tax catalog code is specific to a material number. You can specify the goods tax catalog for a material when the transaction record uses a certain tax code.


Capture.PNG


Specify Unit of Measure for Merging Billing Amounts:

In this Customizing activity, you specify which unit of measure (UoM) the system uses to calculate total amounts when billing items are merged to create the outbound files generated by the Creation of Outbound File for Golden Tax Interface report. This merge is dependent on materials and material types.

 

Report generation steps:

 

  1. Generate outbound file to GTS  (T Code: GT_ULN) :

Key in Sales area, billing document number, VAT condition type are provided by the SD team, provide a path to save the text file that will be generated, Tax invoice key information is provided by the FI team.

The selection parameters can also be saved as a variant for future use.


Capture.PNG


The following screen appears, select the row and click on “Send to GTS”


Capture.PNG

The following message appears at the bottom of the screen


Capture.PNG


At the location specified a text file is generated


Capture.PNG


Above text file is uploaded in the Golden Tax System and generates invoice which is sent to the customer against which customer makes the payment .


2: Upload inbound file from GTS (T Code: GT_DLN) :


3. Check VAT invoice list (T Code: GT_IVL)


Appendix 1: Tax Bureau system ( This will require local FI consultant)


FI User needs to login to Chinese Tax bureau site and upload file generated from SAP.


Capture.PNG




Pre-printed GTS form for printing Invoice :

Capture.PNG



Reference:


Detailing Function Module RV_INVOICE_CREATE

$
0
0

The main objective of this document is to explain in detail what goes on inside function module RV_INVOICE_CREATE.

This is one of the most important function modules in SD Billing.

Hopefully this will help you to find out where an issue is being originated.


1. Function RV_INVOICE_CREATE


rvinvoice.JPG


During invoice creation by transactions VF01, VF04 or VF11 the system will always call the function module RV_INVOICE_CREATE.

 

In general, to find out how a field is filled this is what you need to do:

 

  1. set a breakpoint at the begin of function RV_INVOICE_CREATE;
  2. run the transaction;
  3. set a watchpoint on that particular field.

 

This is how the code works:

 

Function RV_INVOICE_CREATE

...

  Fakturen erzeugen

  LOOP AT xkomfk.                         ---> Loop at the sales documents to be billed

    ...

    PERFORM faktura_erzeugen.       ---> Create the billing items and billing header(s)

...

 

1.1 FAKTURA_ERZEUGEN


If we take a look into the form FAKTURA_ERZEUGEN in include LV60AA26, this is what happens:

 

faktura.JPG

 

FORM FAKTURA_ERZEUGEN.

...

IF XKOMFK-VBTYP CA VBTYP_LIEF.

    PERFORM FAKTURA_LIEFERBEZOGEN.       ---> 1.1.1 Delivery related billing

    EXIT.

  ENDIF.

 

  IF XKOMFK-VBTYP CA VBTYP_FAKT.

    PERFORM FAKTURA_FAKTURABEZOGEN.    ---> 1.1.2 Invoice related billing

    EXIT.

  ENDIF.

 

  PERFORM FAKTURA_AUFTRAGSBEZOGEN.    ---> 1.1.3 Order related billing

 


1.1.1 FAKTURA_LIEFERBEZOGEN (Delivery related billing)

 

Now if we go into FAKTURA_LIEFERBEZOGEN in include LV60AA22, for delivery related billing, this is what happens:

 

liefer.JPG

 

form faktura_lieferbezogen.

...

* Prüfen Bedingungen lt. TVCPF

  if *tvcpf-grbed ne 0.

    bedmodul-nr = *tvcpf-grbed.

    perform (bedmodul) in program saplv60a.        ---> Header copy-requirement routine

...

  loop at alips.                                                  ---> Loop at the delivery items

...

* Lieferung/Lieferposition ohne Referenzauftrag

      perform fakturaposi_lieferbezogen_o_ap.       ---> 1.1.1.2 Delivery without reference

    else.

* Lieferposition mit Referenzauftrag

      perform fakturaposi_lieferbezogen.                ---> 1.1.1.1 Delivery with reference

    endif.

  endloop.

 

 

1.1.1.1 FAKTURAPOSI_LIEFERBEZOGEN (Delivery with reference)

 

Now if we go into the form fakturaposi_lieferbezogen in include LV60AA21, for a delivery with reference, this is what happens:


lieferbe.JPG

 

FORM fakturaposi_lieferbezogen.

...

  perform vbrk_vbrp_fuellen.                           ---> Some VBRP and VBRK fields are filled

  perform fakturadaten_lieferbezogen.             ---> Some VBRP and VBRK fields are filled

...

  if tvcpf-grbed ne 0.

    bedmodul-nr = tvcpf-grbed.

    perform (bedmodul) in program saplv60a.    ---> Copy-requirement routine at item-level

...

  perform vbrk_vbrp_datentransport using rc.    ---> Further data is filled in VBRP and VBRK, perform copy-transfer routine

...

  perform xvbrk_bearbeiten.                            ---> VBRK is set to XVBRK and if there is a split a new XVBRK record is created

...

  xvbrp = vbrp.                                               ---> VBRP is copied into the header line of internal table XVBRP

...

  call function 'PRICING_COPY‘                      ---> Execution of PRICING_COPY

...

  perform preisfindung using tvcpf-knprs.          ---> Executes function PRICING

...

  perform xvbrp_hinzufuegen.                          ---> The new XVBRP line is added to internal table

...

  perform vbfa_fuellen using likp-vbeln lips-posnr likp-vbtyp.

  call function 'RV_XVBFA_MAINTAIN‘             ---> Adjust document flow internal table XVBFA

  ...

  call function 'LIPS_STATUS_MAINTAIN‘         ---> Adjust the billing status of the delivery

 


1.1.1.2 FAKTURAPOSI_LIEFERBEZOGEN_O_AP (Delivery without reference)

 

The form fakturaposi_lieferbezogen_o_ap, for a delivery without reference, is in include LV60AA20. It is very similar to form fakturaposi_lieferbezogen just detailed above. The difference is that since there is no sales order, in this form the system will simulate VBAP and VBAK. Then it will perform the same forms as fakturaposi_lieferbezogen.

 

 

1.1.2 FAKTURA_FAKTURABEZOGEN (Invoice related billing)

 

The form FAKTURA_FAKTURABEZOGEN is for invoice related billing. It is found in include LV60AA25.

 

fakturabe.JPG

 

FORM FAKTURA_FAKTURABEZOGEN.

...

CALL FUNCTION 'RV_INVOICE_DOCUMENT_READ‘              ---> Read the reference billing document

...

  IF XFKART = SPACE.

    PERFORM STORNO_ERZEUGEN.               

  ELSE.

    SELECT SINGLE * FROM TVFK INTO *TVFK WHERE FKART = *VBRK-FKART.

    IF SY-SUBRC = 0.

      IF *TVFK-FKARTS = XFKART.

        PERFORM STORNO_ERZEUGEN.                                 ---> During VF11 the system performs STORNO_ERZEUGEN

      ELSE.

        PERFORM FAKTURA_AUS_FAKTURA_ERZEUGEN.      ---> 1.1.2.1 Otherwise, perform billing-related invoicing

 


1.1.2.1 FAKTURA_AUS_FAKTURA_ERZEUGEN

 

Let's have a look into form FAKTURA_AUS_FAKTURA_ERZEUGEN in include LV60AD08 and what goes on in here.

 

fakausfak.JPG

 

FORM FAKTURA_AUS_FAKTURA_ERZEUGEN.

...

* Prüfen Bedingungen lt. TVCPF

  IF *TVCPF-GRBED NE 0.

    BEDMODUL-NR = *TVCPF-GRBED.

    PERFORM (BEDMODUL) IN PROGRAM SAPLV60A.       ---> Perform header copy-requirement routine

 

...

  LOOP AT XVBRP WHERE VBELN = XKOMFK-VBELN.      ---> Loop at the billing items

    ...

    *VBRP = XVBRP.                                                           ---> From now on *VBRP contains the data of the referenced billing item

    PERFORM FAKTURAPOSI_FAKTURABEZOGEN.            ---> Process billing item

  ENDLOOP.

 

 

1.1.3 FAKTURA_AUFTRAGSBEZOGEN (Order related billing)

 

We have already detailed how form FAKTURA_LIEFERBEZOGEN in include LV60AA22, for delivery related billing, works.

Now let's have a look at form FAKTURA_AUFTRAGSBEZOGEN in include LV60AA30, for order related billing.

 

auftrags.JPG

 

FORM faktura_auftragsbezogen.

...

* Prüfen Bedingungen lt. TVCPF

  if *tvcpf-grbed ne 0.

    bedmodul-nr = *tvcpf-grbed.

    perform (bedmodul) in program saplv60a.                         ---> Perform header copy-requirement routine

...

  loop at avbap where fkrel ne con_fkrel_fpl                           ---> Loop at the order item without billing plan

    ...

    perform fakturaposi_auftragsbezogen using da_subrc.       ---> Process order item

    ...

  endloop.

...

  loop at avbkd where fplnr ne space

                and   posnr ne posnr_low.                                   ---> Loop at the order item with billing plan

    do.

*     Lesen der Fakturierungsplanpositionen

      read table xfplt index da_index.                                     ---> Loop at lines in the item billing plan

      ...

      perform fakturaposi_auftragsbezogen using da_subrc.     ---> 1.1.3.1 Process order item

      ...          

    enddo.

 

  endloop.

 

endform.                    "FAKTURA_AUFTRAGSBEZOGEN

 

 

1.1.3.1 FAKTURAPOSI_AUFTRAGSBEZOGEN

 

Let's take a look into form fakturaposi_auftragsbezogen in include LV60AA29 now.

 

auftrags2.JPG

 

FORM fakturaposi_auftragsbezogen

...

  perform vbrk_vbrp_fuellen.                            ---> VBRP and VBRK are filled

  perform fakturadaten_auftragbezogen.           ---> VBRP and VBRK are filled

...

  if tvcpf-grbed ne 0.

    bedmodul-nr = tvcpf-grbed.

    perform (bedmodul) in program saplv60a.     ---> Copy-requirement routine at item level

...

  perform vbrk_vbrp_datentransport using rc.     ---> Further data filled in VBRP and VBRK, copy-transfer routine performed

...

  perform xvbrk_bearbeiten.                             ---> VBRK is set to XVBRK and if there is a split a new XVBRK record is added

...

  xvbrp = vbrp.                                                ---> VBRP is copied into the header line of internal table XVBRP

...

  call function 'PRICING_COPY‘                       ---> Execution of PRICING_COPY

...

  perform preisfindung using tvcpf-knprs.           ---> Executes function PRICING

...

  perform xvbrp_hinzufuegen.                           ---> The new XVBRP line is added to the internal table

...

  perform vbfa_fuellen using vbak-vbeln vbap-posnr vbak-vbtyp.

  call function 'RV_XVBFA_MAINTAIN‘             ---> Adjust document flow internal table XVBFA

...

  call function 'RV_XVBUP_MAINTAIN_FKGSA ‘     ---> Adjust the billing status of the order

 

 

 

1.2 Message Handling

 

During invoice creation the messages are not issued directly to the user by means of Message ABAP statement.

Instead they are stored in the internal table XVBFS.

 

To catch a message, set a breakpoint at the begin of function RV_INVOICE_CREATE and then set a watchpoint on field XVBFS-MSGNO.

 

 

For other important function modules in SD Billing please check:

 

Important Function Modules in SD Billing

$
0
0

The main objective of this document is to explain in detail the important function modules in SD Billing so that you can understand what happens inside each of them.

 

There are 3 main function modules in SD Billing and they are:

 

  1. Function RV_INVOICE_CREATE
  2. Function SD_COLLECTIVE_RUN_EXECUTE
  3. Function RV_INVOICE_DOCUMENT_ADD

 

For more details on each one of these function modules please check the following documents:

 

  1. Detailing Function RV_INVOICE_CREATE
  2. Detailing Function SD_COLLECTIVE_RUN_EXECUTE
  3. Detailing Function RV_INVOICE_DOCUMENT_ADD

 

Hopefully this will help you to find out where an issue is being originated!

Material Determination - Concept/Customizing/Programs/Common Errors

$
0
0

Concept

 

When you replace a product by another product in a sales order, that is called material determination. For example:

 

  • A material that is ordered for some reason is not available, with material determination the system replaces it with another material that is available;

 

  • In some sectors of industry, the same products are sold in different packaging materials. You can have packaging for your standard product and another packaging for articles on sale or for holidays;

 

  • To change the customer's material number to your own material number.

 

Material master records exist in the system for managing these stocks. When you enter an order, you can use different material numbers for the same product.

 

Material Determination Types

 

In the standard system, there are basically 2 substitution reasons:

 

  • Reason for Substitution 0005 for Manual Product Selection
    • The system does not replace the material automatically, but it displays a popup with a list of all subsitution materials and other information in the master record.

 

  • Reason for Substitution 0004 and 0006 for Automatic Product Selection
    • The system replaces the material automatically if it is not available. The system can display entered and replacing material as main and sub-items in the sales order.

 

Material Determination and Condition Technique

 

The material determination is based on the sales document type. With condition technique criteria can be defined and condition records can be maintained.

 

The logical sequence is:

1 procedure ---> 1 or more condition types

1 condition type ---> 1 access sequence

1 access sequence ---> 1 or more accesses

1 access ---> 1 condition table

 

 

Customizing

 

For the customizing of material determination, you have to start at:

SPRO > Sales and Distribution > Basic Functions > Material Determination

 

Or you can go through the transactions:

 

  • VB11 to create material determination
  • VB12 to change material determination
  • VB13 to display material determination

 

The condition type setting determines the period of validity of the master record.

 

Other general settings include:

 

  • OV26 for Field Catalog: contains the available fields that can be used for selection on the product substitution
  • OV16 for Condition Table: contains the fields which are necessary for the material determination master data. In standard, table 001 is filled with the main material
  • OV11 for Define Access Sequences: here you can check the customizing for the access sequences, linked with accesses and respective fields
  • OV12 for Condition Type: this transaction is executed to assign the access sequence to the condition type
  • OV13 for Procedures: fixes the condition types which are going to be used in the material determination. In standard, the procedure A00001 is configured in order to have the condition type A001 on it. Due to this, the condition records from condition type A001 are checked
  • OV14 for Sales Document Types Material Substitution: the document type suggests which values should be used in the sales document in order to determine the substitute products
  • VOV4 for Item Category Assignment
  • 0184 for Delivery Item Category Determination

 

Reasons for substitution

 

Transactions VB11 or VB12 are used to create condition records for the corresponding key combinations. In this process, you do not specify a reason for substitution. In transaction OVRQ you can create a substitution reason. You can check more information on how to do this here: Creating Substitution Reasons - Basic Functions and Master Data in SD Processing (SD-BF) - SAP Library

 

Copy Control

 

VTAA: Copy control for sales documents item category

 

  • ' ' (blank): product selection is carried out again in the newly created sales order to take into account the new availability situation of alternative materials
  • 'A': the results of product selection are copied from the quotation. If a change is made to the sales order, such as a change in required delivery quantity or required delivery date, product selection is carried out again.
  • 'B': the product selection is copied from the order and is not carried out again even if quantities are changed.

 

VTLA: Copy control for delivery documents item category

 

  • no relevant information for product selection

 

VTFL: Copy control for delivery and billing document

 

  • no relevant information for product selection

 

 

Programs and Function Modules

 

The material determination runs directly according to the material entry. The call sequence is:

 

VBAP-MATNR_PRUEFEN (FV45PF0V)

VBAP-MATNR_ERMITTELN (FV45PF0V)

MATERIALFINDUNG (FV45PF0M)

 

In the Form MATERIALFINDUNG, the communication structures are filled, calling KOMKD and KOMPD here.

 

There are userexits to enable you to fill the tables as per your needs, these are:

  • userexit_move_field_to_komkd (MV45AFZA)
  • userexit_move_field_to_komkd (MV45AFZA)

 

Then, function module PRODUCT_SUBSTITUTION is called. It transfers date, schema, communication structures and application indicator. It will return data in KONDDP_TAB.

 

 

Common Errors

 

Please consider the following notes:

 

97186 - VA01/VA02:preventing mater. determin. for subitem

412789 - Restrictions for product selection

550396 - FAQ: Material substitution and product selection

542537 - Plant determination during material substitution

901178 - Matl determination: Incorrect VRKME determination in order

907023 - Poor performance in material determination

1776268 - Problems w/ material determination for mass change in VA05

1803235 - Authorization check in VB11/12/13

1840554 - Incorrect unit of measure after material determination

Different freight scenarios and Freight calculation, freight PO determination and posting in FI.

$
0
0

Hi,

 

 

I am continuing my  previous document (Different freight scenarios and copy freight condition from delivery to billing document.) in which I had shared some freight scenarios and explained the most simplest one. In this document I'll be explaining the scenarios which are similar to each other and settings are also same except some specific points which I'll explain. This document is related to SD/MM/LE so it is not possible for me to post it in different spaces. Users from Sales and DistributionLogistics Execution and Materials Management can also take advantage of this document.

 

Scenario 2

 

Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Company pays this freight and bears the expense.

 

I am not going into detailed configuration steps of transportation management because that is available in many links. I also assume that you have basic knowledge of Sales order processing, transportation management and purchase order process. We will post freight charges through a freight service PO and I will explain determination of this PO.

 

From Sales order point of view document flow would be like this.

 

ActivityTransaction Code
Create sale orderVA01
Create delivery orderVL01N/VL10A
Create Shipment DocumentVT01N
Create shipment cost documentVI01
Post vendor payment invoiceMIRO

 

In this process you can create billing document with VF01 anytime after creating delivery order. You can change the settings for billing document as per your requirement.

 

From STO point of view you will create STO with ME21N and create delivery with VL10B. Rest of the process would be same.

 

Lets take an example and view this process in screens.

 

I have created a sale order, delivery and shipment document. Now creating shipment cost document. Settings for shipment type, shipment cost document type and item category type has also been shown here.

 

Shipment Type

 

Capture.JPG

 

Shipment cost item category type

 

Capture.JPG

Important Note:    In this above screen you can see that I am not generating PO automatically here. We can use it with both ways. Generte PO automatically or determine it using some specific fields which I'll explain later. You can maintain here A B or C and if you dont want to create PO automatically leave this field blank.

 

Shipment Cost document type and assignment of item category.

 

Capture.JPG

Capture.JPG

 

Now I am creating shipment cost document w.r.t shipment document.

 

Capture.JPG

You can see that net value is calculated based on condition record maintained for departure zone, destination zone, vendor and country etc. There is transfer button which means if you mark this and save document system will post this freight charges to FI. There can be two possibilities here.

 

Create PO Automatically

 

As I have mentioned above that we can create PO automatically for one day one week or one month. This automatically created PO will have service entry sheet as well based on your configuration for account assignment category of PO. There will be no release strategy for this automatically created PO. At end of the period you can post one single invoice for vendor for all shipment documents.

 

Determine PO

 

If you want to use some release strategy for freight service PO then you don't need to create PO automatically. You can create PO manually with ME21N. There are some specific fields which must have similar/specific values in freight service PO and shipment cost document. These fields are as follows.

 

Purchase Order Header

 

Company code

Purchasing organization

Purchasing group

Document currency

Vendor

Invoicing party

Validity start/end

 

Purchase Order Item

 

Plant

Purchase order item category

Account assignment category

Delivery date

Final invoice indicator

Block indicator

Value limit

 

For more information on these fields you can view SAP document which you will get in Message no. VY033 when you mark transfer button and press enter system will give you this following message.

 

Capture.JPG

 

Once you create a valid freight service PO system wont give you this message and will post freight charges in that freight service PO. Let me show you in below screen.

 

Capture.JPG

 

I created this PO with identical fields in shipment cost document. Then I marked the transfer field in VI02 and saved. System posted this in this freight service PO with following accounting entry.

 

Capture.JPG

 

After this what you have to do is just post vendor payment through MIRO. System will credit the vendor and debit the GR/IR account. Following would be accounting entry and purchase order history view.

 

Capture.JPG

 

Capture.JPG

 

Scenario 2 is completed here. Though this is very lengthy process and there can be a lot of screens but as I said earlier I have just shared important screens and assuming that you know rest of the process. If you still have any confusion related to this scenario, you can ask me.

 

 

Scenario 3


Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Comapny doens't pay this freight but charges to customers.

 

This scenario is same as scenario 2 but with one additional settings which is to copy freight from shipment cost document to SD billing document in VF01. For this we have certain controls in copy control of billing document, pricing procedure of shipment cost document and pricing procedure of billing document.

All the settings would be same as in scenario 2 except following which I am explaining in detail. We can also say that following are the prerequisites for copying freight from shipment cost document to billing document.

 

Condition type for Customer Freight

 

In shipment cost document you calculate freight automatically. Now it is upto you that whether you want to bill the same amount to customer which you have paid to vendor or you want to add some margin in it. If you want to bill the same then you don't need to create any separate condition in shipment document pricing procedure. If you want to add some margin then you need to create new condition and add margin using automatic calculation or you may also enter this condition manually. In case of separate condition you need to mark it as static so that it doesn't influence the freight charges which we have to transfer to FI using freight service PO. In my case I am taking 100% of freight charges which we are paying to vendor. This is just a test case and there is no rule for taking 100%.

 

Condition type for customer freight in Transportation IMG node

 

 

Capture.JPG

 

Add this condition type in shipment cost document pricing procedure

 

Capture.JPG

 

Condition Type for Billing Document

 

You must create condition type with same name as it is in shipment cost document pricing procedure. Add this condition type in billing document pricing procedure and assign account key. You also need to mark this condition as manual so that it can copy freight value from shipment cost document.

 

Condition type

 

Capture.JPG

Add this condition type in billing pricing procedure. Here you also need to mark Transaction-specific pricing procedure in V/08 for billing document pricing procedure. This will make sure that static tick mark for this condition is redetermined. Check the F1 help of this field for further details.

 

Capture.JPG


Capture.JPG

 

After this you need to make sure two more aspects. Number one is that you have maintained F in copy control from delivery to billing document in VTFL. Check for the item category you are using.

 

Capture.JPG

 

In shipment document status for Overall status of calculation of shipment costs for shipment VTTK-FBGST must be Completed. In my case I am using stage level shipment so header level is not relevant for calculation but stage level is calculated so the status is complete.

 

Capture.JPG

 

 

If all these settings have been made in your system then you can add customer freight condition in shipment cost document. If you are using same conditinon for customer and transporter/vendor freight then you just need to check that whether it is calculated or not. In my case I have made ZMZM condition in shipment cost document and in billing document.

 

Shipment cost document condition tab and its payment to transporter/vendor.

 

Capture.JPG

Capture.JPG

Capture.JPG

 

Billing Document of customer and its accounting document.

 

Capture.JPG

 

Capture.JPG

 

In this document you can see that sales value is 105.04 and freight which we are charging to customer is 100. Both revenues are posted in separate general leedgers and customer has been debited with 204.60. This is my test case and you can make settings as per your own requirement.

 

 

Scenario 4

 

 

Company has it's own transportation vehicles and it doesn't pay freight to any vendor but calculates and charges this separately to customer.

 

In this case settings are same as in scenario 3. You only need to do is one thing is that don't create a service PO and don't trasnfer it to FI. All other settings would be same.

 

 

Scenario 5

 

Company pays freight to vendor and charge this freight to material price in plant to plant transfer under same company code. This freight is calculated in shipment cost document automatically.

 

This scenario only works for the materials which has pricing price control V Moving average price in material master data. Foor price control S you have to implement material ledger and freight cost would be charged to material price when you run closing cycyle in material ledger. For further information yo can view a thread I raised for this in my this link.

 

For configuring this scenario you need to take care of following things.

 

Activate pricing for STO and add freight value condition with no value in STO. For this you can follow the below path.

 

Capture.JPG

In condition type of STO pricing procedure which you will enter with no value, activate the copy shipment cost by checking this below field.

 

Capture.JPG

 

Condition FRB1 with no value in PO

 

Capture.JPG

 

 

When you create STO > Outbound Delivery you must not PGI it before you create shipment cost document. If you PGI it before shipment cost document, system won't charge the price to material. Create STO > Outbount delivery > Shipment Document > Shipment Cost Document and after that PGI. In this shipment cost document you won't see the transfer action box which we use to transfer cost in FI. Reason behind this is that cost would be charged to material and GR/IR account will also be posted with credit value when you do PGI.

 

Shipment Cost Document without transfer action box.

 

Capture.JPG

 

Accounting Document when you PGI. You can see the debit and credit entries difference and also GR/IR credit entry.

 

Capture.JPG

 

Below is the accounting document which is created at the time of MIRO when you pay the freight value to transporter.

 

Capture.JPG

 

 

 

These are few scenarios which comes in my mind. There could be many others but if you know all of these I think you can configure the system the way you want. With little tweakings all other scenarios could be covered.

 

If I have missed something or you have something to add in this document please write me in comments. I would be happy to see positive/negative feedbacks because I always learn from it.

 

I have spent enough time to learn and test all these scenarios on my own but I would like to thank Jürgen Land Lakshmipathi Gbecause I got guidance from these two SAP Masters.

 

Thank$


Price Point Group configuration how to effect our price rounding

$
0
0

Within this document we will show, we configure parameter for Price Point Group how to effect our price rounding.

I would like to introduce this functional by a business scenario:

1. we configure Price Point Group as below picture.

1.Price Point Group Config.png

2. we calculate price by tx: VKP5, as below screen, we can see purchase price(Basis PP):0.53, and the sales price(Gross SP) has been rounding is 0.69.

2.Purchase Price change before.png

3. then we will change the purchase price (basic PP) from 0.53 to 0.8, to simulate and show the config parameter how to involve sale price rounding.

    as we know that 0.8 * (1+30.189%) = 1.041512. let us to see the system behavior, if we has been configured the Price Point Group.

3.change purchse price.png

4. entry the price 0.8 and press "Enter" button. the system will cll function : PRICE_POINT_READ

5. function to determine price point group (eprgr = pi_eprgr = twpk-eprgr: price point group)

4.system deter price point group.png

6.system calculate

   pi_price = purchase price * (1+ markup%)

   pi_prsfi = twpg-prsfi (first price in price point range)

   pi_prsdi = twpg-prsdi (increment for price point range)

5.calculate 1.png

system will calculate both low and high price

PROZ = PI_RUNRG = TWPK-RUNRG: Rounding = 40

6.calculate 2.png6.calculate 2.png

system determine which price we will be use

7.system determine price.png

Due to the rounding logic, we got price 0.99 as sales price, the are differ with price 0.8 * (1+30.189%) = 1.041512

8.price has been rounding.png

Important intercompany configuration in sales and distribution system

$
0
0

This document will explain necessary configurations required in SAP ECC for enabling Intercompany billing for material movements across the organization either for sales or for stock transfer.


We have following scenarios in an organization where inter-company billing is involved:


Direct Shipment to customer using Intercompany plant: Orders requiring direct shipment of product employs standard intercompany functionality, where the sales order header will reflect the Sales Area owning the sale to the end customer, and the specific line item in question will possess a source plant.  Items with intercompany plants should default a pick-from-stock item category that ultimately generates a delivery from which both an end customer and intercompany invoice will be created. 


Intercompany Stock Transport Orders: To replenish stock at VMI hubs or distribution plant, intercompany stock transport orders with delivery-related billing is employed. 


Intercompany Pricing and Billing: For all intercompany transactions, direct-ship and stock transport alike, billing will be initiated upon PGI of the delivery.  '


Pre-requisite Master Data:

  1. Intercompany Customers master records must be extended to the selling sales areas.
  2. Intercompany Vendor master records must exist in the purchasing orgs.
  3. EDI customer partners must be created to represent each of the sales organizations (WE20).
  4. EDI vendor partners must be created to represent each one of the company codes.


Intercompany Direct Shipments Configuration:

  • OVVA—Assign customer number (Buying company) to the sales organization that it represents


Sales and DistributionBilling Intercompany Billing Define Internal Customer Number by Sales Organization


  • OVV9—Assign Delivering plant to sales area that owns the intercompany sale:

 

Sales and Distribution Billing Intercompany Billing Assign Organizational Units by Plant


  • OVX6—Assign Sourcing plants to buying sales organizations / distribution channels.

 

Enterprise StructureAssignmentSales and DistributionAssign Sales Organization – Distribution Channel - Plant


  • OVV8—Define the order types that are relevant for intercompany billing.

 

Sales and DistributionBillingIntercompany BillingDefine Order Types for Intercompany Billing


Intercompany Stock Transport Orders:

 

  • OMGN—Set up stock transport orders.

 

Materials ManagementPurchasingPurchase OrderSet up Stock Transport Orders

 

Assign Delivery Type/Checking:

Type = NB

Supplying Plant = XXX

Delivery Type = NLCC

Checking Rule = A

 

Purchasing Document Type:

Supplying Plant = XXX

Plant = XXX

Type = NB

 

Intercompany Pricing Configuration:

  • VOK0—Create new pricing conditions

 

Sales and DistributionBasic Functions Pricing Define condition types


  • V/08—Define intercompany pricing procedure: Intercompany pricing may be derived following different intercompoany methodology like Resale Minus or Cost Plus. Depending upon company's requirement, it may be configured.

 

Sales and Distribution Basic Functions PricingPricing controlDefine and assign pricing procedures


  • OVKK—Set up pricing procedure determination for new intercompany pricing procedure for all intercompany billing document types

 

Sales and Distribution Basic Functions Pricing Pricing control Define and assign pricing procedures

 

Intercompany Billing & Postings Configuration:

  • WEL1—Set up automatic postings to vendor accounts.

 

Sales and Distribution Billing Intercompany Billing Automatic Posting to vendor account.

 

Log Address = XXX XXXXXXXXXX

Company Code = XXX

Vendor = XXXXXXXX

  • OBCA—Set up company code assignments for inbound EDI invoice.

 

Financial Accounting Accounts Receivable and Accounts Payable Business TransactionsIncoming Invoices/Credit Memos EDI Assign Company Code for EDI Incoming Invoice.

Partner Type = KU

Partner Number = XXXXX

Company Code = XXX

  • OBCE—Enter posting parameters for EDI invoice receipt for intercompany vendors.

 

Financial Accounting Accounts Receivable and Accounts Payable Business TransactionsIncoming Invoices/Credit Memos EDI Enter Program Parameters for EDI Incoming Invoice.

Partner Type = LI

Partner Number = XXXXXX

Company Code = XXX

Indicators for Transfer:

Posting details:

G/L db.pstg ky = 40                         Invoice doc.type = RE     

G/L cr.pstng ky = 50                        Cred.memo doc.type = RA     

Vend.deb.pstng ky = 21                   Debit clearing acct = (blank)    

Vend.cred.pstng ky = 31                  Credit clearing acct = (blank)     

Tax-ex.tax code = XX

Standard Unit of Measure:

Standard unit = blank

  • OBCB—Set up GL account determination for EDI invoice processing for intercompany vendors.

 

Financial Accounting Accounts Receivable and Accounts Payable Business Transactions Incoming Invoices/Credit Memos EDI Assign Company Code for EDI Incoming Invoice:

Partner Type = LI

Partner Number = XXXXXX

Company Code = XXX

Goods/Services No. = *

Goods/Services Number Details:

Goods/serv ID text  = (blank)

G/L account no. = XXXXXXX

Company Code = XXX

 

  • OBCD—Set up tax determination for EDI invoice processing for intercompany vendors.

 

Financial Accounting Accounts Receivable and Accounts Payable Business Transactions Incoming Invoices/Credit Memos EDI Assign Tax Codes For EDI Procedures.


Apart from above configuration, one may require to maintain priding condition records, access sequence, AR output type to enable auto AP posting along with AR invoice posting.

Different freight scenarios and copy freight condition from delivery to billing document.

$
0
0

Hi

 

From sales point of view there are different processes that how you are managing your freight. If you are delivering some physical goods by using some vehicle and paying its transportation cost to vednor then you can have various options or requirements that how this freight should be calculated and posted. It depends on management decision and their requirement that how do they want you to configure this in system. I am listing down some scenarios and in this document I am going to explain most simplest one and after this I'll move on to others in next documents.

 

  1. Freight is being paid to vendor/transporter and you don't have transportation module implemented. You also create accrual/clearing entry for this.
  2. Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Company pays this freight and bears the expense.
  3. Freight is being paid to vendor and you have transportation module implemented. You calculate freight automatically and post it to FI. Comapny doens't pay this freight but charges to customers.
  4. Company has it's own transportation vehicles and it doesn't pay freight to any vendor but calculates and charges this separately to customer.
  5. Company pays freight to vendor and charge this freight to material price in plant to plant transfer under same company code. This freight is calculated in shipment cost document automatically.

 

There could be many other scenarios but by following these and by following the configuration which I am going to explain in these you would be able to cover up most of the scenarios.

In this document I'll be covering point number one only which is how to enter freight in delivery document and copy this to billing and post in FI with accrual entry. This accrual entry will be debiting freight expense and crediting freight payable liability which will be debited later on when we will pay to vendor.

 

Configuration steps.

 

While explaining these steps I assume that you are familiar with basic configuration steps and prcesses.

 

Create separate pricing procedure in V/08 with only one condition in it i.e. Freight Expense. This freight expense is basically an accrual condition and you have marked it as accrual in V/06 under control data 2. Condition class A and calculation type is C. This is manual condition and no need to maintain any access sequence. If you want to make it automatic then use access sequence and maintain condition record.

 

Capture.JPG

 

Assign this pricing procedure to your delivery type. For delivery types we can't determine pricing procedure like we do for orders or billing documents.

Capture.JPG

Capture.JPG

 

Now maintain E in pricing source for copy control from delivery to billing document in VTFL Tcode.

 

Capture.JPG

Configuration is completed and you can now test your scenario. I am listing down the steps that I did for its testing.

 

 

Created sale order with VA01.

 

Created delivery order with VL01N and entered freight charges at header level in delivery document because this freight is for complete delivery document.

Capture.JPG

 

Created invoice in VF01 and here you can see that freight charges have been copied from DO to billing document.

 

Capture.JPG

 

Posted invoice to FI with VF02 and in accounting document you can view that freight expense is with debit entry and freight accrual is with credit.

 

Capture.JPG

 

 

This is how we control freight with most simplest and easiest way. I will continue this document by explaining key points in other scenarios I have listed above. If you have some other scenario which I have not covered in these 5 listed scenarios then I would appreciate if you share that in comments section and I will try my level best to cover that too in this document.

 

Positive/negative feedback will help me to improve next documents.

 

Continued here. . .

 

 

Thank$

Output to External Email ID

$
0
0

Business Requirement: Many times Business require to send certain output directly to external Id of customer, business partner etc. This document discuss those scenario.

 

I find in SDN some consultants asking this requirement, I hope this document will be helpful.

 

Here I will discuss solution which I implemeted in my  business process.

 

If you find this document helpful then please do not forget to LIKE this document . Please give your rating.

 

Advantage:  Solution can be use to send output to partner email Id. Consultant can enhance functionality based on logic written in routine , may use logic in routine to fetch data from Ztable which gives flexibility.

 

we are calling function module 'SO_NEW_DOCUMENT_SEND_API1' in this routine. This function module enables to send output to external email ID

 

Presetting: Basis setting  (Tcode SCOT) should be available to allow output to be sent to external email id. You may use SOSV or SOST to check this.

I consider all other standard settings of output like access , access sequence, routine are known to consultant and i will not discuss these setting here.

 

T Code: NACE

 

Capture 1.JPG

 

For sales order output select application V1 and then Click Output Type button:

 

Capture 2.JPG

 

If it is require to make this output condtion based on access then define access sequence and assign it to output (Standard SAP Access creation).

 

 

Capture 3.JPG

In Default view tab select:

Dispatch time as per your requirement.

Transmission Medium '5 External Send'

and partner function which require this output.

 

Capture 4.JPG

 

Now create and assign form routine to output along with print program

 

Capture 5.JPG

 

You can take help of ABAPER to create program as per your Prnt program and Form Routine.

Here Form Routine is controlling Email.

 

You can put logic here that how to fetch email Id, if there is any validation check etc.

In my case I am fetching email from HR Master T Code :PA30. Subtype Communication.

You may write your own logic to fetch email

 

Note: In this routine, we are calling function module 'SO_NEW_DOCUMENT_SEND_API1' . This function module enables to send document.

 

Capture 5.JPG

 

Now create output condtion record if this output has access sequence based determination.

 

Trigger output via sales order

 

T Code: VA01 : Header Output Screen

 

Capture 1.JPG

 

T Code: PA30, Info type 0105, Sub Type 0010

 

I have maintained my email ID in PA30, Info type Communication (0105) Sub Type 0010 (Email).

 

Capture 2.JPG

 

TCode : SOSV  To Check mail is going or not ( This will also require Basis Setting)

 

Mail is triggered to my external Email ID which is visible in SOSV.

 

Capture 4.JPG

 

Regards

 

Neeraj

Configuring Automatic packing in Outbound Delivery

$
0
0

Configuration for Automatic packing in Outbound Delivery

 

 

Let me introduce you to the basics required to understand the Automatic packing concept in outbound delivery.

  1. Packing Materials are material that can be used to pack or transport goods.
  2. Items from an outbound delivery when packed into a packing material, the whole unit together is called the Handling Unit.
  3. Packing process in SAP is the process of assigning delivery items to packing materials, which will produce Handling Units, which will then be packed into additional packing materials. Which in turn will create a new handling unit, this process of packing one handling unit into another packing material is called Multi-level packing.

 

The packing function is available in:

  • Orders (as Packing Instructions)
  • Inbound Deliveries
  • Outbound Deliveries
  • Shipment Document

 

Packing can be done manually as well as automatically in outbound delivery. Manual packing is done in outbound delivery by choosing PACK button manually while automatic packing uses the Condition Technique to automatically identify the material to be packed and create handling units.

As most of us would be aware of how manual packing is done, in this document I have explained how automatic packing is configured for outbound delivery.

 

I have noted down few steps that would be required to configure Automatic packing, these are listed below:

     a)      Activate Delivery Document type with Automatic Packing - OVLK

     b)      Define Packaging material type- VHAR

     c)      Define Material Group for Packaging - VEGR

     d)      Define Allowed Packing Material - VHZU

     e)      Define Material Master Data - MM01

     f)       Maintain Packing Transaction Profile for Outbound delivery - OVHU2

     g)      Set up Condition Technique for  Packing Instruction Determination

     h)      Create Packing Master Data - POP1

     i)       Maintain Packing Instruction Determination Master Data - POF1

 

Let us see how each of these steps are accomplished in SAP with screenshots

 

a)      Activate delivery type with Automatic  Packing


In this step you can activate the delivery type for automatic packing using the TCode OVLK as shown below.

IMG1.jpg

 

Before moving further lets understand below mentioned SAP terminologies

Material - A product in outbound delivery that requires packing.

Material Group for packaging– This is a material master field used to group products requiring similar packing. For example say products A and B can be packed using similar pallets, in this case while creating product master data for A & B, we assign Material Group for Packaging, say 0001-pallets to indicate that both these material are packed using pallets.

Packing Material– The material used to pack the finished product in delivery.

Packaging Material Type– This is Material Master record field used to set up a Packing Material.(Applies to packing material master data) This field defines the family of packaging type to which this material belongs, for example Pallets, Truck, Container, Box, Crates, etc.

 

 

b)      Define Packaging material types

You can define Packaging Material Types using TCode VHAR. As discussed earlier this field plays an important role in setting up a packing material master record.

Let’s say we use already defined packing material type 0001- pallets in our case.(If you want to create new please copy an existing one that matches your requirement and create one) PFB the screenshot for the same.

IMG2.jpg

For packing material type you can set up

  • How plant determination occurs for the packing material to which it is assigned.
  • Packaging material category (whether packaging material, transport equipment, means of transport or Auxiliary packaging material)
  • Assign a Number Range for the handling units that would be created in delivery.
  • Define Output procedure and Output type.
  • Handling Unit type

 

c) Define Material Group for Packaging Material

In this step you can define a Material Group for packaging material using TCode VEGR.

This is a field entered in the Material Master Sales: General/Plant data for materials that require packing. It is used to group together materials that require similar packaging materials.

In our case we defined material group 0001-Yard Mgmt using tcode VEGR.

IMG3.jpg

 

 

d) Define allowed packaging material

This configuration plays an important role in packing for outbound delivery. In this step we define valid combinations of Packaging Material Type and Material Group for Packaging as shown below. We have defined a valid combination of "Material Group for Packaging"- 0001 Yard Mgmt and "Packaging Material type"- 0001 pallet for our scenario. It is maintained using TCode VHZU.

IMG4.jpg

When packing an item in delivery, the system checks whether an entry for Material Group for Packaging for the delivery item and the Packaging Material Type for the packing material exists in Tcode VHZU.

By assigning Packaging Material Type to the Material Group for Packaging, you define which packaging materials are allowed for packing a delivery item.

For materials with no Material Group for Packaging Materials, no check is carried out on the eligibility of the packaging material. These materials can always be packed.

 

e) Define Material Master Data (Finished goods and Packing Material)

 

In this step create Material master record(MM01) for Finished goods and Packing Material based on the configuration done in the earlier steps.

Firstly define a FERT material code for Sales View having below data related to packaging.

IMG5.jpg

IMG6.jpg

As can be seen in above screen shots we have created a material TATA1 with Material Type FERT and Material Group for Packaging Material as 0001- Yard Mgmt.

Now, create another Material master record(MM01) with Material Type VERP (packing), so that this material could be used as a packing material in Deliveries.

Important information required for packing is shown in below:

  • Item Category Group (Sales: Organisation 2 tab)
  • Packing Material Data (Sales: General/Plant)

Packaging Material Type

Allowed Weight

Allowed Volume

IMG7.jpg

IMG8.jpg

As seen above we have created a packing material PACK1 with Item category group VERP, Packaging Material Type 0001-Pallet and allowed packing weight as 200kg.

 

f) Maintain Packing Transaction Profile

The configurations done from this step are specifically valid for Automatic packing in outbound delivery.

In this step, you can modify the Packing Transaction Profiles using TCode OVHU2.

For each application, in which the packing transaction can be used, there is a packing transaction profile. The profiles are set as standard in the system. You can change the descriptions and the settings for each profile. However, you cannot create new profiles, delete existing ones, or change the assignment of profile to application.

In our case we will use the transaction profile available for outbound delivery i.e. 0002- Outbound Delivery.

 

In each profile, the following parameters are set:

  • display mode or change mode for HU proposals in the packing transaction
  • the procedure used to automatically determine packing instructions
  • whether the system expands packing instructions automatically when materials and quantities are entered or changed
  • whether the system displays a selection dialog box in the automatic expansion process, so that the user can select a packing instruction from those proposed by the system (main packing instruction or alternative packing instruction)
  • whether the system takes into account rounding and minimum quantities in the automatic expansion process
  • whether the system also takes into account alternative packing instructions in automatic expansion, if the main packing instruction cannot pack the required quantity
  • The expansion strategy. This controls whether

                   o Everything is to be packed automatically, that is, the system creates HU proposals for the complete quantity to be packed.

                   o Packages are to be created one at a time, that is, the system creates an HU proposal for exactly one main handling unit.

  • the minimum packing status for packing instruction expansion
  • the HU status of the handling units created
  • The minimum packing status of HU proposals required to created HUs.

IMG9.jpg

 

We have a Packing Instruction Determination Procedure ZSHIP1 assigned to the Packing Transaction Profile of Outbound delivery.  This procedure uses the condition technique to identify Packing Instructions maintained as master data which will be discussed going ahead.

 

Also we have activated Start packing automatically, Respect Rounding Quantities and Respect Alternate Packing Instructions. Pack Strategy is set to pack all delivery items.

 

g) Set up Condition Technique for  Packing Instruction Determination:

In this step you can set up condition technique for the packing instruction determination procedure i.e. ZSHIP1(assigned in the Outbound delivery Transaction Profile). You can set up Determination procedure, Determination type, Access Sequence & Condition table.

You can create each of the components of the condition technique using below Tcodes:

  • Condition table – OFP8
  • Access Sequence –OFP2
  • Determination Type – OFP3
  • Define Procedure – OFP4

I am not adding screenshots as this is done similar to any other condition technique setup.

 

h) Create packing master data - POP1

Once above SPRO configuration are done the only job remaining is to create packing master data.

Go to TCode POP1 and set up master data specifying what Material is to be packed and what is the material that will be used to for packing.

In our case the master record is maintained as shown below.

IMG10.jpg

 

TATA1 is the material to be packed while PACK1 is the packing material. In the above master data set up I have specified that 1qty of PACK1 can be used to pack 4qtys of TATA1.

 

 

i) Maintain packing instruction determination  record - POF1

 

The second master data that you need to maintain is how the packing instruction that was created in the previous step would be determined.

This can be created using TCode POF1.

PFB the screenshot maintained in our case.

IMG11.jpg

In the above screenshot you can see that I have maintained a record for Determination Type SHIP in Procedure ZHSIP1. The condition table has the combination of Material& Ship-to party while packing instruction number specified is 231 which we have created in the previous step.

This means that whenever Material TATA1 and Ship-to 4000401 combination occurs in delivery typeLF the packing instruction 231 would be identified by using Transaction profile of outbound delivery & Packing instruction procedure ZHSIP1. This will in turn pack the delivery items using the material specified in packing instruction number 231.

 

Once you configure all of the above steps Automatic packing would be active in Delivery and Handling Units would be automatically created based on the master data you have maintained.

Viewing all 239 articles
Browse latest View live


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