<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ABOUT SAP</title>
	<atom:link href="http://www.about-sap.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.about-sap.com</link>
	<description>Welcome to the place where SAP is everything! SAP Tips, Tables, Transactions, Tutorials, ...</description>
	<lastBuildDate>Fri, 20 Apr 2012 16:16:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>SAP HR TIPS &#8211; Infotype 1018 Cost Distribution</title>
		<link>http://www.about-sap.com/cat-sap-hr/cat-sap-hr-tips/sap-hr-tips-infotype-1018-cost-distribution/</link>
		<comments>http://www.about-sap.com/cat-sap-hr/cat-sap-hr-tips/sap-hr-tips-infotype-1018-cost-distribution/#comments</comments>
		<pubDate>Fri, 20 Apr 2012 16:15:44 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP HR Tips]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1876</guid>
		<description><![CDATA[BAPIHR1018 is a standard SAP table available within R/3 SAP systems depending on your version and release level. Below is the standard documentation available for this table and a few details of the fields which make up this table. You can view this information and more if you enter the table name BAPIHR1018 into the [...]]]></description>
			<content:encoded><![CDATA[<p>BAPIHR1018 is a standard SAP table available within R/3 SAP systems depending on your version and release level. Below is the standard documentation available for this table and a few details of the fields which make up this table. You can view this information and more if you enter the table name BAPIHR1018 into the relevant SAP transaction such as SE11 or SE80. You can also view the data contained in this database table via these transactions or alternatively use transaction SE16<br />
Within the comments section below there is also an opportunity for anyone to be able add useful hints and information specific to this SAP object. This means that you and other users will be able to find these details quickly by simply searching on the object name BAPIHR1018 .</p>
<p>By: se80.co.uk</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-hr/cat-sap-hr-tips/sap-hr-tips-infotype-1018-cost-distribution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Program for Outbound IDOC</title>
		<link>http://www.about-sap.com/cat-sap-bc/program-for-outbound-idoc/</link>
		<comments>http://www.about-sap.com/cat-sap-bc/program-for-outbound-idoc/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 07:25:06 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[RANDOM TIPS]]></category>
		<category><![CDATA[SAP BC]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1872</guid>
		<description><![CDATA[Program for Outbound IDOC All IDoc data records are exchanged in a fixed format, regardless of the segment type. The segment’s true structure is stored in R/3’s repository as a DDic structure of the same name. The segment info tells the IDoc processor how the current segment data is structured and should be interpreted. The [...]]]></description>
			<content:encoded><![CDATA[<p>Program for Outbound IDOC</p>
<p>All IDoc data records are exchanged in a fixed format, regardless of the segment type. The segment’s true structure is stored in R/3’s repository as a DDic structure of the same name. The segment info tells the IDoc processor how the current segment data is structured and should be interpreted. The information, which is usually the only interest, is the name of the segment EDID4-SEGNAM.<br />
The segment name corresponds to a data dictionary structure with the same name, which has been created automatically when defining the IDoc segment definition with transaction WE31 .<br />
For most applications, the remaining information in the segment info can be ignored as being redundant. Some older, non-SAP-compliant partners may require it. E.g. the IDoc segment info will also store the unique segment number for systems, which require numeric segment identification.<br />
To have the segment made up for processing in an ABAP, it is usually wise to move the segment data into a structure, which matches the segment definition. For a segment of type e1maram the following coding is commonly used:<br />
TABLES: e1maram.</p>
<p>. . .</p>
<p>MOVE edidd-sdata TO e1maram.<br />
Then you can access the fields of the IDoc segment EDIDD-SDATA as fields of the structure e1maram .<br />
WRITE: e1maram-matnr.<br />
The following coding sample, shows how you may read a MATMAS IDoc and extract the data for the MARA and MARC segments to some internal variables and tables.<br />
DATA: xmara LIKE e1maram.</p>
<p>DATA: tmarc AS STANDARD TABLE OF e1marcm</p>
<p>WITH HEADER LINE.</p>
<p>LOOP AT edidd.</p>
<p>CASE edidd-segnam.</p>
<p>WHEN &#8216;E1MARAM&#8217;.</p>
<p>MOVE edidd-sdata TO xmara.</p>
<p>WHEN &#8216;E1MARCM&#8217;.</p>
<p>MOVE edidd-sdata TO tmarc.</p>
<p>APPEND tmarc.</p>
<p>ENDCASE.</p>
<p>ENDLOOP.</p>
<p>now do something with xmara and tmarc.</p>
<p>By :  Amit Khari</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-bc/program-for-outbound-idoc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP USER EXIT &#8211; BW</title>
		<link>http://www.about-sap.com/cat-sap-bw/sap-user-exit-bw/sap-user-exit-bw/</link>
		<comments>http://www.about-sap.com/cat-sap-bw/sap-user-exit-bw/sap-user-exit-bw/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 07:05:38 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP USER EXIT - BW]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1865</guid>
		<description><![CDATA[SAP BW USER EXIT - Sample ABAP Program CMOD Enhancement &#8211; RSAP0001 Add new fields to Extract structure. Run RSA6 to &#8216;unhide&#8217; new fields. FUNCTION EXIT_SAPLRSAP_001. *&#8221;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- *&#8221;*&#8221;Lokale Schnittstelle: *&#8221; IMPORTING *&#8221; VALUE(I_DATASOURCE) TYPE RSAOT_OLTPSOURCE *&#8221; VALUE(I_ISOURCE) TYPE SBIWA_S_INTERFACE-ISOURCE *&#8221; VALUE(I_UPDMODE) TYPE SBIWA_S_INTERFACE-UPDMODE *&#8221; TABLES *&#8221; I_T_SELECT TYPE SBIWA_T_SELECT *&#8221; I_T_FIELDS TYPE SBIWA_T_FIELDS *&#8221; C_T_DATA *&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>SAP BW USER EXIT - Sample ABAP Program</p>
<div>CMOD Enhancement &#8211; RSAP0001<br />
Add new fields to Extract structure.<br />
Run RSA6 to &#8216;unhide&#8217; new fields.<br />
FUNCTION EXIT_SAPLRSAP_001.</div>
<div>*&#8221;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</div>
<div>*&#8221;*&#8221;Lokale Schnittstelle:</div>
<div>*&#8221; IMPORTING</div>
<div>*&#8221; VALUE(I_DATASOURCE) TYPE RSAOT_OLTPSOURCE</div>
<div>*&#8221; VALUE(I_ISOURCE) TYPE SBIWA_S_INTERFACE-ISOURCE</div>
<div>*&#8221; VALUE(I_UPDMODE) TYPE SBIWA_S_INTERFACE-UPDMODE</div>
<div>*&#8221; TABLES</div>
<div>*&#8221; I_T_SELECT TYPE SBIWA_T_SELECT</div>
<div>*&#8221; I_T_FIELDS TYPE SBIWA_T_FIELDS</div>
<div>*&#8221; C_T_DATA</div>
<div>*&#8221; C_T_MESSAGES STRUCTURE BALMI OPTIONAL</div>
<div>*&#8221; EXCEPTIONS</div>
<div>*&#8221; RSAP_CUSTOMER_EXIT_ERROR</div>
<div>*&#8221;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</div>
<div>INCLUDE ZXRSAU01.<br />
ENDFUNCTION.</div>
<div>*&amp;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;*</div>
<div>*&amp; Include ZXRSAU01 *</div>
<div>*&amp;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;*</div>
<div>* Written by Sheila Titchener &#8211; www.iconet-ltd.co.uk &#8211; Oct 2005</div>
<div>*&amp;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;*<br />
DATA: l_s_mc13vd0itm LIKE mc13vd0itm, &#8221; extract structure</div>
<div>l_tabix LIKE sy-tabix,</div>
<div>l_knumv TYPE knumv.<br />
data: t_konv type table of konv.</div>
<div>data: w_konv type konv.<br />
CASE i_datasource.</div>
<div>*/ in bw 1.2b case i_isource.<br />
WHEN &#8217;2LIS_13_VDITM&#8217;.</div>
<div>LOOP AT c_t_data INTO l_s_mc13vd0itm.</div>
<div>l_tabix = sy-tabix.</div>
<div>SELECT SINGLE knumv FROM vbrk</div>
<div>INTO l_knumv</div>
<div>WHERE vbeln = l_s_mc13vd0itm-vbeln.</div>
<div>IF sy-subrc = 0.</div>
<div>SELECT * FROM konv</div>
<div>INTO TABLE t_konv</div>
<div>WHERE knumv = L_knumv AND kposn = l_s_mc13vd0itm-posnr.<br />
LOOP AT t_konv INTO w_konv.<br />
CASE w_konv-kschl.</div>
<div>WHEN &#8216;PR00&#8242;.</div>
<div>l_s_mc13vd0itm-kschl1 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert1 = w_konv-kwert.</div>
<div>WHEN &#8216;ZELE&#8217;.</div>
<div>l_s_mc13vd0itm-kschl2 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert2 = w_konv-kwert.</div>
<div>WHEN &#8216;SKTV&#8217;.</div>
<div>l_s_mc13vd0itm-kschl3 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert3 = w_konv-kwert.</div>
<div>WHEN &#8216;VPRS&#8217;.</div>
<div>l_s_mc13vd0itm-kschl4 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert4 = w_konv-kwert.</div>
<div>WHEN &#8216;ZCST&#8217;.</div>
<div>l_s_mc13vd0itm-kschl5 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert5 = w_konv-kwert.</div>
<div>WHEN &#8216;ZSUR&#8217;.</div>
<div>l_s_mc13vd0itm-kschl6 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert6 = w_konv-kwert.</div>
<div>WHEN &#8216;ZSTD&#8217;.</div>
<div>l_s_mc13vd0itm-kschl7 = w_konv-kschl.</div>
<div>l_s_mc13vd0itm-kwert7 = w_konv-kwert.</div>
<div>ENDCASE.<br />
ENDLOOP.</div>
<div>ENDIF.</div>
<div>Modify c_t_data from l_s_mc13vd0itm index l_tabix.</div>
<div>ENDLOOP.</div>
<div>WHEN OTHERS.</div>
<div>EXIT.<br />
ENDCASE.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-bw/sap-user-exit-bw/sap-user-exit-bw/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP User Exit &#8211; FI</title>
		<link>http://www.about-sap.com/cat-sap-fi/sap-user-exit-fi/sap-user-exit-in-fi/</link>
		<comments>http://www.about-sap.com/cat-sap-fi/sap-user-exit-fi/sap-user-exit-in-fi/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 16:28:20 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP USER EXIT FI]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1857</guid>
		<description><![CDATA[SAP USER EXIT FI /CO Overview R/3 provides three &#8220;customization spots&#8221; that allow you to enhance FI/CO features without modifying the standard code. Although often collectively referred to as &#8220;user exits,&#8221; two of the three have different names. SAP Enhancements are used to expand the standard functionality within SAP. Enhancements use function modules and are [...]]]></description>
			<content:encoded><![CDATA[<h1>SAP USER EXIT FI /CO</h1>
<p><span style="color: windowtext;">Overview</span></p>
<p>R/3 provides three &#8220;customization spots&#8221; that allow you to enhance FI/CO features without modifying the standard code. Although often collectively referred to as &#8220;user exits,&#8221; two of the three have different names. SAP Enhancements are used to expand the standard functionality within SAP. Enhancements use function modules and are called from the standard SAP code. Each module in the system has a set of delivered enhancements that help companies expand the standard functionality where they need it. Enhancements were new in release 3.0. The Open FI Interfaces or Business Transaction Events are also used to expand the standard functionality within SAP. These events are defined in the IMG. Business Transaction Events were new in release 4.0. They are not available for all modules and are not called on all integrated transactions into FI as of release 4.5B. This will change with each release and should be retested. The older User Exits in FI/CO are &#8220;Z&#8221; programs that are defined in table T80D for client-dependent user exits, and in table T80I for client-independent user exits. These are also used to expand the standard functionality within the FI/CO modules. These User Exits have been available since the early releases of SAP. All of these FI/CO User Exits are listed in this document in the Configuring User Exits (Older). The list is included because these User Exits are not a part of the Enhancements or Business Transaction Events and do not have an Info System for searching.</p>
<h2><span style="color: windowtext;">Benefits</span></h2>
<p>-         Standard SAP functionality can be enhanced without modification to the standard code.</p>
<p>-         Upgrades do not erase the functionality and it does not have to be re-transported or re-entered into the system. The enhancements should be thoroughly tested when upgrading to ensure the system will still work as implemented.</p>
<h2><span style="color: windowtext;">Configuring SAP Enhancements</span></h2>
<h4><span style="color: windowtext;">Basic Steps in Configuring an Enhancement</span></h4>
<p>-         Find the appropriate Enhancement.</p>
<p>-         Enter the ABAP code in the &#8220;Z&#8221; program within the function module.</p>
<p>-         Create a project.</p>
<p>-         Add the Enhancement to the project.</p>
<p>-         Activate the project.</p>
<h4><span style="color: windowtext;">Example Business Scenario for Enhancements</span></h4>
<p>Company A has a requirement to validate all customer master records created with a U.S. address. The U.S. entity reports on the industry field on the customer master. This is only a U.S. requirement and should not be required for the other countries, so the field status would not work. To accomplish this requirement, Company A will need to set up an Enhancement for the customer master transaction. The necessary steps are detailed below with screenprints. This example was configured in a 4.6C system.</p>
<h5><span style="color: windowtext;">Detailed Steps</span></h5>
<p><strong>1.</strong><strong>   </strong> <strong>Tools</strong> <strong> </strong><strong>ABAP Workbench</strong> <strong> </strong><strong>Utilities</strong> <strong> </strong><strong>Enhancements</strong> <strong> </strong><strong>Definition</strong> <strong> </strong><strong>Utilities</strong> <strong> </strong><strong>List Enhancements</strong></p>
<p>2.    Do not execute this without any parameters! There are too many Enhancements and it will probably time out. You&#8217;re searching for a customer master exit. Enter <strong>*mast*</strong> in the short text. You&#8217;ll start there. Searching for an exit can be tricky, so make sure you try several things before giving up.</p>
<p>3.    Execute the search.</p>
<p>4.    Look through the list until you find the Enhancement for <strong>User exits: Customer Master Data</strong>.</p>
<p>5.    Double-click on the enhancement <strong>SAPMF02D</strong>. This will take you to the details of the Enhancement and list the function modules included in the Enhancement.</p>
<p>6.    To continue, double-click on the function module <strong>EXIT_SAPMF02D_001</strong></p>
<p>7.    This will take you to the source code for the function module. Click on the <strong>Import</strong> tab to review the tables/fields that are available for the Enhancement</p>
<p>8.      To view the tables/fields that can be changed in the function module, click on the <strong>Export</strong> and <strong>Changing</strong> tabs. For this function module, these tabs are empty because you can only validate data. You cannot change any fields in this enhancement.</p>
<p>9.      Return to the <strong>Source Code</strong> tab.</p>
<p>10.  Scroll down until you see the <strong>Include</strong> statement in the program. The &#8220;Z&#8221; program listed after the <strong>Include</strong> is where your code will be written</p>
<p>11.   Double-click on the <strong>Include</strong>. You will be prompted to create the include. Click on <strong>Yes</strong> to create.</p>
<p>12.   At this point you will be prompted to enter a development class and to create a transport request. If you do not know which development class to use, please contact your technical team.</p>
<p>13.  Enter the following ABAP code into the program</p>
<p><span style="color: blue;">*</span></p>
<p><span style="color: blue;">* User exit to ensure that all</span> US <span style="color: blue;">customers have a group key</span></p>
<p><span style="color: blue;">* entered on the customer master.</span></p>
<p><span style="color: blue;">*</span></p>
<p><span style="color: black;">if i_kna1-land1 = &#8216;US&#8217; and</span></p>
<p><span style="color: black;">i_kna1-brsch = &#8216; &#8216;.</span></p>
<p><span style="color: black;">message e001(F2).</span></p>
<p><span style="color: black;">endif.</span></p>
<p>14.   Note that the table name matches the table name in the import tab tables.</p>
<p>15.   In this example you are using the standard message class F2 with message number 001. Normally, you will create your own message within your own message class. All customer message classes must begin with a &#8220;Z&#8221; and are created in transaction SE91.</p>
<p>16.  Save the program.</p>
<p>17.  The next step is to create the project. Go to transaction code CMOD or follow menu path: <strong>Tools</strong>  ABAP Workbench  Utilities  Enhancements  Project Management.</p>
<p>18.  Enter the project name; begin the name with a &#8220;Z.&#8221;</p>
<p>19.  Click on the <strong>Create</strong> button.</p>
<p>20.   Enter in a description for the project.</p>
<p>21.   Click on the <strong>Enhancement Assignments</strong> button.</p>
<p>22.   You will be prompted to save the enhancement. Click on <strong>Yes</strong>.</p>
<p>23.   At this point you will be asked for a development class and to create a transport for the project. You may use the same one created when adding the ABAP code to the function module.</p>
<p>24.  Enter the name of the enhancement <strong>SAPMF02D</strong></p>
<p>25.  Save the project.</p>
<p>26.  Back out of the enhancement assignment.</p>
<p>27.  Activate the project by hitting the <strong>Activate</strong> button.</p>
<p>The SAP Enhancement is ready to be tested! Try creating a customer with U.S. as the country and a blank group key. Be sure to test one with a group key to make sure the message is not displayed in error as well.</p>
<h2><span style="color: windowtext;">Configuring Business Transaction Events</span></h2>
<h4><span style="color: windowtext;">Basic Steps in Configuring an Event</span></h4>
<p>-         Make sure the application is active for Business Transaction Events.</p>
<p>-         Copy the sample interface function module into a &#8220;Z&#8221; function module.</p>
<p>-         Enter the ABAP code into the source code section of the new &#8220;Z&#8221; function module. You may choose to create a &#8220;Z&#8221; program to enter the code into and then insert the &#8220;Z&#8221; program into your function module source code.</p>
<p>-         Activate the function module.</p>
<p>-         Assign the function module to the event, country and application.</p>
<h4><span style="color: windowtext;">Example Business Scenario for Business Transaction Events</span></h4>
<p>Company A would like to copy the group key field from the vendor master into the allocation field on all the line items within a vendor invoice and payments, including the vendor lines. This requirement assumes only one vendor is posted to in a document. To accomplish this requirement, Company A will use the Business Transaction Event 1130, Post Document: SAP Internal Field Substitution. 1.      IMG Menu Path: <strong>Financial Accounting</strong>  Financial Accounting Global Settings  Use Business Transaction Events  Environment  Infosystem (Processes).</p>
<p>2.      Find the correct Business Event. You are updating a field, so you select the Processes Info System instead of the Publish and Subscribe Info System.</p>
<p>3.      Execute the search with the defaults.</p>
<p>4.      Find the correct interface for updating a document: <strong>Post Document: SAP- Internal Field Substitution</strong></p>
<p>5.      Put your cursor on the event and click on the <strong>Sample Function Module</strong> button.</p>
<p>6.      You are now in transaction SE37 &#8211; Function Builder. This is the function module (sample_process_00001130) you will need to copy into a &#8220;Z&#8221; name function module for your coding. This Is the Function Module You Need to Copy Your &#8220;Z&#8221; Name Function Module</p>
<p>7.      Click on the <strong>Copy</strong> button.</p>
<p>8.      Enter the &#8220;Z&#8221; function module name in the <strong>To Function Module</strong> field</p>
<p>9.      Enter a Function Group. If you need to create a &#8220;Z&#8221; function group, go to transaction code SE37 and follow menu path: <strong>Go to</strong>  Function Groups  Create Group. A function group is a logical grouping of function modules, and the ABAP code is generated for function groups. You will be prompted for a development class and transport when creating the function group.</p>
<p>10.  In Function Builder (transaction SE37), enter the new &#8220;Z&#8221; function module. Click on the <strong>Change</strong> button.</p>
<p>11.  The system will default into the source code screen where you may enter your ABAP code.</p>
<p>12.  Notice the tables available for the code. Additional tables may be declared if necessary.</p>
<p>13.  Enter the following source code</p>
<p><span style="color: black;">tables: lfa1.</span></p>
<p><span style="color: black;">data: z_groupkey like lfa1-konzs.</span></p>
<p><span style="color: black;">z_groupkey = &#8216; &#8216;.</span></p>
<p><span style="color: black;">loop at t_bseg.</span></p>
<p><span style="color: blue;">* check for vendor lines. If one is found, read the vendor master and</span></p>
<p><span style="color: blue;">* retrieve the group key field.</span></p>
<p><span style="color: black;">if t_bseg-koart eq &#8216;K&#8217;.</span></p>
<p><span style="color: black;">select single konzs from lfa1 into z_groupkey</span></p>
<p><span style="color: black;">   </span> <span style="color: black;">where lifnr = t_bseg-lifnr.</span></p>
<p><span style="color: black;">endif.</span></p>
<p><span style="color: blue;">* Move the group key field into all line items allocation field.</span></p>
<p><span style="color: black;">loop at t_bsegsub.</span></p>
<p><span style="color: black;">t_bsegsub-zuonr = z_groupkey.</span></p>
<p><span style="color: black;">modify t_bsegsub index sy-tabix.</span></p>
<p><span style="color: black;">endloop. &#8220;t_bsegsub</span></p>
<p><span style="color: black;">endloop. &#8220;t_bseg</span></p>
<p>14.  Save the function module.</p>
<p>15.  Back out to the main Function Builder screen by clicking on the green arrow button.</p>
<p>16.  Activate the function module by clicking on the <strong>Activate</strong> button</p>
<p>17.  Assign the function module to the event in the IMG: <strong>Financial Accounting</strong> <strong> </strong><strong>Financial Accounting Global Settings</strong> <strong> </strong><strong>Business Transaction Events</strong> <strong> </strong><strong>Settings</strong> <strong> </strong><strong>Process Function Modules</strong> <strong> </strong><strong>of an SAP Appl</strong>.</p>
<p>18.  Hit enter past the warning messages that this is SAP data.</p>
<p>19.  Click on the <strong>New Entries</strong> button.</p>
<p>20.  Enter the process for your interface. In your example it is 00001130.</p>
<p>21.  Enter the country the interface is valid for. If it is valid for all countries, leave this field blank.</p>
<p>22.  Enter the application the interface should be called for. If it should be called for all applications, leave this field blank. Please note that not all integrated transactions are programmed to go through these interfaces! You will need to test to find out!</p>
<p>23.  Enter the new &#8220;Z&#8221; function module</p>
<p>24.  Save the settings. At this point you will be prompted for a CTS number for the configuration change.</p>
<p>25.  The Business Transaction Event is complete! You are ready for testing.</p>
<h2><span style="color: windowtext;">Configuring User Exits (Older)</span></h2>
<h4><span style="color: windowtext;">Basic Steps in Configuring an User Exit</span></h4>
<p>-       Create a &#8220;Z&#8221; program for the User Exits and enter the necessary ABAP code.</p>
<p>-       Enter the new program name into table T80D.</p>
<p>-       Configure the application to call the User Exit.</p>
<h4><span style="color: windowtext;">List of User Exits</span></h4>
<p>-       Variable Field Movements</p>
<p>-       Substitutions in FI,CO, PCA</p>
<p>-       Validations in FI,CO, PCA</p>
<p>-       Rollups in SPL</p>
<p>-       Fixed Field Movements in SPL</p>
<p>-       CostCenter Summarization on Detail Screen</p>
<p>-       Sets Formula Variables</p>
<h4><span style="color: windowtext;">Example Business Scenario for User Exits</span></h4>
<p>Company A would like to add a &#8220;Z&#8221; field in the Special Purpose Ledger to capture a Business Unit field for reporting. They have used all the standard SAP fields such as Business Area and ProfitCenter. The field will only be used for reporting and is only needed in the Special Purpose Ledger. You created a special ledger table (ZZSPL1) with field <strong>Z_BUNIT</strong> and need to populate this field based on a combination of G/L account, fund and functional area.  To accomplish this requirement, Company A will use the Variable Field Movement User Exit. To make maintenance easier, table ZZBUSUNIT was created with the G/L account, fund and functional area fields as key fields, and the business unit field as a non-key field. You generated the table maintenance so the table could be updated using transaction SM30. SAP users update the business unit determination rules in table ZZBUSUNIT by entering the G/L account, fund and functional area, and then the business unit that combination should be posting to. The User Exit will read table ZZBUSUNIT using the G/L account, fund and functional area from the posting transaction and determine the business unit. The steps for using the user exit are detailed below. This example was created on a 4.6C system. 1.      Copy the delivered template User Exit program RGIVU000_TEMPLATE into a &#8220;Z&#8221; program. Follow menu path <strong>Tools</strong>  ABAP Workbench  Development  ABAP Editor (transaction code SE38). In early releases, the delivered program was RGIVU000.</p>
<p>2.      You will be prompted for a development class and a transport. Please check with the technical team for the correct development class.</p>
<p>3.      At the initial ABAP Editor screen, enter your new &#8220;Z&#8221; program name, select the <strong>Source Code</strong> button and click on <strong>Change</strong></p>
<p>4.      Enter the following code in the User Exit :</p>
<div>
<div>
<pre>FORM E01_MVC USING FROM_FIELD TO_FIELD.to_field = 'CORP'. "Set a default</pre>
<pre>business unit.* read table zzbusunit to determine the business unit field.</pre>
<pre>select single z_bunit from zzbusunit into to_field</pre>
<pre>where hkont = accit_glx-hkont and    geber = accit_glx-geber and</pre>
<pre>fkber = accit_glx-fkber.ENDFORM.</pre>
</div>
</div>
<p>5.      Activate the program by clicking on the Activate button.</p>
<p>6.      Change the configuration in the User Exit table to point to your new &#8220;Z&#8221; program.</p>
<p>7.      Follow the IMG menu path: <strong>Financial Accounting</strong>  Special Purpose Ledger  Basic Settings  User Exits  Maintain Client Specific User Exits.</p>
<p>8.      The entry to maintain is application area GIMV: Variable Field Movement. Enter your &#8220;Z&#8221; program</p>
<p>9.      Save the changes.</p>
<p>10.  The final configuration step is to assign the User Exit in the variable field movement for your special ledger table. In the IMG: <strong>Financial Accounting</strong> <strong>à</strong> <strong>Special Purpose Ledger</strong> <strong>à</strong> <strong>Basic Settings</strong> <strong>à</strong> <strong>Master Data</strong> <strong>à</strong> <strong>Maintain Field Movements</strong>. Field movements control how the fields in a special ledger table are populated. They can be populated straight from other fields in a posting or through User Exits. After You Assign the Business Unit Field and the G/L Account, the Exit Field Should Contain U01.</p>
<p>11.  Assign the business unit field as a receiver and the G/L account as the sender. The Exit field should contain U01</p>
<p>12.  The User Exit number U01 calls User Exit E01_MVC form in the &#8220;Z&#8221; program.</p>
<p>13.  Save the field movement.</p>
<p>14.  You are ready to test your User Exit!</p>
<p>By: Suresh Upadhyayula</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-fi/sap-user-exit-fi/sap-user-exit-in-fi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP USER EXIT &#8211; MM</title>
		<link>http://www.about-sap.com/cat-sap-mm/sap-user-exit-mm/sap-user-exit-mm/</link>
		<comments>http://www.about-sap.com/cat-sap-mm/sap-user-exit-mm/sap-user-exit-mm/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 16:05:49 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP USER EXIT MM]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1854</guid>
		<description><![CDATA[Give me some examples of user exit that is applied in MM area in a real time scenario. 1. User exits can be found out using a development class or a package. 2. For which transaction you would like know whether user exit is available or not. example 1. Whenever I create a purchase order [...]]]></description>
			<content:encoded><![CDATA[<p><strong><span style="color: #000000;">Give me some examples of user exit that is applied in MM area in a real time scenario.</span></strong></p>
<p><span style="color: #000000;">1. User exits can be found out using a development class or a package. </span></p>
<p><span style="color: #000000;">2. For which transaction you would like know whether user exit is available or not.</span> <span style="color: #000000;">example 1. Whenever I create a purchase order my vendor is same for a particular purchasing group and a particular purchasing organization .</span></p>
<p><strong><span style="color: #000000;">Procedure to find out the user exit :</span></strong><br />
<span style="color: #000000;">3.For which transaction you would like to see the user exits, frrst goto transaction and click system status and find out the technical name i.e is package.</span></p>
<p><span style="color: #000000;">4. By going to the SMOD transaction give package name and find out the real user exits available or not.  Once it is available go to edit attributes and write program by givng the filed name = &#8217;9999&#8242; (some vendor) and save , click, save, activte.</span><br />
<span style="color: #000000;">5. Go top CMOD  transaction and give that user exit in the filed area and activate .</span></p>
<p><span style="color: #000000;">6. Go and observe in me21 and see that 9999 vendor by default will come when ever you will create po.</span></p>
<p><span style="color: #000000;">To Develop Enhancements for Purchasing  In this step, you develop enhancements for Purchasing.</span></p>
<p><span style="color: #000000;">1. Either create a new project or use an existing one and then enter the enhancement.</span></p>
<p><span style="color: #000000;">2. Activate the project &#8211; Your enhancement will only become effective after activation.</span></p>
<p><span style="color: #000000;">In contrast to modifications, enhancements are basically release-insensitive since they are not implemented in the SAP original but in a name range that is reserved for the customer.  If you want to display the documentation for an enhancement, choose Goto -&gt; Documentation in the enhancement transaction.</span></p>
<p><span style="color: #000000;">The following SAP enhancements are available for the Purchasing area:</span></p>
<p><span style="color: #000000;">AMPL0001 &#8211; User subscreen for additional AMPL data (manufacturer part number)</span></p>
<p><span style="color: #000000;">LMELA002 &#8211; Adoption of batch number from shipping notification at time of posting of a goods receipt</span></p>
<p><span style="color: #000000;">LMELA010 &#8211; Incoming shipping notification: adoption of item data from IDoc</span></p>
<p><span style="color: #000000;">LMEQR001 &#8211; User exit for source determination</span></p>
<p><span style="color: #000000;">M06B0001 &#8211; Role determination for release of requisitions</span></p>
<p><span style="color: #000000;">M06B0001 &#8211; Changes to communication structure for release of requisitions</span></p>
<p><span style="color: #000000;">M06B0003 &#8211; Number range and document number</span></p>
<p><span style="color: #000000;">M06B0004 &#8211; Number range and document number</span></p>
<p><span style="color: #000000;">M06B0005 &#8211; Changes to communication structure for overall release of purchase requisitions</span></p>
<p><span style="color: #000000;">M06E0004 &#8211; Changes to communication structure for release of purchasing document</span></p>
<p><span style="color: #000000;">M06E0005 &#8211; Role determination for release of purchasing documents</span></p>
<p><span style="color: #000000;">ME590001 &#8211; Grouping of requisitions for PO split in transaction ME59</span></p>
<p><span style="color: #000000;">MEETA001 &#8211; Determination of schedule line type (backlog, immediate requirement, forecast)</span></p>
<p><span style="color: #000000;">MEFLD004 &#8211; Determination of earliest delivery date for checking at time of goods receipt (PO only)</span><br />
<span style="color: #000000;">MELAB001 &#8211; Generation of forecast delivery schedule: realization via creation profile</span><br />
<span style="color: #000000;">MEQUERY1 &#8211; Enhancement for document overview ME21N / ME51N</span></p>
<p><span style="color: #000000;">MEVME001 &#8211; Calculation of default GR quantity and over/underdelivery tolerances</span><br />
<span style="color: #000000;">MM06E001 &#8211; User exits for inbound EDI messages and outbound purchasing documents</span></p>
<p><span style="color: #000000;">MM06E003 &#8211; Number range and document number</span></p>
<p><span style="color: #000000;">MM06E004 &#8211; Control of import data screens in purchase orders</span></p>
<p><span style="color: #000000;">MM06E005 &#8211; Customer fields in purchasing documents</span></p>
<p><span style="color: #000000;">MEREQ001 &#8211; Customer&#8217;s own data in purchase requisitions</span></p>
<p><span style="color: #000000;">MM06E007 &#8211; Change document for requisitions when converting into POs</span></p>
<p><span style="color: #000000;">MM06E008 &#8211; Monitoring of contract target value in case of release orders</span></p>
<p><span style="color: #000000;">MM06E009 &#8211; Relevant texts for &#8220;Texts exist&#8221; indicator</span></p>
<p><span style="color: #000000;">MM06E010 &#8211; Field selection for vendor address</span></p>
<p><span style="color: #000000;">MM06E011 &#8211; Activation of requisition block</span></p>
<p><span style="color: #000000;">MM06L001 &#8211; Exits for determination of ratings in vendor evaluation</span></p>
<p><span style="color: #000000;">MMAL0001 &#8211; ALE source list distribution: outbound processing</span></p>
<p><span style="color: #000000;">MMAL0002 &#8211; ALE source list distribution: inbound processing</span><br />
<span style="color: #000000;">MMAL0003 &#8211; ALE purchasing info record distribution: outbound processing</span></p>
<p><span style="color: #000000;">MMAL0004 &#8211; ALE purchasing info record distribution: inbound processing</span><br />
<span style="color: #000000;">MMDA0001 &#8211; Default values for delivery addresses</span><br />
<span style="color: #000000;">MMFAB001 &#8211; User exit for generation of releases</span></p>
<p><span style="color: #000000;">MRFLB001 &#8211; Control items during release creation</span></p>
<p><span style="color: #000000;">LWBON001 &#8211; Enhancement of LIS update through extension of the communication structure </span></p>
<p><span style="color: #000000;">MCKONA (business volumes and rebate income)</span></p>
<p><span style="color: #000000;">LWBON003 &#8211; Change settlement data for end-of-period rebate settlement before creation of settlement documents</span></p>
<p><span style="color: #000000;">LWSUS001 &#8211; Customer-specific source determination in Retail</span></p>
<p><span style="color: #000000;">LMEXF001 &#8211; Conditions in purchasing documents without invoice receipt</span></p>
<p><span style="color: #000000;">LMEKO002 &#8211; Enhance communication structure KOMP for price determination   </span></p>
<p><span style="color: #000000;">By: erpgreat              </span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-mm/sap-user-exit-mm/sap-user-exit-mm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP USER EXIT &#8211; SD</title>
		<link>http://www.about-sap.com/cat-sap-sd/sap-user-exit-sd/sap-user-exit-sd/</link>
		<comments>http://www.about-sap.com/cat-sap-sd/sap-user-exit-sd/sap-user-exit-sd/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 11:35:59 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP USER EXIT SD]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1849</guid>
		<description><![CDATA[HOW TO FIND USER EXIT IN SAP SD SAP user exit can be found in number of ways: 1) To find user exit in SD module , goto object navigator(SE80) and select development class from the list and enter VMOD in it. All of the userexits in SD are contained in the development class VMOD. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>HOW TO FIND USER EXIT IN SAP SD</strong></p>
<p>SAP user exit can be found in number of ways:</p>
<p>1) To find user exit in SD module , goto object navigator(SE80) and select</p>
<p>development class from the list and enter VMOD in it. All of the userexits in SD are contained in the development class VMOD. Press</p>
<p>enter and you will find all the includes which contain userexits in SD for</p>
<p>different functions like PRICING, ORDER PROCESSING etc. Select the userexit according to the requirement and read the comment inserted in it</p>
<p>and start coding .</p>
<p>Some examples of userexits in SD(SALES &amp; DISTRIBUTION ) are:</p>
<p>1)<span style="text-decoration: underline;">ADDING OF NEW FIELDS IN PRICING</span></p>
<p>In Pricing in SD the fields on the basis of which pricing is done are derived from the FIELD CATALOG which is a structure KOMG .This structure is used to transfer transaction data to the pricing procedure in SD and is also known as communication structure.This structure KOMG consists of two tables KOMK for Header related fields and KOMP for item related fields.</p>
<p>The fields which are not in either of the two tables KOMK and KOMP</p>
<p>cannot be used in pricing .Sometimes a need arises when the pricing</p>
<p>is to be based on some other criteria which is not present in the form of fields in either of the two tables.</p>
<p>This problem can be solved by using USEREXITS which are provided for pricing in SD.</p>
<p>Pricing takes place both when the SALES ORDER ( Transaction VA01) is created as well as when INVOICING ( Transaction VF01) is done.Hence SAP provides 2 userexits ,one for sales order processing which is</p>
<p>USEREXIT_PRICING_PREPARE_TKOMP or</p>
<p>USEREXIT_PRICING_PREPARE_TKOMK</p>
<p>Depending upon which table (KOMK or KOMP) the new fields were inserted we use either of the above two userexits.These userexits are found in include MV45AFZZ of the standard SAP sales order creation program SAPMV45A.</p>
<p>In the case of userexit which will be called when invoicing is done ,these</p>
<p>are provided in the include RY60AFZZ which is in the standard SAP</p>
<p>program SAPMV45A. The name of the userexits are same. i.e</p>
<p>USEREXIT_PRICING_PREPARE_TKOMP or</p>
<p>USEREXIT_PRICING_PREPARE_TKOMK</p>
<p>These userexits are used for passing the data from the communication structure to the pricing procedure, for this we have to fill the newely</p>
<p>created field in the communication structure KOMG for this we fill the code in the above userexit using the MOVE statement after the data that</p>
<p>has to be passed is taken from the database table by using the SELECT statement. The actual structure which is visible in these userexits and which is to be filled for that particular field is TKOMP or TKOMK.</p>
<p>Before the coding for these userexits is done ,it is necessary to create a new field in either of the two tables KOMK or KOMP .For this purpose</p>
<p>includes are provided in each of them .</p>
<p>To create the field in header data(KOMK) the include provided is KOMKAZ</p>
<p>and to create the field in item data(KOMP) the include provided is KOMPAZ.</p>
<p>One possible example for the need of creating new fields can be e.g. Frieght to be based upon transportation zone ,for this no field is available in field catalog and hence it can be created in KOMK and then above userexits can be used to fill the transportation data to it.</p>
<p>2)The other method of finding userexit is to find the word USEREXIT in the</p>
<p>associated program of the transaction for which we want to determine userexit using SE38.</p>
<p>3)The other method of finding userexits is to find the include in case of SD/MM applications where the userexits are located ,this can be found in the SAP reference IMG generally in the subfolder under SYSTEM MODIFICATION.</p>
<p>Some other examples of userexits in SD are:</p>
<p><strong>USEREXIT_NUMBER_RANGE</strong></p>
<p>This userexit is used to assign a different internal document number to the</p>
<p>sales order(VA01) when it is created depending on some criteria like a different SALES ORGANIZAION(VKORG) .</p>
<p><strong><span style="text-decoration: underline;">USEREXIT_SAVE_DOCUMENT_PREPARE</span></strong></p>
<p>This userexit is used to insert the ABAP code which will be called when</p>
<p>the document (sales order VA01) is just about to be saved.This userexit is used generally for custom checks on different fields , to display some information before the order will be saved or for making changes to certain fields before the sales order will be saved.</p>
<p><strong><span style="text-decoration: underline;">Exits &amp; Enhancements</span></strong></p>
<p>There are mainly six types of EXITs in sap which have been collected in the form of enhancement packages and attached to standard code in SAP.</p>
<p>These are different from USEREXIT in the way that they are implemented</p>
<p>in the form of FUNCTIONs while in USEREXITS we use form routines for their implementation. These are also sometimes known as function exits .</p>
<p>These start from the word EXIT_ followed by the program name and then followed by a three digit number.</p>
<p><strong>e.g. EXIT_SAPMV45A_002</strong></p>
<p>This exit is found in SD in enhancement V45A0002.</p>
<p><strong><span style="text-decoration: underline;">TYPES OF EXITS</span></strong></p>
<p>1)MENU EXITS</p>
<p>2)FUNCTION EXITS</p>
<p>3)TABLE EXITS</p>
<p>4)SCREEN EXITS</p>
<p>5)KEYWORD EXITS</p>
<p>6)FIELD EXITS</p>
<p>We use SAP transactions CMOD and SMOD to manage exits. Before implementing an exit , it is required to create the project by using CMOD</p>
<p>selecting the enhancement e.g. V45A0002 and selecting the component</p>
<p>(one which fulfills our need) i.e the exit which will be implemented in SMOD and after coding has been done the project has to be activated.</p>
<p>An exit can be coded only once.</p>
<p><strong>FUNCTION EXITS</strong></p>
<p>These are used to add functionality through ABAP code . These start from the word EXIT_programname_NNN ending in a 3 digit number. No access code is required to implement any tupe of exit including function exits.</p>
<p>The function exits are called from the standard SAP program in the form</p>
<p>of ABAP statement</p>
<p>CALL CUSTOMER-FUNCTION &#8216;NNN&#8217;</p>
<p>This is in contrast to USEREXITs where PERFORM statement is used to call</p>
<p>the required userexit.</p>
<p>To implement the FUNCTION EXITs first of all the project is created and a suitable enhancement package is selected and from its compnents the function exit to be implemented is selected and on double clicking it the exit code will appear in ABAP EDITOR(se38) where a Z include will be found and the customer code should be entered in this include.</p>
<p>e.g.</p>
<p><strong>ADDING A DEFAULT SOLD-TO-PARTY in Sales Order Creation</strong></p>
<p>To show a default sold-to-party in this field when the user creates a sales order (VA01) we can use a function exit .This function exit is located</p>
<p>in enhancement no V45A0002 . Before we can choose the exit we have to</p>
<p>create a project in CMOD after that enter V45A0002 in the enhancement field and click on the components . In the components you will see the</p>
<p>exit EXIT_SAPMV45A_002 . This exit is used for our purpose.</p>
<p>Double clicking on this exit will takes us to function builder (SE37) . This</p>
<p>function exit has one exporting parameters and two importing parameters, we are interested in exporting parameter which is E_KUNNR</p>
<p>of type KNA1-KUNNR i.e if we move the desired customer name to this</p>
<p>structure(E_KUNNR) it will be shown in the field as the default value when we create the sales order.</p>
<p>This function also contains a customer include ZXVVA04 . This include</p>
<p>will be used to write our custom code .</p>
<p>Double clicking on this include and it will prompt us that this include does not exists do you want to create this object ,select yes and the include will be created .In this include we can write our own code that will fill the field E_KUNNR.</p>
<p>e.g. E_KUNNR = 301.</p>
<p>Activate the include and Activate the project. Now when ever the SALES ORDER will be created , sold-to-party field will come up with a predefined</p>
<p>customer .</p>
<p><strong><span style="text-decoration: underline;">FIELD EXITS</span></strong></p>
<p>The field exits are managed,created,activated through program RSMODPRF. The field exit is associated with a data element existing in ABAP dictionary and hence to the screen field using that data element.</p>
<p>The format of field exit is :</p>
<p><strong>FIELD_EXIT_dataelement_A-Z or 0-9</strong></p>
<p>If a particular screen and program name is not specified than the field exit will effect all the screens containing that data element.</p>
<p>The function module associated with field exit shows two parameters</p>
<p>INPUT and OUTPUT. Input parameter contains the data passed to the field exit when the field exit was invoked by the R/3 , We can write our own code to change the output parameter depending upon our requirements.</p>
<p>Before the field exit can have any effect the system profile parameter</p>
<p>ABAP/FIELDEXIT in all the application servers should be set to YES</p>
<p>ABAP/FIELDEXIT = YES.</p>
<p>As in sap.niraj.tripod.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-sd/sap-user-exit-sd/sap-user-exit-sd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP REPORT &#8211; SAP USER EXIT</title>
		<link>http://www.about-sap.com/cat-sap-reports/sap-user-exit/sap-report-sap-user-exit/</link>
		<comments>http://www.about-sap.com/cat-sap-reports/sap-user-exit/sap-report-sap-user-exit/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 11:27:05 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP USER EXIT]]></category>
		<category><![CDATA[SAP REPORTS]]></category>
		<category><![CDATA[sap user exit]]></category>
		<category><![CDATA[sap users exits]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1844</guid>
		<description><![CDATA[What is a SAP USER EXIT? A SAP User Exit is a user defined FORM routine that is used to calculate and/or replace values within a validation, substitution, or rule. User exits have the following format: U (for a user-defined user exit) or S (for a standard user exit) The user exit number (three digits) For [...]]]></description>
			<content:encoded><![CDATA[<p>What is a SAP USER EXIT?</p>
<p>A SAP User Exit is a user defined FORM routine that is used to calculate and/or replace values within a validation, substitution, or rule.</p>
<p>User exits have the following format:</p>
<ul>
<li><strong>U</strong> (for a user-defined user exit) or <strong>S</strong> (for a standard user exit)</li>
</ul>
<ul>
<li>The user exit number (three digits)</li>
</ul>
<p>For example, <strong>U123</strong> is a user-defined user exit.</p>
<p>You can configure the form pool name of the sap user exit and must store it in the table for client-dependent user exits (T80D) in Customizing. Table T80D contains the form pool names for the user exits used in validations, substitutions, and rules. Each validation/substitution form pool is client-dependent. (For more information, refer to the <em>Maintain Client-Dependent User Exits</em> activity in the Implementation Guide (IMG) for <em>Special Purpose Ledger.</em>)</p>
<p>Example form pools RGGBS000 and RGGBR000 for client 000 are delivered with the SAP R/3 System. You must copy these form pools and configure them in T80D. The new form pool name should conform to the customer naming convention (beginning with the letter <strong>Z</strong> ) so that is not overwritten when the next SAP upgrade is installed (for example, ZGGBR000).</p>
<p>Example FORM routine for substitution exit 001 (U001).</p>
<p><strong>TABLES: COBL.</strong></p>
<p><strong>FORM U001.<br />
COBL-KOSTL = COBL-BUKRS.</strong></p>
<p><strong>ENDFORM.</strong></p>
<p>Tables and structures should not be declared in the FORM routines so that the contents can be used together with the calling transaction.</p>
<p>SAP exits are FORM routines that have been programmed by SAP. The name of the form pool for SAP exits is SAPFGBEB.</p>
<p>If you still store your rules in table T890 (interpreted rules), you cannot use user exits in your rule definition. It is highly recommended that you use report program RGUGBR10 to convert interpreted rules into generated rules so that you can use the Customizing<em> </em>function for maintaining rules. For more information, see Using the Rule Manager Reports .</p>
<p>The following table shows the types of user exits that can be used in validations, substitutions, and rules.</p>
<table width="100%" border="1" cellspacing="1" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="11%"><strong>User exit   type</strong></td>
<td valign="top" width="44%"><strong>Description</strong></td>
<td valign="top" width="18%"><strong>Application</strong></td>
<td valign="top" width="27%"><strong>Example</strong></td>
</tr>
<tr>
<td valign="top" width="11%"><strong>1</strong></td>
<td valign="top" width="44%">No parameters are defined for the user exit.</td>
<td valign="top" width="18%">Rules, validations, and substitutions   (prerequisite)</td>
<td valign="top" width="27%">See form pool RGGBR000, parameter type   C_EXIT_PARAM_NONE</td>
</tr>
<tr>
<td valign="top" width="11%"><strong>2</strong></td>
<td valign="top" width="44%">Same as user exit type 1, except one parameter   (the field to be substituted) is defined in the user exit. For example, you   can create a substitution routine that analyzes the cost center irrespective   of the used field.</td>
<td valign="top" width="18%">Substitutions</td>
<td valign="top" width="27%">See form pool RGGBS000, parameter type   C_EXIT_PARAM_FIELD</td>
</tr>
<tr>
<td valign="top" width="11%"><strong>3</strong></td>
<td valign="top" width="44%">All data is passed as one parameter; this exit   type can only be used in matrix validations and substitutions.</td>
<td valign="top" width="18%">Rules, validations, and substitutions   (prerequisite)</td>
<td valign="top" width="27%">See form pool RGGBR000, parameter type C_EXIT_PARAM_CLASS</td>
</tr>
</tbody>
</table>
<p>Validations and rules use exit numbers 1 and 3 from the above table.</p>
<p>Substitutions use all of the exit numbers from the above table.</p>
<p>For substitutions, you can also create user exits that accept a field as one parameter and then return the changed value in this parameter. This allows you to create a user exit that can be used independently of the field and table name. This type of user exit cannot be used as an entry in the <em>Exit only</em> field in the list of values to be substituted; you can only use this exit type in conjunction with a field name. An example of this user exit type is in form pool RGGBS000.</p>
<p>If you want to define a parameter for your user exit that is different from the result of a validation (B_RESULT), you must make an entry for your user exit in the FORM routine GET_EXIT_TITLES in the form pool you defined. It is recommended that you copy the SAP example form pool RGGBR000 for validation exits or RGGBS000 for substitution exits. These example</p>
<p>&nbsp;</p>
<p>You can implement company-specific enhancements (user exits) that will provide additional functions. Customer-specific user exits may encompass such activities as:</p>
<ul>
<li>Specifying the conditions for dispatching      certificates (FORM routines as user exits)</li>
</ul>
<ul>
<li>Defining additional data origins for inspection      specifications, results, and short texts for characteristics in the      certificate profile (self-defined function modules as table entries)</li>
</ul>
<ul>
<li>Defining and evaluating additional limitations      for the selection of inspection lots and partial lots (SAP user exit with      menu function in the certificate profile and function modules)</li>
</ul>
<ul>
<li>The automatic entry of the characteristic detail      data in the certificate profile (SAP user exit)</li>
</ul>
<ul>
<li>Defining the layout (text elements from a      SAPscript® layout set, SAPscript® standard texts, SAPscript® layout sets)</li>
</ul>
<ul>
<li>Defining the layout and the output data for      characteristics (special text elements in the SAPscript® layout set for      the characteristic output format, inspection method and supplementary      text, if the result is outside of the tolerance; SAPscript® standard      texts)</li>
</ul>
<ul>
<li>Adding new objects to which certificate profiles      can be assigned (enhancement of a structure in the dictionary and an SAP      user exit with a function module)</li>
</ul>
<ul>
<li>Using your own program to select the data and      print the certificates (as a table entry)</li>
</ul>
<p>To obtain information about additional enhancement possibilities, you can create a list as follows:</p>
<ol>
<li>Choose <em>Tools </em><em>®</em><em> </em><em>ABAP Workbench</em>.</li>
</ol>
<p>The system displays the initial screen for the ABAP Workbench.</p>
<ol>
<li>Choose <em>Utilities </em><em>®</em><em> </em><em>Enhancement </em><em>®</em><em> </em><em>Definition</em>.</li>
</ol>
<p>The system displays the initial screen for SAP enhancements.</p>
<ol>
<li>Choose the possible entries help for the <em>Enhancement </em>field.</li>
</ol>
<p>The system displays the selection screen for locating SAP enhancements.</p>
<ol>
<li>Enter <strong>QC</strong> in the <em>Enhancement</em> field.</li>
<li>Choose <em>Execute</em>.</li>
</ol>
<p>As in SAP.COM</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-reports/sap-user-exit/sap-report-sap-user-exit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP BC TIPS &#8211; Download table data from se16 to excel</title>
		<link>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-download-table-data-from-se16-to-excel/</link>
		<comments>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-download-table-data-from-se16-to-excel/#comments</comments>
		<pubDate>Sat, 10 Mar 2012 17:12:22 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[SAP BC]]></category>
		<category><![CDATA[SAP BC Tips]]></category>
		<category><![CDATA[sap]]></category>
		<category><![CDATA[sap bc]]></category>
		<category><![CDATA[sap bc tips]]></category>
		<category><![CDATA[se16 download]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1834</guid>
		<description><![CDATA[Try this &#8211; the table DD03M contains all the information shown in SE11.  Using SE16 go to table DD03M and enter the name of your table.  You can select the columns you want to save, then select settings-&#62;user parameterss click on the tab &#8220;Data Browser&#8221;  switch to the ALV Grid display and click the green [...]]]></description>
			<content:encoded><![CDATA[<p>Try this &#8211; the table DD03M contains all the information shown in SE11.  Using SE16 go to table DD03M and enter the name of your table.  You can select the columns you want to save, then select settings-&gt;user parameterss click on the tab &#8220;Data Browser&#8221;  switch to the ALV Grid display and click the green check mark.  Once you are in the ALV grid display, you can click on the excel icon and save as an excel spreadsheet.<br />
Enjoy it <img src='http://www.about-sap.com/wp-includes/images/smilies/icon_smile.gif' alt="icon smile SAP BC TIPS   Download table data from se16 to excel" class='wp-smiley' title="SAP BC TIPS   Download table data from se16 to excel" /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-download-table-data-from-se16-to-excel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP BC TIPS &#8211; Execute a Function Module without using SE37</title>
		<link>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-execute-a-function-module-without-using-se37/</link>
		<comments>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-execute-a-function-module-without-using-se37/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 18:27:28 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[RANDOM TIPS]]></category>
		<category><![CDATA[SAP BC]]></category>
		<category><![CDATA[SAP BC Tips]]></category>
		<category><![CDATA[sap]]></category>
		<category><![CDATA[sap abap]]></category>
		<category><![CDATA[sap bc]]></category>

		<guid isPermaLink="false">http://www.about-sap.com/?p=1631</guid>
		<description><![CDATA[A number of companies restrict the execution of function modules in quality, pre-prod and prod environments, for good reason. Therefore you may find you do not have access to the transaction code SE37. Generally experienced developers may however have access to SE38. So how do you execute or test a function module in a system/client [...]]]></description>
			<content:encoded><![CDATA[<p>A number of companies restrict the execution of function modules in quality, pre-prod and prod environments, for good reason. Therefore you may find you do not have access to the transaction code SE37.  Generally experienced developers may however have access to SE38.</p>
<p>So how do you execute or test a function module in a system/client but wish to get around the authorization issue? Simply use SE38 with program RSFUNCTIONBUILDER.</p>
<p>TIP – You can sometimes use the same technique by using SE93 with the problem transaction and using the program name however do not expect to be able to bypass all authorizations.</p>
<p>By: SAPtricks</p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-bc/sap-bc-tips-execute-a-function-module-without-using-se37/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SAP FI TIPS &#8211; Table relationships image</title>
		<link>http://www.about-sap.com/cat-sap-fi/sap-fi-tips-table-relationships-image/</link>
		<comments>http://www.about-sap.com/cat-sap-fi/sap-fi-tips-table-relationships-image/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 11:50:40 +0000</pubDate>
		<dc:creator>ABOUT-SAP</dc:creator>
				<category><![CDATA[RANDOM TIPS]]></category>
		<category><![CDATA[SAP FI]]></category>
		<category><![CDATA[SAP FI Tips]]></category>
		<category><![CDATA[master data]]></category>
		<category><![CDATA[sap]]></category>

		<guid isPermaLink="false">http://www.sap4all.eu/?p=1583</guid>
		<description><![CDATA[FI CO Table Mapping FI CO Master Data]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">FI CO Table Mapping</p>
<p><a href="http://www.sap4all.eu/wp-content/uploads/2011/09/2099431_f520.jpg"><img class="aligncenter size-medium wp-image-1589" title="2099431_f520" src="http://www.sap4all.eu/wp-content/uploads/2011/09/2099431_f520-300x237.jpg" alt="2099431 f520 300x237 SAP FI TIPS   Table relationships image" width="300" height="237" /></a></p>
<p style="text-align: center;">FI CO Master Data</p>
<p style="text-align: center;"><a href="http://www.sap4all.eu/wp-content/uploads/2011/09/2099444_f520.jpg"><img class="aligncenter size-medium wp-image-1590" title="2099444_f520" src="http://www.sap4all.eu/wp-content/uploads/2011/09/2099444_f520-300x234.jpg" alt="2099444 f520 300x234 SAP FI TIPS   Table relationships image" width="300" height="234" /></a><a href="http://www.sap4all.eu/wp-content/uploads/2011/09/SAP-FICO-Master-data.gif"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.about-sap.com/cat-sap-fi/sap-fi-tips-table-relationships-image/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

