<?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: Script Print Program Logic....... in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/script-print-program-logic/m-p/2903238#M682869</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the Logic to be added is this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;b.	Remove the carton ID &amp;amp; box ID from the print out,  the line item should just print the total delivery quantity, do not split the printing by different box ID or carton ID.&lt;/P&gt;&lt;P&gt;i.	Delivery Item= LIPS-POSNR&lt;/P&gt;&lt;P&gt;ii.	Delivery Qty for Item = LIPSD-G_LFIMG= LIPSD-PIKMG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;c.	Add Total Boxes for each item, this should be a calculation field for each material HUMV4-MATNR, count how many handling unit  VEKPVB-EXIDV has been used to pack the same material , output the total boxes for each delivery item.&lt;/P&gt;&lt;P&gt;d.	Add Gross Weight for each  item , retrieve data from LIPS-BRGEW&lt;/P&gt;&lt;P&gt;e.	Add Net weight to the print out, below the gross weight &amp;#150; retrieve data from LIKP-NTGEW&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 24 Oct 2007 05:00:23 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-10-24T05:00:23Z</dc:date>
    <item>
      <title>Script Print Program Logic.......</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/script-print-program-logic/m-p/2903237#M682868</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is the print program of my script, i am not getting the logic..can any body help me with this..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE rvadtabl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: vbuk,                          "Vertriebsbeleg (Kopf)-Status&lt;/P&gt;&lt;P&gt;        vbco3,                         "Schlüsselfelder Vertriebsbeleg&lt;/P&gt;&lt;P&gt;        vbpla,                         "Allgemeine Transportdaten&lt;/P&gt;&lt;P&gt;        vbplk,                         "Versandelement Kopfdaten&lt;/P&gt;&lt;P&gt;        vbplp,                         "Versandelement Positionsdaten&lt;/P&gt;&lt;P&gt;        vbpls,                         "Verpackung Summendaten&lt;/P&gt;&lt;P&gt;        vekp,&lt;/P&gt;&lt;P&gt;        adrc,&lt;/P&gt;&lt;P&gt;        vbfa.                                               "DEVK937590&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: vbkd.                                               "DEVK942078&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DEVK9A0EB4 - Add define&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;  ty_itcsy TYPE STANDARD TABLE OF itcsy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;start of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA:   BEGIN OF t_deliveryflow OCCURS 0, "VBFA delivery flow&lt;/P&gt;&lt;P&gt;          vbeln LIKE vbfa-vbeln,          "Subsequent sales and distribu&lt;/P&gt;&lt;P&gt;        END OF t_deliveryflow.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  v_lin      TYPE i.&lt;/P&gt;&lt;P&gt;CONSTANTS: c_x(1) TYPE c VALUE 'X'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA: BEGIN OF xvbplk OCCURS 10.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbplk.&lt;/P&gt;&lt;P&gt;DATA: END OF xvbplk.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF vbdkl OCCURS 10.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbdkl.&lt;/P&gt;&lt;P&gt;DATA : END OF vbdkl.&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF tvbdpl OCCURS 0.        "Internal table for items&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbdpl.&lt;/P&gt;&lt;P&gt;DATA: END OF tvbdpl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF xvbplp OCCURS 50.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbplp.&lt;/P&gt;&lt;P&gt;DATA: END OF xvbplp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: BEGIN OF xvbpls OCCURS 10.&lt;/P&gt;&lt;P&gt;        INCLUDE STRUCTURE vbpls.&lt;/P&gt;&lt;P&gt;DATA: END OF xvbpls.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: retcode LIKE sy-subrc.&lt;/P&gt;&lt;P&gt;DATA: xscreen(1) TYPE c.         "Ausgabe auf Drucker oder Bildschirm&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: t_vepo LIKE vepo OCCURS 0 WITH HEADER LINE, "VEPO internal table&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BEGIN OF t_cartons OCCURS 0,     "Internal table for cartons&lt;/P&gt;&lt;P&gt;  venum LIKE vepo-venum,         "Shipping unit # for carton&lt;/P&gt;&lt;P&gt;END OF t_cartons,&lt;/P&gt;&lt;P&gt;BEGIN OF t_boxes OCCURS 0,       "Internal table for BOXES&lt;/P&gt;&lt;P&gt;  venum LIKE vepo-venum,         "Shipping unit # for BOXES&lt;/P&gt;&lt;P&gt;  laeng LIKE vekp-laeng,&lt;/P&gt;&lt;P&gt;  breit LIKE vekp-breit,&lt;/P&gt;&lt;P&gt;  hoehe LIKE vekp-hoehe,&lt;/P&gt;&lt;P&gt;  meabm LIKE vekp-meabm,&lt;/P&gt;&lt;P&gt;END OF t_boxes,&lt;/P&gt;&lt;P&gt;BEGIN OF t_pack_dim OCCURS 0,&lt;/P&gt;&lt;P&gt;  laeng LIKE vekp-laeng,&lt;/P&gt;&lt;P&gt;  breit LIKE vekp-breit,&lt;/P&gt;&lt;P&gt;  hoehe LIKE vekp-hoehe,&lt;/P&gt;&lt;P&gt;  meabm LIKE vekp-meabm,&lt;/P&gt;&lt;P&gt;  box_qty TYPE i,&lt;/P&gt;&lt;P&gt;END OF t_pack_dim,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;v_venum LIKE vepo-venum,         "Shipping unit number&lt;/P&gt;&lt;P&gt;i_cartons TYPE i,                "# of cartons (Integer type)&lt;/P&gt;&lt;P&gt;i_boxes TYPE i,                  "# of boxes (Integer type)&lt;/P&gt;&lt;P&gt;i_box_count TYPE i,              "# of boxes/carton   "DEVK926768&lt;/P&gt;&lt;P&gt;c_cartons(4) TYPE c,             "# of cartons (Character type)&lt;/P&gt;&lt;P&gt;c_boxes(4) TYPE c,               "# of boxes (Character type)&lt;/P&gt;&lt;P&gt;c_bolnr(35) TYPE c,&lt;/P&gt;&lt;P&gt;v_tel_number LIKE adrc-tel_number,&lt;/P&gt;&lt;P&gt;v_adrnr LIKE adrc-addrnumber,&lt;/P&gt;&lt;P&gt;v_kdmat LIKE lips-kdmat,&lt;/P&gt;&lt;P&gt;v_btgew LIKE likp-btgew,&lt;/P&gt;&lt;P&gt;v_gewei LIKE likp-gewei,&lt;/P&gt;&lt;P&gt;v_arktx LIKE lips-arktx.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;******DEVK9A0IK7 Addition by RAMARAJG Starts here&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;types : BEGIN OF t_item ,&lt;/P&gt;&lt;P&gt;         posnr1 type vbplp-posnr,&lt;/P&gt;&lt;P&gt;         material1 TYPE mara-matnr,&lt;/P&gt;&lt;P&gt;         brgew1 type vbplp-brgew,&lt;/P&gt;&lt;P&gt;         vemeh1 type vbplp-vemeh,&lt;/P&gt;&lt;P&gt;         item_weight1 TYPE n,&lt;/P&gt;&lt;P&gt;         arktx1 type vbplp-arktx,&lt;/P&gt;&lt;P&gt;         vboxcnt type n,&lt;/P&gt;&lt;P&gt;       end of t_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*types : BEGIN OF t_item1 ,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        posnr1 type vbplp-posnr,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        material1 TYPE mara-matnr,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        vemng1 type vbplp-brgew,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        vemeh1 type vbplp-vemeh,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        item_weight1 TYPE n,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        arktx1 type vbplp-arktx,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        v_boxcnt type n,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      end of t_item1.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: it_item TYPE TABLE OF t_item,&lt;/P&gt;&lt;P&gt;      wa_item TYPE t_item.&lt;/P&gt;&lt;P&gt;data: it_item1 type table of t_item,&lt;/P&gt;&lt;P&gt;      wa_item1 type t_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*data: wa_itab1 like itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: v_grwt type lips-brgew,     "Gross Weight in KG&lt;/P&gt;&lt;P&gt;      v_gunit type likp-gewei,     "Gross Weight Unit&lt;/P&gt;&lt;P&gt;      v_netwt type lips-ntgew,    "Net Weight&lt;/P&gt;&lt;P&gt;      v_unit type likp-gewei.     "Net Weight Unit&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     v_tboxes type i,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;******DEVK9A0IK7 Addition by RAMARAJG ends here&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;A. Nachricht (allgemein)                                             *&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 entry USING return_code us_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR retcode.&lt;/P&gt;&lt;P&gt;  xscreen = us_screen.&lt;/P&gt;&lt;P&gt;  PERFORM processing USING us_screen.&lt;/P&gt;&lt;P&gt;  IF retcode NE 0.&lt;/P&gt;&lt;P&gt;    return_code = 1.&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;    return_code = 0.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "entry&lt;/P&gt;&lt;P&gt;&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 PROCESSING                                               *&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;UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  PROC_SCREEN                                                   *&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 processing USING proc_screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM get_data.                    " &amp;lt;-- speziell&lt;/P&gt;&lt;P&gt;  PERFORM form_open USING proc_screen vbpla-land1.&lt;/P&gt;&lt;P&gt;  CHECK retcode = 0.&lt;/P&gt;&lt;P&gt;  PERFORM shipping_point_tel_no.&lt;/P&gt;&lt;P&gt;  PERFORM boxes_and_cartons.&lt;/P&gt;&lt;P&gt;  PERFORM gross_weight.&lt;/P&gt;&lt;P&gt;***********DEVK9A0IK7 starts here&lt;/P&gt;&lt;P&gt;*******Perform to get the Net weight&lt;/P&gt;&lt;P&gt;*******Perform to get Total weight for each line item&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  Perform net_weight.                                   "DEVK9A0IK7&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; Perform Total_weight.                                 "DEVK9A0IK7&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********DEVK9A0IK7 ends here&lt;/P&gt;&lt;P&gt;  PERFORM bill_of_lading.&lt;/P&gt;&lt;P&gt;  CHECK retcode = 0.&lt;/P&gt;&lt;P&gt;  PERFORM check_repeat.&lt;/P&gt;&lt;P&gt;  PERFORM text_print.                  " &amp;lt;-- speziell&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;begin shb&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM get_end_customer_po.&lt;/P&gt;&lt;P&gt;*end shb&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM packing_dimensions.&lt;/P&gt;&lt;P&gt;  PERFORM remarks.&lt;/P&gt;&lt;P&gt;  CHECK retcode = 0.&lt;/P&gt;&lt;P&gt;  PERFORM form_close.&lt;/P&gt;&lt;P&gt;  CHECK retcode = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "processing&lt;/P&gt;&lt;P&gt;&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 FORM_OPEN                                                *&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;UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  US_SCREEN                                                     *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  US_COUNTRY                                                    *&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 form_open USING us_screen us_country.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  INCLUDE rvadopfo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "form_open&lt;/P&gt;&lt;P&gt;&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 FORM_CLOSE                                               *&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;UL&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 form_close.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'CLOSE_FORM'           "...Ende Formulardruck&lt;/P&gt;&lt;P&gt;       EXCEPTIONS OTHERS = 1.&lt;/P&gt;&lt;P&gt;  IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;    retcode = 1.&lt;/P&gt;&lt;P&gt;    PERFORM protocol_update.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;  SET COUNTRY space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "form_close&lt;/P&gt;&lt;P&gt;&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 CHECK_REPEAT                                             *&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;UL&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 check_repeat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT * INTO *nast FROM nast WHERE kappl = nast-kappl&lt;/P&gt;&lt;P&gt;                                AND   objky = nast-objky&lt;/P&gt;&lt;P&gt;                                AND   kschl = nast-kschl&lt;/P&gt;&lt;P&gt;                                AND   spras = nast-spras&lt;/P&gt;&lt;P&gt;                                AND   parnr = nast-parnr&lt;/P&gt;&lt;P&gt;                                AND   parvw = nast-parvw&lt;/P&gt;&lt;P&gt;                                AND   nacha BETWEEN '1' AND '4'.&lt;/P&gt;&lt;P&gt;    CHECK *nast-vstat = '1'.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        element = 'REPEAT'&lt;/P&gt;&lt;P&gt;        window  = 'REPEAT'&lt;/P&gt;&lt;P&gt;      EXCEPTIONS&lt;/P&gt;&lt;P&gt;        element = 1&lt;/P&gt;&lt;P&gt;        window  = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      PERFORM protocol_update.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "check_repeat&lt;/P&gt;&lt;P&gt;&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 PROTOCOL_UPDATE                                          *&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;UL&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 protocol_update.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CHECK xscreen = space.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'NAST_PROTOCOL_UPDATE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      msg_arbgb = syst-msgid&lt;/P&gt;&lt;P&gt;      msg_nr    = syst-msgno&lt;/P&gt;&lt;P&gt;      msg_ty    = syst-msgty&lt;/P&gt;&lt;P&gt;      msg_v1    = syst-msgv1&lt;/P&gt;&lt;P&gt;      msg_v2    = syst-msgv2&lt;/P&gt;&lt;P&gt;      msg_v3    = syst-msgv3&lt;/P&gt;&lt;P&gt;      msg_v4    = syst-msgv4&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;ENDFORM.                    "protocol_update&lt;/P&gt;&lt;P&gt;&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;B. Packliste (speziell)                                              *&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Die Verpackung von Lieferungen wird durch Versandelemente (VSE)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;realisiert. Technisch ist ein Versandelement ein Beleg mit Kopf-&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;und Positionsdaten (Strukturen VBPLK/XVBPLK und VBPLP/XVBPLP).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Eine Position in einem VSE ist entweder wieder ein VSE oder Teil&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;eine Lieferposition (also mit den zum VSE gehörenden Materialen/&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Versandhilftsmitteln verpackt). Der Zusammenhang zur Lieferung&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;wird durch die beiden Felder VBELN (Lieferung) und POSNR (Position)&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;in der Struktur VBPLP realisiert. Es ist zu beachten, daß ein VSE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;keine Positionsdaten enthalten muß: Die Lieferung wurde dann nicht&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;vollständig verpackt.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Mathematisch gesehen stellen die VSE einen Wald (aus Bäumen) dar.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;An den Knoten können noch Lieferpositionsdaten hängen. Um zu&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;erkennen ob ein Knoten eine Wurzel oder (und) ein Blatt ist, gibt&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;es im VSE-Kopf Kennzeichen. Ist KZOBE gesetzt, so ist das VSE ein&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;oberes Element, also eine Wurzel. Ist KZUNT gesetzt, stellt das VSE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ein unteres Element dar, also ein Blatt. Ist keines der beiden&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Kennzeichen gesetzt dann ist das VSE ein innerer Knoten. Es ist&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;zu beachten, daß beiden Kennzeichen gesetzt sein können: Der Baum&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;besteht aus einem Knoten. Die Tiefe eines Knotens durch das Feld&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;TIVEL gegeben.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Weiterhin ist der Baum doppelt verkettet. Es ist also möglich,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;nicht nur einen Weg von der Wurzel (eines Teilbaums) zu einem&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Blatt zu finden, sondern auch umgekehrt von einem Blatt zur Wurzel&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;zu gelangen. Dazu existiert (im VSE-Kopf) das Feld UEVEL, also&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;das übergeordnete VSE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Um schließlich zu entscheiden, ob ein VSE-Position ein VSE oder&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;eine Lieferposition ist, wird das Feld POSNR ausgewertet. Ist&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;das Feld initial, stellt die Position ein VSE dar, im anderen Fall&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;enthält es die Lieferposition. Ist die Position ein VSE, steht im&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Feld UNVEL das zugehörige untergeordnete VSE.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM get_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  vbco3-vbeln = nast-objky.&lt;/P&gt;&lt;P&gt;  vbco3-spras = nast-spras.&lt;/P&gt;&lt;P&gt;  vbco3-kunde = nast-parnr.&lt;/P&gt;&lt;P&gt;  vbco3-parvw = nast-parvw.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*mod+&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'RV_DELIVERY_PRINT_VIEW'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      comwa = vbco3&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      kopf  = vbdkl&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      pos   = tvbdpl.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'SD_PACKING_PRINT_VIEW'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      comwa     = vbco3&lt;/P&gt;&lt;P&gt;    IMPORTING&lt;/P&gt;&lt;P&gt;      vbpla_wa  = vbpla&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      vbplk_tab = xvbplk&lt;/P&gt;&lt;P&gt;      vbplp_tab = xvbplp&lt;/P&gt;&lt;P&gt;      vbpls_tab = xvbpls&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      OTHERS    = 01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT xvbplk WHERE kzobe = 'X'.&lt;/P&gt;&lt;P&gt;    EXIT.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;gt; 0.&lt;/P&gt;&lt;P&gt;    syst-msgid = 'VL'.&lt;/P&gt;&lt;P&gt;    syst-msgno = '490'.&lt;/P&gt;&lt;P&gt;    syst-msgty = 'E'.&lt;/P&gt;&lt;P&gt;    PERFORM protocol_update.&lt;/P&gt;&lt;P&gt;    retcode = 1.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "get_data&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 TEXT_PRINT                                               *&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;UL&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 text_print.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Die Kopfdaten werden implizit ausgegeben, ...&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;... dann die Überschriften der Positionen ...&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      element = 'HEADER'&lt;/P&gt;&lt;P&gt;      type    = 'TOP'.&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;... und schließlich die Positionen ausgeben ...&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT xvbplk WHERE kzobe = 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM packing_tree USING xvbplk-venum.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "text_print&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;Rekursive Prozedur&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;FORM packing_tree USING value(shenr).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Daten des Versandelements shenr ausgeben, also Wurzel des Teilbaums&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  MOVE space TO xvbplk.&lt;/P&gt;&lt;P&gt;  xvbplk-venum = shenr.&lt;/P&gt;&lt;P&gt;  READ TABLE xvbplk.&lt;/P&gt;&lt;P&gt;  vbplk = xvbplk.&lt;/P&gt;&lt;P&gt;  READ TABLE t_cartons WITH KEY venum = vbplk-venum.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    IF vbplk-brgew &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;      PERFORM set_textsymbol USING '&amp;amp;CARTON_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                                   vbplk-brgew.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      PERFORM set_textsymbol USING '&amp;amp;CARTON_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                                   ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;      EXPORTING&lt;/P&gt;&lt;P&gt;        element = 'SHELEM'.&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;Nun die Positionen abarbeiten (Teilbäume durchlaufen).&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Hier wäre eventuell ein Sortierung zwischen Lieferpositionen&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;und weiteren Versandelementen sinnvoll. Alle nachgeordneten&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Positionen liegen eine Stufe tiefer.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  LOOP AT xvbplp WHERE venum = shenr.&lt;/P&gt;&lt;P&gt;    IF xvbplp-posnr IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Versandelement&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      PERFORM packing_tree USING xvbplp-unvel.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    Lieferposition (Anteil)&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      vbplp = xvbplp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM customer_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***ramarajg starts.&lt;/P&gt;&lt;P&gt;      perform item_list.&lt;/P&gt;&lt;P&gt;***ramarajg end.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      IF vbplp-brgew &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        PERFORM set_textsymbol USING '&amp;amp;ITEM_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                                     vbplp-brgew.&lt;/P&gt;&lt;P&gt;      ELSE.&lt;/P&gt;&lt;P&gt;        PERFORM set_textsymbol USING '&amp;amp;ITEM_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                                   ' '.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          EXPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          element = 'DELPOS'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***ramarajg starts.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform TOTAL_WEIGHT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at it_item into wa_item.&lt;/P&gt;&lt;P&gt;      CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;        EXPORTING&lt;/P&gt;&lt;P&gt;          element = 'ITEMPOS'.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;break ramarajg.&lt;/P&gt;&lt;P&gt;***ramarajg end.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "packing_tree&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_TEXTSYMBOL                                           *&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;UL&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 set_textsymbol USING text_symbol&lt;/P&gt;&lt;P&gt;                          text_value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'TEXT_SYMBOL_SETVALUE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      name  = text_symbol&lt;/P&gt;&lt;P&gt;      value = text_value.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "set_textsymbol&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  BOXES_AND_CARTONS&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 boxes_and_cartons.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: t_cartons,&lt;/P&gt;&lt;P&gt;         t_boxes,&lt;/P&gt;&lt;P&gt;         i_cartons,&lt;/P&gt;&lt;P&gt;         i_boxes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  REFRESH: t_cartons,&lt;/P&gt;&lt;P&gt;           t_boxes.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;start of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;  CLEAR t_deliveryflow[].&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;  FROM vbfa&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE t_deliveryflow&lt;/P&gt;&lt;P&gt;  WHERE vbelv = vbpla-vbeln AND vbtyp_n = c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DESCRIBE TABLE t_deliveryflow LINES v_lin.&lt;/P&gt;&lt;P&gt;  CHECK v_lin GT 0.&lt;/P&gt;&lt;P&gt;  SELECT venum vbeln&lt;/P&gt;&lt;P&gt;  FROM vepo&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE t_vepo&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN t_deliveryflow&lt;/P&gt;&lt;P&gt;  WHERE venum = t_deliveryflow-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SELECT VENUM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       VBELN&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FROM VEPO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE T_VEPO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  WHERE VBELN = VBPLA-VBELN.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  SORT t_vepo BY venum.&lt;/P&gt;&lt;P&gt;  DELETE ADJACENT DUPLICATES FROM t_vepo COMPARING venum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Determine the number of cartons and boxes to be shipped.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;To determine the number of cartons, shipping unit number (VENUM) is&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;checked if it a lower-level shipping unit. This is done by reading&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;table VEPO and checking if VENUM exist in UNVEL (Lower-level shipping&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;unit). If it does, this means that VENUM is contained within&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;another container. If it does not exist, it is considered the highest&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;level of packing for that specific delivery.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_vepo.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;check if VENUM is a lower level shipping unit.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT SINGLE venum INTO v_venum&lt;/P&gt;&lt;P&gt;    FROM vepo&lt;/P&gt;&lt;P&gt;    WHERE unvel =  t_vepo-venum.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;If shipping unit number is found, count as carton.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    check if carton already exist for the carton.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      READ TABLE t_cartons WITH KEY venum = v_venum.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;    if carton does not exist, append table&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;        t_cartons-venum = v_venum.&lt;/P&gt;&lt;P&gt;        APPEND t_cartons.&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;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;count boxes and cartons&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_vepo LINES i_boxes.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_cartons LINES i_cartons.&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;Convert cartons and boxes field values to CHARACTER type FORMAT.&lt;/P&gt;&lt;/LI&gt;&lt;UL&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;In order to save the output values to the output fields, the&lt;/P&gt;&lt;/LI&gt;&lt;LI level="2" type="ul"&gt;&lt;P&gt;fields are converted to CHARACTER type formats.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  MOVE: i_cartons TO c_cartons,&lt;/P&gt;&lt;P&gt;        i_boxes TO c_boxes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;BOXES&amp;amp;'&lt;/P&gt;&lt;P&gt;                               c_boxes.&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;CARTONS&amp;amp;'&lt;/P&gt;&lt;P&gt;                               c_cartons.&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BOXES_AND_CARTONS&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  BILL_OF_LADING&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 bill_of_lading.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE bolnr&lt;/P&gt;&lt;P&gt;      FROM likp&lt;/P&gt;&lt;P&gt;      INTO c_bolnr&lt;/P&gt;&lt;P&gt;      WHERE vbeln = vbpla-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;BILL_OF_LADING&amp;amp;'&lt;/P&gt;&lt;P&gt;                               c_bolnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " BILL_OF_LADING&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  PACKING_DIMENSIONS&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 packing_dimensions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; CLEAR: T_BOXES,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        T_PACK_DIM.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; REFRESH: T_BOXES,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          T_PACK_DIM.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; SELECT VENUM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        LAENG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        BREIT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        HOEHE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        MEABM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FROM VEKP&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; INTO CORRESPONDING FIELDS OF TABLE T_BOXES&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; FOR ALL ENTRIES IN T_VEPO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; WHERE VENUM = T_VEPO-VENUM.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; LOOP AT T_BOXES.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   READ TABLE T_PACK_DIM WITH KEY LAENG = T_BOXES-LAENG&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  BREIT = T_BOXES-BREIT&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  HOEHE = T_BOXES-HOEHE&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                  MEABM = T_BOXES-MEABM.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF SY-SUBRC = 0.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-BOX_QTY = T_PACK_DIM-BOX_QTY + 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     MODIFY T_PACK_DIM INDEX SY-TABIX.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-LAENG = T_BOXES-LAENG.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-BREIT = T_BOXES-BREIT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-HOEHE = T_BOXES-HOEHE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-MEABM = T_BOXES-MEABM.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     T_PACK_DIM-BOX_QTY = 1.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     APPEND T_PACK_DIM.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; LOOP AT T_PACK_DIM.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   AT FIRST.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      element = 'PACKING_DIMENSIONS_HEADER'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDAT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   CLEAR: VEKP,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          C_BOXES.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   VEKP-LAENG = T_PACK_DIM-LAENG.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   VEKP-BREIT = T_PACK_DIM-BREIT.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   VEKP-HOEHE = T_PACK_DIM-HOEHE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   VEKP-MEABM = T_PACK_DIM-MEABM.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   MOVE: T_PACK_DIM-BOX_QTY TO C_BOXES.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM SET_TEXTSYMBOL USING '&amp;amp;BOX_QTY&amp;amp;'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                                C_BOXES.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   IF VEKP-LAENG &amp;lt;&amp;gt; 0 AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      VEKP-BREIT &amp;lt;&amp;gt; 0 AND&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      VEKP-HOEHE &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      element = 'PACKING_DIMENSIONS'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDLOOP.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " PACKING_DIMENSIONS&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  REMARKS&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 remarks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'WRITE_FORM'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      element = 'REMARKS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " REMARKS&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  SHIPPING_POINT_TEL_NO&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 shipping_point_tel_no.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE adrnr&lt;/P&gt;&lt;P&gt;  FROM tvst&lt;/P&gt;&lt;P&gt;  INTO v_adrnr&lt;/P&gt;&lt;P&gt;  WHERE vstel = vbpla-vstel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE tel_number&lt;/P&gt;&lt;P&gt;  FROM adrc&lt;/P&gt;&lt;P&gt;  INTO adrc-tel_number&lt;/P&gt;&lt;P&gt;  WHERE addrnumber = v_adrnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " SHIPPING_POINT_TEL_NO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  CUSTOMER_MATERIAL&lt;/P&gt;&lt;P&gt;*&amp;amp;----&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;      text&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&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;FORM customer_material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: v_kdmat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;begin of mod&lt;/STRONG&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF vbdkl-lfart = 'LO'.&lt;/P&gt;&lt;P&gt;    SELECT SINGLE kdmat postx&lt;/P&gt;&lt;P&gt;      INTO (v_kdmat , v_arktx)&lt;/P&gt;&lt;P&gt;        FROM knmt&lt;/P&gt;&lt;P&gt;        WHERE vkorg = vbdkl-vkorg&lt;/P&gt;&lt;P&gt;        AND   vtweg = '01'&lt;/P&gt;&lt;P&gt;        AND   kunnr = vbdkl-kunag&lt;/P&gt;&lt;P&gt;        AND   matnr = vbplp-matnr.&lt;/P&gt;&lt;P&gt;    IF NOT v_kdmat IS INITIAL.&lt;/P&gt;&lt;P&gt;      vbplp-matnr = v_kdmat.&lt;/P&gt;&lt;P&gt;      vbplp-arktx = v_arktx.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT SINGLE kdmat&lt;/P&gt;&lt;P&gt;      FROM lips&lt;/P&gt;&lt;P&gt;      INTO v_kdmat&lt;/P&gt;&lt;P&gt;      WHERE vbeln = vbplp-vbeln AND&lt;/P&gt;&lt;P&gt;            posnr = vbplp-posnr AND&lt;/P&gt;&lt;P&gt;            matnr = vbplp-matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;**ramarajg&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; IF v_kdmat &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM set_textsymbol USING '&amp;amp;MATERIAL&amp;amp;'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               v_kdmat.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ELSE.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;   PERFORM set_textsymbol USING '&amp;amp;MATERIAL&amp;amp;'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                               vbplp-matnr.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; ENDIF.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " CUSTOMER_MATERIAL&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 ITEM_WEIGHTS                                             *&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;UL&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  IN_TAB4                                                       *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  OUT_TAB4                                                      *&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 item_weights TABLES in_tab4 STRUCTURE itcsy&lt;/P&gt;&lt;P&gt;out_tab4 STRUCTURE itcsy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: n_vbeln(10) TYPE n,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;       v_btgew LIKE likp-btgew,&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        v_ntgew1 LIKE vekp-ntgew,&lt;/P&gt;&lt;P&gt;        v_btgew1 LIKE likp-btgew,&lt;/P&gt;&lt;P&gt;        v_ntgew2 LIKE likp-ntgew,&lt;/P&gt;&lt;P&gt;        v_btgew2 LIKE likp-btgew,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        BEGIN OF t_venum OCCURS 0,&lt;/P&gt;&lt;P&gt;          venum LIKE vepo-venum,&lt;/P&gt;&lt;P&gt;        END OF t_venum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE in_tab4 INDEX 1.&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;  MOVE in_tab4-value TO n_vbeln.       "convert to numeric type.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;start of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;*break ramarajg.&lt;/P&gt;&lt;P&gt;  CLEAR t_deliveryflow[].&lt;/P&gt;&lt;P&gt;  SELECT vbeln&lt;/P&gt;&lt;P&gt;  FROM vbfa&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE t_deliveryflow&lt;/P&gt;&lt;P&gt;  WHERE vbelv = n_vbeln AND vbtyp_n = c_x.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Select data&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  DESCRIBE TABLE t_deliveryflow LINES v_lin.&lt;/P&gt;&lt;P&gt;  CHECK v_lin GT 0.&lt;/P&gt;&lt;P&gt;  SELECT venum&lt;/P&gt;&lt;P&gt;  FROM vepo&lt;/P&gt;&lt;P&gt;  INTO CORRESPONDING FIELDS OF TABLE t_venum&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN t_deliveryflow&lt;/P&gt;&lt;P&gt;  WHERE venum = t_deliveryflow-vbeln.&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; SELECT VENUM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FROM VEPO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;INTO CORRESPONDING FIELDS OF TABLE T_VENUM&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;WHERE VBELN = N_VBELN.&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;end of change for DEVK937590&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR v_btgew.&lt;/P&gt;&lt;P&gt;  DESCRIBE TABLE t_venum LINES v_lin.                       "DEVK937590&lt;/P&gt;&lt;P&gt;  CHECK v_lin GT 0.                                         "DEVK937590&lt;/P&gt;&lt;P&gt;  SELECT ntgew&lt;/P&gt;&lt;P&gt;  FROM vekp&lt;/P&gt;&lt;P&gt;  INTO v_btgew&lt;/P&gt;&lt;P&gt;  FOR ALL ENTRIES IN t_venum&lt;/P&gt;&lt;P&gt;  WHERE venum = t_venum-venum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    v_btgew1 = v_btgew1 + v_btgew.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SUM( ntgew )&lt;/P&gt;&lt;P&gt;  FROM lips&lt;/P&gt;&lt;P&gt;  INTO v_ntgew1&lt;/P&gt;&lt;P&gt;  WHERE vbeln = n_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE ntgew&lt;/P&gt;&lt;P&gt;                btgew&lt;/P&gt;&lt;P&gt;  FROM likp&lt;/P&gt;&lt;P&gt;  INTO (v_ntgew2, v_btgew2)&lt;/P&gt;&lt;P&gt;  WHERE vbeln = n_vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF v_ntgew1 = v_ntgew2 AND&lt;/P&gt;&lt;P&gt;     v_btgew1 = v_btgew2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    READ TABLE out_tab4 WITH KEY name = 'PRINT_WEIGHT'.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0 .&lt;/P&gt;&lt;P&gt;      out_tab4-value = 'X'.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      out_tab4-value = ' '.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;    MODIFY out_tab4 INDEX sy-tabix.&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;ENDFORM.                    "item_weights&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  GROSS_WEIGHT&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 gross_weight.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: v_btgew.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE btgew&lt;/P&gt;&lt;P&gt;                gewei&lt;/P&gt;&lt;P&gt;  FROM  likp&lt;/P&gt;&lt;P&gt;  INTO (v_btgew, v_gewei)&lt;/P&gt;&lt;P&gt;  WHERE vbeln = vbpla-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;GROSS_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_btgew.&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;GROSS_WEIGHT_UNIT&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_gewei.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="7" type="ul"&gt;&lt;P&gt;changes added by RAMARAJG starts here&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  clear v_grwt.&lt;/P&gt;&lt;P&gt;  clear v_gunit.&lt;/P&gt;&lt;P&gt;  v_grwt = v_btgew.&lt;/P&gt;&lt;P&gt;  v_gunit = v_gewei.&lt;/P&gt;&lt;P&gt;  if v_gunit = 'G'.&lt;/P&gt;&lt;P&gt;     v_grwt = v_grwt / 1000.&lt;/P&gt;&lt;P&gt;     v_gunit = 'KG'.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;GROSS_WEIGHT1&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_grwt.&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;GROSS_WEIGHT_UNIT1&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_gunit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI level="7" type="ul"&gt;&lt;P&gt;changes added by RAMARAJG ends here&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " GROSS_WEIGHT&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  GET_END_CUSTOMER_PO&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;      Retrieve End Customer PO#&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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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_end_customer_po.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: v_zvgbel LIKE lips-vgbel.&lt;/P&gt;&lt;P&gt;  DATA v_bstkd_e TYPE bstkd_e.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: v_bstkd_e, v_zvgbel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE vgbel INTO v_zvgbel&lt;/P&gt;&lt;P&gt;    FROM lips&lt;/P&gt;&lt;P&gt;      WHERE vbeln = vbpla-vbeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE bstkd_e INTO v_bstkd_e&lt;/P&gt;&lt;P&gt;  FROM vbkd&lt;/P&gt;&lt;P&gt;  WHERE vbeln = v_zvgbel&lt;/P&gt;&lt;P&gt;  AND bstkd_e &amp;gt; ''.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;V_BSTKD_E&amp;amp;'&lt;/P&gt;&lt;P&gt;                            v_bstkd_e.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " GET_END_CUSTOMER_PO&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DEVK9A0EB4 - Add a form&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  shipper_acct&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;      Get shipper account at customer&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 shipper_acct TABLES in_tab1 TYPE ty_itcsy&lt;/P&gt;&lt;P&gt;                        out_tab1 TYPE ty_itcsy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA: v_kunag TYPE likp-kunag,  " Sold to party&lt;/P&gt;&lt;P&gt;        v_eikto TYPE knvv-eikto.  "Shipper account number at customer&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; DATA v_strlen(10) TYPE c.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA wa_tab1 TYPE itcsy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  DATA n_vbeln(10) TYPE n.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get kunnr  from likp&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR wa_tab1.&lt;/P&gt;&lt;P&gt;  READ TABLE in_tab1 INTO wa_tab1 WITH KEY name = 'VBPLA-VBELN'.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;    n_vbeln = vbpla-vbeln.&lt;/P&gt;&lt;P&gt;  ENDIF.&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;  SELECT kunag&lt;/P&gt;&lt;P&gt;  FROM likp&lt;/P&gt;&lt;P&gt;  INTO v_kunag&lt;/P&gt;&lt;P&gt;  WHERE vbeln = n_vbeln.&lt;/P&gt;&lt;P&gt;  ENDSELECT.&lt;/P&gt;&lt;P&gt;  IF sy-subrc = 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Get shipper account&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT eikto INTO v_eikto&lt;/P&gt;&lt;P&gt;    FROM knvv&lt;/P&gt;&lt;P&gt;    WHERE kunnr = v_kunag.&lt;/P&gt;&lt;P&gt;    ENDSELECT.&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;*append  the field  to the out_tab1 printing output&lt;/P&gt;&lt;P&gt;      wa_tab1-name = 'VKNN-EIKTO'.&lt;/P&gt;&lt;P&gt;      wa_tab1-value = v_eikto.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      APPEND wa_tab1 TO out_tab1.&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;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "shipper_acct&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********DEVK9A0IK7 starts here&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  net_weight&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 net_weight .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR: v_btgew.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SELECT SINGLE ntgew&lt;/P&gt;&lt;P&gt;                gewei&lt;/P&gt;&lt;P&gt;  FROM  likp&lt;/P&gt;&lt;P&gt;  INTO (v_netwt, v_unit)&lt;/P&gt;&lt;P&gt;  WHERE vbeln = vbpla-vbeln.&lt;/P&gt;&lt;P&gt;  if v_unit = 'G'.&lt;/P&gt;&lt;P&gt;    v_netwt = v_netwt / 1000.&lt;/P&gt;&lt;P&gt;    v_unit = 'KG'.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;NET_WEIGHT&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_netwt.&lt;/P&gt;&lt;P&gt;  PERFORM set_textsymbol USING '&amp;amp;NET_WEIGHT_UNIT&amp;amp;'&lt;/P&gt;&lt;P&gt;                               v_unit.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " net_weight&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;***********DEVK9A0IK7 ends here&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  item_list&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 item_list.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;move vbplp-posnr to wa_item-posnr1.&lt;/P&gt;&lt;P&gt;*move material to wa_itab1-material1.&lt;/P&gt;&lt;P&gt;move vbplp-brgew to wa_item-brgew1.&lt;/P&gt;&lt;P&gt;move vbplp-vemeh to  wa_item-vemeh1.&lt;/P&gt;&lt;P&gt;*move item_weight to wa_itab1-item_weight1.&lt;/P&gt;&lt;P&gt;*move gross_weight_unit to wa_itab1-gross_weight_unit1.&lt;/P&gt;&lt;P&gt;move v_arktx to wa_item-arktx1.&lt;/P&gt;&lt;P&gt;if v_kdmat &amp;lt;&amp;gt; ' '.&lt;/P&gt;&lt;P&gt;move v_kdmat to wa_item-material1.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;move vbplp-matnr to wa_item-material1.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;wa_item-vboxcnt = 1.&lt;/P&gt;&lt;P&gt;append wa_item TO it_item.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR : wa_item1, wa_item.&lt;/P&gt;&lt;P&gt;  it_item1[] = it_item[].&lt;/P&gt;&lt;P&gt;  REFRESH it_item[].&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;break-point.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform.                    " item_list&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  TOTAL_WEIGHT&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;      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;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        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 TOTAL_WEIGHT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT it_item1 into wa_item1.&lt;/P&gt;&lt;P&gt;    READ TABLE it_item INTO wa_item WITH KEY material1 = wa_item1-material1 posnr1 = wa_item1-posnr1.&lt;/P&gt;&lt;P&gt;    IF sy-subrc NE 0.&lt;/P&gt;&lt;P&gt;      APPEND wa_item1 TO it_item.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;      wa_item1-brgew1 =   wa_item1-brgew1 +  wa_item-brgew1.&lt;/P&gt;&lt;P&gt;      Wa_item1-vboxcnt = wa_item1-vboxcnt + wa_item-vboxcnt.&lt;/P&gt;&lt;P&gt;      MODIFY it_item FROM wa_item1 TRANSPORTING brgew1 vboxcnt&lt;/P&gt;&lt;P&gt;                     WHERE material1 = wa_item1-material1&lt;/P&gt;&lt;P&gt;                          AND posnr1 = wa_item1-posnr1.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;endform.                    " TOTAL_WEIGHT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 24 Oct 2007 04:53:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/script-print-program-logic/m-p/2903237#M682868</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-24T04:53:04Z</dc:date>
    </item>
    <item>
      <title>Re: Script Print Program Logic.......</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/script-print-program-logic/m-p/2903238#M682869</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the Logic to be added is this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;b.	Remove the carton ID &amp;amp; box ID from the print out,  the line item should just print the total delivery quantity, do not split the printing by different box ID or carton ID.&lt;/P&gt;&lt;P&gt;i.	Delivery Item= LIPS-POSNR&lt;/P&gt;&lt;P&gt;ii.	Delivery Qty for Item = LIPSD-G_LFIMG= LIPSD-PIKMG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;c.	Add Total Boxes for each item, this should be a calculation field for each material HUMV4-MATNR, count how many handling unit  VEKPVB-EXIDV has been used to pack the same material , output the total boxes for each delivery item.&lt;/P&gt;&lt;P&gt;d.	Add Gross Weight for each  item , retrieve data from LIPS-BRGEW&lt;/P&gt;&lt;P&gt;e.	Add Net weight to the print out, below the gross weight &amp;#150; retrieve data from LIKP-NTGEW&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 24 Oct 2007 05:00:23 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/script-print-program-logic/m-p/2903238#M682869</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-10-24T05:00:23Z</dc:date>
    </item>
  </channel>
</rss>

