ALV: multiselect selects more rows than expected

If I have table with many pages of data and do following actions:
1) leave lead select in first page as it is
2) go to next page - with ctrl select 2nd row
3) go to next page - with ctrl select 1st row
4) go back to previous page - 2nd row selected as expected
5) go to next (3rd) page - 1st and 2nd row is selected (expected only 1st row to be selected)
There is no any select event handler which could cause such behavior.
I have noticed such error on standard table, too.
What is causing this error?

Oskars,
If you are using
-- one context node for this table,
-- you have set the context node's Cardinality to o...n,
-- and the table UI element that's bind to this context node's property SelectionMode is set to be 'auto' or 'multi',
then I think this is a bug in your version.  I have tried on my system (SAP ECC 6.0, SAP_ABA 700), and I cannot reproduce the behavior you have describe in this thread.   Check the CSN to confirm if this is a bug indeed.
regards,
Tina Yang

Similar Messages

  • Query returns more row than expected

    1. select * from view_name where col1 = 'value1' returns 12 rows
    2. select * from (view script) where col1 = 'value1' returns 24 rows
    i have a view called view_name. If i use view_name directly in the query, it returns 12 rows. But if i use the select script directly in from clause, it returns more rows. I am not able to find out why it is happening so. Any pointers will be helpful.

    Are you saying that the SQL for view_name and view_script are identical? Can you post them?

  • Sqlldr Loading more rows than expected

    We are trying to load a child table that has the referential integrity constraint with its parent and some triggers on it that is used to change the case of data. We are using the bcp to create a text file that is having the 5 records. The text file generated from BCP is a kind of CSV (~ is used for ,) file. When we are trying to load the reords using sqlldr it is loading 10 records in the database. It happens when 2 last rows are violating the integrity constraint thus the first 3 records are being duplicated and violated records are also loaded. Strange thing is that the same record that was loaded is being pushed in the bad file also. When we disable the trigger everything works fine. To get your help following is the snap of trigger and ctl files along with sample data:
    CREATE OR REPLACE TRIGGER "CMD".RWC_SPCL_HANDLING_INSTRCTNS
    before insert or update on RWC_SPCL_HANDLING_INSTRCTNS
    REFERENCES NEW AS NEW
    for each row
    BEGIN
    :new.ORG_ROADMARK:=upper(:new.ORG_ROADMARK);
    :new.RWC_CD:=upper(:new.RWC_CD);
    :new.SPCL_HANDLING_CD:=upper(:new.SPCL_HANDLING_CD);
    EXCEPTION
    WHEN OTHERS THEN RETURN;
    END;
    ---------CTL FILE-------------
    load data
    infile 'data\rwc_spcl_handling_instrctns.txt'
    into table rwc_spcl_handling_instrctns truncate
    fields terminated by '~'
    trailing nullcols
    (ORG_ROADMARK ,
    RWC_CD ,
    SPCL_HANDLING_CD,
    RWC_SPCL_HNDLNG_INSTRCTN_ID "rwc_sqn.nextval"
    -SAMPLE DATA--------
    GSWR~CARCHTADO1~SLC
    GSWR~CARCHTBUO1~SLC
    GSWR~CARCHTCOO1~SLC
    GSWR~CARSTRCANO~SHL
    GSWR~CARSTRCANO~SLC
    Thanks,
    Ashok

    Why not include the UPPER in the control file
    load data
    infile 'data\rwc_spcl_handling_instrctns.txt'
    into table rwc_spcl_handling_instrctns truncate
    fields terminated by '~'
    trailing nullcols
    (ORG_ROADMARK "UPPER(:ORG_ROADMARK)" ,
    RWC_CD "UPPER(:RWC_CD)" ,
    SPCL_HANDLING_CD "UPPER(:SPCL_HANDLING_CD)" ,
    RWC_SPCL_HNDLNG_INSTRCTN_ID "rwc_sqn.nextval"

  • Error in sql query as "loop has run more times than expected (Loop Counter went negative)"

    Hello,
    When I run the query as below
    DECLARE @LoopCount int
    SET @LoopCount = (SELECT Count(*) FROM KC_PaymentTransactionIDConversion with (nolock) Where KC_Transaction_ID is NULL and TransactionYear is NOT NULL)
    WHILE (
        SELECT Count(*)
        FROM KC_PaymentTransactionIDConversion with (nolock)
        Where KC_Transaction_ID is NULL
        and TransactionYear is NOT NULL
    ) > 0
    BEGIN
        IF @LoopCount < 0
            RAISERROR ('Issue with data in KC_PaymentTransactionIDConversion, loop has run more times than expected (Loop Counter went negative).', -- Message text.
                   16, -- Severity.
                   1 -- State.
    SET @LoopCount = @LoopCount - 1
    end
    I am getting error as "loop has run more times than expected (Loop Counter went negative)"
    Could any one help on this issue ASAP.
    Thanks ,
    Vinay

    Hi Vinay,
    According to your code above, the error message make sense. Because once the value returned by “SELECT Count(*)  FROM KC_PaymentTransactionIDConversion with (nolock) Where KC_Transaction_ID is NULL and TransactionYear is NOT NULL” is bigger than 0,
    then decrease @LoopCount. Without changing the table data, the returned value always bigger than 0, always decrease @LoopCount until it's negative and raise the error.
    To fix this issue with the current information, we should make the following modification:
    Change the code
    WHILE (
    SELECT Count(*)
    FROM KC_PaymentTransactionIDConversion with (nolock)
    Where KC_Transaction_ID is NULL
    and TransactionYear is NOT NULL
    ) > 0
    To
    WHILE @LoopCount > 0
    Besides, since the current query is senseless, please modify the query based on your requirement.
    If there are any other questions, please feel free to ask.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • More results than expected.

    Hi!
    With the below shown "SELECT-QUERY"  I get
    more results than expected.
    What can the reason be for that ?
    I get 72 entries instead of 12 and lines multiple. 
    When go via se16 and type in the materialnumber
    I get shown only 12 entries out of all below
    listed tables.
    Regards
    Ilhan
    SELECT a~matnr
    a~herkl a~herkr
    b~exprf b~valid
    c~stawn c~valid
    c~prrfm c~peinh
    d~prwrk d~peinh
    INTO CORRESPONDING FIELDS OF TABLE ldm_all
    FROM LDM_LF AS a
    INNER JOIN LDM_VL_LFKD AS b ON
    a~matnr = b~matnr
    INNER JOIN LDM_VL_MAT AS  c ON
    a~matnr =  c~matnr
    INNER JOIN LDM_VL_KD AS   d ON
    a~matnr = d~matnr
    WHERE a~matnr IN mat AND
          b~valid IN dat.

    SELECT a~matnr a~kunnr
    a~herkl a~herkr
    b~exprf b~valid
    INTO CORRESPONDING FIELDS OF TABLE ldm_all1
    FROM LDM_LF AS a
    INNER JOIN LDM_VL_LFKD AS b ON
    a~matnr = b~matnr
    a~wlfnr = b~wlfnr
    WHERE a~matnr IN mat AND
                 b~valid IN dat.
    If sy-subrc = 0.
    SELECT  c~stawn c~valid
            c~prrfm c~peinh
            d~prwrk d~peinh
         INTO CORRESPONDING FIELDS OF TABLE ldm_all2
            FROM LDM_VL_MAT AS  c
             INNER JOIN  LDM_VL_KD AS   d ON
                            c~matnr = d~matnr
                            c~LDMQL = d~LDMQL
                            c~valid   = d~valid
             FOR ALL ENTRIES IN i_ldm_all2
            WHEREc~matnr = i_ldm_all2-matnr AND
                        c~kunnr  = i_ldm_all2-kunnr AND
                         c~LDMQL = i_ldm_all2-ldmql AND
                          c~valid = i_ldm_all2-valid.
    ENDIF.
    Hope this solves ur query.

  • ALV to select more than one column by row using set_table_for_first_display

    Hello everyone,
    I am developing an application (ALV OO) to select more than 1 column by row ( one ). This is an a holiday application so the idea is:
    -One column will be the day, and the row will be the user.
    So I am trying to select more than one day by user (that would be the row).
    I am using the method set_table_for_first_display but when it shows the alv, doesn't let me to select more than one column with a click of the mouse.
    Does anybody know if I can do this (select more than one column, by row) in somehow?
    Please let me know if you need more clarification about this.
    Thanks in advance
    Diego

    Hi Diego,
    it's all in the documentation.
    set different selection modes through the value of the field u201CSEL_MODEu201D in the layout structure.
    SPACE
    same as 'B'
    see 'B'
    Default setting
    'A'
    Column and row selection
    Multiple columns
    Multiple rows
    The user selects the rows through pushbuttons at the left border of the grid control.
    'B'
    Simple selection, list box
    Multiple columns
    Multiple rows
    'C'
    Multiple selection, list box
    Multiple columns
    Multiple rows
    'D'
    Cell selection
    Multiple columns
    Multiple rows
    Any cells
    The user selects the rows through pushbuttons at the left border of the grid control
    Beyond setting this option, you can set u201CNO_ROWMARKu201D option to hide the mark column which is normally visible when the selection mode allows multiple row selection.
    One point to notice here is that if you set your ALV Grid as to be editable, it may override your selection mode regardless of your layout settings.
    This is from SDN Community Contribution "An Easy Reference for ALV Grid Control" By: Serdar ŞİMŞEKLER
    Sorry, no link,. it's on my disk.
    Regards,
    Clemens

  • Sender JDBC adapter SELECT / UPDATE issue - updates more rows than selected

    Hi,
    We have configured a Sender JDBC Adapter to poll records from an Oracle table based on a flag field and then update the flag for the selected records. When tested in DEV and QA environments (where test data comes in intermittently and not in huge volumes), itu2019s working fine.
    Both SELECT and UPDATE queries written in the Sender JDBC adapter are getting properly executed and are changing the status of the flag for the selected records from Y to N once read from the database.
    select * from <table> where flag = 'N'.
    update <table> set flag = 'Y' where flag = 'N'.
    But in the PROD environment (with records getting updated in the database every second), after XI executes the SELECT query and just before the UPDATE query is executed, new records come into the Oracle table with status flag 'N". So when the UPDATE query runs just after the SELECT query, then these unselected records also get updated to 'Y'. Thus these records never get into the resultset and hence XI and thus remain unprocessed.
    So when XI does a SELECT and UPDATE on the Oracle DB table and concurrently there is an INSERT happening into the table from the other end, the JDBC sender adapter is picking up a certain number of records but updating the status of more records than it picked up.
    So how does XI deal with such a common scenario without dropping records?
    Thanks,
    Vishak

    The condition being checked is the same for both SELECT and UPDATE statements.
    Initially I tried setting transaction isolation levels on the database to repeatable_read and serializable but it was throwing me a java.sql.SQLException error saying that these transaction levels were not valid.
    I asked for these transaction level permissions for the XI user from my DBA but the DB I am accessing provides only a view into other databases and so it's not possible.

  • Control array's scrollbar shows more rows than dimensions

    When an array's dimension and Number of Rows property are set to the same value, its vertical scrollbar is shown and implies there is one more row available in the array than the actual array size.
    This happen only if the array is a control, not when it is an indicator.  As an indicator, no scrollbar is shown at run time.  In edit mode, a scrollbar is shown when as an indicator.
    Is there a way to not have the scollbar appear if the number of rows equals the array size yet have it appear when the number of rows is less than the array size ?
    Example vi attached.
    Attachments:
    Array scroll bar dimension.vi ‏18 KB

    Jennifer,
    In practice, the number of displayed array rows is restricted so that only enough rows are shown to remain within the bounds of the front panel.  Otherwise as the array size is increased, the array will extend off the bottom of the screen.  My modified version shows this restriction.  But notice that as a control, the array shows one more dimension than it had been allocated to (and is shown as a disabled row).   In fact, clicking on the bottom arrow of the scollbar will continue to add more rows to the array control.
    Steve
    Attachments:
    Array scroll bar dimension.vi ‏22 KB

  • Batch input: how to fill in more rows than the ones for the screen's size.

    Hi everybody,
    I am working on a batch input for transaction ME38.
    When, through my abap code, I am filling in the second screen's table, the system stops, telling me there is no field "43" on the screen.
    Here is a summary of the batch input:
    EKET-MENGE(1)               66,000
    RM06E-EEIND(1)     30.06.2009
    EKET-MENGE(31)               66,000
    RM06E-EEIND(31)     30.06.2009
    EKET-MENGE(43)               66,000
    RM06E-EEIND(43)     30.06.2009
    In fact, my screen has 31 lines, but 43 entries must be filled.
    I can program a logic to go to the next screen when entry 31 has been filled, but how to know what is the screen limit?
    Because my program will not always be started by me, and will, most probably, be started in background jobs...
    Do you see a way to process that can help me?
    Is there a way to not be "screen size dependant"?
    Thanks in advance for your help.
    Regards,
    Rudy

    Hi...
    This issue can be resolved by creating a recording in SHDB transaction for 43 records and press add more rows button evytime you do that..
    As the rows will be added to the table during runtime you need not worry about the limit of the table entries.. and it will work fine..
    Hope this helps

  • Oracle view return more rows than its base query

    O/S : AIX
    Database : 11g R (11.1.0.6.0)
    Query in questioon :
    select A.CompanyCode, A.Code ElementCode, A.ItemTypeCode ElementItemTypeCode, A.SubcodeKey ElementSubcodeKey,
    D.DecoSubcode01 SubCode01, D.DecoSubcode02 SubCode02, D.DecoSubcode03 SubCode03, D.DecoSubcode04 SubCode04,
    D.DecoSubcode05 SubCode05, D.DecoSubcode06 SubCode06, D.DecoSubcode07 SubCode07, D.DecoSubcode08 SubCode08,
    D.DecoSubcode09 SubCode09, D.DecoSubcode10 SubCode10, C.ItemTypeBCode, C.SubCode01B, C.SubCode02B, C.SubCode03B,
    C.SubCode04B, C.SubCode05B, C.SubCode06B, C.SubCode07B, C.SubCode08B, C.SubCode09B, C.SubCode10B,
    B1.ValueString SlipNo, B2.ValueString EmployeeCode, B3.ValueString SetNo, B4.ValueString SalesOrderCounterCode,
    B5.ValueString SalesOrderCode, B6.ValueString Remarks, B7.ValueDecimal SumTareWeight, B8.ValueString PackingUMCode,
    B9.ValueString PrimaryUMCode, B10.ValueString PlantCode, B11.ValueDecimal PackingFormCode, D.LogicalWarehouseCode FromWarehouseCode,
    D.TemplateCode FromTemplateCode, D.PhysicalWarehouseCode FromPhysicalWarehouseCode, D.WHSLOCATIONWAREHOUSEZONECODE FromZoneCode,
    D.WarehouseLocationCode FromLocationCode, E.LogicalWarehouseCode ToWarehouseCode, E.TemplateCode ToTemplateCode, E.PhysicalWarehouseCode ToPhysicalWarehouseCode,
    E.WHSLOCATIONWAREHOUSEZONECODE ToZoneCode, E.WarehouseLocationCode ToLocationCode, D.TransactionDate, D.ItemTypeCode, E.WeightGross SumGrossWeight, E.WeightNet SumNetWeight
    FROM Elements A, ADStorage B1, ADStorage B2, ADStorage B3, ADStorage B4, ADStorage B5, ADStorage B6, ADStorage B7,
    ADStorage B8, ADStorage B9, ADStorage B10, ADStorage B11, GoodCutAndFentDetail C, StockTransaction D, StockTransaction E
    where A.ABSUNIQUEID=B1.UNIQUEID and B1.NameEntityName='Elements' and B1.FieldName ='GoodCutAndFentSlipNo'
    and A.ABSUNIQUEID=B2.UNIQUEID and B2.NameEntityName='Elements' and B2.FieldName ='GoodCutAndFentEmployee'
    and A.ABSUNIQUEID=B3.UNIQUEID and B3.NameEntityName='Elements' and B3.FieldName ='GoodCutAndFentSetNo'
    and A.ABSUNIQUEID=B4.UNIQUEID and B4.NameEntityName='Elements' and B4.FieldName ='GoodCutAndFentSOCounterCode'
    and A.ABSUNIQUEID=B5.UNIQUEID and B5.NameEntityName='Elements' and B5.FieldName ='GoodCutAndFentSOCode'
    and A.ABSUNIQUEID=B6.UNIQUEID and B6.NameEntityName='Elements' and B6.FieldName ='GoodCutAndFentRemarks'
    and A.ABSUNIQUEID=B7.UNIQUEID and B7.NameEntityName='Elements' and B7.FieldName ='GoodCutAndFentTareWeight'
    and A.ABSUNIQUEID=B8.UNIQUEID and B8.NameEntityName='Elements' and B8.FieldName ='GoodCutAndFentPackingUM'
    and A.ABSUNIQUEID=B9.UNIQUEID and B9.NameEntityName='Elements' and B9.FieldName ='GoodCutAndFentPrimaryUM'
    and A.ABSUNIQUEID=B10.UNIQUEID and B10.NameEntityName='Elements' and B10.FieldName ='GoodCutAndFentPlant'
    and A.ABSUNIQUEID=B11.UNIQUEID and B11.NameEntityName='Elements' and B11.FieldName ='GoodCutAndFentPackingForm'
    and A.CompanyCode=C.CompanyCode and SlipNo=C.SlipNo and C.SeqNo=1 and A.ItemTypeCode=C.ElementItemTypeCode
    and A.SubcodeKey=C.ElementSubcodeKey and A.Code=C.ElementCode and A.CompanyCode=D.CompanyCode
    and C.FromSTTransactionNumber=D.TransactionNumber and C.FromSTTransactionDetailNumber=D.TransactionDetailNumber
    and A.CompanyCode=E.CompanyCode and C.ToSTTransactionNumber=E.TransactionNumber
    and C.ToSTTransactionDetailNumber=E.TransactionDetailNumber
    and SLIPNO='57575763636'
    This query return 1 row.
    Then i created a view on this query except condition SLIPNO='57575763636'
    Now when i use the view as shown below return two rows.
    select * from ViewGoodCutAndFent WHERE SLIPNO = '57575763636'
    I am not able to determine where is problem area is. Thanks & Regards

    In the query SLIPNO is probably C.SlipNo
    In the view SLIPNO is probably B1.ValueString

  • Displaying multiselect select items row-wise

    Hello ,
    I have a multiselect item where the user can select multiple items . I want to display the selected items in the next page - one value at a time .
    example :- if the user selects a, b, c from multiselect item i want to display in the next page as
    a
    b
    c
    what i am getting is a b c in the next page when i display the value of the item &<item_nam>.
    how to display the selected multiselect items one below the other ?
    thanks

    Hi,
    One way is
    Create PL/SQL Dynamic Content and enter to region source something like
    DECLARE
      l_arr APEX_APPLICATION_GLOBAL.VC_ARR2;
    BEGIN
      htp.ulistOpen;
      l_arr := APEX_UTIL.STRING_TO_TABLE(:P51_EMP);
      FOR i IN 1 .. l_arr.count
      LOOP
        htp.listItem(l_arr(i));
      END LOOP;
      htp.ulistClose;
    END;Change P51_EMP to your multiselect item name
    Sample here
    http://apex.oracle.com/pls/otn/f?p=40323:51
    Br,Jari

  • More rows than I cna handle

    I have written a small JSP application.
    It accesses an oracle DB and returns may rows.
    If the no of rows is too large the the buttons used to navigate the app dissapear off the bottom of the screen.
    (I know I should have considered but I ma new to developing)
    Does anyone have code that uses jdbc/sql to count the rrows and links the count to a next and previous button.
    the next and previous button would rerender the existing form but with the next 10 rows or the previous rows.
    Many Thanks.
    Peter

    u can have 2 fns in the java script like this..
    function getNextRows(begin,end){}
    function getPrevRows(begin,end)
    in the body section u can set a value for nav and activate the javascript fns using the choice like this..
    String nav = (request.getParameter("nav")==null)?"next":request.getParameter("nav");
              if (nav.equals("next"))
              {/display}
              if (nav.equals("prev"))
              {/display}
    the value for begin and end ex: begin =0;end=10
    int begin = Integer.parseInt((request.getParameter("begin")==null)?"0":request.getParameter("begin"));
              int end = Integer.parseInt((request.getParameter("end")==null)?"10":request.getParameter("end"));
    display 10 recs at a time          
    if (begin > 10)
    Previous);
    if(begin < max)
    Next);
    hope this helps

  • Basic DVD Help Needed - More challenging than expected

    Need help creating a basic DVD that a client needs. Here are the specs needed for the DVD:
    No Menu
    No Chapters
    Can scrub forward and backward
    Begins in DVD player in a stopped state
    I can not seem to find an option to remove chapter 1 from the V1 timeline in DVD Studio Pro. Also when DVD is inserted into DVD player the video begins playing right away instead of beginning in a "stopped state" on the DVD player. Any help would be greatly appreciated.

    Make a black menu with a invisible button and link it to your track.
    as for the chapter 1 - you can't get rid of this and is a good thing to have for what your trying to achieve anyways. That way the user can either hit play to start the video or they can hit chapter and it will play as well.
    If you don't want them to be able to push anything other than play on their remote you can disable buttons.

  • Content takes up a lot more space than expected.

    I just got a new 32 GB iPhone 5s.
    When I set it up, I used the backup from my 32 GB iPod Touch so that all my messages, apps, settings, etc would be transferred over.
    32 GB iPod Touch has 14.4 GB free.
    32 GB Phone 5s with the same exact content only has 4.7 GB free!
    I am using the same exact sync settings.  The main difference I'm seeing is that my iPhoto collection is reporting three times larger on the iPhone than it was on the iPod Touch.  Obviously the iPhone iOS is a different version too but the discrepency between the amount of free space on each device is huge.
    Can anybody explain this?  Thanks.

    Well mostly. I set it to 1% the numbers looked good and I thought it'd be okay, however after setting the reserved space to 0% I still missed 19GB. On a closer look we can see that the Ext3 filesystem is around 20GB smaller than the XFS one, and I can't really understand that:
    [root@dude ~]# tune2fs -m 0 /dev/data-backup/fileserver
    tune2fs 1.40.3 (05-Dec-2007)
    Setze Verhältnis der reservierten Blöcke auf 0% (0 blocks)
    [root@dude ~]# df -h
    Dateisystem Größe Benut Verf Ben% Eingehängt auf
    /dev/mapper/data-fileserver
    699G 607G 93G 87% /mnt/fileserver
    /dev/mapper/data--backup-fileserver
    679G 606G 74G 90% /mnt/backup
    Both LVM groups have the same size:
    [root@dude ~]# lvm lvscan
    ACTIVE '/dev/data-backup/fileserver' [689,64 GB] inherit
    ACTIVE '/dev/data/fileserver' [698,64 GB] inherit
    And
    [root@dude ~]# tune2fs -l /dev/data-backup/fileserver
    tune2fs 1.40.3 (05-Dec-2007)
    Block count: 180785152
    Since I haven't changed the standard block size of 4K this means we have 723140608 K of data, or 706192 MB or 689,64 GB which is exactly the size of the volumes. So still I wonder what happended to 19GB of space

  • Planning Desktop Refresh Taking more time than Expected

    Helllo Everyone,
    We are using system 9.2(essbase and planning).The planning desktop refresh takes about 19-20 min irrespective of single or multiple sparse dimension member additions, deletes or moves even after clearing the database.
    Going through the application log we noticed each time the location aliases are deleted and re-created.So its taking like 3-4 min for creating location aliases for each plan type( we have 3 plan types totally).Is that soemthing we can avoid when we perform refresh or need to change any performance settings to tweak the refresh timings.
    Any thoughts will be helpful.
    Thanks

    Hi,
    1. check your Planning Repository/DB and the connection between the DB to Essbase.
    2. check your DB server performance. Is there any other DB activity during your refresh?
    Zaky

Maybe you are looking for