<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: error correction in bdc session in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778969#M335800</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ranjita,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Execute the errors in session again in the foreground mode and give the correct values to process the records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Arun&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 13 Dec 2006 12:16:40 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-12-13T12:16:40Z</dc:date>
    <item>
      <title>error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778965#M335796</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; i have created a bdc in session method and even have processed the session, &lt;/P&gt;&lt;P&gt;in that i have got some error records. I want to collect and display these errors, anyone help me asap in resolving the problem or whats the general way to resolve the error records in session will also do.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks &lt;/P&gt;&lt;P&gt;Ranjita&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Dec 2006 07:54:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778965#M335796</guid>
      <dc:creator>former_member196299</dc:creator>
      <dc:date>2006-12-13T07:54:24Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778966#M335797</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ranjita&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please go throught the log of session to understand the errors.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Few might be due to missing master data or config or data entry...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind Regards&lt;/P&gt;&lt;P&gt;Eswar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Dec 2006 08:16:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778966#M335797</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-13T08:16:55Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778967#M335798</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;i will give some exact steps in bdc session method&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ex : think this is flat file contains some records&lt;/P&gt;&lt;P&gt; venodr_name     po numb&lt;/P&gt;&lt;P&gt; shreeshail         1020&lt;/P&gt;&lt;P&gt; sam                  1021&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;steps :&lt;/P&gt;&lt;P&gt; 1   first declare the internal table and bdcdata&lt;/P&gt;&lt;P&gt;  DATA IT LIKE LFA1 OCCURS 0 WITH HEADER LINE &lt;/P&gt;&lt;P&gt;  DATA BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION UPLOAD&lt;/P&gt;&lt;P&gt;  exp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  it-data = it .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2&lt;/P&gt;&lt;P&gt; CALL FUNCTION 'BDC_OPEN_GROUP' .&lt;/P&gt;&lt;P&gt; here u pass some 4 parameters :&lt;/P&gt;&lt;P&gt;  USER NAME&lt;/P&gt;&lt;P&gt;  SESSION NAME&lt;/P&gt;&lt;P&gt;  LOCK DATE&lt;/P&gt;&lt;P&gt;  KEEP&lt;/P&gt;&lt;P&gt;3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT /&lt;/P&gt;&lt;P&gt;REFRESH BDCDATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform bdc_dybmaic_program .&lt;/P&gt;&lt;P&gt; go transaction SHDB TO CREATE BDC RECORDS&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION BDC_INSERT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here u can pass 2 parameters :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;transaction code  : 'MK01' .&lt;/P&gt;&lt;P&gt;bdctaa                : BDCDATA&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION BDC_CLOSE_GROUP .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM BDC_DYNAMIC_PROGRAM .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NOTE: if error occurs &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;u can create another internal table like BDCMSGCOLL&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Dec 2006 10:55:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778967#M335798</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-13T10:55:16Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778968#M335799</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks for the reply Eswar, &lt;/P&gt;&lt;P&gt;but i want the error records to be collected from the session and then display them , is there any way i can do that ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Dec 2006 11:04:20 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778968#M335799</guid>
      <dc:creator>former_member196299</dc:creator>
      <dc:date>2006-12-13T11:04:20Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778969#M335800</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ranjita,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Execute the errors in session again in the foreground mode and give the correct values to process the records&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Arun&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 Dec 2006 12:16:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778969#M335800</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-13T12:16:40Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778970#M335801</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI Ranjita&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please go through program: &amp;lt;b&amp;gt;RSBDC_ANALYSE &amp;amp; RSBDCDRU&amp;lt;/b&amp;gt; for some understanding on the same...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess the logs will be stored in files on server and not directly in database tables. Though we can get some references from tables like APQI and APQL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind Regards&lt;/P&gt;&lt;P&gt;Eswar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Dec 2006 09:15:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778970#M335801</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-14T09:15:25Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778971#M335802</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is a sample program wherein you can download the errors into a internal table from the batch session method using the queue id from the batch session&lt;/P&gt;&lt;P&gt;You can change the program so that it suits your requirements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:&lt;/P&gt;&lt;P&gt;queue_id LIKE apqi-qid OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE rsbdcil3. "Read plain log from TemSe&lt;/P&gt;&lt;P&gt;TYPE-POOLS: icon, sdydo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES:&lt;/P&gt;&lt;P&gt;apqi, apqd, apql, t100, snap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTROLS:&lt;/P&gt;&lt;P&gt;tc_tcodes TYPE TABLEVIEW USING SCREEN 200,&lt;/P&gt;&lt;P&gt;tc_dynpro TYPE TABLEVIEW USING SCREEN 300,&lt;/P&gt;&lt;P&gt;tc_protocol TYPE TABLEVIEW USING SCREEN 400,&lt;/P&gt;&lt;P&gt;tc_bdcld TYPE TABLEVIEW USING SCREEN 600,&lt;/P&gt;&lt;P&gt;tc_q_tcodes TYPE TABLEVIEW USING SCREEN 700,&lt;/P&gt;&lt;P&gt;tab_dynpro TYPE TABSTRIP,&lt;/P&gt;&lt;P&gt;tab_apqi TYPE TABSTRIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps those tcodes actually displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_tcodes OCCURS 0,&lt;/P&gt;&lt;P&gt;index TYPE i, tcode LIKE sy-tcode, status(1), s_text(16),&lt;/P&gt;&lt;P&gt;END OF bdc_tcodes,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps all tcodes of the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF all_bdc_tcodes OCCURS 0,&lt;/P&gt;&lt;P&gt;index TYPE i, tcode LIKE sy-tcode, status(1), s_text(16),&lt;/P&gt;&lt;P&gt;END OF all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps those dynpros actually displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_dynpro OCCURS 0,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog, dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;fnam LIKE bdcdata-fnam, fval LIKE bdcdata-fval,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;END OF bdc_dynpro,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps all dynpros of the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF all_bdc_dynpro OCCURS 0,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog, dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;fnam LIKE bdcdata-fnam, fval LIKE bdcdata-fval,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;END OF all_bdc_dynpro,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dynpro_index TYPE i,&lt;/P&gt;&lt;P&gt;cat_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps protocol lines to be displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_protocol OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdclm.&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;longtext TYPE bdc_mpar,&lt;/P&gt;&lt;P&gt;END OF bdc_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_apqd LIKE apqd OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;udat LIKE apqd-vardata, sdat LIKE apqd-vardata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF tf OCCURS 0, "interne tabelle mit dynprofeldern&lt;/P&gt;&lt;P&gt;count TYPE i VALUE 0, "zum abmischen&lt;/P&gt;&lt;P&gt;trcd(4),stat(4),&lt;/P&gt;&lt;P&gt;pgm(8), "programmname&lt;/P&gt;&lt;P&gt;dyn(4) TYPE n, "dynpronummer&lt;/P&gt;&lt;P&gt;fname(35), farg(132), fstart(5) TYPE p, fende(5) TYPE p,&lt;/P&gt;&lt;P&gt;END OF tf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;needed for check if TemSe interface is active:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: protparam(60) VALUE 'bdc/new_protocol',&lt;/P&gt;&lt;P&gt;newprot(3) VALUE 'off'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;message header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdcmh,&lt;/P&gt;&lt;P&gt;mtype, state,&lt;/P&gt;&lt;P&gt;tcode(20),                                                  " (4 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;prog(40),                                                   " (8 -&amp;gt; 40)&lt;/P&gt;&lt;P&gt;dynr(4), sepc, filler,&lt;/P&gt;&lt;P&gt;END OF bdcmh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;transaction header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdcth,&lt;/P&gt;&lt;P&gt;mtype, state,&lt;/P&gt;&lt;P&gt;tcode(20),                                                  " (4 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;postg, print,&lt;/P&gt;&lt;P&gt;msgid(20),                                                  " (2 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;END OF bdcth.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;bdcmhlen TYPE i VALUE 68, " (20 -&amp;gt; 68 ) MessageHeaderlaenge&lt;/P&gt;&lt;P&gt;dcnt TYPE i, tcnt TYPE i, gencnt TYPE i, delcnt TYPE i, wcount TYPE i,&lt;/P&gt;&lt;P&gt;mfstart TYPE i, mfende TYPE i, mflen TYPE i, mfart(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA BEGIN OF bdclm OCCURS 0. " ITabelle der Messageseintraege&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdclm. " LogTabelle&lt;/P&gt;&lt;P&gt;DATA: counter TYPE i,&lt;/P&gt;&lt;P&gt;longtext TYPE bdc_mpar,&lt;/P&gt;&lt;P&gt;isdetail(1) TYPE c,&lt;/P&gt;&lt;P&gt;END OF bdclm .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: lm LIKE bdclm,&lt;/P&gt;&lt;P&gt;save_mpar TYPE bdc_mpar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA BEGIN OF bdcld OCCURS 0. " ITabelle der Verzeichniseintraege&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcld. " LogTabelle aller Protokolle&lt;/P&gt;&lt;P&gt;DATA: logname(80), " protokollpfad&lt;/P&gt;&lt;P&gt;local_host(12), " lokaler rechner&lt;/P&gt;&lt;P&gt;cnt TYPE i, " satzzaehler&lt;/P&gt;&lt;P&gt;active(1) TYPE c, " active flag&lt;/P&gt;&lt;P&gt;temseid TYPE rstsoname. " TemSe ID&lt;/P&gt;&lt;P&gt;DATA END OF bdcld .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;logtab LIKE bdcld OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;logtab_temse LIKE apql OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;main_okcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0500_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0600_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0700_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0701_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;tc_mark(1),&lt;/P&gt;&lt;P&gt;counter TYPE i,&lt;/P&gt;&lt;P&gt;status_icon(32),&lt;/P&gt;&lt;P&gt;dynprotab_subscreen_dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;header_subscreen_dynpro LIKE sy-dynnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;ex_date(12), string(48), tab_proto(48).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Radio buttons and checkbox on screen 0500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF rb,&lt;/P&gt;&lt;P&gt;tcodes_all VALUE 'X', tcodes_error,&lt;/P&gt;&lt;P&gt;fieldlist VALUE ' ',&lt;/P&gt;&lt;P&gt;pro_all VALUE 'X', pro_tcode, pro_session,&lt;/P&gt;&lt;P&gt;log_detail,&lt;/P&gt;&lt;P&gt;END OF rb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Flags for identifying contents of the bdc_... tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;bdc_tcodes_content(1), "a: all, e: errors&lt;/P&gt;&lt;P&gt;bdc_dynpro_content(1), "f: fieldlist, s: screens only&lt;/P&gt;&lt;P&gt;bdc_protocol_content(1), "a: all, t: for transaction, s: for session&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;bdc_lines LIKE sy-index,&lt;/P&gt;&lt;P&gt;c_field(132),&lt;/P&gt;&lt;P&gt;c_line TYPE i,&lt;/P&gt;&lt;P&gt;selected_index LIKE sy-index,&lt;/P&gt;&lt;P&gt;selected_protocol LIKE sy-index,&lt;/P&gt;&lt;P&gt;tc_index LIKE sy-index,&lt;/P&gt;&lt;P&gt;tc_select LIKE sy-index,&lt;/P&gt;&lt;P&gt;tcode_index LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;tcode_index_apqd LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;1st_bdc_tcode_index LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;i_tcodes TYPE i,&lt;/P&gt;&lt;P&gt;i_protocols TYPE i,&lt;/P&gt;&lt;P&gt;tcode LIKE sy-tcode,&lt;/P&gt;&lt;P&gt;tcode_status(16),&lt;/P&gt;&lt;P&gt;previous_tab(64).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data needed for CATT simulation of screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdc_subscreen,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog,&lt;/P&gt;&lt;P&gt;dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;subscr(64),&lt;/P&gt;&lt;P&gt;END OF bdc_subscreen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table for keeping fcodes to be excluded from pf-status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF ex_cua OCCURS 2,&lt;/P&gt;&lt;P&gt;fcode LIKE rsmpe-func,&lt;/P&gt;&lt;P&gt;END OF ex_cua.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data for keeping scoll infos&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;current_page LIKE sy-tabix VALUE 1,&lt;/P&gt;&lt;P&gt;new_page LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;total_pages LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;new_line LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;entries LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;loopc LIKE sy-loopc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data for queue dump&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF q,&lt;/P&gt;&lt;P&gt;tcode_index LIKE all_bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;itab_index LIKE all_bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;c_field(132),&lt;/P&gt;&lt;P&gt;c_line LIKE sy-index,&lt;/P&gt;&lt;P&gt;c_area(132),&lt;/P&gt;&lt;P&gt;wa LIKE LINE OF all_bdc_tcodes,&lt;/P&gt;&lt;P&gt;control_init VALUE 'X',&lt;/P&gt;&lt;P&gt;reuse_control,&lt;/P&gt;&lt;P&gt;uc_bytes TYPE i,&lt;/P&gt;&lt;P&gt;c(1),&lt;/P&gt;&lt;P&gt;show_hex VALUE ' ',&lt;/P&gt;&lt;P&gt;END OF q.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;t TYPE sdydo_text_element,&lt;/P&gt;&lt;P&gt;c(128).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;BEGIN OF block,&lt;/P&gt;&lt;P&gt;dt TYPE REF TO cl_dd_table_element,&lt;/P&gt;&lt;P&gt;dta TYPE REF TO cl_dd_table_area,&lt;/P&gt;&lt;P&gt;END OF block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_blocks TYPE STANDARD TABLE OF block,&lt;/P&gt;&lt;P&gt;b_wa TYPE block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;dd TYPE REF TO cl_dd_document,&lt;/P&gt;&lt;P&gt;cust TYPE REF TO cl_gui_custom_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;BEGIN OF cx,&lt;/P&gt;&lt;P&gt;char(1) TYPE c,&lt;/P&gt;&lt;P&gt;hex(4) TYPE x,&lt;/P&gt;&lt;P&gt;xtoc(8) TYPE c,&lt;/P&gt;&lt;P&gt;END OF cx,&lt;/P&gt;&lt;P&gt;uc_1(1) TYPE x,&lt;/P&gt;&lt;P&gt;uc_2(2) TYPE x,&lt;/P&gt;&lt;P&gt;uc_4(4) TYPE x.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_cx TYPE STANDARD TABLE OF cx,&lt;/P&gt;&lt;P&gt;cx TYPE cx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF count,&lt;/P&gt;&lt;P&gt;start TYPE i,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;part TYPE i,&lt;/P&gt;&lt;P&gt;rest TYPE i,&lt;/P&gt;&lt;P&gt;END OF count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;cspan TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;nr_cols TYPE i VALUE 64,&lt;/P&gt;&lt;P&gt;reload_apqi VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF apqdcnt,&lt;/P&gt;&lt;P&gt;transcntb TYPE apq_tran, "neu&lt;/P&gt;&lt;P&gt;msgcntb TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnte TYPE apq_tran, "fehlerhaft&lt;/P&gt;&lt;P&gt;msgcnte TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnto TYPE apq_tran, "noch zu verarbeiten&lt;/P&gt;&lt;P&gt;msgcnto TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntf TYPE apq_tran, "verarbeitet&lt;/P&gt;&lt;P&gt;msgcntf TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntd TYPE apq_tran, "gelöscht&lt;/P&gt;&lt;P&gt;msgcntd TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnt TYPE apq_tran, "enthält aktuell&lt;/P&gt;&lt;P&gt;msgcnt TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntx TYPE apq_tran, "entfernt&lt;/P&gt;&lt;P&gt;msgcntx TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntp TYPE apq_tran, "angelegt&lt;/P&gt;&lt;P&gt;msgcntp TYPE apq_reco,&lt;/P&gt;&lt;P&gt;END OF apqdcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;dynpro_cnt TYPE i,&lt;/P&gt;&lt;P&gt;show_dynpro_cnt VALUE ' ',&lt;/P&gt;&lt;P&gt;filename TYPE string,&lt;/P&gt;&lt;P&gt;lt_string TYPE char4000 OCCURS 0,&lt;/P&gt;&lt;P&gt;wa_string TYPE char4000,&lt;/P&gt;&lt;P&gt;p_cnt(8).&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM prepare USING queue_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL SCREEN 100.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form prepare&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM prepare USING qid TYPE apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: bdc_tcodes_content, bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM apqi WHERE qid = qid.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE i307(00) WITH 'Lesen'(010) 'mit Queue-ID'(011) qid.&lt;/P&gt;&lt;P&gt;    LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM fill_all_bdc_tcodes. " find all transactions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_logfiles_for_qid. " logfiles -&amp;gt; bdcld&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_log USING 1. " most recent log -&amp;gt; bdclm&lt;/P&gt;&lt;P&gt;  selected_protocol = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    rb-tcodes_all = 'X'. rb-pro_all = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ex_cua-fcode = 'FL_ON'. APPEND ex_cua.&lt;/P&gt;&lt;P&gt;  ex_cua-fcode = 'FL_OFF'. APPEND ex_cua.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "prepare&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module loopc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE loopc OUTPUT.&lt;/P&gt;&lt;P&gt;  loopc = sy-loopc.&lt;/P&gt;&lt;P&gt;ENDMODULE. "loopc OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module status_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_main OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR main_okcode.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0100' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set text of tabstrip tab for protocol display or set tab invisible if&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;no protocol was found for the qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF screen-name = 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      IF selected_protocol IS INITIAL.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        WRITE bdcld-edate TO ex_date.&lt;/P&gt;&lt;P&gt;        CONCATENATE '@96@' 'Protokoll vom'(020) ex_date "ICON_HISTORY&lt;/P&gt;&lt;P&gt;        INTO tab_proto SEPARATED BY ' '.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set header and subscreen dynpro depending on active tab&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0200'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0201'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      IF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING 'FL_ON'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING 'FL_OFF'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0300'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0301'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      IF rb-pro_tcode = 'X'.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0400'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0401'.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0200'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0201'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is this the first call?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF tcode_index IS INITIAL.&lt;/P&gt;&lt;P&gt;    tcode_index = 1.&lt;/P&gt;&lt;P&gt;    tcode = all_bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;    tcode_status = all_bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tcode_index was already set in PAI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tcode = bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;    tcode_status = bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "status_main OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module exit_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE exit_main INPUT.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;  LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;ENDMODULE. "exit_main INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module user_command_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_main INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF tab_dynpro-activetab &amp;lt;&amp;gt; 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;    previous_tab = tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE main_okcode.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the active tab&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_PROTO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select entry for display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;      PERFORM set_new_display.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the viewing options&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'VIEW_OPT'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN 500 STARTING AT 5 5.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;show list of protocols&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'PROTO'.&lt;/P&gt;&lt;P&gt;      IF selected_protocol &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        CALL SCREEN 600 STARTING AT 5 5.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        MESSAGE s324(00).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'PROTO_REFRESH'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;reload protocol file (while watching running sessions)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          text = 'Protokoll wird erneut gelesen ...'(006).&lt;/P&gt;&lt;P&gt;      PERFORM get_log USING selected_protocol.&lt;/P&gt;&lt;P&gt;      PERFORM extend_message_texts.&lt;/P&gt;&lt;P&gt;      CLEAR bdc_protocol_content.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;switch field list on or off&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'FL_ON'. rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;    WHEN 'FL_OFF'. rb-fieldlist = ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to first transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'FIRST'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;gt; 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;        tcode_index = 1.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to next transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;lt; i_tcodes.&lt;/P&gt;&lt;P&gt;        tcode_index = tcode_index + 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX tcode_index.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to previous transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'PREV'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;gt; 1.&lt;/P&gt;&lt;P&gt;        tcode_index = tcode_index - 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX tcode_index.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to last transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'LAST'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;lt; i_tcodes.&lt;/P&gt;&lt;P&gt;        tcode_index = i_tcodes.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX i_tcodes.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scrolling in table controls&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'P-' OR 'P--' OR 'P&lt;EM&gt;' OR 'P&lt;/EM&gt;+'.&lt;/P&gt;&lt;P&gt;      PERFORM scrolling.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display queue dump&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'QUEUE'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0700'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display header (APQI)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'APQI'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0701'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;recalculate dynpro counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'DISP_CNT'.&lt;/P&gt;&lt;P&gt;      PERFORM recalculate_counters.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;leave this nice program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'BACK' OR 'END'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if field list or protocol chosen, but no transaction has been&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scanned yet, it's now time to read the first transaction from APQD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF ( main_okcode = 'TAB_LIST' OR&lt;/P&gt;&lt;P&gt;  main_okcode = 'TAB_PROTO' ) AND&lt;/P&gt;&lt;P&gt;  tcode_index_apqd IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;      tcode_index_apqd = bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "user_command_main INPUT&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy transactions from all_bdc_tcodes to bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_tcodes OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check whether contents are already up to date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF show_dynpro_cnt = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'DCT'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 0.&lt;/P&gt;&lt;P&gt;        screen-active = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF screen-name = 'CMD_DISP_CNT'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bdc_tcodes_content = 'A' AND rb-tcodes_all = 'X'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF bdc_tcodes_content = 'E' AND rb-tcodes_error = 'X'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdc_tcodes according to the settings in screen 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_tcodes. REFRESH bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-tcodes_all ='X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;      bdc_tcodes = all_bdc_tcodes. APPEND bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_tcodes_content = 'A'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-tcodes_error = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_tcodes WHERE status = 'E'.&lt;/P&gt;&lt;P&gt;      bdc_tcodes = all_bdc_tcodes. APPEND bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_tcodes_content = 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_tcodes LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  i_tcodes = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_tcodes-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  CLEAR tcode_index_apqd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;  1st_bdc_tcode_index = bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;  tcode_index = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_tcodes OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy dynpro data from all_bdc_dynpro to bdc_bdc_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_dynpro OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: wa LIKE LINE OF tc_dynpro-cols,&lt;/P&gt;&lt;P&gt;  tline LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tline = tc_dynpro-top_line.&lt;/P&gt;&lt;P&gt;  tc_dynpro-top_line = tline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;hide fields if no detailed field list shall be displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT tc_dynpro-cols INTO wa.&lt;/P&gt;&lt;P&gt;    IF sy-tabix = 3 OR sy-tabix = 4.&lt;/P&gt;&lt;P&gt;      IF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;        CLEAR wa-invisible.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        wa-invisible = 1.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MODIFY tc_dynpro-cols FROM wa.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is bdc_dynpro_content already correctly filled ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF rb-fieldlist = ' ' AND bdc_dynpro_content = 'S'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-fieldlist = 'X' AND bdc_dynpro_content = 'F'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_dynpro. REFRESH bdc_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-fieldlist = ' '.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_dynpro WHERE NOT program IS INITIAL.&lt;/P&gt;&lt;P&gt;      bdc_dynpro = all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      APPEND bdc_dynpro.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_dynpro_content = 'S'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      bdc_dynpro = all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      APPEND bdc_dynpro.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_dynpro_content = 'F'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_dynpro LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_dynpro-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_dynpro-top_line = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_dynpro OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy messages from bdclm to bdc_protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_protocol OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-pro_all = 'X' AND bdc_protocol_content = 'A'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_tcode = 'X' AND bdc_protocol_content = 'T'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_session = 'X' AND bdc_protocol_content = 'S'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_protocol. REFRESH bdc_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-pro_all = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;      IF rb-log_detail = ' ' AND bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'A'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_tcode = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm WHERE tcnt = tcode_index_apqd.&lt;/P&gt;&lt;P&gt;      IF rb-log_detail = ' ' AND bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'T'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_session = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm WHERE tcnt = ' '.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'S'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_protocol LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_protocol-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_protocol-top_line = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_protocol OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module check_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE check_bdc_protocol OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display lines intensified if they contain e- or a-messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF bdc_protocol-mart = 'E'&lt;/P&gt;&lt;P&gt;  OR bdc_protocol-mart = 'A'.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;skip empty lines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF bdc_protocol-indate IS INITIAL.&lt;/P&gt;&lt;P&gt;    EXIT FROM STEP-LOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "check_bdc_protocol OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module get_cursor_position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE get_cursor_position INPUT.&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD c_field LINE c_line.&lt;/P&gt;&lt;P&gt;  IF c_line &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_tcodes-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_dynpro-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_protocol-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    selected_index = 0.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "get_cursor_position INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_init&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE d0500_init OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'POPUP'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0500'.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0500_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_fcode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0500_fcode INPUT.&lt;/P&gt;&lt;P&gt;  LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0500_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0600_init&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE d0600_init OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'POPUP'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0600'.&lt;/P&gt;&lt;P&gt;  CLEAR d0600_fcode.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdcld LINES i_protocols.&lt;/P&gt;&lt;P&gt;  tc_bdcld-lines = i_protocols.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0600_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_fcode&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read and process another protocol which was selected on&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;popup dynpro 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0600_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0600_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'POP_CANCEL'.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'POP_OKAY'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read selected protocol&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF tc_select &amp;lt;&amp;gt; selected_protocol.&lt;/P&gt;&lt;P&gt;        CLEAR bdclm. REFRESH bdclm.&lt;/P&gt;&lt;P&gt;        CLEAR bdc_protocol_content.&lt;/P&gt;&lt;P&gt;        PERFORM get_log USING tc_select.&lt;/P&gt;&lt;P&gt;        PERFORM extend_message_texts.&lt;/P&gt;&lt;P&gt;        selected_protocol = tc_select.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scroll in table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0600_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module set_mark&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set table view marker for the actual selected protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;(dynpro 500)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE set_mark OUTPUT.&lt;/P&gt;&lt;P&gt;  tc_index = tc_bdcld-top_line + tc_bdcld-current_line - 1.&lt;/P&gt;&lt;P&gt;  IF tc_index = selected_protocol.&lt;/P&gt;&lt;P&gt;    tc_mark = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "set_mark OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module get_mark&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get index of selected protocol on popup 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE get_mark INPUT.&lt;/P&gt;&lt;P&gt;  IF tc_mark = 'X'.&lt;/P&gt;&lt;P&gt;    tc_select = tc_bdcld-top_line + tc_bdcld-current_line - 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "get_mark INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: fill_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read all transaction codes from apqd and fill internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read APQD blocks 1 for QID&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR all_bdc_tcodes. REFRESH all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd WHERE qid = queue_id AND block = 1&lt;/P&gt;&lt;P&gt;  ORDER BY PRIMARY KEY.&lt;/P&gt;&lt;P&gt;    MOVE apqd-vardata TO bdcth.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-index = apqd-trans.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-tcode = bdcth-tcode.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-status = bdcth-state.&lt;/P&gt;&lt;P&gt;    APPEND all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;convert status flag to long text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;calculate transaction counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR apqdcnt.&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ADD 1 TO apqdcnt-transcnt.&lt;/P&gt;&lt;P&gt;    CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      WHEN 'D' OR 'G'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'gelöscht'(005).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntd.&lt;/P&gt;&lt;P&gt;      WHEN 'F'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'verarbeitet'(002).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntf.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'fehlerhaft'(001).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcnte.&lt;/P&gt;&lt;P&gt;      WHEN 'B'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = ' '. "neu&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntb.&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = ' '.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    MODIFY all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcnto = apqdcnt-transcntb&lt;/P&gt;&lt;P&gt;  + apqdcnt-transcnte.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntd = apqdcnt-transcnt&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcntf&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcnte&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcntb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntp = apqi-puttrans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntx = apqdcnt-transcntp&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-msgcnt &amp;lt; 1000.&lt;/P&gt;&lt;P&gt;    PERFORM recalculate_counters.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "fill_all_bdc_tcodes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM scan_transaction&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read all APQD data for a selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scan_transaction USING tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR it_apqd. REFRESH it_apqd.&lt;/P&gt;&lt;P&gt;  CLEAR all_bdc_dynpro. REFRESH all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tcode_index_apqd = tcnt. "Display correct index in header screens&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR dynpro_index.&lt;/P&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    IF it_apqd-vardata(1) = 'M'. "it's a message header&lt;/P&gt;&lt;P&gt;      dynpro_index = dynpro_index + 1.&lt;/P&gt;&lt;P&gt;      PERFORM scan_dynpro.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "scan_transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: scan_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Scan APQD data for a single dynpro screen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;and put it into a BDCDATA table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scan_dynpro.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  MOVE it_apqd-vardata TO bdcmh.&lt;/P&gt;&lt;P&gt;  TRANSLATE bdcmh TO UPPER CASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get program name and screen number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-index = dynpro_index.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-program = bdcmh-prog.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-dynpro = bdcmh-dynr.&lt;/P&gt;&lt;P&gt;  APPEND all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get all the fnam/fval pairs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  MOVE it_apqd-vardata TO sdat.&lt;/P&gt;&lt;P&gt;  SHIFT sdat BY bdcmhlen PLACES.&lt;/P&gt;&lt;P&gt;  wcount = bdcmhlen.&lt;/P&gt;&lt;P&gt;  mfstart = wcount.&lt;/P&gt;&lt;P&gt;  mfart = 'FN'.&lt;/P&gt;&lt;P&gt;  WHILE wcount LE it_apqd-varlen.&lt;/P&gt;&lt;P&gt;    IF sdat(1) = bdcmh-sepc.&lt;/P&gt;&lt;P&gt;      mfende = wcount.&lt;/P&gt;&lt;P&gt;      PERFORM move_tf.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    SHIFT sdat.&lt;/P&gt;&lt;P&gt;    wcount = wcount + 1.&lt;/P&gt;&lt;P&gt;  ENDWHILE.&lt;/P&gt;&lt;P&gt;ENDFORM. "scan_dynpro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Parse the apqd-vardata field for FNAM/FVAL pairs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: move_tf&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fills TF-FNAME and TF-FARG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM move_tf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  mflen = mfende - mfstart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE mfart.&lt;/P&gt;&lt;P&gt;    WHEN 'FN'.&lt;/P&gt;&lt;P&gt;      CLEAR: tf-fname, udat.&lt;/P&gt;&lt;P&gt;      tf-fstart = mfstart.&lt;/P&gt;&lt;P&gt;      MOVE it_apqd-vardata TO udat.&lt;/P&gt;&lt;P&gt;      SHIFT udat BY mfstart PLACES.&lt;/P&gt;&lt;P&gt;      WRITE udat TO tf-fname+0(mflen).&lt;/P&gt;&lt;P&gt;      TRANSLATE tf-fname TO UPPER CASE.&lt;/P&gt;&lt;P&gt;      mfstart = mfende + 1.&lt;/P&gt;&lt;P&gt;      mfende = 0.&lt;/P&gt;&lt;P&gt;      MOVE 'FA' TO mfart.&lt;/P&gt;&lt;P&gt;    WHEN 'FA'.&lt;/P&gt;&lt;P&gt;      CLEAR: tf-farg, udat.&lt;/P&gt;&lt;P&gt;      tf-fende = mfende.&lt;/P&gt;&lt;P&gt;      MOVE it_apqd-vardata TO udat.&lt;/P&gt;&lt;P&gt;      SHIFT udat BY mfstart PLACES.&lt;/P&gt;&lt;P&gt;      WRITE udat TO tf-farg+0(mflen).&lt;/P&gt;&lt;P&gt;      APPEND tf.&lt;/P&gt;&lt;P&gt;      tf-stat = space.&lt;/P&gt;&lt;P&gt;      mfstart = mfende + 1.&lt;/P&gt;&lt;P&gt;      mfende = 0.&lt;/P&gt;&lt;P&gt;      MOVE 'FN' TO mfart.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy to bdcdata table if fname/fval is not empty&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK NOT tf-fname IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK NOT TF-FARG IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-index = dynpro_index.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-fnam = tf-fname.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-fval = tf-farg.&lt;/P&gt;&lt;P&gt;      APPEND all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM. "move_tf&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_logfiles_for_qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;paramname(11) VALUE 'bdc/logfile',&lt;/P&gt;&lt;P&gt;logname(80),&lt;/P&gt;&lt;P&gt;logname1(80),&lt;/P&gt;&lt;P&gt;old_logfile(06) VALUE 'bdclog',&lt;/P&gt;&lt;P&gt;new_logfile(04) VALUE 'BI* ',&lt;/P&gt;&lt;P&gt;shiftlen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;protflen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;protfoff TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;rlen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;bdcld# TYPE i, one TYPE i, ec TYPE i, return TYPE i,&lt;/P&gt;&lt;P&gt;protcnt TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF prot_list OCCURS 0.&lt;/P&gt;&lt;P&gt;INCLUDE rstr0112.&lt;/P&gt;&lt;P&gt;DATA: seen(1), to_be_deleted(1), has_changed(1), local_host(24),&lt;/P&gt;&lt;P&gt;END OF prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF file.&lt;/P&gt;&lt;P&gt;INCLUDE rstr0112.&lt;/P&gt;&lt;P&gt;DATA END OF file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdclda OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcld.&lt;/P&gt;&lt;P&gt;DATA END OF bdclda .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;digits(10) TYPE c VALUE '0123456789',&lt;/P&gt;&lt;P&gt;mtext(124) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;mtext1(124) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;mtext2(273) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;do_condense TYPE c,&lt;/P&gt;&lt;P&gt;mtvaroff TYPE i,&lt;/P&gt;&lt;P&gt;showtyp(05) TYPE c, "showtyp&lt;/P&gt;&lt;P&gt;lmapn(12) TYPE c, "Hilfsfeld log-mapn&lt;/P&gt;&lt;P&gt;date1 TYPE d,&lt;/P&gt;&lt;P&gt;linct0 LIKE sy-linct,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parcnt TYPE i,&lt;/P&gt;&lt;P&gt;sp_len TYPE i,&lt;/P&gt;&lt;P&gt;charcnt TYPE i,&lt;/P&gt;&lt;P&gt;wcnt TYPE i,&lt;/P&gt;&lt;P&gt;mparcnt TYPE i,&lt;/P&gt;&lt;P&gt;qfound(04) TYPE n,&lt;/P&gt;&lt;P&gt;x(1) VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Aufbereitung Messagetext&lt;/P&gt;&lt;P&gt;BEGIN OF mt,&lt;/P&gt;&lt;P&gt;off(02) TYPE n,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(80),&lt;/P&gt;&lt;P&gt;END OF mt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Aufbereitung Messagetext&lt;/P&gt;&lt;P&gt;BEGIN OF mttab OCCURS 4,&lt;/P&gt;&lt;P&gt;off(02) TYPE n,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(80),&lt;/P&gt;&lt;P&gt;END OF mttab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Hilfsfelder&lt;/P&gt;&lt;P&gt;BEGIN OF old,&lt;/P&gt;&lt;P&gt;tcnt LIKE bdclm-tcnt,&lt;/P&gt;&lt;P&gt;mcnt LIKE bdclm-mcnt,&lt;/P&gt;&lt;P&gt;END OF old.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "ParameterAufbereitung&lt;/P&gt;&lt;P&gt;BEGIN OF par,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(254),&lt;/P&gt;&lt;P&gt;END OF par.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form get_logfiles_for_qid&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find all log files for the session in analysis,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;either in common log or in TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_logfiles_for_qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logs from TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_logfiles_from_temse.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now bdcld contains the log files for the given qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SORT bdcld BY edate DESCENDING etime DESCENDING.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdcld LINES selected_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_logfiles_for_qid&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: log_dir&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM log_dir.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR bdclda. REFRESH bdclda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL 'ReadLogDirA' ID 'LOGN' FIELD logname&lt;/P&gt;&lt;P&gt;  ID 'DTAB' FIELD bdclda-&lt;STRONG&gt;sys&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;  ID 'AINF' FIELD one&lt;/P&gt;&lt;P&gt;  ID 'ECNT' FIELD ec.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0 OR ec = 0.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdclda WHERE lmand = sy-mandt AND quid = queue_id.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING bdclda TO bdcld.&lt;/P&gt;&lt;P&gt;    MOVE logname TO bdcld-logname.&lt;/P&gt;&lt;P&gt;    MOVE prot_list-local_host TO bdcld-local_host.&lt;/P&gt;&lt;P&gt;    APPEND bdcld.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. " log_dir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: list_protocol_files&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Suche nach allen aktiven Protokolldateien -&amp;gt; Tabelle prot_list&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM list_protocol_files.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: logname1, prot_list, protcnt.&lt;/P&gt;&lt;P&gt;  REFRESH: prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  protflen = STRLEN( logname ).&lt;/P&gt;&lt;P&gt;  MOVE logname TO logname1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHILE shiftlen LE protflen.&lt;/P&gt;&lt;P&gt;    IF logname1 CP '&lt;STRONG&gt;#B#I&lt;/STRONG&gt;'. "suchen nach muster &lt;STRONG&gt;#B#I&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;      IF sy-fdpos EQ 0. "nur großbuchstaben&lt;/P&gt;&lt;P&gt;        shiftlen = 2.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        shiftlen = sy-fdpos.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      protfoff = protfoff + shiftlen.&lt;/P&gt;&lt;P&gt;      SHIFT logname1 BY shiftlen PLACES.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      shiftlen = protflen + 1.&lt;/P&gt;&lt;P&gt;      protfoff = protfoff - 2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDWHILE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF protfoff LE 0.&lt;/P&gt;&lt;P&gt;    protfoff = 0.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  rlen = 80 - protfoff.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  WRITE space TO logname+protfoff(rlen).&lt;/P&gt;&lt;P&gt;  WRITE new_logfile TO logname+protfoff(4).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  PERFORM search_prot USING logname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " FILL_PROT_LIST&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : search_prot *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM search_prot USING prot_files.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: errcnt(2) TYPE p VALUE 0.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CALL 'C_DIR_READ_START' ID 'FILE' FIELD prot_files&lt;/P&gt;&lt;P&gt;  ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;  ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE i398(00)&lt;/P&gt;&lt;P&gt;    WITH sy-subrc 'C_DIR_READ_START' ' ' prot_files.&lt;/P&gt;&lt;P&gt;    MESSAGE i398(00)&lt;/P&gt;&lt;P&gt;    WITH sy-subrc 'C_DIR_READ_START...'&lt;/P&gt;&lt;P&gt;    file-errno file-errmsg.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO. "aufbau der internen tabelle fuer alle&lt;/P&gt;&lt;P&gt;    "BI-Protokolle&lt;/P&gt;&lt;P&gt;    CLEAR file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL 'C_DIR_READ_NEXT'&lt;/P&gt;&lt;P&gt;    ID 'TYPE' FIELD file-type&lt;/P&gt;&lt;P&gt;    ID 'NAME' FIELD file-name&lt;/P&gt;&lt;P&gt;    ID 'LEN' FIELD file-len&lt;/P&gt;&lt;P&gt;    ID 'OWNER' FIELD file-owner&lt;/P&gt;&lt;P&gt;    ID 'MTIME' FIELD file-mtime&lt;/P&gt;&lt;P&gt;    ID 'MODE' FIELD file-mode&lt;/P&gt;&lt;P&gt;    ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;    ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE sy-subrc TO file-subrc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 0.&lt;/P&gt;&lt;P&gt;        CASE file-type(1).&lt;/P&gt;&lt;P&gt;          WHEN 'F'. " normal file.&lt;/P&gt;&lt;P&gt;            MOVE 1 TO file-useable.&lt;/P&gt;&lt;P&gt;          WHEN 'f'. " normal file.&lt;/P&gt;&lt;P&gt;            MOVE 1 TO file-useable.&lt;/P&gt;&lt;P&gt;          WHEN OTHERS. " Directory, device, fifo, socket,...&lt;/P&gt;&lt;P&gt;            MOVE 0 TO file-useable.&lt;/P&gt;&lt;P&gt;        ENDCASE.&lt;/P&gt;&lt;P&gt;        IF file-len = 0.&lt;/P&gt;&lt;P&gt;          MOVE 0 TO file-useable.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      WHEN OTHERS. " SY-SUBRC &amp;gt;= 2&lt;/P&gt;&lt;P&gt;        ADD 1 TO errcnt.&lt;/P&gt;&lt;P&gt;        IF errcnt &amp;gt; 10.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 5.&lt;/P&gt;&lt;P&gt;          MOVE: '???' TO file-type,&lt;/P&gt;&lt;P&gt;          '???' TO file-owner,&lt;/P&gt;&lt;P&gt;          '???' TO file-mode.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        file-useable = 0.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING file TO prot_list.&lt;/P&gt;&lt;P&gt;    SHIFT file-name BY protfoff PLACES.&lt;/P&gt;&lt;P&gt;    prot_list-local_host = file-name.&lt;/P&gt;&lt;P&gt;    protcnt = protcnt + 1.&lt;/P&gt;&lt;P&gt;    APPEND prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL 'C_DIR_READ_FINISH'&lt;/P&gt;&lt;P&gt;  ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;  ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WRITE: / 'C_DIR_READ_FINISH'(999), 'SUBRC', SY-SUBRC.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " search_prot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_log USING log_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF logtable OCCURS 50, " plain log information in TemSe&lt;/P&gt;&lt;P&gt;  enterdate LIKE btctle-enterdate,&lt;/P&gt;&lt;P&gt;  entertime LIKE btctle-entertime,&lt;/P&gt;&lt;P&gt;  logmessage(400) TYPE c,&lt;/P&gt;&lt;P&gt;  END OF logtable.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  external_date(10),&lt;/P&gt;&lt;P&gt;  internal_date TYPE d.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdcld.&lt;/P&gt;&lt;P&gt;    logname = bdcld-logname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF newprot = 'OFF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logfile contents from common log file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CALL 'ReadLogPartitionA' ID 'LOGN' FIELD logname&lt;/P&gt;&lt;P&gt;      ID 'ETAB' FIELD bdclm-&lt;STRONG&gt;sys&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;      ID 'PART' FIELD bdcld&lt;/P&gt;&lt;P&gt;      ID 'ECNT' FIELD ec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE s325(00). ENDIF.&lt;/P&gt;&lt;P&gt;      IF ec = 0. MESSAGE s324(00). ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logfile contents from TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM read_bdc_log_plain&lt;/P&gt;&lt;P&gt;      TABLES logtable&lt;/P&gt;&lt;P&gt;      USING bdcld-temseid bdcld-lmand.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. " Fehler beim Lesen&lt;/P&gt;&lt;P&gt;        MESSAGE s004(ts).&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR bdclm[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT logtable.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Es wird geprüft, ob von TEMSE das Datum korrekt geliefert wurde&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;wenn nicht wird einfach der Satz ignoriert und nicht gelesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;        CALL 'DATE_CONV_INT_TO_EXT'&lt;/P&gt;&lt;P&gt;        ID 'DATINT' FIELD logtable-enterdate&lt;/P&gt;&lt;P&gt;        ID 'DATEXT' FIELD external_date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL 'DATE_CONV_EXT_TO_INT'&lt;/P&gt;&lt;P&gt;        ID 'DATEXT' FIELD external_date&lt;/P&gt;&lt;P&gt;        ID 'DATINT' FIELD internal_date.&lt;/P&gt;&lt;P&gt;        IF sy-subrc NE 0. " Datum ist nicht gültig&lt;/P&gt;&lt;P&gt;          CONTINUE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR bdclm.&lt;/P&gt;&lt;P&gt;        bdclm-indate = logtable-enterdate.&lt;/P&gt;&lt;P&gt;        bdclm-intime = logtable-entertime.&lt;/P&gt;&lt;P&gt;        bdclm+14(352) = logtable-logmessage.&lt;/P&gt;&lt;P&gt;        IF bdclm-mcnt &amp;gt; 0.&lt;/P&gt;&lt;P&gt;          bdclm-mcnt = bdclm-mcnt - 1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF bdclm-mid EQ '00'.&lt;/P&gt;&lt;P&gt;          IF ( bdclm-mnr EQ '162' )&lt;/P&gt;&lt;P&gt;          OR ( bdclm-mnr EQ '368' ).&lt;/P&gt;&lt;P&gt;            bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND bdclm.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;      PERFORM extend_message_texts. " extended texts -&amp;gt; bdclm&lt;/P&gt;&lt;P&gt;      PERFORM download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_log&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_logfiles_from_temse&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_logfiles_from_temse.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;are there any logs in the TemSe for this QID ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR logtab_temse[].&lt;/P&gt;&lt;P&gt;  CLEAR bdcld[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * FROM apql INTO TABLE logtab_temse&lt;/P&gt;&lt;P&gt;  WHERE qid = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;some logs were found: now put this info into table bdcld.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: wa_log LIKE LINE OF logtab_temse,&lt;/P&gt;&lt;P&gt;  wa_ld LIKE LINE OF bdcld.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT logtab_temse INTO wa_log.&lt;/P&gt;&lt;P&gt;    CLEAR wa_ld.&lt;/P&gt;&lt;P&gt;    wa_ld-temseid = wa_log-temseid.&lt;/P&gt;&lt;P&gt;    wa_ld-lmand = wa_log-mandant.&lt;/P&gt;&lt;P&gt;    wa_ld-edate = wa_log-credate.&lt;/P&gt;&lt;P&gt;    wa_ld-etime = wa_log-cretime.&lt;/P&gt;&lt;P&gt;    wa_ld-luser = wa_log-creator.&lt;/P&gt;&lt;P&gt;    wa_ld-grpn = wa_log-groupid.&lt;/P&gt;&lt;P&gt;    wa_ld-quid = wa_log-qid.&lt;/P&gt;&lt;P&gt;    wa_ld-local_host = wa_log-destsys(8).&lt;/P&gt;&lt;P&gt;    APPEND wa_ld TO bdcld.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_logfiles_from_temse&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: extend_message_texts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM extend_message_texts.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;    lm = bdclm. save_mpar = bdclm-mpar.&lt;/P&gt;&lt;P&gt;    PERFORM get_text.&lt;/P&gt;&lt;P&gt;    bdclm-longtext = mtext.&lt;/P&gt;&lt;P&gt;    bdclm-mpar = save_mpar.&lt;/P&gt;&lt;P&gt;    MODIFY bdclm.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "extend_message_texts&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : get_text *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_text.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Aufbereiten des Messagetextes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: shiftln TYPE i,&lt;/P&gt;&lt;P&gt;  vartcnt TYPE i,&lt;/P&gt;&lt;P&gt;  fdpos LIKE sy-fdpos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bdclm-mparcnt CN digits. "Korrupter Datensatz:&lt;/P&gt;&lt;P&gt;    bdclm-mparcnt = 0. "z.B. Hexnullen&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM t100&lt;/P&gt;&lt;P&gt;  WHERE sprsl = sy-langu&lt;/P&gt;&lt;P&gt;  AND arbgb = bdclm-mid&lt;/P&gt;&lt;P&gt;  AND msgnr = bdclm-mnr.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    CLEAR: mtext,&lt;/P&gt;&lt;P&gt;    parcnt,&lt;/P&gt;&lt;P&gt;    mparcnt,&lt;/P&gt;&lt;P&gt;    charcnt,&lt;/P&gt;&lt;P&gt;    wcnt,&lt;/P&gt;&lt;P&gt;    mt,&lt;/P&gt;&lt;P&gt;    sp_len,&lt;/P&gt;&lt;P&gt;    sy-fdpos.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    MOVE bdclm-mparcnt TO mparcnt.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF t100-text CA '$&amp;amp;'. "Kennung fuer parameter:&lt;/P&gt;&lt;P&gt;      MOVE t100-text TO mtext1. " alt '$' --- neu '&amp;amp;'&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MOVE t100-text TO mtext.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;variable teile aus batch-input protokoll in mttab bringen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    REFRESH mttab.&lt;/P&gt;&lt;P&gt;    CLEAR shiftln.&lt;/P&gt;&lt;P&gt;    DO mparcnt TIMES.&lt;/P&gt;&lt;P&gt;      CLEAR: par, mttab.&lt;/P&gt;&lt;P&gt;      MOVE bdclm-mpar TO par.&lt;/P&gt;&lt;P&gt;      IF par-len CN digits OR par-len EQ 0. "convert_no_number&lt;/P&gt;&lt;P&gt;        par-len = 1. "entschärfen&lt;/P&gt;&lt;P&gt;        par-text = ' '.&lt;/P&gt;&lt;P&gt;        shiftln = 2.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        shiftln = par-len + 2.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      WRITE par-text TO mttab-text(par-len).&lt;/P&gt;&lt;P&gt;      MOVE par-len TO mttab-len.&lt;/P&gt;&lt;P&gt;      MOVE mparcnt TO mttab-off.&lt;/P&gt;&lt;P&gt;      APPEND mttab.&lt;/P&gt;&lt;P&gt;      SHIFT bdclm-mpar BY shiftln PLACES.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    mtext2 = mtext1.&lt;/P&gt;&lt;P&gt;    IF bdclm-mid EQ '00' AND " sonderbehandlung s00368&lt;/P&gt;&lt;P&gt;    bdclm-mnr EQ '368' AND&lt;/P&gt;&lt;P&gt;    bdclm-mart EQ 'S'.&lt;/P&gt;&lt;P&gt;      CLEAR mtext2.&lt;/P&gt;&lt;P&gt;      CLEAR mttab.&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX 1.&lt;/P&gt;&lt;P&gt;      WRITE mttab-text TO mtext2+0(mttab-len).&lt;/P&gt;&lt;P&gt;      CLEAR mttab.&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX 2.&lt;/P&gt;&lt;P&gt;      WRITE mttab-text TO mtext2+35(mttab-len).&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    do_condense = x.&lt;/P&gt;&lt;P&gt;    CLEAR: mt, vartcnt, mtvaroff.&lt;/P&gt;&lt;P&gt;    WHILE vartcnt LE 3.&lt;/P&gt;&lt;P&gt;      vartcnt = vartcnt + 1.&lt;/P&gt;&lt;P&gt;      IF mtext1 CA '$&amp;amp;'.&lt;/P&gt;&lt;P&gt;        parcnt = parcnt + 1.&lt;/P&gt;&lt;P&gt;        IF sy-fdpos GT 0.&lt;/P&gt;&lt;P&gt;          fdpos = sy-fdpos - 1. " neu sy-fdpos -1&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          fdpos = sy-fdpos.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        SHIFT mtext1 BY sy-fdpos PLACES.&lt;/P&gt;&lt;P&gt;        IF mtext1(1) EQ '&amp;amp;'.&lt;/P&gt;&lt;P&gt;          SHIFT mtext1 BY 1 PLACES.&lt;/P&gt;&lt;P&gt;          CASE mtext1(1).&lt;/P&gt;&lt;P&gt;            WHEN ' '. "'&amp;amp; '&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp; ' parcnt fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '$'. "'&amp;amp;&amp;amp;'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;&amp;amp;' 0 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '1'.                                       "'&amp;amp;1'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;1' 1 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '2'.                                       "'&amp;amp;2'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;2' 2 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '3'.                                       "'&amp;amp;3'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;3' 3 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '4'.                                       "'&amp;amp;4'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;4' 4 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN OTHERS. "'&amp;amp;'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;&amp;lt;' parcnt fdpos.&lt;/P&gt;&lt;P&gt;          ENDCASE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF mtext1(1) EQ '$'.&lt;/P&gt;&lt;P&gt;          SHIFT mtext1 BY 1 PLACES.&lt;/P&gt;&lt;P&gt;          CASE mtext1(1).&lt;/P&gt;&lt;P&gt;            WHEN ' '. "'$ '&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$ ' parcnt fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '$'. "'$$'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$$' 0 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '1'.                                       "'$1'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$1' 1 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '2'.                                       "'$2'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$2' 2 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '3'.                                       "'$3'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$3' 3 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '4'.                                       "'$4'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$4' 4 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN OTHERS. "'$'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$&amp;lt;' parcnt fdpos.&lt;/P&gt;&lt;P&gt;          ENDCASE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDWHILE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF mtext2 CA '%%_D_%%'.&lt;/P&gt;&lt;P&gt;      REPLACE '%%_D_%%' WITH '$' INTO mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF mtext2 CA '%%_A_%%'.&lt;/P&gt;&lt;P&gt;      REPLACE '%%_A_%%' WITH '&amp;amp;' INTO mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF do_condense EQ space.&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      CONDENSE mtext2 .&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    mtext = '???????????????????????????????????????????????????'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    " get_text1&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : replace_var *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM replace_var USING vark vari varpos.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ersetzen der variablen teile einer fehlermeldung&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: var(02),&lt;/P&gt;&lt;P&gt;  var1,&lt;/P&gt;&lt;P&gt;  moff TYPE i.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR: mttab , moff.&lt;/P&gt;&lt;P&gt;  var = vark.&lt;/P&gt;&lt;P&gt;  SHIFT var BY 1 PLACES.&lt;/P&gt;&lt;P&gt;  CASE var.&lt;/P&gt;&lt;P&gt;    WHEN ' '. "'&amp;amp; '&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX vari.&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        moff = varpos + mtvaroff.&lt;/P&gt;&lt;P&gt;        ASSIGN mtext2+moff(*) TO . "neu&lt;/P&gt;&lt;P&gt;          mtvaroff = 7. "neu&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  do_condense = space.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;ENDFORM. "replace_var&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: set_new_display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM set_new_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in tcodes list: choose new transaction:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      READ TABLE bdc_tcodes INDEX selected_index.&lt;/P&gt;&lt;P&gt;      CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;      CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      tcode_index = selected_index.&lt;/P&gt;&lt;P&gt;      tcode_status = bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;      tcode = bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;      IF previous_tab IS INITIAL.&lt;/P&gt;&lt;P&gt;        tab_dynpro-activetab = 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        tab_dynpro-activetab = previous_tab.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in screens list: simulate screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;simulate screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM simulate_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in protocol list: show message long text:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      READ TABLE bdc_protocol INDEX selected_index.&lt;/P&gt;&lt;P&gt;      CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM show_ltext.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "set_new_display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : show_ltext&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display long text for a log message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM show_ltext.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  docnt TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  BEGIN OF my,&lt;/P&gt;&lt;P&gt;  msgv1 LIKE sy-msgv1,&lt;/P&gt;&lt;P&gt;  msgv2 LIKE sy-msgv2,&lt;/P&gt;&lt;P&gt;  msgv3 LIKE sy-msgv3,&lt;/P&gt;&lt;P&gt;  msgv4 LIKE sy-msgv4,&lt;/P&gt;&lt;P&gt;  END OF my.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  msg_text LIKE shkontext-meldung,&lt;/P&gt;&lt;P&gt;  msg_arbgb LIKE shkontext-meld_id,&lt;/P&gt;&lt;P&gt;  msg_nr LIKE shkontext-meld_nr,&lt;/P&gt;&lt;P&gt;  msg_title LIKE shkontext-titel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RABAX- or T100 message ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF bdc_protocol-mid EQ '00' AND "Rabax&lt;/P&gt;&lt;P&gt;  bdc_protocol-mnr EQ '341'.&lt;/P&gt;&lt;P&gt;    CLEAR: par.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract Rabax-ID and key fields from message string&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    par = bdc_protocol-mpar.&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. EXIT. ENDIF. "corrupt string"&lt;/P&gt;&lt;P&gt;    my-msgv1 = par-text(par-len).&lt;/P&gt;&lt;P&gt;    SHIFT par LEFT BY par-len PLACES.&lt;/P&gt;&lt;P&gt;    SHIFT par LEFT BY 2 PLACES.&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. EXIT. ENDIF. "corrupt string"&lt;/P&gt;&lt;P&gt;    snap = par-text(par-len).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Rabax display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL DIALOG 'RS_RUN_TIME_ERROR'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        snap-mandt&lt;/P&gt;&lt;P&gt;        snap-datum&lt;/P&gt;&lt;P&gt;        snap-uzeit&lt;/P&gt;&lt;P&gt;        snap-ahost&lt;/P&gt;&lt;P&gt;        snap-uname&lt;/P&gt;&lt;P&gt;        snap-modno.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;no RABAX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  docnt = 0.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR: my.&lt;/P&gt;&lt;P&gt;  IF bdc_protocol-mparcnt CN digits. "Korrupter Datensatz:&lt;/P&gt;&lt;P&gt;    bdc_protocol-mparcnt = 0. "z.B. Hexnullen&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO bdc_protocol-mparcnt TIMES.&lt;/P&gt;&lt;P&gt;    IF bdc_protocol-mpar(1) EQ space.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    docnt = docnt + 1.&lt;/P&gt;&lt;P&gt;    CLEAR par.&lt;/P&gt;&lt;P&gt;    MOVE bdc_protocol-mpar TO par.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. "convert_no_number&lt;/P&gt;&lt;P&gt;      par-len = 1. "entschärfen&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    CASE docnt.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv1(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 2.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv2(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 3.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv3(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 4.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv4(par-len).&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    par-len = par-len + 2.&lt;/P&gt;&lt;P&gt;    SHIFT bdc_protocol-mpar BY par-len PLACES.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  msg_arbgb = bdc_protocol-mid.&lt;/P&gt;&lt;P&gt;  msg_nr = bdc_protocol-mnr.&lt;/P&gt;&lt;P&gt;  msg_text = mtext.&lt;/P&gt;&lt;P&gt;  msg_title = sy-title.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'HELPSCREEN_NA_CREATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      meldung = msg_text&lt;/P&gt;&lt;P&gt;      meld_id = msg_arbgb&lt;/P&gt;&lt;P&gt;      meld_nr = msg_nr&lt;/P&gt;&lt;P&gt;      msgv1   = my-msgv1&lt;/P&gt;&lt;P&gt;      msgv2   = my-msgv2&lt;/P&gt;&lt;P&gt;      msgv3   = my-msgv3&lt;/P&gt;&lt;P&gt;      msgv4   = my-msgv4&lt;/P&gt;&lt;P&gt;      titel   = msg_title.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " show_ltext.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: simulate_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;use function module CAT_SIMULATE_DYNPRO to simulate a dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;with contents according to APQD data of session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM simulate_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  cat_okcode LIKE sy-ucomm,&lt;/P&gt;&lt;P&gt;  cat_params LIKE catp OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;  on_subscreen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR cat_bdcdata. REFRESH cat_bdcdata.&lt;/P&gt;&lt;P&gt;  READ TABLE bdc_dynpro INDEX selected_index.&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_dynpro WHERE index = bdc_dynpro-index.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING all_bdc_dynpro TO cat_bdcdata.&lt;/P&gt;&lt;P&gt;    APPEND cat_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  READ TABLE cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;  cat_bdcdata-dynbegin = 'X'. MODIFY cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now we need some extra work to generate the correct input data&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;format for FUNCTION 'CAT_SIMULATE_DYNPRO' for subscreen fields.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR on_subscreen.&lt;/P&gt;&lt;P&gt;  LOOP AT cat_bdcdata.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check if there is a new subscreen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF cat_bdcdata-fnam = 'BDC_SUBSCR'.&lt;/P&gt;&lt;P&gt;      MOVE cat_bdcdata-fval TO bdc_subscreen.&lt;/P&gt;&lt;P&gt;      CLEAR cat_bdcdata-fval.&lt;/P&gt;&lt;P&gt;      CONCATENATE bdc_subscreen-program&lt;/P&gt;&lt;P&gt;      bdc_subscreen-dynpro&lt;/P&gt;&lt;P&gt;      bdc_subscreen-subscr&lt;/P&gt;&lt;P&gt;      INTO cat_bdcdata-fval SEPARATED BY ' '.&lt;/P&gt;&lt;P&gt;      MODIFY cat_bdcdata.&lt;/P&gt;&lt;P&gt;      on_subscreen = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'CSIM'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0300' WITH cat_bdcdata-program cat_bdcdata-dynpro.&lt;/P&gt;&lt;P&gt;  MESSAGE s223(tt).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CAT_SIMULATE_DYNPRO'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      mpool            = cat_bdcdata-program&lt;/P&gt;&lt;P&gt;      dynnr            = cat_bdcdata-dynpro&lt;/P&gt;&lt;P&gt;      display_only     = 'X'&lt;/P&gt;&lt;P&gt;      own_status_title = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      fielddata        = cat_bdcdata&lt;/P&gt;&lt;P&gt;      paramlist        = cat_params&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      no_dynpro        = 1&lt;/P&gt;&lt;P&gt;      dynpro_not_found = 2&lt;/P&gt;&lt;P&gt;      gen_error        = 3&lt;/P&gt;&lt;P&gt;      enq_error        = 4&lt;/P&gt;&lt;P&gt;      subscr_error     = 5&lt;/P&gt;&lt;P&gt;      OTHERS           = 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE sy-subrc.&lt;/P&gt;&lt;P&gt;    WHEN 1. MESSAGE s221(tt).&lt;/P&gt;&lt;P&gt;    WHEN 2.&lt;/P&gt;&lt;P&gt;      MESSAGE s219(tt)&lt;/P&gt;&lt;P&gt;      WITH cat_bdcdata-program cat_bdcdata-dynpro.&lt;/P&gt;&lt;P&gt;    WHEN 3. MESSAGE s236(tt) WITH ' ' ' '.&lt;/P&gt;&lt;P&gt;    WHEN 4. MESSAGE s215(tt).&lt;/P&gt;&lt;P&gt;    WHEN 5. MESSAGE s238(tt) WITH ' ' ' '.&lt;/P&gt;&lt;P&gt;    WHEN 6. MESSAGE s258(00).&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "simulate_dynpro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: scrolling&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scrolling in table controls according to SAP style guide&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scrolling.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  top_line LIKE sy-index,&lt;/P&gt;&lt;P&gt;  last_line LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      top_line = tc_tcodes-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_tcodes LINES last_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      top_line = tc_dynpro-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_dynpro LINES last_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      top_line = tc_protocol-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_protocol LINES last_line.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SCROLLING_IN_TABLE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      entry_act             = top_line&lt;/P&gt;&lt;P&gt;      entry_from            = 1&lt;/P&gt;&lt;P&gt;      entry_to              = last_line&lt;/P&gt;&lt;P&gt;      ok_code               = main_okcode&lt;/P&gt;&lt;P&gt;      last_page_full        = ' '&lt;/P&gt;&lt;P&gt;      overlapping           = ' '&lt;/P&gt;&lt;P&gt;      loops                 = loopc&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      entries_sum           = entries&lt;/P&gt;&lt;P&gt;      entry_new             = new_line&lt;/P&gt;&lt;P&gt;      pages_sum             = total_pages&lt;/P&gt;&lt;P&gt;      page_new              = new_page&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      no_entry_or_page_act  = 01&lt;/P&gt;&lt;P&gt;      no_entry_to           = 02&lt;/P&gt;&lt;P&gt;      no_ok_code_or_page_go = 03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      tc_tcodes-top_line = new_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      tc_dynpro-top_line = new_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      tc_protocol-top_line = new_line.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "scrolling&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR d0700_fcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET TITLEBAR 'QUEUE_DUMP' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'PF_QUEUE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF q-tcode_index IS INITIAL.&lt;/P&gt;&lt;P&gt;    IF NOT tcode_index_apqd IS INITIAL.&lt;/P&gt;&lt;P&gt;      q-tcode_index = tcode_index_apqd.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      READ TABLE all_bdc_tcodes INTO q-wa INDEX 1.&lt;/P&gt;&lt;P&gt;      q-tcode_index = q-wa-index.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check for unicode; how many byte's a character?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DESCRIBE FIELD q-c LENGTH q-uc_bytes IN BYTE MODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read all blocks (dynpros) of the currently selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = q-tcode_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_fcode INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0700_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;      CLEAR q-tcode_index.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'END'.&lt;/P&gt;&lt;P&gt;      CLEAR q-tcode_index.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN 'TOGGLE'.&lt;/P&gt;&lt;P&gt;      IF q-show_hex IS INITIAL.&lt;/P&gt;&lt;P&gt;        q-show_hex = 'X'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        CLEAR q-show_hex.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'APQI'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0701'.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "nop&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " ok_700 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module exit_700 INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_exit INPUT.&lt;/P&gt;&lt;P&gt;  LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;ENDMODULE. " exit_700 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module set_status_icon OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE set_status_icon OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: icon_name(4),&lt;/P&gt;&lt;P&gt;  icon_info(32).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;    WHEN 'F'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_status_ok.&lt;/P&gt;&lt;P&gt;      icon_info = 'verarbeitet'(002).&lt;/P&gt;&lt;P&gt;    WHEN 'E'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_status_critical.&lt;/P&gt;&lt;P&gt;      icon_info = 'fehlerhaft'(001).&lt;/P&gt;&lt;P&gt;    WHEN 'D'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_delete.&lt;/P&gt;&lt;P&gt;      icon_info = 'gelöscht'(005).&lt;/P&gt;&lt;P&gt;    WHEN ' ' OR 'B'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_create.&lt;/P&gt;&lt;P&gt;      icon_info = 'neu'(034).&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      icon_name = all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      icon_info = '???'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ICON_CREATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      name   = icon_name&lt;/P&gt;&lt;P&gt;      info   = icon_info&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      RESULT = status_icon&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS = 1.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    status_icon = icon_name.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF all_bdc_tcodes-index = q-tcode_index.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1.&lt;/P&gt;&lt;P&gt;      MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " set_status_icon OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_get_cursor INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_get_cursor INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD q-c_field LINE q-c_line AREA q-c_area.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CHECK q-c_area = 'TC_Q_TCODES'.&lt;/P&gt;&lt;P&gt;    CHECK q-c_line &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    q-itab_index = tc_q_tcodes-top_line + q-c_line - 1.&lt;/P&gt;&lt;P&gt;    READ TABLE all_bdc_tcodes INTO q-wa INDEX q-itab_index.&lt;/P&gt;&lt;P&gt;    q-tcode_index = q-wa-index.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_get_cursor INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_control_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_control_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK q-control_init = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create custom container and dynamic document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT cust&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;  container_name = 'CUSTOM_CONTAINER'&lt;/P&gt;&lt;P&gt;  dynnr = '0700'&lt;/P&gt;&lt;P&gt;  repid = 'RSBDC_ANALYSE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;lifetime = cntl_lifetime_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;  OTHERS = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT dd&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;  background_color = cl_dd_area=&amp;gt;col_textarea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR q-control_init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_control_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_display OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_display OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;initialize_document&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      background_color = cl_dd_area=&amp;gt;col_textarea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH it_blocks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loop at all apqd blocks for the current transaction and built up the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;dynamic document for each block&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    PERFORM build_queue_dd.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;merge_document.&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;display_document&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      parent             = cust&lt;/P&gt;&lt;P&gt;      reuse_control      = q-reuse_control&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      html_display_error = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if the HTML control for the DD is already created, we can re-use it.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF q-reuse_control IS INITIAL.&lt;/P&gt;&lt;P&gt;    q-reuse_control = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_display OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form build_queue_dd&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM build_queue_dd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: off LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write the most important apqd header fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-qid TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Queue-ID:'(030) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-trans TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Transaktion:'(031) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-block TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Block:'(032) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;  sap_color = cl_dd_table_area=&amp;gt;list_positive ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-varlen TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'VARDATA-Länge:'(033) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now add a DD table to it_blocks for the current APQD block&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR b_wa.&lt;/P&gt;&lt;P&gt;  REFRESH it_cx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;add_table&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      no_of_columns               = nr_cols&lt;/P&gt;&lt;P&gt;      cell_background_transparent = space&lt;/P&gt;&lt;P&gt;      border                      = '0'&lt;/P&gt;&lt;P&gt;      width                       = '100%'&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      tablearea                   = b_wa-dta&lt;/P&gt;&lt;P&gt;      table                       = b_wa-dt&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS                      = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND b_wa TO it_blocks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;prepare ascii/hex table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO it_apqd-varlen TIMES.&lt;/P&gt;&lt;P&gt;    off = sy-index - 1.&lt;/P&gt;&lt;P&gt;    ASSIGN it_apqd-vardata+off(1) TO .&lt;/P&gt;&lt;P&gt;    WRITE cx-hex TO cx-xtoc.&lt;/P&gt;&lt;P&gt;    APPEND cx TO it_cx.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write apqd-vardata (as prepared in it_cx ) to the DD list&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM vardata_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " build_queue_dd&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form vardata_lines&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM vardata_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  count-start = 0.&lt;/P&gt;&lt;P&gt;  count-rest = it_apqd-varlen.&lt;/P&gt;&lt;P&gt;  IF it_apqd-varlen &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;    count-part = it_apqd-varlen.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    count-part = nr_cols.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    cspan = nr_cols - count-part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;1. the ASCII - Value&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;new_row( sap_color = cl_dd_table_area=&amp;gt;list_heading ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO count-part TIMES.&lt;/P&gt;&lt;P&gt;      count-index = count-start + sy-index.&lt;/P&gt;&lt;P&gt;      READ TABLE it_cx INTO cx INDEX count-index.&lt;/P&gt;&lt;P&gt;      IF NOT cx-hex IS INITIAL.&lt;/P&gt;&lt;P&gt;        t = cx-char.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        t = space.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;        sap_color = cl_dd_table_area=&amp;gt;list_negative ).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;    IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;      t = space.&lt;/P&gt;&lt;P&gt;      DO cspan TIMES.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;        sap_color =&lt;/P&gt;&lt;P&gt;        cl_dd_table_area=&amp;gt;list_background ).&lt;/P&gt;&lt;P&gt;      ENDDO.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF q-show_hex = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;2. at least one Byte hex-code for non-unicode systems&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;      PERFORM hex_line USING cx-xtoc+0(1).&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;      PERFORM hex_line USING cx-xtoc+1(1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;3. two-byte unicode:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ( q-uc_bytes = 2 OR q-uc_bytes = 4 ).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+2(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+3(1).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;3. four-byte unicode:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ( q-uc_bytes = 4 ).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+4(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+5(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+6(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+7(1).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;calculate new counter values for next line(s)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    count-rest = count-rest - nr_cols.&lt;/P&gt;&lt;P&gt;    IF count-rest &amp;lt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      count-start = count-start + nr_cols.&lt;/P&gt;&lt;P&gt;      IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;        count-part = count-rest.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        count-part = nr_cols.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " vardata_lines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form hex_line&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_T text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM hex_line USING p_t.&lt;/P&gt;&lt;P&gt;  DO count-part TIMES.&lt;/P&gt;&lt;P&gt;    count-index = count-start + sy-index.&lt;/P&gt;&lt;P&gt;    READ TABLE it_cx INTO cx INDEX count-index.&lt;/P&gt;&lt;P&gt;    t = p_t.&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;    DO cspan TIMES.&lt;/P&gt;&lt;P&gt;      t = space.&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. " hex_line&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0701_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0701_init OUTPUT.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  extab TYPE STANDARD TABLE OF fcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH extab.&lt;/P&gt;&lt;P&gt;  APPEND 'TOGGLE' TO extab.&lt;/P&gt;&lt;P&gt;  APPEND 'APQI' TO extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'PF_QUEUE' EXCLUDING extab.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR 'APQI_DUMP' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0701_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0701_fcode INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0701_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0701_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'END'.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN 'UNLOCK'.&lt;/P&gt;&lt;P&gt;      PERFORM session_unlock.&lt;/P&gt;&lt;P&gt;    WHEN 'TOGGLE_KEEP'.&lt;/P&gt;&lt;P&gt;      PERFORM session_toggle_keep_flag.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "nop&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0701_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form session_unlock&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM session_unlock.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: user LIKE sy-uname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  AUTHORITY-CHECK OBJECT 'S_BDC_MONI'&lt;/P&gt;&lt;P&gt;  ID 'BDCAKTI' FIELD 'LOCK'&lt;/P&gt;&lt;P&gt;  ID 'BDCGROUPID' FIELD apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE i394 WITH apqi-groupid. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ENQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp        = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid        = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid            = apqi-qid&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      foreign_lock   = 1&lt;/P&gt;&lt;P&gt;      system_failure = 99.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        user = sy-msgv1.&lt;/P&gt;&lt;P&gt;        MESSAGE i322 WITH apqi-groupid apqi-qid user.&lt;/P&gt;&lt;P&gt;      WHEN 99. MESSAGE i353 WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR apqi-startdate. UPDATE apqi. COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid     = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tell SM35 to reload table APQI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXPORT reload_apqi TO MEMORY ID 'RELOAD_APQI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " session_unlock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form session_toggle_keep_flag&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM session_toggle_keep_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: user LIKE sy-uname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;since setting or deleting the apqi-qerase flag can be considered of&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;being equal to deleting a session, we check for the corresponding&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;authorization. There's no special 'KEEP' activity for S_BDC_MONI &lt;SPAN __jive_emoticon_name="sad"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  AUTHORITY-CHECK OBJECT 'S_BDC_MONI'&lt;/P&gt;&lt;P&gt;  ID 'BDCAKTI' FIELD 'DELE'&lt;/P&gt;&lt;P&gt;  ID 'BDCGROUPID' FIELD apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE i395 WITH apqi-groupid. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ENQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp        = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid        = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid            = apqi-qid&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      foreign_lock   = 1&lt;/P&gt;&lt;P&gt;      system_failure = 99.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        user = sy-msgv1.&lt;/P&gt;&lt;P&gt;        MESSAGE i322 WITH apqi-groupid apqi-qid user.&lt;/P&gt;&lt;P&gt;      WHEN 99.&lt;/P&gt;&lt;P&gt;        MESSAGE i353 WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-qerase = 'X'.&lt;/P&gt;&lt;P&gt;    CLEAR apqi-qerase.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    apqi-qerase = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  UPDATE apqi. COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid     = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tell SM35 to reload table APQI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXPORT reload_apqi TO MEMORY ID 'RELOAD_APQI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " session_toggle_keep_flag&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0702_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0702_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-startdate IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      IF screen-name = 'PB_UNLOCK'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0702_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module MARK_TCODE OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE mark_tcode OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF ( ( tcode_index_apqd = 0 )&lt;/P&gt;&lt;P&gt;  AND ( bdc_tcodes-index = 1st_bdc_tcode_index ) )&lt;/P&gt;&lt;P&gt;  OR ( bdc_tcodes-index = tcode_index_apqd ).&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " mark_tcode output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM count_dynpros&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count dynpros for a selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM count_dynpros USING tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR it_apqd. REFRESH it_apqd.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = tcnt.&lt;/P&gt;&lt;P&gt;  CLEAR dynpro_cnt.&lt;/P&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    IF it_apqd-vardata(1) = 'M'. "it's a message header&lt;/P&gt;&lt;P&gt;      dynpro_cnt = dynpro_cnt + 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "count_dynpros&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM recalculate_counters&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;recalculate dynpro counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM recalculate_counters.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: apqdcnt-msgcntb,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnte,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnto,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntf,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntd,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnt,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntx,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;    PERFORM count_dynpros USING all_bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;    ADD dynpro_cnt TO apqdcnt-msgcnt.&lt;/P&gt;&lt;P&gt;    CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      WHEN 'D' OR 'G'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntd.&lt;/P&gt;&lt;P&gt;      WHEN 'F'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntf.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcnte.&lt;/P&gt;&lt;P&gt;      WHEN 'B'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntb.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnto = apqdcnt-msgcntb&lt;/P&gt;&lt;P&gt;  + apqdcnt-msgcnte.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntd = apqdcnt-msgcnt&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcntf&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcnte&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcntb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntp = apqi-putblock&lt;/P&gt;&lt;P&gt;  - apqi-puttrans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntx = apqdcnt-msgcntp&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  show_dynpro_cnt = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "recalculate_counters&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form download&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM download .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH lt_string.&lt;/P&gt;&lt;P&gt;  LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;  CONCATENATE bdclm-tcnt bdclm-longtext INTO wa_string SEPARATED BY '|'.&lt;/P&gt;&lt;P&gt;    APPEND wa_string TO lt_string.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  filename = 'H:Errorlog.xls'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD cl_gui_frontend_services=&amp;gt;gui_download&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = filename&lt;/P&gt;&lt;P&gt;      filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      data_tab                = lt_string&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      file_write_error        = 1&lt;/P&gt;&lt;P&gt;      no_batch                = 2&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 3&lt;/P&gt;&lt;P&gt;      invalid_type            = 4&lt;/P&gt;&lt;P&gt;      no_authority            = 5&lt;/P&gt;&lt;P&gt;      unknown_error           = 6&lt;/P&gt;&lt;P&gt;      header_not_allowed      = 7&lt;/P&gt;&lt;P&gt;      separator_not_allowed   = 8&lt;/P&gt;&lt;P&gt;      filesize_not_allowed    = 9&lt;/P&gt;&lt;P&gt;      header_too_long         = 10&lt;/P&gt;&lt;P&gt;      dp_error_create         = 11&lt;/P&gt;&lt;P&gt;      dp_error_send           = 12&lt;/P&gt;&lt;P&gt;      dp_error_write          = 13&lt;/P&gt;&lt;P&gt;      unknown_dp_error        = 14&lt;/P&gt;&lt;P&gt;      access_denied           = 15&lt;/P&gt;&lt;P&gt;      dp_out_of_memory        = 16&lt;/P&gt;&lt;P&gt;      disk_full               = 17&lt;/P&gt;&lt;P&gt;      dp_timeout              = 18&lt;/P&gt;&lt;P&gt;      file_not_found          = 19&lt;/P&gt;&lt;P&gt;      dataprovider_exception  = 20&lt;/P&gt;&lt;P&gt;      control_flush_error     = 21&lt;/P&gt;&lt;P&gt;      not_supported_by_gui    = 22&lt;/P&gt;&lt;P&gt;      error_no_gui            = 23&lt;/P&gt;&lt;P&gt;      OTHERS                  = 24.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000(vz) WITH 'Error while'&lt;/P&gt;&lt;P&gt;    'downloading'&lt;/P&gt;&lt;P&gt;    'BDC log to'&lt;/P&gt;&lt;P&gt;    filename.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE s000(vz) WITH 'Log'&lt;/P&gt;&lt;P&gt;    'downloaded'&lt;/P&gt;&lt;P&gt;    'to'&lt;/P&gt;&lt;P&gt;    filename.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Dec 2006 09:23:10 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778971#M335802</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-14T09:23:10Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778972#M335803</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is a sample program wherein you can download the errors into a internal table from the batch session method using the queue id from the batch session&lt;/P&gt;&lt;P&gt;You can change the program so that it suits your requirements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS:&lt;/P&gt;&lt;P&gt;queue_id LIKE apqi-qid OBLIGATORY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE rsbdcil3. "Read plain log from TemSe&lt;/P&gt;&lt;P&gt;TYPE-POOLS: icon, sdydo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES:&lt;/P&gt;&lt;P&gt;apqi, apqd, apql, t100, snap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONTROLS:&lt;/P&gt;&lt;P&gt;tc_tcodes TYPE TABLEVIEW USING SCREEN 200,&lt;/P&gt;&lt;P&gt;tc_dynpro TYPE TABLEVIEW USING SCREEN 300,&lt;/P&gt;&lt;P&gt;tc_protocol TYPE TABLEVIEW USING SCREEN 400,&lt;/P&gt;&lt;P&gt;tc_bdcld TYPE TABLEVIEW USING SCREEN 600,&lt;/P&gt;&lt;P&gt;tc_q_tcodes TYPE TABLEVIEW USING SCREEN 700,&lt;/P&gt;&lt;P&gt;tab_dynpro TYPE TABSTRIP,&lt;/P&gt;&lt;P&gt;tab_apqi TYPE TABSTRIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps those tcodes actually displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_tcodes OCCURS 0,&lt;/P&gt;&lt;P&gt;index TYPE i, tcode LIKE sy-tcode, status(1), s_text(16),&lt;/P&gt;&lt;P&gt;END OF bdc_tcodes,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps all tcodes of the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF all_bdc_tcodes OCCURS 0,&lt;/P&gt;&lt;P&gt;index TYPE i, tcode LIKE sy-tcode, status(1), s_text(16),&lt;/P&gt;&lt;P&gt;END OF all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps those dynpros actually displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_dynpro OCCURS 0,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog, dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;fnam LIKE bdcdata-fnam, fval LIKE bdcdata-fval,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;END OF bdc_dynpro,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps all dynpros of the session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF all_bdc_dynpro OCCURS 0,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog, dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;fnam LIKE bdcdata-fnam, fval LIKE bdcdata-fval,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;END OF all_bdc_dynpro,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dynpro_index TYPE i,&lt;/P&gt;&lt;P&gt;cat_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;this table keeps protocol lines to be displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;BEGIN OF bdc_protocol OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdclm.&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;longtext TYPE bdc_mpar,&lt;/P&gt;&lt;P&gt;END OF bdc_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_apqd LIKE apqd OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;udat LIKE apqd-vardata, sdat LIKE apqd-vardata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF tf OCCURS 0, "interne tabelle mit dynprofeldern&lt;/P&gt;&lt;P&gt;count TYPE i VALUE 0, "zum abmischen&lt;/P&gt;&lt;P&gt;trcd(4),stat(4),&lt;/P&gt;&lt;P&gt;pgm(8), "programmname&lt;/P&gt;&lt;P&gt;dyn(4) TYPE n, "dynpronummer&lt;/P&gt;&lt;P&gt;fname(35), farg(132), fstart(5) TYPE p, fende(5) TYPE p,&lt;/P&gt;&lt;P&gt;END OF tf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;needed for check if TemSe interface is active:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: protparam(60) VALUE 'bdc/new_protocol',&lt;/P&gt;&lt;P&gt;newprot(3) VALUE 'off'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;message header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdcmh,&lt;/P&gt;&lt;P&gt;mtype, state,&lt;/P&gt;&lt;P&gt;tcode(20),                                                  " (4 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;prog(40),                                                   " (8 -&amp;gt; 40)&lt;/P&gt;&lt;P&gt;dynr(4), sepc, filler,&lt;/P&gt;&lt;P&gt;END OF bdcmh.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;transaction header&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdcth,&lt;/P&gt;&lt;P&gt;mtype, state,&lt;/P&gt;&lt;P&gt;tcode(20),                                                  " (4 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;postg, print,&lt;/P&gt;&lt;P&gt;msgid(20),                                                  " (2 -&amp;gt; 20)&lt;/P&gt;&lt;P&gt;END OF bdcth.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;bdcmhlen TYPE i VALUE 68, " (20 -&amp;gt; 68 ) MessageHeaderlaenge&lt;/P&gt;&lt;P&gt;dcnt TYPE i, tcnt TYPE i, gencnt TYPE i, delcnt TYPE i, wcount TYPE i,&lt;/P&gt;&lt;P&gt;mfstart TYPE i, mfende TYPE i, mflen TYPE i, mfart(2).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA BEGIN OF bdclm OCCURS 0. " ITabelle der Messageseintraege&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdclm. " LogTabelle&lt;/P&gt;&lt;P&gt;DATA: counter TYPE i,&lt;/P&gt;&lt;P&gt;longtext TYPE bdc_mpar,&lt;/P&gt;&lt;P&gt;isdetail(1) TYPE c,&lt;/P&gt;&lt;P&gt;END OF bdclm .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: lm LIKE bdclm,&lt;/P&gt;&lt;P&gt;save_mpar TYPE bdc_mpar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA BEGIN OF bdcld OCCURS 0. " ITabelle der Verzeichniseintraege&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcld. " LogTabelle aller Protokolle&lt;/P&gt;&lt;P&gt;DATA: logname(80), " protokollpfad&lt;/P&gt;&lt;P&gt;local_host(12), " lokaler rechner&lt;/P&gt;&lt;P&gt;cnt TYPE i, " satzzaehler&lt;/P&gt;&lt;P&gt;active(1) TYPE c, " active flag&lt;/P&gt;&lt;P&gt;temseid TYPE rstsoname. " TemSe ID&lt;/P&gt;&lt;P&gt;DATA END OF bdcld .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;logtab LIKE bdcld OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;logtab_temse LIKE apql OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;main_okcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0500_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0600_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0700_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;d0701_fcode TYPE fcode,&lt;/P&gt;&lt;P&gt;tc_mark(1),&lt;/P&gt;&lt;P&gt;counter TYPE i,&lt;/P&gt;&lt;P&gt;status_icon(32),&lt;/P&gt;&lt;P&gt;dynprotab_subscreen_dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;header_subscreen_dynpro LIKE sy-dynnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;ex_date(12), string(48), tab_proto(48).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Radio buttons and checkbox on screen 0500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF rb,&lt;/P&gt;&lt;P&gt;tcodes_all VALUE 'X', tcodes_error,&lt;/P&gt;&lt;P&gt;fieldlist VALUE ' ',&lt;/P&gt;&lt;P&gt;pro_all VALUE 'X', pro_tcode, pro_session,&lt;/P&gt;&lt;P&gt;log_detail,&lt;/P&gt;&lt;P&gt;END OF rb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Flags for identifying contents of the bdc_... tables&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;bdc_tcodes_content(1), "a: all, e: errors&lt;/P&gt;&lt;P&gt;bdc_dynpro_content(1), "f: fieldlist, s: screens only&lt;/P&gt;&lt;P&gt;bdc_protocol_content(1), "a: all, t: for transaction, s: for session&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;bdc_lines LIKE sy-index,&lt;/P&gt;&lt;P&gt;c_field(132),&lt;/P&gt;&lt;P&gt;c_line TYPE i,&lt;/P&gt;&lt;P&gt;selected_index LIKE sy-index,&lt;/P&gt;&lt;P&gt;selected_protocol LIKE sy-index,&lt;/P&gt;&lt;P&gt;tc_index LIKE sy-index,&lt;/P&gt;&lt;P&gt;tc_select LIKE sy-index,&lt;/P&gt;&lt;P&gt;tcode_index LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;tcode_index_apqd LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;1st_bdc_tcode_index LIKE bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;i_tcodes TYPE i,&lt;/P&gt;&lt;P&gt;i_protocols TYPE i,&lt;/P&gt;&lt;P&gt;tcode LIKE sy-tcode,&lt;/P&gt;&lt;P&gt;tcode_status(16),&lt;/P&gt;&lt;P&gt;previous_tab(64).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Data needed for CATT simulation of screens&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdc_subscreen,&lt;/P&gt;&lt;P&gt;program LIKE sy-cprog,&lt;/P&gt;&lt;P&gt;dynpro LIKE sy-dynnr,&lt;/P&gt;&lt;P&gt;subscr(64),&lt;/P&gt;&lt;P&gt;END OF bdc_subscreen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Table for keeping fcodes to be excluded from pf-status&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF ex_cua OCCURS 2,&lt;/P&gt;&lt;P&gt;fcode LIKE rsmpe-func,&lt;/P&gt;&lt;P&gt;END OF ex_cua.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data for keeping scoll infos&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;current_page LIKE sy-tabix VALUE 1,&lt;/P&gt;&lt;P&gt;new_page LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;total_pages LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;new_line LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;entries LIKE sy-tabix,&lt;/P&gt;&lt;P&gt;loopc LIKE sy-loopc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;data for queue dump&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF q,&lt;/P&gt;&lt;P&gt;tcode_index LIKE all_bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;itab_index LIKE all_bdc_tcodes-index,&lt;/P&gt;&lt;P&gt;c_field(132),&lt;/P&gt;&lt;P&gt;c_line LIKE sy-index,&lt;/P&gt;&lt;P&gt;c_area(132),&lt;/P&gt;&lt;P&gt;wa LIKE LINE OF all_bdc_tcodes,&lt;/P&gt;&lt;P&gt;control_init VALUE 'X',&lt;/P&gt;&lt;P&gt;reuse_control,&lt;/P&gt;&lt;P&gt;uc_bytes TYPE i,&lt;/P&gt;&lt;P&gt;c(1),&lt;/P&gt;&lt;P&gt;show_hex VALUE ' ',&lt;/P&gt;&lt;P&gt;END OF q.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;t TYPE sdydo_text_element,&lt;/P&gt;&lt;P&gt;c(128).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;BEGIN OF block,&lt;/P&gt;&lt;P&gt;dt TYPE REF TO cl_dd_table_element,&lt;/P&gt;&lt;P&gt;dta TYPE REF TO cl_dd_table_area,&lt;/P&gt;&lt;P&gt;END OF block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_blocks TYPE STANDARD TABLE OF block,&lt;/P&gt;&lt;P&gt;b_wa TYPE block.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;dd TYPE REF TO cl_dd_document,&lt;/P&gt;&lt;P&gt;cust TYPE REF TO cl_gui_custom_container.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;BEGIN OF cx,&lt;/P&gt;&lt;P&gt;char(1) TYPE c,&lt;/P&gt;&lt;P&gt;hex(4) TYPE x,&lt;/P&gt;&lt;P&gt;xtoc(8) TYPE c,&lt;/P&gt;&lt;P&gt;END OF cx,&lt;/P&gt;&lt;P&gt;uc_1(1) TYPE x,&lt;/P&gt;&lt;P&gt;uc_2(2) TYPE x,&lt;/P&gt;&lt;P&gt;uc_4(4) TYPE x.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;it_cx TYPE STANDARD TABLE OF cx,&lt;/P&gt;&lt;P&gt;cx TYPE cx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF count,&lt;/P&gt;&lt;P&gt;start TYPE i,&lt;/P&gt;&lt;P&gt;index TYPE i,&lt;/P&gt;&lt;P&gt;part TYPE i,&lt;/P&gt;&lt;P&gt;rest TYPE i,&lt;/P&gt;&lt;P&gt;END OF count.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;cspan TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;nr_cols TYPE i VALUE 64,&lt;/P&gt;&lt;P&gt;reload_apqi VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF apqdcnt,&lt;/P&gt;&lt;P&gt;transcntb TYPE apq_tran, "neu&lt;/P&gt;&lt;P&gt;msgcntb TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnte TYPE apq_tran, "fehlerhaft&lt;/P&gt;&lt;P&gt;msgcnte TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnto TYPE apq_tran, "noch zu verarbeiten&lt;/P&gt;&lt;P&gt;msgcnto TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntf TYPE apq_tran, "verarbeitet&lt;/P&gt;&lt;P&gt;msgcntf TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntd TYPE apq_tran, "gelöscht&lt;/P&gt;&lt;P&gt;msgcntd TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcnt TYPE apq_tran, "enthält aktuell&lt;/P&gt;&lt;P&gt;msgcnt TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntx TYPE apq_tran, "entfernt&lt;/P&gt;&lt;P&gt;msgcntx TYPE apq_reco,&lt;/P&gt;&lt;P&gt;transcntp TYPE apq_tran, "angelegt&lt;/P&gt;&lt;P&gt;msgcntp TYPE apq_reco,&lt;/P&gt;&lt;P&gt;END OF apqdcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;dynpro_cnt TYPE i,&lt;/P&gt;&lt;P&gt;show_dynpro_cnt VALUE ' ',&lt;/P&gt;&lt;P&gt;filename TYPE string,&lt;/P&gt;&lt;P&gt;lt_string TYPE char4000 OCCURS 0,&lt;/P&gt;&lt;P&gt;wa_string TYPE char4000,&lt;/P&gt;&lt;P&gt;p_cnt(8).&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM prepare USING queue_id.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CALL SCREEN 100.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form prepare&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM prepare USING qid TYPE apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: bdc_tcodes_content, bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM apqi WHERE qid = qid.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE i307(00) WITH 'Lesen'(010) 'mit Queue-ID'(011) qid.&lt;/P&gt;&lt;P&gt;    LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM fill_all_bdc_tcodes. " find all transactions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_logfiles_for_qid. " logfiles -&amp;gt; bdcld&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_log USING 1. " most recent log -&amp;gt; bdclm&lt;/P&gt;&lt;P&gt;  selected_protocol = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    rb-tcodes_all = 'X'. rb-pro_all = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ex_cua-fcode = 'FL_ON'. APPEND ex_cua.&lt;/P&gt;&lt;P&gt;  ex_cua-fcode = 'FL_OFF'. APPEND ex_cua.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "prepare&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module loopc&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE loopc OUTPUT.&lt;/P&gt;&lt;P&gt;  loopc = sy-loopc.&lt;/P&gt;&lt;P&gt;ENDMODULE. "loopc OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module status_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE status_main OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR main_okcode.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0100' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT SCREEN.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set text of tabstrip tab for protocol display or set tab invisible if&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;no protocol was found for the qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF screen-name = 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      IF selected_protocol IS INITIAL.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        WRITE bdcld-edate TO ex_date.&lt;/P&gt;&lt;P&gt;        CONCATENATE '@96@' 'Protokoll vom'(020) ex_date "ICON_HISTORY&lt;/P&gt;&lt;P&gt;        INTO tab_proto SEPARATED BY ' '.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set header and subscreen dynpro depending on active tab&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0200'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0201'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      IF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING 'FL_ON'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING 'FL_OFF'.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0300'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0301'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      IF rb-pro_tcode = 'X'.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN_NAVI' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0400'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0401'.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      SET PF-STATUS 'PF_MAIN' EXCLUDING ex_cua.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      dynprotab_subscreen_dynpro = '0200'.&lt;/P&gt;&lt;P&gt;      header_subscreen_dynpro = '0201'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is this the first call?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF tcode_index IS INITIAL.&lt;/P&gt;&lt;P&gt;    tcode_index = 1.&lt;/P&gt;&lt;P&gt;    tcode = all_bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;    tcode_status = all_bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tcode_index was already set in PAI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    tcode = bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;    tcode_status = bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "status_main OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module exit_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE exit_main INPUT.&lt;/P&gt;&lt;P&gt;  SET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;  LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;ENDMODULE. "exit_main INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module user_command_main&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE user_command_main INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF tab_dynpro-activetab &amp;lt;&amp;gt; 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;    previous_tab = tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE main_okcode.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the active tab&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      tab_dynpro-activetab = 'TAB_PROTO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;select entry for display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'DISPLAY'.&lt;/P&gt;&lt;P&gt;      PERFORM set_new_display.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;change the viewing options&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'VIEW_OPT'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN 500 STARTING AT 5 5.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;show list of protocols&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'PROTO'.&lt;/P&gt;&lt;P&gt;      IF selected_protocol &amp;gt; 0.&lt;/P&gt;&lt;P&gt;        CALL SCREEN 600 STARTING AT 5 5.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        MESSAGE s324(00).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'PROTO_REFRESH'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;reload protocol file (while watching running sessions)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          text = 'Protokoll wird erneut gelesen ...'(006).&lt;/P&gt;&lt;P&gt;      PERFORM get_log USING selected_protocol.&lt;/P&gt;&lt;P&gt;      PERFORM extend_message_texts.&lt;/P&gt;&lt;P&gt;      CLEAR bdc_protocol_content.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;switch field list on or off&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'FL_ON'. rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;    WHEN 'FL_OFF'. rb-fieldlist = ' '.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to first transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'FIRST'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;gt; 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;        tcode_index = 1.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to next transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'NEXT'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;lt; i_tcodes.&lt;/P&gt;&lt;P&gt;        tcode_index = tcode_index + 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX tcode_index.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to previous transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'PREV'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;gt; 1.&lt;/P&gt;&lt;P&gt;        tcode_index = tcode_index - 1.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX tcode_index.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;go to last transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'LAST'.&lt;/P&gt;&lt;P&gt;      IF tcode_index &amp;lt; i_tcodes.&lt;/P&gt;&lt;P&gt;        tcode_index = i_tcodes.&lt;/P&gt;&lt;P&gt;        READ TABLE bdc_tcodes INDEX i_tcodes.&lt;/P&gt;&lt;P&gt;        PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;        CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scrolling in table controls&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'P-' OR 'P--' OR 'P&lt;EM&gt;' OR 'P&lt;/EM&gt;+'.&lt;/P&gt;&lt;P&gt;      PERFORM scrolling.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display queue dump&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'QUEUE'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0700'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display header (APQI)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'APQI'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0701'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;recalculate dynpro counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'DISP_CNT'.&lt;/P&gt;&lt;P&gt;      PERFORM recalculate_counters.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;leave this nice program&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    WHEN 'BACK' OR 'END'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'RSBDC_ANALYSE_RB' FIELD rb.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if field list or protocol chosen, but no transaction has been&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scanned yet, it's now time to read the first transaction from APQD&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF ( main_okcode = 'TAB_LIST' OR&lt;/P&gt;&lt;P&gt;  main_okcode = 'TAB_PROTO' ) AND&lt;/P&gt;&lt;P&gt;  tcode_index_apqd IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;      tcode_index_apqd = bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "user_command_main INPUT&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy transactions from all_bdc_tcodes to bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_tcodes OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check whether contents are already up to date&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF show_dynpro_cnt = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      IF screen-group1 = 'DCT'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 0.&lt;/P&gt;&lt;P&gt;        screen-active = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      IF screen-name = 'CMD_DISP_CNT'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bdc_tcodes_content = 'A' AND rb-tcodes_all = 'X'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF bdc_tcodes_content = 'E' AND rb-tcodes_error = 'X'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fill bdc_tcodes according to the settings in screen 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_tcodes. REFRESH bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-tcodes_all ='X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;      bdc_tcodes = all_bdc_tcodes. APPEND bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_tcodes_content = 'A'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-tcodes_error = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_tcodes WHERE status = 'E'.&lt;/P&gt;&lt;P&gt;      bdc_tcodes = all_bdc_tcodes. APPEND bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_tcodes_content = 'E'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_tcodes LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  i_tcodes = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_tcodes-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  CLEAR tcode_index_apqd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE bdc_tcodes INDEX 1.&lt;/P&gt;&lt;P&gt;  1st_bdc_tcode_index = bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;  tcode_index = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_tcodes OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy dynpro data from all_bdc_dynpro to bdc_bdc_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_dynpro OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: wa LIKE LINE OF tc_dynpro-cols,&lt;/P&gt;&lt;P&gt;  tline LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tline = tc_dynpro-top_line.&lt;/P&gt;&lt;P&gt;  tc_dynpro-top_line = tline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;hide fields if no detailed field list shall be displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT tc_dynpro-cols INTO wa.&lt;/P&gt;&lt;P&gt;    IF sy-tabix = 3 OR sy-tabix = 4.&lt;/P&gt;&lt;P&gt;      IF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;        CLEAR wa-invisible.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        wa-invisible = 1.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MODIFY tc_dynpro-cols FROM wa.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;is bdc_dynpro_content already correctly filled ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF rb-fieldlist = ' ' AND bdc_dynpro_content = 'S'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-fieldlist = 'X' AND bdc_dynpro_content = 'F'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_dynpro. REFRESH bdc_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-fieldlist = ' '.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_dynpro WHERE NOT program IS INITIAL.&lt;/P&gt;&lt;P&gt;      bdc_dynpro = all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      APPEND bdc_dynpro.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_dynpro_content = 'S'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-fieldlist = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      bdc_dynpro = all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      APPEND bdc_dynpro.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_dynpro_content = 'F'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_dynpro LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_dynpro-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_dynpro-top_line = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_dynpro OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module fill_bdc_protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy messages from bdclm to bdc_protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;according to rb-settings&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE fill_bdc_protocol OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-pro_all = 'X' AND bdc_protocol_content = 'A'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_tcode = 'X' AND bdc_protocol_content = 'T'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_session = 'X' AND bdc_protocol_content = 'S'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR bdc_protocol. REFRESH bdc_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF rb-pro_all = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;      IF rb-log_detail = ' ' AND bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'A'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_tcode = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm WHERE tcnt = tcode_index_apqd.&lt;/P&gt;&lt;P&gt;      IF rb-log_detail = ' ' AND bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;        CONTINUE.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'T'.&lt;/P&gt;&lt;P&gt;  ELSEIF rb-pro_session = 'X'.&lt;/P&gt;&lt;P&gt;    LOOP AT bdclm WHERE tcnt = ' '.&lt;/P&gt;&lt;P&gt;      MOVE-CORRESPONDING bdclm TO bdc_protocol.&lt;/P&gt;&lt;P&gt;      APPEND bdc_protocol.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;    bdc_protocol_content = 'S'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdc_protocol LINES bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_protocol-lines = bdc_lines.&lt;/P&gt;&lt;P&gt;  tc_protocol-top_line = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. "fill_bdc_protocol OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module check_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE check_bdc_protocol OUTPUT.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display lines intensified if they contain e- or a-messages&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF bdc_protocol-mart = 'E'&lt;/P&gt;&lt;P&gt;  OR bdc_protocol-mart = 'A'.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;skip empty lines&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF bdc_protocol-indate IS INITIAL.&lt;/P&gt;&lt;P&gt;    EXIT FROM STEP-LOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "check_bdc_protocol OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module get_cursor_position&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE get_cursor_position INPUT.&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD c_field LINE c_line.&lt;/P&gt;&lt;P&gt;  IF c_line &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_tcodes-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_dynpro-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;      WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;        selected_index = tc_protocol-top_line + c_line - 1.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    selected_index = 0.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "get_cursor_position INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_init&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE d0500_init OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'POPUP'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0500'.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0500_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_fcode&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0500_fcode INPUT.&lt;/P&gt;&lt;P&gt;  LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0500_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0600_init&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;MODULE d0600_init OUTPUT.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'POPUP'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0600'.&lt;/P&gt;&lt;P&gt;  CLEAR d0600_fcode.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdcld LINES i_protocols.&lt;/P&gt;&lt;P&gt;  tc_bdcld-lines = i_protocols.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0600_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module d0500_fcode&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read and process another protocol which was selected on&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;popup dynpro 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0600_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0600_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'POP_CANCEL'.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'POP_OKAY'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read selected protocol&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF tc_select &amp;lt;&amp;gt; selected_protocol.&lt;/P&gt;&lt;P&gt;        CLEAR bdclm. REFRESH bdclm.&lt;/P&gt;&lt;P&gt;        CLEAR bdc_protocol_content.&lt;/P&gt;&lt;P&gt;        PERFORM get_log USING tc_select.&lt;/P&gt;&lt;P&gt;        PERFORM extend_message_texts.&lt;/P&gt;&lt;P&gt;        selected_protocol = tc_select.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scroll in table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. "d0600_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module set_mark&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;set table view marker for the actual selected protocol&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;(dynpro 500)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE set_mark OUTPUT.&lt;/P&gt;&lt;P&gt;  tc_index = tc_bdcld-top_line + tc_bdcld-current_line - 1.&lt;/P&gt;&lt;P&gt;  IF tc_index = selected_protocol.&lt;/P&gt;&lt;P&gt;    tc_mark = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "set_mark OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Module get_mark&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get index of selected protocol on popup 500&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE get_mark INPUT.&lt;/P&gt;&lt;P&gt;  IF tc_mark = 'X'.&lt;/P&gt;&lt;P&gt;    tc_select = tc_bdcld-top_line + tc_bdcld-current_line - 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDMODULE. "get_mark INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: fill_bdc_tcodes&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read all transaction codes from apqd and fill internal table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM fill_all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read APQD blocks 1 for QID&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR all_bdc_tcodes. REFRESH all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd WHERE qid = queue_id AND block = 1&lt;/P&gt;&lt;P&gt;  ORDER BY PRIMARY KEY.&lt;/P&gt;&lt;P&gt;    MOVE apqd-vardata TO bdcth.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-index = apqd-trans.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-tcode = bdcth-tcode.&lt;/P&gt;&lt;P&gt;    all_bdc_tcodes-status = bdcth-state.&lt;/P&gt;&lt;P&gt;    APPEND all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;convert status flag to long text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;calculate transaction counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR apqdcnt.&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;    ADD 1 TO apqdcnt-transcnt.&lt;/P&gt;&lt;P&gt;    CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      WHEN 'D' OR 'G'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'gelöscht'(005).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntd.&lt;/P&gt;&lt;P&gt;      WHEN 'F'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'verarbeitet'(002).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntf.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = 'fehlerhaft'(001).&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcnte.&lt;/P&gt;&lt;P&gt;      WHEN 'B'.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = ' '. "neu&lt;/P&gt;&lt;P&gt;        ADD 1 TO apqdcnt-transcntb.&lt;/P&gt;&lt;P&gt;      WHEN OTHERS.&lt;/P&gt;&lt;P&gt;        all_bdc_tcodes-s_text = ' '.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    MODIFY all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcnto = apqdcnt-transcntb&lt;/P&gt;&lt;P&gt;  + apqdcnt-transcnte.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntd = apqdcnt-transcnt&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcntf&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcnte&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcntb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntp = apqi-puttrans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-transcntx = apqdcnt-transcntp&lt;/P&gt;&lt;P&gt;  - apqdcnt-transcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-msgcnt &amp;lt; 1000.&lt;/P&gt;&lt;P&gt;    PERFORM recalculate_counters.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "fill_all_bdc_tcodes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM scan_transaction&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Read all APQD data for a selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scan_transaction USING tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR it_apqd. REFRESH it_apqd.&lt;/P&gt;&lt;P&gt;  CLEAR all_bdc_dynpro. REFRESH all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  tcode_index_apqd = tcnt. "Display correct index in header screens&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR dynpro_index.&lt;/P&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    IF it_apqd-vardata(1) = 'M'. "it's a message header&lt;/P&gt;&lt;P&gt;      dynpro_index = dynpro_index + 1.&lt;/P&gt;&lt;P&gt;      PERFORM scan_dynpro.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "scan_transaction&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: scan_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Scan APQD data for a single dynpro screen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;and put it into a BDCDATA table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scan_dynpro.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  MOVE it_apqd-vardata TO bdcmh.&lt;/P&gt;&lt;P&gt;  TRANSLATE bdcmh TO UPPER CASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get program name and screen number&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-index = dynpro_index.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-program = bdcmh-prog.&lt;/P&gt;&lt;P&gt;  all_bdc_dynpro-dynpro = bdcmh-dynr.&lt;/P&gt;&lt;P&gt;  APPEND all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get all the fnam/fval pairs&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  MOVE it_apqd-vardata TO sdat.&lt;/P&gt;&lt;P&gt;  SHIFT sdat BY bdcmhlen PLACES.&lt;/P&gt;&lt;P&gt;  wcount = bdcmhlen.&lt;/P&gt;&lt;P&gt;  mfstart = wcount.&lt;/P&gt;&lt;P&gt;  mfart = 'FN'.&lt;/P&gt;&lt;P&gt;  WHILE wcount LE it_apqd-varlen.&lt;/P&gt;&lt;P&gt;    IF sdat(1) = bdcmh-sepc.&lt;/P&gt;&lt;P&gt;      mfende = wcount.&lt;/P&gt;&lt;P&gt;      PERFORM move_tf.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    SHIFT sdat.&lt;/P&gt;&lt;P&gt;    wcount = wcount + 1.&lt;/P&gt;&lt;P&gt;  ENDWHILE.&lt;/P&gt;&lt;P&gt;ENDFORM. "scan_dynpro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Parse the apqd-vardata field for FNAM/FVAL pairs&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: move_tf&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;fills TF-FNAME and TF-FARG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM move_tf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  mflen = mfende - mfstart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE mfart.&lt;/P&gt;&lt;P&gt;    WHEN 'FN'.&lt;/P&gt;&lt;P&gt;      CLEAR: tf-fname, udat.&lt;/P&gt;&lt;P&gt;      tf-fstart = mfstart.&lt;/P&gt;&lt;P&gt;      MOVE it_apqd-vardata TO udat.&lt;/P&gt;&lt;P&gt;      SHIFT udat BY mfstart PLACES.&lt;/P&gt;&lt;P&gt;      WRITE udat TO tf-fname+0(mflen).&lt;/P&gt;&lt;P&gt;      TRANSLATE tf-fname TO UPPER CASE.&lt;/P&gt;&lt;P&gt;      mfstart = mfende + 1.&lt;/P&gt;&lt;P&gt;      mfende = 0.&lt;/P&gt;&lt;P&gt;      MOVE 'FA' TO mfart.&lt;/P&gt;&lt;P&gt;    WHEN 'FA'.&lt;/P&gt;&lt;P&gt;      CLEAR: tf-farg, udat.&lt;/P&gt;&lt;P&gt;      tf-fende = mfende.&lt;/P&gt;&lt;P&gt;      MOVE it_apqd-vardata TO udat.&lt;/P&gt;&lt;P&gt;      SHIFT udat BY mfstart PLACES.&lt;/P&gt;&lt;P&gt;      WRITE udat TO tf-farg+0(mflen).&lt;/P&gt;&lt;P&gt;      APPEND tf.&lt;/P&gt;&lt;P&gt;      tf-stat = space.&lt;/P&gt;&lt;P&gt;      mfstart = mfende + 1.&lt;/P&gt;&lt;P&gt;      mfende = 0.&lt;/P&gt;&lt;P&gt;      MOVE 'FN' TO mfart.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;copy to bdcdata table if fname/fval is not empty&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK NOT tf-fname IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CHECK NOT TF-FARG IS INITIAL.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CLEAR all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-index = dynpro_index.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-fnam = tf-fname.&lt;/P&gt;&lt;P&gt;      all_bdc_dynpro-fval = tf-farg.&lt;/P&gt;&lt;P&gt;      APPEND all_bdc_dynpro.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM. "move_tf&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_logfiles_for_qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;paramname(11) VALUE 'bdc/logfile',&lt;/P&gt;&lt;P&gt;logname(80),&lt;/P&gt;&lt;P&gt;logname1(80),&lt;/P&gt;&lt;P&gt;old_logfile(06) VALUE 'bdclog',&lt;/P&gt;&lt;P&gt;new_logfile(04) VALUE 'BI* ',&lt;/P&gt;&lt;P&gt;shiftlen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;protflen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;protfoff TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;rlen TYPE i VALUE 0,&lt;/P&gt;&lt;P&gt;bdcld# TYPE i, one TYPE i, ec TYPE i, return TYPE i,&lt;/P&gt;&lt;P&gt;protcnt TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF prot_list OCCURS 0.&lt;/P&gt;&lt;P&gt;INCLUDE rstr0112.&lt;/P&gt;&lt;P&gt;DATA: seen(1), to_be_deleted(1), has_changed(1), local_host(24),&lt;/P&gt;&lt;P&gt;END OF prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF file.&lt;/P&gt;&lt;P&gt;INCLUDE rstr0112.&lt;/P&gt;&lt;P&gt;DATA END OF file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;BEGIN OF bdclda OCCURS 0.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE bdcld.&lt;/P&gt;&lt;P&gt;DATA END OF bdclda .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;digits(10) TYPE c VALUE '0123456789',&lt;/P&gt;&lt;P&gt;mtext(124) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;mtext1(124) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;mtext2(273) TYPE c, "Messagetext&lt;/P&gt;&lt;P&gt;do_condense TYPE c,&lt;/P&gt;&lt;P&gt;mtvaroff TYPE i,&lt;/P&gt;&lt;P&gt;showtyp(05) TYPE c, "showtyp&lt;/P&gt;&lt;P&gt;lmapn(12) TYPE c, "Hilfsfeld log-mapn&lt;/P&gt;&lt;P&gt;date1 TYPE d,&lt;/P&gt;&lt;P&gt;linct0 LIKE sy-linct,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parcnt TYPE i,&lt;/P&gt;&lt;P&gt;sp_len TYPE i,&lt;/P&gt;&lt;P&gt;charcnt TYPE i,&lt;/P&gt;&lt;P&gt;wcnt TYPE i,&lt;/P&gt;&lt;P&gt;mparcnt TYPE i,&lt;/P&gt;&lt;P&gt;qfound(04) TYPE n,&lt;/P&gt;&lt;P&gt;x(1) VALUE 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Aufbereitung Messagetext&lt;/P&gt;&lt;P&gt;BEGIN OF mt,&lt;/P&gt;&lt;P&gt;off(02) TYPE n,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(80),&lt;/P&gt;&lt;P&gt;END OF mt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Aufbereitung Messagetext&lt;/P&gt;&lt;P&gt;BEGIN OF mttab OCCURS 4,&lt;/P&gt;&lt;P&gt;off(02) TYPE n,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(80),&lt;/P&gt;&lt;P&gt;END OF mttab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "Hilfsfelder&lt;/P&gt;&lt;P&gt;BEGIN OF old,&lt;/P&gt;&lt;P&gt;tcnt LIKE bdclm-tcnt,&lt;/P&gt;&lt;P&gt;mcnt LIKE bdclm-mcnt,&lt;/P&gt;&lt;P&gt;END OF old.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: "ParameterAufbereitung&lt;/P&gt;&lt;P&gt;BEGIN OF par,&lt;/P&gt;&lt;P&gt;len(02) TYPE n,&lt;/P&gt;&lt;P&gt;text(254),&lt;/P&gt;&lt;P&gt;END OF par.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form get_logfiles_for_qid&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;find all log files for the session in analysis,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;either in common log or in TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_logfiles_for_qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logs from TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_logfiles_from_temse.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now bdcld contains the log files for the given qid&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SORT bdcld BY edate DESCENDING etime DESCENDING.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE bdcld LINES selected_protocol.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_logfiles_for_qid&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: log_dir&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM log_dir.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR bdclda. REFRESH bdclda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL 'ReadLogDirA' ID 'LOGN' FIELD logname&lt;/P&gt;&lt;P&gt;  ID 'DTAB' FIELD bdclda-&lt;STRONG&gt;sys&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;  ID 'AINF' FIELD one&lt;/P&gt;&lt;P&gt;  ID 'ECNT' FIELD ec.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0 OR ec = 0.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdclda WHERE lmand = sy-mandt AND quid = queue_id.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING bdclda TO bdcld.&lt;/P&gt;&lt;P&gt;    MOVE logname TO bdcld-logname.&lt;/P&gt;&lt;P&gt;    MOVE prot_list-local_host TO bdcld-local_host.&lt;/P&gt;&lt;P&gt;    APPEND bdcld.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. " log_dir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: list_protocol_files&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Suche nach allen aktiven Protokolldateien -&amp;gt; Tabelle prot_list&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM list_protocol_files.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: logname1, prot_list, protcnt.&lt;/P&gt;&lt;P&gt;  REFRESH: prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  protflen = STRLEN( logname ).&lt;/P&gt;&lt;P&gt;  MOVE logname TO logname1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WHILE shiftlen LE protflen.&lt;/P&gt;&lt;P&gt;    IF logname1 CP '&lt;STRONG&gt;#B#I&lt;/STRONG&gt;'. "suchen nach muster &lt;STRONG&gt;#B#I&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;      IF sy-fdpos EQ 0. "nur großbuchstaben&lt;/P&gt;&lt;P&gt;        shiftlen = 2.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        shiftlen = sy-fdpos.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      protfoff = protfoff + shiftlen.&lt;/P&gt;&lt;P&gt;      SHIFT logname1 BY shiftlen PLACES.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      shiftlen = protflen + 1.&lt;/P&gt;&lt;P&gt;      protfoff = protfoff - 2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDWHILE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF protfoff LE 0.&lt;/P&gt;&lt;P&gt;    protfoff = 0.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  rlen = 80 - protfoff.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  WRITE space TO logname+protfoff(rlen).&lt;/P&gt;&lt;P&gt;  WRITE new_logfile TO logname+protfoff(4).&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  PERFORM search_prot USING logname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " FILL_PROT_LIST&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : search_prot *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM search_prot USING prot_files.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: errcnt(2) TYPE p VALUE 0.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CALL 'C_DIR_READ_START' ID 'FILE' FIELD prot_files&lt;/P&gt;&lt;P&gt;  ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;  ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE i398(00)&lt;/P&gt;&lt;P&gt;    WITH sy-subrc 'C_DIR_READ_START' ' ' prot_files.&lt;/P&gt;&lt;P&gt;    MESSAGE i398(00)&lt;/P&gt;&lt;P&gt;    WITH sy-subrc 'C_DIR_READ_START...'&lt;/P&gt;&lt;P&gt;    file-errno file-errmsg.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO. "aufbau der internen tabelle fuer alle&lt;/P&gt;&lt;P&gt;    "BI-Protokolle&lt;/P&gt;&lt;P&gt;    CLEAR file.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL 'C_DIR_READ_NEXT'&lt;/P&gt;&lt;P&gt;    ID 'TYPE' FIELD file-type&lt;/P&gt;&lt;P&gt;    ID 'NAME' FIELD file-name&lt;/P&gt;&lt;P&gt;    ID 'LEN' FIELD file-len&lt;/P&gt;&lt;P&gt;    ID 'OWNER' FIELD file-owner&lt;/P&gt;&lt;P&gt;    ID 'MTIME' FIELD file-mtime&lt;/P&gt;&lt;P&gt;    ID 'MODE' FIELD file-mode&lt;/P&gt;&lt;P&gt;    ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;    ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE sy-subrc TO file-subrc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 0.&lt;/P&gt;&lt;P&gt;        CASE file-type(1).&lt;/P&gt;&lt;P&gt;          WHEN 'F'. " normal file.&lt;/P&gt;&lt;P&gt;            MOVE 1 TO file-useable.&lt;/P&gt;&lt;P&gt;          WHEN 'f'. " normal file.&lt;/P&gt;&lt;P&gt;            MOVE 1 TO file-useable.&lt;/P&gt;&lt;P&gt;          WHEN OTHERS. " Directory, device, fifo, socket,...&lt;/P&gt;&lt;P&gt;            MOVE 0 TO file-useable.&lt;/P&gt;&lt;P&gt;        ENDCASE.&lt;/P&gt;&lt;P&gt;        IF file-len = 0.&lt;/P&gt;&lt;P&gt;          MOVE 0 TO file-useable.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      WHEN OTHERS. " SY-SUBRC &amp;gt;= 2&lt;/P&gt;&lt;P&gt;        ADD 1 TO errcnt.&lt;/P&gt;&lt;P&gt;        IF errcnt &amp;gt; 10.&lt;/P&gt;&lt;P&gt;          EXIT.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 5.&lt;/P&gt;&lt;P&gt;          MOVE: '???' TO file-type,&lt;/P&gt;&lt;P&gt;          '???' TO file-owner,&lt;/P&gt;&lt;P&gt;          '???' TO file-mode.&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        file-useable = 0.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING file TO prot_list.&lt;/P&gt;&lt;P&gt;    SHIFT file-name BY protfoff PLACES.&lt;/P&gt;&lt;P&gt;    prot_list-local_host = file-name.&lt;/P&gt;&lt;P&gt;    protcnt = protcnt + 1.&lt;/P&gt;&lt;P&gt;    APPEND prot_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL 'C_DIR_READ_FINISH'&lt;/P&gt;&lt;P&gt;  ID 'ERRNO' FIELD file-errno&lt;/P&gt;&lt;P&gt;  ID 'ERRMSG' FIELD file-errmsg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WRITE: / 'C_DIR_READ_FINISH'(999), 'SUBRC', SY-SUBRC.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " search_prot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_log&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_log USING log_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: BEGIN OF logtable OCCURS 50, " plain log information in TemSe&lt;/P&gt;&lt;P&gt;  enterdate LIKE btctle-enterdate,&lt;/P&gt;&lt;P&gt;  entertime LIKE btctle-entertime,&lt;/P&gt;&lt;P&gt;  logmessage(400) TYPE c,&lt;/P&gt;&lt;P&gt;  END OF logtable.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  external_date(10),&lt;/P&gt;&lt;P&gt;  internal_date TYPE d.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdcld.&lt;/P&gt;&lt;P&gt;    logname = bdcld-logname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF newprot = 'OFF'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logfile contents from common log file&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CALL 'ReadLogPartitionA' ID 'LOGN' FIELD logname&lt;/P&gt;&lt;P&gt;      ID 'ETAB' FIELD bdclm-&lt;STRONG&gt;sys&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;      ID 'PART' FIELD bdcld&lt;/P&gt;&lt;P&gt;      ID 'ECNT' FIELD ec.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE s325(00). ENDIF.&lt;/P&gt;&lt;P&gt;      IF ec = 0. MESSAGE s324(00). ENDIF.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get logfile contents from TemSe&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM read_bdc_log_plain&lt;/P&gt;&lt;P&gt;      TABLES logtable&lt;/P&gt;&lt;P&gt;      USING bdcld-temseid bdcld-lmand.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0. " Fehler beim Lesen&lt;/P&gt;&lt;P&gt;        MESSAGE s004(ts).&lt;/P&gt;&lt;P&gt;        EXIT.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      CLEAR bdclm[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LOOP AT logtable.&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Es wird geprüft, ob von TEMSE das Datum korrekt geliefert wurde&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;wenn nicht wird einfach der Satz ignoriert und nicht gelesen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;        CALL 'DATE_CONV_INT_TO_EXT'&lt;/P&gt;&lt;P&gt;        ID 'DATINT' FIELD logtable-enterdate&lt;/P&gt;&lt;P&gt;        ID 'DATEXT' FIELD external_date.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL 'DATE_CONV_EXT_TO_INT'&lt;/P&gt;&lt;P&gt;        ID 'DATEXT' FIELD external_date&lt;/P&gt;&lt;P&gt;        ID 'DATINT' FIELD internal_date.&lt;/P&gt;&lt;P&gt;        IF sy-subrc NE 0. " Datum ist nicht gültig&lt;/P&gt;&lt;P&gt;          CONTINUE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CLEAR bdclm.&lt;/P&gt;&lt;P&gt;        bdclm-indate = logtable-enterdate.&lt;/P&gt;&lt;P&gt;        bdclm-intime = logtable-entertime.&lt;/P&gt;&lt;P&gt;        bdclm+14(352) = logtable-logmessage.&lt;/P&gt;&lt;P&gt;        IF bdclm-mcnt &amp;gt; 0.&lt;/P&gt;&lt;P&gt;          bdclm-mcnt = bdclm-mcnt - 1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF bdclm-mid EQ '00'.&lt;/P&gt;&lt;P&gt;          IF ( bdclm-mnr EQ '162' )&lt;/P&gt;&lt;P&gt;          OR ( bdclm-mnr EQ '368' ).&lt;/P&gt;&lt;P&gt;            bdclm-isdetail = 'X'.&lt;/P&gt;&lt;P&gt;          ENDIF.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        APPEND bdclm.&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;      PERFORM extend_message_texts. " extended texts -&amp;gt; bdclm&lt;/P&gt;&lt;P&gt;      PERFORM download.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_log&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: get_logfiles_from_temse&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_logfiles_from_temse.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;are there any logs in the TemSe for this QID ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR logtab_temse[].&lt;/P&gt;&lt;P&gt;  CLEAR bdcld[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * FROM apql INTO TABLE logtab_temse&lt;/P&gt;&lt;P&gt;  WHERE qid = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;some logs were found: now put this info into table bdcld.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DATA: wa_log LIKE LINE OF logtab_temse,&lt;/P&gt;&lt;P&gt;  wa_ld LIKE LINE OF bdcld.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT logtab_temse INTO wa_log.&lt;/P&gt;&lt;P&gt;    CLEAR wa_ld.&lt;/P&gt;&lt;P&gt;    wa_ld-temseid = wa_log-temseid.&lt;/P&gt;&lt;P&gt;    wa_ld-lmand = wa_log-mandant.&lt;/P&gt;&lt;P&gt;    wa_ld-edate = wa_log-credate.&lt;/P&gt;&lt;P&gt;    wa_ld-etime = wa_log-cretime.&lt;/P&gt;&lt;P&gt;    wa_ld-luser = wa_log-creator.&lt;/P&gt;&lt;P&gt;    wa_ld-grpn = wa_log-groupid.&lt;/P&gt;&lt;P&gt;    wa_ld-quid = wa_log-qid.&lt;/P&gt;&lt;P&gt;    wa_ld-local_host = wa_log-destsys(8).&lt;/P&gt;&lt;P&gt;    APPEND wa_ld TO bdcld.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "get_logfiles_from_temse&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: extend_message_texts&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM extend_message_texts.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;    lm = bdclm. save_mpar = bdclm-mpar.&lt;/P&gt;&lt;P&gt;    PERFORM get_text.&lt;/P&gt;&lt;P&gt;    bdclm-longtext = mtext.&lt;/P&gt;&lt;P&gt;    bdclm-mpar = save_mpar.&lt;/P&gt;&lt;P&gt;    MODIFY bdclm.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "extend_message_texts&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : get_text *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM get_text.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="3" type="ul"&gt;&lt;P&gt;Aufbereiten des Messagetextes&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: shiftln TYPE i,&lt;/P&gt;&lt;P&gt;  vartcnt TYPE i,&lt;/P&gt;&lt;P&gt;  fdpos LIKE sy-fdpos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF bdclm-mparcnt CN digits. "Korrupter Datensatz:&lt;/P&gt;&lt;P&gt;    bdclm-mparcnt = 0. "z.B. Hexnullen&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE * FROM t100&lt;/P&gt;&lt;P&gt;  WHERE sprsl = sy-langu&lt;/P&gt;&lt;P&gt;  AND arbgb = bdclm-mid&lt;/P&gt;&lt;P&gt;  AND msgnr = bdclm-mnr.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;    CLEAR: mtext,&lt;/P&gt;&lt;P&gt;    parcnt,&lt;/P&gt;&lt;P&gt;    mparcnt,&lt;/P&gt;&lt;P&gt;    charcnt,&lt;/P&gt;&lt;P&gt;    wcnt,&lt;/P&gt;&lt;P&gt;    mt,&lt;/P&gt;&lt;P&gt;    sp_len,&lt;/P&gt;&lt;P&gt;    sy-fdpos.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    MOVE bdclm-mparcnt TO mparcnt.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF t100-text CA '$&amp;amp;'. "Kennung fuer parameter:&lt;/P&gt;&lt;P&gt;      MOVE t100-text TO mtext1. " alt '$' --- neu '&amp;amp;'&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      MOVE t100-text TO mtext.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;variable teile aus batch-input protokoll in mttab bringen.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    REFRESH mttab.&lt;/P&gt;&lt;P&gt;    CLEAR shiftln.&lt;/P&gt;&lt;P&gt;    DO mparcnt TIMES.&lt;/P&gt;&lt;P&gt;      CLEAR: par, mttab.&lt;/P&gt;&lt;P&gt;      MOVE bdclm-mpar TO par.&lt;/P&gt;&lt;P&gt;      IF par-len CN digits OR par-len EQ 0. "convert_no_number&lt;/P&gt;&lt;P&gt;        par-len = 1. "entschärfen&lt;/P&gt;&lt;P&gt;        par-text = ' '.&lt;/P&gt;&lt;P&gt;        shiftln = 2.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        shiftln = par-len + 2.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;      WRITE par-text TO mttab-text(par-len).&lt;/P&gt;&lt;P&gt;      MOVE par-len TO mttab-len.&lt;/P&gt;&lt;P&gt;      MOVE mparcnt TO mttab-off.&lt;/P&gt;&lt;P&gt;      APPEND mttab.&lt;/P&gt;&lt;P&gt;      SHIFT bdclm-mpar BY shiftln PLACES.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    mtext2 = mtext1.&lt;/P&gt;&lt;P&gt;    IF bdclm-mid EQ '00' AND " sonderbehandlung s00368&lt;/P&gt;&lt;P&gt;    bdclm-mnr EQ '368' AND&lt;/P&gt;&lt;P&gt;    bdclm-mart EQ 'S'.&lt;/P&gt;&lt;P&gt;      CLEAR mtext2.&lt;/P&gt;&lt;P&gt;      CLEAR mttab.&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX 1.&lt;/P&gt;&lt;P&gt;      WRITE mttab-text TO mtext2+0(mttab-len).&lt;/P&gt;&lt;P&gt;      CLEAR mttab.&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX 2.&lt;/P&gt;&lt;P&gt;      WRITE mttab-text TO mtext2+35(mttab-len).&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    do_condense = x.&lt;/P&gt;&lt;P&gt;    CLEAR: mt, vartcnt, mtvaroff.&lt;/P&gt;&lt;P&gt;    WHILE vartcnt LE 3.&lt;/P&gt;&lt;P&gt;      vartcnt = vartcnt + 1.&lt;/P&gt;&lt;P&gt;      IF mtext1 CA '$&amp;amp;'.&lt;/P&gt;&lt;P&gt;        parcnt = parcnt + 1.&lt;/P&gt;&lt;P&gt;        IF sy-fdpos GT 0.&lt;/P&gt;&lt;P&gt;          fdpos = sy-fdpos - 1. " neu sy-fdpos -1&lt;/P&gt;&lt;P&gt;        ELSE.&lt;/P&gt;&lt;P&gt;          fdpos = sy-fdpos.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        SHIFT mtext1 BY sy-fdpos PLACES.&lt;/P&gt;&lt;P&gt;        IF mtext1(1) EQ '&amp;amp;'.&lt;/P&gt;&lt;P&gt;          SHIFT mtext1 BY 1 PLACES.&lt;/P&gt;&lt;P&gt;          CASE mtext1(1).&lt;/P&gt;&lt;P&gt;            WHEN ' '. "'&amp;amp; '&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp; ' parcnt fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '$'. "'&amp;amp;&amp;amp;'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;&amp;amp;' 0 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '1'.                                       "'&amp;amp;1'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;1' 1 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '2'.                                       "'&amp;amp;2'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;2' 2 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '3'.                                       "'&amp;amp;3'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;3' 3 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '4'.                                       "'&amp;amp;4'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;4' 4 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN OTHERS. "'&amp;amp;'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '&amp;amp;&amp;lt;' parcnt fdpos.&lt;/P&gt;&lt;P&gt;          ENDCASE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;        IF mtext1(1) EQ '$'.&lt;/P&gt;&lt;P&gt;          SHIFT mtext1 BY 1 PLACES.&lt;/P&gt;&lt;P&gt;          CASE mtext1(1).&lt;/P&gt;&lt;P&gt;            WHEN ' '. "'$ '&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$ ' parcnt fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '$'. "'$$'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$$' 0 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '1'.                                       "'$1'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$1' 1 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '2'.                                       "'$2'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$2' 2 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '3'.                                       "'$3'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$3' 3 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN '4'.                                       "'$4'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$4' 4 fdpos.&lt;/P&gt;&lt;P&gt;            WHEN OTHERS. "'$'&lt;/P&gt;&lt;P&gt;              PERFORM replace_var USING '$&amp;lt;' parcnt fdpos.&lt;/P&gt;&lt;P&gt;          ENDCASE.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDWHILE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF mtext2 CA '%%_D_%%'.&lt;/P&gt;&lt;P&gt;      REPLACE '%%_D_%%' WITH '$' INTO mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF mtext2 CA '%%_A_%%'.&lt;/P&gt;&lt;P&gt;      REPLACE '%%_A_%%' WITH '&amp;amp;' INTO mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    IF do_condense EQ space.&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      CONDENSE mtext2 .&lt;/P&gt;&lt;P&gt;      mtext = mtext2.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    mtext = '???????????????????????????????????????????????????'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;ENDFORM.                                                    " get_text1&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : replace_var *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;*&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM replace_var USING vark vari varpos.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ersetzen der variablen teile einer fehlermeldung&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA: var(02),&lt;/P&gt;&lt;P&gt;  var1,&lt;/P&gt;&lt;P&gt;  moff TYPE i.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR: mttab , moff.&lt;/P&gt;&lt;P&gt;  var = vark.&lt;/P&gt;&lt;P&gt;  SHIFT var BY 1 PLACES.&lt;/P&gt;&lt;P&gt;  CASE var.&lt;/P&gt;&lt;P&gt;    WHEN ' '. "'&amp;amp; '&lt;/P&gt;&lt;P&gt;      READ TABLE mttab INDEX vari.&lt;/P&gt;&lt;P&gt;      IF sy-subrc EQ 0.&lt;/P&gt;&lt;P&gt;        moff = varpos + mtvaroff.&lt;/P&gt;&lt;P&gt;        ASSIGN mtext2+moff(*) TO . "neu&lt;/P&gt;&lt;P&gt;          mtvaroff = 7. "neu&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  do_condense = space.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;ENDFORM. "replace_var&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: set_new_display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM set_new_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in tcodes list: choose new transaction:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      READ TABLE bdc_tcodes INDEX selected_index.&lt;/P&gt;&lt;P&gt;      CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM scan_transaction USING bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;      CLEAR: bdc_dynpro_content, bdc_protocol_content.&lt;/P&gt;&lt;P&gt;      tcode_index = selected_index.&lt;/P&gt;&lt;P&gt;      tcode_status = bdc_tcodes-s_text.&lt;/P&gt;&lt;P&gt;      tcode = bdc_tcodes-tcode.&lt;/P&gt;&lt;P&gt;      IF previous_tab IS INITIAL.&lt;/P&gt;&lt;P&gt;        tab_dynpro-activetab = 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        tab_dynpro-activetab = previous_tab.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in screens list: simulate screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;simulate screen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM simulate_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;F2 in protocol list: show message long text:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      CHECK selected_index &amp;gt; 0.&lt;/P&gt;&lt;P&gt;      READ TABLE bdc_protocol INDEX selected_index.&lt;/P&gt;&lt;P&gt;      CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      PERFORM show_ltext.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "set_new_display&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM : show_ltext&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;display long text for a log message&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM show_ltext.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  docnt TYPE i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  BEGIN OF my,&lt;/P&gt;&lt;P&gt;  msgv1 LIKE sy-msgv1,&lt;/P&gt;&lt;P&gt;  msgv2 LIKE sy-msgv2,&lt;/P&gt;&lt;P&gt;  msgv3 LIKE sy-msgv3,&lt;/P&gt;&lt;P&gt;  msgv4 LIKE sy-msgv4,&lt;/P&gt;&lt;P&gt;  END OF my.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  msg_text LIKE shkontext-meldung,&lt;/P&gt;&lt;P&gt;  msg_arbgb LIKE shkontext-meld_id,&lt;/P&gt;&lt;P&gt;  msg_nr LIKE shkontext-meld_nr,&lt;/P&gt;&lt;P&gt;  msg_title LIKE shkontext-titel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;RABAX- or T100 message ?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  IF bdc_protocol-mid EQ '00' AND "Rabax&lt;/P&gt;&lt;P&gt;  bdc_protocol-mnr EQ '341'.&lt;/P&gt;&lt;P&gt;    CLEAR: par.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;extract Rabax-ID and key fields from message string&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    par = bdc_protocol-mpar.&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. EXIT. ENDIF. "corrupt string"&lt;/P&gt;&lt;P&gt;    my-msgv1 = par-text(par-len).&lt;/P&gt;&lt;P&gt;    SHIFT par LEFT BY par-len PLACES.&lt;/P&gt;&lt;P&gt;    SHIFT par LEFT BY 2 PLACES.&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. EXIT. ENDIF. "corrupt string"&lt;/P&gt;&lt;P&gt;    snap = par-text(par-len).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Rabax display&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    CALL DIALOG 'RS_RUN_TIME_ERROR'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        snap-mandt&lt;/P&gt;&lt;P&gt;        snap-datum&lt;/P&gt;&lt;P&gt;        snap-uzeit&lt;/P&gt;&lt;P&gt;        snap-ahost&lt;/P&gt;&lt;P&gt;        snap-uname&lt;/P&gt;&lt;P&gt;        snap-modno.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;no RABAX&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  docnt = 0.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR: my.&lt;/P&gt;&lt;P&gt;  IF bdc_protocol-mparcnt CN digits. "Korrupter Datensatz:&lt;/P&gt;&lt;P&gt;    bdc_protocol-mparcnt = 0. "z.B. Hexnullen&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO bdc_protocol-mparcnt TIMES.&lt;/P&gt;&lt;P&gt;    IF bdc_protocol-mpar(1) EQ space.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    docnt = docnt + 1.&lt;/P&gt;&lt;P&gt;    CLEAR par.&lt;/P&gt;&lt;P&gt;    MOVE bdc_protocol-mpar TO par.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    IF par-len CN digits. "convert_no_number&lt;/P&gt;&lt;P&gt;      par-len = 1. "entschärfen&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;    CASE docnt.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv1(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 2.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv2(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 3.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv3(par-len).&lt;/P&gt;&lt;P&gt;      WHEN 4.&lt;/P&gt;&lt;P&gt;        WRITE par-text TO my-msgv4(par-len).&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    par-len = par-len + 2.&lt;/P&gt;&lt;P&gt;    SHIFT bdc_protocol-mpar BY par-len PLACES.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  msg_arbgb = bdc_protocol-mid.&lt;/P&gt;&lt;P&gt;  msg_nr = bdc_protocol-mnr.&lt;/P&gt;&lt;P&gt;  msg_text = mtext.&lt;/P&gt;&lt;P&gt;  msg_title = sy-title.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'HELPSCREEN_NA_CREATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      meldung = msg_text&lt;/P&gt;&lt;P&gt;      meld_id = msg_arbgb&lt;/P&gt;&lt;P&gt;      meld_nr = msg_nr&lt;/P&gt;&lt;P&gt;      msgv1   = my-msgv1&lt;/P&gt;&lt;P&gt;      msgv2   = my-msgv2&lt;/P&gt;&lt;P&gt;      msgv3   = my-msgv3&lt;/P&gt;&lt;P&gt;      msgv4   = my-msgv4&lt;/P&gt;&lt;P&gt;      titel   = msg_title.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " show_ltext.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM: simulate_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;use function module CAT_SIMULATE_DYNPRO to simulate a dynpro&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;with contents according to APQD data of session&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM simulate_dynpro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  cat_okcode LIKE sy-ucomm,&lt;/P&gt;&lt;P&gt;  cat_params LIKE catp OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;  on_subscreen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR cat_bdcdata. REFRESH cat_bdcdata.&lt;/P&gt;&lt;P&gt;  READ TABLE bdc_dynpro INDEX selected_index.&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_dynpro WHERE index = bdc_dynpro-index.&lt;/P&gt;&lt;P&gt;    MOVE-CORRESPONDING all_bdc_dynpro TO cat_bdcdata.&lt;/P&gt;&lt;P&gt;    APPEND cat_bdcdata.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;  READ TABLE cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;  cat_bdcdata-dynbegin = 'X'. MODIFY cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now we need some extra work to generate the correct input data&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;format for FUNCTION 'CAT_SIMULATE_DYNPRO' for subscreen fields.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR on_subscreen.&lt;/P&gt;&lt;P&gt;  LOOP AT cat_bdcdata.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check if there is a new subscreen&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF cat_bdcdata-fnam = 'BDC_SUBSCR'.&lt;/P&gt;&lt;P&gt;      MOVE cat_bdcdata-fval TO bdc_subscreen.&lt;/P&gt;&lt;P&gt;      CLEAR cat_bdcdata-fval.&lt;/P&gt;&lt;P&gt;      CONCATENATE bdc_subscreen-program&lt;/P&gt;&lt;P&gt;      bdc_subscreen-dynpro&lt;/P&gt;&lt;P&gt;      bdc_subscreen-subscr&lt;/P&gt;&lt;P&gt;      INTO cat_bdcdata-fval SEPARATED BY ' '.&lt;/P&gt;&lt;P&gt;      MODIFY cat_bdcdata.&lt;/P&gt;&lt;P&gt;      on_subscreen = 'X'.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE cat_bdcdata INDEX 1.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'CSIM'.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR '0300' WITH cat_bdcdata-program cat_bdcdata-dynpro.&lt;/P&gt;&lt;P&gt;  MESSAGE s223(tt).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CAT_SIMULATE_DYNPRO'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      mpool            = cat_bdcdata-program&lt;/P&gt;&lt;P&gt;      dynnr            = cat_bdcdata-dynpro&lt;/P&gt;&lt;P&gt;      display_only     = 'X'&lt;/P&gt;&lt;P&gt;      own_status_title = 'X'&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      fielddata        = cat_bdcdata&lt;/P&gt;&lt;P&gt;      paramlist        = cat_params&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      no_dynpro        = 1&lt;/P&gt;&lt;P&gt;      dynpro_not_found = 2&lt;/P&gt;&lt;P&gt;      gen_error        = 3&lt;/P&gt;&lt;P&gt;      enq_error        = 4&lt;/P&gt;&lt;P&gt;      subscr_error     = 5&lt;/P&gt;&lt;P&gt;      OTHERS           = 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE sy-subrc.&lt;/P&gt;&lt;P&gt;    WHEN 1. MESSAGE s221(tt).&lt;/P&gt;&lt;P&gt;    WHEN 2.&lt;/P&gt;&lt;P&gt;      MESSAGE s219(tt)&lt;/P&gt;&lt;P&gt;      WITH cat_bdcdata-program cat_bdcdata-dynpro.&lt;/P&gt;&lt;P&gt;    WHEN 3. MESSAGE s236(tt) WITH ' ' ' '.&lt;/P&gt;&lt;P&gt;    WHEN 4. MESSAGE s215(tt).&lt;/P&gt;&lt;P&gt;    WHEN 5. MESSAGE s238(tt) WITH ' ' ' '.&lt;/P&gt;&lt;P&gt;    WHEN 6. MESSAGE s258(00).&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "simulate_dynpro&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Form: scrolling&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;scrolling in table controls according to SAP style guide&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM scrolling.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  top_line LIKE sy-index,&lt;/P&gt;&lt;P&gt;  last_line LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      top_line = tc_tcodes-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_tcodes LINES last_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      top_line = tc_dynpro-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_dynpro LINES last_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      top_line = tc_protocol-top_line.&lt;/P&gt;&lt;P&gt;      DESCRIBE TABLE bdc_protocol LINES last_line.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SCROLLING_IN_TABLE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      entry_act             = top_line&lt;/P&gt;&lt;P&gt;      entry_from            = 1&lt;/P&gt;&lt;P&gt;      entry_to              = last_line&lt;/P&gt;&lt;P&gt;      ok_code               = main_okcode&lt;/P&gt;&lt;P&gt;      last_page_full        = ' '&lt;/P&gt;&lt;P&gt;      overlapping           = ' '&lt;/P&gt;&lt;P&gt;      loops                 = loopc&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      entries_sum           = entries&lt;/P&gt;&lt;P&gt;      entry_new             = new_line&lt;/P&gt;&lt;P&gt;      pages_sum             = total_pages&lt;/P&gt;&lt;P&gt;      page_new              = new_page&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      no_entry_or_page_act  = 01&lt;/P&gt;&lt;P&gt;      no_entry_to           = 02&lt;/P&gt;&lt;P&gt;      no_ok_code_or_page_go = 03.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE tab_dynpro-activetab.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_TCODES'.&lt;/P&gt;&lt;P&gt;      tc_tcodes-top_line = new_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_LIST'.&lt;/P&gt;&lt;P&gt;      tc_dynpro-top_line = new_line.&lt;/P&gt;&lt;P&gt;    WHEN 'TAB_PROTO'.&lt;/P&gt;&lt;P&gt;      tc_protocol-top_line = new_line.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "scrolling&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR d0700_fcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET TITLEBAR 'QUEUE_DUMP' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'PF_QUEUE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF q-tcode_index IS INITIAL.&lt;/P&gt;&lt;P&gt;    IF NOT tcode_index_apqd IS INITIAL.&lt;/P&gt;&lt;P&gt;      q-tcode_index = tcode_index_apqd.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      READ TABLE all_bdc_tcodes INTO q-wa INDEX 1.&lt;/P&gt;&lt;P&gt;      q-tcode_index = q-wa-index.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check for unicode; how many byte's a character?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DESCRIBE FIELD q-c LENGTH q-uc_bytes IN BYTE MODE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;read all blocks (dynpros) of the currently selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = q-tcode_index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_fcode INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0700_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;      CLEAR q-tcode_index.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'END'.&lt;/P&gt;&lt;P&gt;      CLEAR q-tcode_index.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN 'TOGGLE'.&lt;/P&gt;&lt;P&gt;      IF q-show_hex IS INITIAL.&lt;/P&gt;&lt;P&gt;        q-show_hex = 'X'.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        CLEAR q-show_hex.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'APQI'.&lt;/P&gt;&lt;P&gt;      CALL SCREEN '0701'.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "nop&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " ok_700 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module exit_700 INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_exit INPUT.&lt;/P&gt;&lt;P&gt;  LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;ENDMODULE. " exit_700 INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module set_status_icon OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE set_status_icon OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: icon_name(4),&lt;/P&gt;&lt;P&gt;  icon_info(32).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;    WHEN 'F'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_status_ok.&lt;/P&gt;&lt;P&gt;      icon_info = 'verarbeitet'(002).&lt;/P&gt;&lt;P&gt;    WHEN 'E'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_status_critical.&lt;/P&gt;&lt;P&gt;      icon_info = 'fehlerhaft'(001).&lt;/P&gt;&lt;P&gt;    WHEN 'D'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_delete.&lt;/P&gt;&lt;P&gt;      icon_info = 'gelöscht'(005).&lt;/P&gt;&lt;P&gt;    WHEN ' ' OR 'B'.&lt;/P&gt;&lt;P&gt;      icon_name = icon_create.&lt;/P&gt;&lt;P&gt;      icon_info = 'neu'(034).&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      icon_name = all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      icon_info = '???'.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ICON_CREATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      name   = icon_name&lt;/P&gt;&lt;P&gt;      info   = icon_info&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      RESULT = status_icon&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS = 1.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    status_icon = icon_name.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF all_bdc_tcodes-index = q-tcode_index.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1.&lt;/P&gt;&lt;P&gt;      MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " set_status_icon OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_get_cursor INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_get_cursor INPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  GET CURSOR FIELD q-c_field LINE q-c_line AREA q-c_area.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    CHECK q-c_area = 'TC_Q_TCODES'.&lt;/P&gt;&lt;P&gt;    CHECK q-c_line &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    q-itab_index = tc_q_tcodes-top_line + q-c_line - 1.&lt;/P&gt;&lt;P&gt;    READ TABLE all_bdc_tcodes INTO q-wa INDEX q-itab_index.&lt;/P&gt;&lt;P&gt;    q-tcode_index = q-wa-index.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_get_cursor INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_control_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_control_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK q-control_init = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;create custom container and dynamic document&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT cust&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;  container_name = 'CUSTOM_CONTAINER'&lt;/P&gt;&lt;P&gt;  dynnr = '0700'&lt;/P&gt;&lt;P&gt;  repid = 'RSBDC_ANALYSE'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;lifetime = cntl_lifetime_dynpro&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXCEPTIONS&lt;/P&gt;&lt;P&gt;  OTHERS = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CREATE OBJECT dd&lt;/P&gt;&lt;P&gt;  EXPORTING&lt;/P&gt;&lt;P&gt;  background_color = cl_dd_area=&amp;gt;col_textarea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR q-control_init.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_control_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0700_display OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0700_display OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;initialize_document&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      background_color = cl_dd_area=&amp;gt;col_textarea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH it_blocks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;loop at all apqd blocks for the current transaction and built up the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;dynamic document for each block&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    PERFORM build_queue_dd.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;merge_document.&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;display_document&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      parent             = cust&lt;/P&gt;&lt;P&gt;      reuse_control      = q-reuse_control&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      html_display_error = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;if the HTML control for the DD is already created, we can re-use it.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  IF q-reuse_control IS INITIAL.&lt;/P&gt;&lt;P&gt;    q-reuse_control = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0700_display OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form build_queue_dd&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM build_queue_dd.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: off LIKE sy-index.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write the most important apqd header fields&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-qid TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Queue-ID:'(030) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-trans TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Transaktion:'(031) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-block TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'Block:'(032) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;  sap_color = cl_dd_table_area=&amp;gt;list_positive ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;  WRITE it_apqd-varlen TO c.&lt;/P&gt;&lt;P&gt;  CONCATENATE 'VARDATA-Länge:'(033) c INTO t SEPARATED BY space.&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  dd-&amp;gt;new_line( ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;now add a DD table to it_blocks for the current APQD block&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR b_wa.&lt;/P&gt;&lt;P&gt;  REFRESH it_cx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD dd-&amp;gt;add_table&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      no_of_columns               = nr_cols&lt;/P&gt;&lt;P&gt;      cell_background_transparent = space&lt;/P&gt;&lt;P&gt;      border                      = '0'&lt;/P&gt;&lt;P&gt;      width                       = '100%'&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      tablearea                   = b_wa-dta&lt;/P&gt;&lt;P&gt;      table                       = b_wa-dt&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS                      = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  APPEND b_wa TO it_blocks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;prepare ascii/hex table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO it_apqd-varlen TIMES.&lt;/P&gt;&lt;P&gt;    off = sy-index - 1.&lt;/P&gt;&lt;P&gt;    ASSIGN it_apqd-vardata+off(1) TO .&lt;/P&gt;&lt;P&gt;    WRITE cx-hex TO cx-xtoc.&lt;/P&gt;&lt;P&gt;    APPEND cx TO it_cx.&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;write apqd-vardata (as prepared in it_cx ) to the DD list&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM vardata_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " build_queue_dd&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form vardata_lines&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM vardata_lines.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  count-start = 0.&lt;/P&gt;&lt;P&gt;  count-rest = it_apqd-varlen.&lt;/P&gt;&lt;P&gt;  IF it_apqd-varlen &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;    count-part = it_apqd-varlen.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    count-part = nr_cols.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    cspan = nr_cols - count-part.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;1. the ASCII - Value&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;new_row( sap_color = cl_dd_table_area=&amp;gt;list_heading ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    DO count-part TIMES.&lt;/P&gt;&lt;P&gt;      count-index = count-start + sy-index.&lt;/P&gt;&lt;P&gt;      READ TABLE it_cx INTO cx INDEX count-index.&lt;/P&gt;&lt;P&gt;      IF NOT cx-hex IS INITIAL.&lt;/P&gt;&lt;P&gt;        t = cx-char.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        t = space.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;        sap_color = cl_dd_table_area=&amp;gt;list_negative ).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;    IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;      t = space.&lt;/P&gt;&lt;P&gt;      DO cspan TIMES.&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;add_text( text = t&lt;/P&gt;&lt;P&gt;        sap_color =&lt;/P&gt;&lt;P&gt;        cl_dd_table_area=&amp;gt;list_background ).&lt;/P&gt;&lt;P&gt;      ENDDO.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF q-show_hex = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;2. at least one Byte hex-code for non-unicode systems&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;      PERFORM hex_line USING cx-xtoc+0(1).&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;      PERFORM hex_line USING cx-xtoc+1(1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;3. two-byte unicode:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ( q-uc_bytes = 2 OR q-uc_bytes = 4 ).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+2(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+3(1).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;3. four-byte unicode:&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF ( q-uc_bytes = 4 ).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+4(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+5(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+6(1).&lt;/P&gt;&lt;P&gt;        b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;        PERFORM hex_line USING cx-xtoc+7(1).&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;new_row( sap_style = cl_dd_table_area=&amp;gt;list_normal ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;calculate new counter values for next line(s)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    count-rest = count-rest - nr_cols.&lt;/P&gt;&lt;P&gt;    IF count-rest &amp;lt; 0.&lt;/P&gt;&lt;P&gt;      EXIT.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      count-start = count-start + nr_cols.&lt;/P&gt;&lt;P&gt;      IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;        count-part = count-rest.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        count-part = nr_cols.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " vardata_lines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form hex_line&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;--&amp;gt;P_T text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM hex_line USING p_t.&lt;/P&gt;&lt;P&gt;  DO count-part TIMES.&lt;/P&gt;&lt;P&gt;    count-index = count-start + sy-index.&lt;/P&gt;&lt;P&gt;    READ TABLE it_cx INTO cx INDEX count-index.&lt;/P&gt;&lt;P&gt;    t = p_t.&lt;/P&gt;&lt;P&gt;    b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;  ENDDO.&lt;/P&gt;&lt;P&gt;  IF count-rest &amp;lt; nr_cols.&lt;/P&gt;&lt;P&gt;    DO cspan TIMES.&lt;/P&gt;&lt;P&gt;      t = space.&lt;/P&gt;&lt;P&gt;      b_wa-dta-&amp;gt;add_text( text = t ).&lt;/P&gt;&lt;P&gt;    ENDDO.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. " hex_line&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0701_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0701_init OUTPUT.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;  extab TYPE STANDARD TABLE OF fcode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH extab.&lt;/P&gt;&lt;P&gt;  APPEND 'TOGGLE' TO extab.&lt;/P&gt;&lt;P&gt;  APPEND 'APQI' TO extab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'PF_QUEUE' EXCLUDING extab.&lt;/P&gt;&lt;P&gt;  SET TITLEBAR 'APQI_DUMP' WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0701_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0701_fcode INPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0701_fcode INPUT.&lt;/P&gt;&lt;P&gt;  CASE d0701_fcode.&lt;/P&gt;&lt;P&gt;    WHEN 'BACK'.&lt;/P&gt;&lt;P&gt;      LEAVE TO SCREEN 0.&lt;/P&gt;&lt;P&gt;    WHEN 'END'.&lt;/P&gt;&lt;P&gt;      LEAVE PROGRAM.&lt;/P&gt;&lt;P&gt;    WHEN 'UNLOCK'.&lt;/P&gt;&lt;P&gt;      PERFORM session_unlock.&lt;/P&gt;&lt;P&gt;    WHEN 'TOGGLE_KEEP'.&lt;/P&gt;&lt;P&gt;      PERFORM session_toggle_keep_flag.&lt;/P&gt;&lt;P&gt;    WHEN OTHERS.&lt;/P&gt;&lt;P&gt;      "nop&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0701_fcode INPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form session_unlock&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM session_unlock.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: user LIKE sy-uname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  AUTHORITY-CHECK OBJECT 'S_BDC_MONI'&lt;/P&gt;&lt;P&gt;  ID 'BDCAKTI' FIELD 'LOCK'&lt;/P&gt;&lt;P&gt;  ID 'BDCGROUPID' FIELD apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE i394 WITH apqi-groupid. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ENQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp        = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid        = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid            = apqi-qid&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      foreign_lock   = 1&lt;/P&gt;&lt;P&gt;      system_failure = 99.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        user = sy-msgv1.&lt;/P&gt;&lt;P&gt;        MESSAGE i322 WITH apqi-groupid apqi-qid user.&lt;/P&gt;&lt;P&gt;      WHEN 99. MESSAGE i353 WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR apqi-startdate. UPDATE apqi. COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid     = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tell SM35 to reload table APQI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXPORT reload_apqi TO MEMORY ID 'RELOAD_APQI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " session_unlock&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form session_toggle_keep_flag&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM session_toggle_keep_flag.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: user LIKE sy-uname.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;since setting or deleting the apqi-qerase flag can be considered of&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;being equal to deleting a session, we check for the corresponding&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;authorization. There's no special 'KEEP' activity for S_BDC_MONI &lt;SPAN __jive_emoticon_name="sad"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  AUTHORITY-CHECK OBJECT 'S_BDC_MONI'&lt;/P&gt;&lt;P&gt;  ID 'BDCAKTI' FIELD 'DELE'&lt;/P&gt;&lt;P&gt;  ID 'BDCGROUPID' FIELD apqi-groupid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0. MESSAGE i395 WITH apqi-groupid. EXIT. ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'ENQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp        = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid        = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid            = apqi-qid&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      foreign_lock   = 1&lt;/P&gt;&lt;P&gt;      system_failure = 99.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    CASE sy-subrc.&lt;/P&gt;&lt;P&gt;      WHEN 1.&lt;/P&gt;&lt;P&gt;        user = sy-msgv1.&lt;/P&gt;&lt;P&gt;        MESSAGE i322 WITH apqi-groupid apqi-qid user.&lt;/P&gt;&lt;P&gt;      WHEN 99.&lt;/P&gt;&lt;P&gt;        MESSAGE i353 WITH apqi-groupid.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-qerase = 'X'.&lt;/P&gt;&lt;P&gt;    CLEAR apqi-qerase.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    apqi-qerase = 'X'.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  UPDATE apqi. COMMIT WORK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DEQUEUE_BDC_QID'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      datatyp = 'BDC'&lt;/P&gt;&lt;P&gt;      groupid = apqi-groupid&lt;/P&gt;&lt;P&gt;      qid     = apqi-qid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;tell SM35 to reload table APQI&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  EXPORT reload_apqi TO MEMORY ID 'RELOAD_APQI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " session_toggle_keep_flag&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module d0702_init OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE d0702_init OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF apqi-startdate IS INITIAL.&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      IF screen-name = 'PB_UNLOCK'.&lt;/P&gt;&lt;P&gt;        screen-invisible = 1.&lt;/P&gt;&lt;P&gt;        MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " d0702_init OUTPUT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Module MARK_TCODE OUTPUT&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;MODULE mark_tcode OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF ( ( tcode_index_apqd = 0 )&lt;/P&gt;&lt;P&gt;  AND ( bdc_tcodes-index = 1st_bdc_tcode_index ) )&lt;/P&gt;&lt;P&gt;  OR ( bdc_tcodes-index = tcode_index_apqd ).&lt;/P&gt;&lt;P&gt;    LOOP AT SCREEN.&lt;/P&gt;&lt;P&gt;      screen-intensified = 1. MODIFY SCREEN.&lt;/P&gt;&lt;P&gt;    ENDLOOP.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDMODULE. " mark_tcode output&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM count_dynpros&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Count dynpros for a selected transaction&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM count_dynpros USING tcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR it_apqd. REFRESH it_apqd.&lt;/P&gt;&lt;P&gt;  SELECT * FROM apqd INTO TABLE it_apqd&lt;/P&gt;&lt;P&gt;  WHERE qid = queue_id AND trans = tcnt.&lt;/P&gt;&lt;P&gt;  CLEAR dynpro_cnt.&lt;/P&gt;&lt;P&gt;  LOOP AT it_apqd.&lt;/P&gt;&lt;P&gt;    IF it_apqd-vardata(1) = 'M'. "it's a message header&lt;/P&gt;&lt;P&gt;      dynpro_cnt = dynpro_cnt + 1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDFORM. "count_dynpros&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FORM recalculate_counters&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;recalculate dynpro counters&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM recalculate_counters.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: apqdcnt-msgcntb,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnte,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnto,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntf,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntd,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnt,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntx,&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT all_bdc_tcodes.&lt;/P&gt;&lt;P&gt;    PERFORM count_dynpros USING all_bdc_tcodes-index.&lt;/P&gt;&lt;P&gt;    ADD dynpro_cnt TO apqdcnt-msgcnt.&lt;/P&gt;&lt;P&gt;    CASE all_bdc_tcodes-status.&lt;/P&gt;&lt;P&gt;      WHEN 'D' OR 'G'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntd.&lt;/P&gt;&lt;P&gt;      WHEN 'F'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntf.&lt;/P&gt;&lt;P&gt;      WHEN 'E'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcnte.&lt;/P&gt;&lt;P&gt;      WHEN 'B'.&lt;/P&gt;&lt;P&gt;        ADD dynpro_cnt TO apqdcnt-msgcntb.&lt;/P&gt;&lt;P&gt;    ENDCASE.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcnto = apqdcnt-msgcntb&lt;/P&gt;&lt;P&gt;  + apqdcnt-msgcnte.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntd = apqdcnt-msgcnt&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcntf&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcnte&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcntb.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntp = apqi-putblock&lt;/P&gt;&lt;P&gt;  - apqi-puttrans.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  apqdcnt-msgcntx = apqdcnt-msgcntp&lt;/P&gt;&lt;P&gt;  - apqdcnt-msgcnt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  show_dynpro_cnt = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "recalculate_counters&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*&amp;amp; Form download&lt;/P&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;FORM download .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH lt_string.&lt;/P&gt;&lt;P&gt;  LOOP AT bdclm.&lt;/P&gt;&lt;P&gt;  CONCATENATE bdclm-tcnt bdclm-longtext INTO wa_string SEPARATED BY '|'.&lt;/P&gt;&lt;P&gt;    APPEND wa_string TO lt_string.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  filename = 'H:Errorlog.xls'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL METHOD cl_gui_frontend_services=&amp;gt;gui_download&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      filename                = filename&lt;/P&gt;&lt;P&gt;      filetype                = 'DAT'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      data_tab                = lt_string&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      file_write_error        = 1&lt;/P&gt;&lt;P&gt;      no_batch                = 2&lt;/P&gt;&lt;P&gt;      gui_refuse_filetransfer = 3&lt;/P&gt;&lt;P&gt;      invalid_type            = 4&lt;/P&gt;&lt;P&gt;      no_authority            = 5&lt;/P&gt;&lt;P&gt;      unknown_error           = 6&lt;/P&gt;&lt;P&gt;      header_not_allowed      = 7&lt;/P&gt;&lt;P&gt;      separator_not_allowed   = 8&lt;/P&gt;&lt;P&gt;      filesize_not_allowed    = 9&lt;/P&gt;&lt;P&gt;      header_too_long         = 10&lt;/P&gt;&lt;P&gt;      dp_error_create         = 11&lt;/P&gt;&lt;P&gt;      dp_error_send           = 12&lt;/P&gt;&lt;P&gt;      dp_error_write          = 13&lt;/P&gt;&lt;P&gt;      unknown_dp_error        = 14&lt;/P&gt;&lt;P&gt;      access_denied           = 15&lt;/P&gt;&lt;P&gt;      dp_out_of_memory        = 16&lt;/P&gt;&lt;P&gt;      disk_full               = 17&lt;/P&gt;&lt;P&gt;      dp_timeout              = 18&lt;/P&gt;&lt;P&gt;      file_not_found          = 19&lt;/P&gt;&lt;P&gt;      dataprovider_exception  = 20&lt;/P&gt;&lt;P&gt;      control_flush_error     = 21&lt;/P&gt;&lt;P&gt;      not_supported_by_gui    = 22&lt;/P&gt;&lt;P&gt;      error_no_gui            = 23&lt;/P&gt;&lt;P&gt;      OTHERS                  = 24.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE e000(vz) WITH 'Error while'&lt;/P&gt;&lt;P&gt;    'downloading'&lt;/P&gt;&lt;P&gt;    'BDC log to'&lt;/P&gt;&lt;P&gt;    filename.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    MESSAGE s000(vz) WITH 'Log'&lt;/P&gt;&lt;P&gt;    'downloaded'&lt;/P&gt;&lt;P&gt;    'to'&lt;/P&gt;&lt;P&gt;    filename.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Dec 2006 09:24:13 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778972#M335803</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-14T09:24:13Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778973#M335804</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ranjeetha,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please tell me how you have captured error log from output and displayed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Sudha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 24 Jul 2008 10:24:59 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778973#M335804</guid>
      <dc:creator>S0025444845</dc:creator>
      <dc:date>2008-07-24T10:24:59Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778974#M335805</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;i am getting a runtime error after executing this bdc seesion program&lt;SPAN __jive_emoticon_name="shocked" __jive_macro_name="emoticon" class="jive_macro jive_macro_emoticon jive_emote" src="https://community.sap.com/1495/images/emoticons/shocked.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;exception condition "upload_ole" raised&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the following program code is given below:-----&amp;gt;&lt;SPAN __jive_emoticon_name="sad" __jive_macro_name="emoticon" class="jive_macro jive_macro_emoticon jive_emote" src="https://community.sap.com/1495/images/emoticons/sad.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report ZBDC_SESSION3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;no standard page heading line-size 255.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*include bdcrecx1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF TY_MARA,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MATNR TYPE MATNR,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MBRSH TYPE MBRSH,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MTART TYPE MTART,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MAKTX TYPE MAKTX,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MEINS TYPE MEINS,&lt;/P&gt;&lt;P&gt;END OF TY_MARA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_MARA TYPE STANDARD TABLE OF TY_MARA,&lt;/P&gt;&lt;P&gt;WA_MARA TYPE TY_MARA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_EXCEL TYPE STANDARD TABLE OF ALSMEX_TABLINE,&lt;/P&gt;&lt;P&gt;WA_EXCEL TYPE ALSMEX_TABLINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BDCDATA TYPE BDCDATA OCCURS 0 WITH HEADER LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'&lt;/P&gt;&lt;P&gt;&amp;nbsp; EXPORTING&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FILENAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'C:\Documents and Settings\Administrator\Desktop\BDC_SESSION3.XLS'&lt;/P&gt;&lt;P&gt; I_BEGIN_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/P&gt;&lt;P&gt; I_BEGIN_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I_END_COL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 5&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I_END_ROW&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/P&gt;&lt;P&gt;&amp;nbsp; TABLES&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTERN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = IT_EXCEL&lt;/P&gt;&lt;P&gt;* EXCEPTIONS&lt;/P&gt;&lt;P&gt;* INCONSISTENT_PARAMETERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; UPLOAD_OLE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDIF.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*perform open_group.&lt;/P&gt;&lt;P&gt;LOOP AT IT_EXCEL INTO WA_EXCEL.&lt;/P&gt;&lt;P&gt;CASE WA_EXCEL-COL.&lt;/P&gt;&lt;P&gt;WHEN '0001'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WA_MARA-MATNR = WA_EXCEL-VALUE.&lt;/P&gt;&lt;P&gt;WHEN '0002'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WA_MARA-MBRSH = WA_EXCEL-VALUE.&lt;/P&gt;&lt;P&gt;WHEN '0003'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WA_MARA-MTART = WA_EXCEL-VALUE.&lt;/P&gt;&lt;P&gt;WHEN '0004'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WA_MARA-MAKTX = WA_EXCEL-VALUE.&lt;/P&gt;&lt;P&gt;WHEN '0005'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WA_MARA-MEINS = WA_EXCEL-VALUE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT END OF ROW.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APPEND WA_MARA TO IT_MARA.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDAT.&lt;/LI&gt;&lt;LI&gt;ENDCASE.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDLOOP.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_OPEN_GROUP'&lt;/P&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLIENT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = SY-MANDT&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; DEST&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = FILLER8&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GROUP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'ZKUMAR'&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; HOLDDATE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = FILLER8&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; KEEP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'X'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; USER&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = SY-UNAME&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; RECORD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = FILLER1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PROG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = SY-CPROG&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; DCPFM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = '%'&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; DATFM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = '%'&lt;/P&gt;&lt;P&gt;* IMPORTING&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; QID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&lt;/P&gt;&lt;P&gt;* EXCEPTIONS&lt;/P&gt;&lt;P&gt;* CLIENT_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/P&gt;&lt;P&gt;* DESTINATION_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/P&gt;&lt;P&gt;* GROUP_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/P&gt;&lt;P&gt;* GROUP_IS_LOCKED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 4&lt;/P&gt;&lt;P&gt;* HOLDDATE_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 5&lt;/P&gt;&lt;P&gt;* INTERNAL_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 6&lt;/P&gt;&lt;P&gt;* QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 7&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; RUNNING&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 8&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; SYSTEM_LOCK_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 9&lt;/P&gt;&lt;P&gt;* USER_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 10&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 11&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDIF.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT IT_MARA INTO WA_MARA.&lt;/P&gt;&lt;P&gt;&amp;nbsp; CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;&amp;nbsp; REFRESH BDCDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;performbdc_dynpro using 'SAPLMGMM' '0060'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'RMMG1-MTART'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;'/00'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'RMMG1-MATNR'&lt;/P&gt;&lt;P&gt;WA_MARA-MATNR.&lt;/P&gt;&lt;P&gt;"'MIRINDA'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'RMMG1-MBRSH'&lt;/P&gt;&lt;P&gt;WA_MARA-MBRSH.&lt;/P&gt;&lt;P&gt;"'F'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'RMMG1-MTART'&lt;/P&gt;&lt;P&gt;WA_MARA-MTART.&lt;/P&gt;&lt;P&gt;"'FGTR'.&lt;/P&gt;&lt;P&gt;performbdc_dynpro using 'SAPLMGMM' '0070'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt; 'MSICHTAUSW-DYTXT(01)'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '=ENTR'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'MSICHTAUSW-KZSEL(01)'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'X'.&lt;/P&gt;&lt;P&gt;performbdc_dynpro using 'SAPLMGMM' '4004'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_OKCODE'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '=BU'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'MAKT-MAKTX'&lt;/P&gt;&lt;P&gt;WA_MARA-MAKTX.&lt;/P&gt;&lt;P&gt;"' COLD DRINK'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'BDC_CURSOR'&lt;/P&gt;&lt;P&gt;'MARA-MEINS'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'MARA-MEINS'&lt;/P&gt;&lt;P&gt;WA_MARA-MEINS.&lt;/P&gt;&lt;P&gt;"'L'.&lt;/P&gt;&lt;P&gt;performbdc_field using 'MARA-MTPOS_MARA'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'NORM'.&lt;/P&gt;&lt;P&gt;*perform bdc_transaction using 'MM01'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*perform close_group.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_INSERT'&lt;/P&gt;&lt;P&gt;&amp;nbsp; EXPORTING&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TCODE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 'MM01'&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; POST_LOCAL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = NOVBLOCAL&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; PRINTING&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = NOPRINT&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; SIMUBATCH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ' '&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; CTUPARAMS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = ' '&lt;/P&gt;&lt;P&gt;&amp;nbsp; TABLES&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DYNPROTAB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = BDCDATA&lt;/P&gt;&lt;P&gt;* EXCEPTIONS&lt;/P&gt;&lt;P&gt;* INTERNAL_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; NOT_OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/P&gt;&lt;P&gt;* QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/P&gt;&lt;P&gt;* TCODE_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 4&lt;/P&gt;&lt;P&gt;* PRINTING_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 5&lt;/P&gt;&lt;P&gt;* POSTING_INVALID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 6&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 7&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDIF.&lt;/LI&gt;&lt;LI&gt;ENDLOOP.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'BDC_CLOSE_GROUP'&lt;/P&gt;&lt;P&gt;* EXCEPTIONS&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; NOT_OPEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1&lt;/P&gt;&lt;P&gt;* QUEUE_ERROR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 2&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp; OTHERS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDIF.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----------------------------------------------------------------------*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start new screen&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;/P&gt;&lt;P&gt;*----------------------------------------------------------------------*&lt;/P&gt;&lt;P&gt;FORM BDC_DYNPRO USING PROGRAM DYNPRO.&lt;/P&gt;&lt;P&gt;&amp;nbsp; CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt; BDCDATA-PROGRAM&amp;nbsp; = PROGRAM.&lt;/P&gt;&lt;P&gt; BDCDATA-DYNPRO&amp;nbsp;&amp;nbsp; = DYNPRO.&lt;/P&gt;&lt;P&gt;&amp;nbsp; BDCDATA-DYNBEGIN = 'X'.&lt;/P&gt;&lt;P&gt;&amp;nbsp; APPEND BDCDATA.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDFORM.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*----------------------------------------------------------------------*&lt;/P&gt;&lt;P&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Insert field *&lt;/P&gt;&lt;P&gt;*----------------------------------------------------------------------*&lt;/P&gt;&lt;P&gt;FORM BDC_FIELD USING FNAM FVAL.&lt;/P&gt;&lt;P&gt;*&amp;nbsp; IF FVAL &amp;lt;&amp;gt; NODATA.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLEAR BDCDATA.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BDCDATA-FNAM = FNAM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BDCDATA-FVAL = FVAL.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; APPEND BDCDATA.&lt;/P&gt;&lt;P&gt;*&amp;nbsp; ENDIF.&lt;/P&gt;&lt;OL style="list-style-type: upper-alpha;"&gt;&lt;LI&gt;ENDFORM.&lt;/LI&gt;&lt;/OL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2013 05:47:25 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778974#M335805</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-06-06T05:47:25Z</dc:date>
    </item>
    <item>
      <title>Re: error correction in bdc session</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778975#M335806</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Use below code which gets the errors and success records. You change the code as your requirement.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;REPORT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; ybdc_errlog.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: w_ref_alv &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; cl_salv_table.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BEGIN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OCCURS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; off(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;02&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; n,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; len(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;02&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; n,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;99&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;END&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BEGIN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; len(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;02&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; n,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;254&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;END&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;FIELD&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;-SYMBOLS:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;mtxt&amp;gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; save_mpar &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdc_mpar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; digits(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;10&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;VALUE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'0123456789'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; mtext(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;124&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; mtext1(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;124&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; mtext2(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;273&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; do_condense &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; mtvaroff &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; showtyp(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;05&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; lmapn(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;12&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; date1&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; d,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; linct0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LIKE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-linct,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; parcnt&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; sp_len&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; charcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; mparcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; qfound(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;04&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; n,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;x&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;VALUE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'X'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BEGIN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtable &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OCCURS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;50&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; enterdate &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LIKE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; btctle-enterdate,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; entertime &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LIKE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; btctle-entertime,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; logmessage(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;400&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;END&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtable.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; lm &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BEGIN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OCCURS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INCLUDE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;STRUCTURE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: counter &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; longtext &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdc_mpar,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; isdetail(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;c&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;END&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;:&amp;nbsp; logtab_temse &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;STANDARD&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; apql .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: wa_log &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; apql,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wa_ld&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; ztt_bdc,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; w_bdcld&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; ztt_bdc,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; logname(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;80&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdcld &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;STANDARD&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; ztt_bdc,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; selected_protocol &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; * &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FROM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; apql &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtab_temse&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHERE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; qid = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'10120911353254644605'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;LOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtab_temse &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; wa_log.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; wa_ld.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-temseid = wa_log-temseid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-lmand&amp;nbsp;&amp;nbsp; = wa_log-mandant.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-edate&amp;nbsp;&amp;nbsp; = wa_log-credate.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-etime&amp;nbsp;&amp;nbsp; = wa_log-cretime.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-luser&amp;nbsp;&amp;nbsp; = wa_log-creator.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-grpn&amp;nbsp;&amp;nbsp;&amp;nbsp; = wa_log-groupid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-quid&amp;nbsp;&amp;nbsp;&amp;nbsp; = wa_log-qid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; wa_ld-local_host = wa_log-destsys(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;8&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;APPEND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; wa_ld &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdcld.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;ENDLOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp; now bdcld contains the log files for the given qid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;SORT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdcld &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; edate &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DESCENDING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; etime &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DESCENDING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;DESCRIBE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdcld &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LINES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; selected_protocol.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; selected_protocol &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdcld &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; w_bdcld&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; logname = w_bdcld-logname.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; read_bdc_log_plain&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtable&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; w_bdcld-temseid w_bdcld-lmand.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; extend_message_texts.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; bdclm &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;NOT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INITIAL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TRY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CALL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;METHOD&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; cl_salv_table=&amp;gt;factory&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IMPORTING&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r_salv_table = w_ref_alv&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CHANGING&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t_table&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = bdclm[].&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CATCH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; cx_salv_msg .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDTRY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; w_ref_alv-&amp;gt;display( ).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Form&amp;nbsp; extend_message_texts&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;FORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; extend_message_texts.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lm = bdclm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; save_mpar = bdclm-mpar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; get_text.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-longtext = mtext.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-mpar = save_mpar.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MODIFY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDLOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;ENDFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"extend_message_texts&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Form&amp;nbsp; get_text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;FORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; get_text.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*** Aufbereiten des Messagetextes&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; t100.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: shiftln &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vartcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LIKE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-fdpos.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mparcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; digits.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-mparcnt = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SINGLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; * &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FROM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; t100&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHERE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sprsl = sy-langu&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; arbgb&amp;nbsp; = bdclm-mid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; msgnr&amp;nbsp; = bdclm-mnr.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: mtext,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parcnt,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mparcnt,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; charcnt,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wcnt,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mt,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sp_len,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sy-fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mparcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; t100-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; t100-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; t100-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXIT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; shiftln.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TIMES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mpar &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par-len &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; digits &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par-len &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; par-len&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; par-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; shiftln&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; shiftln = par-len + &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(par-len).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; par-len&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;MOVE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-off.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;APPEND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SHIFT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mpar &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; shiftln &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PLACES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDDO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtext2 = mtext1.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mid &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'00'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;" sonderbehandlung s00368&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-mnr &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'368'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AND&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-mart &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'S'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;35&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtext = mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXIT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do_condense = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;x&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;:&amp;nbsp; vartcnt, mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHILE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vartcnt &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;3&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vartcnt = vartcnt + &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parcnt = parcnt + &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-fdpos &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos = sy-fdpos - &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos = sy-fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SHIFT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-fdpos &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PLACES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SHIFT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PLACES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp; '&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; parcnt fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;&amp;amp;'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'1'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;1'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'2'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;2'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;2'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'3'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;3'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;3'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;3&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'4'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;4'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;4'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; parcnt fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDCASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SHIFT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PLACES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext1(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$ '&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$ '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; parcnt&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$$'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'1'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$1'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'2'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$2'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$2'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'3'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$3'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$3'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;3&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'4'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$4'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$4'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'$'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PERFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; parcnt&amp;nbsp; fdpos.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDCASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDWHILE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;D&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;D&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;A&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;A&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; do_condense &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; space.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtext = mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CONDENSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2 .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtext = mtext2.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtext = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'???????????????????????????????????????????????????'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;ENDFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;" get_text1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Form&amp;nbsp; READ_BDC_LOG_PLAIN&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;P_LOGTABLE&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;P_BDCLD_TEMSEID&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;P_BDCLD_LMAND&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;FORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; read_bdc_log_plain&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; log_table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_bdcld_temseid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p_bdcld_lmand.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: charcp &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LIKE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; rststype-charco &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;VALUE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'0000'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FREE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; log_table.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CALL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'RSTS_GET_ATTRIBUTES'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXPORTING&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; authority&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;client&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = sy-mandt&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = p_bdcld_temseid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IMPORTING&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; charco&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = charcp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXCEPTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_rsts_other = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no_object&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;3&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no_permission = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;5&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; cl_abap_char_utilities=&amp;gt;charsize &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; charcp = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'0000'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CALL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'RSTS_OPEN_RLC'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXPORTING&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; name&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = p_bdcld_temseid&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;client&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = sy-mandt&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; authority&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'BATCH'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; prom&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'I'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rectyp&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'VNL----'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; charco&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = charcp&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXCEPTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_call_handle = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_rsts_noconv = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_rsts_other&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;16&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; no_object&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;20&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;24&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXIT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CALL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'RSTS_READ'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLES&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; datatab&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = log_table&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXCEPTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_call_handle = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_error&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;8&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_rsts_noconv = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;12&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fb_rsts_other&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;16&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;16&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXIT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CALL&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;FUNCTION&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'RSTS_CLOSE'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXCEPTIONS&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OTHERS&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EXIT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm[].&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;LOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;AT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; logtable.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-indate&amp;nbsp; = logtable-enterdate.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-intime&amp;nbsp; = logtable-entertime.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm+&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;14&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;352&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;) = logtable-logmessage.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mcnt &amp;gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-mcnt = bdclm-mcnt - &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm-mid &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'00'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp; ( bdclm-mnr &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'162'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; )&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;OR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; ( bdclm-mnr &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'368'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; ).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bdclm-isdetail = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'X'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;APPEND&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; bdclm.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDLOOP&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;ENDFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;" READ_BDC_LOG_PLAIN&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Form&amp;nbsp; replace_var&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;amp;---------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;VARK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;VARI&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --&amp;gt;VARPOS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*----------------------------------------------------------------------*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;FORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; replace_var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;USING&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark vari varpos.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;DATA&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: var(&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;02&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var1,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TYPE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;i&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;*&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CLEAR&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;: mttab , moff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; var = vark.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;SHIFT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; var &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;BY&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;PLACES&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;CASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; var.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp; '&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var1 = vark.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; var1 &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;nbsp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;Z&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;&amp;amp;'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;D&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;&amp;amp;'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;A&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;amp;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$&amp;lt;'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'$'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;' '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'1'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;1'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;1&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;nbsp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;Z&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'2'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;2'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;nbsp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;Z&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'3'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;3'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;3&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;nbsp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;Z&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WHEN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'4'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;"'&amp;amp;4'&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;READ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TABLE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INDEX&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;4&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; sy-subrc &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;EQ&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mttab-&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;text&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;(mttab-len) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;vtxt&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = mttab-len.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;IF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vari &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;GT&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mparcnt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'&amp;nbsp; '&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;2&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ELSE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moff = varpos + mtvaroff.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ASSIGN&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; mtext2+moff(*) &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;TO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;REPLACE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; vark &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;'%%&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;&lt;EM&gt;Z&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;%%'&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;INTO&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt; &amp;lt;mtxt&amp;gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mtvaroff = &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;7&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;ENDCASE&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;&amp;nbsp; do_condense = space.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #003300;"&gt;ENDFORM&lt;/SPAN&gt;&lt;SPAN style="color: #003300;"&gt;. &lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Jul 2013 18:16:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/error-correction-in-bdc-session/m-p/1778975#M335806</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-07-18T18:16:21Z</dc:date>
    </item>
  </channel>
</rss>

