Columns in horizontal format

I have the following SELECT (that I use in Crystal Report to print my Report):
SELECT PCMS_CHDOC_DATA.CH_UID, PCMS_CHDOC_DATA.CH_DOC_ID, PCMS_CHDOC_DATA.STATUS,
               PCMS_CHDOC_DATA.TOOL, PCMS_CHDOC_RELATED_ITEMS.FROM_CH_UID,
               PCMS_CHDOC_RELATED_ITEMS.TO_ITEM_UID, PCMS_ITEM_DATA.ITEM_UID,
               PCMS_ITEM_DATA.LIB_FILENAME, PCMS_ITEM_DATA.DESCRIPTION
  FROM PCMS_CHDOC_DATA
LEFT JOIN PCMS_CHDOC_RELATED_ITEMS ON  
                  PCMS_CHDOC_DATA.CH_UID = PCMS_CHDOC_RELATED_ITEMS.FROM_CH_UID
LEFT JOIN PCMS_ITEM_DATA ON
                   PCMS_CHDOC_RELATED_ITEMS.TO_ITEM_UID = PCMS_ITEM_DATA.ITEM_UID
WHERE PCMS_CHDOC_DATA.STATUS  'CLOSED' AND
               PCMS_CHDOC_DATA.TOOL = 'ICD'
ORDER BY PCMS_CHDOC_DATA.CH_DOC_ID;
My problem is that there are several values of  PCMS_ITEM_DATA.LIB_FILENAME for each PCMS_CHDOC_DATA.CH_DOC_ID and I would like to concatenate all the LIB_FILENAME of a value of CH_DOC_ID.
So, if for example for CH_DOC_ID = 1, LIB_FILENAME has the values 'a.txt' and 'b.txt' and 'c.doc' I would like to obtain: CH_DOC_ID = 1 and LIB_FILENAME = 'a.txt, b.txt, c.doc' and print these values in ocly one row.
Is it possible to do it?

How about creating a group on CH_DOC_ID and creating a formula to assemble each of the LIB_FILENAMES.  You will need to set a flag in the group footer to reset the string.
In the Group CH_DOC_ID header:
@assemble lib_filename
WhilePrintingRecords;
stringVar lib_filenames;
booleanVar reset_libfilenames;
if reset_libfilenames
     then (
          lib_filenames := "";
          reset_libfilenames := False;
lib_filenames := lib_filenames + {LIB_FILENAME} + ", "
In the Group CH_DOC_ID footer:
@Reset lib_filename
WhilePrintingRecords;
booleanVar reset_libfilenames := True;
Now you will need to display the string in the group footer, but first you must take off the last comma and space.
@display lib_filenames
WhilePrintingRecords;
stringVar lib_filenames;
left(lib_filenames, length(lib_filenames) - 2)
Fuskie
Who hopes this helps...

Similar Messages

  • How to Output data in vertically from a horizontal format.

    Hello
    I have some difficulties how to display my data in my output table. I am greatful for
    every tips provided. The data in my it_tab is in a horizontal format but I want to
    display this data vertically in my output_tab.
    My it_tab looks like this:
    table: it_tab
    id   date   amnt
    011  2007   1200
    011  2008   1400
    011  2009   6700
    011  2010   3500
    012  2007   ---
    013  2007   3000
    013  2008   1300
    014  2007   1200
    014  2008   ---
    014  2009   9000
    015  2007   2500
    I would like my output_tab should look like this:
    table: t_output
    id  name  date amnt  date1  amnt1 date2  amnt2 date3  amnt3
    011 jx    2007 1200  2008   1400  2009   6700  2010   3500
    012 tx    --
    014 gx    2007 3000  2008   --    2009   9000   --    ---
    015 hx    2007 2500
    t_output already has some data init like id and name.
    This is what I have done but I don't output all the data as I want.
    clear w_output.
    loop at t_output into w_output.
    clear w_itab.
    loop at it_tab into w_itab where id = w_output-id.
    case sy-tabix.
    WHEN '1'.
    w_output-date = w_itab-date.
    w_output-amnt = w_itab-amnt.
    WHEN '2'.
    w_output-date1 = w_itab-date.
    w_output-amnt1 = w_itab-amnt.
    WHEN '3'.
    w_output-date2 = w_itab-date.
    w_output-amnt2 = w_itab-amnt.
    WHEN '4'.
    w_output-date3 = w_itab-date.
    w_output-amnt3 = w_itab-amnt.
    endcase.
    endloop.
    modify t_output from w_output.
    endloop.
    Could some body please tell me how to do this? I think many people in here have come
    across this type of problem before.
    Thank you all for helping out.
    Nadin

    Hi, Nadin!
    I suggest you to create a dynamic internal table with variable number of columns. You can do as follows:
    1. Create basic fieldcatalog for ALV list (or object) output
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
              EXPORTING i_structure_name       = 'ZYOUR_BASIC_STRUC'         
              CHANGING  ct_fieldcat = lt_fcat.
    2. Determine max number of columns (that is, max number of dates for each ID)
    SORT it_tab BY id.
    LOOP AT it_tab INTO is_tab.
      AT NEW id.
        ADD 1 TO l_count.
      ENDAT.
      AT END OF id.
        IF l_count > l_max_count.
          l_max_count = l_count.
        ENDIF.
        CLEAR l_count.
      ENDAT.
    ENDLOOP.
    3. Add one entry to fieldcat for each column
    DO l_max_count TIMES.
      l_index_char = sy-index.
      CONCATENATE 'DATE' l_index_char INTO ls_fcat-fieldname.
    *... other fieldcat fields, like texts etc.
      APPEND ls_fcat TO lt_fcat.
      CONCATENATE 'AMNT' l_index_char INTO ls_fcat-fieldname.
    *... other fieldcat fields, like texts etc.
      APPEND ls_fcat TO lt_fcat.
    ENDDO.
    4. Create dynamic table from fieldcat using:
    DATA: dt_outtab TYPE REF TO data. "IMPORTANT: make this declaration global, otherwise error
    FIELD-SYMBOLS: <table> TYPE STANDARD TABLE.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
           EXPORTING it_fieldcatalog = lt_fcat
           IMPORTING ep_table        = dt_outtab.
    ASSIGN dt_outtab->* TO <table>.
    5. Fill this table. To do this you need special techniques since you have a generic table with no static structure. For example:
    FIELD-SYMBOLS: <line>  TYPE ANY,
                   <field> TYPE ANY.
    DATA: l_field_inex TYPE i.
    LOOP AT it_tab INTO is_tab.
      AT NEW id.
        APPEND INITIAL LINE TO <table>.
        READ TABLE <table> INDEX sy-tfill ASSIGNING <line>.
        l_field_index = 3. "you start from 3rd field - #1 is ID, #2 is NAME
      ENDAT.
      ASSIGN COMPONENT l_field_index OF STRUCUTRE <line> TO <field>.
      <field> = is_tab-date.
      ADD 1 TO l_field_index.
      ASSIGN COMPONENT l_field_index OF STRUCUTRE <line> TO <field>.
      <field> = is_tab-amnt.
      ADD 1 TO l_field_index.
    ENDLOOP.
    6. Display your report in alv. You have valid fieldcat and output table which is created dynamically.
    CALL METHOD o_alv->set_table_for_first_display
              CHANGING  it_outtab       = <table>
                        it_fieldcatalog = lt_fcat.
    If you don't use ALV object but rather ALV list, it's similar. Just use corresponding functions for ALV creation and list display.
    Note that this is not a tested code. Just an idea to help you procede.
    <b><REMOVED BY MODERATOR></b>
    HTH.
    Regards,
    Igor
    Message was edited by:
            Alvaro Tejada Galindo

  • Display query columns in horizontal

    Hi all
    I'm creating a report using sql commands only(no report builder). I'd like to have my columns to be displayed in horizontal followed by its value. So far I've made it, however I can't get them to be displayed well where all the columns are in the same position as well as the results.
                     HECS:Higher Education Cafetaria Service
                                  Restaurant and Bar
    Membership Report
    Date:DateVar
         Member ID:        11
         Member Name:Donald Anatidae                      Position:Senior Lecturer
         Institution Name:UVan                  Department:Department of Computers
         Phone:03-6355-9876                                     Employment:Tenured
         Annual Fee:   $225.25                              Monthly Fee:     $1.88
         GST:    $22.53                                             GST:    $20.65
         Annual Fee|(including GST):   $247.Monthly Fee|(including GST):    $20.65
    -- Declaring variables
    COLUMN Date NOPRINT NEW_VALUE DateVar
    COLUMN ID NOPRINT NEW_VALUE IDVar
    COLUMN Name NOPRINT NEW_VALUE NameVar
    COLUMN Department NOPRINT NEW_VALUE DepartVar
    COLUMN Phone NOPRINT NEW_VALUE PhoneVar
    COLUMN Institution NOPRINT NEW_VALUE InstiVar
    COLUMN Position NOPRINT NEW_VALUE PosVar
    COLUMN Employment NOPRINT NEW_VALUE EmployVar
    COLUMN Annual_Fee NOPRINT NEW_VALUE AnnualVar
    COLUMN GST NOPRINT NEW_VALUE AGSTVar
    COLUMN Annual_GST NOPRINT NEW_VALUE AnnuaGSTVar
    COLUMN M_GST NOPRINT NEW_VALUE MgstVar
    COLUMN Month_Fee NOPRINT NEW_VALUE MonthFeeVar
    COLUMN Monthy_Gst NOPRINT NEW_VALUE MonthGstVar
    BREAK ON ID SKIP Page
    TTITLE CENTER 'HECS:Higher Education Cafetaria Service' SKIP 1 -
           CENTER 'Restaurant and Bar' SKIP 2 -
           LEFT 'Membership Report' SKIP 2 -
           LEFT 'Date:'DateVar SKIP 2 -
           LEFT COL 6 'Member ID:'IDVar SKIP 1 -
           LEFT ------------------------------------------------------------------------------ SKIP 1 -
           LEFT COL 6 'Member Name:' NameVar RIGHT 'Position:' PosVar SKIP 1-
           LEFT COL 6 'Institution Name:'InstiVar COL 15 RIGHT 'Department:'DepartVar SKIP 1 -
           LEFT COL 6 'Phone:'PhoneVar COL 15 RIGHT 'Employment:' EmployVar SKIP 1 -
           LEFT COL 6 'Annual Fee:'FORMAT $9,990.99 AnnualVar  -
           RIGHT 'Monthly Fee:'FORMAT $9,990.99 MonthFeeVar SKIP 1 -
           LEFT  COL 6 'GST:'FORMAT $9,990.99 AGSTVar  -
           RIGHT 'GST:'FORMAT $9,990.99 MonthGstVar SKIP 1 -
           LEFT ------------------------------------------------------------------------------ SKIP 1 -
           LEFT COL 6 'Annual Fee|(including GST):'FORMAT $9,990.99 AnnuaGSTVar  -
           RIGHT 'Monthly Fee|(including GST):'FORMAT $9,990.99 MonthGstVar  SKIP 1 -
           LEFT -------------------------------------------------------------------------------
    [\pre]
    I'd like to know is whether there is another way to display the columns in horizontal.
    Thanx                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    He gave you the general idea. The following takes it a step further.
    scott@ORA92> CLEAR  COLUMNS
    scott@ORA92> TTITLE OFF
    scott@ORA92> COLUMN today NEW_VALUE DateVar
    scott@ORA92> SELECT SYSDATE AS today FROM DUAL
      2  /
    TODAY
    17-APR-2006
    scott@ORA92> TTITLE CENTER 'HECS: Higher Education Cafetaria Service' SKIP 1 -
         CENTER 'Restaurant and Bar' SKIP 2scott@ORA92> COLUMN membership_report HEADING 'Membership Report||Date: &DateVar|'
    scott@ORA92> SELECT    'Member ID:   ' || e.empno
      2           || CHR(10)
      3           || '-------------------------------------------------------------'
      4           || CHR(10)
      5           || 'Member Name: ' || RPAD (e.ename, 20)  || 'Position:    ' || e.job
      6           || CHR(10)
      7           || 'Institution: ' || RPAD (d.deptno, 20) || 'Department:  ' || d.dname
      8           || CHR(10)
      9           || 'Salary:      ' || RPAD (TO_CHAR (e.sal, '$9,990.99'), 20)
    10           || 'Commission:  ' || TO_CHAR (e.comm, '$9,990.99')
    11           || CHR(10)
    12           || '-------------------------------------------------------------'
    13           || CHR(10)
    14           || 'Annual Fee:  ' || RPAD (TO_CHAR (e.sal, '$9,990.99'), 20)
    15           || 'Monthly Fee: ' || (TO_CHAR (e.sal/12, '$9,990.99'))
    16           || CHR(10)
    17           || '-------------------------------------------------------------'
    18           || CHR(10)
    19           || CHR(10)
    20           AS membership_report
    21  FROM   emp e, dept d
    22  WHERE  e.deptno = d.deptno
    23  /
                                  HECS: Higher Education Cafetaria Service
                                             Restaurant and Bar
    Membership Report
    Date: 17-APR-2006
    Member ID:   7369
    Member Name: SMITH               Position:    CLERK
    Institution: 20                  Department:  RESEARCH
    Salary:         $800.00          Commission:
    Annual Fee:     $800.00          Monthly Fee:     $66.67
    Member ID:   7499
    Member Name: ALLEN               Position:    SALESMAN
    Institution: 30                  Department:  SALES
    Salary:       $1,600.00          Commission:     $300.00
    Annual Fee:   $1,600.00          Monthly Fee:    $133.33
    Member ID:   7521
    Member Name: WARD                Position:    SALESMAN
    Institution: 30                  Department:  SALES
    Salary:       $1,250.00          Commission:     $500.00
    Annual Fee:   $1,250.00          Monthly Fee:    $104.17
    Member ID:   7566
    Member Name: JONES               Position:    MANAGER
    Institution: 20                  Department:  RESEARCH
    Salary:       $2,975.00          Commission:
    Annual Fee:   $2,975.00          Monthly Fee:    $247.92
    Member ID:   7654
    Member Name: MARTIN              Position:    SALESMAN
    Institution: 30                  Department:  SALES
    Salary:       $1,250.00          Commission:   $1,400.00
    Annual Fee:   $1,250.00          Monthly Fee:    $104.17
    Member ID:   7698
    Member Name: BLAKE               Position:    MANAGER
    Institution: 30                  Department:  SALES
    Salary:       $2,850.00          Commission:
    Annual Fee:   $2,850.00          Monthly Fee:    $237.50
    Member ID:   7782
    Member Name: CLARK               Position:    MANAGER
    Institution: 10                  Department:  ACCOUNTING
    Salary:       $2,450.00          Commission:
    Annual Fee:   $2,450.00          Monthly Fee:    $204.17
    Member ID:   7788
    Member Name: SCOTT               Position:    ANALYST
    Institution: 20                  Department:  RESEARCH
    Salary:       $3,000.00          Commission:
    Annual Fee:   $3,000.00          Monthly Fee:    $250.00
    Member ID:   7839
    Member Name: KING                Position:    PRESIDENT
    Institution: 10                  Department:  ACCOUNTING
    Salary:       $5,000.00          Commission:
    Annual Fee:   $5,000.00          Monthly Fee:    $416.67
    Member ID:   7844
    Member Name: TURNER              Position:    SALESMAN
    Institution: 30                  Department:  SALES
    Salary:       $1,500.00          Commission:       $0.00
    Annual Fee:   $1,500.00          Monthly Fee:    $125.00
    Member ID:   7876
    Member Name: ADAMS               Position:    CLERK
    Institution: 20                  Department:  RESEARCH
    Salary:       $1,100.00          Commission:
    Annual Fee:   $1,100.00          Monthly Fee:     $91.67
    Member ID:   7900
    Member Name: JAMES               Position:    CLERK
    Institution: 30                  Department:  SALES
    Salary:         $950.00          Commission:
    Annual Fee:     $950.00          Monthly Fee:     $79.17
    Member ID:   7902
    Member Name: FORD                Position:    ANALYST
    Institution: 20                  Department:  RESEARCH
    Salary:       $3,000.00          Commission:
    Annual Fee:   $3,000.00          Monthly Fee:    $250.00
    Member ID:   7934
    Member Name: MILLER              Position:    CLERK
    Institution: 10                  Department:  ACCOUNTING
    Salary:       $1,300.00          Commission:
    Annual Fee:   $1,300.00          Monthly Fee:    $108.33
    14 rows selected.null

  • Is there a way to edit a movie clip from the horizontal format to a vertical format?

    Is there a way to edit a movie clip in iphoto that I may change the horizontal format to a verticle format?

    You need to use a video editor like iMovie or QuicktimePro. OR an app like this:
    https://www.macupdate.com/app/mac/39994/video-rotate

  • How do I save a PDF as an excel file when the PDF is horizontal. Adobe tries to rotate the page, but the data is entered in an  horizontal format.

    How do I save a PDF as an excel file when the PDF is horizontal. Adobe tries to rotate the page, but the data is entered in an  horizontal format.

    Thanks for the quick reply.  I figured out how to get the desired results by using tagging.  For anyone who may reference this post in the future, I went to "Customize" in the top right corner of Adobe, then selected "Create new tool set...", looked under "accessiblity and found the "tag" option.  Hit ok, tag is added to the toolbar.  Then I highlighted the dataset in the PDF that was relevant to the output format, then clicked "tag", saved as spreadsheet.  Sorry I can't provide more details on how tagging works or if there's a more elegant solution available, but I'm sure one's out there.

  • Matrix report data with summary column in excel format

    Hi ,
    I want to display output of matrix report with summary column in excel format.
    I have tried using spreadsheet but column header and actual data is displaying in proper order.
    Please tell me the way how to do this ASAP.
    Thanks in advance.

    Hi ,
    I want to display output of matrix report with summary column in excel format.
    I have tried using spreadsheet but column header and actual data is displaying in proper order.
    Please tell me the way how to do this ASAP.
    Thanks in advance.

  • Column in DATE format

    Hello Everybody
    I have a report did Apex, this report has a column which data type is DATE but by default the Apex put it in the format : DD-MM-YYYY HH:MI:SS
    But I only want that his column has the format DD/MM/YYYY
    I know that is posible convert this field using the function TO_CHAR(date, format) but in the report I want to sort this field considering that this filed is in date data type not in char.
    Also I know that I can use the function EXTRACT for concatening the day, month and year and after convert to date in the format 'dd/mm/yyyy'; but I don´t want to write many code.
    I don't want to do some like this:
    TO_DATE(
    EXTRACT( 'DAY' FROM DateFiled )||'/'|| EXTRACT( 'MONTH' FROM DateFiled )||'/'|| EXTRACT( 'YEAR' FROM DateFiled ), 'DD/MM/YYYY' )
    Do you know how to convert to this date format (DD/MM/YYYY) preserving the format?
    I expect your prompt reply.
    Any help will be very appreciated.
    Best Regards

    Hi Eric
    One of the really cool features of the later versions of APEX is the ability to set a default "Application Date Format".
    This is done in the Application xx>Shared Components>Definition then select the "Globalization" tab.
    You can select from a list of pre-defined date formats, or enter your own.
    My preference is "DD-Mon-YYYY" which is not in the list.
    Just leave your date fields as regular DATE type in the select (no formatting in the select).
    This Application Date Format is then used as the default for ALL dates for which you don't specifically set (another) date format
    This is also selecable in the Display options of a "Date Picker (Use Application Date Format)" LOV - for any date page items that you want to provide a date picker.
    This really simplifies the effort in getting a consistent look and feel - and keeping a constant standard throughout the application.
    The other benefit is that you can make a change in one place, and ALL the dates (without a specific date format specification) will change format - just like that.
    This is just one of the features that makes APEX the most productive - and cool - systems around.
    Enjoy!
    Mike

  • Changing page templates to horizontal format

    Is it possible to change existing page templates to a horizontal format, or to create a custom template that is horizontal using either iweb, photoshop or illustrator.
    I have tried playing around with the content width and height, but images and text are simply cut off. I have just begun to play around with this and the iweb help hasn't been of much help.
    Any advice or tutorial or etc.,. anyone could point me to regarding this would be greatly appreciated! Thanks!
    Cheers!
    fotobonbon

    You appear to know how to adjust the width of a page, it sounds as though height is your problem. Height is not really all that relevent, because whatever height you set your page at, it will resize if you exceed your settings.
    That being said, sometimes it won't and it depends on what objects you are using. If you find that pictures etc are cut off because of the height you have set, create an empty text box and move it down the page, this will make the page longer so you can see your pictures.

  • Have to Display Transfer orders in horizontal format in script outputlayout

    Hi,
    I had a problem, I have to display Transfer Orders in Horizontal format in Script Out put layout.
    For this i need a logic for displaying in horizontal way..
    Can you suggest anything ?
    Thanks a lot .....

    Hi ,
    Example think that each Transfer order have different values and this form is displaying all this details in single layout..
    If I have different Transfer order in internal table it displaying in form as:
    1) Transfer order  3) Transfer order
    2) Transfer order  4) Transfer order
    But i need the out put as given below..
    1) Transfer order  2) Transfer order
    3) Transfer order  4) Transfer order
    So kindly suggest  me....
    thanking you..........

  • "row column to range format.vi"

    Hello,
    When I try to run my program, I cannot find the row column to range format.vi in the excelexamples.llb.  I must not have saved th vi.  I was unable to find it in the llb now. What can I do?
    CLD Certified 2014

    I found it here: http://zone.ni.com/devzone/cda/epd/p/id/3756

  • How to download data into  two different columns 2003 excel format in ole

    Hi ALL
    when we download data into excel using ole with delimiter it works fine in 2007 but when we check this with 2003 format
    both fields come in only one column .Can any one suggest  
      CONCATENATE WA_ALL-PERNR LV_ICNUM INTO WA_PERNR SEPARATED BY W_DELI   IN CHARACTER MODE.

    If you're already using OLE, you can fill in value for each cell separately instead of using a delimiter. Something like this fragment:
    FORM fill_cell USING p_row p_col p_value.
      CALL METHOD OF obj_excel 'CELLS' = obj_cell
        EXPORTING
        #1 = p_row
        #2 = p_col.
      SET PROPERTY OF obj_cell 'VALUE' = p_value.
    ENDFORM.                    "fill_cell

  • Vertical allignment of columns in tabular format of report in obiee 10g

    Hi,
    I have a client requirement in which the colums are to be alligned vertically instead of being displayed horizontallty which is the default format in obiee.
    Can anyone help me in achieving this requirement .
    below goes the format of report we need in our project :
    Column Name Value
    Trade Summary:     
    Counterparty:     [Counterparty Name]
    Trade ID/ Global ID:      [Trade ID / Global ID]
    Trade Date:     [MM/DD/YYYY]
    Settlement Date:     [MM/DD/YYYY]
    Notional:     [CCY2] [Notional] <- show the non delivery currency
    Thanks,
    Mayuri Shah

    Hi,
    Change the columns as rows and rows as columns in the pivot view properties.You can display all the columns as rows and data as columns.
    If you want display the column data in sections place required columns in section .
    mark if helpful/correct..
    thanks,
    prassu

  • ALV  display for  row  s   and columns in this format.have ur full points..

    Hi ALL
      I have to dispalay data in the ALV format as :
    Basic
    DA
    HRA
    PF
    VPF
    20000
    500
    5000
    | 1500     | 600  |          |
    Details :  Basic   HRA in one Row and   PF , VPF in  second Row.
    The Amount  regarding htese fields are also displayed in the next rows for all  emp. numbers.
    its urgent for me and need helpful answers...
    Regards
    Lakhan

    see the attached code it will display the hierarchial display as per your need
    change the internal tables with dat of your own orgn structure and pass it to the fun module.
    Description : Pick Status Report
    This is an ALV report using the heirarchical ALV list display. The
    report selects all deliveries that fulfil the selection criteria
    and displays a summary of all items in that delivery with reference
    to certain statuses: overall status, goods issue status, transfer
    order status, load to pallet status, pallet count status, loaded to
    van status, van manifest printed status and end of day manifest
    printed status. These statuses have been defined by the business.
    There is extra functionality required to trigger printing of the van
    and end of day manifests from this report, and to set the loading
    end status of a shipment if the last handling unit of a particular
    shipment has been loaded onto a van for which the van manifest has
    been triggered.
    REPORT zwmr_pick_status_report NO STANDARD PAGE HEADING
    MESSAGE-ID zw.
    Type Pools
    TYPE-POOLS: icon, slis.
    Tables
    TABLES: tvst,
    likp,
    t30b,
    vekp,
    *{ INSERT UKMK900355 4
    zhu_to_link, "AS03
    *} INSERT
    zpallettr,
    vttk, "MB01
    zvantr.
    Types
    TYPES:
    BEGIN OF ty_data,
    lgtor LIKE likp-lgtor, " door
    vbeln LIKE likp-vbeln, " delivery
    wbstk LIKE vbuk-wbstk, " Goods movement status
    kostk LIKE vbuk-kostk, " Picking status
    posnr LIKE lips-posnr, " item
    route LIKE likp-route, " route
    wadat LIKE likp-wadat, " goods issue date
    lvsta LIKE vbup-lvsta, " warehouse status
    packvorschr LIKE vekp-packvorschr, " pack mnemonic
    exidv LIKE vekp-exidv, " handling unit
    zpallet_no(10), "like zpallettr-zpallet_no, " pallet no
    zdep_point LIKE zpallettr-zdep_point, "Departur Point "Jvdm01
    zcount_check LIKE zpallettr-zcount_check," count check flag
    zvan_no(10), "like zvantr-zvan_no, " van no
    zvan_print LIKE zvantr-zvan_print, " van manifest print
    tknum LIKE vttk-tknum, " Shipment No "ANV 11523
    zeod_print LIKE zvantr-zeod_print, " eod manifest print
    zzpackclass LIKE vekp-zzpackclass, " package class
    zzti LIKE vekp-zzti, " T.I. value
    vstel LIKE likp-vstel, "Shipping point RM050906
    anzpk TYPE znopack, "No of packages in dlv MB01+
    END OF ty_data.
    TYPES:BEGIN OF x_likp ,
    vbeln LIKE likp-vbeln,
    vstel LIKE likp-vstel, "RM050906
    lgtor LIKE likp-lgtor,
    zzroute2lgtor LIKE likp-zzroute2lgtor, "MB01
    route LIKE likp-route,
    wadat LIKE likp-wadat,
    zz2route LIKE likp-zz2route, "MB01+
    zzexproute LIKE likp-zzexproute, "MB01+
    zzroute2 LIKE likp-zzroute2, "MB01+
    anzpk LIKE likp-anzpk,
    END OF x_likp.
    TYPES: BEGIN OF x_vbuk,
    vbeln TYPE vbuk-vbeln,
    wbstk TYPE vbuk-wbstk, " Goods movement status
    kostk TYPE vbuk-kostk, " Picking status
    END OF x_vbuk.
    TYPES: BEGIN OF x_lips,
    vbeln TYPE lips-vbeln, " delivery
    posnr TYPE lips-posnr, " item
    pstyv TYPE lips-pstyv,
    matnr TYPE lips-matnr,
    charg TYPE lips-charg,
    END OF x_lips.
    TYPES: BEGIN OF x_vbup,
    vbeln TYPE vbup-vbeln, " delivery
    posnr TYPE vbup-posnr, " item
    lvsta TYPE vbup-lvsta, " warehouse status
    END OF x_vbup.
    TYPES: BEGIN OF x_vepo,
    venum TYPE vepo-venum, "Internal Handling Unit
    Number
    vepos TYPE vepo-vepos, "Handling Unit Item
    vbeln TYPE vepo-vbeln, " delivery
    posnr TYPE vepo-posnr, " item
    exidv TYPE vekp-exidv,
    END OF x_vepo.
    TYPES: BEGIN OF x_vepo1,
    venum TYPE vekp-venum, "Internal Handling Unit
    Number
    exidv TYPE vekp-exidv,
    END OF x_vepo1.
    Start of changes by ANV SR#11523
    TYPES: BEGIN OF x_vttp,
    tknum TYPE tknum, " Shipment No
    tpnum TYPE tpnum, " Item No
    vbeln TYPE vbup-vbeln, " delivery
    laufk LIKE vttk-laufk, " leg indicator MB01+
    END OF x_vttp.
    End of changes by ANV SR#11523
    Data
    RANGES: r_del FOR likp-vbeln,
    r_lgtor FOR likp-lgtor.
    RANGES: r_vanno FOR zvantr-zvan_no,
    r_palno FOR zpallettr-zpallet_no.
    DATA: BEGIN OF number_range OCCURS 0,
    mark(1),
    id(3),
    num(10) TYPE n,
    desc LIKE zpalletmd-zdesc,
    END OF number_range.
    DATA: t_disp_tab TYPE STANDARD TABLE OF zpickdisp,
    t_data_tab TYPE ty_data OCCURS 0 WITH HEADER LINE,
    it_likp TYPE x_likp OCCURS 0 WITH HEADER LINE, "SUM
    it_vbuk TYPE x_vbuk OCCURS 0 WITH HEADER LINE, "SUM
    it_lips TYPE x_lips OCCURS 0 WITH HEADER LINE, "SUM
    it_vbup TYPE x_vbup OCCURS 0 WITH HEADER LINE, "SUM
    it_vepo TYPE x_vepo OCCURS 0 WITH HEADER LINE, "SUM
    it_vepo2 TYPE x_vepo OCCURS 0 WITH HEADER LINE, "SUM
    *{ INSERT UKMK900355 3
    t_vepo_low TYPE x_vepo OCCURS 0 WITH HEADER LINE, " AS01
    *} INSERT
    it_vepo1 TYPE x_vepo1 OCCURS 0 WITH HEADER LINE, "SUM
    it_vttp TYPE x_vttp OCCURS 0 WITH HEADER LINE, "ANV SR#11523
    t_disp_head TYPE STANDARD TABLE OF zpickhead.
    DATA wa_item_tab TYPE zpickdisp OCCURS 0 WITH HEADER LINE.
    "ANV SR#11113
    DATA: w_numrnge LIKE number_range,
    w_number(10) TYPE n.
    DATA: t_likp LIKE likp OCCURS 0 WITH HEADER LINE,
    t_lips LIKE lips OCCURS 0 WITH HEADER LINE,
    t_vbuk LIKE vbuk OCCURS 0 WITH HEADER LINE,
    t_vbup LIKE vbup OCCURS 0 WITH HEADER LINE,
    t_vepo LIKE vepo OCCURS 0 WITH HEADER LINE,
    t_vekp LIKE vekp OCCURS 0 WITH HEADER LINE,
    t_vantr LIKE zvantr OCCURS 0 WITH HEADER LINE,
    t_pallettr LIKE zpallettr OCCURS 0 WITH HEADER LINE,
    w_likp like likp,
    w_lips LIKE lips,
    w_vbuk LIKE vbuk,
    w_vbup LIKE vbup,
    w_vepo LIKE vepo,
    w_vekp LIKE vekp,
    w_vepo TYPE x_vepo1,
    w_vbup TYPE x_vbup,
    w_vttp TYPE x_vttp, " ANV SR#11523
    w_lips TYPE x_lips,
    w_vbuk TYPE x_vbuk,
    w_likp TYPE x_likp, "MB01-+
    w_tplst LIKE vttk-tplst. "MB01+
    DATA: s_variant LIKE disvariant, "MB01+
    def_variant LIKE disvariant.
    ALV DATA *****
    DATA:
    g_grid TYPE REF TO cl_gui_alv_grid,
    g_sort TYPE slis_t_sortinfo_alv,
    g_custom_container TYPE REF TO cl_gui_custom_container,
    g_layout TYPE slis_layout_alv,
    gt_fieldcat TYPE slis_t_fieldcat_alv,
    t_fldcat LIKE LINE OF gt_fieldcat,
    g_keyinfo TYPE slis_keyinfo_alv,
    gt_events TYPE slis_t_event,
    gs_event TYPE slis_alv_event,
    w_sy_repid LIKE sy-repid.
    DATA: BEGIN OF seltab OCCURS 0.
    INCLUDE STRUCTURE rsparams.
    DATA: END OF seltab.
    SYSTEM GENERATED TABLE CONTROL DATA ********
    DECLARATION OF TABLECONTROL 'TC_TABCON' ITSELF
    CONTROLS: tc_tabcon TYPE TABLEVIEW USING SCREEN 0100.
    LINES OF TABLECONTROL 'TC_TABCON'
    DATA: g_tc_tabcon_lines LIKE sy-loopc.
    DATA: ok_code LIKE sy-ucomm.
    Constants
    CONSTANTS: c_data_class LIKE klah-class VALUE 'DG_DATA',
    c_mat_class LIKE rmclf-klart VALUE '001',
    c_pack LIKE lips-mtart VALUE 'VERP',
    c_a(1) VALUE 'A',
    c_b(1) VALUE 'B',
    c_c(1) VALUE 'C',
    c_yes(1) VALUE 'X',
    c_no(1) VALUE ' '.
    Selection screen
    standard report select options block
    SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-002.
    SELECT-OPTIONS:
    s_wadat FOR likp-wadat NO-EXTENSION OBLIGATORY. " Goods Issue Date
    *parameters: "TR01-
    p_vstel like tvst-vstel obligatory. " Shipping Point "TR01-
    SELECT-OPTIONS: "TR01+
    p_vstel FOR tvst-vstel. " Shipping Point "TR01+
    SELECT-OPTIONS:
    s_lfart FOR likp-lfart, " Delivery type
    s_lgtor FOR t30b-lgtor, " Door selection
    s_exidv FOR vekp-exidv, " Handling Unit
    s_vbeln FOR likp-vbeln, " Delivery "MB01-+
    s_lfdat FOR likp-lfdat. " Delivery date
    PARAMETERS:
    p_exdata AS CHECKBOX. " Show extra columns flag
    SELECTION-SCREEN END OF BLOCK a.
    van/pallet specific select options block
    SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-001.
    SELECT-OPTIONS:
    s_palno FOR zpallettr-zpallet_no, " no-extension,
    s_vanno FOR zvantr-zvan_no. " no-extension.
    SELECT-OPTIONS:
    s_deppnt FOR zpallettr-zdep_point, "Jvdm01
    s_tplst FOR vttk-tplst. "MB01
    SELECTION-SCREEN END OF BLOCK b.
    MB01 - START - Display variant
    SELECTION-SCREEN BEGIN OF BLOCK c WITH FRAME TITLE text-019.
    PARAMETERS: p_vari LIKE disvariant-variant.
    SELECTION-SCREEN END OF BLOCK c.
    MB01 - END
    Value Request Events
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_palno-low.
    CLEAR: number_range, w_number .
    REFRESH number_range.
    select numbers and display pop up screen for selection
    PERFORM select_pal_nos.
    s_palno-low = w_number.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_palno-high.
    CLEAR: number_range, w_number .
    REFRESH number_range.
    select numbers and display pop up screen for selection
    PERFORM select_pal_nos.
    s_palno-high = w_number.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_vanno-low.
    CLEAR: number_range, w_number .
    REFRESH number_range.
    select numbers and display pop up screen for selection
    PERFORM select_van_nos.
    s_vanno-low = w_number.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_vanno-high.
    CLEAR: number_range, w_number .
    REFRESH number_range.
    select numbers and display pop up screen for selection
    PERFORM select_van_nos.
    s_vanno-high = w_number.
    MB01 - START - display variant
    F4-Help for variant
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.
    PERFORM f4_for_variant.
    MB01 - END
    At Selection Screen
    AT SELECTION-SCREEN.
    PERFORM validate_selections.
    Initialization
    INITIALIZATION.
    MB01 - START INSERT
    1. Transportation planning point
    Import transportation planning point from user parameters and
    populate
    select option.
    GET PARAMETER ID 'TDP' FIELD w_tplst.
    MOVE: 'I' TO s_tplst-sign,
    'EQ' TO s_tplst-option,
    w_tplst TO s_tplst-low.
    APPEND s_tplst.
    2. Display variant
    CLEAR s_variant.
    s_variant-report = sy-repid.
    Get default variant
    s_def_variante = s_variant.
    CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
    EXPORTING
    i_save = 'A'
    CHANGING
    cs_variant = s_variant
    EXCEPTIONS
    not_found = 2.
    IF sy-subrc = 0.
    p_vari = s_variant-variant.
    ENDIF.
    MB01 - END INSERT
    Start of selection
    START-OF-SELECTION.
    clear all data tables
    CLEAR: t_likp,
    it_likp,
    t_lips,
    t_vbuk,
    t_vbup,
    t_vepo,
    t_vantr,
    t_pallettr,
    w_likp,
    w_lips,
    w_vbuk,
    w_vbup,
    w_vepo,
    w_vekp.
    REFRESH: t_likp,
    it_likp,
    t_lips,
    t_vbuk,
    t_vbup,
    t_vepo,
    t_vantr,
    t_pallettr.
    select data for ALV
    due to different input parameters being used, to streamline the data
    selection process, different selection methods are required
    IF NOT s_vanno IS INITIAL
    OR NOT s_palno IS INITIAL
    OR NOT s_deppnt IS INITIAL. "Jvdm01
    if selecting by van/pallet number, need to select the data from the
    handling unit upwards to delivery
    PERFORM select_data_up.
    ELSE.
    otherwise the data can be selected from the delivery downwards
    PERFORM select_data_down.
    ENDIF.
    End of selection
    END-OF-SELECTION.
    call hierarchical ALV display function module
    CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
    EXPORTING
    i_callback_program = 'ZWMR_PICK_STATUS_REPORT'
    i_callback_pf_status_set = 'SET_STATUS'
    i_callback_user_command =
    'USER_COMMAND' "custom gui status form
    is_layout = g_layout "user command form
    it_fieldcat = gt_fieldcat
    it_sort = g_sort
    i_save = 'X' "MB01+
    is_variant = s_variant
    it_events = gt_events
    i_tabname_header = 't_disp_head'
    i_tabname_item = 't_disp_tab'
    i_structure_name_header = 'ZPICKHEAD'
    i_structure_name_item = 'ZPICKDISP'
    is_keyinfo = g_keyinfo
    TABLES
    t_outtab_header = t_disp_head
    t_outtab_item = t_disp_tab.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    FORMS
    Includes inserted by Screen Painter Wizard. DO NOT CHANGE THIS LINE!
    INCLUDE zwmr_pick_o01.
    INCLUDE zwmr_pick_status_reporto01 .
    INCLUDE zwmr_pick_i01.
    INCLUDE zwmr_pick_status_reporti01 .
    INCLUDE zwmr_pick_f01.
    INCLUDE zwmr_pick_status_reportf01 .
    *& Form select_pal_nos
    select pallet numbers for search help
    FORM select_pal_nos.
    DATA: BEGIN OF t_palno OCCURS 0,
    zpallet_no LIKE zpallettr-zpallet_no,
    END OF t_palno.
    select all available pallet numbers
    SELECT DISTINCT zpallet_no FROM zpallettr
    INTO CORRESPONDING FIELDS OF TABLE t_palno.
    LOOP AT t_palno.
    get pallet id
    SELECT SINGLE zpallet_id FROM zpallettr
    INTO number_range-id
    WHERE zpallet_no = t_palno-zpallet_no.
    get pallet description
    SELECT SINGLE zdesc FROM zpalletmd
    INTO number_range-desc
    WHERE zpallet_id = number_range-id.
    number_range-num = t_palno-zpallet_no.
    append to search help table
    APPEND number_range.
    ENDLOOP.
    call pop up dialog box
    CALL SCREEN 0100 STARTING AT 5 5.
    ENDFORM. " select_pal_nos
    *& Form select_van_nos
    select van numbers for search help
    FORM select_van_nos.
    DATA: BEGIN OF t_vanno OCCURS 0,
    zvan_no LIKE zvantr-zvan_no,
    END OF t_vanno.
    select available van numbers
    SELECT DISTINCT zvan_no FROM zvantr
    INTO CORRESPONDING FIELDS OF TABLE t_vanno.
    LOOP AT t_vanno.
    select van id
    SELECT SINGLE zvan_id FROM zvantr
    INTO number_range-id
    WHERE zvan_no = t_vanno-zvan_no.
    select van description (maintained in pallet tables)
    SELECT SINGLE zdesc FROM zpalletmd
    INTO number_range-desc
    WHERE zpallet_id = number_range-id.
    number_range-num = t_vanno-zvan_no.
    append to search help table
    APPEND number_range.
    ENDLOOP.
    call pop up dialog box
    CALL SCREEN 0100 STARTING AT 5 5.
    ENDFORM. " select_van_nos
    *& Form select_data_down
    select data if selecting from delivery down
    FORM select_data_down.
    select all deliveries from LIKP that fulfill selection criteria
    Start SU01 optmization changes
    SELECT vbeln vstel lgtor route wadat "RM050906
    SELECT vbeln vstel lgtor route wadat
    zzroute2lgtor zz2route zzexproute zzroute2 anzpk "MB01-+
    FROM likp INTO CORRESPONDING FIELDS OF TABLE it_likp"MB01-+
    WHERE vbeln IN s_vbeln
    AND vstel IN p_vstel
    AND lfart IN s_lfart
    AND wadat IN s_wadat
    AND lfdat IN s_lfdat "MB01+
    AND
    ( lgtor IN s_lgtor OR zzroute2lgtor IN s_lgtor ) ."MB01+
    IF sy-subrc NE 0.
    no data found
    MESSAGE i007.
    EXIT.
    ENDIF.
    IF NOT t_likp[] IS INITIAL. "SUM
    IF NOT it_likp[] IS INITIAL.
    SORT it_likp BY vbeln. "SUM
    select sales document headers from VBUK
    SELECT vbeln wbstk kostk
    FROM vbuk INTO TABLE it_vbuk
    FOR ALL ENTRIES IN it_likp "SUM
    WHERE vbeln EQ it_likp-vbeln. "SUM
    SORT it_vbuk BY vbeln.
    select all relevant delivery items from LIPS
    SELECT vbeln posnr pstyv matnr charg
    FROM lips INTO TABLE it_lips
    FOR ALL ENTRIES IN it_likp
    WHERE vbeln EQ it_likp-vbeln
    AND pckpf NE 'B' "cannot be packed "AS05
    AND pstyv NE 'ZPAC' "AS05
    AND pstyv NE 'ZGDP' "TR02+ "AS05
    AND lfimg GT 0. "TR01+
    ENDIF.
    IF NOT it_lips[] IS INITIAL.
    select all sales document line items from VBUP
    SORT it_lips BY vbeln posnr. "SUM
    SELECT vbeln posnr lvsta
    FROM vbup INTO TABLE it_vbup
    FOR ALL ENTRIES IN it_lips
    WHERE vbeln EQ it_lips-vbeln
    AND posnr = it_lips-posnr.
    SORT it_vbup BY vbeln posnr.
    select corresponding handling unit ID's (venum)
    TR03 Replace
    start
    select * from vepo appending corresponding fields of table t_vepo
    for all entries in t_lips
    where vbeln = t_lips-vbeln
    and posnr = t_lips-posnr
    and matnr = t_lips-matnr
    and charg = t_lips-charg.
    SELECT vepoVENUM vepoVEPOS vepovbeln vepoposnr
    FROM vepo as vepo
    INNER JOIN vekp as vekp ON vepovenum = vekpvenum
    APPENDING corresponding fields of table it_vepo
    FOR ALL ENTRIES IN it_lips
    WHERE vepo~vbeln = it_lips-vbeln
    AND vepo~posnr = it_lips-posnr
    AND vepo~matnr = it_lips-matnr
    AND vepo~charg = it_lips-charg
    AND vekp~exidv IN s_exidv.
    SELECT venum vepos vbeln posnr
    FROM vepo INTO TABLE it_vepo2
    FOR ALL ENTRIES IN it_lips
    WHERE vbeln = it_lips-vbeln
    AND posnr = it_lips-posnr
    AND matnr = it_lips-matnr
    AND charg = it_lips-charg.
    SORT it_vepo2 BY venum vepos.
    *{ INSERT UKMK900355 1
    Ice-multis: replace lower-level HUs with highest level " AS01
    PERFORM replace_highest_hu. " AS01
    *} INSERT
    Start of changes by ANV SR#11523
    MB01 - extract shipment header as well to populate leg indicator
    Therefore, join vttp with vttk
    Limit as well by transportation planning point
    SELECT vttptknum vttptpnum vttpvbeln vttklaufk
    FROM vttp INNER JOIN vttk
    ON vttptknum = vttktknum
    INTO TABLE it_vttp
    FOR ALL ENTRIES IN it_lips
    WHERE vttp~vbeln = it_lips-vbeln
    AND vttk~tplst IN s_tplst.
    MB01 - END
    End of changes by ANV SR#11523
    IF NOT it_vepo2[] IS INITIAL.
    SELECT venum exidv
    FROM vekp INTO TABLE it_vepo1
    FOR ALL ENTRIES IN it_vepo2
    WHERE venum = it_vepo2-venum
    AND exidv IN s_exidv.
    ENDIF.
    SORT it_vepo1 BY venum.
    CLEAR: w_vepo, it_vepo.
    LOOP AT it_vepo1.
    READ TABLE it_vepo2 WITH KEY venum = it_vepo1-venum.
    IF sy-subrc = 0.
    it_vepo2-exidv = it_vepo1-exidv.
    MODIFY it_vepo2 TRANSPORTING exidv
    WHERE venum = it_vepo1-venum .
    ENDIF.
    ENDLOOP.
    DELETE it_vepo2 WHERE exidv IS initial.
    it_vepo[] = it_vepo2[].
    TR03 Replace end
    ENDIF.
    build process table
    PERFORM move_to_table.
    ENDFORM. "select_data_down
    *& Form select_data_up
    select data if selecting from van/pallet up
    FORM select_data_up.
    IF NOT s_vanno IS INITIAL.
    if van then select van numbers and hence pallet numbers
    SELECT * FROM zvantr INTO TABLE t_vantr
    WHERE zvan_no IN s_vanno.
    and vstel eq p_vstel."TR01-
    IF NOT t_vantr[] IS INITIAL.
    SORT t_vantr BY zvan_id zvan_no vstel zpallet_no. "SUM
    SELECT * FROM zpallettr INTO TABLE t_pallettr
    FOR ALL ENTRIES IN t_vantr
    WHERE zpallet_no EQ t_vantr-zpallet_no
    AND zdep_point IN s_deppnt. "Jvdm01
    and vstel eq p_vstel."TR01-
    ENDIF.
    ELSE.
    otherwise can get pallet numbers directly
    SELECT * FROM zpallettr INTO TABLE t_pallettr
    WHERE zpallet_no IN s_palno
    AND zdep_point IN s_deppnt. "Jvdm01
    and vstel eq p_vstel."TR01-
    ENDIF.
    IF NOT t_pallettr[] IS INITIAL.
    from the pallet nos. we can select the handling units
    SORT t_pallettr BY zpallet_id zpallet_no vstel exidv. "SUM
    SELECT * FROM vekp INTO TABLE t_vekp
    FOR ALL ENTRIES IN t_pallettr
    WHERE exidv EQ t_pallettr-exidv
    AND exidv NE space
    AND exidv IN s_exidv "TR03+
    AND ( exida = 'E' "TR01+
    OR exida = 'F' ). "TR01+
    ENDIF.
    SORT t_vekp BY venum. "SUM
    IF NOT t_vekp[] IS INITIAL.
    build vbeln range from t_vekp.
    LOOP AT t_vekp.
    r_del-sign = 'I'.
    r_del-option = 'EQ'.
    r_del-low = t_vekp-vpobjkey.
    APPEND r_del.
    ENDLOOP.
    select all deliveries from LIKP that correspond to HU's
    SELECT * FROM likp INTO TABLE t_likp
    WHERE vbeln IN r_del
    AND wadat IN s_wadat
    AND lfart IN s_lfart.
    ENDIF.
    MB01- START
    SELECT vbeln lgtor route wadat
    FROM likp INTO TABLE it_likp
    WHERE vbeln IN r_del
    AND wadat IN s_wadat
    AND lfart IN s_lfart.
    SELECT vbeln vstel lgtor route wadat
    zzroute2lgtor zz2route zzexproute zzroute2 anzpk "MB01-+
    FROM likp INTO CORRESPONDING FIELDS OF TABLE it_likp
    WHERE vbeln IN r_del
    AND lfart IN s_lfart
    AND wadat IN s_wadat "MB01-+
    AND lfdat IN s_lfdat. "MB01+
    MB01- END
    ENDIF.
    IF NOT it_likp[] IS INITIAL.
    SORT it_likp BY vbeln . "SUM
    select sales document headers from VBUK
    SELECT * FROM vbuk INTO TABLE t_vbuk
    FOR ALL ENTRIES IN t_likp
    WHERE vbeln EQ t_likp-vbeln.
    SELECT vbeln wbstk kostk
    FROM vbuk INTO TABLE it_vbuk
    FOR ALL ENTRIES IN it_likp
    WHERE vbeln EQ it_likp-vbeln.
    SORT it_vbuk BY vbeln. "SUM
    select all relevant delivery items from LIPS
    SELECT * FROM lips INTO TABLE t_lips
    FOR ALL ENTRIES IN t_likp
    WHERE vbeln EQ t_likp-vbeln
    AND pstyv NE 'ZPAC'
    AND pstyv NE 'ZGDP' "TR02+
    AND lfimg GT 0. "TR01+
    SELECT vbeln posnr pstyv matnr charg
    FROM lips INTO TABLE it_lips
    FOR ALL ENTRIES IN it_likp
    WHERE vbeln EQ it_likp-vbeln
    AND pckpf NE 'B' "cannot be packed "AS05
    AND pstyv NE 'ZPAC' "AS05
    AND pstyv NE 'ZGDP' "TR02+ "AS05
    AND lfimg GT 0. "TR01+
    ENDIF.
    IF NOT it_lips[] IS INITIAL.
    SORT it_lips BY vbeln posnr. "SUM
    select all sales document line items from VBUP
    SELECT * FROM vbup INTO TABLE t_vbup
    FOR ALL ENTRIES IN t_lips
    WHERE vbeln EQ t_lips-vbeln
    AND posnr = t_lips-posnr.
    Start of changes by ANV SR#11523
    MB01 - START
    join vttp with vttk to obtain leg indicator
    SELECT tknum tpnum vbeln
    FROM vttp INTO TABLE it_vttp
    FOR ALL ENTRIES IN it_lips
    WHERE vbeln = it_lips-vbeln.
    SELECT vttptknum vttptpnum vttpvbeln vttklaufk
    FROM vttp INNER JOIN vttk
    ON vttptknum = vttktknum
    INTO TABLE it_vttp
    FOR ALL ENTRIES IN it_lips
    WHERE vttp~vbeln = it_lips-vbeln
    AND vttk~tplst IN s_tplst.
    MB01 - END
    End of changes by ANV SR#11523
    SELECT vbeln posnr lvsta
    FROM vbup INTO TABLE it_vbup
    FOR ALL ENTRIES IN it_lips
    WHERE vbeln EQ it_lips-vbeln
    AND posnr = it_lips-posnr.
    SORT t_vbup BY vbeln posnr. "SUM
    select corresponding handling unit ID's (venum)
    SELECT * FROM vepo APPENDING CORRESPONDING FIELDS OF TABLE t_vepo
    FOR ALL ENTRIES IN t_lips
    WHERE vbeln = t_lips-vbeln
    AND posnr = t_lips-posnr
    AND matnr = t_lips-matnr
    AND charg = t_lips-charg.
    SELECT venum vepos vbeln posnr
    FROM vepo APPENDING CORRESPONDING FIELDS OF TABLE it_vepo
    FOR ALL ENTRIES IN it_lips
    WHERE vbeln = it_lips-vbeln
    AND posnr = it_lips-posnr
    AND matnr = it_lips-matnr
    AND charg = it_lips-charg.
    *{ INSERT UKMK900355 1
    it_vepo2[] = it_vepo[]. " DS01
    PERFORM replace_highest_hu. " DS01
    it_vepo[] = it_vepo2[]. " DS01
    *} INSERT
    ENDIF.
    build process table
    PERFORM move_to_table.
    ENDFORM. "select_data_up
    *& Form move_to_table
    move data to processing table
    FORM move_to_table.
    LOOP AT it_vepo.
    CLEAR t_data_tab.
    delivery lines.
    CLEAR w_lips.
    READ TABLE it_lips WITH KEY vbeln = it_vepo-vbeln
    posnr = it_vepo-posnr
    INTO w_lips BINARY SEARCH. "SUM
    MOVE-CORRESPONDING w_lips TO t_data_tab.
    sales document line items
    CLEAR w_vbup.
    READ TABLE it_vbup WITH KEY vbeln = it_vepo-vbeln
    posnr = it_vepo-posnr
    INTO w_vbup BINARY SEARCH. "SUM
    if w_vbup-kosta = space. "TR01-
    not relevant for picking
    delete t_vepo. "TR01-
    continue. "TR01-
    else. "TR01-
    MOVE-CORRESPONDING w_vbup TO t_data_tab.
    endif. "TR01-
    sales doc header
    CLEAR w_vbuk.
    READ TABLE it_vbuk WITH KEY vbeln = it_vepo-vbeln
    INTO w_vbuk BINARY SEARCH. "SUM
    MOVE-CORRESPONDING w_vbuk TO t_data_tab.
    delivery header
    CLEAR w_likp.
    READ TABLE it_likp WITH KEY vbeln = it_vepo-vbeln
    INTO w_likp BINARY SEARCH. "SUM
    MOVE-CORRESPONDING w_likp TO t_data_tab.
    MB01 - START
    DATA: w_routetype TYPE i. "0=non-global,1=1st route,2=2nd
    route,3=both
    At this point move DOOR2 if it falls within the global route scenario
    and the door2 is satisfies the selection criteria for door
    1. Does delivery fall within global route scenario
    CLEAR w_routetype.
    IF w_likp-zz2route = 'Y' .
    1.a. First route - does door1 satisfy the selection criteria
    IF w_likp-lgtor IN s_lgtor.
    w_routetype = 1.
    MOVE w_likp-zzexproute TO t_data_tab-route.
    1.b. Second route - does door2 satisfy the selection criteria
    ELSEIF w_likp-zzroute2lgtor IN s_lgtor.
    here we need to move door2 to lgtor
    w_routetype = 2.
    MOVE w_likp-zzroute2lgtor TO t_data_tab-lgtor.
    MOVE w_likp-zzroute2 TO t_data_tab-route.
    ENDIF.
    If both routes satsify the criteria, append for 2nd leg ***REVISIT!
    IF w_likp-lgtor IN s_lgtor AND w_likp-zzroute2lgtor IN s_lgtor.
    w_routetype = 3.
    ENDIF.
    ENDIF.
    MB01 - END
    Start of changes by ANV SR#11523
    MB01 - If the delivery falls within the global route scenario... need
    to select either preliminary shipment leg OR subsequent leg
    when laufk= 1 (prelim) and linked to route1, if laufk = 2 (subseq) &
    linked to route2
    Shipment Number
    SORT it_vttp BY vbeln laufk.
    CLEAR w_vttp.
    CASE w_routetype.
    WHEN 0.
    READ TABLE it_vttp WITH KEY vbeln = it_vepo-vbeln
    INTO w_vttp BINARY SEARCH.
    WHEN 1.
    READ TABLE it_vttp WITH KEY vbeln = it_vepo-vbeln
    laufk = '1'
    INTO w_vttp BINARY SEARCH.
    WHEN 2.
    READ TABLE it_vttp WITH KEY vbeln = it_vepo-vbeln
    laufk = '3'
    INTO w_vttp BINARY SEARCH.
    WHEN 3. "REVISIT
    ENDCASE.
    MOVE w_vttp-tknum TO t_data_tab-tknum.
    MB01 - END
    End of changes by ANV SR#11523
    select handling unit info using vepo entry
    CLEAR w_vekp.
    IF t_vekp[] IS INITIAL.
    SELECT SINGLE * FROM vekp INTO w_vekp
    WHERE venum = it_vepo-venum.
    ELSE.
    READ TABLE t_vekp WITH KEY venum = it_vepo-venum
    INTO w_vekp BINARY SEARCH. "SUM
    IF sy-subrc NE 0.
    SELECT SINGLE * FROM vekp INTO w_vekp
    WHERE venum = t_vepo-venum.
    ENDIF.
    ENDIF.
    MOVE-CORRESPONDING w_vekp TO t_data_tab.
    *{ INSERT UKMK900355 2
    WM status for HU "AS03
    SELECT SINGLE * FROM zhu_to_link WHERE lgnum EQ w_vekp-lgnum"AS03
    AND exidv EQ w_vekp-exidv."AS03
    IF sy-subrc EQ 0. "AS03
    IF zhu_to_link-zpick_comp EQ space. "AS03
    t_data_tab-lvsta = 'B'. "AS03
    ELSE. "AS03
    t_data_tab-lvsta = 'C'. "AS03
    ENDIF. "AS03
    ENDIF. "AS03
    *} INSERT
    select pallet / van load information "Jvdm01-
    SELECT SINGLE zpallet_no zcount_check FROM zpallettr "Jvdm01-
    INTO (t_data_tab-zpallet_no, "Jvdm01-
    t_data_tab-zcount_check) "Jvdm01-
    WHERE exidv EQ w_vekp-exidv. "Jvdm01-
    PERFORM read_pallet. "MB01+
    SELECT SINGLE zpallet_no zcount_check zdep_point "Jvdm01+
    FROM zpallettr "Jvdm01+
    INTO (t_data_tab-zpallet_no, "Jvdm01+
    t_data_tab-zcount_check, "Jvdm01+
    t_data_tab-zdep_point) "Jvdm01+
    WHERE exidv EQ w_vekp-exidv. "Jvdm01+
    WHERE exidv EQ w_vekp-exidv "MB01-+
    AND zpallet_id = t_data_tab-lgtor."MB01+
    MB01 - INSERT START
    If pallet number specified and
    we are in the global route scenario & both doors fall within the
    selection criteria, we need to copy the one that is currently in a
    specified pallet
    IF NOT s_palno IS INITIAL AND not t_data_tab-zpallet_no in s_palno
    AND w_routetype = '3' .
    Switch doors & get 2nd shipment
    MOVE w_likp-zzroute2lgtor TO t_data_tab-lgtor.
    MOVE w_likp-zzroute2 TO t_data_tab-route.
    Read subsequent leg shipment
    READ TABLE it_vttp WITH KEY vbeln = it_vepo-vbeln
    laufk = '3'
    INTO w_vttp BINARY SEARCH.
    IF sy-subrc = 0.
    MOVE w_vttp-tknum TO t_data_tab-tknum.
    ENDIF.
    PERFORM read_pallet. "MB01+
    ENDIF.
    MB01 - INSERT END
    IF NOT t_data_tab-zpallet_no IN s_palno. "TR01+
    CONTINUE. "TR01+
    ENDIF. "TR01+
    IF sy-subrc = 0. "mb01+
    perform read_van. "MB01+
    SELECT SINGLE zvan_no zvan_print zeod_print FROM zvantr
    INTO (t_data_tab-zvan_no,
    t_data_tab-zvan_print,
    t_data_tab-zeod_print)
    WHERE zpallet_no EQ t_data_tab-zpallet_no.
    MB01 - INSERT START
    If van number specified and
    we are in the global route scenario & both doors fall within the
    selection criteria, we need to copy the one that is currently on a
    specified van
    IF NOT s_vanno IS INITIAL AND not t_data_tab-zvan_no in s_vanno AND
    w_routetype = '3' .
    Switch doors & get 2nd shipment
    MOVE w_likp-zzroute2lgtor TO t_data_tab-lgtor.
    MOVE w_likp-zzroute2 TO t_data_tab-route.
    Read subsequent leg shipment
    READ TABLE it_vttp WITH KEY vbeln = it_vepo-vbeln
    laufk = '3'
    INTO w_vttp BINARY SEARCH.
    IF sy-subrc = 0.
    MOVE w_vttp-tknum TO t_data_tab-tknum.
    ENDIF.
    PERFORM read_pallet. "MB01+
    perform read_van.
    ENDIF. "mb01-
    MB01 - INSERT END
    IF NOT t_data_tab-zvan_no IN s_vanno. "TR01+
    CONTINUE. "TR01+
    ENDIF. "TR01+
    ENDIF.
    APPEND t_data_tab.
    ENDLOOP.
    *-----> TR01+ start
    If the delivery has yet to be packed, then need to include in report
    Thus delete t_lips here and if any entries left after looping through
    t_vepo, these will also need to be added to t_data_tab
    if the selection is by handling unit though we do not want
    these"TR03+
    IF s_exidv IS INITIAL. "TR03+
    *{ REPLACE UKMK900355 1
    *\ LOOP AT it_vepo.
    *\ READ TABLE it_lips WITH KEY vbeln = it_vepo-vbeln
    *\ posnr = it_vepo-posnr
    *\ BINARY SEARCH. "SUM
    *\ IF sy-subrc = 0.
    *\ DELETE it_lips INDEX sy-tabix.
    *\ ENDIF.
    *\ ENDLOOP.
    Higher-level HUs can contain more than one delivery item " AS01
    LOOP AT it_lips. " AS01
    READ TABLE t_vepo_low WITH KEY vbeln = it_lips-vbeln " AS01
    posnr = it_lips-posnr. " AS01
    CHECK sy-subrc EQ 0. " AS01
    DELETE it_lips. " AS01
    ENDLOOP. " AS01
    *} REPLACE
    IF NOT it_lips[] IS INITIAL.
    move any unpacked items to the data table
    PERFORM move_lips_to_table.
    ENDIF.
    ENDIF. "TR03+
    *<---- TR01+ End
    get relevant status icons
    PERFORM select_icons.
    prepare ALV data
    PERFORM prepare_alv.
    ENDFORM. " select_data
    *& Form select_icons
    select icons for display and move data to display table
    FORM select_icons.
    DATA: w_disp_tab LIKE zpickdisp,
    w_disp_head LIKE zpickhead,
    w_color LIKE zpickdisp-color,
    ov_icon LIKE zpickdisp-ov_icon,
    gi_icon LIKE zpickdisp-gi_icon,
    to_icon LIKE zpickdisp-to_icon,
    lp_icon LIKE zpickdisp-lp_icon,
    pc_icon LIKE zpickdisp-pc_icon,
    lv_icon LIKE zpickdisp-lv_icon,
    vm_icon LIKE zpickdisp-vm_icon,
    em_icon LIKE zpickdisp-em_icon,
    sp_icon LIKE zpickdisp-sp_icon, " ANV SR#11523
    t_ovst_tab LIKE t_disp_tab WITH HEADER LINE.
    CONSTANTS: c_col1(3) VALUE 'C10',
    c_col2(3) VALUE 'C20'.
    SORT t_data_tab BY lgtor vbeln.
    w_color = c_col2.
    LOOP AT t_data_tab.
    AT NEW lgtor.
    fill ALV header table
    CLEAR w_disp_head.
    w_disp_head-lgtor = t_data_tab-lgtor.
    APPEND w_disp_head TO t_disp_head.
    ENDAT.
    goods issue status & overall amber/green only
    CASE t_data_tab-wbstk.
    WHEN c_c.
    MOVE icon_green_light TO gi_icon.
    MOVE icon_green_light TO ov_icon.
    WHEN OTHERS.
    MOVE icon_red_light TO gi_icon.
    MOVE icon_yellow_light TO ov_icon.
    ENDCASE.
    transfer order status
    CASE t_data_tab-lvsta.
    WHEN c_a.
    MOVE icon_red_light TO to_icon.
    WHEN c_b.
    MOVE icon_yellow_light TO to_icon.
    WHEN c_c.
    MOVE icon_green_light TO to_icon.
    WHEN space.
    write N/A
    to_icon = 'N/A'.
    ENDCASE.
    loaded to pallet status
    IF NOT t_data_tab-zpallet_no IS INITIAL.
    MOVE icon_green_light TO lp_icon.
    ELSE.
    MOVE icon_red_light TO lp_icon.
    ENDIF.
    pallet count status
    IF NOT t_data_tab-zcount_check IS INITIAL.
    MOVE icon_green_light TO pc_icon.
    ELSE.
    MOVE icon_red_light TO pc_icon.
    ENDIF.
    loaded to van status
    IF NOT t_data_tab-zvan_no IS INITIAL.
    MOVE icon_green_light TO lv_icon.
    ELSE.
    MOVE icon_red_light TO lv_icon.
    ENDIF.
    van manifest status
    IF NOT t_data_tab-zvan_print IS INITIAL.
    MOVE icon_green_light TO vm_icon.
    ELSE.
    MOVE icon_red_light TO vm_icon.
    ENDIF.
    Start of changes by ANV SR#11523
    Shipment status
    IF NOT t_data_tab-tknum IS INITIAL.
    MOVE icon_green_light TO sp_icon.
    ELSE.
    MOVE icon_red_light TO sp_icon.
    ENDIF.
    End of changes by ANV SR#11523
    end of day manifest status
    IF NOT t_data_tab-zeod_print IS INITIAL.
    MOVE icon_green_light TO em_icon.
    ELSE.
    MOVE icon_red_light TO em_icon.
    ENDIF.
    move working data table to display table
    MOVE-CORRESPONDING t_data_tab TO w_disp_tab.
    w_disp_tab-ov_icon = ov_icon.
    w_disp_tab-gi_icon = gi_icon.
    w_disp_tab-to_icon = to_icon.
    w_disp_tab-lp_icon = lp_icon.
    w_disp_tab-pc_icon = pc_icon.
    w_disp_tab-lv_icon = lv_icon.
    w_disp_tab-vm_icon = vm_icon.
    w_disp_tab-em_icon = em_icon.
    w_disp_tab-sp_icon = sp_icon. "ANV SR#11523
    w_disp_tab-color = w_color.
    fill N/A values for initial fields for display
    IF w_disp_tab-packvorschr IS INITIAL.
    w_disp_tab-packvorschr = 'N/A'.
    ENDIF.
    IF w_disp_tab-exidv IS INITIAL.
    w_disp_tab-exidv = 'N/A'.
    ENDIF.
    IF w_disp_tab-zpallet_no IS INITIAL.
    WRITE 'N/A' TO w_disp_tab-zpallet_no.
    ENDIF.
    IF w_disp_tab-zvan_no IS INITIAL.
    WRITE 'N/A' TO w_disp_tab-zvan_no.
    ENDIF.
    display different color for new doc number
    AT END OF vbeln.
    IF w_color = c_col1.
    w_color = c_col2.
    ELSEIF w_color = c_col2.
    w_color = c_col1.
    ENDIF.
    ENDAT.
    APPEND w_disp_tab TO t_disp_tab.
    CLEAR w_disp_tab.
    ENDLOOP.
    we have all the icons in display but need to check the overall status
    as this refers to the line items
    green and amber statuses already set and use the same criteria as the
    goods issue status unless detected as red here
    DATA: ov_stat_red(1).
    CLEAR w_disp_tab.
    SORT t_disp_tab BY vbeln.
    LOOP AT t_disp_tab INTO w_disp_tab.
    AT NEW vbeln.
    check all line items for delivery
    LOOP AT t_data_tab WHERE vbeln = w_disp_tab-vbeln.
    IF t_data_tab-lvsta = c_a.
    set overall status to red
    ov_stat_red = c_yes.
    EXIT.
    ELSE.
    leave green/amber status icon as previosly determined
    ENDIF.
    ENDLOOP.
    IF ov_stat_red = c_yes.
    set overall status to red for all items in that delivery
    CLEAR ov_stat_red.
    MOVE icon_red_light TO w_disp_tab-ov_icon.
    MODIFY t_disp_tab FROM w_disp_tab TRANSPORTING ov_icon
    WHERE vbeln = w_disp_tab-vbeln.
    ENDIF.
    ENDAT.
    ENDLOOP.
    ENDFORM. " select_icons
    *& Form fill_layout
    fill ALV layout parameters
    FORM fill_layout.
    CLEAR g_layout.
    g_layout-colwidth_optimize = c_yes. " column width optimisation
    g_layout-zebra = space. " alternate line colors
    g_layout-box_fieldname = 'MARK'. " checkbox fieldname
    g_layout-info_fieldname = 'COLOR'. " highlight row indicator
    g_layout-no_vline = space. " vertical line
    g_layout-key_hotspot = space. " hotspot field
    g_layout-f2code = 'PICK'. " F2 ok_code
    g_layout-numc_sum = c_yes. " sum numc fields
    g_layout-box_tabname = 't_disp_head'. " checkbox table name
    g_layout-expand_fieldname = 'EXPAND'. " expand field name
    ENDFORM. " fill_layout
    *& Form fill_sort
    fill ALV sort table
    FORM fill_sort.
    DATA: w_g_sort TYPE slis_sortinfo_alv.
    w_g_sort-spos = 1.
    w_g_sort-fieldname = 'LGTOR'.
    w_g_sort-tabname = 't_disp_tab'.
    w_g_sort-up = c_yes.
    APPEND w_g_sort TO g_sort.
    w_g_sort-spos = 2.
    w_g_sort-fieldname = 'VBELN'.
    w_g_sort-tabname = 't_disp_tab'.
    w_g_sort-up = c_yes.
    APPEND w_g_sort TO g_sort.
    w_g_sort-spos = 3.
    w_g_sort-fieldname = 'POSNR'.
    w_g_sort-tabname = 't_disp_tab'.
    w_g_sort-up = c_yes.
    APPEND w_g_sort TO g_sort.

  • Different formats in Excel column into 1 format to load into table

    I have a situation in hand. I have to do a SQL Load into a Temporary table from an Excel file but I noticed that the column I am most interested in has about 4 different formats. My desired format will always have to be 7 characters long and has to only have digits in them. That means, no hyphens or special characters or alphabets.
    I have found out that the column in Excel has pretty much 4 or 5 different formats:
    Here is what they are supposed to be transformed into :
    42 = 0000042
    000-0257 = 0000257
    0090647 = 0090647 (Corect Format)
    709782 = 0709782
    135566F1 = 0135566
    The last case only seems to have 2 or 3 lines where this Alphabet comes in but then anything after that needs to be discarded. I could probably just remove them ( The F1 ) from the File manually.
    Any ideas ? Thanks in advance.

    Thanks Frank, for showing a far better way to translate the chars 'away'.
    However, the last record contains the 1 that comes after the F?
    I've pasted your example into my 'beta-clunged'-version (I know it can become far more compact, but wanted to show the steps taken):
    SQL> with t as (
      2  select '42' col from dual union all
      3  select '000-0257' from dual union all
      4  select '0090647' from dual union all
      5  select '709782' from dual  union all
      6  select '135566F1' from dual
      7  )
      8  select col
      9  ,      to_char( replace( col2
    10                         , '-'
    11                         )
    12                , 'fm0000000'  -- 3. apply the format mask
    13                ) my_clunging
    14  ,      lpad ( translate ( col
    15                          , '0123456789' || translate ( col
    16                                                      , 'x0123456789'
    17                                                      , 'x'
    18                                                      )
    19                          , '0123456789'
    20                          )
    21              , 7
    22              , '0'
    23              ) franks_solution
    24  from  ( select col
    25         ,       case when instr( translate( lower(col)
    26                                           , 'abcdefghijklmnopqrstuvwxyz'
    27                                           , 'xxxxxxxxxxxxxxxxxxxxxxxxxx'
    28                                           )
    29                                , 'x'
    30                                ) > 0
    31                      then -- 1. eliminate string after finding a character
    32                           substr( col
    33                                 , 1
    34                                 , instr( translate( lower(col)
    35                                                   , 'abcdefghijklmnopqrstuvwxyz'
    36                                                   , 'xxxxxxxxxxxxxxxxxxxxxxxxxx'
    37                                                   )
    38                                        , 'x'
    39                                        ) -1
    40                                 )
    41                     else col
    42                 end col2
    43          from t
    44        );
    COL      MY_CLUNG FRANKS_
    42       0000042  0000042
    000-0257 0000257  0000257
    0090647  0090647  0090647
    709782   0709782  0709782
    135566F1 0135566  1355661Didn't you notice that in your tests, Raj, or have your requirements changed?

  • ALV freeze Columns in Horizontal Scroll

    Hi All,
    I am using ALV object cl_gui_alv_grid-> set_table_for_first_display and want to freeze the first three columns when doing horizontal scroll.
    I am passing it_fieldcatalog-fix_column = 'X' for the first three column fields but these columns are not being freozen when I do Horizontal Scroll.
    Kindly let me know what else I need to pass or any alternative way to achieve this in ALV.
    Thanks in advance.
    Vijoy

    Vijoy,
    Making the FIX_COLUMN to X should have solved your problem. As a work around, make those columns as KEY columns in the fieldcatalog and see if it works that way.
    I hope you don't have any other column in front of these columns which is NOT fixed. If yes, that it will not work.
    Regards,
    Ravi
    Note : Please mark the helpful answers and close the thread if the question is answered
    Message was edited by: Ravikumar Allampallam

Maybe you are looking for

  • Wi-fi on iPod touch is grayed out

    After restoring factory settings to my 3rd generation iPod touch, the wi-fi was grayed out along with iCloud, email, twitter, navigation, etc. I'm in the process of restoring it again and hopefully the newest update of 5.1.1 will fix the problem.

  • Join  a Parent Table with 2 Child table based on a value

    Dear Guru's We have a Parent Table and 2 Child table . The Parent Table has a column like seqtype with only 2 possible values C and S . If the Value is C , then the details are available in Child 1 table and if the Value is S then the Details are in

  • Xml parsing and report generation probs

    Hello everyone, I am facing with a peculiar problem. I have an xml which contains special characters like �( cent) . So I parse it before i send it to the DOM parser. BufferedReader br = new BufferedReader(new InputStreamReader(inputFileName,"ISO-885

  • Help in translating JAVA code into CF

    Hi all!  I'm at the end of integrating an in-house calendar with Google calendars and all is working, however, I am stumped as to how implement callback functions.  Here's what I'm trying to do as outlined on http://code.google.com/p/google-api-java-

  • To upload request change to SAP

    Hi I installed minisap in my PC, tutorial examples were saved in a file (*.NSP), please provide me the procedure to apply this file in the system and how to specify to SAP which Directory I have to save these files in thanks