<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6918658615822881510</id><updated>2012-02-16T20:08:11.928-08:00</updated><category term='ABAP OOPs'/><category term='Solution Manager Program'/><category term='Debugger'/><category term='LSMW'/><category term='Data Dictionary'/><category term='ALE / IDOC'/><category term='Debugging'/><category term='Enhancement Technique'/><category term='Classical Report'/><category term='Sapscript'/><category term='ABAP General'/><category term='ALV using class'/><category term='ALV using function module'/><category term='Technical Specification'/><title type='text'>Fun with ABAP</title><subtitle type='html'>Here you can find useful ABAP tips &amp;amp; tricks, codes those can make your life easier.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>48</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-8467251850813674029</id><published>2011-09-24T00:07:00.000-07:00</published><updated>2011-09-24T00:32:49.797-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Dictionary'/><title type='text'>Problem with Custom table activation</title><content type='html'>Joyjit Ghosh, Kolkata.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Background:&lt;/strong&gt;&lt;br /&gt;Recently we have seen a peculiar problem during activation of an existing custom table after a field addition.&lt;br /&gt;During activation it was throwing following message:&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-NneK9Ph6kTE/Tn2EmRX5ItI/AAAAAAAAAag/QEFe42S2Z2o/s1600/1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://2.bp.blogspot.com/-NneK9Ph6kTE/Tn2EmRX5ItI/AAAAAAAAAag/QEFe42S2Z2o/s400/1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655822500080722642" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-khdP_21hwao/Tn2EsD6-w8I/AAAAAAAAAao/tlT_4OvGDRI/s1600/2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://2.bp.blogspot.com/-khdP_21hwao/Tn2EsD6-w8I/AAAAAAAAAao/tlT_4OvGDRI/s400/2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655822599549010882" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-Kcch-oYzApY/Tn2EyFwAoJI/AAAAAAAAAaw/UuW7Q4QzepE/s1600/3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://4.bp.blogspot.com/-Kcch-oYzApY/Tn2EyFwAoJI/AAAAAAAAAaw/UuW7Q4QzepE/s400/3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655822703119081618" /&gt;&lt;/a&gt;&lt;br /&gt;From the above screen shots we were clueless about the problem &lt;br /&gt;That's why thought to check the system log (SM21):&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-BE9gqjkBEkI/Tn2E-lEX_XI/AAAAAAAAAa4/Fa_4qDgtBSM/s1600/4.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://1.bp.blogspot.com/-BE9gqjkBEkI/Tn2E-lEX_XI/AAAAAAAAAa4/Fa_4qDgtBSM/s400/4.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655822917684428146" /&gt;&lt;/a&gt;&lt;br /&gt;It gives the required hint that problem is with database physical storage&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;br /&gt;After searching through SAP market place we have found an OSS note that gives a clue to resolve this issue. It states about a data dictionary table called DDSTORAGE that stores the parameters related to database storage for any data dictionary table. Further investigation reveals that to resolve this problem we have to increase the value for MAXEXTENTS parameter.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-QWz5z1InG6s/Tn2FOk-Ol3I/AAAAAAAAAbA/w4iTiuhTR0Y/s1600/5.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://4.bp.blogspot.com/-QWz5z1InG6s/Tn2FOk-Ol3I/AAAAAAAAAbA/w4iTiuhTR0Y/s400/5.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655823192536553330" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-iVMWBiZOONo/Tn2FUjwx-aI/AAAAAAAAAbI/IsmRAbwAx_0/s1600/6.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://3.bp.blogspot.com/-iVMWBiZOONo/Tn2FUjwx-aI/AAAAAAAAAbI/IsmRAbwAx_0/s400/6.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655823295290931618" /&gt;&lt;/a&gt;&lt;br /&gt;Changed the value of MAXEXTENTS parameter in debug mode.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-PyQfAcfsMbs/Tn2G6NUYBmI/AAAAAAAAAbQ/kKKJdaNjaLY/s1600/7.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://4.bp.blogspot.com/-PyQfAcfsMbs/Tn2G6NUYBmI/AAAAAAAAAbQ/kKKJdaNjaLY/s400/7.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655825041612867170" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-ZZ5slG6Y1lQ/Tn2HAEXWByI/AAAAAAAAAbY/OsX7di7pkEk/s1600/8.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://2.bp.blogspot.com/-ZZ5slG6Y1lQ/Tn2HAEXWByI/AAAAAAAAAbY/OsX7di7pkEk/s400/8.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655825142288615202" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-D7u7VlLXr-E/Tn2HFsTLoRI/AAAAAAAAAbg/opxLTOsRrtY/s1600/9.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://1.bp.blogspot.com/-D7u7VlLXr-E/Tn2HFsTLoRI/AAAAAAAAAbg/opxLTOsRrtY/s400/9.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655825238907920658" /&gt;&lt;/a&gt;&lt;br /&gt;After maintaining the value for parameter MAXEXTENTS when we had activated the table it was activated without any error.&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-AlcEzc2U_qE/Tn2HQZdu9GI/AAAAAAAAAbo/50hKRdQiIJg/s1600/10.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 225px;" src="http://3.bp.blogspot.com/-AlcEzc2U_qE/Tn2HQZdu9GI/AAAAAAAAAbo/50hKRdQiIJg/s400/10.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5655825422830466146" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-8467251850813674029?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/8467251850813674029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=8467251850813674029&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8467251850813674029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8467251850813674029'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2011/09/problem-with-custom-table-activation.html' title='Problem with Custom table activation'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-NneK9Ph6kTE/Tn2EmRX5ItI/AAAAAAAAAag/QEFe42S2Z2o/s72-c/1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-3080493604075395792</id><published>2010-08-01T01:34:00.000-07:00</published><updated>2010-08-01T01:40:45.816-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Few SAP tips</title><content type='html'>Joyjit Ghosh, Kolkata&lt;br /&gt; &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;1. Maintain single table entry at a time without coding or debugging&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Go to SE16      transaction&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Give any table      name and press Enter , Ex: MARA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Now execute (F8)      this screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Choose the      record you want to manipulate and display (F7)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Go to Debug mode      (/H) and press ‘Enter’ 2 times&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Change the value      of the variable ‘CODE’. By default, it is 'SHOW'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Change the code      value as 'EDIT' for modifications, 'INSR' for insert and 'DELE' for      delete.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;2. Maintain multiple table entries at a time without coding or debugging&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Goto transaction      SE16N&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Give the table      name &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;In command box      write ‘&amp;amp;sap_edit’ then press ‘Enter’&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Press execute      button&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;3. Debugging background job&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Goto transaction      SM37 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Select any job      that you want to debug&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Enter 'jdbg' as      okcode in command box &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Press ‘Enter’&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Note: You can do the same from transaction SM50 as well&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;4. Environmental analysis of a program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Goto Transaction      SE38 and key in the program name for which you want to Environmental      analysis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Press      ‘SHIFT+F4’. 'Environment Analysis' pop-up-window opens.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Check the      required information and press ‘Enter’ &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Aslo check the programs RSINCL00, RSDEPEND.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;5. Start debugging from a popup window&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Alernative 1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Create a short      cut for any transaction from the SAPGUI.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Change      transaction type to ‘system command’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Enter command as      ‘/h’&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Save this on the      desktop.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;On any screen      just drag and drop this shortcut&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;You are all set      to debug now&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Alternative 2 :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Create a text      file with following commands&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;*********************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;[FUNCTION]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Command=/H&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Title=Debugger&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Type=SystemCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;*********************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;On any screen      just drag and drop this shortcut&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;You are all set      to debug now&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;6. Retrieving the deleted program&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Create a program      with the same name as earlier (which is deleted)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Click on      "Utilities" --&gt; "Versions" --&gt; "Version      Management"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Select the      version of your earlier program and click on display.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Your earlier      program is displayed here. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;7. Sending message to other user from SAP&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Go to      transaction SE37&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Execute the FM      ‘TH_POPUP’ by mentioning the client , user name and the message text&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;8. Display icon in selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Find the hex      code of the icon. Hex codes of all the icons are available in type-pool      ‘ICON’ or available through the program ‘&lt;icon&gt;’ . &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Now you have to      create text-elements using that hex codes. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;          &lt;/span&gt;Ex: @6A@ Click&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-3080493604075395792?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/3080493604075395792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=3080493604075395792&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3080493604075395792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3080493604075395792'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2010/08/few-sap-tips.html' title='Few SAP tips'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-1361948687599418463</id><published>2009-11-19T01:47:00.000-08:00</published><updated>2009-11-19T02:43:10.001-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALE / IDOC'/><title type='text'>Triggering workflow event from WE19 (Inbound)</title><content type='html'>&lt;span style=";font-family:Arial;font-size:11;"  &gt;Joyjit Ghosh, Kolkata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;We were trying to test a custom inbound function module where for error it triggers the workflow so that user can be send notification mails with details of the problem.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;We were using transaction WE19 to test the FM, for that we had chosen &lt;b&gt;Inbound function module&lt;/b&gt; option.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUcqddHu5I/AAAAAAAAAW4/PtGh1f1Dk5c/s1600/1.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 212px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUcqddHu5I/AAAAAAAAAW4/PtGh1f1Dk5c/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5405758443515001746" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SwUc3uHvX6I/AAAAAAAAAXA/mmYSb9jL5YA/s1600/2.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 141px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SwUc3uHvX6I/AAAAAAAAAXA/mmYSb9jL5YA/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5405758671327027106" border="0" /&gt;&lt;/a&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;But in SWEL we had found that no event was raised by the FM. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SwUdB--cZKI/AAAAAAAAAXI/zfpWheOAQtw/s1600/3.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 245px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SwUdB--cZKI/AAAAAAAAAXI/zfpWheOAQtw/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5405758847650129058" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;But in our code we had populated workflow variables correctly&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SwUdN3vfpoI/AAAAAAAAAXQ/rbEeiELvw7g/s1600/4.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 295px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SwUdN3vfpoI/AAAAAAAAAXQ/rbEeiELvw7g/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5405759051866809986" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Also we had checked the config. and found that this FM is properly configured to raise the event INPUTERROROCCURRED.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUdg4AxJzI/AAAAAAAAAXY/WLPz-ECb3T4/s1600/5.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 322px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUdg4AxJzI/AAAAAAAAAXY/WLPz-ECb3T4/s400/5.gif" alt="" id="BLOGGER_PHOTO_ID_5405759378356774706" border="0" /&gt;&lt;/a&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;After spending few minutes we were able to figure out the problem. We had observed that if we choose &lt;b&gt;Standard Inbound&lt;/b&gt; option with &lt;b&gt;ALE Service Check box checked&lt;/b&gt; then it triggers the event. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;Note:&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt; Our custom inbound FM &lt;b&gt;Z_IDOC_INPUT_GOODS_RECEIPT &lt;/b&gt;was attached with custom process code &lt;b&gt;ZMIM_POGR&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUd_zVNMoI/AAAAAAAAAXg/qqti15BDbKQ/s1600/6.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 254px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SwUd_zVNMoI/AAAAAAAAAXg/qqti15BDbKQ/s400/6.gif" alt="" id="BLOGGER_PHOTO_ID_5405759909676266114" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SwUf2SZCYuI/AAAAAAAAAXw/OHCFs8qsGpY/s1600/7.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 232px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SwUf2SZCYuI/AAAAAAAAAXw/OHCFs8qsGpY/s400/7.gif" alt="" id="BLOGGER_PHOTO_ID_5405761945238397666" border="0" /&gt;&lt;/a&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;SWEL:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SwUf82vOBjI/AAAAAAAAAX4/dr6bIqDGZsA/s1600/8.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 58px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SwUf82vOBjI/AAAAAAAAAX4/dr6bIqDGZsA/s400/8.gif" alt="" id="BLOGGER_PHOTO_ID_5405762058074326578" border="0" /&gt;&lt;/a&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Then what was the reason for not triggering the workflow? Reason is very simple; workflow is triggered by the ALE layer itself, without ALE layer we cannot trigger the workflow. So if you want to trigger workflow for inbound IDOC from WE19, choose &lt;b&gt;Standard Inbound option with ALE Service Check box checked&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-1361948687599418463?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/1361948687599418463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=1361948687599418463&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1361948687599418463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1361948687599418463'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/11/triggering-workflow-event-from-we19.html' title='Triggering workflow event from WE19 (Inbound)'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/SwUcqddHu5I/AAAAAAAAAW4/PtGh1f1Dk5c/s72-c/1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-2754042784152577534</id><published>2009-10-23T13:21:00.000-07:00</published><updated>2009-10-23T13:36:32.812-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LSMW'/><title type='text'>Error handling in LSMW</title><content type='html'>&lt;span style=";font-family:Arial;font-size:11;"  &gt;Joyjit Ghosh, Kolkata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;      &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;To do error handling in LSMW object we can write validation logic in step “5 Maintain Field Mapping and Conversion Rule”. All custom codes written in this section will be part of the conversion program once we generate it.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Following steps are required for error handling:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Define      an internal table to store all error messages&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Write      logic to validate the data and populate the error table when validation      fails&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Display      error messages as part of conversion program output&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;All these steps should be performed under step “5 Maintain Field Mapping and Conversion Rule” from transaction LSMW.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;b&gt;Step 1: Define an internal table to store all error messages&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;In &lt;b&gt;__GLOBAL_DATA__&lt;/b&gt; section define the internal table that will store the error messages.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIRBLpJUqI/AAAAAAAAAVw/0lKu-04jyK4/s1600-h/1.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 149px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIRBLpJUqI/AAAAAAAAAVw/0lKu-04jyK4/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5395894015546184354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 2: Write logic to validate the data and populate the error table when validation fails&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Now write validation logic for the fields those we want to validate. If validation fails then populate the error table and after that call the macro “&lt;b&gt;SKIP_TRANSACTION&lt;/b&gt;” so that this error record can be skipped and control will go to next record in the file.&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SuIRVoKQkEI/AAAAAAAAAV4/NVt72K83rUQ/s1600-h/2.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 235px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SuIRVoKQkEI/AAAAAAAAAV4/NVt72K83rUQ/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5395894366798647362" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 3: Display error messages as part of conversion program output&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Now at &lt;b&gt;__END_OF_PROCESSING__&lt;/b&gt; section write logic to display the error table.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIRlxam9qI/AAAAAAAAAWA/raFgF-ZK29s/s1600-h/3.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 108px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIRlxam9qI/AAAAAAAAAWA/raFgF-ZK29s/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5395894644161050274" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;After writing the above steps, check the syntax of the custom code by clicking the appropriate button (&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SuISRZSgD7I/AAAAAAAAAWY/slnmQRhpqlI/s1600-h/4.gif"&gt;&lt;img style="cursor: pointer; width: 29px; height: 29px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SuISRZSgD7I/AAAAAAAAAWY/slnmQRhpqlI/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5395895393598836658" border="0" /&gt;&lt;/a&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:21.75pt;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;) on application toolbar. It will display a pop-up screen where we need to press ‘Yes’ button.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIR3eLkfyI/AAAAAAAAAWQ/bGktVQ6mnfo/s1600-h/5.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 177px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SuIR3eLkfyI/AAAAAAAAAWQ/bGktVQ6mnfo/s400/5.gif" alt="" id="BLOGGER_PHOTO_ID_5395894948235345698" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;If everything is OK then it will display message that conversion program is regenerated successfully.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SuISauM5VdI/AAAAAAAAAWg/fPLX3FxGaBU/s1600-h/6.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 358px; height: 30px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SuISauM5VdI/AAAAAAAAAWg/fPLX3FxGaBU/s400/6.gif" alt="" id="BLOGGER_PHOTO_ID_5395895553831294418" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;After this follow the LSMW steps like “7 Specify Files”, “8 Assign Files”, “9 Read Data”, “10 Display Read Data”. And lastly perform the step “11 Convert Data” where SAP actually executes the validation logic (written in step “5 Maintain Field Mapping and Conversion Rule”) as part of conversion program. And display the error messages those are generated due to error handling.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SuISscc3UzI/AAAAAAAAAWo/Rq-D5v5HsZ0/s1600-h/7.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 306px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SuISscc3UzI/AAAAAAAAAWo/Rq-D5v5HsZ0/s400/7.gif" alt="" id="BLOGGER_PHOTO_ID_5395895858304078642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="font-weight: bold;" class="MsoNormal"&gt;Output:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SuITAS920GI/AAAAAAAAAWw/DrSIBqm5BeI/s1600-h/8.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 197px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SuITAS920GI/AAAAAAAAAWw/DrSIBqm5BeI/s400/8.gif" alt="" id="BLOGGER_PHOTO_ID_5395896199355486306" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-2754042784152577534?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/2754042784152577534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=2754042784152577534&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/2754042784152577534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/2754042784152577534'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/10/error-handling-in-lsmw.html' title='Error handling in LSMW'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OG4xeUsph1w/SuIRBLpJUqI/AAAAAAAAAVw/0lKu-04jyK4/s72-c/1.gif' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4491581749738881601</id><published>2009-08-10T03:10:00.000-07:00</published><updated>2009-08-10T03:26:59.409-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Technical Specification'/><title type='text'>Guidelines to write a good Technical Specification</title><content type='html'>&lt;span style="" lang="EN-GB"&gt;Joyjit Ghosh, Kolkata&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-GB"&gt;Following points need to be remembered at the time of TS preparation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="" lang="EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style="" lang="EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;If Technical Specification template      contains any instruction then we need to replace them with actual content.      If nothing is required to fill against that section then put N/A (Not      applicable) instead.&lt;i&gt;&lt;span style="color:gray;"&gt; &lt;/span&gt;&lt;/i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Use&lt;span style=""&gt;  &lt;/span&gt;consistent&lt;span style=""&gt;  &lt;/span&gt;Font (Family and Size) throughout the      document (e.g. Arial 10 or Times New Roman 10)&lt;/span&gt;&lt;span style="" lang="EN-GB"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;The Technical Specification title should follow the naming convention that is agreed with the client like &lt;i style=""&gt;&lt;type of="" development=""&gt; :"&lt;/type&gt;&lt;/i&gt;&lt;i style=""&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;( &lt;/span&gt;&lt;/i&gt;&lt;i style=""&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;Type &lt;/span&gt;&lt;/i&gt;&lt;i style=""&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;of Development) : (Description of the Development)".&lt;/span&gt;&lt;/i&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;&lt;br /&gt; &lt;!--[endif]--&gt;&lt;/span&gt;&lt;span lang="EN-GB"  style="font-size:12;"&gt;Ex: &lt;i style=""&gt;Report: BOM explosion level by level&lt;/i&gt;.&lt;b style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;The Technical Specification file      name should have an agreed naming convention like &lt;i style=""&gt;"&lt;/i&gt;&lt;/span&gt;&lt;i style=""&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;TS_(Short Description)"&lt;/span&gt;&lt;/i&gt;&lt;span style="" lang="EN-GB"&gt;&lt;i style=""&gt;&lt;short description=""&gt;&lt;/short&gt;&lt;/i&gt;.&lt;span style=""&gt;       &lt;/span&gt;E.g. &lt;i style=""&gt;TS_BOM_Explosion.doc&lt;/i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Maintain Date      and Version on the first page of TS&lt;/span&gt;&lt;span style="" lang="EN-GB"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Maintain      Amendment History&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;Maintain QA’s      and Signoffs Section.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Do not add anything in “Table      of contents”, only you can update the page number.&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_yXEBN5YI/AAAAAAAAAVQ/9m7FaroFw0g/s1600-h/1.gif"&gt;&lt;img style="cursor: pointer; width: 386px; height: 153px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_yXEBN5YI/AAAAAAAAAVQ/9m7FaroFw0g/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5368275758878680450" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_yhjH7O_I/AAAAAAAAAVY/18Csa5VlDuI/s1600-h/2.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 166px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_yhjH7O_I/AAAAAAAAAVY/18Csa5VlDuI/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5368275939027008498" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Don’t delete any section of the      TS template; if no information is available for any section then put N/A      instead.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Maintain contact details of the      developer and functional owner&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Provide all CTS numbers      including dependent objects stored in other CTS. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Mention all assumptions &amp;amp; issues;      provide closure date with issue resolution for the closed issues&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Mention all technical details      like Program name, Transaction name, Package name, Message class, and      other repository objects correctly, they should follow the agreed naming      convention&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;If required Table access      diagram should be created where all tables along with keys fields and      their relationships are drawn correctly&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;The flow diagram      should describe the high level program flow. It should have a START node      and an END node. Use the Flow Chart symbols to depict various steps. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;The pseudo code      should be organized in paragraphs indented properly as per the flow logic.      &lt;/span&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;In the pseudo      code each sentence should start with words like “Retrieve”, “Perform” etc.&lt;br /&gt;    &lt;i style=""&gt;Example: Retrieve the following      fields from table MARA&lt;br /&gt;    &lt;span style=""&gt;                &lt;/span&gt;Perform the      following steps for each record of T_MARA&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code a      SELECT statement can be written as:&lt;br /&gt;    &lt;span style=""&gt;            &lt;/span&gt;&lt;span style="font-style: italic;"&gt;Retrieve the fields (Field List) from &lt;/span&gt;&lt;table&gt; &lt;span style="font-style: italic;"&gt;into an      internal table (Say T_ITAB) using the following criteria.&lt;/span&gt;&lt;i style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code a &lt;st1:place st="on"&gt;LOOP&lt;/st1:place&gt; statement can be written as:&lt;br /&gt;    &lt;span style=""&gt;            &lt;/span&gt;&lt;i style=""&gt;Perform the following steps for each record of internal table      T_ITAB.&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code an      IF statement can be written as:&lt;br /&gt;    &lt;span style=""&gt;            &lt;/span&gt;&lt;i style=""&gt;Perform the following steps if &lt;condition&gt; is true or false.&lt;o:p&gt;&lt;/o:p&gt;&lt;/condition&gt;&lt;/i&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code data      declarations can be written as:&lt;br /&gt;    &lt;span style=""&gt;            &lt;/span&gt;&lt;i style=""&gt;Declare the following variables. X1 type CHAR1&lt;/i&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code calls      to function module can be written as: &lt;i style=""&gt;Call      the function module &lt;fname&gt; and pass the following parameters to the      function module.&lt;/fname&gt;&lt;/i&gt; The parameters can be specified in a Table format or      attached as an excel document.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code for      custom table, list of fields should be included along with the data      elements, foreign key checks etc. Also Technical settings need to be      specified along with Delivery and Maintenance details.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;In the &lt;/span&gt;&lt;span style=""&gt;pseudo code      mention Selection Screen Criteria along with its data type, default value,      mandatory, selection screen type and validations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Perform spelling check after      the preparation of the document.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="" lang="EN-GB"&gt;Go to document Properties and      fill the Summary tab with appropriate values.&lt;/span&gt;&lt;/li&gt;&lt;/table&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_y3TxY17I/AAAAAAAAAVg/rb866T0-6Es/s1600-h/3.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 264px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_y3TxY17I/AAAAAAAAAVg/rb866T0-6Es/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5368276312863070130" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;In Unit test      plan (UTP) document all the test conditions appropriately&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;In Unit test      plan (UTP) expected results should be documented clearly &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style=""&gt;In Unit test      plan (UTP) test data should be given if available&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4491581749738881601?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4491581749738881601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4491581749738881601&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4491581749738881601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4491581749738881601'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/08/guidelines-to-write-good-technical.html' title='Guidelines to write a good Technical Specification'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/Sn_yXEBN5YI/AAAAAAAAAVQ/9m7FaroFw0g/s72-c/1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4077729106100090862</id><published>2009-07-30T02:54:00.000-07:00</published><updated>2009-07-30T04:00:40.369-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sapscript'/><title type='text'>Display background (water mark) image using SAPscript</title><content type='html'>Joyjit Ghosh, Kolkata&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Detail Steps:&lt;/span&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Step 1: &lt;span style=""&gt; &lt;/span&gt;Create a standard text (transaction SO10) and insert the background image in it&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFuQxEz4vI/AAAAAAAAASo/A7n-ki9chDE/s1600-h/1.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 247px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFuQxEz4vI/AAAAAAAAASo/A7n-ki9chDE/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5364189865505448690" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFukBpHhiI/AAAAAAAAASw/LA7s3YujoOQ/s1600-h/2.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 245px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFukBpHhiI/AAAAAAAAASw/LA7s3YujoOQ/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5364190196370212386" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SnFuz-YK6eI/AAAAAAAAAS4/IuBmIIPPmlI/s1600-h/3.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 313px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SnFuz-YK6eI/AAAAAAAAAS4/IuBmIIPPmlI/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5364190470371731938" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFvKnlQUkI/AAAAAAAAATA/OJVWScHTO9E/s1600-h/4.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 284px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFvKnlQUkI/AAAAAAAAATA/OJVWScHTO9E/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5364190859389588034" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFvf4-EWJI/AAAAAAAAATI/LDHOIrUE2EU/s1600-h/5.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 228px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFvf4-EWJI/AAAAAAAAATI/LDHOIrUE2EU/s400/5.gif" alt="" id="BLOGGER_PHOTO_ID_5364191224834316434" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoHeader" style=""&gt;&lt;b&gt;&lt;span style=""&gt;Step 2: Now open the layout set (transaction SE71) in which background image needs to be displayed and do the required changes as mentioned below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFvvVyRsaI/AAAAAAAAATQ/DmgsZEj1sD8/s1600-h/6.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 273px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFvvVyRsaI/AAAAAAAAATQ/DmgsZEj1sD8/s400/6.gif" alt="" id="BLOGGER_PHOTO_ID_5364191490267525538" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoHeader" style=""&gt;&lt;b style=""&gt;&lt;span style="" lang="EN-GB"&gt;Note: &lt;/span&gt;&lt;/b&gt;&lt;span style="" lang="EN-GB"&gt;Here I am using an existing custom sapscript layout where all windows, pages and page windows are already created except the background image. And for this demo I am showing the changes required for inserting the background image in the 1st page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="" lang="EN-GB"&gt;Goto “Page window” of the 1&lt;sup&gt;st&lt;/sup&gt; page and create another page window of type ‘MAIN’. And its attributes must be same as the existing “MAIN” window.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFwO5-cdwI/AAAAAAAAATg/fisR4ojzWeo/s1600-h/8.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 395px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFwO5-cdwI/AAAAAAAAATg/fisR4ojzWeo/s400/8.gif" alt="" id="BLOGGER_PHOTO_ID_5364192032558184194" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SnFwwk3rVnI/AAAAAAAAATo/RksxWY05Um4/s1600-h/9.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 244px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SnFwwk3rVnI/AAAAAAAAATo/RksxWY05Um4/s400/9.gif" alt="" id="BLOGGER_PHOTO_ID_5364192611008206450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFxJDg3HQI/AAAAAAAAATw/37lbC534NQE/s1600-h/10.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 270px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFxJDg3HQI/AAAAAAAAATw/37lbC534NQE/s400/10.gif" alt="" id="BLOGGER_PHOTO_ID_5364193031550868738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="" lang="EN-GB"&gt;Now open the Text Elements of the main window in edit mode and in the 1&lt;sup&gt;st&lt;/sup&gt; line of the Sapscript editor insert the standard text (created above) that contains the background image.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFxjGoK6eI/AAAAAAAAAT4/mbVgWTp0iqU/s1600-h/11.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 251px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFxjGoK6eI/AAAAAAAAAT4/mbVgWTp0iqU/s400/11.gif" alt="" id="BLOGGER_PHOTO_ID_5364193479063431650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFx2ZGKnwI/AAAAAAAAAUA/pBAkjEE7qtY/s1600-h/12.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 243px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnFx2ZGKnwI/AAAAAAAAAUA/pBAkjEE7qtY/s400/12.gif" alt="" id="BLOGGER_PHOTO_ID_5364193810438594306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoHeader" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="" lang="EN-GB"&gt;&lt;/span&gt;&lt;span style="" lang="EN-GB"&gt;Now in the 2&lt;sup&gt;nd&lt;/sup&gt; line insert the special command &lt;/span&gt;&lt;b style=""&gt;&lt;span style=""&gt;NEW-WINDOW&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SnFyPPps0eI/AAAAAAAAAUI/zBpDZN3RVGQ/s1600-h/13.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 293px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SnFyPPps0eI/AAAAAAAAAUI/zBpDZN3RVGQ/s400/13.gif" alt="" id="BLOGGER_PHOTO_ID_5364194237400011234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Definition of NEW-WINDOW command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Each page can consist of up to 99 main windows. Each main window is assigned a consecutive identifying number (0..98), and the windows are filled in this order. This feature enables SAPscript&lt;i style=""&gt; &lt;/i&gt;to print labels and to output multi-column text. When one main window fills up, the next main window on that page is taken, if there is a next one. A page break is inserted after the last main window.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;You can use the NEW-WINDOW command to call the next main window explicitly, even if the current main window is not yet full. If you are in the last main window of the page, the command has the same effect as the NEW-PAGE command&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoHeader" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="" lang="EN-GB"&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="" lang="EN-GB"&gt;Now activate the form&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFzJ7w_4iI/AAAAAAAAAUQ/GvoEHTjxwR8/s1600-h/14.gif"&gt;&lt;img style="cursor: pointer; width: 397px; height: 400px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnFzJ7w_4iI/AAAAAAAAAUQ/GvoEHTjxwR8/s400/14.gif" alt="" id="BLOGGER_PHOTO_ID_5364195245674193442" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 11pt; font-family: Arial;"&gt;Step 3: Maintain required configuration for triggering the form &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SnF0Co66VqI/AAAAAAAAAUY/LOxr-SSgJGA/s1600-h/15.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 209px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SnF0Co66VqI/AAAAAAAAAUY/LOxr-SSgJGA/s400/15.gif" alt="" id="BLOGGER_PHOTO_ID_5364196219868042914" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SnF0WKNnqpI/AAAAAAAAAUg/0i-TnOaHg6E/s1600-h/16.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 217px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SnF0WKNnqpI/AAAAAAAAAUg/0i-TnOaHg6E/s400/16.gif" alt="" id="BLOGGER_PHOTO_ID_5364196555222395538" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Step 4: Now trigger the form and see the print preview&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnF5DyvDEFI/AAAAAAAAAUo/kZAuvm2KQ4Q/s1600-h/17.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 294px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnF5DyvDEFI/AAAAAAAAAUo/kZAuvm2KQ4Q/s400/17.gif" alt="" id="BLOGGER_PHOTO_ID_5364201737240645714" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SnF5eYxPL9I/AAAAAAAAAU4/EogZb23HBa4/s1600-h/18.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 262px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SnF5eYxPL9I/AAAAAAAAAU4/EogZb23HBa4/s400/18.gif" alt="" id="BLOGGER_PHOTO_ID_5364202194126974930" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SnF58ECyH5I/AAAAAAAAAVA/kW53On-iIfY/s1600-h/19.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 360px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SnF58ECyH5I/AAAAAAAAAVA/kW53On-iIfY/s400/19.gif" alt="" id="BLOGGER_PHOTO_ID_5364202703959498642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;h1&gt;&lt;a name="_Toc79499014"&gt;&lt;/a&gt;&lt;/h1&gt;&lt;h1&gt;&lt;br /&gt;&lt;/h1&gt;&lt;h1&gt;&lt;a name="_Toc79499014"&gt;&lt;u&gt;&lt;span style="font-size:18;"&gt;Result:&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;u&gt;&lt;span style="font-size:18;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/h1&gt;&lt;p&gt;&lt;span style=""&gt;Form is displayed with background image in print preview.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SnF6Lu1LdvI/AAAAAAAAAVI/bq2J57Hi0HQ/s1600-h/20.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 269px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SnF6Lu1LdvI/AAAAAAAAAVI/bq2J57Hi0HQ/s400/20.gif" alt="" id="BLOGGER_PHOTO_ID_5364202973143201522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4077729106100090862?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4077729106100090862/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4077729106100090862&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4077729106100090862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4077729106100090862'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/07/display-background-water-mark-image.html' title='Display background (water mark) image using SAPscript'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OG4xeUsph1w/SnFuQxEz4vI/AAAAAAAAASo/A7n-ki9chDE/s72-c/1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-7884423553130529636</id><published>2009-07-28T23:34:00.000-07:00</published><updated>2009-07-29T02:23:23.322-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALE / IDOC'/><title type='text'>ALE Audit</title><content type='html'>&lt;span style=";font-family:Arial;font-size:11;"  &gt;Joyjit Ghosh, Kolkata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;You can configure the receiving system to generate ALE Audit messages for all incoming ALE IDocs for certain message types, and to send these messages to the sending system, where the ALE Audit toolset can use them to maintain a complete audit trail.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/Sm_uL30DVbI/AAAAAAAAASI/cc7PveuIzF0/s1600-h/1.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 245px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/Sm_uL30DVbI/AAAAAAAAASI/cc7PveuIzF0/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5363767568949794226" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;To enable ALE Audit:&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Set up the &lt;b style=""&gt;ALEAUD&lt;/b&gt; message type in the Customer Distribution Model and Partner Profiles.&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Define a filter object in the distribution model to specify the message type that you want to audit.&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.25in;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;    &lt;p class="para" style="margin-right: 0.15in;"&gt;The data contained within the &lt;b style=""&gt;ALEAUD&lt;/b&gt; messages (IDOC type &lt;b style=""&gt;ALEAUD01&lt;/b&gt;) provides detailed status information on the IDocs in the receiving system, as well as the links between the IDocs and the resulting SAP application objects on the receiving system.&lt;br /&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/p&gt;&lt;h4&gt;&lt;a name="_Toc535313869"&gt;Audit IDoc Structure&lt;/a&gt;&lt;/h4&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm_ucwtaFSI/AAAAAAAAASQ/cHCqZVLQtUw/s1600-h/2.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 177px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm_ucwtaFSI/AAAAAAAAASQ/cHCqZVLQtUw/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5363767859100652834" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;These are the segments in an &lt;b style=""&gt;ALEAUD01&lt;/b&gt; IDoc, with the fields they contain:&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Segment &lt;b style=""&gt;E1ADHDR&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Message type&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Segment &lt;b style=""&gt;E1STATE&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Sender’s IDoc number&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Current status&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Message fields&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Segment &lt;b style=""&gt;E1PRTOB&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Receiver’s IDoc number&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 1in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;o&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Application object information&lt;/p&gt;  &lt;p class="para" style="margin-right: 0.15in;"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="para" style="margin-right: 0.15in;"&gt;&lt;span style=""&gt;Two programs enable cross-system reporting.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="first-para9" style="margin: 0in 0.45in 0.0001pt 58.8pt; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style=""&gt;RBDSTATE&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;. This program is scheduled to run periodically on the destination system. It reports the status of incoming IDocs to the sending system, using the ALEAUD message and ALEAUD01 IDoc. This status information is recorded separately from IDoc status information in the audit logs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="first-para10" style="margin: 0in 0.45in 0.0001pt 58.8pt; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;b&gt;&lt;span style=""&gt;RBDAUD01&lt;/span&gt;&lt;/b&gt;&lt;span style=""&gt;. This program is executed on the sending system. It analyzes the audit log and displays the output as a report.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;h4&gt;Program RBDSTATE&lt;/h4&gt;  &lt;p class="Transaction" style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b style=""&gt;Transaction: &lt;/b&gt;BDM8&lt;/p&gt;    &lt;p class="Transaction" style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b style=""&gt;Program:&lt;/b&gt; RBDSTATE&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Use the program RBDSTATE on the &lt;u&gt;receiving&lt;/u&gt; system to send the audit messages to the sending system, using ALE (I.e. asynchronously). You typically run this program as a scheduled batch job.&lt;span style=""&gt; &lt;/span&gt;The parameters of RBDSTATE are:&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;The sending system (of the original IDoc)&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;The message type&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;The date range the IDoc’s status was changed. Any IDoc having a status record in this date range will be confirmed.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The audit messages contain:&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;The current status of the inbound IDoc&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;The id of the resulting SAP application object (if the IDoc was&lt;br /&gt;successfully posted)&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The system will confirm up to 500 IDocs in one &lt;b style=""&gt;ALEAUD&lt;/b&gt; message. If&lt;br /&gt;there are more than 500 IDocs to be audited, then it will create multiple&lt;br /&gt;audit IDocs.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;NOTE: The RBDSTATE program looks at IDoc status records to determine which IDocs to audit. If any status record was added to an IDoc during the specified date range, the program will audit the IDoc.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="para" style="margin: 0.15in 0.15in 0.0001pt;"&gt;&lt;span style=""&gt;The RBDSTATE program returns the following statuses, from the receiving to the sending system.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 99.66%; margin-left: 11.55pt;" border="1" cellpadding="0" width="99%"&gt;  &lt;thead&gt;   &lt;tr style=""&gt;    &lt;td style="padding: 0.75pt; background: white none repeat scroll 0% 50%; width: 46.52%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" valign="top" width="46%"&gt;    &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in; background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b&gt;&lt;span style="color:maroon;"&gt;Status of IDoc in receiving system&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;/td&gt;    &lt;td style="padding: 0.75pt; background: white none repeat scroll 0% 50%; width: 52.46%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" valign="top" width="52%"&gt;    &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in; background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b&gt;&lt;span style="color:maroon;"&gt;Status reported to sending system via ALEAUD&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;/td&gt;   &lt;/tr&gt;  &lt;/thead&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="padding: 0in; width: 46.52%;" valign="top" width="46%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;53 (Application document posted.)&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0in; width: 52.46%;" valign="top" width="52%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;41 (Application document created   in receiving system.)&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="padding: 0in; width: 46.52%;" valign="top" width="46%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;51 (Error: Application document not   posted.)&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0in; width: 52.46%;" valign="top" width="52%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;Status 39 (IDoc is in the   receiving system.) This status is repeated each time RBDSTATE is run, as long   as the IDoc remains in status 51.&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td style="padding: 0in; width: 46.52%;" valign="top" width="46%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;68 (Error: No further   processing.)&lt;/p&gt;   &lt;/td&gt;   &lt;td style="padding: 0in; width: 52.46%;" valign="top" width="52%"&gt;   &lt;p class="table-para" style="margin: 4.8pt 22.8pt 0.0001pt 0.2in;"&gt;40 (Application document not   created in receiving system.)&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;span style=""&gt;&lt;br /&gt;  &lt;/span&gt;  &lt;h4&gt;Program RBDAUD01&lt;/h4&gt;  &lt;p class="Transaction" style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b style=""&gt;Transaction: &lt;/b&gt;BDM7&lt;/p&gt;    &lt;p class="Transaction" style="background: silver none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;b style=""&gt;Program:&lt;/b&gt; RBDAUD01&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm_uwM6LWII/AAAAAAAAASY/8C7k4zJopR0/s1600-h/3.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 222px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm_uwM6LWII/AAAAAAAAASY/8C7k4zJopR0/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5363768193087920258" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;Use the program RBDAUD01 on the &lt;u&gt;sending&lt;/u&gt; system to look at the ALE Audit IDoc statistics.&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;“IDocs total” is the total number of IDocs audited&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;“Queue Outbound” is the number of IDocs that have not yet been sent to the other system&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;“Queue Inbound” is the number of IDocs that are still being processed by the receiving system&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 12pt 0in 0.0001pt 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;§&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Wingdings;font-size:8;"  &gt;&lt;span style=""&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;ALE Audit records may be selected by message type, date range, etc. You can drill down into the report to see information on daily statistics, detailed information on IDocs, and cross-system links for successfully processed IDocs:&lt;/p&gt;  &lt;span style=""&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:306pt;" fillcolor="window"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png" title="" cropbottom="21323f" cropright="19034f"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm_u9A-UDmI/AAAAAAAAASg/dQrKdUZTOBc/s1600-h/4.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 222px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm_u9A-UDmI/AAAAAAAAASg/dQrKdUZTOBc/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5363768413222342242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-7884423553130529636?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/7884423553130529636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=7884423553130529636&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7884423553130529636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7884423553130529636'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/07/ale-audit.html' title='ALE Audit'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/Sm_uL30DVbI/AAAAAAAAASI/cc7PveuIzF0/s72-c/1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-3758023761373326658</id><published>2009-07-27T13:49:00.000-07:00</published><updated>2009-07-27T14:07:18.342-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Solution Manager Program'/><title type='text'>How to execute SOLMAN_DOCU_VERSION_DEL</title><content type='html'>&lt;span style=";font-family:Arial;font-size:11;"  &gt;Joyjit Ghosh, Kolkata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal" style=""&gt;Program &lt;span style="color:black;"&gt;SOLMAN_DOCU_VERSION_DEL&lt;/span&gt; is part of &lt;span style="color:black;"&gt;Solution Manager and purpose of it is to delete versions of stored documents. &lt;/span&gt;To run this program successfully we need to do following things:&lt;span style="color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;In tran. SOLAR02 for a project when we upload a document it is stored in folder SOLAR00 by default (see the screen shot below), we need to change it to our project folder, ex: for project SARA_TEST9 all documents should be in the folder SARA_TEST9.&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4UjwHXXpI/AAAAAAAAAQ4/kFrLLvrPLTM/s1600-h/1.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 195px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4UjwHXXpI/AAAAAAAAAQ4/kFrLLvrPLTM/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5363246810688609938" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;It can be done by clicking &lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:23.25pt;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4UsJE69vI/AAAAAAAAARA/8SUi6x-UC_I/s1600-h/2.gif"&gt;&lt;img style="cursor: pointer; width: 31px; height: 26px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4UsJE69vI/AAAAAAAAARA/8SUi6x-UC_I/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5363246954828199666" border="0" /&gt;&lt;/a&gt; button beside folder field.&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4Uwg4PgvI/AAAAAAAAARI/isxniuR_pIs/s1600-h/3.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 233px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4Uwg4PgvI/AAAAAAAAARI/isxniuR_pIs/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5363247029936947954" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm4U4oEy9zI/AAAAAAAAARQ/CVaBKV3VEZ4/s1600-h/4.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 119px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm4U4oEy9zI/AAAAAAAAARQ/CVaBKV3VEZ4/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5363247169307604786" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/Sm4Vd7RcobI/AAAAAAAAARY/EUxFlyaC10A/s1600-h/5.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 249px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/Sm4Vd7RcobI/AAAAAAAAARY/EUxFlyaC10A/s400/5.gif" alt="" id="BLOGGER_PHOTO_ID_5363247810116100530" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;Now click on change button and then SAVE the document so that SAP generates separate version for every change&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm4VoyPFZII/AAAAAAAAARg/HUL916UJEPA/s1600-h/6.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 151px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/Sm4VoyPFZII/AAAAAAAAARg/HUL916UJEPA/s400/6.gif" alt="" id="BLOGGER_PHOTO_ID_5363247996668830850" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4V-oZMSFI/AAAAAAAAARw/xHk-DY1YTRc/s1600-h/7.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 175px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4V-oZMSFI/AAAAAAAAARw/xHk-DY1YTRc/s400/7.gif" alt="" id="BLOGGER_PHOTO_ID_5363248371983992914" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;  &lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;Here we have changed a web link (TEST) with status NOT_STARTED (Z001).&lt;/p&gt;    &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;Now run the program with value shown in the screen shot:&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4WRjA7L8I/AAAAAAAAAR4/_1u8j3S45Sw/s1600-h/8.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 147px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4WRjA7L8I/AAAAAAAAAR4/_1u8j3S45Sw/s400/8.gif" alt="" id="BLOGGER_PHOTO_ID_5363248696957546434" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;  &lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;As result we will get the status log:&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4WbIVhJ6I/AAAAAAAAASA/phhRUfqwQBw/s1600-h/9.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 103px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/Sm4WbIVhJ6I/AAAAAAAAASA/phhRUfqwQBw/s400/9.gif" alt="" id="BLOGGER_PHOTO_ID_5363248861594855330" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-3758023761373326658?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/3758023761373326658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=3758023761373326658&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3758023761373326658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3758023761373326658'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/07/how-to-execute-solmandocuversiondel.html' title='How to execute SOLMAN_DOCU_VERSION_DEL'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/Sm4UjwHXXpI/AAAAAAAAAQ4/kFrLLvrPLTM/s72-c/1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-9081180173097139095</id><published>2009-05-21T01:37:00.000-07:00</published><updated>2009-05-21T01:54:55.031-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>How to add new fields in dynamic selection screen</title><content type='html'>&lt;span style=";font-family:Arial;font-size:11;"  &gt;Joyjit Ghosh, Kolkata.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Most of us observe that whenever a logical database is attached with a report, it automatically adds dynamic selection screen button on the report selection screen.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Ex: &lt;/span&gt;&lt;span style="font-size:11;"&gt;Transaction &lt;span style="font-weight: bold; font-style: italic;"&gt;FBL1N&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/ShUUFXjKnwI/AAAAAAAAAPY/H2xOiWAsWTQ/s1600-h/1.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 203px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/ShUUFXjKnwI/AAAAAAAAAPY/H2xOiWAsWTQ/s400/1.gif" alt="" id="BLOGGER_PHOTO_ID_5338195015771004674" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1026"  style="'position:absolute;color:red;" filled="f" strokeweight="1.5pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: absolute; z-index: 1; margin-left: 45px; margin-top: 84px; width: 27px; height: 28px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image002.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;If we click on this button, it will open up a separate selection screen that can be dynamically adjusted based on the fields you choose from the left hand side folders (&lt;b style=""&gt;&lt;i style=""&gt;Function groups&lt;/i&gt;&lt;/b&gt;).&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:431.25pt;height:104.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image004.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUUY6430nI/AAAAAAAAAPg/nzH8IBy49mY/s1600-h/2.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 97px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUUY6430nI/AAAAAAAAAPg/nzH8IBy49mY/s400/2.gif" alt="" id="BLOGGER_PHOTO_ID_5338195351674802802" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now our requirement is to add new field in the left hand side folder (as well as in the selection screen) that is not present currently.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;1&lt;sup&gt;st&lt;/sup&gt; we need to know the name of the logical database that is attached with the program. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:194.25pt;height:48.75pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image006.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUUfyraPeI/AAAAAAAAAPo/PCk18esVdbs/s1600-h/3.gif"&gt;&lt;img style="cursor: pointer; width: 259px; height: 65px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUUfyraPeI/AAAAAAAAAPo/PCk18esVdbs/s400/3.gif" alt="" id="BLOGGER_PHOTO_ID_5338195469729938914" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In case of &lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="font-size:11;"&gt;FBL1N&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt;, program name is &lt;b style=""&gt;&lt;i style=""&gt;RFITEMAP&lt;/i&gt;&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;Go to the program’s attribute screen to know the logical database name. In our case it is &lt;b style=""&gt;&lt;i style=""&gt;KDF&lt;/i&gt;&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUUn9cz00I/AAAAAAAAAPw/Iv4o7kxCGTA/s1600-h/4.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 155px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUUn9cz00I/AAAAAAAAAPw/Iv4o7kxCGTA/s400/4.gif" alt="" id="BLOGGER_PHOTO_ID_5338195610060444482" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now go to transaction &lt;b style=""&gt;&lt;i style=""&gt;SE36&lt;/i&gt;&lt;/b&gt; and choose the menu &lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="font-size:11;"&gt;Extras → Selection Views&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:292.5pt;height:194.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image010.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/ShUUuvP5t8I/AAAAAAAAAP4/S5yQcPCAeDY/s1600-h/5.gif"&gt;&lt;img style="cursor: pointer; width: 390px; height: 259px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/ShUUuvP5t8I/AAAAAAAAAP4/S5yQcPCAeDY/s400/5.gif" alt="" id="BLOGGER_PHOTO_ID_5338195726507292610" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;In the next screen, select &lt;b style=""&gt;&lt;i style=""&gt;Origin of view: SAP &lt;/i&gt;&lt;/b&gt;and &lt;b style=""&gt;&lt;i style=""&gt;Name of view: STANDARD&lt;/i&gt;&lt;/b&gt;, and click &lt;b style=""&gt;&lt;i&gt;Display&lt;/i&gt;&lt;/b&gt;&lt;i&gt; &lt;/i&gt;&lt;span style=""&gt;button.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:312pt;height:212.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image012.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUU2L56iPI/AAAAAAAAAQA/9wwC3aD1IG8/s1600-h/6.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 272px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUU2L56iPI/AAAAAAAAAQA/9wwC3aD1IG8/s400/6.gif" alt="" id="BLOGGER_PHOTO_ID_5338195854458783986" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:6in;height:408pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image014.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUU9BzpQOI/AAAAAAAAAQI/TeLFsvWmJkE/s1600-h/7.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 378px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUU9BzpQOI/AAAAAAAAAQI/TeLFsvWmJkE/s400/7.gif" alt="" id="BLOGGER_PHOTO_ID_5338195972007215330" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This is the view that SAP uses to generate the &lt;span style="font-size:11;"&gt;dynamic selection screen.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="Default"&gt;&lt;span style="font-size:11;"&gt;Here three &lt;b style=""&gt;&lt;i&gt;functional groups&lt;/i&gt;&lt;/b&gt;&lt;i&gt; &lt;/i&gt;of fields those are available in the dynamic selections.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="Default"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="Default" style="margin-bottom: 2.25pt;"&gt;&lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="font-size:11;"&gt;01 Vendor Master&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="Default" style="margin-bottom: 2.25pt;"&gt;&lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="font-size:11;"&gt;02 Company code &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="Default"&gt;&lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="font-size:11;"&gt;03 Document &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="Default"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;Each functional group contains fields from the tables that are listed on the right side (LFA1, ADDR1_VAL, etc). The field which is assigned to a functional group will be available in left hand side of the dynamic selection screen under the folder with name of the function group.&lt;/span&gt; &lt;span style="font-size:11;"&gt;Notice that for every field assigned to a functional group, there is a “Preselect” checkbox on the right. This checkbox indicates whether the relevant field should be directly available for selection.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;As we want to extend the SAP-delivered dynamic selections with new fields, so we must create our own selection view. This view will have &lt;b style=""&gt;&lt;i style=""&gt;CUS&lt;/i&gt;&lt;/b&gt; as the Origin, and must be named &lt;b style=""&gt;&lt;i style=""&gt;STANDARD&lt;/i&gt;&lt;/b&gt;. To create such a view, simply use the &lt;b style=""&gt;&lt;i style=""&gt;Copy &lt;/i&gt;&lt;/b&gt;button on the top of the screen, and copy the SAP delivered view to a &lt;b style=""&gt;&lt;i style=""&gt;CUS&lt;/i&gt;&lt;/b&gt; view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:431.25pt;height:260.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image016.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUVKhyIwFI/AAAAAAAAAQQ/kv5jYFEgjrM/s1600-h/8.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 241px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/ShUVKhyIwFI/AAAAAAAAAQQ/kv5jYFEgjrM/s400/8.gif" alt="" id="BLOGGER_PHOTO_ID_5338196203929124946" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Once the &lt;span style="font-size:11;"&gt;customer-defined view is created then go to change mode and add new fields in the functional group.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:rect id="_x0000_s1027"  style="'position:absolute;color:red;" filled="f" strokeweight="1.5pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: absolute; z-index: 2; margin-left: -9px; margin-top: 301px; width: 507px; height: 34px;"&gt;&lt;img src="file:///C:/DOCUME%7E1/ADMINI%7E1/LOCALS%7E1/Temp/msohtml1/01/clip_image018.gif" shapes="_x0000_s1027" height="34" width="507" /&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1033" type="#_x0000_t75" style="'width:6in;height:399.75pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image019.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUV2Y2kTcI/AAAAAAAAAQg/87zcJmZFc_Q/s1600-h/9.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 365px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/ShUV2Y2kTcI/AAAAAAAAAQg/87zcJmZFc_Q/s400/9.gif" alt="" id="BLOGGER_PHOTO_ID_5338196957446032834" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In this case we have added the field &lt;b style=""&gt;&lt;i style=""&gt;NAME1 &lt;/i&gt;&lt;/b&gt;in functional group &lt;b style=""&gt;&lt;i style=""&gt;Vendor master (01)&lt;/i&gt;&lt;/b&gt;. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now save the view , go back to the transaction and open the dynamic selection screen. You can see the new field &lt;b style=""&gt;&lt;i style=""&gt;NAME1&lt;/i&gt;&lt;/b&gt; is added in it.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:rect id="_x0000_s1028"  style="'position:absolute;color:red;" filled="f" strokeweight="1.5pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: absolute; z-index: 3; margin-left: 3px; margin-top: 33px; width: 507px; height: 19px;"&gt;&lt;img src="file:///C:/DOCUME%7E1/ADMINI%7E1/LOCALS%7E1/Temp/msohtml1/01/clip_image021.gif" shapes="_x0000_s1028" height="19" width="507" /&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1034" type="#_x0000_t75" style="'width:431.25pt;height:108pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image022.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/ShUWLKms6-I/AAAAAAAAAQo/JETDGSxC_nQ/s1600-h/10.gif"&gt;&lt;img style="cursor: pointer; width: 400px; height: 112px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/ShUWLKms6-I/AAAAAAAAAQo/JETDGSxC_nQ/s400/10.gif" alt="" id="BLOGGER_PHOTO_ID_5338197314398645218" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;i style=""&gt;How it works?&lt;o:p&gt;&lt;/o:p&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;  &lt;span style=""&gt;When a selection view with origin &lt;b style=""&gt;&lt;i style=""&gt;CUS&lt;/i&gt;&lt;/b&gt; (customer) and name &lt;b style=""&gt;&lt;i style=""&gt;STANDARD&lt;/i&gt;&lt;/b&gt; exists, and is assigned to a logical database, then this view takes precedence over the SAP-defined view. When such a view does not exist for a particular logical database, then the selection view &lt;b style=""&gt;&lt;i style=""&gt;SAP – STANDARD&lt;/i&gt;&lt;/b&gt; is used to&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-9081180173097139095?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/9081180173097139095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=9081180173097139095&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/9081180173097139095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/9081180173097139095'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/how-to-add-new-fields-in-dynamic.html' title='How to add new fields in dynamic selection screen'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/ShUUFXjKnwI/AAAAAAAAAPY/H2xOiWAsWTQ/s72-c/1.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6712439084474041479</id><published>2009-05-18T11:35:00.000-07:00</published><updated>2009-05-18T11:37:20.941-07:00</updated><title type='text'>Display table field as checkbox in transaction SM30</title><content type='html'>&lt;p&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;Scenario&lt;/b&gt;: To maintain a field as a checkbox in the  transaction SM30 (as shown below)&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1035" type="#_x0000_t75" style="'width:427.5pt;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb1.jpg" shapes="_x0000_i1035" height="320" width="570" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;Procedure&lt;/b&gt;:&lt;/p&gt; &lt;p class="MsoBodyTextIndent"&gt;Create a domain for the field that you want to  display as checkbox in SM30, with values “X” and “ “ (blank). Or you can  use an existing domain as well with the same values.&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:431.25pt;height:244.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb2.jpg" shapes="_x0000_i1025" height="326" width="575" /&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:430.5pt;height:248.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;/p&gt; &lt;p class="MsoBodyTextIndent"&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb3.jpg" shapes="_x0000_i1028" height="331" width="574" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; Now create a data element with this domain.&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:426.75pt;height:286.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb4.jpg" shapes="_x0000_i1029" height="382" width="569" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; Use this data element to define the field in the    actual table.&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:429.75pt;height:173.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb5.jpg" shapes="_x0000_i1030" height="231" width="573" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; Now create table maintenance generator for this    table.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:430.5pt;height:306.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image011.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb6.jpg" shapes="_x0000_i1031" height="409" width="574" /&gt;&lt;br /&gt; Now maintain table entries from transaction SM30. In this case field   ‘STATUS’ will be displayed as check box.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:431.25pt;height:188.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image013.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb7.jpg" shapes="_x0000_i1026" height="251" width="575" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:427.5pt;height:240pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb8.jpg" shapes="_x0000_i1032" height="320" width="570" /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt; SE16-Table content (Before data change):&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:6in;height:138pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image016.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb9.jpg" shapes="_x0000_i1027" height="184" width="576" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; Now set the check box for any record to test that    data (“X”) is updating in the underlying database table correctly.&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1033" type="#_x0000_t75" style="'width:6in;height:152.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image018.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb10.jpg" shapes="_x0000_i1033" height="203" width="576" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; SE16-Table content (After data change):&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1034" type="#_x0000_t75" style="'width:6in;height:152.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image020.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tips/ABAP/MaintainField/Checkb11.jpg" shapes="_x0000_i1034" height="203" width="576" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;As shown in the above screen shot, data (“X”) is  updated in the database successfully.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6712439084474041479?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6712439084474041479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6712439084474041479&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6712439084474041479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6712439084474041479'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/display-table-field-as-checkbox-in.html' title='Display table field as checkbox in transaction SM30'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-175574101140167052</id><published>2009-05-18T11:31:00.000-07:00</published><updated>2009-05-18T11:33:16.893-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Debugging'/><title type='text'>Debugging Active Jobs</title><content type='html'>&lt;p&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Go to the transaction &lt;b style=""&gt;SM37&lt;/b&gt;  and select the background job (with job status ‘&lt;b style=""&gt;Active&lt;/b&gt;’) that you want to debug. &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.1.jpg" shapes="_x0000_i1025" height="255" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:136.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.2.jpg" shapes="_x0000_i1026" height="182" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Now select ‘&lt;b style=""&gt;Capture:  active job&lt;/b&gt;’ from menu ‘&lt;b style=""&gt;Job&lt;/b&gt;’, &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:431.25pt;height:162pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.3.jpg" shapes="_x0000_i1027" height="216" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;This will open the selected active job (program) in the  debugger.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:269.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.4.jpg" shapes="_x0000_i1028" height="359" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Also you can do the same from transaction SM50.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:431.25pt;height:93.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.5.jpg" shapes="_x0000_i1029" height="125" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Select the work process where this job is running and then  choose the menu path Program/Mode&lt;span style="font-family:Wingdings;"&gt;à&lt;/span&gt;Program&lt;span style="font-family:Wingdings;"&gt;à&lt;/span&gt;Debugging.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:6in;height:136.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image011.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.6.jpg" shapes="_x0000_i1030" height="182" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;It will display a pop up window for confirmation, click on  the ‘Yes’ button.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:254.25pt;height:91.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image013.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.7.jpg" shapes="_x0000_i1031" height="122" width="339" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Then you can see the job (program) in the debugger.&lt;/p&gt; &lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:6in;height:311.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image015.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ABAP/ActiveJobs/Debug.8.jpg" shapes="_x0000_i1032" height="415" width="576" /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-175574101140167052?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/175574101140167052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=175574101140167052&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/175574101140167052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/175574101140167052'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/debugging-active-jobs.html' title='Debugging Active Jobs'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4571571207925549997</id><published>2009-05-18T11:26:00.000-07:00</published><updated>2009-05-18T11:28:03.316-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>ALV interface check</title><content type='html'>&lt;p&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;         &lt;p&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;In ALV we have an option  to check the interface parameters, which we are passing from our program. This  check will identify any problem(s) that may occur during calling the ALV FM or  ALV class method. It is advisable to perform this check before formal submission  of the code to avoid any inconsistency that can lead to problem(s), even program  termination in worst case. To enable this check&lt;/span&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;"&gt; &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;"&gt;interface parameter&lt;b&gt; I_INTERFACE_CHECK &lt;/b&gt;of  ALV FM(s)&lt;b&gt; &lt;/b&gt;must contain&lt;b&gt; ‘X’.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;         &lt;pre&gt;&lt;span style="font-size:85%;"&gt;Example: &lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;-------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  Z_ALV_INTERFACE_CHECK                               *&lt;br /&gt;*&amp;amp;                                                             *&lt;br /&gt;*&amp;amp;--------------------------------------------------------------&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;REPORT  z_alv_interface_check                   .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;***************************************************************&lt;br /&gt;* Type pool declaration for ALV&lt;br /&gt;***************************************************************&lt;br /&gt;TYPE-POOLS: slis.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;***************************************************************&lt;br /&gt;* Table&lt;br /&gt;***************************************************************&lt;br /&gt;TABLES: sbook.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;***************************************************************&lt;br /&gt;* Type declaration for SBOOK table&lt;br /&gt;***************************************************************&lt;br /&gt;TYPES: BEGIN OF ty_sbook,&lt;br /&gt;       carrid TYPE s_carr_id, " Airline Code&lt;br /&gt;       connid TYPE s_conn_id, " Flight Connection Number&lt;br /&gt;       fldate TYPE s_date,    " Flight date&lt;br /&gt;       bookid TYPE s_book_id, " Booking number&lt;br /&gt;       customid TYPE s_customer," Customer Number&lt;br /&gt;      END OF ty_sbook.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*****************************************************************&lt;br /&gt;* Table declaration for SBOOK table&lt;br /&gt;*****************************************************************&lt;br /&gt;DATA:  i_sbook TYPE STANDARD TABLE OF ty_sbook INITIAL SIZE 0,&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;****************************************************************&lt;br /&gt;* Table declaration for field catalog&lt;br /&gt;****************************************************************&lt;br /&gt;      i_fcata TYPE slis_t_fieldcat_alv.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;****************************************************************&lt;br /&gt;* Workarea declaration for field catalog table&lt;br /&gt;****************************************************************&lt;br /&gt;DATA:  w_fcata TYPE slis_fieldcat_alv.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;****************************************************************&lt;br /&gt;* Selection screen&lt;br /&gt;**************************************************************&lt;br /&gt;SELECT-OPTIONS: s_carrid FOR sbook-carrid.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;***************************************************************&lt;br /&gt;* Start-of-selection event&lt;br /&gt;****************************************************************&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Fetch data from sbook table&lt;br /&gt;PERFORM fetch_data.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Populate field catalog&lt;br /&gt;PERFORM populate_catalog.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Display data in ALV&lt;br /&gt;PERFORM display_alv.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;--------------------------------------------------------------&lt;br /&gt;*&amp;amp;      Form  fetch_data&lt;br /&gt;*&amp;amp;-------------------------------------------------------------&lt;br /&gt;FORM fetch_data .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  SELECT  carrid       " Airline Code&lt;br /&gt;         connid       " Flight Connection Number&lt;br /&gt;         fldate       " Flight date&lt;br /&gt;         bookid       " Booking number&lt;br /&gt;         customid " Customer Number&lt;br /&gt; FROM sbook&lt;br /&gt; INTO TABLE i_sbook&lt;br /&gt; WHERE carrid IN s_carrid.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    SORT i_sbook BY carrid.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    " fetch_data&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;-------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  populate_catalog&lt;br /&gt;*&amp;amp;--------------------------------------------------------------&lt;br /&gt;FORM populate_catalog .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  w_fcata-fieldname = 'CARRID'.&lt;br /&gt; w_fcata-tabname  = 'I_SBOOK'.&lt;br /&gt; w_fcata-seltext_m = 'Airline Code'(001).&lt;br /&gt; w_fcata-ddictxt = 'M'.&lt;br /&gt; APPEND w_fcata to i_fcata.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  w_fcata-fieldname = 'CONNID'.&lt;br /&gt; w_fcata-tabname  = 'I_SBOOK'.&lt;br /&gt; w_fcata-seltext_m = 'Flight Connection Number'(002).&lt;br /&gt; w_fcata-ddictxt = 'M'.&lt;br /&gt; APPEND w_fcata to i_fcata.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;color:#ff0000;"&gt;&lt;b&gt;* Wrong field name FIDATE&lt;/b&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  w_fcata-fieldname = 'FIDATE'.&lt;br /&gt; w_fcata-tabname  = 'I_SBOOK'.&lt;br /&gt; w_fcata-seltext_m = 'Flight date'(003).&lt;br /&gt; w_fcata-ddictxt = 'M'.&lt;br /&gt; APPEND w_fcata to i_fcata.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;color:#ff0000;"&gt;&lt;b&gt;* Wrong field name BOOKLD&lt;/b&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  w_fcata-fieldname = 'BOOKLD'.&lt;br /&gt; w_fcata-tabname  = 'I_SBOOK'.&lt;br /&gt; w_fcata-seltext_m = 'Booking number'(004).&lt;br /&gt; w_fcata-ddictxt = 'M'.&lt;br /&gt; APPEND w_fcata to i_fcata.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  w_fcata-fieldname = 'CUSTOMID'.&lt;br /&gt; w_fcata-tabname  = 'I_SBOOK'.&lt;br /&gt; w_fcata-seltext_m = 'Customer Number'(005).&lt;br /&gt; w_fcata-ddictxt = 'M'.&lt;br /&gt; APPEND w_fcata to i_fcata.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    " populate_catalog&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;----------------------------------------------------------&lt;br /&gt;*&amp;amp;      Form  display_alv&lt;br /&gt;*&amp;amp;-----------------------------------------------------------&lt;br /&gt;form display_alv .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;data: l_repid type sy-repid.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;l_repid = sy-repid.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* &lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Interface check parameter, we have to pass ‘X’ as value in this parameter&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;br /&gt;EXPORTING&lt;br /&gt;  &lt;span style="color:#ff0000;"&gt;&lt;b&gt;I_INTERFACE_CHECK              = 'X'&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;  I_CALLBACK_PROGRAM             = l_repid&lt;br /&gt;  IT_FIELDCAT                    = i_fcata&lt;br /&gt; TABLES&lt;br /&gt;   t_outtab                       = i_sbook&lt;br /&gt;EXCEPTIONS&lt;br /&gt;  PROGRAM_ERROR                  = 1&lt;br /&gt;  OTHERS                         = 2&lt;br /&gt;         .&lt;br /&gt;IF sy-subrc &lt;&gt; 0.&lt;br /&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;br /&gt;*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;endform.                    " display_alv&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Selection screen:&lt;o:p&gt; &lt;/o:p&gt; &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.5.jpg" shapes="_x0000_i1025" height="116" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Output: &lt;o:p&gt;    &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;Additional screen (before showing the final output) to show     the error or warning or success message(s) &lt;o:p&gt;    &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.6.jpg" shapes="_x0000_i1034" height="140" width="582" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Also various buttons are present on the application tool     bar to check contents of Fieldcatalog,  Layout, Sort, Filter, Events,     Variant, and Special Fieldgroup. &lt;o:p&gt;    &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Fieldcatalog:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.7.jpg" shapes="_x0000_i1026" height="150" width="575" /&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;b style=""&gt; &lt;o:p&gt;   &lt;/o:p&gt; &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Layout:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.8.jpg" shapes="_x0000_i1027" height="92" width="575" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Sort:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.9.jpg" shapes="_x0000_i1028" height="102" width="576" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Filter:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.10.jpg" shapes="_x0000_i1029" height="97" width="576" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Event:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.11.jpg" shapes="_x0000_i1030" height="91" width="576" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Variant:&lt;o:p&gt; &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.12.jpg" shapes="_x0000_i1031" height="112" width="575" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Field group:&lt;o:p&gt;    &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.13.jpg" shapes="_x0000_i1032" height="120" width="576" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;From the initial screen if we press back button then it     will display the final output. &lt;o:p&gt;    &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Final output:&lt;o:p&gt;    &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Interface/check.14.jpg" shapes="_x0000_i1033" height="228" width="576" /&gt; &lt;o:p&gt;  &lt;/o:p&gt;    &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Note: &lt;o:p&gt;    &lt;/o:p&gt;    &lt;/b&gt;&lt;/p&gt; &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Always      remember to switch off this check before formal code delivery otherwise      these extra screen(s) can confuse the end user.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;In      ECC 5.0, I have seen that this check does not work with FM      REUSE_ALV_GRID_DISPLAY, in that case we need to convert grid to list      temporarily to implement this check.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4571571207925549997?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4571571207925549997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4571571207925549997&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4571571207925549997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4571571207925549997'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/alv-interface-check.html' title='ALV interface check'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-8932456750090899870</id><published>2009-05-18T11:18:00.000-07:00</published><updated>2009-05-18T11:28:35.349-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Scheduling background jobs by triggering events</title><content type='html'>&lt;h2&gt;&lt;b&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/b&gt;&lt;/h2&gt;  &lt;p&gt; &lt;/p&gt;     &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step1&lt;/b&gt;: Create  event from transaction SM62.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:306.75pt;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven1.jpg" shapes="_x0000_i1025" height="207" width="409" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;Give event name and description and press save button&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:396pt;height:236.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven2.jpg" shapes="_x0000_i1027" height="315" width="528" /&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:108pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven3.jpg" shapes="_x0000_i1026" height="144" width="576" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step2&lt;/b&gt;: Create a    program that triggers this event by calling the FM ‘&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;BP_EVENT_RAISE’&lt;/span&gt;&lt;/b&gt;. &lt;o:p&gt; &lt;/o:p&gt;   &lt;/p&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  Z_TRIGGER_EVENT                                             *&lt;br /&gt;*&amp;amp;                                                                     *&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;                                                                     *&lt;br /&gt;*&amp;amp;                                                                     *&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;REPORT  Z_TRIGGER_EVENT                         .&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;CALL FUNCTION 'BP_EVENT_RAISE'&lt;br /&gt;EXPORTING&lt;br /&gt;  eventid                      = 'Z_TRIGGER_JOB'&lt;br /&gt;EXCEPTIONS&lt;br /&gt; BAD_EVENTID                  = 1&lt;br /&gt; EVENTID_DOES_NOT_EXIST       = 2&lt;br /&gt; EVENTID_MISSING              = 3&lt;br /&gt; RAISE_FAILED                 = 4&lt;br /&gt; OTHERS                       = 5&lt;br /&gt;        .&lt;br /&gt;IF sy-subrc &lt;&gt; 0.&lt;br /&gt;Write: 'Event failed to trigger'.&lt;br /&gt;else.&lt;br /&gt;Write: 'Event triggered'.&lt;br /&gt;ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step3&lt;/b&gt;: Configure    the background job from transaction SM36. &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/p&gt; &lt;p class="MsoNormal"&gt;In the initial screen give job name and job class and press    “&lt;b style=""&gt;Start condition”&lt;/b&gt; button.&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:432.75pt;height:358.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven4.jpg" shapes="_x0000_i1028" height="478" width="577" /&gt; &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/p&gt; &lt;p class="MsoNormal"&gt;In the popup screen press “&lt;b style=""&gt;After event”&lt;/b&gt; button and give the event name and then press save    button.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:428.25pt;height:363pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven5.jpg" shapes="_x0000_i1029" height="484" width="571" /&gt;&lt;/p&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now go back to the initial screen and press “&lt;b style=""&gt;Step”&lt;/b&gt;  button&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven6.jpg" shapes="_x0000_i1025" height="479" width="576" /&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; Provide program and variant name and after providing  all the values press save button.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:410.25pt;height:371.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven7.jpg" shapes="_x0000_i1026" height="495" width="547" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;In the initial screen press save button.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:432.75pt;height:460.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven8.jpg" shapes="_x0000_i1027" height="614" width="577" /&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step4&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;:  Now execute the program to trigger the event and as well check the background  job.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:6in;height:176.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven9.jpg" shapes="_x0000_i1029" height="235" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Run transaction SM37&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:160.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven10.jpg" shapes="_x0000_i1028" height="214" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Check the status of job defined above&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:6in;height:142.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image011.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven11.jpg" shapes="_x0000_i1030" height="190" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now check the spool to see the generated list&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:6in;height:126pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image013.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven12.jpg" shapes="_x0000_i1031" height="168" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:6in;height:216.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image015.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/BackgroundJob/OnEven13.jpg" shapes="_x0000_i1032" height="289" width="576" /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-8932456750090899870?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/8932456750090899870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=8932456750090899870&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8932456750090899870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8932456750090899870'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/scheduling-background-jobs-by.html' title='Scheduling background jobs by triggering events'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-1189017202538447796</id><published>2009-05-18T11:13:00.000-07:00</published><updated>2009-05-18T11:18:17.672-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enhancement Technique'/><title type='text'>Test User-exit without creating a project</title><content type='html'>&lt;p&gt;by Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;        &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;This tip will show us how to test user-exit from SMOD without  creating any project. &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Go to SMOD and check the enhancement. &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;For example, here we are checking the enhancement &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;color:black;"   &gt;SEUED001. Now press &lt;b style=""&gt;Test&lt;/b&gt; button.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;color:black;"   &gt; &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1044" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h1.jpg" shapes="_x0000_i1044" height="335" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now put the cursor on an exit FM and press select component&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:16.5pt;height:16.5pt'"&gt;  &lt;v:imagedata src="Test.h2.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h2.jpg" shapes="_x0000_i1025" height="22" width="22" /&gt; button.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1045" type="#_x0000_t75" style="'width:426.75pt;height:213pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image004.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h3.jpg" shapes="_x0000_i1045" height="284" width="569" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:258pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image006.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h4.jpg" shapes="_x0000_i1026" height="344" width="576" /&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now create the include program.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:6in;height:203.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image008.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h5.jpg" shapes="_x0000_i1027" height="271" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Insert a break point in it.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:138pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image010.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h6.jpg" shapes="_x0000_i1028" height="184" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now go back to the test screen and press activate &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:15.75pt;height:15pt'"&gt;  &lt;v:imagedata src="Test.h7.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h7.jpg" shapes="_x0000_i1029" height="20" width="21" /&gt;&lt;span style=""&gt; &lt;/span&gt;button.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:6in;height:189pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image013.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h8.jpg" shapes="_x0000_i1030" height="252" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;It will activate the enhancement without creating any    project.&lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:262.5pt;height:28.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image015.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h9.jpg" shapes="_x0000_i1031" height="38" width="350" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now press the execute button &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:15.75pt;height:17.25pt'"&gt;  &lt;v:imagedata src="Test.h10.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h10.jpg" shapes="_x0000_i1032" height="23" width="21" /&gt;&lt;span style=""&gt; &lt;/span&gt;and    enter the transaction for which this user exit may trigger. &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1033" type="#_x0000_t75" style="'width:431.25pt;height:213.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image018.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h11.jpg" shapes="_x0000_i1033" height="285" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1034" type="#_x0000_t75" style="'width:6in;height:236.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image020.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h12.jpg" shapes="_x0000_i1034" height="315" width="576" /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;As shown below user exit is triggered from SE38.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1035" type="#_x0000_t75" style="'width:6in;height:193.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image022.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h13.jpg" shapes="_x0000_i1035" height="258" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;After the testing you should de-activate the exit and delete    the include program created above. &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Go back to the test screen. And press the Undo activation &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1036" type="#_x0000_t75" style="'width:15.75pt;height:16.5pt'"&gt;  &lt;v:imagedata src="Test.h14.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h14.jpg" shapes="_x0000_i1036" height="22" width="21" /&gt;&lt;span style=""&gt; &lt;/span&gt;button.&lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;You will get the following message&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1037" type="#_x0000_t75" style="'width:305.25pt;height:21pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image025.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h15.jpg" shapes="_x0000_i1037" height="28" width="407" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now delete the include program created earlier. Press the    Delete Test Objects &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1038" type="#_x0000_t75" style="'width:17.25pt;height:17.25pt'"&gt;  &lt;v:imagedata src="Test.h16.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h16.jpg" shapes="_x0000_i1038" height="23" width="23" /&gt;&lt;span style=""&gt; &lt;/span&gt;button &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;In the next popup select the include program and press ok    button.&lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1039" type="#_x0000_t75" style="'width:357.75pt;height:234pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image028.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h17.jpg" shapes="_x0000_i1039" height="312" width="477" /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now press &lt;b style=""&gt;Yes&lt;/b&gt;  button&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1040" type="#_x0000_t75" style="'width:254.25pt;height:91.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image030.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h18.jpg" shapes="_x0000_i1040" height="122" width="339" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;It will display the following message&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1041" type="#_x0000_t75" style="'width:208.5pt;height:17.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image032.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h19.jpg" shapes="_x0000_i1041" height="23" width="278" /&gt;&lt;span style=""&gt; &lt;/span&gt; &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now to crosscheck whether the include program is really    deleted or not, select the exit and again press &lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1042" type="#_x0000_t75" style="'width:16.5pt;height:16.5pt'"&gt;  &lt;v:imagedata src="Test.h2.jpg" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h2.jpg" shapes="_x0000_i1042" height="22" width="22" /&gt;&lt;span style=""&gt; &lt;/span&gt;button. And in the next screen double click on the include    name and then press enter.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;It will display the pop up which confirms that include  program does not exist.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1043" type="#_x0000_t75" style="'width:274.5pt;height:119.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image034.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tips/ExitsBADIs/WithoutProject/Test.h20.jpg" shapes="_x0000_i1043" height="159" width="366" /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-1189017202538447796?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/1189017202538447796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=1189017202538447796&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1189017202538447796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1189017202538447796'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/test-user-exit-without-creating-project.html' title='Test User-exit without creating a project'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-5644338626409486986</id><published>2009-05-18T11:07:00.000-07:00</published><updated>2009-05-18T11:10:27.929-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Printing ALV along with Page numbers</title><content type='html'>&lt;p&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;        &lt;p&gt;&lt;b style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Expected Layout of the ALV report (when printing):&lt;/span&gt;&lt;/b&gt;   &lt;/p&gt;       &lt;p&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ALV/PageNumbers/Demo.h1.gif" border="0" height="407" width="690" /&gt;   &lt;/p&gt;       &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Step 1:&lt;span style=""&gt;  &lt;/span&gt;Display    each new document in a new page&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;span style="font-size: 10pt; font-family: Arial;"&gt;To achieve this below  routine is written to populate the &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;" lang="EN-GB"&gt;IT_SORT&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt; table parameter of ALV function module &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;" lang="EN-GB"&gt;REUSE_ALV_GRID_DISPLAY&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;. And ALV will automatically  insert page break whenever a new document is encountered.&lt;/span&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;CONSTANTS:    &lt;br /&gt;c_spos        TYPE SLIS_SPOS   VALUE '01',     " Column position&lt;br /&gt;c_up          TYPE SLIS_SOUP   VALUE 'X',      " Sorting order&lt;br /&gt;c_table       TYPE tabname     VALUE 'I_FINAL'," Name of o/p table&lt;br /&gt;c_group       TYPE SLIS_CTRLS  VALUE '*',      " Sorting group&lt;br /&gt;c_fld2        TYPE fieldname   VALUE 'IDCNGA04-IDCN037'." Field name(Document no)&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Prepare sort table&lt;br /&gt; PERFORM prepare_sort_table CHANGING i_sort[].&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;FORM prepare_sort_table CHANGING pi_sort TYPE slis_t_sortinfo_alv.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  CLEAR st_sort.&lt;br /&gt; st_sort-spos      = c_spos.     " Sort sequence&lt;br /&gt; st_sort-fieldname = c_fld2.     " Document no&lt;br /&gt; st_sort-tabname   = c_table.    " Table name&lt;br /&gt; st_sort-up        = c_up.       " Ascending&lt;br /&gt; st_sort-group     = c_group.    " Group&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Populate sort table&lt;br /&gt; APPEND st_sort TO pi_sort.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    "prepare_sort_table&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoHeader" style=""&gt;&lt;b&gt;&lt;span style="font-size: 10pt;"&gt;Step 2: Reset page number  to 1 for each new document&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;p class="MsoHeader" style=""&gt;&lt;span style="font-size: 10pt;"&gt;From  ALV function module we cannot control the page numbers as it will automatically  increment the page counter whenever a new page is printed. So to achieve this we  have written our custom code within the &lt;/span&gt;&lt;span style="font-size: 10pt; color: black;" lang="EN-GB"&gt;TOP_OF_PAGE  routine.&lt;/span&gt;&lt;span style="font-size: 10pt; color: black;" lang="EN-GB"&gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;b style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;" lang="EN-GB"&gt;Register TOP_OF_PAGE routine with the TOP_OF_PAGE event in IT_EVENTS    table parameter of the ALV function module.&lt;/span&gt;&lt;/b&gt;   &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Prepare event table&lt;br /&gt; PERFORM prepare_event_table.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;FORM prepare_event_table .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Populate top-of-page event&lt;br /&gt; st_event-name = slis_ev_top_of_page.&lt;br /&gt; st_event-form = slis_ev_top_of_page.&lt;br /&gt; APPEND st_event TO i_event.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  CLEAR st_event.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    " prepare_event_table&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoHeader" style="margin-left: 0.25in; text-indent: -0.25in;"&gt;&lt;b style=""&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; font-family: Times New Roman; color: black;" lang="EN-GB"&gt; &lt;/span&gt;&lt;span style="font-size: 10pt; color: black;" lang="EN-GB"&gt;Custom code to control the page number in    TOP_OF_PAGE routine&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; color: black;" lang="EN-GB"&gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoHeader" style=""&gt;&lt;span style="font-size: 10pt; color: black;" lang="EN-GB"&gt;Code block marked in bold are    used to control the page number. As in our case we are using ALV grid to display    the report so during report display page number is not visible. It is only    visible in print preview or at the time of printing.&lt;/span&gt;&lt;/p&gt;   &lt;pre&gt;&lt;span style="font-size:85%;"&gt;FORM top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Local variable declaration&lt;br /&gt; STATICS: l_comm  TYPE syucomm.  " Store user command&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Declaration of local variables&lt;br /&gt; DATA: l_line_size  TYPE sylinsz,           " Line size&lt;br /&gt;       l_line       TYPE slis_listheader,   " Hold list header&lt;br /&gt;       l_currdoc    TYPE idcn037,           " Current doc.&lt;br /&gt;       l_currtabix  TYPE sytabix.           " Current index&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Check for print or print preview&lt;br /&gt; IF ( sy-ucomm = c_prin OR&lt;br /&gt; sy-ucomm = c_rnt_prev OR&lt;br /&gt; sy-ucomm = c_rnt ).&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    IF l_comm &lt;&gt; sy-ucomm.&lt;br /&gt;     CLEAR : g_page_cnt.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    ENDIF. " l_comm &lt;&gt; sy-ucomm&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Store current table index&lt;br /&gt;   l_currtabix  = sy-tabix.&lt;br /&gt;   CLEAR st_final.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   If current index is 1 then start page numbering from 1&lt;br /&gt;   IF l_currtabix = 1.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Read 1st record and store the document no&lt;br /&gt;     READ TABLE i_final INDEX l_currtabix INTO st_final.&lt;br /&gt;     g_prevdoc = st_final-idcnga04-idcn037.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Start page numbering from 1&lt;br /&gt;     g_page_cnt =  1.&lt;br /&gt;     g_prevtabix = 1.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    ELSE.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Read the table line&lt;br /&gt;     READ TABLE i_final INDEX l_currtabix INTO st_final.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Store the current document&lt;br /&gt;     l_currdoc = st_final-idcnga04-idcn037.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     If the current doc. is same as previou doc.&lt;br /&gt;*     increament the page no, otherwise start it from 1&lt;br /&gt;     IF l_currdoc = g_prevdoc.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Increament the page no&lt;br /&gt;       g_page_cnt = g_page_cnt + 1.&lt;br /&gt;     ELSE.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Start page from 1&lt;br /&gt;       g_page_cnt =  1.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Store current doc. as previous doc.&lt;br /&gt;       g_prevdoc = l_currdoc.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      ENDIF. " l_currdoc = g_prevdoc&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    ENDIF. " l_currtabix = 1&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF. " sy-ucomm = c_prin OR&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  IF g_page_cnt = 1.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Store the user command&lt;br /&gt;   l_comm = sy-ucomm.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF. " g_page_cnt = 1&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Display page no&lt;br /&gt; IF g_page_cnt &gt; 0 .&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Store the report width&lt;br /&gt;   l_line_size = sy-linsz.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Calculate position&lt;br /&gt;   l_line_size = l_line_size - 10.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Display page no&lt;br /&gt;   WRITE AT l_line_size 'Page no:'(021).&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Calculate position&lt;br /&gt;   l_line_size = l_line_size + 5.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    WRITE AT l_line_size g_page_cnt.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF. " g_page_cnt &gt; 0&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  REFRESH st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Populate company name&lt;br /&gt; CLEAR l_line.&lt;br /&gt; l_line-typ  = c_typ.&lt;br /&gt; l_line-info = g_comp_name.&lt;br /&gt; APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Populate heading&lt;br /&gt; CLEAR l_line.&lt;br /&gt; l_line-typ  = c_typ.&lt;br /&gt; l_line-info = text-020.&lt;br /&gt; APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* At the time of printing or print preview display additional info&lt;br /&gt;* on 1st page&lt;br /&gt; IF g_page_cnt = 1 AND&lt;br /&gt;   ( sy-ucomm = c_prin OR&lt;br /&gt;     sy-ucomm = c_rnt_prev OR&lt;br /&gt;     sy-ucomm = c_rnt ).&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    CLEAR l_line.&lt;br /&gt;   l_line-typ  = 'A'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Populate Staff name&lt;br /&gt;   CONCATENATE text-017&lt;br /&gt;               st_final-idcnga04-idcn053&lt;br /&gt;               INTO l_line-info&lt;br /&gt;               SEPARATED BY ':'.&lt;br /&gt;   APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    CLEAR l_line.&lt;br /&gt;   l_line-typ  = 'A'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Populate Accountant&lt;br /&gt;   CONCATENATE text-018&lt;br /&gt;               '______________________'&lt;br /&gt;               INTO l_line-info&lt;br /&gt;               SEPARATED BY ':'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    CLEAR l_line.&lt;br /&gt;   l_line-typ  = 'A'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Populate Book keeper&lt;br /&gt;   CONCATENATE text-019&lt;br /&gt;               '______________________'&lt;br /&gt;               INTO l_line-info&lt;br /&gt;               SEPARATED BY ':'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    l_line-typ  = 'A'.&lt;br /&gt;   l_line-info = space.&lt;br /&gt;   APPEND l_line TO st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Display list header&lt;br /&gt; CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;br /&gt;   EXPORTING&lt;br /&gt;     i_logo             = space&lt;br /&gt;     it_list_commentary = st_list_top_of_page.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* No sy-subrc check is required&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    " top_of_page&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Step 3: Display report&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;span style="font-size: 10pt; font-family: Arial;" lang="EN-GB"&gt;Display the ALV report using 'REUSE_ALV_GRID_DISPLAY'  function module.&lt;/span&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;br /&gt;   EXPORTING&lt;br /&gt;     i_callback_program      = l_prog         " Call back progrm&lt;br /&gt;     it_fieldcat             = i_fieldcat_msg " Field catalog&lt;br /&gt;     is_layout               = st_layout      " Layout&lt;br /&gt;     it_sort                 = i_sort[]       " Sort table&lt;br /&gt;     i_save                  = c_save         " 'A'&lt;br /&gt;     is_variant              = l_variant      " ALV variant&lt;br /&gt;     it_events               = i_event        " ALV events&lt;br /&gt;     is_print                = st_print       " Print parameters&lt;br /&gt;   TABLES&lt;br /&gt;     t_outtab                = i_final        " Output table&lt;br /&gt;   EXCEPTIONS&lt;br /&gt;     program_error           = 1&lt;br /&gt;     OTHERS                  = 2.&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;&lt;b&gt;Result:&lt;/b&gt;&lt;/span&gt;&lt;u&gt;&lt;span style="font-size: 10pt;"&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/u&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 10pt; font-family: Arial;" lang="EN-GB"&gt;Report is displayed in ALV grid. Note that no page number is  displayed. Now press the print preview button&lt;/span&gt;&lt;/p&gt; &lt;pre&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ALV/PageNumbers/Demo.h2.gif" border="0" height="389" width="528" /&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Report is displayed in print preview with page numbers.&lt;/span&gt;&lt;/pre&gt;  &lt;img src="http://www.saptechnical.com/Tutorials/ALV/PageNumbers/Demo.h3.jpg" shapes="_x0000_i1025" height="296" width="576" /&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Limitations:&lt;span style="font-size: 10pt; font-family: Arial;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;For        positioning the page number in the report we have to calculate the position        based on the list width. As in this case we are using the formula &lt;o:p&gt;       &lt;/o:p&gt;       &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;b style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;Page number position = &lt;/span&gt;&lt;/b&gt;&lt;b style=""&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;" lang="EN-GB"&gt;sy-linsz – 10. &lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;" lang="EN-GB"&gt;But if you want you  can change it&lt;b style=""&gt;.&lt;/b&gt;&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: Arial;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt;      &lt;span style="font-size: 10pt; font-family: Arial;"&gt;&lt;span style="font-weight: bold;"&gt;2.&lt;/span&gt;  In        print preview only 1&lt;sup&gt;st&lt;/sup&gt; page number is visible for every document        i.e. if a document spreading multiple pages &lt;br /&gt;          only the 1&lt;sup&gt;st&lt;/sup&gt; page        number will be visible. You can see all the page numbers at the time of        actual printing.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-5644338626409486986?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/5644338626409486986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=5644338626409486986&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5644338626409486986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5644338626409486986'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/printing-alv-along-with-page-numbers.html' title='Printing ALV along with Page numbers'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-7059737661912370023</id><published>2009-05-18T11:05:00.000-07:00</published><updated>2009-05-18T11:06:42.514-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>ALV with EDIT and SAVE functionality</title><content type='html'>By Joyjit Ghosh.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;Code:&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;REPORT z_demo_alv_jg.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*******************************************************************&lt;br /&gt;* TYPE-POOLS                                                      *&lt;br /&gt;*******************************************************************&lt;br /&gt;TYPE-POOLS: slis. &lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*******************************************************************&lt;br /&gt;* INTERNAL TABLES/WORK AREAS/VARIABLES     *&lt;br /&gt;*******************************************************************&lt;br /&gt;DATA: i_fieldcat TYPE slis_t_fieldcat_alv,&lt;br /&gt;     i_index TYPE STANDARD TABLE OF i WITH HEADER LINE,&lt;br /&gt;     w_field TYPE slis_fieldcat_alv,&lt;br /&gt;     p_table LIKE dd02l-tabname,&lt;br /&gt;     dy_table TYPE REF TO data,&lt;br /&gt;     dy_tab TYPE REF TO data,&lt;br /&gt;     dy_line TYPE REF TO data.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*******************************************************************&lt;br /&gt;* FIELD-SYMBOLS                                                   *&lt;br /&gt;*******************************************************************&lt;br /&gt;FIELD-SYMBOLS: &lt;dyn_table&gt; TYPE STANDARD TABLE,&lt;br /&gt;              &lt;dyn_wa&gt; TYPE ANY,&lt;br /&gt;              &lt;dyn_field&gt; TYPE ANY,&lt;br /&gt;              &lt;dyn_tab_temp&gt; TYPE STANDARD TABLE.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*******************************************************************&lt;br /&gt;* SELECTION SCREEN                                                *&lt;br /&gt;*******************************************************************&lt;br /&gt;PARAMETERS: tabname(30) TYPE c,&lt;br /&gt;           lines(5)  TYPE n.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*******************************************************************&lt;br /&gt;* START-OF-SELECTION                                              *&lt;br /&gt;*******************************************************************&lt;br /&gt;START-OF-SELECTION.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Storing table name&lt;br /&gt; p_table = tabname.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Create internal table dynamically with the stucture of table name&lt;br /&gt;* entered in the selection screen&lt;br /&gt; CREATE DATA dy_table TYPE STANDARD TABLE OF (p_table).&lt;br /&gt; ASSIGN dy_table-&gt;* TO &lt;dyn_table&gt;.&lt;br /&gt; IF sy-subrc &lt;&gt; 0.&lt;br /&gt;   MESSAGE i000(z_zzz_ca_messages) WITH ' No table found'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    LEAVE TO LIST-PROCESSING.&lt;br /&gt; ENDIF.&lt;br /&gt;* Create workarea for the table&lt;br /&gt; CREATE DATA dy_line LIKE LINE OF &lt;dyn_table&gt;.&lt;br /&gt; ASSIGN dy_line-&gt;* TO &lt;dyn_wa&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Create another temp. table&lt;br /&gt; CREATE DATA dy_tab TYPE STANDARD TABLE OF (p_table).&lt;br /&gt; ASSIGN dy_tab-&gt;* TO &lt;dyn_tab_temp&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  SORT i_fieldcat BY col_pos.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Select data from table&lt;br /&gt; SELECT * FROM (p_table)&lt;br /&gt; INTO TABLE &lt;dyn_table&gt;&lt;br /&gt; UP TO lines ROWS.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  REFRESH &lt;dyn_tab_temp&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Display report&lt;br /&gt; CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;br /&gt;   EXPORTING&lt;br /&gt;     i_callback_program       = sy-repid&lt;br /&gt;     i_structure_name         = p_table&lt;br /&gt;     i_callback_user_command  = 'USER_COMMAND'&lt;br /&gt;     i_callback_pf_status_set = 'SET_PF_STATUS'&lt;br /&gt;   TABLES&lt;br /&gt;     t_outtab                 = &lt;dyn_table&gt;&lt;br /&gt;   EXCEPTIONS&lt;br /&gt;     program_error            = 1&lt;br /&gt;     OTHERS                   = 2.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;-----------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  SET_PF_STATUS&lt;br /&gt;*&amp;amp;-----------------------------------------------------------------*&lt;br /&gt;*       Setting custom PF-Status&lt;br /&gt;*------------------------------------------------------------------*&lt;br /&gt;*      --&gt;RT_EXTAB   Excluding table&lt;br /&gt;*------------------------------------------------------------------*&lt;br /&gt;FORM set_pf_status USING rt_extab TYPE slis_t_extab.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  SET PF-STATUS 'Z_STANDARD'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    "SET_PF_STATUS&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;----------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  user_command&lt;br /&gt;*&amp;amp;-----------------------------------------------------------------*&lt;br /&gt;*       Handling custom function codes&lt;br /&gt;*------------------------------------------------------------------*&lt;br /&gt;*      --&gt;R_UCOMM      Function code value&lt;br /&gt;*      --&gt;RS_SELFIELD  Info. of cursor position in ALV&lt;br /&gt;*------------------------------------------------------------------*&lt;br /&gt;FORM user_command  USING    r_ucomm LIKE sy-ucomm&lt;br /&gt;              rs_selfield TYPE slis_selfield.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Local data declaration&lt;br /&gt; DATA: li_tab TYPE REF TO data,&lt;br /&gt;       l_line TYPE REF TO data.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Local field-symbols&lt;br /&gt; FIELD-SYMBOLS:&lt;l_tab&gt; TYPE table,&lt;br /&gt;               &lt;l_wa&gt;  TYPE ANY.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Create table&lt;br /&gt; CREATE DATA li_tab TYPE STANDARD TABLE OF (p_table).&lt;br /&gt; ASSIGN li_tab-&gt;* TO &lt;l_tab&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Create workarea&lt;br /&gt; CREATE DATA l_line LIKE LINE OF &lt;l_tab&gt;.&lt;br /&gt; ASSIGN l_line-&gt;* TO &lt;l_wa&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  CASE r_ucomm.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   When a record is selected&lt;br /&gt;   WHEN '&amp;amp;IC1'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Read the selected record&lt;br /&gt;     READ TABLE &lt;dyn_table&gt; ASSIGNING &lt;dyn_wa&gt; INDEX&lt;br /&gt;     rs_selfield-tabindex.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Store the record in an internal table&lt;br /&gt;       APPEND &lt;dyn_wa&gt; TO &lt;l_tab&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Fetch the field catalog info&lt;br /&gt;       CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;br /&gt;         EXPORTING&lt;br /&gt;           i_program_name         = 'Z_DEMO_PDF_JG'&lt;br /&gt;           i_structure_name       = p_table&lt;br /&gt;         CHANGING&lt;br /&gt;           ct_fieldcat            = i_fieldcat&lt;br /&gt;         EXCEPTIONS&lt;br /&gt;           inconsistent_interface = 1&lt;br /&gt;           program_error          = 2&lt;br /&gt;           OTHERS                 = 3.&lt;br /&gt;       IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*         Make all the fields input enabled except key fields&lt;br /&gt;         w_field-input = 'X'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;          MODIFY i_fieldcat FROM w_field TRANSPORTING input&lt;br /&gt;         WHERE key IS INITIAL.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;        ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Display the record for editing purpose&lt;br /&gt;       CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'&lt;br /&gt;         EXPORTING&lt;br /&gt;           i_callback_program    = sy-repid&lt;br /&gt;           i_structure_name      = p_table&lt;br /&gt;           it_fieldcat           = i_fieldcat&lt;br /&gt;           i_screen_start_column = 10&lt;br /&gt;           i_screen_start_line   = 15&lt;br /&gt;           i_screen_end_column   = 200&lt;br /&gt;           i_screen_end_line     = 20&lt;br /&gt;         TABLES&lt;br /&gt;           t_outtab              = &lt;l_tab&gt;&lt;br /&gt;         EXCEPTIONS&lt;br /&gt;           program_error         = 1&lt;br /&gt;           OTHERS                = 2.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;        IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*         Read the modified data&lt;br /&gt;         READ TABLE &lt;l_tab&gt; INDEX 1 INTO &lt;l_wa&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*         If the record is changed then track its index no.&lt;br /&gt;*         and populate it in an internal table for future&lt;br /&gt;*         action&lt;br /&gt;         IF sy-subrc = 0 AND &lt;dyn_wa&gt; &lt;&gt; &lt;l_wa&gt;.&lt;br /&gt;           &lt;dyn_wa&gt; = &lt;l_wa&gt;.&lt;br /&gt;           i_index = rs_selfield-tabindex.&lt;br /&gt;           APPEND i_index.&lt;br /&gt;         ENDIF.&lt;br /&gt;       ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   When save button is pressed&lt;br /&gt;   WHEN 'SAVE'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Sort the index table&lt;br /&gt;     SORT i_index.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Delete all duplicate records&lt;br /&gt;     DELETE ADJACENT DUPLICATES FROM i_index.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      LOOP AT i_index.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Find out the changes in the internal table&lt;br /&gt;*       and populate these changes in another internal table&lt;br /&gt;       READ TABLE &lt;dyn_table&gt; ASSIGNING &lt;dyn_wa&gt; INDEX i_index.&lt;br /&gt;       IF sy-subrc = 0.&lt;br /&gt;         APPEND &lt;dyn_wa&gt; TO &lt;dyn_tab_temp&gt;.&lt;br /&gt;       ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      ENDLOOP.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Lock the table&lt;br /&gt;     CALL FUNCTION 'ENQUEUE_E_TABLE'&lt;br /&gt;       EXPORTING&lt;br /&gt;         mode_rstable   = 'E'&lt;br /&gt;         tabname        = p_table&lt;br /&gt;       EXCEPTIONS&lt;br /&gt;         foreign_lock   = 1&lt;br /&gt;         system_failure = 2&lt;br /&gt;         OTHERS         = 3.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Modify the database table with these changes&lt;br /&gt;       MODIFY (p_table) FROM TABLE &lt;dyn_tab_temp&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;        REFRESH &lt;dyn_tab_temp&gt;.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*       Unlock the table&lt;br /&gt;       CALL FUNCTION 'DEQUEUE_E_TABLE'&lt;br /&gt;         EXPORTING&lt;br /&gt;           mode_rstable = 'E'&lt;br /&gt;           tabname      = p_table.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;      ENDIF.&lt;br /&gt; ENDCASE.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  rs_selfield-refresh = 'X'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDFORM.                    "user_command&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt;Selection screen: &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h3.jpg" shapes="_x0000_i1025" height="408" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt;Output:  &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h4.jpg" shapes="_x0000_i1026" height="254" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h5.jpg" shapes="_x0000_i1027" height="287" width="578" /&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h6.jpg" shapes="_x0000_i1028" height="188" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 14pt;"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h7.jpg" shapes="_x0000_i1029" height="350" width="578" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style="font-size: 14pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ALV/Edit/demo.h8.jpg" shapes="_x0000_i1030" height="217" width="577" /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-7059737661912370023?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/7059737661912370023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=7059737661912370023&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7059737661912370023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7059737661912370023'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/alv-with-edit-and-save-functionality.html' title='ALV with EDIT and SAVE functionality'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-8022397869646737335</id><published>2009-05-18T10:59:00.000-07:00</published><updated>2009-05-18T11:03:18.319-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sapscript'/><title type='text'>Passing table data to the layout without changing the driver program</title><content type='html'>&lt;p&gt;By Joyjit Ghosh&lt;br /&gt;&lt;/p&gt;       &lt;p class="MsoBodyText"&gt;I have seen a typical requirement from client that SAP  script layout need to be changed (additional data need to be displayed) without  modifying the driver program (mainly standard SAP program). This tip will show  us how to pass table data (multiple records at a time) to layout without  changing the driver program.&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step1. Create a standard text from SO10. &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Create a blank standard text. This will store the table data&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:431.25pt;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script1.jpg" shapes="_x0000_i1025" height="350" width="575" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:205.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script2.jpg" shapes="_x0000_i1026" height="274" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step2. Create a subroutine pool and a routine in it that can    be called from SAP script.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;From transaction SE38 create a subroutine pool.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:6in;height:276pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script3.jpg" shapes="_x0000_i1027" height="368" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now create subroutine with proper interface to fetch the data    from the table.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:431.25pt;height:252pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script4.jpg" shapes="_x0000_i1028" height="336" width="575" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step3. Within this routine write the logic to fetch the table    data and populate the standard text.&lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;***************************************************************&lt;br /&gt;* Fetch table data and upload the data in proper format to the&lt;br /&gt;* standard text&lt;br /&gt;***************************************************************&lt;br /&gt;DATA: i_zemployee TYPE STANDARD TABLE OF zemployee INITIAL SIZE 0,&lt;br /&gt;      w_zemployee TYPE zemployee,&lt;br /&gt;      i_text TYPE STANDARD TABLE OF tline INITIAL SIZE 0,&lt;br /&gt;      w_header LIKE  thead,&lt;br /&gt;      w_text TYPE tline.&lt;br /&gt;CONSTANTS: c_par  TYPE char2 VALUE ',,'. " Sign for tabs&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Fetch data for employee&lt;br /&gt;SELECT * FROM zemployee&lt;br /&gt;INTO TABLE i_zemployee.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  IF sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Create text table&lt;br /&gt;  LOOP AT i_zemployee INTO w_zemployee.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Store default paragraph format&lt;br /&gt;    w_text-tdformat = '*'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Add all the required fields separated by tab&lt;br /&gt;    CONCATENATE w_zemployee-empno  w_zemployee-empname&lt;br /&gt;    INTO w_text-tdline&lt;br /&gt;    SEPARATED BY c_par.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*     Store table data&lt;br /&gt;    APPEND w_text TO i_text.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    ENDLOOP.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    check sy-subrc = 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Populate header info&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Text object&lt;br /&gt;  w_header-tdobject = 'TEXT'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Standard text name&lt;br /&gt;  w_header-tdname = 'Z_TABLE_DATA'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Text id&lt;br /&gt;  w_header-tdid = 'ST'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*   Language&lt;br /&gt;  w_header-tdspras = 'E'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*  Populate the standard text with table data&lt;br /&gt;  CALL FUNCTION 'SAVE_TEXT'&lt;br /&gt;    EXPORTING&lt;br /&gt;      header                = w_header&lt;br /&gt;      insert                = 'X'&lt;br /&gt;      savemode_direct       = 'X'&lt;br /&gt;    TABLES&lt;br /&gt;      lines                 = i_text&lt;br /&gt;   EXCEPTIONS&lt;br /&gt;     id                    = 1&lt;br /&gt;     language              = 2&lt;br /&gt;     name                  = 3&lt;br /&gt;     object                = 4&lt;br /&gt;     OTHERS                = 5&lt;br /&gt;            .&lt;br /&gt;  IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  ENDIF.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt; &lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step4. Call the routine and standard text from the SAP script    layout.&lt;o:p&gt; &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Note:  For the sake of simplicity this tip is shown in a custom layout that is called  from a custom report.&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;/span&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;/*   Call the routine&lt;br /&gt;/:   PERFORM FETCH_TABLE_DATA  IN PROGRAM Z_SUBROUTINE_POOL&lt;br /&gt;/:   USING &amp;amp;INVAR1&amp;amp;&lt;br /&gt;/:   CHANGING &amp;amp;OUTVAR1&amp;amp;&lt;br /&gt;/:   ENDPERFORM&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;/*   Now call the standard text&lt;br /&gt;/:   INCLUDE Z_TABLE_DATA OBJECT TEXT ID ST LANGUAGE EN&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt; &lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:431.25pt;height:221.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script5.jpg" shapes="_x0000_i1029" height="295" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step5. Test the SAP script form &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Activate the SAP script debugger &lt;o:p&gt;   &lt;/o:p&gt;   &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:366pt;height:234pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image011.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script6.jpg" shapes="_x0000_i1030" height="312" width="488" /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="MsoBodyText"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Run the custom report to  test the SAPscript layout.&lt;/span&gt;&lt;/p&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;---------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  Z_TEST_SAPCSRIPT                                            *&lt;br /&gt;*&amp;amp;---------------------------------------------------------------*&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;REPORT  Z_TEST_SAPCSRIPT                        .&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;start-of-selection.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;CALL FUNCTION 'OPEN_FORM'&lt;br /&gt;EXPORTING&lt;br /&gt; DEVICE                            = 'PRINTER'&lt;br /&gt; DIALOG                            = 'X'&lt;br /&gt; FORM                              = 'Z_DEMO_LAYOUT'&lt;br /&gt; LANGUAGE                          = SY-LANGU&lt;br /&gt;EXCEPTIONS&lt;br /&gt; CANCELED                          = 1&lt;br /&gt; DEVICE                            = 2&lt;br /&gt; FORM                              = 3&lt;br /&gt; OPTIONS                           = 4&lt;br /&gt; UNCLOSED                          = 5&lt;br /&gt; MAIL_OPTIONS                      = 6&lt;br /&gt; ARCHIVE_ERROR                     = 7&lt;br /&gt; INVALID_FAX_NUMBER                = 8&lt;br /&gt; MORE_PARAMS_NEEDED_IN_BATCH       = 9&lt;br /&gt; SPOOL_ERROR                       = 10&lt;br /&gt; CODEPAGE                          = 11&lt;br /&gt; OTHERS                            = 12&lt;br /&gt;        .&lt;br /&gt;IF sy-subrc = 0.&lt;br /&gt;CALL FUNCTION 'WRITE_FORM'&lt;br /&gt;EXPORTING&lt;br /&gt; ELEMENT                        = '001'&lt;br /&gt; FUNCTION                       = 'SET'&lt;br /&gt; TYPE                           = 'BODY'&lt;br /&gt; WINDOW                         = 'MAIN'&lt;br /&gt;* IMPORTING&lt;br /&gt;*   PENDING_LINES                  =&lt;br /&gt;EXCEPTIONS&lt;br /&gt; ELEMENT                        = 1&lt;br /&gt; FUNCTION                       = 2&lt;br /&gt; TYPE                           = 3&lt;br /&gt; UNOPENED                       = 4&lt;br /&gt; UNSTARTED                      = 5&lt;br /&gt; WINDOW                         = 6&lt;br /&gt; BAD_PAGEFORMAT_FOR_PRINT       = 7&lt;br /&gt; SPOOL_ERROR                    = 8&lt;br /&gt; CODEPAGE                       = 9&lt;br /&gt; OTHERS                         = 10&lt;br /&gt;        .&lt;br /&gt;IF sy-subrc &lt;&gt; 0.&lt;br /&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;br /&gt;*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt; CALL FUNCTION 'CLOSE_FORM'&lt;br /&gt;EXCEPTIONS&lt;br /&gt;  UNOPENED                       = 1&lt;br /&gt;  BAD_PAGEFORMAT_FOR_PRINT       = 2&lt;br /&gt;  SEND_ERROR                     = 3&lt;br /&gt;  SPOOL_ERROR                    = 4&lt;br /&gt;  CODEPAGE                       = 5&lt;br /&gt;  OTHERS                         = 6&lt;br /&gt;         .&lt;br /&gt;IF sy-subrc &lt;&gt; 0.&lt;br /&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;br /&gt;*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;br /&gt;ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;ENDIF.&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;After execution of this report SAPscript debugger is  triggered.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script7.jpg" shapes="_x0000_i1025" height="506" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;As shown below layout is calling the code written in the  routine&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:433.5pt;height:4in'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script8.jpg" shapes="_x0000_i1026" height="384" width="578" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Standard text is populated with the data fetched from table&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:6in;height:261.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script9.jpg" shapes="_x0000_i1027" height="349" width="576" /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Output of SAP script: &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:196.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script10.jpg" shapes="_x0000_i1028" height="262" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Table entries:&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:315.75pt;height:220.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script11.jpg" shapes="_x0000_i1029" height="294" width="421" /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-8022397869646737335?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/8022397869646737335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=8022397869646737335&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8022397869646737335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8022397869646737335'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/passing-table-data-to-layout-without.html' title='Passing table data to the layout without changing the driver program'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-1155072418600682969</id><published>2009-05-18T10:52:00.000-07:00</published><updated>2009-05-18T10:58:36.822-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Create Dynamic Patterns</title><content type='html'>&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;By Joyjit Ghosh&lt;br /&gt;&lt;br /&gt;Step1&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;. Create a pattern with only one line that contains &lt;b&gt;&lt;span style="color:black;"&gt;*$&amp;amp;$EXIT.&lt;/span&gt;&lt;/b&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:200.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.2.jpg" shapes="_x0000_i1026" height="267" width="576" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:431.25pt;height:211.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.3.jpg" shapes="_x0000_i1027" height="282" width="575" /&gt;&lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Put this above expression and press save button.&lt;o:p&gt;  &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:431.25pt;height:141.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.4.jpg" shapes="_x0000_i1028" height="189" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step2.&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;  Now from CMOD create a project and include enhancement SEUED001 in it.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:6in;height:240pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image009.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.5.jpg" shapes="_x0000_i1029" height="320" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1030" type="#_x0000_t75" style="'width:6in;height:110.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image011.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.6.jpg" shapes="_x0000_i1030" height="147" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1031" type="#_x0000_t75" style="'width:431.25pt;height:194.25pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image013.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.7.jpg" shapes="_x0000_i1031" height="259" width="575" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now select the user exit EXIT_SAPLLOCAL_EDT1_001 and create   the include program in it.&lt;o:p&gt;  &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1032" type="#_x0000_t75" style="'width:6in;height:252pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image015.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.8.jpg" shapes="_x0000_i1032" height="336" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Now insert the following code block in the include program   and activate it.&lt;o:p&gt;  &lt;/o:p&gt;  &lt;/span&gt;&lt;/p&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;  Include           ZXSEUU26                                         *&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;DATA: w_buffer TYPE string.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;CASE keyword.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  WHEN 'DYNAMIC_PATTERN'.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;    w_buffer =&lt;br /&gt;'*********************************************************************'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Program           :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Module            :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Sub-Module        :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Functional Contact:'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Funct. Spec. Ref. :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Developer(Company):'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Create Date       :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Program Type      :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Project Phase     :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer = '*&amp;amp; Description       :'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;br /&gt;w_buffer =&lt;br /&gt;'*********************************************************************'.&lt;br /&gt;APPEND w_buffer TO buffer.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;  WHEN OTHERS.&lt;/span&gt;&lt;/pre&gt; &lt;pre&gt;&lt;span style="font-size:85%;"&gt;* Do nothing&lt;br /&gt;ENDCASE.&lt;/span&gt;&lt;/pre&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Lastly activate the project&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1033" type="#_x0000_t75" style="'width:317.25pt;height:501.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image017.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page1.9.jpg" shapes="_x0000_i1033" height="669" width="423" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Step3.&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;  Insert this newly created pattern in a program and test whether it is displaying  the dynamic pattern or not.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page2.10.jpg" shapes="_x0000_i1025" height="424" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;SAP code to call the user-exit.&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:6in;height:324pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image003.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page2.11.jpg" shapes="_x0000_i1026" height="432" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;User-exit call &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:6in;height:286.5pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image005.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page2.12.jpg" shapes="_x0000_i1027" height="382" width="576" /&gt; &lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;Dynamic pattern&lt;o:p&gt; &lt;/o:p&gt; &lt;/span&gt;&lt;/p&gt; &lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:234.75pt'"&gt;  &lt;v:imagedata src="file:///C:/DOCUME~1/PARVAT~1/LOCALS~1/Temp/msoclip1/01/clip_image007.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt; &lt;img src="http://www.saptechnical.com/Tutorials/ABAP/DynamicPattern/page2.13.jpg" shapes="_x0000_i1028" height="313" width="576" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-1155072418600682969?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/1155072418600682969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=1155072418600682969&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1155072418600682969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1155072418600682969'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/05/create-dynamic-patterns.html' title='Create Dynamic Patterns'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-5688110176671527426</id><published>2009-02-11T06:37:00.000-08:00</published><updated>2009-05-20T13:31:17.025-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Find transaction for table maintenance generator</title><content type='html'>&lt;span style="font-size:11;"&gt;By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;span style="font-size:11;"&gt;&lt;br /&gt;Kolkata&lt;/span&gt;&lt;/st1:city&gt;&lt;span style="font-size:11;"&gt;, &lt;/span&gt;&lt;st1:country-region&gt;&lt;span style="font-size:11;"&gt;India&lt;/span&gt;&lt;/st1:country-region&gt;&lt;/st1:place&gt;&lt;span style="font-size:11;"&gt;.&lt;/span&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;Sometime we only know that a table has a table maintenance generator but does not have any idea whether any transaction is attached with it or not. To find that go to table &lt;b style=""&gt;TSTCP &lt;/b&gt;and in the selection screen against PARAM field give the following string:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="font-size:11;"&gt;*SM30 VIEWNAME=@Table in question@*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;Here replace &lt;b style=""&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;b style=""&gt;@Table in question@&lt;/b&gt; by actual table name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;For example if we are searching transaction for table &lt;b style=""&gt;T001CM&lt;/b&gt; then resultant string would be:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;*SM30 VIEWNAME=T001CM*&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjC-P4YyI/AAAAAAAAAPA/R0JfXnfG3kg/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 209px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjC-P4YyI/AAAAAAAAAPA/R0JfXnfG3kg/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5301549351577346850" border="0" /&gt;&lt;/a&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjOmZ92NI/AAAAAAAAAPQ/7bNvcDk_AV8/s1600-h/2.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;Now press execute button, if any transaction is available then it will show the transaction name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;In our case it is “OBZK”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjOmZ92NI/AAAAAAAAAPQ/7bNvcDk_AV8/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 166px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjOmZ92NI/AAAAAAAAAPQ/7bNvcDk_AV8/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5301549551335626962" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;Note: if you donot find the transaction by using above string then use the table name in lower case (&lt;span style="font-size:11;"&gt;t001cm)&lt;/span&gt;in the string and try to search again.&lt;/p&gt;&lt;p class="MsoNormal"&gt;Ex: &lt;span style="font-size:11;"&gt;*SM30 VIEWNAME=t001cm*&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-5688110176671527426?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/5688110176671527426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=5688110176671527426&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5688110176671527426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5688110176671527426'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/02/find-transaction-for-table-maintenance.html' title='Find transaction for table maintenance generator'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/SZLjC-P4YyI/AAAAAAAAAPA/R0JfXnfG3kg/s72-c/1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-7785088441284836428</id><published>2009-01-26T07:40:00.001-08:00</published><updated>2009-01-26T07:53:04.455-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Debugger'/><title type='text'>Store internal table content in local file during debugging in 4.6c</title><content type='html'>By Joyjit Ghosh,&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;In 4.6C there is no direct option provided in the debugger to store internal table content in local file as it is there from release 6.20 onwards (see the screen shot below).&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3ZrRxNqKI/AAAAAAAAANw/_e8bHHw4O44/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 150px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3ZrRxNqKI/AAAAAAAAANw/_e8bHHw4O44/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5295628074384992418" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This tip will show us how to achieve the same in release 4.6C.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;Step1:&lt;/b&gt; When you are in debugging mode press the table push button. And enter the internal table name. Place the cursor on the table field.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SX3ZwEdBEkI/AAAAAAAAAN4/mK4AjPFPWVk/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 274px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SX3ZwEdBEkI/AAAAAAAAAN4/mK4AjPFPWVk/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5295628156709966402" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 2:&lt;/b&gt; Go to the “&lt;b&gt;&lt;u&gt;G&lt;/u&gt;oto&lt;/b&gt;” menu. Choose ”&lt;b&gt;Di&lt;u&gt;s&lt;/u&gt;play data object&lt;/b&gt;” sub-menu. And from the Sub-menu Choose “&lt;b&gt;S&lt;u&gt;t&lt;/u&gt;ructure Editor&lt;/b&gt;”.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SX3Z3GyV90I/AAAAAAAAAOA/IoY2T8Z6lBA/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 279px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SX3Z3GyV90I/AAAAAAAAAOA/IoY2T8Z6lBA/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5295628277595371330" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 3:&lt;/b&gt; When we press the ‘&lt;b&gt;S&lt;u&gt;t&lt;/u&gt;ructure editor&lt;/b&gt;’ sub-menu, screen with title “S&lt;u&gt;t&lt;/u&gt;ructure editor: change [table name] from entry 1” is displayed, where all the contents of the internal table is displayed as a list. Here if we want we can add /delete/modify new rows.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3Z-VH-asI/AAAAAAAAAOI/S2xnHU5tF5U/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 275px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3Z-VH-asI/AAAAAAAAAOI/S2xnHU5tF5U/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5295628401703283394" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 4:&lt;/b&gt; Here our main objective is to download the contents of the internal table. To accomplish this go to “&lt;b&gt;&lt;u&gt;O&lt;/u&gt;bject&lt;/b&gt;” menu and select “&lt;b&gt;D&lt;u&gt;i&lt;/u&gt;splay entire list&lt;/b&gt;” sub-menu.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3abuBAP-I/AAAAAAAAAOQ/q912lzQealA/s1600-h/5.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 282px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3abuBAP-I/AAAAAAAAAOQ/q912lzQealA/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5295628906601136098" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 5:&lt;/b&gt; Now go to &lt;b&gt;S&lt;u&gt;y&lt;/u&gt;stem&lt;/b&gt; -&gt; &lt;b&gt;Lis&lt;u&gt;t&lt;/u&gt;&lt;/b&gt; -&gt; &lt;b&gt;S&lt;u&gt;a&lt;/u&gt;ve&lt;/b&gt;&lt;span style=""&gt;  &lt;/span&gt;-&gt; &lt;b&gt;Local f&lt;u&gt;i&lt;/u&gt;le&lt;/b&gt; sub-menu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3bjs_RreI/AAAAAAAAAO4/ImcyKwRzxA8/s1600-h/10.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 234px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3bjs_RreI/AAAAAAAAAO4/ImcyKwRzxA8/s400/10.jpg" alt="" id="BLOGGER_PHOTO_ID_5295630143276035554" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 6:&lt;/b&gt; A pop-up screen is appeared to ask ’In which format should the list be saved?’ Just press OK button.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3am8Z8AgI/AAAAAAAAAOg/7stOPofSVCQ/s1600-h/7.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 275px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SX3am8Z8AgI/AAAAAAAAAOg/7stOPofSVCQ/s400/7.jpg" alt="" id="BLOGGER_PHOTO_ID_5295629099442373122" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Step 7:&lt;/b&gt; When OK button is pressed again a pop-up screen is appeared where the file name has to be given. After providing the file name, press ‘&lt;b&gt;Transfer’&lt;/b&gt; button.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SX3as8utF7I/AAAAAAAAAOo/OgO18WE1gwA/s1600-h/8.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 252px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SX3as8utF7I/AAAAAAAAAOo/OgO18WE1gwA/s400/8.jpg" alt="" id="BLOGGER_PHOTO_ID_5295629202608691122" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;b&gt;Step 8:&lt;/b&gt; Now if we open the file then we can see that the content of the internal table is stored in the following format. This facility will save us from tedious work of researching the internal table contents from within the ABAP debugger as we can now use a user-friendly tool (like Microsoft Excel, Notepad etc.) to check the data in the file itself.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3axrrAraI/AAAAAAAAAOw/LzffVyBODt0/s1600-h/9.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 288px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX3axrrAraI/AAAAAAAAAOw/LzffVyBODt0/s400/9.jpg" alt="" id="BLOGGER_PHOTO_ID_5295629283929140642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="" lang="SV"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-7785088441284836428?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/7785088441284836428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=7785088441284836428&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7785088441284836428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/7785088441284836428'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/01/store-internal-table-content-in-local.html' title='Store internal table content in local file during debugging in 4.6c'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OG4xeUsph1w/SX3ZrRxNqKI/AAAAAAAAANw/_e8bHHw4O44/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-1186101551962837871</id><published>2009-01-26T01:41:00.000-08:00</published><updated>2009-01-26T01:59:48.982-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enhancement Technique'/><title type='text'>Set up business events to update custom tables from a Standard Transaction</title><content type='html'>By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;br /&gt;Kolkata&lt;/st1:city&gt;, &lt;st1:country-region&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;.&lt;br /&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;  &lt;p class="MsoNormal"&gt;At times the business requirement demands that if the user changes some data from a standard SAP transaction, the same will be noted down in some form and subsequently a daily batch job will pick up that information and will send to another system. One way to achieve this type of requirement is to have the business events set up for this standard transaction in question (provided that transaction calls the business events in it). There are a number of business events declared in a SAP system that may be of use. The transaction is BF34 where we need to configure the business events. &lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;font-family:times new roman;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;font-family:times new roman;" &gt;Step-1&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; line-height: 120%;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;In the BF34 transaction, SAP provides the opportunity to configure the Business events and the corresponding function modules:&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SX2FmT_gVKI/AAAAAAAAAMo/9XoX8a8NjIs/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 128px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SX2FmT_gVKI/AAAAAAAAAMo/9XoX8a8NjIs/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5295535630105728162" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;There is a F4 drop down help available for these business events as shown below:&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SX2FyKzsaJI/AAAAAAAAAMw/F5k48DSS0hk/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 261px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SX2FyKzsaJI/AAAAAAAAAMw/F5k48DSS0hk/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5295535833798699154" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;One can easily choose the business events from this drop down box. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;For every event number one corresponding function module exists.&lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt;&lt;span style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt;Step-2&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;The function module SAMPLE_INTERFACE_00001340 is a function module template that needs to be copied as a Z-function module and then altered so that the desired functionality can be achieved. Please see the following screenshots for details:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;The existing template:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SX2GDHuZfwI/AAAAAAAAAM4/SKPbWg5fTzY/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 213px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SX2GDHuZfwI/AAAAAAAAAM4/SKPbWg5fTzY/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5295536125028957954" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;Please note that this function module contains all the details about the relevant data as importing parameters. The example above is relevant to the event no. 00001340, which is ‘&lt;i&gt;Customer Master data: Final checks&lt;/i&gt;’. All data corresponding to this transaction is available within this function module. The idea is to create a custom function module by copying this template function module and then add additional code in that to get the desired functionality.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;u&gt;A real life scenario:&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;A typical case can be monitoring the customer hierarchy (tcodeVDH1N) for any create/change/delete in the hierarchy relationship. This is important when the client decides that he/she will use non-SAP software (e.g. I-MANY) to monitor the rebate amount distribution. This is a primary requirement for the I-MANY software that the customer hierarchy relationship is in sync with SAP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;The business events for the customer hierarchy create/change/delete are as below: - &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SX2GPtnNdrI/AAAAAAAAANA/HMu4Q0OcJv4/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 143px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SX2GPtnNdrI/AAAAAAAAANA/HMu4Q0OcJv4/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5295536341357786802" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;These events are configured in the &lt;b&gt;BF34&lt;/b&gt; transaction as below: - &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2GaZFVdAI/AAAAAAAAANI/Vc7EgL_kv9Q/s1600-h/5.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 124px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2GaZFVdAI/AAAAAAAAANI/Vc7EgL_kv9Q/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5295536524825555970" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;Using transaction &lt;b&gt;BF24&lt;/b&gt; we can create the “Product” as shown below:&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2Gl7Xbw-I/AAAAAAAAANQ/rXDzgY9liuU/s1600-h/6.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 168px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2Gl7Xbw-I/AAAAAAAAANQ/rXDzgY9liuU/s400/6.jpg" alt="" id="BLOGGER_PHOTO_ID_5295536723006833634" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;The requirement was to write down the create/change/delete information for the customer hierarchy in three different custom tables with the Higher-level customer number and the validity start, end dates. The Z_CS_LOG_CH_CREATE,Z_CS_LOG_CH_CHANGE, Z_CS_LOG_CH_DELETE function modules accomplishes the same. &lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt;&lt;span style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt;How does this work?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;In the standard SAP transaction VDH1N, the standard code issues outbound function calls as below: - &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2G13CvmhI/AAAAAAAAANY/IHkNiS5nrCg/s1600-h/7.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 196px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SX2G13CvmhI/AAAAAAAAANY/IHkNiS5nrCg/s400/7.jpg" alt="" id="BLOGGER_PHOTO_ID_5295536996724218386" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;For the creation&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; the outbound call is made for the business event 00504004&lt;/p&gt;  &lt;p class="MsoNormal"&gt;For the change &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; the outbound call is made for the business event 00504005&lt;/p&gt;  &lt;p class="MsoNormal"&gt;For the deletion&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; the outbound call is made for the business event 00504006&lt;/p&gt;    &lt;p class="MsoNormal"&gt;These events have been set up in the configuration as shown above. So, whenever there is a change in the customer hierarchy by the standard SAP transaction, the same is being logged by these custom function modules via the business events. &lt;/p&gt;    &lt;p class="MsoNormal"&gt;There is a separate program, which is scheduled to run once daily, which picks up the information for the day it is running, from these custom tables and sends Idocs to the non-SAP system.&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; line-height: 120%;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-1186101551962837871?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/1186101551962837871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=1186101551962837871&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1186101551962837871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1186101551962837871'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2009/01/set-up-business-events-to-update-custom.html' title='Set up business events to update custom tables from a Standard Transaction'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_OG4xeUsph1w/SX2FmT_gVKI/AAAAAAAAAMo/9XoX8a8NjIs/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6951566795228755874</id><published>2008-11-22T02:15:00.000-08:00</published><updated>2008-11-22T02:24:38.595-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP OOPs'/><title type='text'>Create transaction on a class method</title><content type='html'>By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;br /&gt;Kolkata&lt;/st1:city&gt;, &lt;st1:country-region&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;  &lt;p class="MsoNormal"&gt;In this demo I am going to show how to create transaction on a local class method.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step1:&lt;/b&gt; First create a local class in a report from transaction SE38.&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DE" &gt;REPORT &lt;span style=""&gt; &lt;/span&gt;z_demo_oop_jg .&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;CLASS create_report DEFINITION&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;CLASS create_report DEFINITION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PUBLIC SECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;METHODS: main.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PRIVATE SECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;DATA: i_data TYPE STANDARD TABLE OF sbook INITIAL SIZE 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;METHODS: fetch_data,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;             &lt;/span&gt;display_data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDCLASS.&lt;span style=""&gt;                    &lt;/span&gt;"create_report DEFINITION&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;CLASS create_report IMPLEMENTATION&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;CLASS create_report IMPLEMENTATION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;METHOD fetch_data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Select 100 records from SBOOK table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;SELECT * FROM sbook&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;INTO TABLE i_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;UP TO 100 ROWS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDMETHOD.&lt;span style=""&gt;                    &lt;/span&gt;"fetch_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;METHOD display_data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;i_structure_name = 'SBOOK'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;t_outtab&lt;span style=""&gt;         &lt;/span&gt;= i_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;program_error&lt;span style=""&gt;    &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;OTHERS&lt;span style=""&gt;           &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;IF sy-subrc &lt;&gt; 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;              &lt;/span&gt;WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDMETHOD.&lt;span style=""&gt;                    &lt;/span&gt;"display_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;METHOD main.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;fetch_data( ).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;display_data( ).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDMETHOD.&lt;span style=""&gt;                    &lt;/span&gt;"main&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDCLASS.&lt;span style=""&gt;                    &lt;/span&gt;"create_report IMPLEMENTATION&lt;/span&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step2.&lt;/b&gt; Now from transaction SE93 create a transaction for the method &lt;st1:place&gt;MAIN&lt;/st1:place&gt; as shown in the screen shots given below:&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Give a transaction name and press create button.&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfcsJWY2mI/AAAAAAAAAMI/zr7VSv62jh4/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 152px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfcsJWY2mI/AAAAAAAAAMI/zr7VSv62jh4/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5271424539842632290" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;In the next screen give a description and choose the proper radio button&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfc48UNaqI/AAAAAAAAAMQ/qxF-7yAPCYs/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 266px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfc48UNaqI/AAAAAAAAAMQ/qxF-7yAPCYs/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5271424759682132642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;In the next screen provide report name (where the local class is defined), local class name and method name.&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfdLndNdBI/AAAAAAAAAMY/3vJ-C0uNxX8/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 268px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfdLndNdBI/AAAAAAAAAMY/3vJ-C0uNxX8/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5271425080500253714" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now save the transaction and execute it.&lt;br /&gt;In this case it will display the report.&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfdYECofqI/AAAAAAAAAMg/XUvB4mDQxck/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 245px;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SSfdYECofqI/AAAAAAAAAMg/XUvB4mDQxck/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5271425294331838114" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;This technique can be used to call a method (local class) from another program using statement: &lt;b&gt;&lt;span style="font-size: 10pt; font-family: Arial; color: black;"&gt;call transaction&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: 9pt; font-family: &amp;quot;Arial monospaced for SAP&amp;quot;; color: black;"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-size: 9pt; font-family: &amp;quot;Arial monospaced for SAP&amp;quot;; color: black;"&gt;EX: call transaction 'Z_OOP'.&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;Note: In the same way you can create a transaction on method of a global class.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6951566795228755874?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6951566795228755874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6951566795228755874&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6951566795228755874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6951566795228755874'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/11/create-transaction-on-class-method.html' title='Create transaction on a class method'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OG4xeUsph1w/SSfcsJWY2mI/AAAAAAAAAMI/zr7VSv62jh4/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-3288596561174342373</id><published>2008-11-22T01:37:00.000-08:00</published><updated>2008-11-22T01:49:58.328-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Problem with system refresh</title><content type='html'>By Joyjit Ghosh,&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;p class="MsoNormal"&gt;&lt;span style="" lang="SV"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;b style=""&gt;&lt;u&gt;Problem :&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;o:p&gt;&lt;span style="text-decoration: none;"&gt; &lt;/span&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In few cases I have seen that after system refresh custom codes developed in the original system are not editable. This problem mainly happens in a landscape which contains two parallel paths one dedicated to development and another one for maintaining the old code. After a certain point in development cycle it is important to make the 2 paths in sync with each other and that’s why we have to refresh one system by the other. And after this refresh this problem may arise.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SSfTM2yrtZI/AAAAAAAAAKw/WAbBGfY9J6g/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 340px;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SSfTM2yrtZI/AAAAAAAAAKw/WAbBGfY9J6g/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5271414106680440210" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfTZ2w47AI/AAAAAAAAAK4/sEVPSeh8QeU/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 296px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfTZ2w47AI/AAAAAAAAAK4/sEVPSeh8QeU/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5271414330011216898" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;u&gt;Solution:&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;From the above message you can get a hint and based on it you can check the original system name of this program from the menu path (Goto &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;à&lt;/span&gt;&lt;/span&gt; Object directory) shown below&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfTsDdNNOI/AAAAAAAAALA/yu5C_pDZ_b4/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 178px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfTsDdNNOI/AAAAAAAAALA/yu5C_pDZ_b4/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5271414642655966434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfT6OZzH_I/AAAAAAAAALI/cqutmTBlna0/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 227px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfT6OZzH_I/AAAAAAAAALI/cqutmTBlna0/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5271414886112632818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;In this case original system name is different than the current system (BSP) name. This is happened because of system refresh. As code is refreshed from BT1 to BSP; due to this original system name is also changed to BT1 from BSP. And now SAP is considering BT1 as the original system that’s why it is showing this above message and not permitting to edit the program directly.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;So to avoid this problem we need to manually change the original system from BT1 to BSP. &lt;/p&gt;    &lt;p class="MsoNormal"&gt;Go to transaction SE03. Set the first check box and give the program name to its corresponding text box and press execute button.&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUI34w1GI/AAAAAAAAALQ/224TrnJRFWo/s1600-h/5.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 243px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUI34w1GI/AAAAAAAAALQ/224TrnJRFWo/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5271415137766528098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;In the next screen select program entry and press the change object directory button.&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfUWYwAAXI/AAAAAAAAALY/YMFUwP9gTuk/s1600-h/6.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 150px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfUWYwAAXI/AAAAAAAAALY/YMFUwP9gTuk/s400/6.jpg" alt="" id="BLOGGER_PHOTO_ID_5271415369926443378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  &gt;In the next popup screen change the original system and press save button.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUhK7LuNI/AAAAAAAAALg/6hfgb-W-Q90/s1600-h/7.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 222px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUhK7LuNI/AAAAAAAAALg/6hfgb-W-Q90/s400/7.jpg" alt="" id="BLOGGER_PHOTO_ID_5271415555193813202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;You will get the following message:&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUrRumXFI/AAAAAAAAALo/vtu3NS5fPGg/s1600-h/8.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 24px;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SSfUrRumXFI/AAAAAAAAALo/vtu3NS5fPGg/s400/8.jpg" alt="" id="BLOGGER_PHOTO_ID_5271415728818773074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Now you can edit the program without any problem&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfU32iyJEI/AAAAAAAAALw/Th6eQ8RraSI/s1600-h/9.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 251px;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SSfU32iyJEI/AAAAAAAAALw/Th6eQ8RraSI/s400/9.jpg" alt="" id="BLOGGER_PHOTO_ID_5271415944859755586" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-3288596561174342373?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/3288596561174342373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=3288596561174342373&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3288596561174342373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/3288596561174342373'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/11/problem-with-system-refresh.html' title='Problem with system refresh'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/SSfTM2yrtZI/AAAAAAAAAKw/WAbBGfY9J6g/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4874247235321758973</id><published>2008-10-22T07:54:00.000-07:00</published><updated>2008-10-22T07:59:00.243-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Display footer info in ALV Grid</title><content type='html'>&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;By Joyjit Ghosh.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="font-size:14;"&gt;Steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="font-size:11;"&gt;Step1:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt; Populate the ALV event table with &lt;span style="color:black;"&gt;'END_OF_LIST' event&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-size:11;color:black;"  &gt;Step2:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt; Populate the footer text in to an internal table which is of type &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:11;color:black;"  &gt;slis_t_listheader.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-size:11;color:black;"  &gt;Step3:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt; Create a subroutine with name &lt;span style="color:black;"&gt;'END_OF_LIST' and with in this form we have to call the function module &lt;/span&gt;‘REUSE_ALV_COMMENTARY_WRITE’.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-size:11;color:black;"  &gt;Step4: &lt;/span&gt;&lt;/b&gt;&lt;span style=";font-size:11;color:black;"  &gt;Now call the function module &lt;/span&gt;&lt;span style="font-size:11;"&gt;REUSE_ALV_GRID_DISPLAY’ to display the ALV report. Whenever ‘END&lt;span style="color:black;"&gt;_OF_LIST' event is get fired it executes the &lt;/span&gt;subroutine &lt;span style="color:black;"&gt;END_OF_LIST and displays the text into the footer of the ALV GRID.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="color:black;"&gt;Code:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_TEST_ALV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_test_alv.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TYPE-POOLS: slis.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: i_mara TYPE STANDARD TABLE OF mara INITIAL SIZE 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA&lt;span style=""&gt;  &lt;/span&gt;i_events TYPE slis_t_event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: i_end_of_page TYPE slis_t_listheader.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: w_events TYPE slis_alv_event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: v_repid LIKE sy-repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;START-OF-SELECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;SELECT * FROM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;mara INTO TABLE i_mara&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;UP TO 100 ROWS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CHECK sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM populate_alv_event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM comment_build&lt;span style=""&gt;  &lt;/span&gt;USING i_end_of_page[].&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM display_grid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;POPULATE_ALV_EVENT&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM populate_alv_event .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;* Populate event table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_events-name = 'END_OF_LIST'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_events-form = 'END_OF_LIST'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;APPEND w_events TO i_events.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" POPULATE_ALV_EVENT&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;COMMENT_BUILD&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM comment_build&lt;span style=""&gt;  &lt;/span&gt;USING&lt;span style=""&gt;    &lt;/span&gt;p_i_end_of_page TYPE slis_t_listheader.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;DATA: ls_line TYPE slis_listheader.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;REFRESH p_i_end_of_page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CLEAR ls_line.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ls_line-typ&lt;span style=""&gt;  &lt;/span&gt;= 'H'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ls_line-info&lt;span style=""&gt;  &lt;/span&gt;= 'This is end of list'(001).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;APPEND ls_line TO p_i_end_of_page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" COMMENT_BUILD&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;end_of_list&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM end_of_list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;it_list_commentary = i_end_of_page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;"end_of_list&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;                     &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;DISPLAY_GRID&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM display_grid .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;v_repid = sy-repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;i_callback_program = v_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;i_structure_name&lt;span style=""&gt;   &lt;/span&gt;= 'MARA'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;it_events&lt;span style=""&gt;          &lt;/span&gt;= i_events&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;t_outtab&lt;span style=""&gt;           &lt;/span&gt;= i_mara&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;program_error&lt;span style=""&gt;      &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;OTHERS&lt;span style=""&gt;             &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;IF sy-subrc &lt;&gt; 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" DISPLAY_GRID&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="color:black;"&gt;Output:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SP8_cX107ZI/AAAAAAAAAKo/NOLfwC8e64U/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SP8_cX107ZI/AAAAAAAAAKo/NOLfwC8e64U/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5259992646460698002" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4874247235321758973?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4874247235321758973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4874247235321758973&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4874247235321758973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4874247235321758973'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/10/display-footer-info-in-alv-grid.html' title='Display footer info in ALV Grid'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/SP8_cX107ZI/AAAAAAAAAKo/NOLfwC8e64U/s72-c/1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6399634699385844481</id><published>2008-09-25T02:08:00.001-07:00</published><updated>2008-09-25T02:15:33.341-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Go to any page of a list directly form selection screen</title><content type='html'>By Joyjit Ghosh,&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Code:&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_DEMO_JG&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp; Go to any page of a list directly form selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_demo_jg LINE-SIZE 80 LINE-COUNT 50&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;                                     &lt;/span&gt;NO STANDARD PAGE HEADING.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TABLES: sflight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Type declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TYPES : BEGIN OF ty_flight,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;carrid(19) TYPE c,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;connid(18) TYPE c,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;fldate LIKE sflight-fldate,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DA" &gt;fldate1(14) TYPE c,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DA" &gt;&lt;span style=""&gt;         &lt;/span&gt;planetype(13) TYPE c,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DA" &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;END OF ty_flight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Data declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: i_flight TYPE STANDARD TABLE OF ty_flight,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;w_flight TYPE ty_flight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: field(50) TYPE c.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: part1(30) TYPE c,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;part2(30) TYPE c.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_counter TYPE i.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;SELECT-OPTIONS: s_carrid FOR sflight-carrid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;PARAMETERS: p_page TYPE int3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;START-OF-SELECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Fetch data from sflight table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;SELECT carrid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;connid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;fldate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;planetype&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;   &lt;/span&gt;FROM sflight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;INTO CORRESPONDING FIELDS OF TABLE i_flight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;WHERE carrid IN s_carrid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;CHECK sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display final data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM display_data.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TOP-OF-PAGE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display report header&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM display_column_name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;display_column_name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;       &lt;/span&gt;Display column header&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;       &lt;/span&gt;None&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM display_column_name .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;WRITE: /10 'Program name:', sy-repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;WRITE: /10 'Page no:', sy-pagno.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Store report header texts&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_flight-carrid = 'Airline Code'(001).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_flight-connid = 'Flight Connection'(002).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_flight-fldate1 = 'Flight date'(003).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;w_flight-planetype = 'Aircraft Type'(004).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display report header&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;SKIP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ULINE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;FORMAT INTENSIFIED ON COLOR 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;WRITE: 1 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;2 w_flight-carrid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;21 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;22 w_flight-connid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;40 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;41 w_flight-fldate1,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;55 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;56 w_flight-planetype,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;80 sy-vline.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ULINE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" display_column_name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;display_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;       &lt;/span&gt;Display flight data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;       &lt;/span&gt;None&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM display_data .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CLEAR w_flight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display report final data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;LOOP AT i_flight INTO w_flight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;w_flight-fldate1 = w_flight-fldate.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;FORMAT INTENSIFIED ON COLOR 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;WRITE: 1 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;2 w_flight-carrid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;21 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;22 w_flight-connid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;40 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;41 w_flight-fldate1,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;55 sy-vline,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;56 w_flight-planetype,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;80 sy-vline.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;ULINE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDLOOP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;IF p_page IS NOT INITIAL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;   &lt;/span&gt;Check whether any page exist with the number entered&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;   &lt;/span&gt;in the selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;READ LINE 1 OF PAGE p_page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;     &lt;/span&gt;If exist then scroll down to that page&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;b style=""&gt;SCROLL LIST TO PAGE p_page LINE 1 .&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;ELSE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;     &lt;/span&gt;Otherwise display information message and continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   lang="DA" &gt;*&lt;span style=""&gt;     &lt;/span&gt;processing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DA" &gt;&lt;span style=""&gt;      &lt;/span&gt;MESSAGE i000(z_zzz_ca_messages)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DA" &gt;&lt;span style=""&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;WITH 'Page number does not exist'(001).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" display_data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Screen shots:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Input:&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SNtVJjBLvBI/AAAAAAAAAKI/RVwmqdeOiMk/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SNtVJjBLvBI/AAAAAAAAAKI/RVwmqdeOiMk/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5249883413137832978" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Output:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SNtVPHlUSRI/AAAAAAAAAKQ/YqxDPE6n8h8/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SNtVPHlUSRI/AAAAAAAAAKQ/YqxDPE6n8h8/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5249883508852410642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Input:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SNtVTT9hFQI/AAAAAAAAAKY/FQALw71ha8g/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SNtVTT9hFQI/AAAAAAAAAKY/FQALw71ha8g/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5249883580894614786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Output:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SNtVXm2b5TI/AAAAAAAAAKg/DOMIOIodGXo/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SNtVXm2b5TI/AAAAAAAAAKg/DOMIOIodGXo/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5249883654684665138" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6399634699385844481?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6399634699385844481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6399634699385844481&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6399634699385844481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6399634699385844481'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/go-to-any-page-of-list-directly-form.html' title='Go to any page of a list directly form selection screen'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/SNtVJjBLvBI/AAAAAAAAAKI/RVwmqdeOiMk/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6837407613299952648</id><published>2008-09-22T04:27:00.000-07:00</published><updated>2008-09-22T04:37:25.388-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Display Average in ALV report</title><content type='html'>&lt;b style=""&gt;&lt;span style="font-size:14;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;By Joyjit Ghosh,&lt;span style="" lang="PT-BR"&gt;&lt;br /&gt;Kolkata, India.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="" lang="PT-BR"&gt;Code:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;            &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_DEMO_JG&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp; Display average in ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_demo_jg LINE-SIZE 80 LINE-COUNT 50&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;                                   &lt;/span&gt;NO STANDARD PAGE HEADING.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TABLES: sflight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;TYPE-POOLS: slis.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Data declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: i_flight TYPE STANDARD TABLE OF sflight,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;i_catalog TYPE slis_t_fieldcat_alv,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;w_flight TYPE sflight,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;w_catalog TYPE slis_fieldcat_alv.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: v_repid TYPE syrepid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Selection screen&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;SELECT-OPTIONS: s_carrid FOR sflight-carrid.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;START-OF-SELECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Fetch data from sflight table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt; &lt;/span&gt;SELECT *&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;   &lt;/span&gt;FROM sflight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;INTO TABLE i_flight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;WHERE carrid IN s_carrid.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CHECK sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;v_repid = sy-repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Build field catalog for ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM build_catalog.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;PERFORM display_report.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;                &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;build_catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;Build field catalog for ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;None&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM build_catalog .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;i_program_name&lt;span style=""&gt;         &lt;/span&gt;= v_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;i_structure_name&lt;span style=""&gt;       &lt;/span&gt;= 'SFLIGHT'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;CHANGING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;ct_fieldcat&lt;span style=""&gt;            &lt;/span&gt;= i_catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;inconsistent_interface = 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;program_error&lt;span style=""&gt;          &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;OTHERS&lt;span style=""&gt;                 &lt;/span&gt;= 3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;   &lt;/span&gt;For average populate 'C' as value in&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   lang="PT-BR" &gt;*&lt;span style=""&gt;   &lt;/span&gt;field DO_SUM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;span style=""&gt;    &lt;/span&gt;w_catalog-do_sum = 'C'. &lt;/span&gt;&lt;/b&gt;&lt;b style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;" C = Average&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;   &lt;/span&gt;Modify record with new value&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;MODIFY i_catalog FROM w_catalog TRANSPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;do_sum WHERE fieldname = 'PRICE'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;                 &lt;/span&gt;" build_catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;              &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;span style=""&gt;      &lt;/span&gt;Form&lt;span style=""&gt;  &lt;/span&gt;display_report&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;Display ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;None&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*----------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;FORM display_report .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;IF i_catalog[] IS NOT INITIAL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;*&lt;span style=""&gt;   &lt;/span&gt;Call ALV grid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;i_callback_program = v_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;it_fieldcat&lt;span style=""&gt;        &lt;/span&gt;= i_catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;t_outtab&lt;span style=""&gt;           &lt;/span&gt;= i_flight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;      &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;program_error&lt;span style=""&gt;      &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;        &lt;/span&gt;OTHERS&lt;span style=""&gt;             &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;    &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;" display_report&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="" lang="PT-BR"&gt;Selection Screen:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SNeBWa1IvdI/AAAAAAAAAJ4/APdzZ0Er1rA/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SNeBWa1IvdI/AAAAAAAAAJ4/APdzZ0Er1rA/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5248806112882900434" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="" lang="PT-BR"&gt;Output:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SNeBiNsHWSI/AAAAAAAAAKA/2vTWhfbZuEM/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SNeBiNsHWSI/AAAAAAAAAKA/2vTWhfbZuEM/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5248806315513829666" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6837407613299952648?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6837407613299952648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6837407613299952648&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6837407613299952648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6837407613299952648'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/display-average-in-alv-report.html' title='Display Average in ALV report'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/SNeBWa1IvdI/AAAAAAAAAJ4/APdzZ0Er1rA/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4775971375641083341</id><published>2008-09-21T07:24:00.000-07:00</published><updated>2008-09-21T07:27:59.761-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Display subtotal text in ALV grid</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;By Joyjit Ghosh,&lt;br /&gt;&lt;/span&gt;&lt;span style="" lang="SV"&gt;&lt;span style="font-size:100%;"&gt;Kolkata, India.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-weight: bold;"&gt;Steps:&lt;/span&gt;&lt;br /&gt;•    Declare the fields twice in the table structure on which subtotal needs to be calculated.&lt;br /&gt;•    Populate these fields with same values in the internal table.&lt;br /&gt;•    When populating field catalog with these fields, hide one of the field by populating no_out = ‘X’ and tech = ‘X’ in the field catalog.&lt;br /&gt;•    Populate alv sort table for the field which is hidden in the field catalog.&lt;br /&gt;•    Populate alv event table for subtotal text (slis_ev_subtotal_text) event with routine name.&lt;br /&gt;•    Define the routine in the program to display subtotal text.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  Z_ALV_SUBTOTAL&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;REPORT z_alv_subtotal.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Table declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;TABLES: ekko.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Type pool declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;TYPE-POOLS: slis. " Type pool for ALV&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Selection screen&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;SELECT-OPTIONS: s_ebeln FOR ekko-ebeln.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Type declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;* Type declaration for internal table to store EKPO data&lt;br /&gt;TYPES: BEGIN OF x_data,&lt;br /&gt;       ebeln  TYPE char30,  " Document no.&lt;br /&gt;       ebelp  TYPE ebelp,   " Item no&lt;br /&gt;       matnr  TYPE matnr,   " Material no&lt;br /&gt;       matnr1 TYPE matnr,   " Material no&lt;br /&gt;       werks  TYPE werks_d, " Plant&lt;br /&gt;       werks1 TYPE werks_d, " Plant&lt;br /&gt;       ntgew  TYPE entge,   " Net weight&lt;br /&gt;       gewe   TYPE egewe,   " Unit of weight                        &lt;br /&gt;       END OF x_data.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Internal table declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;DATA:&lt;br /&gt;&lt;br /&gt;* Internal table to store EKPO data&lt;br /&gt;  i_ekpo TYPE STANDARD TABLE OF x_data INITIAL SIZE 0,&lt;br /&gt;* Internal table for storing field catalog information&lt;br /&gt;  i_fieldcat TYPE slis_t_fieldcat_alv,&lt;br /&gt;* Internal table for Top of Page info. in ALV Display&lt;br /&gt;  i_alv_top_of_page TYPE slis_t_listheader,&lt;br /&gt;* Internal table for ALV Display events&lt;br /&gt;  i_events TYPE slis_t_event,&lt;br /&gt;* Internal table for storing ALV sort information&lt;br /&gt;  i_sort TYPE  slis_t_sortinfo_alv,&lt;br /&gt;  i_event TYPE slis_t_event.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Work area declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;DATA:&lt;br /&gt;  wa_ekko TYPE x_data,&lt;br /&gt;  wa_layout     TYPE slis_layout_alv,&lt;br /&gt;  wa_events         TYPE slis_alv_event,&lt;br /&gt;  wa_sort TYPE slis_sortinfo_alv.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Constant declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;CONSTANTS:&lt;br /&gt;   c_header   TYPE char1&lt;br /&gt;              VALUE 'H',                    "Header in ALV&lt;br /&gt;   c_item     TYPE char1&lt;br /&gt;              VALUE 'S'.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Start-of-selection event&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;* Select data from ekpo&lt;br /&gt;  SELECT ebeln " Doc no&lt;br /&gt;         ebelp " Item&lt;br /&gt;         matnr " Material&lt;br /&gt;         matnr " Material&lt;br /&gt;         werks " Plant&lt;br /&gt;         werks " Plant&lt;br /&gt;         ntgew " Quantity&lt;br /&gt;         gewei " Unit&lt;br /&gt;         FROM ekpo&lt;br /&gt;         INTO TABLE i_ekpo&lt;br /&gt;         WHERE ebeln IN s_ebeln&lt;br /&gt;         AND ntgew NE '0.00'.&lt;br /&gt;&lt;br /&gt;  IF sy-subrc = 0.&lt;br /&gt;    SORT i_ekpo BY ebeln ebelp matnr .&lt;br /&gt;  ENDIF.&lt;br /&gt;&lt;br /&gt;* To build the Page header&lt;br /&gt;  PERFORM sub_build_header.&lt;br /&gt;&lt;br /&gt;* To prepare field catalog&lt;br /&gt;  PERFORM sub_field_catalog.&lt;br /&gt;&lt;br /&gt;* Perform to populate the layout structure&lt;br /&gt;  PERFORM sub_populate_layout.&lt;br /&gt;&lt;br /&gt;* Perform to populate the sort table.&lt;br /&gt;  PERFORM sub_populate_sort.&lt;br /&gt;&lt;br /&gt;* Perform to populate ALV event&lt;br /&gt;  PERFORM sub_get_event.&lt;br /&gt;&lt;br /&gt;END-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;* Perform to display ALV report&lt;br /&gt;  PERFORM sub_alv_report_display.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_build_header&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       To build the header&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_build_header .&lt;br /&gt;&lt;br /&gt;* Local data declaration&lt;br /&gt;  DATA: l_system     TYPE char10 ,          "System id&lt;br /&gt;        l_r_line     TYPE slis_listheader,  "Hold list header&lt;br /&gt;        l_date       TYPE char10,           "Date&lt;br /&gt;        l_time       TYPE char10,           "Time&lt;br /&gt;        l_success_records TYPE i,           "No of success records&lt;br /&gt;        l_title(300) TYPE c.                " Title&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;* Title  Display&lt;br /&gt;  l_r_line-typ = c_header.               " header&lt;br /&gt;  l_title = 'Test report'(001).&lt;br /&gt;  l_r_line-info = l_title.&lt;br /&gt;  APPEND l_r_line TO i_alv_top_of_page.&lt;br /&gt;  CLEAR l_r_line.&lt;br /&gt;&lt;br /&gt;* Run date Display&lt;br /&gt;  CLEAR l_date.&lt;br /&gt;  l_r_line-typ  = c_item.                " Item&lt;br /&gt;  WRITE: sy-datum  TO l_date MM/DD/YYYY.&lt;br /&gt;  l_r_line-key = 'Run Date :'(002).&lt;br /&gt;  l_r_line-info = l_date.&lt;br /&gt;  APPEND l_r_line TO i_alv_top_of_page.&lt;br /&gt;  CLEAR: l_r_line,&lt;br /&gt;         l_date.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_build_header&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_field_catalog&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Build Field Catalog&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_field_catalog .&lt;br /&gt;&lt;br /&gt;*  Build Field Catalog&lt;br /&gt;  PERFORM sub_fill_alv_field_catalog USING:&lt;br /&gt;&lt;br /&gt;     '01' '01' 'EBELN' 'I_EKPO' 'L'&lt;br /&gt;     'Doc No'(003) ' ' ' ' ' ' ' ',&lt;br /&gt;&lt;br /&gt;     '01' '02' 'EBELP' 'I_EKPO' 'L'&lt;br /&gt;     'Item No'(004) 'X' 'X' ' ' ' ',&lt;br /&gt;&lt;br /&gt;     '01' '03' 'MATNR' 'I_EKPO' 'L'&lt;br /&gt;     'Material No'(005) 'X' 'X' ' ' ' ',&lt;br /&gt;&lt;br /&gt;     '01' '03' 'MATNR1' 'I_EKPO' 'L'&lt;br /&gt;     'Material No'(005) ' ' ' ' ' ' ' ',&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     '01' '04' 'WERKS' 'I_EKPO' 'L'&lt;br /&gt;     'Plant'(006) 'X' 'X' ' ' ' ',&lt;br /&gt;&lt;br /&gt;     '01' '04' 'WERKS1' 'I_EKPO' 'L'&lt;br /&gt;     'Plant'(006) ' ' ' ' ' ' ' ',&lt;br /&gt;&lt;br /&gt;     '01' '05' 'NTGEW' 'I_EKPO' 'R'&lt;br /&gt;     'Net Weight'(007) ' ' ' ' 'GEWE' 'I_EKPO'.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_field_catalog&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;     Form  sub_fill_alv_field_catalog&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;     For building Field Catalog&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;     p_rowpos   Row position&lt;br /&gt;*&amp;amp;     p_colpos   Col position&lt;br /&gt;*&amp;amp;     p_fldnam   Fldname&lt;br /&gt;*&amp;amp;     p_tabnam   Tabname&lt;br /&gt;*&amp;amp;     p_justif   Justification&lt;br /&gt;*&amp;amp;     p_seltext  Seltext&lt;br /&gt;*&amp;amp;     p_out      no out&lt;br /&gt;*&amp;amp;     p_tech     Technical field&lt;br /&gt;*&amp;amp;     p_qfield   Quantity field&lt;br /&gt;*&amp;amp;     p_qtab     Quantity table&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;FORM sub_fill_alv_field_catalog  USING  p_rowpos    TYPE sycurow&lt;br /&gt;                                        p_colpos    TYPE sycucol&lt;br /&gt;                                        p_fldnam    TYPE fieldname&lt;br /&gt;                                        p_tabnam    TYPE tabname&lt;br /&gt;                                        p_justif    TYPE char1&lt;br /&gt;                                        p_seltext   TYPE dd03p-scrtext_l&lt;br /&gt;                                        p_out       TYPE char1&lt;br /&gt;                                        p_tech      TYPE char1&lt;br /&gt;                                        p_qfield    TYPE slis_fieldname&lt;br /&gt;                                        p_qtab      TYPE slis_tabname.&lt;br /&gt;&lt;br /&gt;* Local declaration for field catalog&lt;br /&gt;  DATA: wa_lfl_fcat    TYPE  slis_fieldcat_alv.&lt;br /&gt;&lt;br /&gt;  wa_lfl_fcat-row_pos        =  p_rowpos.     "Row&lt;br /&gt;  wa_lfl_fcat-col_pos        =  p_colpos.     "Column&lt;br /&gt;  wa_lfl_fcat-fieldname      =  p_fldnam.     "Field Name&lt;br /&gt;  wa_lfl_fcat-tabname        =  p_tabnam.     "Internal Table Name&lt;br /&gt;  wa_lfl_fcat-just           =  p_justif.     "Screen Justified&lt;br /&gt;  wa_lfl_fcat-seltext_l      =  p_seltext.    "Field Text&lt;br /&gt;  wa_lfl_fcat-no_out         =  p_out.        "No output&lt;br /&gt;  wa_lfl_fcat-tech           =  p_tech.       "Technical field&lt;br /&gt;  wa_lfl_fcat-qfieldname     =  p_qfield.     "Quantity unit&lt;br /&gt;  wa_lfl_fcat-qtabname       =  p_qtab .      "Quantity table&lt;br /&gt;&lt;br /&gt;  IF p_fldnam = 'NTGEW'.&lt;br /&gt;    wa_lfl_fcat-do_sum  = 'X'.&lt;br /&gt;  ENDIF.&lt;br /&gt;  APPEND wa_lfl_fcat TO i_fieldcat.&lt;br /&gt;  CLEAR wa_lfl_fcat.&lt;br /&gt;ENDFORM.                    " sub_fill_alv_field_catalog&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_populate_layout&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Populate ALV layout&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_populate_layout .&lt;br /&gt;&lt;br /&gt;  CLEAR wa_layout.&lt;br /&gt;  wa_layout-colwidth_optimize = 'X'." Optimization of Col width&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_populate_layout&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_populate_sort&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Populate ALV sort table&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_populate_sort .&lt;br /&gt;&lt;br /&gt;* Sort on material&lt;br /&gt;  wa_sort-spos = '01' .&lt;br /&gt;  wa_sort-fieldname = 'MATNR'.&lt;br /&gt;  wa_sort-tabname = 'I_EKPO'.&lt;br /&gt;  wa_sort-up = 'X'.&lt;br /&gt;  wa_sort-subtot = 'X'.&lt;br /&gt;  APPEND wa_sort TO i_sort .&lt;br /&gt;  CLEAR wa_sort.&lt;br /&gt;&lt;br /&gt;* Sort on plant&lt;br /&gt;  wa_sort-spos = '02'.&lt;br /&gt;  wa_sort-fieldname = 'WERKS'.&lt;br /&gt;  wa_sort-tabname = 'I_EKPO'.&lt;br /&gt;  wa_sort-up = 'X'.&lt;br /&gt;  wa_sort-subtot = 'X'.&lt;br /&gt;  APPEND wa_sort TO i_sort .&lt;br /&gt;  CLEAR wa_sort.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_populate_sort&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_get_event&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Get ALV grid event and pass the form name to subtotal_text&lt;br /&gt;*       event&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_get_event .&lt;br /&gt;  CONSTANTS : c_formname_subtotal_text TYPE slis_formname VALUE&lt;br /&gt;'SUBTOTAL_TEXT'.&lt;br /&gt;&lt;br /&gt;  DATA: l_s_event TYPE slis_alv_event.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;br /&gt;    EXPORTING&lt;br /&gt;      i_list_type     = 4&lt;br /&gt;    IMPORTING&lt;br /&gt;      et_events       = i_event&lt;br /&gt;    EXCEPTIONS&lt;br /&gt;      list_type_wrong = 0&lt;br /&gt;      OTHERS          = 0.&lt;br /&gt;&lt;br /&gt;* Subtotal&lt;br /&gt;  READ TABLE i_event  INTO l_s_event&lt;br /&gt;                    WITH KEY name = slis_ev_subtotal_text.&lt;br /&gt;  IF sy-subrc = 0.&lt;br /&gt;    MOVE c_formname_subtotal_text TO l_s_event-form.&lt;br /&gt;    MODIFY i_event FROM l_s_event INDEX sy-tabix.&lt;br /&gt;  ENDIF.&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_get_event&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  sub_alv_report_display&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       For ALV Report Display&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       No Parameter&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM sub_alv_report_display .&lt;br /&gt;  DATA: l_repid TYPE syrepid .&lt;br /&gt;  l_repid = sy-repid .&lt;br /&gt;&lt;br /&gt;* This function module for displaying the ALV report&lt;br /&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;br /&gt;    EXPORTING&lt;br /&gt;      i_callback_program       = l_repid&lt;br /&gt;      i_callback_top_of_page   = 'SUB_ALV_TOP_OF_PAGE'&lt;br /&gt;      is_layout                = wa_layout&lt;br /&gt;      it_fieldcat              = i_fieldcat&lt;br /&gt;      it_sort = i_sort&lt;br /&gt;      it_events                = i_event&lt;br /&gt;      i_default                = 'X'&lt;br /&gt;      i_save                   = 'A'&lt;br /&gt;    TABLES&lt;br /&gt;      t_outtab                 = i_ekpo&lt;br /&gt;    EXCEPTIONS&lt;br /&gt;      program_error            = 1&lt;br /&gt;      OTHERS                   = 2.&lt;br /&gt;  IF sy-subrc &lt;&gt; 0.&lt;br /&gt;*    MESSAGE i000 WITH 'Error in ALV report display'(055).&lt;br /&gt;  ENDIF.&lt;br /&gt;&lt;br /&gt;ENDFORM.                    " sub_alv_report_display&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       FORM sub_alv_top_of_page&lt;br /&gt;*---------------------------------------------------------------------*&lt;br /&gt;*       Call ALV top of page&lt;br /&gt;*---------------------------------------------------------------------*&lt;br /&gt;*       No parameter&lt;br /&gt;*---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;FORM sub_alv_top_of_page.                                   "#EC CALLED&lt;br /&gt;&lt;br /&gt;* To write header for the ALV&lt;br /&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;br /&gt;    EXPORTING&lt;br /&gt;      it_list_commentary = i_alv_top_of_page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ENDFORM.                    "alv_top_of_page&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  subtotal_text&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Build subtotal text&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;*       P_total  Total&lt;br /&gt;*       p_subtot_text Subtotal text info&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;FORM subtotal_text CHANGING&lt;br /&gt;               p_total TYPE any&lt;br /&gt;               p_subtot_text TYPE slis_subtot_text.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;* Material level sub total&lt;br /&gt;  IF p_subtot_text-criteria = 'MATNR'.&lt;br /&gt;    p_subtot_text-display_text_for_subtotal&lt;br /&gt;    = 'Material level total'(009).&lt;br /&gt;  ENDIF.&lt;br /&gt;&lt;br /&gt;* Plant level sub total&lt;br /&gt;  IF p_subtot_text-criteria = 'WERKS'.&lt;br /&gt;    p_subtot_text-display_text_for_subtotal = 'Plant level total'(010).&lt;br /&gt;  ENDIF.&lt;br /&gt;&lt;br /&gt;ENDFORM.                    "subtotal_text&lt;br /&gt;&lt;br /&gt;&lt;span style="" lang="SV"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4775971375641083341?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4775971375641083341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4775971375641083341&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4775971375641083341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4775971375641083341'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/display-subtotal-text-in-alv-grid.html' title='Display subtotal text in ALV grid'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6739240851282261611</id><published>2008-09-12T02:26:00.001-07:00</published><updated>2008-09-12T04:32:20.458-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Change color of a cell in ALV report</title><content type='html'>&lt;span style="font-family:arial;"&gt;By Joyjit Ghosh,&lt;/span&gt;&lt;o:p style="font-family: arial;"&gt;&lt;/o:p&gt;&lt;span  lang="SV" style="font-family:arial;"&gt;&lt;br /&gt;Kolkata, India.&lt;/span&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;To change the color of a particular cell at runtime ,we have to perform the following steps:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=";font-size:11;color:black;"  &gt;Step1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;Define an internal table of TYPE&lt;span style=""&gt;  &lt;/span&gt;slis_specialcol_alv as a&lt;span style=""&gt;  &lt;/span&gt;field into the output table which has to pass into the ‘REUSE_ALV_GRID_DISPLAY’ Function module.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;TYPES: BEGIN OF ty_user_output,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;BELNR&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-BELNR,&lt;span style=""&gt;          &lt;/span&gt;"Doc. Number&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;BUDAT&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-BUDAT,&lt;span style=""&gt;          &lt;/span&gt;"Posting Date&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;BUKRS&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-BUKRS,&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;"Company Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;LIFNR&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-LIFNR,&lt;span style=""&gt;             &lt;/span&gt;"Invoicing Party&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;NAME1&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;LFA1-NAME1,&lt;span style=""&gt;          &lt;/span&gt;"Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;USNAM&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-USNAM,&lt;span style=""&gt;        &lt;/span&gt;"User&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;BUZEI&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-BUZEI,&lt;span style=""&gt;            &lt;/span&gt;"Invoice Item&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;RBWWR&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-RBWWR,&lt;span style=""&gt;    &lt;/span&gt;"Amount&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;EBELN&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-EBELN,&lt;span style=""&gt;         &lt;/span&gt;"Purchase Document&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;EBELP&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-EBELP,&lt;span style=""&gt;          &lt;/span&gt;"Purchase Order Item&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;WERKS&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-WERKS,&lt;span style=""&gt;      &lt;/span&gt;"Plant&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;EKGRP&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;EKKO-EKGRP,&lt;span style=""&gt;       &lt;/span&gt;"Purchasing Group&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;TBTKX&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-TBTKZ,&lt;span style=""&gt;         &lt;/span&gt;"Subsequent Debit/Credit&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRG&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRG,&lt;span style=""&gt;      &lt;/span&gt;"Order Price Quantity&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRM&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRM,&lt;span style=""&gt;      &lt;/span&gt;"Blocking Reason:Quantity&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRP&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRP,&lt;span style=""&gt;      &lt;/span&gt;"Blocking Reason:Price&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRC&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRC,&lt;span style=""&gt;     &lt;/span&gt;"Blocking Reason:Quality&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRS&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRS,&lt;span style=""&gt;      &lt;/span&gt;"Blocking Reason:Amount&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRT&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRT,&lt;span style=""&gt;      &lt;/span&gt;"Blocking Reason:Date&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;SPGRQ&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RSEG-SPGRQ,&lt;span style=""&gt;     &lt;/span&gt;"Blocking Reason:Manual&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;parked(1) type&lt;span style=""&gt;  &lt;/span&gt;c ,&lt;span style=""&gt;                          &lt;/span&gt;"Indicates Parked Invoice&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;Note(1)&lt;span style=""&gt;   &lt;/span&gt;type&lt;span style=""&gt;  &lt;/span&gt;c,&lt;span style=""&gt;                            &lt;/span&gt;"Indicates Blocking Notes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1026"  style="'position:absolute;margin-left:9pt;margin-top:7.55pt;color:red;" filled="f" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: absolute; z-index: 1; margin-left: 11px; margin-top: 9px; width: 470px; height: 38px;"&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;       &lt;/span&gt;GJAHR&lt;span style=""&gt;     &lt;/span&gt;like&lt;span style=""&gt;  &lt;/span&gt;RBKP-GJAHR,&lt;span style=""&gt;      &lt;/span&gt;"Fiscal year&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;color&lt;span style=""&gt;     &lt;/span&gt;TYPE&lt;span style=""&gt;  &lt;/span&gt;slis_specialcol_alv OCCURS 2,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;                                                              "For cell color&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;       &lt;/span&gt;END OF ty_user_output.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="font-size:11;"&gt;Step2:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;When building the layout set for ALV ,specify the color field name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;w_layout-coltab_fieldname = 'COLOR'.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:line id="_x0000_s1026"  style="'position:absolute;z-index:1'color:red;" from="-9pt,10.7pt" to="198pt,10.7pt" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: relative; z-index: 1; left: -13px; top: 13px; width: 278px; height: 16px;"&gt;&lt;/span&gt;&lt;!--[endif]--&gt;  &lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="font-size:11;"&gt;Step3:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;If we want to give a color to any column when the report is first displayed,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;then we have to populate the internal table COLOR.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;DATA: w_color TYPE slis_specialcol_alv. " Color&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;w_color-fieldname = p_field.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;  w_color-color-col = p_color.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;w_color-color-int = p_int.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;w_color-color-inv = p_inv.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;w_color-nokeycol&lt;span style=""&gt;  &lt;/span&gt;= p_key.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;APPEND w_color TO w_user_output-color.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style=""&gt;&lt;/span&gt;CLEAR w_color.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;  &lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="font-size:11;"&gt;Step4:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;If the user press any custom button or double click on any particular field,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;then we have to track the sy-ucomm value .To do this we have to create a subroutine,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;which has two parameters ,one is like sy-ucomm and another is type &lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;slis_selfield,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;and we have to assign the subroutine name in the ‘i_callback_user_command ‘ parameter of the function module REUSE_ALV_GRID_DISPLAY.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;       &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1026"  style="'position:absolute;margin-left:18pt;margin-top:6.55pt;color:red;" filled="f" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: absolute; z-index: 1; margin-left: 23px; margin-top: 7px; width: 362px; height: 39px;"&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;           &lt;/span&gt;i_callback_program&lt;span style=""&gt;       &lt;/span&gt;= c_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;     &lt;span style="font-weight: bold;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;i_callback_user_command  = 'USER_COMMAND'&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;i_structure_name&lt;span style=""&gt;         &lt;/span&gt;= 'i_tab'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;is_layout&lt;span style=""&gt;             &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;= w_layout&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;it_fieldcat&lt;span style=""&gt;              &lt;/span&gt;= i_fieldcat[]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;I_SAVE&lt;span style=""&gt;                   &lt;/span&gt;= 'A'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;is_variant&lt;span style=""&gt;               &lt;/span&gt;= w_variant&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;it_events&lt;span style=""&gt;                &lt;/span&gt;= i_levents&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;is_print&lt;span style=""&gt;                 &lt;/span&gt;= w_print&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;t_outtab&lt;span style=""&gt;                 &lt;/span&gt;= i_tab&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;       &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;program_error&lt;span style=""&gt;            &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;OTHERS&lt;span style=""&gt;                   &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1027"  style="'position:absolute;margin-left:126pt;margin-top:5.55pt;color:red;" filled="f" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style=""&gt;  &lt;table style="width: 4px; height: 36px;" align="left" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td height="6" width="167"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;&lt;br /&gt;&lt;/td&gt;   &lt;td&gt;&lt;br /&gt;&lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;Form USER_COMMAND USING r_ucomm LIKE sy-ucomm&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;                       &lt;/span&gt;rs_selfield TYPE slis_selfield.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;ENDFORM.                                    "USER_COMMAND&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;Now when ever user generates a particular function code then we have to&lt;span style=""&gt;  &lt;/span&gt;first check the field name then modify the color table depending upon field name and lastly modify the output table. This logic is written in to the above subroutine.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;IF r_ucomm = V_F2CODE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;     &lt;/span&gt;if rs_selfield-fieldname = c_doc_name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:blue;"  &gt;*Work area for color table.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;DATA: w_color TYPE slis_specialcol_alv.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;clear&lt;span style=""&gt;  &lt;/span&gt;w_user_output.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1026"  style="'position:absolute;margin-left:-9pt;margin-top:0;color:red;" filled="f" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: relative; z-index: 1;"&gt;&lt;span style="position: absolute; left: -13px; top: -1px; width: 590px; height: 62px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-size:11;color:blue;"  &gt;*Read internal table for proper value.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;read table i_user_output&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;             &lt;/span&gt;index rs_selfield-tabindex(Contains index of the current record selected by the user)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;             into w_user_output.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:oval id="_x0000_s1027"  style="'position:absolute;margin-left:0;margin-top:-.25pt;color:red;" filled="f" strokeweight="1.25pt"&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;span style="position: relative; z-index: 2;"&gt;&lt;span style="position: absolute; left: -1px; top: -2px; width: 578px; height: 75px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;if sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;read table w_user_output-color into w_color&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;                      with key fieldname = rs_selfield-fieldname(Contains current field name selected by the user).&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;   &lt;/span&gt;if sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;w_color-color-col = '4'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;w_color-color-int = 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;w_color-color-inv = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:blue;"  &gt;* Modify the internal table Color&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;MODIFY&lt;span style=""&gt;  &lt;/span&gt;w_user_output-color FROM w_color&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;    INDEX sy-tabix TRANSPORTING color.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;CLEAR w_color.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;*  &lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-size:11;color:blue;"  &gt;Modify the      internal table i_user_output&lt;/span&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-weight: bold;font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;MODIFY&lt;span style=""&gt;  &lt;/span&gt;i_user_output FROM w_user_output&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;    INDEX p_index TRANSPORTING color.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt;  &lt;/span&gt;endif.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style=";font-size:11;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;endif.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:11;"&gt;&lt;span style=""&gt;        &lt;/span&gt;Endif.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" face="arial"&gt;&lt;span style="font-size:11;"&gt;Endif.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" face="arial"&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: arial;"&gt;&lt;span style="font-size:11;"&gt;Now to refresh the ALV grid, set the refresh field of the &lt;/span&gt;&lt;span style=";font-size:11;color:black;"  &gt;rs_selfield parameter.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="font-family: arial;"&gt;&lt;span style="font-weight: bold;font-size:11;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;rs_selfield-refresh = ‘X’.&lt;/span&gt;&lt;span style="font-size:11;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;br /&gt;&lt;b  style="font-family:arial;"&gt;&lt;span style="font-size:16;"&gt;Report Output:&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;  &lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-size:14;"&gt;&lt;span style="font-size:100%;"&gt;First time when the report is displayed:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMo1x3w1lII/AAAAAAAAAJE/M-RN_qgRPXg/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMo1x3w1lII/AAAAAAAAAJE/M-RN_qgRPXg/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5245063846925014146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-size:14;"&gt;&lt;span style="font-size:100%;"&gt;After successive processing:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a style="font-family: arial;" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMo12saWSqI/AAAAAAAAAJM/3TYelO9iUTk/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMo12saWSqI/AAAAAAAAAJM/3TYelO9iUTk/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5245063929777244834" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6739240851282261611?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6739240851282261611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6739240851282261611&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6739240851282261611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6739240851282261611'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/change-color-of-cell-in-alv-report.html' title='Change color of a cell in ALV report'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_OG4xeUsph1w/SMo1x3w1lII/AAAAAAAAAJE/M-RN_qgRPXg/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4380585962860400396</id><published>2008-09-11T08:28:00.001-07:00</published><updated>2008-09-12T04:35:14.533-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Insert separator in a string after specified position</title><content type='html'>By Joyjit Ghosh,&lt;o:p&gt;&lt;/o:p&gt;&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal"&gt;&lt;span style="" lang="SV"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;b style=""&gt;&lt;span style="" lang="SV"&gt;Code:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;              &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   lang="PT-BR" &gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_DEMO_JG&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp; Insert separator in a string after specified position&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;o:p&gt;&lt;/o:p&gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_demo_jg.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   lang="PT-BR" &gt;* Data declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_char1(3) TYPE c.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_char TYPE string.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_pos TYPE i.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_len TYPE i.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;DATA: l_len1 TYPE i.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;PARAMETERS: l_srt(255) TYPE c DEFAULT `12344566` obligatory, " String&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;l_spch(1)&lt;span style=""&gt;  &lt;/span&gt;type c DEFAULT `,` obligatory, " Separator&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;            &lt;/span&gt;l_no&lt;span style=""&gt;       &lt;/span&gt;type int3 DEFAULT 1 obligatory.&lt;span style=""&gt;  &lt;/span&gt;" No of places&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Length of the string&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DE" &gt;l_len = STRLEN( l_srt ).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="DE" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Divide the length by 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;l_len1 = l_len DIV l_no.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;l_pos = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;DO l_len1 TIMES.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Storing next l_no chars&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;l_char1 = l_srt+l_pos(l_no).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Add separator with it&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CONCATENATE l_char l_char1 l_spch INTO l_char.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;l_pos = l_pos + l_no.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;ENDDO.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Check remaining length&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;l_len1 = l_len - l_pos.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;IF l_len1 &gt; 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Storing remaining characters&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;l_char1 = l_srt+l_pos(l_len1).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;  &lt;/span&gt;CONCATENATE l_char l_char1&lt;span style=""&gt;  &lt;/span&gt;INTO l_char.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;CONDENSE l_char NO-GAPS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   lang="PT-BR" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display original string&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;write /.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;WRITE : 'Original String:',&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;          &lt;/span&gt;l_srt.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;l_srt = l_char.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:blue;"   &gt;* Display modified string&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;write /.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;WRITE : 'Modified String :',&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;&lt;span style=""&gt;          &lt;/span&gt;l_srt.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:9;color:black;"   &gt;.&lt;/span&gt;&lt;b style=""&gt;&lt;span style="" lang="SV"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="" lang="SV"&gt;Selection screen:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMk5KrfvpSI/AAAAAAAAAIk/VukTHr66rvk/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMk5KrfvpSI/AAAAAAAAAIk/VukTHr66rvk/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5244786096686998818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="" lang="SV"&gt;Output:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMk5PdNZ1ZI/AAAAAAAAAIs/RePsxnb5Uwk/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMk5PdNZ1ZI/AAAAAAAAAIs/RePsxnb5Uwk/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5244786178751321490" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b style=""&gt;&lt;span style="" lang="SV"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4380585962860400396?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4380585962860400396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4380585962860400396&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4380585962860400396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4380585962860400396'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/insert-separator-in-string-after.html' title='Insert separator in a string after specified position'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_OG4xeUsph1w/SMk5KrfvpSI/AAAAAAAAAIk/VukTHr66rvk/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-652918091086554551</id><published>2008-09-11T02:45:00.000-07:00</published><updated>2008-09-12T04:36:05.145-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Creating dynamic variant using table TVARV</title><content type='html'>By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Let us say for the given selection screen we need to create a dynamic variant.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjo5gqah6I/AAAAAAAAAHM/bb2AVKjc32k/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjo5gqah6I/AAAAAAAAAHM/bb2AVKjc32k/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5244697840790964130" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step 1.&lt;/b&gt; First maintain a variable with values in table TVARV. This can be done from transaction STVARV. Later this variable needs to be assigned to the variant.&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjpF_0tDYI/AAAAAAAAAHU/HSYwzAj7sMg/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjpF_0tDYI/AAAAAAAAAHU/HSYwzAj7sMg/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5244698055314050434" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step 2.&lt;/b&gt; Next create the dynamic variant by pressing the SAVE button on the selection screen.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjpSXhOpFI/AAAAAAAAAHc/7BGGJWit1ic/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjpSXhOpFI/AAAAAAAAAHc/7BGGJWit1ic/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5244698267833246802" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;In the next screen (ABAP: Save as Variant) enter Variant name, description, set the ‘Selection variable’(L) radio button and&lt;span style=""&gt;  &lt;/span&gt;press ‘Selection variable’ push button.&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SMjpjUjw89I/AAAAAAAAAHk/FgzW6rvtTYw/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SMjpjUjw89I/AAAAAAAAAHk/FgzW6rvtTYw/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5244698559096353746" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;In the next screen check that green traffic light is on under column T (T: Table variable from TVARV). Then click on &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjp7Wd1z0I/AAAAAAAAAHs/7s3BpexFkss/s1600-h/10.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjp7Wd1z0I/AAAAAAAAAHs/7s3BpexFkss/s400/10.jpg" alt="" id="BLOGGER_PHOTO_ID_5244698971925237570" border="0" /&gt;&lt;/a&gt; &lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:12pt;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png" title=""&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt; &lt;/span&gt;button.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqKENj-MI/AAAAAAAAAH0/Q4f5QvwjVAI/s1600-h/5.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqKENj-MI/AAAAAAAAAH0/Q4f5QvwjVAI/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5244699224723159234" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;Now from the popup select the variable name created in Step1 and save the variant.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqbywkJ9I/AAAAAAAAAH8/QZNp0fny5B4/s1600-h/6.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqbywkJ9I/AAAAAAAAAH8/QZNp0fny5B4/s400/6.jpg" alt="" id="BLOGGER_PHOTO_ID_5244699529275779026" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqf2BcwbI/AAAAAAAAAIE/xUvgm91m3QA/s1600-h/7.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjqf2BcwbI/AAAAAAAAAIE/xUvgm91m3QA/s400/7.jpg" alt="" id="BLOGGER_PHOTO_ID_5244699598871380402" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Step 3.&lt;/b&gt; Select the variant from Variant catalog.&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjqvFNktVI/AAAAAAAAAIM/h7Rz4RS35hg/s1600-h/8.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjqvFNktVI/AAAAAAAAAIM/h7Rz4RS35hg/s400/8.jpg" alt="" id="BLOGGER_PHOTO_ID_5244699860646802770" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;It will populate ‘Airline’ select-option with the values maintained in TVARV table against variable ZAIRLINE_CODE.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjq_tW4mII/AAAAAAAAAIU/FIzgvU0GxSI/s1600-h/9.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjq_tW4mII/AAAAAAAAAIU/FIzgvU0GxSI/s400/9.jpg" alt="" id="BLOGGER_PHOTO_ID_5244700146301180034" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-652918091086554551?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/652918091086554551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=652918091086554551&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/652918091086554551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/652918091086554551'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/creating-dynamic-variant-using-table.html' title='Creating dynamic variant using table TVARV'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_OG4xeUsph1w/SMjo5gqah6I/AAAAAAAAAHM/bb2AVKjc32k/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-2152790881619867137</id><published>2008-09-11T02:17:00.000-07:00</published><updated>2008-09-12T04:36:35.906-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Global Macro</title><content type='html'>By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;br /&gt;Kolkata&lt;/st1:city&gt;, &lt;st1:country-region&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;.&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Most of the time we define macro in our program by DEFINE … END-OF-DEFINITION statement.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Ex:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;DEFINE &lt;span style=""&gt;&lt;/span&gt;&lt;name&gt;&lt;/name&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;macro_name&lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;name&gt;&lt;name&gt;&lt;span style=""&gt;                         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/name&gt;&lt;/name&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Statement……&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Statement …..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;………………..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;END-OF-DEFINITION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;And this macro can be called in the following way&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;name&gt; &lt;span style=""&gt; &lt;/span&gt;&lt;/name&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;span style="font-style: italic;"&gt;macro_name &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  lang="DA" &gt;par1 par2 …par9.&lt;span style=""&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;“par1… par9 = Parameters, separated by spaces&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;This above definition is local to the program where it is defined i.e. we cannot call this macro from another program. But we can create global macro that can be called by any program.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Global macro can be created by maintaining entries in table TRMAC.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SMjiovM3HYI/AAAAAAAAAGc/XzkZiM_4H58/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SMjiovM3HYI/AAAAAAAAAGc/XzkZiM_4H58/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5244690955565997442" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Most popular example of standard global (system) macro is BREAK which is defined in table TRMAC as shown in the screen shot below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SMji0oezLKI/AAAAAAAAAGk/9cYXc9SLh90/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SMji0oezLKI/AAAAAAAAAGk/9cYXc9SLh90/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5244691159920618658" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;From any program we can call this macro as:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  lang="DA" &gt;BREAK&lt;span style=""&gt;  &lt;/span&gt;&lt;user style="font-style: italic;" id=""&gt;&lt;/user&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:Arial;font-size:11;"  lang="DA" &gt;user_id&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  lang="DA" &gt;&lt;user id=""&gt;. “&lt;user id=""&gt; &lt;/user&gt;&lt;/user&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:Arial;font-size:11;"  lang="DA" &gt;user_id&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:11;"  lang="DA" &gt;&lt;user id=""&gt;&lt;user id=""&gt; = placeholder for userid &lt;o:p&gt;&lt;/o:p&gt;&lt;/user&gt;&lt;/user&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;Similarly we can maintain our own global macro in TRMAC as shown below:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;Add new entry to TRMAC&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjjIXwx4dI/AAAAAAAAAGs/eAM9DN0aXiI/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjjIXwx4dI/AAAAAAAAAGs/eAM9DN0aXiI/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5244691499030012370" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Create custom macro&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjjXxDMJNI/AAAAAAAAAG0/xL81WPty3x0/s1600-h/4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjjXxDMJNI/AAAAAAAAAG0/xL81WPty3x0/s400/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5244691763516155090" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Call this global macro from a report&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjjhqdJ0hI/AAAAAAAAAG8/3WcL68b2A-I/s1600-h/5.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjjhqdJ0hI/AAAAAAAAAG8/3WcL68b2A-I/s400/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5244691933544698386" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;Output:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjjs42zV5I/AAAAAAAAAHE/f1wl8nmgkBo/s1600-h/6.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjjs42zV5I/AAAAAAAAAHE/f1wl8nmgkBo/s400/6.jpg" alt="" id="BLOGGER_PHOTO_ID_5244692126388934546" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:11;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;b style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-2152790881619867137?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/2152790881619867137/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=2152790881619867137&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/2152790881619867137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/2152790881619867137'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/global-macro.html' title='Global Macro'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/SMjiovM3HYI/AAAAAAAAAGc/XzkZiM_4H58/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-8488185245431863827</id><published>2008-09-11T01:55:00.000-07:00</published><updated>2008-09-12T04:37:27.688-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Dynamic selection screen with list box</title><content type='html'>By Joyjit Ghosh,&lt;span style="" lang="SV"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="" lang="SV"&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;b style=""&gt;Code:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;                &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_DYNAMIC_SCREEN&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_dynamic_screen.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;TYPE-POOLS: vrm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;DATA: name TYPE vrm_id, list TYPE vrm_values, value LIKE LINE OF list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;TABLES: sscrfields.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;* Selection screen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* List box&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;PARAMETERS: ps_parm AS LISTBOX VISIBLE LENGTH 10&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                          &lt;/span&gt;USER-COMMAND abc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;* Radio buttons&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;PARAMETERS: rb1 RADIOBUTTON GROUP ab MODIF ID &lt;b style=""&gt;bl2&lt;/b&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;rb2 RADIOBUTTON GROUP ab MODIF ID &lt;b style=""&gt;bl2&lt;/b&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;rb3 RADIOBUTTON GROUP ab MODIF ID &lt;b style=""&gt;bl3&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;INITIALIZATION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;* Populate list box values&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;name = 'PS_PARM'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;value-key = '1'. value-text = 'Line 1'. APPEND value TO list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;value-key = '2'. value-text = 'Line 2'. APPEND value TO list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;AT SELECTION-SCREEN OUTPUT.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;* Set list box with value&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'VRM_SET_VALUES'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;id&lt;span style=""&gt;     &lt;/span&gt;= name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;values = list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;* Control the display of screen components&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;st1:place&gt;&lt;span style=""&gt;LOOP&lt;/span&gt;&lt;/st1:place&gt;&lt;span style=""&gt; AT SCREEN.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;IF ps_parm = 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;IF screen-name = 'RB1' OR screen-name = 'RB2' .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;screen-invisible = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ELSEIF screen-name = 'RB3'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;screen-invisible = 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;MODIFY SCREEN.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;ELSEIF ps_parm = 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;IF screen-name = 'RB1' OR screen-name = 'RB2' .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;screen-invisible = 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ELSEIF screen-name = 'RB3'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;screen-invisible = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;MODIFY SCREEN.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;ELSEIF ps_parm = space.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;rb1 = 'X'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;clear: rb2,rb3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;IF screen-name = 'RB1' OR screen-name = 'RB2' OR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;screen-name = 'RB3'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;screen-invisible = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;MODIFY SCREEN.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDLOOP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;AT SELECTION-SCREEN.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF sscrfields-ucomm = 'ABC'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;START-OF-SELECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;WRITE: / 'Parameter:', ps_parm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;Selection screen:&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjdwLlH-JI/AAAAAAAAAGE/JyJQrLxwkRo/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SMjdwLlH-JI/AAAAAAAAAGE/JyJQrLxwkRo/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5244685585884903570" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjd4MxkexI/AAAAAAAAAGM/5mGR1g19uDg/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_OG4xeUsph1w/SMjd4MxkexI/AAAAAAAAAGM/5mGR1g19uDg/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5244685723644492562" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjeBWCBmAI/AAAAAAAAAGU/atA5vE007Rs/s1600-h/3.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SMjeBWCBmAI/AAAAAAAAAGU/atA5vE007Rs/s400/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5244685880748251138" border="0" /&gt;&lt;/a&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-8488185245431863827?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/8488185245431863827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=8488185245431863827&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8488185245431863827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/8488185245431863827'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/09/dynamic-selection-screen-with-list-box.html' title='Dynamic selection screen with list box'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_OG4xeUsph1w/SMjdwLlH-JI/AAAAAAAAAGE/JyJQrLxwkRo/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-4582592889155939723</id><published>2008-07-31T08:15:00.000-07:00</published><updated>2008-09-12T04:38:06.906-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using class'/><title type='text'>Simple ALV GRID (Full screen)</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;By Joyjit Ghosh,&lt;span style="" lang="SV"&gt;&lt;br /&gt;&lt;/span&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;span style="" lang="SV"&gt;Kolkata&lt;/span&gt;&lt;/st1:city&gt;&lt;span style="" lang="SV"&gt;, &lt;/span&gt;&lt;st1:country-region&gt;&lt;span style="" lang="SV"&gt;India&lt;/span&gt;&lt;/st1:country-region&gt;&lt;/st1:place&gt;&lt;span style="" lang="SV"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;REPORT  z_alv_object_1.&lt;br /&gt;&lt;br /&gt;DATA: i_mara TYPE STANDARD TABLE OF mara.&lt;br /&gt;DATA: dref TYPE REF TO cl_salv_table.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Start-of-selection event&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;* Fetch data from database&lt;br /&gt;SELECT * FROM mara&lt;br /&gt;INTO TABLE i_mara&lt;br /&gt;UP TO 100 ROWS.&lt;br /&gt;&lt;br /&gt;CHECK sy-subrc = 0.&lt;br /&gt;&lt;br /&gt;* Get the ALV instance&lt;br /&gt;TRY.&lt;br /&gt;  CALL METHOD cl_salv_table=&gt;factory&lt;br /&gt;*   EXPORTING&lt;br /&gt;*    list_display   = IF_SALV_C_BOOL_SAP=&gt;TRUE&lt;br /&gt;*     r_container    =&lt;br /&gt;*     container_name =&lt;br /&gt;    IMPORTING&lt;br /&gt;      r_salv_table   = dref&lt;br /&gt;    CHANGING&lt;br /&gt;      t_table        = i_mara&lt;br /&gt;      .&lt;br /&gt;CATCH cx_salv_msg .&lt;br /&gt;  MESSAGE i000(z_zzz_ca_messages)&lt;br /&gt;  WITH 'Error in ALV processing'(001).&lt;br /&gt;&lt;br /&gt;  LEAVE LIST-PROCESSING.&lt;br /&gt;ENDTRY.&lt;br /&gt;&lt;br /&gt;IF dref IS BOUND.&lt;br /&gt;&lt;br /&gt;*   Display AlV report&lt;br /&gt;CALL METHOD dref-&gt;display( ).&lt;br /&gt;&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-4582592889155939723?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/4582592889155939723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=4582592889155939723&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4582592889155939723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/4582592889155939723'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/07/simple-alv-grid-full-screen.html' title='Simple ALV GRID (Full screen)'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6297091641181966894</id><published>2008-07-30T13:10:00.000-07:00</published><updated>2008-09-12T04:38:36.159-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP General'/><title type='text'>Execute report from sap mail</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:11;"&gt;By Joyjit Ghosh, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span lang="SV"  style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Kolkata, India.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  Z_DEMO_MAIL&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;REPORT  z_demo_mail.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Global data declaration&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;DATA:&lt;br /&gt;w_document_data LIKE  sodocchgi1.&lt;br /&gt;&lt;br /&gt;DATA:&lt;br /&gt;i_object_header TYPE STANDARD TABLE OF solisti1,&lt;br /&gt;w_object_header TYPE solisti1,&lt;br /&gt;&lt;br /&gt;i_object_content TYPE STANDARD TABLE OF solisti1,&lt;br /&gt;w_object_content TYPE solisti1,&lt;br /&gt;&lt;br /&gt;i_contents_hex TYPE STANDARD TABLE OF solix,&lt;br /&gt;w_contents_hex TYPE solix,&lt;br /&gt;&lt;br /&gt;i_object_para TYPE STANDARD TABLE OF  soparai1,&lt;br /&gt;w_object_para TYPE soparai1,&lt;br /&gt;&lt;br /&gt;i_object_parb TYPE STANDARD TABLE OF soparbi1,&lt;br /&gt;w_object_parb TYPE soparbi1,&lt;br /&gt;&lt;br /&gt;i_receivers TYPE STANDARD TABLE OF  somlreci1,&lt;br /&gt;w_receivers TYPE somlreci1.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Selection screen&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;PARAMETER : uname TYPE syuname DEFAULT sy-uname.&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Start-of-selection event&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;* Populate receiver info&lt;br /&gt;clear: w_receivers.&lt;br /&gt;w_receivers-receiver = uname.&lt;br /&gt;w_receivers-rec_type = 'B'.&lt;br /&gt;append w_receivers to i_receivers.&lt;br /&gt;&lt;br /&gt;* Populate header data&lt;br /&gt;w_document_data-obj_name = 'Your action required'.&lt;br /&gt;w_document_data-obj_descr = 'Pl. press execute button'.&lt;br /&gt;w_document_data-sensitivty = 'O'.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;w_document_data-proc_type = 'R'.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;w_document_data-proc_name = 'RSINCL00'.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;* Populate mail content&lt;br /&gt;clear: w_object_content.&lt;br /&gt;concatenate 'Please execute report: '&lt;br /&gt;w_document_data-proc_name&lt;br /&gt;into w_object_content-line separated by space.&lt;br /&gt;append w_object_content to i_object_content.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'&lt;br /&gt;EXPORTING&lt;br /&gt;document_data                    = w_document_data&lt;br /&gt;DOCUMENT_TYPE                    = 'RAW'&lt;br /&gt;*   PUT_IN_OUTBOX                    = ' '&lt;br /&gt;*   COMMIT_WORK                      = ' '&lt;br /&gt;* IMPORTING&lt;br /&gt;*   SENT_TO_ALL                      =&lt;br /&gt;*   NEW_OBJECT_ID                    =&lt;br /&gt;tables&lt;br /&gt;*   OBJECT_HEADER                    =&lt;br /&gt;OBJECT_CONTENT                   = i_object_content&lt;br /&gt;*   CONTENTS_HEX                     =&lt;br /&gt;OBJECT_PARA                      = i_object_para&lt;br /&gt;*   OBJECT_PARB                      =&lt;br /&gt;receivers                        = i_receivers&lt;br /&gt;EXCEPTIONS&lt;br /&gt;TOO_MANY_RECEIVERS               = 1&lt;br /&gt;DOCUMENT_NOT_SENT                = 2&lt;br /&gt;DOCUMENT_TYPE_NOT_EXIST          = 3&lt;br /&gt;OPERATION_NO_AUTHORIZATION       = 4&lt;br /&gt;PARAMETER_ERROR                  = 5&lt;br /&gt;X_ERROR                          = 6&lt;br /&gt;ENQUEUE_ERROR                    = 7&lt;br /&gt;OTHERS                           = 8&lt;br /&gt;    .&lt;br /&gt;IF sy-subrc = 0.&lt;br /&gt;message s000(z_zzz_ca_messages)&lt;br /&gt;with 'Mail send successfully'(001).&lt;br /&gt;ENDIF.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;span lang="SV"  style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-6297091641181966894?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/6297091641181966894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=6297091641181966894&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6297091641181966894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/6297091641181966894'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/07/execute-report-from-sap-office-mail.html' title='Execute report from sap mail'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-5743623149036963089</id><published>2008-07-27T03:06:00.000-07:00</published><updated>2008-09-12T04:39:02.725-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Changing font style in ALV</title><content type='html'>By Joyjit Ghosh,&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Kolkata, India.&lt;o:p&gt;&lt;/o:p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;By using the Function Module &lt;span style="color:black;"&gt;REUSE_ALV_GRID_DISPLAY_LVC we can change the font style in ALV report.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: bold;"&gt;Example:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;  &lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style="" lang="DE"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;*&amp;amp; Report&lt;span style=""&gt;  &lt;/span&gt;Z_DEMO_ALV_JG&lt;span style=""&gt;                                               &lt;/span&gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;span style=""&gt;                                                                    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;*&amp;amp;---------------------------------------------------------------------&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;REPORT&lt;span style=""&gt;  &lt;/span&gt;z_demo_alv_jg&lt;span style=""&gt;                           &lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DE"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Include for all style values&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style="font-weight: bold;"&gt;INCLUDE &lt;&lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;cl_alv_control&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&gt;.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Internal table for final output data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;DATA: i_flight TYPE STANDARD TABLE OF sflight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Internal table for field catalog info&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;DATA: i_fields TYPE lvc_t_fcat.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Field symbol for field catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;FIELD-SYMBOLS: &lt;&lt;span style="font-style: italic;"&gt;wa_fields&lt;/span&gt;&gt; TYPE lvc_s_fcat.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Select data&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;SELECT * FROM sflight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;INTO TABLE i_flight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;UP TO 100 ROWS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Get field catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;   &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_structure_name&lt;span style=""&gt;             &lt;/span&gt;= 'SFLIGHT'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;CHANGING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ct_fieldcat&lt;span style=""&gt;                  &lt;/span&gt;= i_fields&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;   &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;inconsistent_interface&lt;span style=""&gt;       &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;program_error&lt;span style=""&gt;                &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;OTHERS&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;                 &lt;/span&gt;= 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&lt;span style=""&gt;   &lt;/span&gt;Changing the style of field catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;LOOP AT i_fields ASSIGNING &lt;&lt;span style="font-style: italic;"&gt;wa_fields&lt;/span&gt;&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;IF sy-tabix &gt; 4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;&lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;wa_fields&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&gt;-style&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;  &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;=&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;  &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;ALV_STYLE_FONT_ITALIC.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="" lang="DA"&gt;ELSE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DA"&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;&lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;wa_fields&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&gt;-style&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;  &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;= &lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;ALV_STYLE_FONT_BOLD.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DA"&gt;&lt;span style=""&gt;      &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DA"&gt;&lt;span style=""&gt;    &lt;/span&gt;ENDLOOP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DA"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="" lang="DA"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Calling the FM to display ALV report&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_structure_name = 'SFLIGHT'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_grid_title&lt;span style=""&gt;     &lt;/span&gt;= 'Style demo'(001)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;it_fieldcat_lvc&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;  &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;= i_fields&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;t_outtab&lt;span style=""&gt;         &lt;/span&gt;= i_flight&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;program_error&lt;span style=""&gt;    &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;OTHERS&lt;span style=""&gt;           &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF sy-subrc &lt;&gt; 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;         &lt;/span&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;Output:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_OG4xeUsph1w/SIxJ6gTAmRI/AAAAAAAAAF8/3QPSx1j649c/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_OG4xeUsph1w/SIxJ6gTAmRI/AAAAAAAAAF8/3QPSx1j649c/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5227634536921209106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-5743623149036963089?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/5743623149036963089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=5743623149036963089&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5743623149036963089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/5743623149036963089'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/07/changing-font-style-in-alv.html' title='Changing font style in ALV'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_OG4xeUsph1w/SIxJ6gTAmRI/AAAAAAAAAF8/3QPSx1j649c/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-1058084888764398082</id><published>2008-07-26T02:20:00.000-07:00</published><updated>2008-09-12T04:39:31.582-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Add custom sub-menu in ALV context menu</title><content type='html'>By Joyjit Ghosh,&lt;o:p&gt;&lt;/o:p&gt;&lt;st1:place&gt;&lt;st1:city&gt;&lt;br /&gt;Kolkata&lt;/st1:city&gt;, &lt;st1:country-region&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;.&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:11;"&gt;Code:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;  &lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;REPORT z_alv_context_menu NO STANDARD PAGE HEADING.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Type pool declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;TYPE-POOLS: slis.&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Internal table declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;DATA: BEGIN OF gt_outtab OCCURS 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;INCLUDE STRUCTURE sflight.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;DATA: END OF gt_outtab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;data: gt_events&lt;span style=""&gt;       &lt;/span&gt;TYPE slis_t_event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;**********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Structure / Variable declaration&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;**********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;DATA: g_repid&lt;span style=""&gt;         &lt;/span&gt;LIKE sy-repid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="" lang="DA"&gt;event&lt;span style=""&gt;           &lt;/span&gt;TYPE slis_alv_event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;**********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Event: START-OF-SELECTION&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;**********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;START-OF-SELECTION.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Storing the program name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;g_repid = sy-repid.&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Building ALV event table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_list_type&lt;span style=""&gt;     &lt;/span&gt;= 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;IMPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;et_events&lt;span style=""&gt;       &lt;/span&gt;= gt_events&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;list_type_wrong = 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;OTHERS&lt;span style=""&gt;          &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;REFRESH gt_events.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&lt;span style=""&gt;   &lt;/span&gt;Adding records for CONTEXT_MENU event&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;event-name = 'CONTEXT_MENU'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;event-form = 'CONTEXT_MENU'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;APPEND event TO gt_events.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;* Data Selection&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style=""&gt;&lt;br /&gt;&lt;/span&gt;SELECT * FROM sflight INTO CORRESPONDING FIELDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                   &lt;/span&gt;OF TABLE gt_outtab&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                   &lt;/span&gt;UP TO 00030 ROWS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Display ALV grid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;i_callback_html_top_of_page = 'HTML_TOP_OF_PAGE'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_callback_program&lt;span style=""&gt;          &lt;/span&gt;= g_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_callback_user_command&lt;span style=""&gt;     &lt;/span&gt;= 'USER_COMMAND'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;i_structure_name&lt;span style=""&gt;            &lt;/span&gt;= 'SFLIGHT'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;it_events&lt;span style=""&gt;                   &lt;/span&gt;= gt_events&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;TABLES&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;t_outtab&lt;span style=""&gt;                    &lt;/span&gt;= gt_outtab&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXCEPTIONS&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;program_error&lt;span style=""&gt;               &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;OTHERS&lt;span style=""&gt;                      &lt;/span&gt;= 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF sy-subrc &lt;&gt; 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;         &lt;/span&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* FORM html_top_of_page&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;FORM html_top_of_page USING top TYPE REF TO cl_dd_document.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL METHOD top-&gt;add_text&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;text&lt;span style=""&gt;      &lt;/span&gt;= 'Hello world '&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;sap_style = 'heading'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL METHOD top-&gt;add_gap&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;width = 200.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CALL METHOD top-&gt;add_picture&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;picture_id = 'ENJOYSAP_LOGO'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;ENDFORM.&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;"html_top_of_page&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Form&lt;span style=""&gt;  &lt;/span&gt;context_menu&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;FORM context_menu USING e_object TYPE REF TO cl_ctmenu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;DATA: l_smenu TYPE REF TO cl_ctmenu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;IF e_object IS BOUND.&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&lt;span style=""&gt;   &lt;/span&gt;Create custom Sub-menu to hide column on which right&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;   &lt;/span&gt;mouse button will be clicked&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;CREATE OBJECT l_smenu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;CALL METHOD l_smenu-&gt;add_function&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;fcode = 'ZFN1'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;text&lt;span style=""&gt;  &lt;/span&gt;= 'Hide Column'(001).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;CALL METHOD e_object-&gt;add_submenu&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;menu = l_smenu&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;text = 'Hide'(002).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;"CONTEXT_MENU&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;* Form&lt;span style=""&gt;  &lt;/span&gt;user_command&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;***********************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;FORM user_command&lt;span style=""&gt;  &lt;/span&gt;USING r_ucomm TYPE sy-ucomm&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                         &lt;/span&gt;ls_selfield TYPE slis_selfield.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;DATA: g_grid TYPE REF TO cl_gui_alv_grid,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;t_catalog TYPE lvc_t_fcat,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;w_catalog TYPE lvc_s_fcat,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;l_repid&lt;span style=""&gt;  &lt;/span&gt;TYPE sy-repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;CASE r_ucomm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;*&lt;span style=""&gt;   &lt;/span&gt;When 'hide column' sub-menu is clicked from the context menu&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;   &lt;/span&gt;then hide the column from where this is happened&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;WHEN 'ZFN1'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&lt;span style=""&gt;     &lt;/span&gt;Get the global instance of the ALV grid as well as&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;     &lt;/span&gt;it's field catalog info.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;     &lt;/span&gt;CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'&lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt;&lt;br /&gt;    &lt;/span&gt;IMPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;          &lt;/span&gt;e_callback_program = l_repid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;          &lt;/span&gt;e_grid&lt;span style=""&gt;             &lt;/span&gt;= g_grid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;          &lt;/span&gt;et_fieldcat_lvc&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;= t_catalog.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;CHECK l_repid = g_repid.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;IF g_grid IS BOUND AND t_catalog[] IS NOT INITIAL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;*&lt;span style=""&gt;       &lt;/span&gt;Set the 'NO_OUT' attribute of the catalog to 'X'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;w_catalog-no_out = 'X'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;*&lt;span style=""&gt;       &lt;/span&gt;Modify the field with this above value&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;*&lt;span style=""&gt;       &lt;/span&gt;on which right click occured&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;MODIFY t_catalog FROM w_catalog TRANSPORTING no_out&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;WHERE fieldname = ls_selfield-fieldname.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;IF sy-subrc = 0.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;*&lt;span style=""&gt;         &lt;/span&gt;Set the field catalog with this modified one&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style=""&gt;          &lt;/span&gt;CALL METHOD g_grid-&gt;set_frontend_fieldcatalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;EXPORTING&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;              &lt;/span&gt;it_fieldcatalog = t_catalog.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;      &lt;/span&gt;ENDIF.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;WHEN OTHERS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;* Do nothing&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ENDCASE.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;ls_selfield-refresh = 'X'.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;ENDFORM.&lt;span style=""&gt;                    &lt;/span&gt;"USER_COMMAND&lt;/span&gt;&lt;b&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;b style=""&gt;Output:&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_OG4xeUsph1w/SIruKfOyAeI/AAAAAAAAAFs/lf-GQd7vnOM/s1600-h/1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_OG4xeUsph1w/SIruKfOyAeI/AAAAAAAAAFs/lf-GQd7vnOM/s400/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5227252181466481122" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_OG4xeUsph1w/SIruS2Eeq-I/AAAAAAAAAF0/HTvLFlXlB2U/s1600-h/2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_OG4xeUsph1w/SIruS2Eeq-I/AAAAAAAAAF0/HTvLFlXlB2U/s400/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5227252325036239842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:11;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6918658615822881510-1058084888764398082?l=joyjitghosh.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://joyjitghosh.blogspot.com/feeds/1058084888764398082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6918658615822881510&amp;postID=1058084888764398082&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1058084888764398082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6918658615822881510/posts/default/1058084888764398082'/><link rel='alternate' type='text/html' href='http://joyjitghosh.blogspot.com/2008/07/add-custom-sub-menu-in-alv-context-menu.html' title='Add custom sub-menu in ALV context menu'/><author><name>Joyjit Ghosh</name><uri>http://www.blogger.com/profile/07995299137388039785</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://2.bp.blogspot.com/_OG4xeUsph1w/SwrcaDwhesI/AAAAAAAAAYE/MI1exW-m6_Y/S220/joyjit.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_OG4xeUsph1w/SIruKfOyAeI/AAAAAAAAAFs/lf-GQd7vnOM/s72-c/1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6918658615822881510.post-6520616040630744385</id><published>2008-07-26T01:46:00.000-07:00</published><updated>2008-09-12T04:40:05.916-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALV using function module'/><title type='text'>Problem with ALV grid Top of Pag
