<?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-8634541958205365634</id><updated>2011-11-28T06:14:41.338+07:00</updated><category term='BASIS'/><category term='HR'/><category term='SD'/><category term='Archaving'/><category term='ARTICLE'/><category term='FI'/><category term='ABAP'/><category term='ALE'/><title type='text'>SAP-ABAP</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7942473344334627225</id><published>2010-10-24T17:14:00.001+07:00</published><updated>2010-10-24T17:15:53.931+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ALE'/><title type='text'>SAP ALE(Application Link Enabling</title><content type='html'>How to set ALE, look into the below links :&lt;br /&gt;&lt;br /&gt;http://www.youtube.com/watch?v=JyYiZY18WjI&amp;amp;feature=related&lt;br /&gt;http://www.youtube.com/watch?v=RXAK8iEcxkc&amp;amp;feature=related&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7942473344334627225?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7942473344334627225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/10/sap-aleapplication-link-enabling.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7942473344334627225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7942473344334627225'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/10/sap-aleapplication-link-enabling.html' title='SAP ALE(Application Link Enabling'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-3225278814679001686</id><published>2010-07-03T11:24:00.000+07:00</published><updated>2010-07-03T11:25:26.642+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Embed SAP View in an ABAP Program</title><content type='html'>Please read this link : &lt;a href="http://naveenvishal.wordpress.com/2009/07/27/embed-view-in-program/#more-472"&gt;http://naveenvishal.wordpress.com/2009/07/27/embed-view-in-program/#more-472&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-3225278814679001686?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/3225278814679001686/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/07/embed-sap-view-in-abap-program.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3225278814679001686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3225278814679001686'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/07/embed-sap-view-in-abap-program.html' title='Embed SAP View in an ABAP Program'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-8304459338143778377</id><published>2010-07-03T11:20:00.002+07:00</published><updated>2010-07-03T11:24:01.069+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Customize for maintenance view</title><content type='html'>Please follow the below steps  :&lt;br /&gt;&lt;br /&gt;- You create a VIEW MAINTENANCE TABLE for your table;&lt;br /&gt;- Generate a  Table Maintenance for this view (not for the table);&lt;br /&gt;- After  generating the Table Maintenance go to  Enviroment-&gt;Modification-&gt;Events&lt;br /&gt;&lt;br /&gt;Please refer this link for the detail events :&lt;br /&gt;&lt;a href="http://help.sap.com/saphelp_47x200/helpdata/en/91/ca9f0ea9d111d1a5690000e82deaaa/frameset.htm"&gt;http://help.sap.com/saphelp_47x200/helpdata/en/91/ca9f0ea9d111d1a5690000e82deaaa/frameset.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;help link :&lt;a href="http://forums.sdn.sap.com/message.jspa?messageID=1755550"&gt; http://forums.sdn.sap.com/message.jspa?messageID=1755550&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-8304459338143778377?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/8304459338143778377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/07/customize-for-maintenance-view.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8304459338143778377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8304459338143778377'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/07/customize-for-maintenance-view.html' title='Customize for maintenance view'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1376994938559306642</id><published>2010-07-03T09:31:00.000+07:00</published><updated>2010-07-03T09:34:14.698+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Hide and Unhide source code in ABAP</title><content type='html'>read this link : &lt;a href="http://naveenvishal.wordpress.com/2009/08/08/hide-source-code/"&gt;http://naveenvishal.wordpress.com/2009/08/08/hide-source-code/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1376994938559306642?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1376994938559306642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/07/hide-and-unhide-source-code-in-abap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1376994938559306642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1376994938559306642'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/07/hide-and-unhide-source-code-in-abap.html' title='Hide and Unhide source code in ABAP'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-5827679761884273381</id><published>2010-07-03T09:14:00.001+07:00</published><updated>2010-07-03T09:30:57.097+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Save Text for PO Notes</title><content type='html'>IF ls_theadtab-neu EQ 'X'.&lt;br /&gt;CALL FUNCTION 'INIT_TEXT'       &lt;br /&gt;  EXPORTING                     &lt;br /&gt;    id       = l_thead-tdid     &lt;br /&gt;    language = my_langu         &lt;br /&gt;    name     = l_thead-tdname   &lt;br /&gt;    object   = l_thead-tdobject &lt;br /&gt;  IMPORTING                     &lt;br /&gt;    header   = l_thead          &lt;br /&gt;  TABLES                        &lt;br /&gt;    lines    = lt_tline         &lt;br /&gt;  EXCEPTIONS                    &lt;br /&gt;    OTHERS   = 1.               &lt;br /&gt;CHECK sy-subrc IS INITIAL. &lt;br /&gt;    MOVE-CORRESPONDING l_thead TO ls_theadtab.   &lt;br /&gt;  ENDIF.                                         &lt;br /&gt;                                                 &lt;br /&gt;  LOOP AT im_textlines INTO l_textline.          &lt;br /&gt;    l_tline-tdformat = l_textline-tdformat.      &lt;br /&gt;    l_tline-tdline   = l_textline-tdline  .      &lt;br /&gt;    APPEND l_tline TO lt_tline.                  &lt;br /&gt;  ENDLOOP.                                       &lt;br /&gt;&lt;br /&gt;                                        &lt;br /&gt;   CALL FUNCTION 'SAVE_TEXT'            &lt;br /&gt;     EXPORTING                          &lt;br /&gt;       header   = l_thead               &lt;br /&gt;     IMPORTING                          &lt;br /&gt;       function = l_txfunction          &lt;br /&gt;     TABLES                             &lt;br /&gt;       lines    = lt_tline              &lt;br /&gt;     EXCEPTIONS                         &lt;br /&gt;       OTHERS   = 1.                    &lt;br /&gt;   CHECK sy-subrc IS INITIAL.           &lt;br /&gt;   ls_theadtab-neu = space.             &lt;br /&gt;   IF NOT l_txfunction IS INITIAL.      &lt;br /&gt;     CALL METHOD update_change_doc      &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;       EXPORTING                                    &lt;br /&gt;         im_tdid     = ls_theadtab-tdid             &lt;br /&gt;         im_tdspras  = ls_theadtab-tdspras          &lt;br /&gt;         im_function = l_txfunction.                &lt;br /&gt;     ls_theadtab-fixie = space.                     &lt;br /&gt;   ENDIF.                                           &lt;br /&gt;   MODIFY my_theadtab FROM ls_theadtab INDEX l_tabix.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; ELSE.                                                      &lt;br /&gt;                                                            &lt;br /&gt;   READ TABLE my_theadtab INTO ls_theadtab WITH KEY         &lt;br /&gt;                tdobject = my_text_manager_type-&gt;tdobject   &lt;br /&gt;                tdid     = l_textid.                        &lt;br /&gt;   CHECK sy-subrc IS INITIAL.                               &lt;br /&gt;   CALL METHOD delete_text                                  &lt;br /&gt;     EXPORTING                                              &lt;br /&gt;       im_tdid     = ls_theadtab-tdid                       &lt;br /&gt;       im_tdspras  = ls_theadtab-tdspras                    &lt;br /&gt;       im_tdobject = ls_theadtab-tdobject                   &lt;br /&gt;       im_tdname   = ls_theadtab-tdname.                    &lt;br /&gt;&lt;br /&gt;  ls_theadtab-neu = 'X'.                   &lt;br /&gt;  MODIFY TABLE my_theadtab FROM ls_theadtab.&lt;br /&gt;                                           &lt;br /&gt;ENDIF.                                     &lt;br /&gt;&lt;br /&gt;LMEREQF12&lt;br /&gt;&lt;br /&gt;id = 'B01'.&lt;br /&gt;language = E&lt;br /&gt;name = 0010012535&lt;br /&gt;object = EBANH&lt;br /&gt;&lt;br /&gt;related link : &lt;a href="http://iorboaz.blogspot.com/2007/05/sap-abap-putsave-text-in-sap.html"&gt;http://iorboaz.blogspot.com/2007/05/sap-abap-putsave-text-in-sap.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-5827679761884273381?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/5827679761884273381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/07/save-text-for-po-notes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5827679761884273381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5827679761884273381'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/07/save-text-for-po-notes.html' title='Save Text for PO Notes'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-5822442739320713504</id><published>2010-05-19T21:04:00.000+07:00</published><updated>2010-05-19T21:06:21.639+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Split text to be words</title><content type='html'>DATA: str1 TYPE string,&lt;br /&gt;      str2 TYPE string,&lt;br /&gt;      str3 TYPE string,&lt;br /&gt;      itab TYPE TABLE OF string with header Line,&lt;br /&gt;      text TYPE string.&lt;br /&gt;&lt;br /&gt;text = 'What a drag it is getting old'.&lt;br /&gt;&lt;br /&gt;*SPLIT text AT space INTO: str1 str2 str3,&lt;br /&gt;*                          TABLE itab.&lt;br /&gt;&lt;br /&gt;SPLIT text AT space INTO TABLE itab.&lt;br /&gt;break hcl_kamal1.&lt;br /&gt;&lt;br /&gt;LOOP AT itab.&lt;br /&gt; case SY-TABIX.&lt;br /&gt;   WHEN 1.&lt;br /&gt;    str1 = itab.&lt;br /&gt;   WHEN 2.&lt;br /&gt; ENDCASE.&lt;br /&gt;&lt;br /&gt;ENDLOOP.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-5822442739320713504?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/5822442739320713504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/05/split-text-to-be-words.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5822442739320713504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5822442739320713504'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/05/split-text-to-be-words.html' title='Split text to be words'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-2664897159468982230</id><published>2010-05-01T12:39:00.001+07:00</published><updated>2010-05-01T12:44:58.401+07:00</updated><title type='text'>t-code I18N</title><content type='html'>I18N is t-code for changing screen display from MS Word to Old screen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-2664897159468982230?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/2664897159468982230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/05/t-code-i18n.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/2664897159468982230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/2664897159468982230'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/05/t-code-i18n.html' title='t-code I18N'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-863107789014296577</id><published>2010-05-01T11:14:00.003+07:00</published><updated>2010-05-01T11:43:21.700+07:00</updated><title type='text'>List of tables for Stock Movement/Stock Card</title><content type='html'>List of tables for Stock Movement / Stock Card report :&lt;br /&gt;&lt;br /&gt;1. MBEW    : stock on hand per today&lt;br /&gt;2. MBEWH : stock on hand per period&lt;br /&gt;3. MKPF     : Material Document Header (Movement table header)&lt;br /&gt;4. MSEG     : Material Document Detail (Movement table Detail)&lt;br /&gt;5. MARA     : Material Master&lt;br /&gt;6. MAKT     : Material Description&lt;br /&gt;7. MARD     : Material Location Data&lt;br /&gt;&lt;br /&gt;List of report for Stock Movement / Stock Card report :&lt;br /&gt;&lt;br /&gt;1. MM60    : Material List&lt;br /&gt;2. MB5B     : Movement Stock per Location&lt;br /&gt;3. MC.9      : Movement Stock per Location&lt;br /&gt;4. MB51     : Material Document List&lt;br /&gt;5. MB52     : Warehouse stocks of Material Summary&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-863107789014296577?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/863107789014296577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/05/list-of-tables-for-stock-movementstock.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/863107789014296577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/863107789014296577'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/05/list-of-tables-for-stock-movementstock.html' title='List of tables for Stock Movement/Stock Card'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-692264656205868041</id><published>2010-04-29T08:33:00.010+07:00</published><updated>2010-04-29T09:39:29.580+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Task List table</title><content type='html'>Access for Task List table, as following :&lt;br /&gt;&lt;br /&gt;1. Using t-code CA03 (material) and will save to table :&lt;br /&gt;  MAPL (PLNTY,PLNNR,PLNAL)&lt;br /&gt;2. Using t-code IA03/IH03 (Equipment) and will save to table :&lt;br /&gt;  EAPL (PLNTY,PLNNR,PLNAL)&lt;br /&gt;3. Using t-code IA07 (General Maintenance Task List)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Related to other tables, as following :&lt;br /&gt;&lt;br /&gt;1. PLKO  (PLNTY,PLNNR,PLNAL)&lt;br /&gt;2. PLWP(PLNTY,PLNNR,PLNAL,PLNKN)&lt;br /&gt;2. PLAS   (PLNTY,PLNNR,PLNAL,PLNKN, LOKEZ  # Not equal to 'X' )&lt;br /&gt;3. PLPO  (PLNTY,PLNNR,PLNKN)&lt;br /&gt;4. PLMZ (PLNTY,PLNNR,PLNKN, LOKEZ  # Not equal to 'X', STLTY,STLNR, STLKN,    STLAL(alternatif BOM))&lt;br /&gt;5. STAS (STLTY,STLNR, STLAL,STLKN&lt;b&gt;,&lt;/b&gt;LKENZ&lt;b&gt; # &lt;/b&gt;"X")  =&gt; Alternatif BOM&lt;br /&gt;5. STPO( STLTY,STLNR, STLKN) --&gt;  STPO-IDNRK&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-692264656205868041?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/692264656205868041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2010/04/task-list-table.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/692264656205868041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/692264656205868041'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2010/04/task-list-table.html' title='Task List table'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4360947674962078378</id><published>2009-10-28T20:49:00.005+07:00</published><updated>2010-05-08T21:16:41.746+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Dynamic Code</title><content type='html'>Try this..We create the coding in the notepad then this program will compile the coding and running the coding. I call this program as ABAP Query Analyzer.&lt;br /&gt;&lt;br /&gt;*Dynamic manipulation of report programs&lt;br /&gt;*......................................................................&lt;br /&gt;*: Report  ZDYNAMICCODE                                               :&lt;br /&gt;*:.....................................................................&lt;br /&gt;*:   Execute ABAP from a PC file(.txt)                                :&lt;br /&gt;*:   Therefor allowing any abap code to be executed on any client     :&lt;br /&gt;*:   which contains this program                                      :&lt;br /&gt;*:                                                                    :&lt;br /&gt;*.....................................................................:&lt;br /&gt;REPORT  zdynamiccode                                                .&lt;br /&gt;&lt;br /&gt;TABLES rlgrap.&lt;br /&gt;&lt;br /&gt;*selection screen creation&lt;br /&gt;PARAMETER:       p_file(200) TYPE c,&lt;br /&gt;               p_temp(30)  TYPE c DEFAULT 'Z123TEMP_REPORT_FOR_CODE'.&lt;br /&gt;&lt;br /&gt;*data declaration&lt;br /&gt;DATA: it_tab TYPE filetable,&lt;br /&gt;    gd_subrc TYPE i,&lt;br /&gt;    answer TYPE c.&lt;br /&gt;&lt;br /&gt;TYPES: BEGIN OF t_abapcode,&lt;br /&gt;row(72) TYPE c,&lt;br /&gt;END OF t_abapcode.&lt;br /&gt;DATA: it_abapcode TYPE STANDARD TABLE OF t_abapcode INITIAL SIZE 0,&lt;br /&gt;    it_store    TYPE STANDARD TABLE OF t_abapcode INITIAL SIZE 0.&lt;br /&gt;&lt;br /&gt;DATA: filename TYPE  string.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;************************************************************************&lt;br /&gt;*AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;br /&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;br /&gt;*Selecting a File, plus inserting default file extension&lt;br /&gt;REFRESH: it_tab.&lt;br /&gt;CALL METHOD cl_gui_frontend_services=&gt;file_open_dialog&lt;br /&gt;  EXPORTING&lt;br /&gt;    window_title     = 'Select File'&lt;br /&gt;    default_filename = '*.txt'&lt;br /&gt;    multiselection   = ' '&lt;br /&gt;  CHANGING&lt;br /&gt;    file_table       = it_tab&lt;br /&gt;    rc               = gd_subrc.&lt;br /&gt;&lt;br /&gt;LOOP AT it_tab INTO p_file.&lt;br /&gt;ENDLOOP.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;************************************************************************&lt;br /&gt;*START-OF-SELECTION.&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;*move file name into a field with type compatable with FM&lt;br /&gt;filename = p_file.&lt;br /&gt;&lt;br /&gt;*upload file from PC&lt;br /&gt;CALL FUNCTION 'GUI_UPLOAD'&lt;br /&gt;  EXPORTING&lt;br /&gt;    filename                = filename&lt;br /&gt;  TABLES&lt;br /&gt;    data_tab                = it_abapcode&lt;br /&gt;  EXCEPTIONS&lt;br /&gt;    file_open_error         = 1&lt;br /&gt;    file_read_error         = 2&lt;br /&gt;    no_batch                = 3&lt;br /&gt;    gui_refuse_filetransfer = 4&lt;br /&gt;    invalid_type            = 5&lt;br /&gt;    no_authority            = 6&lt;br /&gt;    unknown_error           = 7&lt;br /&gt;    bad_data_format         = 8&lt;br /&gt;    header_not_allowed      = 9&lt;br /&gt;    separator_not_allowed   = 10&lt;br /&gt;    header_too_long         = 11&lt;br /&gt;    unknown_dp_error        = 12&lt;br /&gt;    access_denied           = 13&lt;br /&gt;    dp_out_of_memory        = 14&lt;br /&gt;    disk_full               = 15&lt;br /&gt;    dp_timeout              = 16&lt;br /&gt;    OTHERS                  = 17.&lt;br /&gt;IF sy-subrc EQ 0.&lt;br /&gt;*   Check if report name being used fro temorary code already exists as&lt;br /&gt;*   any code will be over written and lost&lt;br /&gt;  READ REPORT p_temp INTO it_store.&lt;br /&gt;  IF sy-subrc NE 0.&lt;br /&gt;*     Please note any existing code in the program will be lost!!!!&lt;br /&gt;    INSERT REPORT p_temp FROM it_abapcode.&lt;br /&gt;    SUBMIT (p_temp) AND RETURN.&lt;br /&gt;    DELETE REPORT p_temp.&lt;br /&gt;  ELSE.&lt;br /&gt;    CALL FUNCTION 'POPUP_TO_CONFIRM'&lt;br /&gt;      EXPORTING&lt;br /&gt;     text_question  = 'Report used to store temporary code already&lt;br /&gt;exists!!! Do you want to overwrite it?'&lt;br /&gt;     IMPORTING&lt;br /&gt;       answer                      = answer.&lt;br /&gt;    IF sy-subrc EQ 0.&lt;br /&gt;      IF answer EQ '1'. "yes&lt;br /&gt;*         Please note any existing code in the program will be lost!!!!&lt;br /&gt;        INSERT REPORT p_temp FROM it_abapcode.&lt;br /&gt;        SUBMIT (p_temp) AND RETURN.&lt;br /&gt;        DELETE REPORT p_temp.&lt;br /&gt;      ENDIF.&lt;br /&gt;    ENDIF.&lt;br /&gt;  ENDIF.&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;br /&gt;Source : http://www.sapdev.co.uk/tips/dynamic/dyn_prog.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-4360947674962078378?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4360947674962078378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/10/dynamic-code.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4360947674962078378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4360947674962078378'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/10/dynamic-code.html' title='Dynamic Code'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-3772699690500529956</id><published>2009-10-08T12:53:00.000+07:00</published><updated>2009-10-08T12:54:47.113+07:00</updated><title type='text'>ABAP Query</title><content type='html'>Step for create abap query :&lt;br /&gt;&lt;br /&gt;There are five steps for creating our own query for searching data based on keyword.&lt;br /&gt;&lt;br /&gt;1. Creation of user group.&lt;br /&gt;&lt;br /&gt;/NSQ03--- create user group---- write user group name &amp;amp; description.&lt;br /&gt;&lt;br /&gt;2. Creation of Infoset.&lt;br /&gt;&lt;br /&gt;/NSQ02 --- create Infoset---- write infoset name and description--- Select logical database--- select CKM.&lt;br /&gt;&lt;br /&gt;Create field group --- copy required parameters for under field group--- Generate infoset.&lt;br /&gt;&lt;br /&gt;3. Assignment of user group with Infoset.&lt;br /&gt;&lt;br /&gt;/NSQ03-- - enter user group and infoset--- select user group for assignment--- save.&lt;br /&gt;&lt;br /&gt;4. Creation of Query.&lt;br /&gt;&lt;br /&gt;/NSQ01--- create query ---- select infoset--- Basic list icon click--- go to MARA General Material --- select check box under column “list fields” &amp;amp; “selection fields” for each parameter selected in logical database set—Execute query--- copy “Repository data “ from system status.&lt;br /&gt;&lt;br /&gt;5. Creation of transaction code.&lt;br /&gt;&lt;br /&gt;/NSE93--- Create transaction code---- paste copied “Repository data” in program field--- creates the transaction code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-3772699690500529956?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/3772699690500529956/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/10/abap-query.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3772699690500529956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3772699690500529956'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/10/abap-query.html' title='ABAP Query'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6982520453970094985</id><published>2009-10-03T21:39:00.003+07:00</published><updated>2009-10-03T21:49:08.991+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Edit program in Production Server</title><content type='html'>Step to change program in Production server as following this :&lt;br /&gt;&lt;br /&gt;1. Open SE38 and search program LSTRDU34 then click Display button.&lt;br /&gt;2. Set breakpoint for line "IF sy-subrc NE 0".&lt;br /&gt;3. Open SE38 and search program LSTRDU44 then click display button.&lt;br /&gt;4. Set breakpoint for line "IF sy-subrc NE 0".&lt;br /&gt;5. Open SE38 and search program which you want to edit.&lt;br /&gt;6. Then click Change Button.&lt;br /&gt;7. It will run program LSTRDU34 and stop to the breakpoint..Then you must change the value sy-subrc = 0.&lt;br /&gt;8. After that click F8 button.&lt;br /&gt;9. CHANGE YOUR CODING.&lt;br /&gt;10. Then click Activate button.&lt;br /&gt;11. It will run program LSTRDU44 and stop to the breakpoint..Then you must change the value sy-subrc = 0.&lt;br /&gt;12. Click F8 button.&lt;br /&gt;13. You already change your coding.&lt;br /&gt;&lt;br /&gt;Note : Need authorization to change value in Debug mode.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6982520453970094985?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6982520453970094985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/10/edit-program-in-production-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6982520453970094985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6982520453970094985'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/10/edit-program-in-production-server.html' title='Edit program in Production Server'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-2854165257064248953</id><published>2009-09-14T20:59:00.001+07:00</published><updated>2009-09-14T21:03:42.916+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Tips for READ TABLE using BINARY SEARCH</title><content type='html'>When using BINARY SEARCH...DON'T FORGET TO SORT fields which are keys.&lt;br /&gt;Example :&lt;br /&gt;&lt;br /&gt;SORT tab_knvv_kunag BY &lt;span style="color: rgb(255, 0, 0);"&gt; kunnr vkorg vtweg spart&lt;/span&gt;.&lt;br /&gt;READ TABLE tab_knvv_kunag INTO rec_knvv_kunag WITH KEY &lt;span style="color: rgb(255, 0, 0);"&gt;kunnr&lt;/span&gt; = rec_header-kunag&lt;br /&gt;                                        &lt;span style="color: rgb(255, 0, 0);"&gt;vkorg&lt;/span&gt; = rec_header-vkorg&lt;br /&gt;                                        &lt;span style="color: rgb(255, 0, 0);"&gt;vtweg&lt;/span&gt; = rec_header-vtweg&lt;br /&gt;                                        &lt;span style="color: rgb(255, 0, 0);"&gt;spart&lt;/span&gt; = rec_header-spart BINARY SEARCH.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-2854165257064248953?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/2854165257064248953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/09/tips-for-read-table-using-binary-search.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/2854165257064248953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/2854165257064248953'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/09/tips-for-read-table-using-binary-search.html' title='Tips for READ TABLE using BINARY SEARCH'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-9140124443422257883</id><published>2009-07-30T21:11:00.002+07:00</published><updated>2009-07-30T21:12:25.644+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>unlock user's session</title><content type='html'>using t-code &lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 153, 102);"&gt;SM04&lt;/span&gt;&lt;/span&gt; to lock or unlock user's session.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-9140124443422257883?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/9140124443422257883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/unlock-users-session.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/9140124443422257883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/9140124443422257883'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/unlock-users-session.html' title='unlock user&apos;s session'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-5575526181847347084</id><published>2009-07-30T21:02:00.003+07:00</published><updated>2009-07-30T21:08:53.400+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Archaving'/><title type='text'>Archaving using t-code SARA</title><content type='html'>When we want to do the write process..we must maintain the document which want to archive..it is used the selection-screen..we can customize the selection-screen display. After we customize the selection-screen display...we must map between object name and the selection-screen display customizing with t-code (&lt;span style="font-weight: bold; color: rgb(255, 153, 0);"&gt;AOBJ&lt;/span&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-5575526181847347084?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/5575526181847347084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/archaving-using-t-code-sara.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5575526181847347084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5575526181847347084'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/archaving-using-t-code-sara.html' title='Archaving using t-code SARA'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1178254133081086779</id><published>2009-07-30T20:53:00.003+07:00</published><updated>2009-07-30T21:00:34.883+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FI'/><title type='text'>Clearing open items (G/L Account)</title><content type='html'>T-Code -&gt; Report for G/L Account open/clear items is FBL3N.&lt;br /&gt;&lt;br /&gt;T-Code -&gt;Clear G/L Account open items is F-03. This t-code is used for one by one clear items (manual).&lt;br /&gt;&lt;br /&gt;T-Code -&gt; Automatic Clear G/L Account open items is F.13.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1178254133081086779?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1178254133081086779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/clearing-open-items-gl-account.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1178254133081086779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1178254133081086779'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/clearing-open-items-gl-account.html' title='Clearing open items (G/L Account)'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-390621116119007522</id><published>2009-07-29T14:00:00.001+07:00</published><updated>2009-07-29T14:01:53.414+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>ABAP Code For a Progress BAR</title><content type='html'>Please find below code for displaying a progress bar in ABAP. Once you execute this code a progress bar will be displayed in the status bar. You need to manipulate the code in such a way so that it can be displayed in your program.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;REPORT ZEX_PROGRESSIND .&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;DATA: A LIKE SY-UCOMM.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;DO 100 TIMES.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;  DO 300 TIMES.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;    GET TIME.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;  ENDDO.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;  A(3) = SY-INDEX.A+3 = '%'.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;  CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;       EXPORTING&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;            PERCENTAGE = SY-INDEX&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;            TEXT       = A.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;ENDDO.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;WRITE: / 'Complete'.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;source : http://abaplovers.blogspot.com/2008/05/abap-code-for-progress-bar.html&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&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/8634541958205365634-390621116119007522?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/390621116119007522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/abap-code-for-progress-bar.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/390621116119007522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/390621116119007522'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/abap-code-for-progress-bar.html' title='ABAP Code For a Progress BAR'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6675444095153650098</id><published>2009-07-23T11:28:00.000+07:00</published><updated>2009-07-23T11:29:47.510+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HR'/><title type='text'>How to upload employee photo</title><content type='html'>&lt;p&gt;&lt;span style="color:#000000;"&gt;1. Create a number range for SAP Archive Link : &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;IMG-&gt;Basis Components-&gt;Basis Services-&gt;SAP Archive Link-&gt;Basic Settings-&gt;Maintain number ranges. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Tcode OANR. Create range 01 from 0000000001 to 9999999999 without the external number flag. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;2. Document type HRICOLFOTO must exist with document class JPG. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;IMG-&gt;Basis Components-&gt;Basis Services-&gt;SAP Archive Link-&gt;System Settings-&gt;Maintain document types. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Table TOAVE, Tcode OAC2. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;3. Document type HRICOLFOTO must be linked to object type PREL and IT0002. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;IMG-&gt;Personnel Management-&gt;Personnel Administration-&gt;Tools-&gt;Optical Archiving-&gt;Set up Optical Archiving in HR. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;View V_T585O, no Tcode. In all three columns there ara minuses, don’t put a flag in the check box. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;4. Check which content repository (Archive) is linked to document type HRICOLFOTO and object type PREL. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;IMG-&gt;Basis Components-&gt;Basis Services-&gt;SAP Archive Link-&gt;Basic Settings-&gt;Maintain Links. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Table TOAOM_C, Tcode OAC3 &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;5. Create this content repository with storage type FILE archive. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;IMG-&gt;Basis Components-&gt;Basis Services-&gt;SAP Archive Link-&gt;Basic Settings-&gt;Maintain content repositories. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Tcode OAC0 &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Storage type FILE archive can be attained by clicking on the field Storage type and clicking somewhere else in the screen with the right mouse button. Choose Possible entries and only then you get a list of all values. FILE Archive is entry number 08. Choose Version no. 0031 and Archive path something (e.g. C:\). &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;6. Link photo to personnel number. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Menu-&gt;Tools-&gt;Business Documents-&gt;Miscellaneous-&gt;Stored Documents. Tcode OAAD. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Click on the Create button. Business object PREL and Docyment type HRICOLFOTO. Click on create (fill in the right personnel number in the pop up and click Continue). Choose the photo (as a JPG file) from the place where it is saved (e.g. hard disk). SAP will notify that the Stored Document was created succesfully. Photo is visible via PA10, PA20, PA30, PA40. Double-click to magnify photo. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;To delete archived document : &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Tcode OAAD, click Find. In docyment type field select HRICOLFOTO and after execute you get a list of all documents. Select appropriate document and click on delete icon. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Don't forget to adjust IT0002 header!!!!&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Please also see SAP Note 488281.   Here's some of what it says: &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;1. The pictures (.jpg or .bmp) must be available on your PC. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;2. Start transaction OAAD. &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;3. Choose function 'documents -&gt; create' &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;4. Choose as business object 'PREL' and as document type 'HRICOLFOTO' &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;5. Push the create button &lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;6. Fill in the appropriate personnel number &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;This solution requires SAP Archivelink to be installed.&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Use SICF tcode that displays lot of services. Under sap --&gt; bc there is a service called content server interface. Activate this service. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Now Create the A2 repository with TCode OAC0. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;While creating the repository, keep the Document Area blank, Storage type as R/3 database, Rep. Sub-type will appear as Normal by default, Version No. as 0046 and in Contents table put 'SDOKCONT1' as the table name. &lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;This will set the config part. Now upload the picture using tcode OAAD.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000000;"&gt;Source : http://www.sap-img.com/human/how-to-upload-employee-photo.htm&lt;br /&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/8634541958205365634-6675444095153650098?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6675444095153650098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/how-to-upload-employee-photo.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6675444095153650098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6675444095153650098'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/how-to-upload-employee-photo.html' title='How to upload employee photo'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1991195244043547347</id><published>2009-07-23T11:21:00.002+07:00</published><updated>2009-07-23T11:25:15.979+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BASIS'/><title type='text'>t-code "SNote"</title><content type='html'>t-code 'SNote" is used for uploading or download sapnote..When there is error from sap..you must check in service.sap.com first..if there is patch/sap note then using this tcode to upload it..&lt;br /&gt;&lt;br /&gt;using menu GOTO/Upload Note...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1991195244043547347?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1991195244043547347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/t-code-snote.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1991195244043547347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1991195244043547347'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/t-code-snote.html' title='t-code &quot;SNote&quot;'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1512191722374764009</id><published>2009-07-05T22:29:00.001+07:00</published><updated>2009-07-06T10:17:10.961+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Moving Cursor to Next row by pressing Enter in Classical ALV</title><content type='html'>&lt;pre&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;&lt;span style="color: rgb(51, 255, 51);"&gt;This event will run when the user edits the column field then press the enter button.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;It is used for The edited ALV Grid.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; This code snippet shows how to use the classical ALV grid to&lt;br /&gt;*&amp;amp;   perform the excel like feature: Move cursor to next row by&lt;br /&gt;*&amp;amp;   pressing enter&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;&lt;br /&gt;REPORT ZTEST_NP_GRID_EDIT.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Data Declration&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;&lt;br /&gt;TYPE-POOLS: SLIS.&lt;br /&gt;*&lt;br /&gt;TYPES: BEGIN OF TY_SFLIGHT.&lt;br /&gt;INCLUDE TYPE SFLIGHT.&lt;br /&gt;TYPES: BOX TYPE CHAR1,&lt;br /&gt;     END  OF TY_SFLIGHT.&lt;br /&gt;*&lt;br /&gt;*&lt;br /&gt;DATA: GT_SFLIGHT TYPE TABLE OF TY_SFLIGHT.&lt;br /&gt;DATA: GS_LAYOUT  TYPE SLIS_LAYOUT_ALV.&lt;br /&gt;DATA: LT_EVTS    TYPE SLIS_T_EVENT,&lt;br /&gt;    LA_EVTS    LIKE LINE OF LT_EVTS.&lt;br /&gt;*&lt;br /&gt;DATA: GS_REPORT TYPE SY-CPROG,&lt;br /&gt;    GS_TITLE  TYPE LVC_TITLE.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Start of Selection&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;START-OF-SELECTION.&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Report&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  GS_REPORT = SY-CPROG.&lt;br /&gt;GS_TITLE  = 'Move Cursor to next row by pressing Enter'.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Selection.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  SELECT * FROM SFLIGHT&lt;br /&gt;       INTO CORRESPONDING FIELDS OF TABLE GT_SFLIGHT.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Layout&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  &lt;span style="color: rgb(255, 0, 0);"&gt;GS_LAYOUT-EDIT = 'X'.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Event for Data Changed&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;&lt;span style="color: rgb(255, 102, 102);"&gt;  LA_EVTS-NAME = 'DATA_CHANGED'.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 102);"&gt; LA_EVTS-FORM = 'GET_DATA_CHANGED'.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 102);"&gt; APPEND LA_EVTS TO LT_EVTS.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Call ABAP List Viewer (ALV)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;br /&gt;  EXPORTING&lt;br /&gt;    I_GRID_TITLE       = GS_TITLE&lt;br /&gt;    I_CALLBACK_PROGRAM = GS_REPORT&lt;br /&gt;    I_STRUCTURE_NAME   = 'SFLIGHT'&lt;br /&gt;    IS_LAYOUT          = GS_LAYOUT&lt;br /&gt;    IT_EVENTS          = LT_EVTS&lt;br /&gt;  TABLES&lt;br /&gt;    T_OUTTAB           = GT_SFLIGHT.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp;      Form  get_data_changed&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*       Here we will get the current cell and than add 1 to it to move&lt;br /&gt;*         to next row. Than we will call the method to set the new row&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;FORM GET_DATA_CHANGED USING RR_DATA_CHANGED&lt;br /&gt;      TYPE REF TO CL_ALV_CHANGED_DATA_PROTOCOL.&lt;br /&gt;*&lt;br /&gt;DATA: LO_GRID TYPE REF TO CL_GUI_ALV_GRID.&lt;br /&gt;*&lt;br /&gt;DATA: LE_ROW     TYPE I,&lt;br /&gt;      LE_VALUE   TYPE C,&lt;br /&gt;      LE_COL     TYPE I,&lt;br /&gt;      LES_ROW_ID TYPE LVC_S_ROW,&lt;br /&gt;      LES_COL_ID TYPE LVC_S_COL,&lt;br /&gt;      LES_ROW_NO TYPE LVC_S_ROID.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Get the ALV Object reference&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'&lt;br /&gt;  IMPORTING&lt;br /&gt;    E_GRID = LO_GRID.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Get the Current Cell&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  CALL METHOD LO_GRID-&gt;GET_CURRENT_CELL&lt;br /&gt;  IMPORTING&lt;br /&gt;    E_ROW     = LE_ROW&lt;br /&gt;    E_VALUE   = LE_VALUE&lt;br /&gt;    E_COL     = LE_COL&lt;br /&gt;    ES_ROW_ID = LES_ROW_ID&lt;br /&gt;    ES_COL_ID = LES_COL_ID&lt;br /&gt;    ES_ROW_NO = LES_ROW_NO.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-family:Arial monospaced for SAP;" &gt;*&lt;br /&gt;* Set to the next cell&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;  DESCRIBE TABLE  GT_SFLIGHT LINES SY-INDEX.&lt;br /&gt;LES_ROW_ID-INDEX  = LES_ROW_ID-INDEX  + 1.&lt;br /&gt;LES_ROW_NO-ROW_ID = LES_ROW_NO-ROW_ID + 1.&lt;br /&gt;IF LES_ROW_ID-INDEX LE SY-INDEX.&lt;br /&gt;  CALL METHOD LO_GRID-&gt;SET_CURRENT_CELL_VIA_ID&lt;br /&gt;    EXPORTING&lt;br /&gt;      IS_ROW_ID    = LES_ROW_ID&lt;br /&gt;      IS_COLUMN_ID = LES_COL_ID&lt;br /&gt;      IS_ROW_NO    = LES_ROW_NO.&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;br /&gt;ENDFORM.                    "get_data_changed&lt;br /&gt;&lt;br /&gt;source : http://help-abap.blogspot.com/2008/09/moving-cursor-to-next-row-by-pressing.html&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1512191722374764009?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1512191722374764009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/07/moving-cursor-to-next-row-by-pressing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1512191722374764009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1512191722374764009'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/07/moving-cursor-to-next-row-by-pressing.html' title='Moving Cursor to Next row by pressing Enter in Classical ALV'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6128993639970570640</id><published>2009-06-29T11:30:00.000+07:00</published><updated>2009-06-29T11:31:02.719+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ARTICLE'/><title type='text'>Displaying messages in ABAP</title><content type='html'>It is a good article to display messages in ABAP.&lt;br /&gt;&lt;br /&gt;source : &lt;a href="http://abaplovers.blogspot.com/2008/02/displaying-messages-in-abap.html"&gt;http://abaplovers.blogspot.com/2008/02/displaying-messages-in-abap.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6128993639970570640?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6128993639970570640/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/displaying-messages-in-abap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6128993639970570640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6128993639970570640'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/displaying-messages-in-abap.html' title='Displaying messages in ABAP'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-3472806809336019044</id><published>2009-06-28T22:19:00.003+07:00</published><updated>2009-06-28T22:23:35.781+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ARTICLE'/><title type='text'>ALV using OOPS method - 2</title><content type='html'>Try it at home...it looks good.&lt;br /&gt;&lt;br /&gt;Don't forget to create "Screen 100" and activate PBO Output and PAI Input&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;*&amp;amp; Report  ZALV_DOUBLECLICK                                            *&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  zalv_doubleclick                        .&lt;br /&gt;&lt;br /&gt;*"Table declarations...................................................&lt;br /&gt;TABLES: ekko, " Purchasing Document Header&lt;br /&gt;      cdhdr, " Change document header&lt;br /&gt;      sscrfields. " Fields on selection screens&lt;br /&gt;&lt;br /&gt;*"Selection screen elements............................................&lt;br /&gt;SELECT-OPTIONS:&lt;br /&gt;s_ebeln FOR ekko-ebeln, " Purchasing Document Number&lt;br /&gt;s_lifnr FOR ekko-lifnr, " Vendor's account number&lt;br /&gt;s_ekgrp FOR ekko-ekgrp, " Purchasing group&lt;br /&gt;s_bedat FOR ekko-bedat, " Purchasing Document Date&lt;br /&gt;s_udate FOR cdhdr-udate. " Creation date of the change&lt;br /&gt;" document&lt;br /&gt;*" Data declarations...................................................&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Purchase Document Number *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;DATA:&lt;br /&gt;BEGIN OF fs_ebeln,&lt;br /&gt;    ebeln(90) TYPE c, " Purchase Document Number&lt;br /&gt;    ernam TYPE ekko-ernam, " Name of Person who Created the Object&lt;br /&gt;    lifnr TYPE ekko-lifnr, " Vendor's account number&lt;br /&gt;    ekgrp TYPE ekko-ekgrp, " Purchasing group&lt;br /&gt;    bedat TYPE ekko-bedat, " Purchasing Document Date&lt;br /&gt;END OF fs_ebeln,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Purchase Document Header *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_ekko,&lt;br /&gt;    ebeln TYPE ekko-ebeln, " Purchasing Document Number&lt;br /&gt;    ernam TYPE ekko-ernam, " Name of Person who Created the Object&lt;br /&gt;    lifnr TYPE ekko-lifnr, " Vendor's account number&lt;br /&gt;    ekgrp TYPE ekko-ekgrp, " Purchasing group&lt;br /&gt;    bedat TYPE ekko-bedat, " Purchasing Document Date&lt;br /&gt;END OF fs_ekko,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Account Number and name of the Vendor *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_lfa1,&lt;br /&gt;    lifnr TYPE lfa1-lifnr, " Account Number of Vendor&lt;br /&gt;    name1 TYPE lfa1-name1,                                " Name1&lt;br /&gt;END OF fs_lfa1,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Change date and the name of the user *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_cdhdr,&lt;br /&gt;    objectclas TYPE cdhdr-objectclas, " Object Class&lt;br /&gt;    objectid TYPE cdhdr-objectid, " Object value&lt;br /&gt;    changenr TYPE cdhdr-changenr, " Document change number&lt;br /&gt;    username TYPE cdhdr-username, " User name&lt;br /&gt;    udate TYPE cdhdr-udate, " Creation date of the change document&lt;br /&gt;END OF fs_cdhdr,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Change document items *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_cdpos,&lt;br /&gt;    objectclas TYPE cdpos-objectclas," Object class&lt;br /&gt;    objectid(10) TYPE c, " Object Value&lt;br /&gt;    changenr TYPE cdpos-changenr, " Document change number&lt;br /&gt;    tabname TYPE cdpos-tabname, " Table Name&lt;br /&gt;    fname TYPE cdpos-fname, " Field Name&lt;br /&gt;    value_new TYPE cdpos-value_new, " New contents of changed field&lt;br /&gt;    value_old TYPE cdpos-value_old, " Old contents of changed field&lt;br /&gt;END OF fs_cdpos,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Date Element Name *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_dataele,&lt;br /&gt;    tabname TYPE dd03l-tabname, " Table Name&lt;br /&gt;    fieldname TYPE dd03l-fieldname, " Field Name&lt;br /&gt;    rollname TYPE dd03l-rollname, " Data element (semantic domain)&lt;br /&gt;END OF fs_dataele,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold Short Text of the Date Element *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_text,&lt;br /&gt;    rollname TYPE dd04t-rollname, " Data element (semantic domain)&lt;br /&gt;    ddtext TYPE dd04t-ddtext, " Short Text Describing R/3 Repository&lt;br /&gt;"Objects&lt;br /&gt;END OF fs_text,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Field String to hold data to be displayed on the ALV grid *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;BEGIN OF fs_outtab,&lt;br /&gt;  ebeln TYPE ekko-ebeln, " Purchasing Document Number&lt;br /&gt;  ernam TYPE ekko-ernam, " Name of Person who Created the Object&lt;br /&gt;  lifnr TYPE ekko-lifnr, " Vendor's account number&lt;br /&gt;  ekgrp TYPE ekko-ekgrp, " Purchasing group&lt;br /&gt;  bedat TYPE ekko-bedat, " Purchasing Document Date&lt;br /&gt;  werks TYPE lfa1-werks, " Plant&lt;br /&gt;  name1 TYPE lfa1-name1,                                  " Name1&lt;br /&gt;  username TYPE cdhdr-username, " User name&lt;br /&gt;  udate TYPE cdhdr-udate, " Creation date of the change document&lt;br /&gt;  ddtext TYPE dd04t-ddtext, " Short Text Describing R/3 Repository&lt;br /&gt;"Objects&lt;br /&gt;  value_new TYPE cdpos-value_new, " New contents of changed field&lt;br /&gt;  value_old TYPE cdpos-value_old, " Old contents of changed field&lt;br /&gt;END OF fs_outtab,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal table to hold Purchase Document Number *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_ebeln LIKE STANDARD TABLE OF fs_ebeln,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal table to hold Purchase Document Header *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_ekko LIKE STANDARD TABLE OF fs_ekko,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Temp Internal table to hold Purchase Document Header *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_ekko_temp LIKE STANDARD TABLE OF fs_ekko,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal table to hold Account number and Name of the Vendor *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_lfa1 LIKE STANDARD TABLE OF fs_lfa1,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal Table to hold Change date and the name of the user *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_cdhdr LIKE STANDARD TABLE OF fs_cdhdr,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal Table to hold Change document items *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_cdpos LIKE STANDARD TABLE OF fs_cdpos,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Temp. Internal Table to hold Change document items *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_cdpos_temp LIKE STANDARD TABLE OF fs_cdpos,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal Table to hold Data Element Name *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_dataele LIKE STANDARD TABLE OF fs_dataele,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Temp. Internal Table to hold Data Element Name *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_dataele_temp LIKE STANDARD TABLE OF fs_dataele,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal Table to hold Short Text of the Date Element *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_text LIKE STANDARD TABLE OF fs_text,&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Internal Table to hold data to be displayed on the ALV grid *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;t_outtab LIKE STANDARD TABLE OF fs_outtab.&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*C L A S S D E F I N I T I O N *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;CLASS lcl_event_handler DEFINITION DEFERRED.&lt;br /&gt;&lt;br /&gt;*" Data declarations...................................................&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Work variables *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;DATA:&lt;br /&gt;w_ebeln TYPE ekko-ebeln, " Purchasing Document Number&lt;br /&gt;w_lifnr TYPE ekko-lifnr, " Vendor's account number&lt;br /&gt;w_ekgrp TYPE ekko-ekgrp, " Purchasing group&lt;br /&gt;w_value TYPE ekko-ebeln, " Reflected Value&lt;br /&gt;w_space VALUE ' ', " Space&lt;br /&gt;w_flag TYPE i, " Flag Variable&lt;br /&gt;w_variant TYPE disvariant, " Variant&lt;br /&gt;&lt;br /&gt;*ALV Grid&lt;br /&gt;w_grid TYPE REF TO cl_gui_alv_grid,&lt;br /&gt;&lt;br /&gt;*Event Handler&lt;br /&gt;w_event_click TYPE REF TO lcl_event_handler,&lt;br /&gt;&lt;br /&gt;*Field catalog table&lt;br /&gt;t_fieldcat TYPE lvc_t_fcat.&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*AT SELECTION-SCREEN EVENT *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;AT SELECTION-SCREEN ON s_ebeln.&lt;br /&gt;&lt;br /&gt;*Subroutine to validate Purchase Document Number.&lt;br /&gt;PERFORM validate_pd_num.&lt;br /&gt;&lt;br /&gt;AT SELECTION-SCREEN ON s_lifnr.&lt;br /&gt;&lt;br /&gt;*Subroutine to validate Vendor Number.&lt;br /&gt;PERFORM validate_ven_num.&lt;br /&gt;&lt;br /&gt;AT SELECTION-SCREEN ON s_ekgrp.&lt;br /&gt;&lt;br /&gt;*Subroutine to validate Purchase Group.&lt;br /&gt;PERFORM validate_pur_grp.&lt;br /&gt;&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*START-OF-SELECTION EVENT *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;*  Subroutine to select all Purchase orders.&lt;br /&gt;PERFORM select_po.&lt;br /&gt;&lt;br /&gt;CHECK w_flag EQ 0.&lt;br /&gt;&lt;br /&gt;*  Subroutine to select Object values.&lt;br /&gt;PERFORM select_obj_id.&lt;br /&gt;CHECK w_flag EQ 0.&lt;br /&gt;&lt;br /&gt;*  Subroutine to select Changed values.&lt;br /&gt;PERFORM select_changed_value.&lt;br /&gt;CHECK w_flag EQ 0.&lt;br /&gt;&lt;br /&gt;*  Subroutine to Select Purchase Orders.&lt;br /&gt;PERFORM select_pur_doc.&lt;br /&gt;&lt;br /&gt;*  Subroutine to select Vendor Details.&lt;br /&gt;PERFORM select_vendor.&lt;br /&gt;&lt;br /&gt;*  Subroutine to select Text for the Changed values.&lt;br /&gt;PERFORM description.&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*END-OF-SELECTION EVENT *&lt;br /&gt;"--------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;END-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;IF NOT t_ekko IS INITIAL.&lt;br /&gt;&lt;br /&gt;*  Subroutine to populate the Output Table.&lt;br /&gt;  PERFORM fill_outtab.&lt;br /&gt;&lt;br /&gt;*  Subroutine to build Field Catalog.&lt;br /&gt;  PERFORM prepare_field_catalog CHANGING t_fieldcat.&lt;br /&gt;  CALL SCREEN 100.&lt;br /&gt;ENDIF. " IF NOT T_EKKO...&lt;br /&gt;&lt;br /&gt;*  CLASS LCL_EVENT_HANDLER DEFINITION&lt;br /&gt;&lt;br /&gt;*  Defining Class which handles events&lt;br /&gt;CLASS lcl_event_handler DEFINITION .&lt;br /&gt;PUBLIC SECTION .&lt;br /&gt;  METHODS:&lt;br /&gt;    handle_hotspot_click&lt;br /&gt;  FOR EVENT hotspot_click OF cl_gui_alv_grid&lt;br /&gt;    IMPORTING e_row_id e_column_id.&lt;br /&gt;&lt;br /&gt;ENDCLASS. " LCL_EVENT_HANDLER DEFINITION&lt;br /&gt;&lt;br /&gt;*  CLASS LCL_EVENT_HANDLER IMPLEMENTATION&lt;br /&gt;&lt;br /&gt;*  Implementing the Class which can handle events&lt;br /&gt;CLASS lcl_event_handler IMPLEMENTATION .&lt;br /&gt;&lt;br /&gt;*  ---Handle Double Click&lt;br /&gt;METHOD handle_hotspot_click .&lt;br /&gt;&lt;br /&gt;*  Subroutine to get the HotSpot Cell information.&lt;br /&gt;  PERFORM get_cell_info.&lt;br /&gt;&lt;br /&gt;  SET PARAMETER ID 'BES' FIELD w_value.&lt;br /&gt;&lt;br /&gt;  CALL TRANSACTION 'ME23N'.&lt;br /&gt;&lt;br /&gt;ENDMETHOD. " HANDLE_HOTSPOT_CLICK&lt;br /&gt;&lt;br /&gt;ENDCLASS. " LCL_EVENT_HANDLER&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Module STATUS_0100 OUTPUT&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*PBO Event&lt;br /&gt;MODULE status_0100 OUTPUT.&lt;br /&gt;&lt;br /&gt;  SET PF-STATUS 'OOPS'.&lt;br /&gt;  SET TITLEBAR 'TIT'.&lt;br /&gt;&lt;br /&gt;*Subroutine to fill the Variant Structure&lt;br /&gt;  PERFORM fill_variant.&lt;br /&gt;&lt;br /&gt;  IF w_grid IS INITIAL.&lt;br /&gt;&lt;br /&gt;    CREATE OBJECT w_grid&lt;br /&gt;      EXPORTING&lt;br /&gt;*          i_shellstyle = 0&lt;br /&gt;*        I_LIFETIME =&lt;br /&gt;         i_parent = cl_gui_container=&gt;screen0&lt;br /&gt;*        I_APPL_EVENTS =&lt;br /&gt;*        I_PARENTDBG =&lt;br /&gt;*        I_APPLOGPARENT =&lt;br /&gt;*        I_GRAPHICSPARENT =&lt;br /&gt;*        I_NAME =&lt;br /&gt;*        I_FCAT_COMPLETE = SPACE&lt;br /&gt;      EXCEPTIONS&lt;br /&gt;        error_cntl_create = 1&lt;br /&gt;        error_cntl_init = 2&lt;br /&gt;        error_cntl_link = 3&lt;br /&gt;        error_dp_create = 4&lt;br /&gt;        OTHERS = 5.&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. " IF SY-SUBRC 0&lt;br /&gt;&lt;br /&gt;    CALL METHOD w_grid-&gt;set_table_for_first_display&lt;br /&gt;    EXPORTING&lt;br /&gt;&lt;br /&gt;*        I_BUFFER_ACTIVE =&lt;br /&gt;*        I_BYPASSING_BUFFER =&lt;br /&gt;*        I_CONSISTENCY_CHECK =&lt;br /&gt;*        I_STRUCTURE_NAME =&lt;br /&gt;        is_variant = w_variant&lt;br /&gt;        i_save = 'A'&lt;br /&gt;&lt;br /&gt;        i_default = 'X'&lt;br /&gt;*        IS_LAYOUT =&lt;br /&gt;*        IS_PRINT =&lt;br /&gt;*        IT_SPECIAL_GROUPS =&lt;br /&gt;*        IT_TOOLBAR_EXCLUDING =&lt;br /&gt;*        IT_HYPERLINK =&lt;br /&gt;*        IT_ALV_GRAPHICS =&lt;br /&gt;*        IT_EXCEPT_QINFO =&lt;br /&gt;*        IR_SALV_ADAPTER =&lt;br /&gt;    CHANGING&lt;br /&gt;        it_outtab = t_outtab&lt;br /&gt;        it_fieldcatalog = t_fieldcat&lt;br /&gt;*          IT_SORT =&lt;br /&gt;*          IT_FILTER =&lt;br /&gt;    EXCEPTIONS&lt;br /&gt;        invalid_parameter_combination = 1&lt;br /&gt;        program_error = 2&lt;br /&gt;        too_many_lines = 3&lt;br /&gt;        OTHERS = 4&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. " IF SY-SUBRC 0.&lt;br /&gt;&lt;br /&gt;  ENDIF. " IF W_GRID IS INITIAL&lt;br /&gt;&lt;br /&gt;  CREATE OBJECT w_event_click.&lt;br /&gt;  SET HANDLER w_event_click-&gt;handle_hotspot_click FOR w_grid.&lt;br /&gt;&lt;br /&gt;ENDMODULE. " STATUS_0100 OUTPUT&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Module USER_COMMAND_0100 INPUT&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*PAI Event&lt;br /&gt;MODULE user_command_0100 INPUT.&lt;br /&gt;CASE sy-ucomm.&lt;br /&gt;  WHEN 'BACK'.&lt;br /&gt;    perform free_objects.&lt;br /&gt;    LEAVE TO SCREEN 0.&lt;br /&gt;  WHEN 'EXIT'.&lt;br /&gt;    perform free_objects.&lt;br /&gt;    LEAVE PROGRAM.&lt;br /&gt;  WHEN 'CANCEL'.&lt;br /&gt;    perform free_objects.&lt;br /&gt;    LEAVE TO SCREEN 0.&lt;br /&gt;ENDCASE.&lt;br /&gt;ENDMODULE. " USER_COMMAND_0100 INPUT&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;*&amp;amp;      Form  free_objects&lt;br /&gt;&lt;br /&gt;*&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;*       Free Objects&lt;br /&gt;&lt;br /&gt;*----------------------------------------------------------------------*&lt;br /&gt;&lt;br /&gt;form free_objects .&lt;br /&gt;&lt;br /&gt;CALL METHOD w_grid-&gt;free&lt;br /&gt;&lt;br /&gt;EXCEPTIONS&lt;br /&gt;&lt;br /&gt;  CNTL_ERROR        = 1&lt;br /&gt;&lt;br /&gt;  CNTL_SYSTEM_ERROR = 2&lt;br /&gt;&lt;br /&gt;  others            = 3.&lt;br /&gt;&lt;br /&gt;IF sy-subrc &lt;&gt; 0.&lt;br /&gt;&lt;br /&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;br /&gt;&lt;br /&gt;          WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;br /&gt;&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;br /&gt;endform.                    " free_objects&lt;br /&gt;&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Form PREPARE_FIELD_CATALOG&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Subroutine to build the Field catalog&lt;br /&gt;&lt;br /&gt;*&lt;--P_T_FIELDCAT Field Catalog Table FORM prepare_field_catalog CHANGING pt_fieldcat TYPE lvc_t_fcat .    DATA ls_fcat TYPE lvc_s_fcat.  *    Purchasing group...   ls_fcat-fieldname = 'EKGRP'.   ls_fcat-ref_table = 'EKKO'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Purchasing Document Number...   ls_fcat-fieldname = 'EBELN'.   ls_fcat-ref_table = 'EKKO' .   ls_fcat-emphasize = 'C411'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   ls_fcat-hotspot = 'X'.   APPEND ls_fcat TO pt_fieldcat .   CLEAR ls_fcat .  *    Name of Person who Created the Object...   ls_fcat-fieldname = 'ERNAM'.   ls_fcat-ref_table = 'EKKO'.   ls_fcat-outputlen = '15' .   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Purchasing Document Date...   ls_fcat-fieldname = 'BEDAT'.   ls_fcat-ref_table = 'EKKO'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Vendor's account number...   ls_fcat-fieldname = 'LIFNR'.   ls_fcat-ref_table = 'EKKO'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Account Number of Vendor or Creditor...   ls_fcat-fieldname = 'NAME1'.   ls_fcat-ref_table = 'LFA1'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   ls_fcat-coltext = 'Vendor Name'(001).   ls_fcat-seltext = 'Vendor Name'(001).   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Creation date of the change document...   ls_fcat-fieldname = 'UDATE'.   ls_fcat-ref_table = 'CDHDR'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   ls_fcat-coltext = 'Change Date'(002).   ls_fcat-seltext = 'Change Date'(002).   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    User name of the person responsible in change document...   ls_fcat-fieldname = 'USERNAME'.   ls_fcat-ref_table = 'CDHDR'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '10'.   ls_fcat-coltext = 'Modified by'(003).   ls_fcat-seltext = 'Modified by'(003).   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Short Text Describing R/3 Repository Objects...   ls_fcat-fieldname = 'DDTEXT'.   ls_fcat-ref_table = 'DD04T'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '15'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    Old contents of changed field...   ls_fcat-fieldname = 'VALUE_OLD'.   ls_fcat-ref_table = 'CDPOS'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '12'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  *    New contents of changed field...   ls_fcat-fieldname = 'VALUE_NEW'.   ls_fcat-ref_table = 'CDPOS'.   ls_fcat-inttype = 'C'.   ls_fcat-outputlen = '12'.   APPEND ls_fcat TO pt_fieldcat.   CLEAR ls_fcat.  ENDFORM. " PREPARE_FIELD_CATALOG  "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form SELECT_PO "&amp;amp;---------------------------------------------------------------------  *Subroutine to select all the Purchase Orders  *There are no interface parameters to be passed to this subroutine. FORM select_po .    SELECT ebeln " Purchasing Document Number          ernam " Name of Person who Created the Object          lifnr " Vendor's account number          ekgrp " Purchasing group          bedat " Purchasing Document Date       FROM ekko         PACKAGE SIZE 10000         APPENDING TABLE t_ebeln       WHERE ebeln IN s_ebeln           AND bedat IN s_bedat.    ENDSELECT.    IF sy-subrc NE 0.     w_flag = 1.     MESSAGE s401(m8).   ENDIF. " IF SY-SUBRC NE 0  ENDFORM. " SELECT_PO  "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form SELECT_OBJ_ID "&amp;amp;---------------------------------------------------------------------  *Subroutine to select Object ID  *There are no interface parameters to be passed to this subroutine. FORM select_obj_id .    IF NOT t_ebeln IS INITIAL.      SELECT objectclas " Object Class             objectid " Object value             changenr " Document change number             username " User name             udate " Creation date             FROM cdhdr             INTO TABLE t_cdhdr             FOR ALL ENTRIES IN t_ebeln             WHERE objectid EQ t_ebeln-ebeln             AND udate IN s_udate             AND tcode IN ('ME21N','ME22N','ME23N').  *    ENDSELECT.      IF sy-subrc NE 0.       w_flag = 1.       MESSAGE s833(m8) WITH 'Header Not Found'(031).     ENDIF. " IF SY-SUBRC NE 0.    ENDIF. " IF NOT T_EBELN IS INITIAL ENDFORM. " SELECT_OBJ_ID "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form SELECT_CHANGED_VALUE *&amp;amp;---------------------------------------------------------------------  *Subroutine to select Changed Values  *There are no interface parameters to be passed to this subroutine. FORM select_changed_value .    IF NOT t_cdhdr IS INITIAL.      SELECT objectclas " Object class     objectid " Object value     changenr " Document change number     tabname " Table Name     fname " Field Name     value_new " New contents of changed field     value_old " Old contents of changed field     FROM cdpos     PACKAGE SIZE 10000     APPENDING TABLE t_cdpos     FOR ALL ENTRIES IN t_cdhdr     WHERE objectclas EQ t_cdhdr-objectclas     AND objectid EQ t_cdhdr-objectid     AND changenr EQ t_cdhdr-changenr.      ENDSELECT.      IF sy-subrc NE 0.       w_flag = 1.       MESSAGE s833(m8) WITH 'Item Not Found'(032).     ENDIF. " IF SY-SUBRC NE 0.    ENDIF. " IF NOT T_CDHDR IS INITIAL    t_cdpos_temp[] = t_cdpos[]. ENDFORM. " SELECT_CHANGED_VALUE "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form SELECT_PUR_DOC "&amp;amp;---------------------------------------------------------------------  *Subroutine to select Purchase Order Details  *There are no interface parameters to be passed to this subroutine. FORM select_pur_doc .    IF NOT t_cdpos IS INITIAL.      SORT t_ebeln BY ebeln.      LOOP AT t_cdpos INTO fs_cdpos.       READ TABLE t_ebeln INTO fs_ebeln WITH KEY ebeln = fs_cdpos-objectid BINARY SEARCH.       IF sy-subrc NE 0.         DELETE TABLE t_ebeln FROM fs_ebeln.       ENDIF. " IF SY-SUBRC NE 0.     ENDLOOP. " LOOP AT T_CDPOS...      LOOP AT t_ebeln INTO fs_ebeln.       MOVE fs_ebeln-ebeln TO fs_ekko-ebeln.       MOVE fs_ebeln-ernam TO fs_ekko-ernam.       MOVE fs_ebeln-lifnr TO fs_ekko-lifnr.       MOVE fs_ebeln-ekgrp TO fs_ekko-ekgrp.       MOVE fs_ebeln-bedat TO fs_ekko-bedat.       APPEND fs_ekko TO t_ekko.     ENDLOOP. " LOOP AT T_EBELN...      t_ekko_temp[] = t_ekko[].    ENDIF. " IF NOT T_CDPOS IS INITIAL ENDFORM. " SELECT_PUR_DOC "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form SELECT_VENDOR "&amp;amp;---------------------------------------------------------------------  *Subroutine to select Vendor details  *There are no interface parameters to be passed to this subroutine. FORM select_vendor .   IF NOT t_ekko IS INITIAL.      SORT t_ekko_temp BY lifnr.     DELETE ADJACENT DUPLICATES FROM t_ekko_temp COMPARING lifnr.      SELECT lifnr " Account Number of Vendor or Creditor            name1                                            " Name 1     FROM lfa1       INTO TABLE t_lfa1     FOR ALL ENTRIES IN t_ekko_temp     WHERE lifnr EQ t_ekko_temp-lifnr.      IF sy-subrc NE 0.       MESSAGE s002(m8) WITH 'Master Details'(033).     ENDIF. " IF SY-SUBRC NE 0.    ENDIF. " IF NOT T_EKKO IS INITIAL ENDFORM. " SELECT_VENDOR "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form DESCRIPTION "&amp;amp;---------------------------------------------------------------------  *Subroutine to get the description  *There are no interface parameters to be passed to this subroutine. FORM description .    IF NOT t_cdpos IS INITIAL.      SORT t_cdpos_temp BY tabname fname.    DELETE ADJACENT DUPLICATES FROM t_cdpos_temp COMPARING tabname fname .      SELECT tabname " Table Name     fieldname " Field Name     rollname " Data element     FROM dd03l     INTO TABLE t_dataele     FOR ALL ENTRIES IN t_cdpos_temp     WHERE tabname EQ t_cdpos_temp-tabname     AND fieldname EQ t_cdpos_temp-fname.      IF NOT t_dataele IS INITIAL.        t_dataele_temp[] = t_dataele[].       SORT t_dataele_temp BY rollname.       DELETE ADJACENT DUPLICATES FROM t_dataele_temp COMPARING rollname.        SELECT rollname " Data element             ddtext " Short Text Describing R/3 Repository Objects       FROM dd04t         INTO TABLE t_text       FOR ALL ENTRIES IN t_dataele_temp       WHERE rollname EQ t_dataele_temp-rollname       AND ddlanguage EQ sy-langu.        IF sy-subrc NE 0.         EXIT.       ENDIF. " IF SY-SUBRC NE 0.      ENDIF. " IF NOT T_DATAELE IS INITIAL.    ENDIF. " IF NOT T_CDPOS IS INITIAL.  ENDFORM. " DESCRIPTION "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form FILL_OUTTAB "&amp;amp;---------------------------------------------------------------------  *Subroutine to populate the Outtab  *There are no interface parameters to be passed to this subroutine. FORM fill_outtab .    SORT t_cdhdr BY objectclas objectid changenr.   SORT t_ekko BY ebeln.   SORT t_lfa1 BY lifnr.   SORT t_dataele BY tabname fieldname.   SORT t_text BY rollname.    LOOP AT t_cdpos INTO fs_cdpos.     READ TABLE t_cdhdr INTO fs_cdhdr WITH KEY                               objectclas = fs_cdpos-objectclas                               objectid = fs_cdpos-objectid                               changenr = fs_cdpos-changenr                               BINARY SEARCH.     IF sy-subrc EQ 0.       MOVE fs_cdhdr-username TO fs_outtab-username.       MOVE fs_cdhdr-udate TO fs_outtab-udate.        READ TABLE t_ekko INTO fs_ekko WITH KEY                             ebeln = fs_cdhdr-objectid                             BINARY SEARCH.       IF sy-subrc EQ 0.         MOVE fs_ekko-ebeln TO fs_outtab-ebeln.         MOVE fs_ekko-ernam TO fs_outtab-ernam.         MOVE fs_ekko-lifnr TO fs_outtab-lifnr.         MOVE fs_ekko-ekgrp TO fs_outtab-ekgrp.         MOVE fs_ekko-bedat TO fs_outtab-bedat.          READ TABLE t_lfa1 INTO fs_lfa1 WITH KEY                                         lifnr = fs_ekko-lifnr                                         BINARY SEARCH.         IF sy-subrc EQ 0.           MOVE fs_lfa1-name1 TO fs_outtab-name1.         ENDIF. " IF SY-SUBRC EQ 0.        ENDIF. " IF SY-SUBRC EQ 0.     ENDIF. " IF SY-SUBRC EQ 0.      MOVE fs_cdpos-value_new TO fs_outtab-value_new.     MOVE fs_cdpos-value_old TO fs_outtab-value_old.      READ TABLE t_dataele INTO fs_dataele WITH KEY                                         tabname = fs_cdpos-tabname                                         fieldname = fs_cdpos-fname                                         BINARY SEARCH.     IF sy-subrc EQ 0.       READ TABLE t_text INTO fs_text WITH KEY                                       rollname = fs_dataele-rollname                                       BINARY SEARCH.       IF sy-subrc EQ 0.         MOVE fs_text-ddtext TO fs_outtab-ddtext.       ENDIF. " IF SY-SUBRC EQ 0.      ENDIF. " IF SY-SUBRC EQ 0.      APPEND fs_outtab TO t_outtab.     CLEAR fs_outtab.   ENDLOOP.  ENDFORM. " FILL_OUTTAB "&amp;amp;--------------------------------------------------------------------- *&amp;amp; Form GET_CELL_INFO "&amp;amp;---------------------------------------------------------------------  *Subroutine to get the Cell Information  *--&gt; W_VALUE Holds the value of Hotspot clicked&lt;br /&gt;FORM get_cell_info .&lt;br /&gt;&lt;br /&gt;CALL METHOD w_grid-&gt;get_current_cell&lt;br /&gt;IMPORTING&lt;br /&gt;&lt;br /&gt;*    E_ROW =&lt;br /&gt;   e_value = w_value&lt;br /&gt;&lt;br /&gt;*    E_COL =&lt;br /&gt;*    ES_ROW_ID =&lt;br /&gt;*    ES_COL_ID =&lt;br /&gt;*    ES_ROW_NO =&lt;br /&gt;.&lt;br /&gt;ENDFORM. " GET_CELL_INFO&lt;br /&gt;&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Form VALIDATE_PD_NUM&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*Subroutine to validate Purchase Document Number&lt;br /&gt;*There are no interface parameters to be passed to this subroutine.&lt;br /&gt;FORM validate_pd_num .&lt;br /&gt;&lt;br /&gt;IF NOT s_ebeln[] IS INITIAL.&lt;br /&gt;  SELECT ebeln " Purchase Document Number&lt;br /&gt;  FROM ekko&lt;br /&gt;    INTO w_ebeln&lt;br /&gt;  UP TO 1 ROWS&lt;br /&gt;  WHERE ebeln IN s_ebeln.&lt;br /&gt;&lt;br /&gt;  ENDSELECT.&lt;br /&gt;&lt;br /&gt;  IF sy-subrc NE 0.&lt;br /&gt;    CLEAR sscrfields-ucomm.&lt;br /&gt;    MESSAGE e717(m8).&lt;br /&gt;  ENDIF. " IF SY-SUBRC NE 0&lt;br /&gt;ENDIF. " IF NOT S_EBELN[]...&lt;br /&gt;&lt;br /&gt;ENDFORM. " VALIDATE_PD_NUM&lt;br /&gt;&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Form VALIDATE_VEN_NUM&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Subroutine to validate Vendor Number&lt;br /&gt;&lt;br /&gt;*There are no interface parameters to be passed to this subroutine.&lt;br /&gt;FORM validate_ven_num .&lt;br /&gt;&lt;br /&gt;IF NOT s_lifnr[] IS INITIAL.&lt;br /&gt;  SELECT lifnr " Vendor Number&lt;br /&gt;  FROM lfa1&lt;br /&gt;    INTO w_lifnr&lt;br /&gt;  UP TO 1 ROWS&lt;br /&gt;  WHERE lifnr IN s_lifnr.&lt;br /&gt;&lt;br /&gt;  ENDSELECT.&lt;br /&gt;&lt;br /&gt;  IF sy-subrc NE 0.&lt;br /&gt;    CLEAR sscrfields-ucomm.&lt;br /&gt;    MESSAGE e002(m8) WITH w_space.&lt;br /&gt;  ENDIF. " IF SY-SUBRC NE 0&lt;br /&gt;ENDIF. " IF NOT S_LIFNR[]...&lt;br /&gt;&lt;br /&gt;ENDFORM. " VALIDATE_VEN_NUM&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Form VALIDATE_PUR_GRP&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Subroutine to validate the Purchase Group&lt;br /&gt;&lt;br /&gt;*There are no interface parameters to be passed to this subroutine.&lt;br /&gt;FORM validate_pur_grp .&lt;br /&gt;&lt;br /&gt;IF NOT s_ekgrp[] IS INITIAL.&lt;br /&gt;  SELECT ekgrp " Purchase Group&lt;br /&gt;  FROM t024&lt;br /&gt;    INTO w_ekgrp&lt;br /&gt;  UP TO 1 ROWS&lt;br /&gt;  WHERE ekgrp IN s_ekgrp.&lt;br /&gt;&lt;br /&gt;  ENDSELECT.&lt;br /&gt;&lt;br /&gt;  IF sy-subrc NE 0.&lt;br /&gt;    CLEAR sscrfields-ucomm.&lt;br /&gt;    MESSAGE e622(m8) WITH w_space.&lt;br /&gt;  ENDIF. " IF SY-SUBRC NE 0&lt;br /&gt;ENDIF. " IF NOT S_EKFRP[]...&lt;br /&gt;&lt;br /&gt;ENDFORM. " VALIDATE_PUR_GRP&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;*&amp;amp; Form FILL_VARIANT&lt;br /&gt;"&amp;amp;---------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;*Subroutine to fill the Variant Structure&lt;br /&gt;&lt;br /&gt;*There are no interface parameters to be passed to this subroutine&lt;br /&gt;FORM fill_variant .&lt;br /&gt;*Filling the Variant structure&lt;br /&gt;w_variant-report = sy-repid.&lt;br /&gt;w_variant-username = sy-uname.&lt;br /&gt;ENDFORM. " FILL_VARIANT&lt;br /&gt;&lt;br /&gt;source : http://abapreports.blogspot.com/2008/06/double-click-with-alv-oops.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-3472806809336019044?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/3472806809336019044/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/alv-using-oops-method-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3472806809336019044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3472806809336019044'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/alv-using-oops-method-2.html' title='ALV using OOPS method - 2'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6857754259065133256</id><published>2009-06-28T22:00:00.001+07:00</published><updated>2009-06-28T22:16:51.474+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ARTICLE'/><title type='text'>ALV using OOPS method</title><content type='html'>&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;This document describes how to create an ALV using OOPS method in few steps. It will help the beginners to start with.&lt;/span&gt;&lt;/p&gt;  &lt;h1 style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="ABAP-7StepstocreateOOPSALV(forbeginners)-Procedure"&gt;&lt;/a&gt;Procedure&lt;/span&gt;&lt;/h1&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 1: Create a container. There are 2 containers. They are docking and custom.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;For eg.. Create docking container.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Go to SE38.Create a program. Use Pattern button to create object for docking container. Click ABAP Object Pattern radio button.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;   &lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops1.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;CREATE OBJECT o_docking&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;PARENT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;REPID&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;DYNNR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;SIDE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= DOCK_AT_LEFT&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;EXTENSION&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 50&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;STYLE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;LIFETIME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= lifetime_default&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;CAPTION&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;METRIC&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 0&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;     RATIO                       = '95'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;NO_AUTODEF_PROGID_DYNNR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;NAME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;CNTL_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                 &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;CNTL_SYSTEM_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;CREATE_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;               &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 3&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;LIFETIME_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;             &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 4&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;LIFETIME_DYNPRO_DYNPRO_LINK = 5&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 6&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 2: Create a grid inside the container.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Use Pattern button to create the same. Make the parent of grid as container.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops2.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;CREATE OBJECT o_grid&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_SHELLSTYLE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 0&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_LIFETIME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;i_parent&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;=&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;o_docking&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_APPL_EVENTS&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= space&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_PARENTDBG&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_APPLOGPARENT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_GRAPHICSPARENT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_NAME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;ERROR_CNTL_CREATE = 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;ERROR_CNTL_INIT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;ERROR_CNTL_LINK&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 3&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;ERROR_DP_CREATE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 4&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 5&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 3: Call the function &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;LVC_FIELDCATALOG_MERGE to get the fieldcatalog.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;Pass the structure name.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt; EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_BUFFER_ACTIVE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;            &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;"&gt;   I_STRUCTURE_NAME             = 'MARA'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_CLIENT_NEVER_DISPLAY&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 'X'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_BYPASSING_BUFFER&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_INTERNAL_TABNAME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CHANGING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ct_fieldcat&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                 &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= i_fieldcat&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;* EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;INCONSISTENT_INTERFACE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;= 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;PROGRAM_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;               &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;OTHERS&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 3&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;        &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 4: Call the method of grid set_table_for_first_display to display the output.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops3.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;w_variant-report = sy-repid.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CALL METHOD o_grid-&gt;set_table_for_first_display&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;    EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_BUFFER_ACTIVE&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;              &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_BYPASSING_BUFFER&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_CONSISTENCY_CHECK&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;    &lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_STRUCTURE_NAME&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;             &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IS_VARIANT&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= w_variant&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;I_SAVE&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 'A'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;I_DEFAULT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 'X'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IS_LAYOUT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IS_PRINT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_SPECIAL_GROUPS&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;            &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_TOOLBAR_EXCLUDING&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_HYPERLINK&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                 &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_ALV_GRAPHICS&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;              &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_EXCEPT_QINFO&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;              &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CHANGING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;it_outtab&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= itab&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;      IT_FIELDCATALOG               = i_fieldcat&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_SORT&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;IT_FILTER&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;=&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;INVALID_PARAMETER_COMBINATION = 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;PROGRAM_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;TOO_MANY_LINES&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;            &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;   &lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;= 3&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;= 4&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;             &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 5: Fill the internal table itab with values by using logic.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;select * from mara into table itab up to 100 rows.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;call screen 9000.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Create a screen by double clicking 9000 in the above line. Fill the description for the screen.  In the flow logic, uncomment the PBO and PAI module and create those in main program (for simplicity).&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops4.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 6: Create GUI status as below. Create GUI Title if required.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops5.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;Step 7: Free the memory occupied once the 'BACK, EXIT' or 'CANCEL' button is clicked. Use Pattern button to call the method 'FREE' of cl_gui_alv_grid.&lt;/span&gt;&lt;/p&gt;  &lt;h1 style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="ABAP-7StepstocreateOOPSALV(forbeginners)-!oops6.jpg!"&gt;&lt;/a&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops6.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;img src="https://wiki.sdn.sap.com/wiki/download/attachments/33636/oops7.jpg" align="absmiddle" border="0" /&gt;&lt;/span&gt;&lt;/p&gt; &lt;div class="code panel" style="border-width: 1px; font-family: times new roman;"&gt;&lt;div class="codeContent panelContent"&gt;  &lt;/div&gt;&lt;/div&gt;  &lt;h1 style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="ABAP-7StepstocreateOOPSALV(forbeginners)-"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="color: rgb(34, 90, 141);font-size:100%;" &gt;Complete Code&lt;/span&gt;&lt;/h1&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;data : itab type standard table of mara,"Output Internal table&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;i_fieldcat type standard table of lvc_s_fcat,"Field catalog&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;wa type mara,&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;w_variant type disvariant,&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;o_docking type ref to cl_gui_docking_container,"Docking Container&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;o_grid type ref to cl_gui_alv_grid."Grid&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;select * from mara into table itab up to 100 rows.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;call screen 9000.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;Module&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;STATUS_9000&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;OUTPUT&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;text&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*----------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;module STATUS_9000 output.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;if o_docking is initial.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;SET PF-STATUS 'ZSTATUS'. "GUI Status&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;SET TITLEBAR 'ZTITLE'.&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;"Title&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;* Creating Docking Container&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CREATE OBJECT o_docking&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;        &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;RATIO&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= '95'.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc eq 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;* Creating Grid&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CREATE OBJECT o_grid&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;        &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;i_parent&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= o_docking.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;* Filling the fieldcatalog table&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;I_STRUCTURE_NAME&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;            &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 'MARA'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CHANGING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ct_fieldcat&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                 &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;=&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;i_fieldcat&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;INCONSISTENT_INTERFACE&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;PROGRAM_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;               &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;         &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;OTHERS&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 3.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;w_variant-report = sy-repid.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;* Displaying the output&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CALL METHOD o_grid-&gt;set_table_for_first_display&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXPORTING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IS_VARIANT&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= w_variant&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;I_SAVE&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 'A'&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CHANGING&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;it_outtab&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= itab&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IT_FIELDCATALOG&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;              &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= i_fieldcat&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;        &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;INVALID_PARAMETER_COMBINATION = 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;PROGRAM_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;  &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;        &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;TOO_MANY_LINES&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;               &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 3&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;          &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;                  &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;endif.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;endmodule.&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;          &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;" STATUS_9000&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;OUTPUT&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;*&amp;amp;&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;Module&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;USER_COMMAND_9000&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;INPUT&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;PAI&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;*----------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;module USER_COMMAND_9000 input.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;data lv_ucomm type sy-ucomm.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;lv_ucomm = sy-ucomm.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CASE lv_ucomm.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;WHEN 'CANCEL' OR 'EXIT'.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;perform free_objects.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;LEAVE PROGRAM.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;when 'BACK'.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;perform free_objects.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;set screen '0'.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;    &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;leave screen.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;ENDCASE.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;endmodule.&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;" USER_COMMAND_9000&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;INPUT&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;Form&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;free_objects&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*&lt;/span&gt;&lt;span style="font-size:100%;color:blue;"&gt;      &lt;/span&gt; &lt;span style="font-size:100%;color:blue;"&gt;Free Objects&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:blue;"&gt;*----------------------------------------------------------------------*&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;form free_objects .&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;CALL METHOD o_grid-&gt;free&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CNTL_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CNTL_SYSTEM_ERROR = 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;     &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;      &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;= 3.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;CALL METHOD o_docking-&gt;free&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;EXCEPTIONS&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CNTL_ERROR&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;       &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;CNTL_SYSTEM_ERROR = 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;others&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;= 3.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;IF sy-subrc &lt;&gt; 0.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;           &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;ENDIF.&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;endform.&lt;/span&gt;&lt;span style="font-size:100%;color:black;"&gt;                   &lt;/span&gt; &lt;span style="font-size:100%;color:black;"&gt;" free_objects&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;"&gt;source : https://wiki.sdn.sap.com/wiki/display/Snippets/ABAP-7%20Steps%20to%20create%20OOPS%20ALV(for%20beginners)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family: times new roman;"&gt;&lt;span style="font-size:100%;color:black;"&gt;&lt;br /&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/8634541958205365634-6857754259065133256?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6857754259065133256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/alv-using-oops-method.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6857754259065133256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6857754259065133256'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/alv-using-oops-method.html' title='ALV using OOPS method'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7433308883375410213</id><published>2009-06-28T21:29:00.002+07:00</published><updated>2009-06-28T21:32:43.002+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>CONVERT_DATE_TO_EXTERNAL sap function module</title><content type='html'>The below code shows how function module CONVERT_DATE_TO_EXTERNAL is used to convert a date field from is internal storage format to the users specific display format i.e. from YYYYMMDD to DD/MM/YYYY.                 &lt;pre&gt;&lt;span style="font-family:Arial monospaced for SAP;color:#0000ff;"&gt;&lt;b&gt;Convert date to users prefered output &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial monospaced for SAP;"&gt;&lt;br /&gt;data: ld_date_int type datum,&lt;br /&gt;     ld_date_ext type datum.&lt;br /&gt;&lt;br /&gt; CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'&lt;br /&gt;   EXPORTING&lt;br /&gt;     date_internal            = ld_date_int&lt;br /&gt;   IMPORTING&lt;br /&gt;     date_external            = ld_date_ext&lt;br /&gt;   EXCEPTIONS&lt;br /&gt;     date_internal_is_invalid = 1&lt;br /&gt;     OTHERS                   = 2.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;One of a function module is 'CONVERT_DATE_TO_INTERNAL'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7433308883375410213?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7433308883375410213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/convert-date.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7433308883375410213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7433308883375410213'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/convert-date.html' title='CONVERT_DATE_TO_EXTERNAL sap function module'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7391035218655132449</id><published>2009-06-28T16:51:00.003+07:00</published><updated>2009-06-28T16:53:29.400+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FI'/><title type='text'>Transaction FI Report</title><content type='html'>&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI0.html"&gt;FSI0&lt;/a&gt; - Execute report&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI1.html"&gt;FSI1&lt;/a&gt; - Create Report&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI2.html"&gt;FSI2&lt;/a&gt; - Change Report&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI3.html"&gt;FSI3&lt;/a&gt; - Display Report&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI4.html"&gt;FSI4&lt;/a&gt; - Create Form&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI5.html"&gt;FSI5&lt;/a&gt; - Change Form&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSI6.html"&gt;FSI6&lt;/a&gt; - Display Form&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIB.html"&gt;FSIB&lt;/a&gt; - Background processing&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIC.html"&gt;FSIC&lt;/a&gt; - Maintain Currency Translation Type&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIG.html"&gt;FSIG&lt;/a&gt; - Balance Sheet Reports Criteria Group&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIK.html"&gt;FSIK&lt;/a&gt; - Maintain Key Figures&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIM.html"&gt;FSIM&lt;/a&gt; - Report Monitor&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIO.html"&gt;FSIO&lt;/a&gt; - Transport reports&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIP.html"&gt;FSIP&lt;/a&gt; - Transport forms&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.transactioncodes.com/SAP/F/FSIQ.html"&gt;FSIQ&lt;/a&gt; - Import reports from client 000&lt;/li&gt;&lt;/ol&gt;I don't know what the function is used..I only attach it first...may be i will use these t-codes someday.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7391035218655132449?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7391035218655132449/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/transaction-fi-report.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7391035218655132449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7391035218655132449'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/transaction-fi-report.html' title='Transaction FI Report'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4532407470878246549</id><published>2009-06-24T10:19:00.003+07:00</published><updated>2009-06-26T20:39:04.491+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Calculate delivery quantity field in Sales Order</title><content type='html'>Yo can find the delivered quantity via a function, it is not as easy asreading the confirmed quantity..&lt;br /&gt;&lt;br /&gt;Use of function may look like this&lt;br /&gt;&lt;br /&gt;Data: lT_VBFA type VBFA occurs 0 with header line,&lt;br /&gt;lT_VBUP type VBUP occurs 0 with header line,&lt;br /&gt;lT_VBEP type VBEPVB occurs 0 with header line,&lt;br /&gt;lT_VBAP type VBAPVB occurs 0 with header line,&lt;br /&gt;l_vsmng like vbepvb-vsmng.&lt;br /&gt;&lt;br /&gt;SELECT * FROM vbup INTO TABLE lt_vbup&lt;br /&gt;WHERE vbeln EQ vbeln ANDposnr EQ my_posnr.&lt;br /&gt;&lt;br /&gt;SELECT * FROM vbfa INTO TABLE l_vbfa&lt;br /&gt;WHERE vbelv EQ vbeln ANDposnv EQ my_posnr.&lt;br /&gt;&lt;br /&gt;SELECT * FROM vbep INTO TABLE l_vbep&lt;br /&gt;WHERE vbeln EQ vbeln ANDposnr EQ my_posnr .&lt;br /&gt;&lt;br /&gt;SELECT * FROM vbap INTO TABLE l_vbap&lt;br /&gt;WHERE vbeln EQ vbeln ANDposnr EQ my_posnr .&lt;br /&gt;&lt;br /&gt;call function 'RV_SCHEDULE_CHECK_DELIVERIES'&lt;br /&gt;exporting&lt;br /&gt;fbeleg = vbeln&lt;br /&gt;fposnr = my_posnr&lt;br /&gt;&lt;br /&gt;tables&lt;br /&gt;fvbfa = lt_vbfa&lt;br /&gt;fvbup = lt_vbup&lt;br /&gt;fxvbep = lt_vbep&lt;br /&gt;fvbap = lt_vbap.&lt;br /&gt;&lt;br /&gt;loop at lt_vbep where posnr eq my_posnr.&lt;br /&gt;   add lt_vbep-vsmng to l_vsmng. " tot.deliv.quan&lt;br /&gt;endloop.&lt;br /&gt;&lt;br /&gt;source : &lt;a href="http://sap.ittoolbox.com/groups/technical-functional/sap-log-sd/delivered-quantity-field-in-sales-order-803786"&gt;sini&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-4532407470878246549?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4532407470878246549/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/calculate-delivery-quantity-field-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4532407470878246549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4532407470878246549'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/calculate-delivery-quantity-field-in.html' title='Calculate delivery quantity field in Sales Order'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7717965577292400929</id><published>2009-06-24T10:15:00.003+07:00</published><updated>2009-06-26T20:38:46.484+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Changing Color of ALV GRID in SAP ABAP</title><content type='html'>source : &lt;a href="http://abaplovers.blogspot.com/2008/05/changing-color-of-alv-grid-in-sap-abap.html"&gt;sini&lt;/a&gt;&lt;br /&gt;atau  &lt;a href="http://www.sap-img.com/abap/line-color-in-alv-example.htm"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7717965577292400929?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7717965577292400929/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/changing-color-of-alv-grid-in-sap-abap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7717965577292400929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7717965577292400929'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/changing-color-of-alv-grid-in-sap-abap.html' title='Changing Color of ALV GRID in SAP ABAP'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-5789464845898326824</id><published>2009-06-17T13:03:00.000+07:00</published><updated>2009-06-17T13:05:26.989+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>SAP ABAP Decimal Places in Currency</title><content type='html'>&lt;em&gt;If you wish to find the decimal places in the currency you can use the following function module.&lt;br /&gt;G_DECIMAL_PLACES_GET The table that stores the Currencies in SAP system (Currency Codes) is TCURC. The code below shows the decimal places for a particular currency.&lt;br /&gt;REPORT ZEX_CURRENCY .&lt;/em&gt;&lt;br /&gt;&lt;em&gt;Parameters: p_curr(10).&lt;/em&gt;&lt;br /&gt;&lt;em&gt;Data: d_decpl like TCURX-CURRDEC.&lt;/em&gt;&lt;br /&gt;&lt;em&gt;CALL FUNCTION 'G_DECIMAL_PLACES_GET'  &lt;/em&gt;&lt;br /&gt;&lt;em&gt;EXPORTING    &lt;/em&gt;&lt;br /&gt;&lt;em&gt;        CURRENCY            = p_curr &lt;/em&gt;&lt;br /&gt;&lt;em&gt;IMPORTING   &lt;/em&gt;&lt;br /&gt;&lt;em&gt;         DECIMAL_PLACES       = d_decpl .&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;Write: 'Decimal Places ', d_decpl.&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;Source : &lt;a href="http://abaplovers.blogspot.com/2008/06/sap-abap-decimal-places-in-currency.html"&gt;http://abaplovers.blogspot.com/2008/06/sap-abap-decimal-places-in-currency.html&lt;/a&gt;&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-5789464845898326824?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/5789464845898326824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/sap-abap-decimal-places-in-currency.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5789464845898326824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/5789464845898326824'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/sap-abap-decimal-places-in-currency.html' title='SAP ABAP Decimal Places in Currency'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-770716412800985157</id><published>2009-06-08T14:33:00.002+07:00</published><updated>2009-06-08T14:37:50.254+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Hide Parameter/Select Option in Selection Screen</title><content type='html'>We can Hide parameter / select option in selection screen dynamically by manipulating screen object.&lt;br /&gt;&lt;br /&gt;SCREEN is like an internal table with a header line. However, you do not have to declare it in your program. Go to debugging mode and then view structure of screen.&lt;br /&gt;&lt;br /&gt;You can modify SCREEN in your ABAP program during the PBO event of a screen. Its contents override the static attributes of the screen fields for a single screen call. The only statements that you can use with SCREEN are:&lt;br /&gt;&lt;br /&gt;LOOP AT SCREEN....&lt;br /&gt;MODIFY SCREEN....&lt;br /&gt;ENDLOOP.&lt;br /&gt;&lt;br /&gt;We can hide parameter by set screen-active to 0.Here is example of how to hide parameter in selection screen. Write it, and change click on radiobutton to hide parameter.&lt;br /&gt;REPORT ZAALGAL0006.&lt;br /&gt;DATA: d_ucomm LIKE sy-ucomm.&lt;br /&gt;PARAMETERS: p_grpa1(10) MODIF ID A,p_grpa2(5) MODIF ID A,p_grpb1(2) MODIF ID B.&lt;br /&gt;PARAMETERS: p_actA RADIOBUTTON GROUP rad1 USER-COMMAND ACT DEFAULT 'X',&lt;br /&gt;                             p_actB RADIOBUTTON GROUP rad1.AT SELECTION-SCREEN.&lt;br /&gt;d_ucomm = sy-ucomm.&lt;br /&gt;AT SELECTION-SCREEN OUTPUT.&lt;br /&gt;LOOP AT screen.&lt;br /&gt;   IF p_actA = 'X'.&lt;br /&gt;             IF screen-group1 = 'B'.&lt;br /&gt;                  screen-active = 0.&lt;br /&gt;             ENDIF.&lt;br /&gt;   ELSEIF p_actB = 'X'.&lt;br /&gt;           IF screen-group1 = 'A'.&lt;br /&gt;                    screen-active = 0.&lt;br /&gt;           ENDIF.&lt;br /&gt;   ENDIF.&lt;br /&gt;  MODIFY screen.&lt;br /&gt; ENDLOOP.&lt;br /&gt;&lt;br /&gt;START-OF-SELECTION.&lt;br /&gt;&lt;br /&gt;source : &lt;a href="http://abap-gallery.blogspot.com/2007/07/hide-parameter-select-option-in.html"&gt;http://abap-gallery.blogspot.com/2007/07/hide-parameter-select-option-in.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-770716412800985157?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/770716412800985157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/hide-parameterselect-option-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/770716412800985157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/770716412800985157'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/hide-parameterselect-option-in.html' title='Hide Parameter/Select Option in Selection Screen'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-3890083566182845111</id><published>2009-06-07T16:59:00.001+07:00</published><updated>2009-06-07T17:05:43.840+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Searh BADI for each transaction</title><content type='html'>1. Go to tcode se93, enter the transection name eg va01 click display button. get the package name.&lt;br /&gt;2. Go to tcode se84-&gt;enhancement-&gt;Bussiness-addins-&gt;definition,enter the package name and execute.&lt;br /&gt;&lt;br /&gt;here you get the list of all the enhancement badi's for the given package.&lt;br /&gt;&lt;br /&gt;source :https://www.sdn.sap.com/irj/scn/thread?threadID=1360407&lt;br /&gt;&lt;br /&gt;other link : https://www.sdn.sap.com/irj/scn/advancedsearch?query=how+to+implement+badi&amp;amp;cat=sdn_all&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-3890083566182845111?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/3890083566182845111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/searh-badi-for-each-transaction.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3890083566182845111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3890083566182845111'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/searh-badi-for-each-transaction.html' title='Searh BADI for each transaction'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4443249258828539597</id><published>2009-06-06T19:52:00.001+07:00</published><updated>2009-06-06T19:52:57.946+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Function for Convert minus sign to the left</title><content type='html'>&lt;p&gt;data &lt;b&gt;&lt;span style="color:#990000;"&gt;prnamt(18)&lt;/span&gt;&lt;/b&gt;. &lt;/p&gt;&lt;p&gt;CALL FUNCTION '&lt;b&gt;&lt;span style="color:#009900;"&gt;CLOI_PUT_SIGN_IN_FRONT&lt;/span&gt;&lt;/b&gt;'&lt;br /&gt;                 CHANGING&lt;br /&gt;                    VALUE         =  &lt;b&gt;&lt;span style="color:#990000;"&gt;prnamt(18)&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/8634541958205365634-4443249258828539597?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4443249258828539597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/06/function-for-convert-minus-sign-to-left.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4443249258828539597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4443249258828539597'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/06/function-for-convert-minus-sign-to-left.html' title='Function for Convert minus sign to the left'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6071862868384178472</id><published>2009-05-31T13:29:00.000+07:00</published><updated>2009-05-31T13:36:50.938+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Print Form PO (Purchase Order)</title><content type='html'>When you create add on program for Print Out Form PO ( Purchase Order), you will use t-code (SE38). To get parameter PO number from  ME23N, you need to add coding like this in below :&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;color:#0000ff;"&gt;&lt;div&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/div&gt; &lt;div&gt;*&amp;amp; Form entry_neu&lt;/div&gt; &lt;div&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/div&gt; &lt;div&gt;* text&lt;/div&gt; &lt;div&gt;*----------------------------------------------------------------------*&lt;/div&gt; &lt;div&gt;* --&gt;ENT_RETCO text&lt;/div&gt; &lt;div&gt;* --&gt;ENT_SCREEN text&lt;/div&gt; &lt;div&gt;*----------------------------------------------------------------------*&lt;/div&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt; &lt;div&gt;FORM entry_neu USING ent_retco ent_screen.&lt;/div&gt; &lt;div&gt;CLEAR ent_retco.&lt;/div&gt; &lt;div&gt;MOVE nast-objky TO p_ebeln.&lt;/div&gt;&lt;/span&gt;&lt;span style="font-size:78%;color:#0000ff;"&gt; &lt;div&gt;* Collect data from several tables&lt;/div&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt; &lt;div&gt;PERFORM f_collect_data.&lt;/div&gt;&lt;/span&gt;&lt;span style="font-size:78%;color:#0000ff;"&gt; &lt;div&gt;** Display form&lt;/div&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt; &lt;div&gt;PERFORM f_display_form.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;ENDFORM. "entry_neu&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After you already finish to develop. You need to assign the program Id in Output Type using t-code spro.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6071862868384178472?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6071862868384178472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/print-form-po-purchase-order.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6071862868384178472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6071862868384178472'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/print-form-po-purchase-order.html' title='Print Form PO (Purchase Order)'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6823955635855534536</id><published>2009-05-28T19:39:00.001+07:00</published><updated>2009-05-28T19:42:31.313+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Declare Work Area</title><content type='html'>There are two options or more to define workarea, but we must define internal table firstly.&lt;br /&gt;&lt;br /&gt;DATA : it_mara TYPE STANDARD TABLE OF mara.&lt;br /&gt;&lt;br /&gt;DATA : wa_mara LIKE LINE OF it_mara.&lt;br /&gt;                        OR&lt;br /&gt;DATA : wa_mara TYPE mara.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6823955635855534536?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6823955635855534536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/declare-work-area.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6823955635855534536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6823955635855534536'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/declare-work-area.html' title='Declare Work Area'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6662611800641136267</id><published>2009-05-22T21:31:00.002+07:00</published><updated>2009-05-22T21:34:38.048+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FI'/><title type='text'>Parked document</title><content type='html'>If you search Parked document FI, you must give an attention for table :&lt;br /&gt;&lt;br /&gt;VBSEGS : Parked document for GL Transaction&lt;br /&gt;VBSEGD : Parked document for SD Transaction&lt;br /&gt;VBSEGK : Parked document for Purchasing Transaction&lt;br /&gt;&lt;br /&gt;BSEG is only for Posted document.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6662611800641136267?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6662611800641136267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/parked-document.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6662611800641136267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6662611800641136267'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/parked-document.html' title='Parked document'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-8104629188954042163</id><published>2009-05-16T22:00:00.001+07:00</published><updated>2009-06-26T20:37:47.932+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>DELETE ADJACENT DUPLICATE</title><content type='html'>l_tab_detail[] = tab_detail[].&lt;br /&gt;SORT l_tab_detail BY vbeln vgbel.&lt;br /&gt;DELETE ADJACENT DUPLICATES FROM l_tab_detail COMPARING vbeln vgbel.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-8104629188954042163?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/8104629188954042163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/delete-adjacent-duplicate.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8104629188954042163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8104629188954042163'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/delete-adjacent-duplicate.html' title='DELETE ADJACENT DUPLICATE'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-8787708488869123961</id><published>2009-05-16T21:52:00.006+07:00</published><updated>2009-06-26T20:38:19.692+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Field Catalog in ALV</title><content type='html'>Field catalog containing descriptions of the list output fields. You can use fields of the catalog to determine the number format and column properties of the list to be displayed.&lt;br /&gt;&lt;br /&gt;The field catalog contains more than 60 fields, some of which are only used internally. The field catalog is defined in the Data Dictionary through table type LVC_T_FCAT.&lt;br /&gt;&lt;br /&gt;fieldname             " Fieldname&lt;br /&gt;&lt;br /&gt;ref_tabname       " Reference Tablename&lt;br /&gt;&lt;br /&gt;ref_fieldname    " Reference Fieldname&lt;br /&gt;&lt;br /&gt;no_out                     " (O)blig.(X)no out&lt;br /&gt;&lt;br /&gt;outputlen          " Output length&lt;br /&gt;&lt;br /&gt;seltext_l                " long key word&lt;br /&gt;&lt;br /&gt;seltext_m           " middle key word&lt;br /&gt;&lt;br /&gt;seltext_s             " short key word&lt;br /&gt;&lt;br /&gt;reptext_ddic    " heading (ddic)&lt;br /&gt;&lt;br /&gt;round                      " round in write statement&lt;br /&gt;&lt;br /&gt;do_sum                 " sum up&lt;br /&gt;&lt;br /&gt;hotspot                  " 'X' = hotspot is active -&gt; Event click&lt;br /&gt;&lt;br /&gt;decimals_out    " decimals in write statement&lt;br /&gt;&lt;br /&gt;currency &lt;br /&gt;&lt;br /&gt;quantity &lt;br /&gt;&lt;br /&gt;qfieldname       " field with quantity unit&lt;br /&gt;&lt;br /&gt;cfieldname        " field with currency unit&lt;br /&gt;&lt;br /&gt;checkbox             " 'X' = checkbox or ' ' = not checkbox&lt;br /&gt;&lt;br /&gt;icon                          " 'X' = icon or ' ' = not icon&lt;br /&gt;&lt;br /&gt;fix_column       " 'X' = Fix Column On or ' ' = Fix Column off&lt;br /&gt;&lt;br /&gt;key                          " 'X' = Key or ' ' = not Key&lt;br /&gt;&lt;br /&gt;* For field currency, there are two options :&lt;br /&gt;1.  fixed currency&lt;br /&gt;   t_fieldcat-cfieldname = fu_cfield.&lt;br /&gt;   t_fieldcat-ctabname = fu_types.&lt;br /&gt;&lt;br /&gt;2. variable currency.&lt;br /&gt;   t_fieldcat-datatype = 'CURR'.&lt;br /&gt;   t_fieldcat-currency = fu_curr.&lt;br /&gt;&lt;br /&gt;* For field quantity :&lt;br /&gt; qfieldname&lt;br /&gt; qtabname&lt;br /&gt;&lt;br /&gt;* For field "do_sum" is "C" or "X'. It will display on Sum of this Field in ALV (Akan melakukan penjumlahan langsung pada saat display di ALV)&lt;br /&gt;&lt;br /&gt;* For field "just" is Justification : L, R, C&lt;br /&gt;&lt;br /&gt;* For field "ref_tabname    " and "ref_fieldname" are structure (nama field, length) diambil dari reference field of table. If you define new field which doesn't have a relation of table..It would be better to fill empty..and you must define other field category in ALV such as "seltext_l", "seltext_m", "seltext_s"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-8787708488869123961?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/8787708488869123961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/field-catalog-in-alv.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8787708488869123961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8787708488869123961'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/field-catalog-in-alv.html' title='Field Catalog in ALV'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7338424958985011243</id><published>2009-05-16T21:40:00.003+07:00</published><updated>2009-05-16T21:51:51.207+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Record VBPA</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_T_FAuyAUStU/Sg7QsA6DLDI/AAAAAAAAAAg/UKy4dVquo5A/s1600-h/File1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 249px;" src="http://4.bp.blogspot.com/_T_FAuyAUStU/Sg7QsA6DLDI/AAAAAAAAAAg/UKy4dVquo5A/s320/File1.JPG" alt="" id="BLOGGER_PHOTO_ID_5336432063056915506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;VBPA is Sales Document : Partner table. It explains one customer can have different ship code or different payee or sales employee.&lt;br /&gt;It could be interesting, it is not only header table but every item can have different ship code or etc.&lt;br /&gt;So, this image explain how the record item can be saved if it has different ship code.&lt;br /&gt;It will save ship code of header and only save the different ship code of item (item tertentu). If the item has the same ship code with header..it doesn't create a record in vbpa table.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7338424958985011243?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7338424958985011243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7338424958985011243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7338424958985011243'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/blog-post.html' title='Record VBPA'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_T_FAuyAUStU/Sg7QsA6DLDI/AAAAAAAAAAg/UKy4dVquo5A/s72-c/File1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1054298195719865689</id><published>2009-05-16T21:25:00.000+07:00</published><updated>2009-05-16T21:34:45.832+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>SELECT OPTIONS or RANGES</title><content type='html'>&lt;span style="color: rgb(255, 0, 0); font-weight: bold;font-size:130%;" &gt;Difference Between Select-Options &amp;amp; Ranges &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What are the difference between SELECT-OPTIONS &amp;amp; RANGES? &lt;/span&gt;&lt;br /&gt;Here both SELECT-OPTIONS &amp;amp; RANGES works for the same purpose.  They both are used for the range selection from selection screen.  The main diff. between them is, while we use SELECT-OPTIONS system implicitly creates the select options internal table which contains the fields of SIGN,OPTION,LOW &amp;amp; HIGH.  But in case of RANGES, this internal table should be defined explicitly.&lt;br /&gt;Eg. to SELECT-OPTIONS :&lt;br /&gt;-----------------------------------------&lt;br /&gt;REPORT YARSELECT.&lt;br /&gt;TABLES YTXLFA1.&lt;br /&gt;SELECT-OPTIONS : VENDOR FOR YTXLFA1-LIFNR.&lt;br /&gt;INITIALIZATION.&lt;br /&gt;VENDOR-LOW    =   1000.               " It specifies the range starting value.&lt;br /&gt;VENDOR-HIGH    =   2000.               " It specifies the range ending value.&lt;br /&gt;VENDOR-OPTION  =  'BT'.                " specifies ranges value is in between.&lt;br /&gt;VENDOR-SIGN      = 'I'.                     "specifies both inclussive.&lt;br /&gt;APPEND VENDOR.&lt;br /&gt;- - - -&lt;br /&gt;- - - -&lt;br /&gt;SELECT LIFNR LAND1 NAME1 FROM LFA1 INTO TABLE ITAB &lt;br /&gt;WHERE LIFNR IN VENDOR.&lt;br /&gt;Eg. to RANGES:&lt;br /&gt;-------------------------&lt;br /&gt;REPORT YARRANGE.&lt;br /&gt;TABLES YTXLFA1.&lt;br /&gt;RANGES: VENDOR FOR YTXFLA1-LIFNR.&lt;br /&gt;- - - - &lt;br /&gt;- - - --&lt;br /&gt;- - - - &lt;br /&gt;SELECT LIFNR LAND1 NAME1 FROM LFA1 INTO TABLE ITAB &lt;br /&gt;WHERE LIFNR IN VENDOR.&lt;br /&gt;Here with RANGES  user has to design an internal table with fields - &lt;br /&gt;SIGN,OPTION,LOW and HIGH EXPLICITLY.&lt;br /&gt;---------------------------------------------------------------------------------------------------------&gt;&lt;br /&gt;Example:&lt;br /&gt; &lt;br /&gt;select-options: bukrs for zstock-bukrs.&lt;br /&gt; &lt;br /&gt;Should the user fill in 'ABFI' in BUKRS on the selection screen, BUKRS will look like this:&lt;br /&gt; &lt;br /&gt;IEQABFI&lt;br /&gt; &lt;br /&gt;This is because BUKRS is set as a table as follows:&lt;br /&gt; &lt;br /&gt;begin of bukrs occurs 0,&lt;br /&gt;  SIGN(1)    type c,&lt;br /&gt;  OPTION(2) type c,&lt;br /&gt;  LOW         like bukrs,&lt;br /&gt;  HIGH         like bukrs,&lt;br /&gt;end of bukrs.&lt;br /&gt; &lt;br /&gt;Now, when you create the following range, it will have the exact same fields set inside its table:&lt;br /&gt; &lt;br /&gt;Ranges: bukrs for zstock-bukrs.&lt;br /&gt; &lt;br /&gt;The difference is, because ranges doesn't show on the selection screen, you will have to fill it yourself, meaning you will have to fill bukrs-sign, bukrs-option, bukrs-low &amp;amp; bukrs-high all manually.&lt;br /&gt; &lt;br /&gt;Some tips:&lt;br /&gt;Sign is always I (for Include) or E (for Exclude)&lt;br /&gt;Option can be a whole range, which includes:&lt;br /&gt;EQ        (Equal) &lt;br /&gt;BT        (Between)) &lt;br /&gt;CP        (Contain Pattern)&lt;br /&gt;So let's say you want to have the range check for all company codes not starting with AB, you will set your code as follow:&lt;br /&gt; &lt;br /&gt;ranges: bukrs for zstock-bukrs.&lt;br /&gt; &lt;br /&gt;bukrs-sign = 'E'.             "Exclude&lt;br /&gt;bukrs-option = 'CP'.        "Pattern&lt;br /&gt;bukrs-low = 'AB*'.            "Low Value&lt;br /&gt;bukrs-high = ''.                "High Value&lt;br /&gt;append bukrs.&lt;br /&gt; &lt;br /&gt;Always remember to APPEND your range when you fill it, as the WHERE clause checks against the lines of the range table, not against the header line.&lt;br /&gt; &lt;br /&gt;Hope this explains it well enough.&lt;br /&gt;---------------------------------------------------------------------------------------------------------&gt;&lt;br /&gt;What does SIGN "I" &amp;amp; "E" mean?&lt;br /&gt;The "I" stands for Include, and the "E" for Exclude.&lt;br /&gt; &lt;br /&gt;The easiest way to learn how the range selections work is, create the following dummy program:&lt;br /&gt; &lt;br /&gt;report dummy.&lt;br /&gt;tables: mara.&lt;br /&gt;select-options: matnr for mara-matnr.&lt;br /&gt;start-of-selection.&lt;br /&gt;loop at matnr.&lt;br /&gt;write: / matnr-sign,&lt;br /&gt;           matnr-option,&lt;br /&gt;           matnr-low,&lt;br /&gt;           matnr-high.&lt;br /&gt;endloop.&lt;br /&gt; &lt;br /&gt;Run this program, and fill in a lot of junk into MATNR. Fill in some includes, some excludes, some ranges, etc., and you will soon realise how the system builds ranges (select-options). Once you know that, you can fill your own ranges quickly and efficiently.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1054298195719865689?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1054298195719865689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/select-options-or-ranges.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1054298195719865689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1054298195719865689'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/select-options-or-ranges.html' title='SELECT OPTIONS or RANGES'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6722071880765010046</id><published>2009-05-16T21:12:00.003+07:00</published><updated>2009-05-16T21:34:22.694+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Function Determine Due Date</title><content type='html'>this function is used for counting due date of invoice. Table invoice doesn't have duedate field, it must count from payment terms rules. In payment terms rules, duedate can be counted from one of this fields namely base line date or document date or manually or ...(I forget) and will be saved in bseg or bsid/bsad or bsik/bsak - in baseline date field (zbfdt). So, this function will help for counting duedate.&lt;br /&gt;&lt;br /&gt;REPORT ZVR_INCLUDE2 .&lt;br /&gt;tables : faede,bseg.&lt;br /&gt;parameters :vbeln like bseg-vbeln,&lt;br /&gt;koart like bseg-koart.&lt;br /&gt;data :str1 like faede.&lt;br /&gt;str1-rebzg = vbeln.&lt;br /&gt;str1-koart = koart.&lt;br /&gt;CALL FUNCTION 'DETERMINE_DUE_DATE'&lt;br /&gt;EXPORTING&lt;br /&gt;I_FAEDE = str1&lt;br /&gt;IMPORTING&lt;br /&gt;E_FAEDE = str1&lt;br /&gt;* EXCEPTIONS&lt;br /&gt;* ACCOUNT_TYPE_NOT_SUPPORTED = 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;br /&gt;write :/ 'net date ',str1-netdt.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6722071880765010046?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6722071880765010046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/function-determine-due-date.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6722071880765010046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6722071880765010046'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/function-determine-due-date.html' title='Function Determine Due Date'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-8097684474315898961</id><published>2009-05-11T08:52:00.001+07:00</published><updated>2009-05-16T21:33:34.177+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Convert SMARTFORMS To PDF</title><content type='html'>PARAMETERS : p_werks TYPE t001w-werks.&lt;br /&gt;PARAMETERS : p_file LIKE rlgrap-filename DEFAULT 'C:\temp\1.pdf'.&lt;br /&gt;&lt;br /&gt;DATA : v_fnam TYPE rs38l_fnam.&lt;br /&gt;DATA : flag TYPE char1.&lt;br /&gt;DATA : file TYPE string.&lt;br /&gt;DATA : mi_bytecount TYPE i.&lt;br /&gt;DATA : lines LIKE tline OCCURS 100 WITH HEADER LINE.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Control Parameters&lt;br /&gt;DATA : it_ssfctrlop TYPE TABLE OF ssfctrlop.&lt;br /&gt;DATA : wa_ssfctrlop TYPE ssfctrlop.&lt;br /&gt;&lt;br /&gt;*Output Options&lt;br /&gt;DATA : it_output_options TYPE TABLE OF ssfcompop.&lt;br /&gt;DATA : wa_output_options TYPE ssfcompop.&lt;br /&gt;&lt;br /&gt;*Job Output Info&lt;br /&gt;DATA : it_job_output_info TYPE TABLE OF ssfcrescl.&lt;br /&gt;DATA : wa_job_output_info TYPE ssfcrescl.&lt;br /&gt;&lt;br /&gt;*Job Output Options&lt;br /&gt;DATA : it_job_output_options TYPE TABLE OF ssfcresop.&lt;br /&gt;DATA : wa_job_output_options TYPE ssfcresop.&lt;br /&gt;&lt;br /&gt;CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'&lt;br /&gt;EXPORTING&lt;br /&gt;formname = 'ZSAMPLE_FORM'&lt;br /&gt;IMPORTING&lt;br /&gt;fm_name = v_fnam.&lt;br /&gt;&lt;br /&gt;wa_ssfctrlop-no_dialog = 'X'.&lt;br /&gt;wa_ssfctrlop-getotf = 'X'.&lt;br /&gt;wa_ssfctrlop-preview = 'X'.&lt;br /&gt;APPEND wa_ssfctrlop TO it_ssfctrlop.&lt;br /&gt;&lt;br /&gt;wa_output_options-tdnoprev = 'X'.&lt;br /&gt;wa_output_options-tdtitle = sy-title.&lt;br /&gt;wa_output_options-tdnewid = 'X'.&lt;br /&gt;APPEND wa_output_options TO it_output_options.&lt;br /&gt;&lt;br /&gt;CALL FUNCTION v_fnam&lt;br /&gt;EXPORTING&lt;br /&gt;control_parameters = wa_ssfctrlop&lt;br /&gt;output_options = wa_output_options&lt;br /&gt;p_werks = p_werks&lt;br /&gt;IMPORTING&lt;br /&gt;job_output_info = wa_job_output_info&lt;br /&gt;job_output_options = wa_job_output_options.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Convert to PDF&lt;br /&gt;CALL FUNCTION 'CONVERT_OTF'&lt;br /&gt;EXPORTING&lt;br /&gt;format = 'PDF'&lt;br /&gt;IMPORTING&lt;br /&gt;bin_filesize = mi_bytecount&lt;br /&gt;TABLES&lt;br /&gt;otf = wa_job_output_info-otfdata&lt;br /&gt;lines = lines&lt;br /&gt;EXCEPTIONS&lt;br /&gt;err_conv_not_possible = 1&lt;br /&gt;err_bad_otf = 2.&lt;br /&gt;&lt;br /&gt;*Download to ur PC&lt;br /&gt;file = p_file.&lt;br /&gt;CALL FUNCTION 'GUI_DOWNLOAD'&lt;br /&gt;EXPORTING&lt;br /&gt;bin_filesize = mi_bytecount&lt;br /&gt;filename = file&lt;br /&gt;filetype = 'BIN'&lt;br /&gt;TABLES&lt;br /&gt;data_tab = lines[].&lt;br /&gt;IF sy-subrc = 0.&lt;br /&gt;MESSAGE 'Downloaded Successfully' TYPE 'S'.&lt;br /&gt;ENDIF.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Source : http://sap.ittoolbox.com/groups/technical-functional/sap-dev/convert-smartforms-form-in-pdf-1002213&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-8097684474315898961?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/8097684474315898961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/05/convert-smartforms-to-pdf.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8097684474315898961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/8097684474315898961'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/05/convert-smartforms-to-pdf.html' title='Convert SMARTFORMS To PDF'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4887498173080833645</id><published>2009-03-27T15:38:00.004+07:00</published><updated>2009-05-16T21:31:12.431+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>IDOC Scenario</title><content type='html'>I have tried to IDOC SAP..but i tried from another source..you can try this at home...please download from &lt;a href="http://www.sap-interface.com/downloads/e-book/Idoc_Scenario.zip"&gt;this link&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-4887498173080833645?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4887498173080833645/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/idoc-scenario.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4887498173080833645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4887498173080833645'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/idoc-scenario.html' title='IDOC Scenario'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-608221089488965488</id><published>2009-03-15T19:51:00.006+07:00</published><updated>2009-03-15T20:46:11.470+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Table BSID and BSAD</title><content type='html'>Table BSID and BSAD&lt;br /&gt;&lt;br /&gt;the both of tables are FI tables and have a relation within Customer.&lt;br /&gt;&lt;br /&gt;Document Header table : BKPF -&gt; Accounting Document Header&lt;br /&gt;     Fields : BUKRS -&gt;Company Code&lt;br /&gt;             BELNR-&gt;Accounting Document Header&lt;br /&gt;            GJAHR-&gt;Fiscal Year&lt;br /&gt;  These fields is important. Because Document Header can be repeated every year or other Company Code.&lt;br /&gt;&lt;br /&gt;Document Segment : BSEG -&gt; Accounting Document Segment&lt;br /&gt;  Fields : BUKRS-&gt; Company Code&lt;br /&gt;             BELNR-&gt;Accounting Document Header&lt;br /&gt;             GJAHR-&gt;Fiscal Year&lt;br /&gt;             BUZEI-&gt;Number of Line Item Within Accounting Document&lt;br /&gt;             HKONT-&gt;General Ledger Account&lt;br /&gt;             SHKZG-&gt;Debit/Credit Indicator&lt;br /&gt;                               S -&gt; Debit&lt;br /&gt;                               H -&gt; Credit&lt;br /&gt;  This table is detail table. It would be very big records, because every posting accounting document will update this table. I can say it is Journal GL Table.&lt;br /&gt;&lt;br /&gt;Allocation Table : BSID -&gt;Accounting: Secondary Index for Customers -&gt; Open Items&lt;br /&gt;Fields : KUNNR -&gt; Customer Number 1&lt;br /&gt;&lt;br /&gt;  I call this table as Allocation Table, because :&lt;br /&gt;   1. We can know total amount of every payment to allocate invoice.&lt;br /&gt;   2. Or Credit Memo can allocate to invoice&lt;br /&gt;  This table fill open invoice (It hasn't been paid yet) or Payment of invoice hasn't been fully (belum Lunas)&lt;br /&gt;  example :&lt;br /&gt;  Invoice 1000&lt;br /&gt;  Payment1 200&lt;br /&gt;  Payment2 400&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Allocation Table : BSAD -&gt;Accounting: Secondary Index for Customers -&gt; Closed Items&lt;br /&gt;  It is the same as BSID, but it only fills invoice has been paid fully (Lunas)&lt;br /&gt;  example :&lt;br /&gt;  Invoice 1000&lt;br /&gt;  Payment1 200&lt;br /&gt;  Payment2 400&lt;br /&gt;  Payment3 400&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-608221089488965488?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/608221089488965488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-bsid-and-bsad.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/608221089488965488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/608221089488965488'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-bsid-and-bsad.html' title='Table BSID and BSAD'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-481733362514113356</id><published>2009-03-10T20:04:00.002+07:00</published><updated>2009-03-15T17:18:21.887+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Function modules: Amount and Currency</title><content type='html'>&lt;ul&gt;&lt;li&gt;&lt;strong&gt;CURRENCY_AMOUNT_SAP_TO_IDOC&lt;/strong&gt; - Convert currency to IDOC format&lt;/li&gt;&lt;li&gt;&lt;strong&gt;CONVERT_TO_LOCAL_CURRENCY&lt;/strong&gt; - Conversion of currency&lt;/li&gt;&lt;li&gt;&lt;strong&gt;CLOI_PUT_SIGN_IN_FRONT&lt;/strong&gt; Move the negative sign from the left hand side of a number, to the right hand side of the number. Note that The result will be left justified (like all&lt;br /&gt;character fields), not right justified as numbers normally are.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;CONVERT_TO_FOREIGN_CURRENCY&lt;/strong&gt; Convert local currency to foreign currency.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;CONVERT_TO_LOCAL_CURRENCY&lt;/strong&gt; Convert from foreign currency to local currency&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h1&gt;Example 1: Convert amount to/from string&lt;br /&gt;&lt;br /&gt;&lt;/h1&gt;  &lt;p&gt;&lt;u&gt;Amount to string:&lt;/u&gt; &lt;/p&gt;  &lt;pre&gt;CALL FUNCTION 'HRCM_AMOUNT_TO_STRING_CONVERT'&lt;br /&gt; EXPORTING&lt;br /&gt;   betrg                         = 3000&lt;br /&gt;   WAERS                         = 'DKK'&lt;br /&gt;&lt;span style="color:#0000ff;"&gt;*   NEW_DECIMAL_SEPARATOR         =&lt;br /&gt;*   NEW_THOUSANDS_SEPARATOR       =&lt;br /&gt;&lt;/span&gt; IMPORTING&lt;br /&gt;  STRING                        =  slam.&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;&lt;u&gt;String to amount:&lt;/u&gt; &lt;/p&gt;  &lt;pre&gt;CALL FUNCTION 'HRCM_STRING_TO_AMOUNT_CONVERT'&lt;br /&gt; EXPORTING&lt;br /&gt;   string                    = slam2&lt;br /&gt;   DECIMAL_SEPARATOR         = '.'&lt;br /&gt;&lt;span style="color:#0000ff;"&gt;*   THOUSANDS_SEPARATOR       =&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;   WAERS                     = 'HUF'&lt;br /&gt;IMPORTING&lt;br /&gt;  BETRG                     = b2&lt;br /&gt;&lt;span style="color:#0000ff;"&gt;* EXCEPTIONS&lt;br /&gt;*   CONVERT_ERROR             = 1&lt;br /&gt;*   OTHERS                    = 2&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;source :http://erpgenie.com/utilities/1155-function-modules-amount-and-currency&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-481733362514113356?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/481733362514113356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/function-modules-amount-and-currency_10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/481733362514113356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/481733362514113356'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/function-modules-amount-and-currency_10.html' title='Function modules: Amount and Currency'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-3552934816834157935</id><published>2009-03-05T16:28:00.001+07:00</published><updated>2009-03-15T17:17:13.827+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>TABLE VBUK VBUP VBFA</title><content type='html'>TABLE VBUK VBUP VBFA&lt;br /&gt;&lt;br /&gt;* VBUK is Status Header table. It could be from Sales Order table (VBAK), Delivery Order table (LIKP), and Billing table (VBRK).&lt;br /&gt;&lt;br /&gt;    VBELN = Sales and Distribution Document Number&lt;br /&gt;    LFSTK = Delivery status&lt;br /&gt;    LFGSK = Overall delivery status for all items&lt;br /&gt;    FKSTK = Billing status&lt;br /&gt;    FKSAK = Billing status (order-related billing document)&lt;br /&gt;    BUCHK = Posting Status of Billing Document&lt;br /&gt;    etc&lt;br /&gt;&lt;br /&gt;*VBUP is Status Detail table. It could be from Sales Order detail table (VBAP), Delivery Order detail table (LIPS), and Billing detail table (VBRP).&lt;br /&gt;&lt;br /&gt;    VBELN = Sales and Distribution Document Number&lt;br /&gt;    LFSTA = Delivery status&lt;br /&gt;    LFGSA = Overall delivery status of the item&lt;br /&gt;    FKSTA = Billing status of delivery-related billing documents&lt;br /&gt;    FKSAA = Billing status for order-related billing documents&lt;br /&gt;    etc&lt;br /&gt;&lt;br /&gt;*VBFA is Sales Document Flow. It is a detail table. You can see relation between Sales Order and Delivery Order and Post Good Issue and Sales Invoice OR relation between Delivery Order and Sales Invoice&lt;br /&gt;&lt;br /&gt;    VBELV = Preceding sales and distribution document&lt;br /&gt;    POSNV = Preceding item of an SD document&lt;br /&gt;    VBELN = Subsequent sales and distribution document&lt;br /&gt;    POSNN = Subsequent item of an SD document&lt;br /&gt;    RFMNG = Referenced quantity in base unit of measure&lt;br /&gt;    MEINS = Base Unit of Measure&lt;br /&gt;    RFWRT = Reference value&lt;br /&gt;    WAERS = Statistics currency&lt;br /&gt;&lt;br /&gt;    Be Careful When you report Sales Invoice Amount from this table. If you need to collect subsequent document (Sales Invoice), because it can fill Sales Invoice Cancellation.&lt;br /&gt;?? Be careful for Delivery order, for RFWRT field never fills value (0).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-3552934816834157935?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/3552934816834157935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-vbuk-vbup-vbfa.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3552934816834157935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/3552934816834157935'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-vbuk-vbup-vbfa.html' title='TABLE VBUK VBUP VBFA'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-7536744506220650445</id><published>2009-03-05T15:35:00.001+07:00</published><updated>2009-03-15T17:17:13.828+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Table2 Billing</title><content type='html'>Table VBRK&lt;br /&gt;&lt;br /&gt;*VBRK is Sales Invoice table.&lt;br /&gt;    VBRK is used for saving Sales Invoice Header data, Credit Memo Header data, etc.&lt;br /&gt;    Some fields which i will explain, have special attention for me.&lt;br /&gt;&lt;br /&gt;    VBELN = Billing Document&lt;br /&gt;    FKART = Billing Type&lt;br /&gt;    FKTYP = Billing category&lt;br /&gt;    VBTYP = SD document category&lt;br /&gt;                       M = Invoice&lt;br /&gt;                       N = Invoice Cancellation&lt;br /&gt;                       O = Credit Memo&lt;br /&gt;                       P = Debit Memo&lt;br /&gt;                      S = Credit Memo cancellation&lt;br /&gt;                     etc&lt;br /&gt;    KURRF = Exchange rate for FI postings&lt;br /&gt;    WAERK = SD document currency&lt;br /&gt;    VKORG = Sales Organization&lt;br /&gt;    VTWEG = Distribution Channel&lt;br /&gt;    BZIRK = Sales district&lt;br /&gt;    KNUMV = Number of the document condition&lt;br /&gt;    FKDAT = Billing date for billing index and printout&lt;br /&gt;    ZTERM = Terms of payment key&lt;br /&gt;    NETWR = Net value in document currency&lt;br /&gt;    KUNRG = Payer&lt;br /&gt;    KUNAG = Sold-to party&lt;br /&gt;    SFAKN = Cancelled billing document number&lt;br /&gt;                        It is only filled if the document is the document cancel and SFAKN is the document billing reference&lt;br /&gt;    FKSTO = Billing document is cancelled.&lt;br /&gt;                        FKSTO, it explain that the document has been cancelled.&lt;br /&gt;                        so, if you want to know which document has cancelled the billing,&lt;br /&gt;                        you have to search VBRK table again which field is VBRK.SFAKN = VBRK.VBELN&lt;br /&gt;&lt;br /&gt;*VBRP is sales invoice detail table.&lt;br /&gt;    VBELN = Billing Document&lt;br /&gt;    POSNR = Billing item&lt;br /&gt;    FKIMG = Actual Invoiced Quantity&lt;br /&gt;    VRKME = Sales unit&lt;br /&gt;    MEINS = Base Unit of Measure&lt;br /&gt;    NETWR = Net value of the billing item in document currency&lt;br /&gt;    VGBEL = Document number of the reference document (Related with table LIPS)&lt;br /&gt;    VGPOS = Item number of the reference item (Related with table LIPS)&lt;br /&gt;    AUBEL = Sales Document&lt;br /&gt;    AUPOS = Sales Document Item&lt;br /&gt;    MATNR = Material Number&lt;br /&gt;    SPART = Division&lt;br /&gt;    VKGRP = Sales group&lt;br /&gt;    VKBUR = Sales office&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-7536744506220650445?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/7536744506220650445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table2-billing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7536744506220650445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/7536744506220650445'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table2-billing.html' title='Table2 Billing'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-6262566405009237139</id><published>2009-03-05T15:26:00.007+07:00</published><updated>2009-03-15T17:17:13.829+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Table KNC1</title><content type='html'>It is a good table because fills summary AR Customer per month/year.&lt;br /&gt;I have to thank to Mr. Popo (one of the KOMTEK member).&lt;br /&gt;So, if you want to create a Summary AR customer report using this table.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-6262566405009237139?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/6262566405009237139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-knc1_05.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6262566405009237139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/6262566405009237139'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-knc1_05.html' title='Table KNC1'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4342835630950064076</id><published>2009-03-05T10:48:00.005+07:00</published><updated>2009-03-15T17:17:13.829+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Table2 SalesOrder</title><content type='html'>Table VBAK&lt;br /&gt;&lt;br /&gt;* VBAK is Sales Order Header table. But I don't explain for relation with other table,&lt;br /&gt;    you can download sap-table.exe in www.sap-interface.com or you can search it in google.&lt;br /&gt;    VBAK is used for saving Sales Order Header data, Sales Inquiry Header, Sales Quotation     Header and Return Order Header data.&lt;br /&gt;   &lt;br /&gt;    Some fields which i will explain, have special attention for me.&lt;br /&gt;    Vbeln = Sales Document&lt;br /&gt;    Audat = document date&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    Vbtyp&lt;/span&gt; = SD Document Category&lt;br /&gt;                    A = Inquiry&lt;br /&gt;                    B = Quotation&lt;br /&gt;                    C = Order&lt;br /&gt;                    I = Order w/o charge&lt;br /&gt;                    H = Returns&lt;br /&gt;                    etc&lt;br /&gt;    Auart = Sales Document type&lt;br /&gt;                    This is for specific document. It depends on customizing from the functional.&lt;br /&gt;    Netwr = Net Value of the Sales Order in Document Currency&lt;br /&gt;                    This value don't include Tax Amount.  So, if you want to get Pricing condition, you can search on KONV table (Please read my blog about table KONV&amp;amp; KONP)&lt;br /&gt;    Waerk = SD document currency&lt;br /&gt;    Vkorg = Sales Organization&lt;br /&gt;    Vtweg = Distribution Channel&lt;br /&gt;    SPart = Division&lt;br /&gt;    Vkgrp = Sales group&lt;br /&gt;    Vkbur = Sales office&lt;br /&gt;    BSTnk = Customer purchase order number&lt;br /&gt;    Kunnr = Sold to Party (Customer)&lt;br /&gt;    VGBel = Document number of the reference document. Reference Document from Quotation&lt;br /&gt;    KNUMV = Number of the document condition (Relation for table KONV)&lt;br /&gt;&lt;br /&gt;* VBAP is Sales Order Detail table.It is nothing special for me, so i just copy paste fields which are almost used every creating report&lt;br /&gt;    VBELN = Sales Document (Related with VBAK.VBELN)&lt;br /&gt;    POSNR = Sales Document Item&lt;br /&gt;    MATNR = Material Number&lt;br /&gt;    KWMENG = Cumulative order quantity in sales units&lt;br /&gt;    VRKME = Sales unit&lt;br /&gt;    MEINS = Base Unit of Measure&lt;br /&gt;    SPART = Division&lt;br /&gt;    NETWR = Net value of the order item in document currency&lt;br /&gt;    WAERK = SD document currency&lt;br /&gt;    Plant = Plant (Own or External)&lt;br /&gt;    LGORT = Storage Location&lt;br /&gt;    VSTEL = Shipping Point/Receiving Point&lt;br /&gt;    KNUMH = Number of condition record from batch determination (Relation for table KONP)&lt;br /&gt;&lt;br /&gt;*VBPA is Partner table of Sales Document. You can get Sales Employee field from this table.&lt;br /&gt;    VBELN = Sales and Distribution Document Number (Related with VBAK.VBELN)&lt;br /&gt;    POSNR = Item number of the SD document&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    PARVW&lt;/span&gt; = Partner function&lt;br /&gt;                        AG = Sold to party&lt;br /&gt;                        RE = Bill to party&lt;br /&gt;                        RG = Payer&lt;br /&gt;                        WE = Ship to Party&lt;br /&gt;                        VE = Sales Employee       &lt;br /&gt;    KUNNR = Customer Number 1&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    PERNR&lt;/span&gt; = Personnel Number&lt;br /&gt;&lt;br /&gt;*VBKD is Business data table of Sales Document. You can get Exchange Rate amount and Sales District fields.&lt;br /&gt;    VBELN = Sales and Distribution Document Number (Related with VBAK.VBELN)&lt;br /&gt;    POSNR = Item number of the SD document (Related with VBAP.POSNR)&lt;br /&gt;                     Be Careful..untuk exchange rate amount sebenarnya berdasarkan item number,&lt;br /&gt;jika customizing bisa menyatakan satu document hanya berlaku satu currency maka POSNR berisi '000000'&lt;br /&gt;    BZIRK = Sales district&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    KURSK&lt;/span&gt; = Exchange Rate for Price Determination&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;    ZTERM&lt;/span&gt; = Terms of payment key&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-4342835630950064076?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4342835630950064076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table2-salesorder.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4342835630950064076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4342835630950064076'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table2-salesorder.html' title='Table2 SalesOrder'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-4886197375308372076</id><published>2009-03-01T22:12:00.000+07:00</published><updated>2009-03-15T17:18:21.887+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ABAP'/><title type='text'>Dialog Transaction Execution  dari kutipan BC402</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_T_FAuyAUStU/SaqmfIWErVI/AAAAAAAAAAU/LD-c6RbTYRc/s1600-h/Diagram+Execution.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 239px;" src="http://1.bp.blogspot.com/_T_FAuyAUStU/SaqmfIWErVI/AAAAAAAAAAU/LD-c6RbTYRc/s320/Diagram+Execution.bmp" alt="" id="BLOGGER_PHOTO_ID_5308238164555771218" border="0" /&gt;&lt;/a&gt;You assign a dialog transaction to a module pool.  The following steps occur when you run a dialog transaction:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;First, the LOAD-OF-PROGRAM event is triggered.  Once this event block has been executed, the ABAP processor passes control to the screen processor. For an example of how to use this new event, refer to the example in the Function Groups and Function Modules unit.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The screen processor processes the intial screen specified in the transaction definition.  The initial screen can be a selection screen (regardless of the program type).  The PROCESS BEFORE OUTPUT event is triggered and control passes to the ABAP processor, which processes the first PBO module.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The ABAP processor executes the processing block and returns control to the screen processor.  Once all PBO modules have been processed, the contents of any ABAP fields with identically-named corresponding fields on the screen are transported to the relevant screen fields.  Then the screen is displayed (screen contents, active title, active status).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Once the user has chosen a dialog function (such as ENTER), the contents of the screen fields are transported back to the corresponding identically-named fields in the ABAP program, and the processing blocks that belong to the PROCESS AFTER INPUT event are processed.  The system then continues by processing the next screen&lt;/li&gt;&lt;/ul&gt;The only processing logic that is processed in a dialog transaction are the statements belonging to the LOAD-OF-PROGRAM event and those occurring in the various modules.&lt;br /&gt;However, you can also use the statement LEAVE TO LIST-PROCESSING. This makes all of the list processing events available to you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-4886197375308372076?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/4886197375308372076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/dialog-transaction-execution-dari.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4886197375308372076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/4886197375308372076'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/dialog-transaction-execution-dari.html' title='Dialog Transaction Execution  dari kutipan BC402'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_T_FAuyAUStU/SaqmfIWErVI/AAAAAAAAAAU/LD-c6RbTYRc/s72-c/Diagram+Execution.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8634541958205365634.post-1614956717433859558</id><published>2009-03-01T21:26:00.001+07:00</published><updated>2009-06-30T14:27:41.604+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SD'/><title type='text'>Table KONV &amp; KONP</title><content type='html'>Table KONV dan KONP merupakan table condition price pada SD (Sales &amp;amp; Distribution).&lt;br /&gt;Keduanya ada hubungan dengan Sales Order dan Sales Invoice.&lt;br /&gt;u/ table KONV punya relation table VBAK (Sales Order) dengan field KONV.KNUMV= VBAK.KNUMV&lt;br /&gt;dan juga punya relation dengan table VBRK (Sales Invoice) yaitu atau KONV.KNUMV= VBRK.KNUMV&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Tapi yg jadi catatan khusus adalah isi table KONV bukan berisi satu baris aja tapi tergantung dari detail table VBAP atau detail table VBRP. Misal 1 Sales Order (VBAK) ada 3 Order Detail (VBAP) maka di table KONV akan memiliki 3 detail juga(+Detail Kondisi). Oleh karena itu salah dua primary key KONV adalah KNUMV dan KPOSN.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8634541958205365634-1614956717433859558?l=sap-love.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sap-love.blogspot.com/feeds/1614956717433859558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-konv-konp.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1614956717433859558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8634541958205365634/posts/default/1614956717433859558'/><link rel='alternate' type='text/html' href='http://sap-love.blogspot.com/2009/03/table-konv-konp.html' title='Table KONV &amp; KONP'/><author><name>SAP-SEXY</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
