ACE - Problem with creation of selective BP Rule

Hello Experts,
I want to restrict the visibility of Accounts with ACE into CRM. The users should only have the right to see Accounts (Sold-to) with the same sales organization as himself.
Therefore if implemented the Interface Method GET_ACTORS_FROM_OBJECTS :
  TYPES: BEGIN OF partner_data,
          partner         TYPE bu_partner,
          partner_guid    TYPE bu_partner_guid,
        END OF partner_data.
  DATA: lt_partner_data TYPE TABLE OF partner_data,
        ls_partner_data TYPE partner_data,
        lv_guid TYPE bu_partner_guid,
        ls_object_guid TYPE crms_ace_object_guid,
        lv_rltyp       TYPE bu_partnerrole.
  SELECT partner partner_guid FROM but000 INTO CORRESPONDING FIELDS OF TABLE lt_partner_data.
  LOOP AT lt_partner_data INTO ls_partner_data.
    SELECT SINGLE rltyp FROM but100 INTO lv_rltyp WHERE partner = ls_partner_data-partner.
    IF lv_rltyp EQ 'CRM000'.
      ls_object_guid-object_guid = ls_partner_data-partner_guid.
      APPEND ls_object_guid TO ex_object_guid_table.
    ENDIF.
  ENDLOOP
Everything works fine, and the users could only find the accounts which have the same sales organization as the user.
But now, the users couldn't find any contact person in the system.
My solution for that problem was to implement a second ACE rule, where the users get access to all other BP except Accounts.
For me, this solution is unsatisfactory!
In a system with about 100.000 Contacts this solution would significally degrade the performance. There will be thousands of entries in the ACE tables which weren't needed.
I only want to filter the Accounts mit ACE and nothing more.
Is there a possibility to filter only Accounts with ACE?
Regards
Steffen

Hi Steffen,
with the activation of ACE this is indeed one of those side effects.
isn't there any way to do some extra coding in the runtime check of ACE? If you can check there is the object the user wants to see is a person that would save you a lot of work.

Similar Messages

  • Problems with creation of catalogue XPGrpwise and temporary

    Problems with creation of catalogue XPGrpwise and temporary files.
    I use GroupWise 8.01 and WinXP (SP2), OpenOffice 3.1.
    Why at opening files in Library, temporary files are not created in catalogue C:\Documents and Settings\Jon Smith\Local Settings\Temp\XPGrpwise, and created in catalogue C:\Documents and Settings\Jon Smith\My Documents. That causes problems. How to change a situation that worked as it is necessary.
    Catalogue XPGrpWise is created and leaves duly in catalogue C:\Documents and Settings\Jon Smith\Local Settings\Temp\.

    Cvetaev,
    It appears that in the past few days you have not received a response to your
    posting. That concerns us, and has triggered this automated reply.
    Has your problem been resolved? If not, you might try one of the following options:
    - Visit http://support.novell.com and search the knowledgebase and/or check all
    the other self support options and support programs available.
    - You could also try posting your message again. Make sure it is posted in the
    correct newsgroup. (http://forums.novell.com)
    Be sure to read the forum FAQ about what to expect in the way of responses:
    http://forums.novell.com/faq.php
    If this is a reply to a duplicate posting, please ignore and accept our apologies
    and rest assured we will issue a stern reprimand to our posting bot.
    Good luck!
    Your Novell Product Support Forums Team
    http://support.novell.com/forums/

  • Problem with Creation of TemSe file...

    HI Experts...
    Here im facing the problem with creation of # 3 rd Quarters
    Temse file.when ever i use the tcode pc00_m40_f24 and entering the details of quater 3 ...here im showing up the ABAP Runtime error."""Overflow for arthimitic operation Type P in program  HINCF240"".
    What could be done to overcome the problem.Please advice.
    Regards,
    V Sai.

    Hi experts/Sriram...
    Thanks for the reply.
    The -
    >showing the line....
            QS80_TAB-DEDMT=QS80_TAB-DEDMT+S80-DEDMT
    Where should we change to get rid of this runtime error.
    Here in my quality everthing is fine and we have uploaded patches in quality upto recent one sp80.But in prod. the patchlevel is sp71.Will it be the reason.
    Please advice me on this as i have to complete the issue of F16.
    Thanks and Regards,
    V Sai.

  • Problem with two of my business rule triggers

    Good morning every one,
    I have a small problem with two of my business rule triggers.
    I have these tables:
    pms_activity
    csh_cash
    csh_integrate_leh
    csh_integrate_led
    and my process goes like this:
    upon approval of a row in my pms_activity table I have a trigger that insert a row in my csh_cash - and in the csh_cash table I have a trigger that will insert in the csh_ingerate_leh and csh_integrate_led.
    my problem is pms_activity does generate a row in csh_cash but the trigger in the cash does not fire to generate a row in the csh_integrate_leh and led tables.
    I have generated in the following order after I created my business rule:
    I have generated the table from the designer (server module tab)
    I have generated the CAPI from the head start utility
    I have generated the API from the designer
    I have generated the CAPI from the designer
    I have run the recompil.sql
    I have checked that my business rule trigger is enabled and should run on insert and no where restriction
    === this is my business rule logic ======
    l_rule_ok boolean := true;
    begin
    trace('br_csh001_cev (f)');
    csh_gl_pkg.csh_gen_integ_jvs(p_id
    ,p_ref_num
    ,p_own_id
    ,p_trt_id
    ,p_value_date
    ,p_description
    ,p_amount
    ,p_cur_id
    ,p_gla_dr
    ,p_gla_cr
    ,p_gla_pl
    ,p_gla_rev
    ,p_gla_eqt);
    return l_rule_ok;
    exception
    when others
    then
    qms$errors.unhandled_exception(PACKAGE_NAME||'.br_csh001_cev (f)');
    end br_csh001_cev;
    ==== end =======================
    Any help will be appreciated as I have struggled with this for two days.
    Thanks

    hmmm...
    Try resetting it again and restoring with the same backup file...
    Does the phone work properly once you've reset it before you try restoring? A lot of people here have experienced problems restoring from backups... could be worth forgetting about it and starting from scratch.
    You could try contacting your nearest Nokia Service Centre (www.nokia.com/repair) and see if they can do anything - it may need the firmware reinstalling or upgrading... possibly... give them a call though and see.
    Nokia History: 3110, 5110, 7110, 7110, 3510i, 6210, 6310i, 5210, 6100, 6610, 7250, 7250i, 6650, 6230, 6230i, 6260, N70, N70, 5300, N95, N95, E71, E72
    Android History: HTC Desire, SE Xperia Arc, HTC Sensation, Sensation XE, One X+, Google Nexus 5

  • There is any Performance problem with Creation of many Y or Z  Programs.

    HI,
    There is any Performance problem with Creation of many Y or Z  Programs. plz give clarity regarding this to me......
    regards
    ganesh

    Ganesh,
    Can you please mention the context and the purpose of creating these custom program.  And application are you referring to?
    Regards,
    Rohit

  • Problem with creation of jar with external libraries

    hi guys, I've no problem with creation of jar,i use this command:
    jar -mcf MANIFEST.MF NameFile.jar *.class
    my file manifest is this:
    Manifest-Version: 1.0
    Created-By: Me
    Main-Class: NameFile
    Now,I've to make a jar file,but i have to use some external libraries in jar format.
    I've read on sun tutorial and i've added to manifest this line:
    Class-Path: dt.jar formshelp.jar formsrt.jar jh.jar looks-1.3.1.jar substance.jar TableLayout.jar
    But the jar file doesn't work, neither with a double click nor with console...
    Someone can help me?Thanks!:)

    Darkweb wrote:
    sorry but,the external libraries that i use are in .jar,what i've to do to include these libraries in my jar?One of 3 things
    1) Take them out of the jar, and put them in a folder, preferably a folder in the same folder as the jar
    2) Write a custom classloader to load classes from nested jars
    3) Extract the contents of all the dependency jars, and jar them all up with your own code
    The first is almost always the most preferable, the second one is doable but brittle and resistent to updating dependencies ( you have to release everything for any changes you need, even if it's not a change in your own code ) and the third one is tedious and suffers from the same robustness problems of the second, not to mention that a lot of software licences prohibit you from actually doing it. Do the first one, it's by far the most common and easiest to maintain. I really wouldn't advise the third option, ever, though. Any activity that reduces the modularity of your application is ill-advised

  • F-32 : Problem with Open Item selection

    Hi,
    We have a strange problem with open Item selection for customer clearing in t-code F-32
    In My QA system
    if I input spl GL indicator ="*" and uncheck Normal OI tick,
    the system selects all open items,
    (those with spl GL indicator and those without spl GL indicator)
    In My Dev system
    If I input spl GL indicator ="*" and uncheck Normal OI tick
    the system does not select any open items,
    Please let me know which setting controls this behaviour ?
    Regards
    Sachin

    Hello,
    Check your data in FBL5N for the option "Special GL Transactions". There could be that there is no data in the system with SPECIAL GL TRANSACTIONS.
    In F-32, there is no value like *
    You need to input right Special GL Indicator. "*" will not work here.
    I am sure in both the systems if you put "*" and UNTICK your normal transaction, you will NOT get any items to clear.
    Please DOUBLE CHECK whether you have unticked normal transaction.
    Regards,
    Ravi

  • HT1338 Problem with MAIL, when select names that start with "E" the mail freeze. Can't fix it.

    Problem with MAIL, when select names that start with "E" the mail freeze. Can't fix it.

    Now I checked the materials that I got from AT&T Yahoo and
    port 25 is used as the outgoing mail port, 110 for incoming.
    This is for the POP type account provided by AT&T, not necessarily for an email account and SMTP server not provided by AT&T.
    Sounds like AT&T blocks using an SMTP server that is outside of their network or not provided by AT&T on Port 25.
    Try the following first.
    Go to Mail > Preferences > Accounts and under the Account Information tab for your .Mac account preferences at the SMTP server selection, select the Server Settings button below for the .Mac SMTP server.
    Enter 587 in place of 25 in the Server Port field and when finished, select OK to save the changed setting.
    If this doesn't work, we will go to plan B.

  • Problem with focus and selecting text in jtextfield

    I have problem with jtexfield. I know that solution will be very simple but I can't figure it out.
    This is simplified version of situation:
    I have a jframe, jtextfield and jbutton. User can put numbers (0-10000) separated with commas to textfield and save those numbers by pressing jbutton.
    When jbutton is pressed I have a validator which checks that jtextfield contains only numbers and commas. If validator sees that there are invalid characters, a messagebox is launched which tells to user whats wrong.
    Now comes the tricky part.
    When user presses ok from messagebox, jtextfield should select the character which validator said was invalid so that user can replace it by pressing a number or comma.
    I have the invalid character, but how can you get the focus to jtextfield and select only the character which was invalid?
    I tried requestFocus(), but it selected whole text in jtextfield and after that command I couldn't set selected text. I tried with commands setSelectionStart(int), setSelectionEnd(int) and select(int,int).
    Then I tried to use Caret and select text with that. It selected the character I wanted, but the focus wasn't really there because it didn't have keyFocus (or something like that).
    Is there a simple way of doing this?

    textField.requestFocusInWindow();
    textField.select(...);The above should work, although read the API on the select(...) method for the newer recommended approach on how to do selection.
    If you need further help then you need to create a "Short, Self Contained, Compilable and Executable, Example Program (SSCCE)",
    see http://homepage1.nifty.com/algafield/sscce.html,
    that demonstrates the incorrect behaviour, because I can't guess exactly what you are doing based on the information provided.
    Don't forget to use the "Code Formatting Tags",
    see http://forum.java.sun.com/help.jspa?sec=formatting,
    so the posted code retains its original formatting.

  • Problem with align and Selection Tool.

    This is a weird problem which I cannot explain at all.
    I am using AI CS3 with Windows XP.
    I am having this completely random problem with the selection tool and align pallette I cannot explain.
    I have a group of objects and groups of objects I am trying to use the align pallette on.
    Sometimes when I select all of the items I want to align, either by shift-clicking each one, or by drag-selecting them I am getting a random behavior where sometimes the align button will move all of the objects COMPLETELY off of the artboard, all the way to the edge of the working area and beyond into the grey area you cannot see.
    Normally, this would be caused by a stray point somewhere way off-screen or some other cleanup oriented thing on my part. However in this case, the behavior is random and does not happen every time I hit the align button.
    Sometimes it takes items within my grouped objects (lines of text) and moves THEM completely off the work area, leaving the other items in the groups in place. Sometimes the bounding box when I drag-select the items will stretch extremely far off of the work area.
    I have even dragged the extra large bounding box, bringing the edge that was once way off screen onto the work area, in outline view, in hopes of finding the stray point or object that could be causing this. However NOTHING appears that can be causing the align to throw all of my objects off-screen.
    The random nature of this behavior and the way it sometimes affects my text objects inside of groups leads me to believe it is a program bug and nothing I am doing.
    The behavior takes place regardless if I select by dragging or by shift-clicking, and is happening in more than one file, also randomly.
    Also, choosing "align to art board" vs. "align to crop area" does nothing to change this behavior.
    It is quite irritating. I've been using illustrator since v.88 so I have enough experience to know this is not normal.
    Any help with this one would be greatly appreciated.

    When this behaviour occurs, are perhaps guides included in your selection?

  • Problems with PreparedStatement when select restrict are byte params

    Hi,
    i have a problem trying to select information when the "select" has a byte restrict.
    The table in database is:
    CREATE TABLE `positions` (
    `PKID` int(10) unsigned NOT NULL auto_increment,
    `POSCODE` varbinary(30) NOT NULL,
    `ISWTURN` binary(1) NOT NULL,
    `QTT_GAMES` int(10) unsigned NOT NULL default '1',
    PRIMARY KEY (`PKID`),
    UNIQUE KEY `UNIQ_POS` (`POSCODE`,`ISWTURN`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    And the test code to get the qtt_games is :
    conn = DriverManager.getConnection (url,user,pwd);
    byte bcode[] = poscode.getByteArrayCode();
    // bcode is inserted ok in another preparedstatement...
    String query = "SELECT qtt_games FROM positions "+
    "WHERE poscode=? and iswturn=?";
    PreparedStatement pstmt = conn.prepareStatement(query);
    pstmt.setBytes (1,bcode);
    pstmt.setByte (2,poscode.getIsWhiteTurn()); //it returns a byte
    ResultSet rs = pstmt.executeQuery (query);
    When pstmt.executeQuery is reached, it's thrown the exception:
    com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=? and iswturn=?' at line 1
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:3170)
    at com.mysql.jdbc.Connection.execSQL(Connection.java:3099)
    at com.mysql.jdbc.Statement.execute(Statement.java:695)
    at app.server.bbdd.MYSQLBDManager.getGamesBasicInfo(MYSQLBDManager.java:942)
    at app.server.bbdd.MYSQLBDManager.main(MYSQLBDManager.java:1068)
    Can anybody tell me what's wrong?? I think the query is ok, but don't know what's happening with this...
    Lots of thanks.

    Hi,
    sorry, i know i've post this same message by error in "new to java" thread.... (i'm new in the forum... can i delete the wrong comment??)
    The SQLState is 42000 (syntax error), but it doesn't give me much information because i had already searched in google why can be the cause of it, but there are only a few comments about problems like this, without a solution...
    The column poscode in the table positions contains an array of bytes that codify a position in a chess board. I've to use this in the WHERE clause because i'm developing a chess game consulting project where there are millions of different positions and i've to get the games that have the same position in it's position history.
    The code to insert the positions is:
    query = "INSERT INTO positions VALUES "+
         "(null,?,?,default) "+
         "ON DUPLICATE KEY UPDATE qtt_games=qtt_games+1";
    pstmt = conn.prepareStatement(query,Statement.RETURN_GENERATED_KEYS);
    pstmt.setBytes(1,bcode);
    pstmt.setByte(2,poscode.getIsWhiteTurn());
    pstmt.executeUpdate();
    which works ok and positions can be seen from mysql browser, but i can't select them using the PreparedStatement..
    I have been searching a lot of information about this problem with no results... this is the why i posted this...
    Any help will be useful, thanks.

  • Problem with the default selection screen condition

    hi guys,
    I have got some problem with the default screen given by the PNP logical database, P0000 infotype automatically populated according to the condition given in default screen.
    Reg,
    Hariharan

    Don know what u r trying to acheive.
    1) when u have specified PNP in the logical databse field of attributes of program, the SAP wil proivde u default PNP screen and here u can also add ur paramters if u want.
    2) in the program u have to declare like
    INFOTYPES: 0000,0001. "Etc
    for all the infotypes u want to use in the program.
    3) it is the GET PERNR event which wil fil all the p0000 and p0001 (internal tables for al the infotypes declared via INFOTYPES syntax as shown above)
    4) after tht get pernr, u now have data in P tables and u can use it for further reporting.
    5) refer below dummy code -
    REPORT  ZPPL_PREVEMPLOYERS   message-id rp
                                 line-size 250
                                 line-count 65.
    *Program logic :- This Report is used to Download all the Previous
    * Employer (IT0023) records of the employees
    *eject
    *& Tables and Infotypes                                                *
    tables: pernr.
    infotypes: 0000,
               0001,
               0002,
               0023.
    *eject
    *& Constants                                                           *
    constants: c_1(1)       type c               value '1'   ,
               c_3(1)       type c               value '3'   ,
               c_i(1)       type c               value 'I'   ,
               c_x(1)       type c               value 'X'   ,
               c_eq(2)      type c               value 'EQ'  ,
               c_pl03       like p0001-werks     value 'PL03'.
    *eject
    *& Selection-Screen                                                    *
    parameters: p_file  like rlgrap-filename default 'C:TempABC.xls',
                p_test  as checkbox default c_x               .
    *eject
    *& Internal tables                                                     *
    * Internal Table for Output
    data: begin of t_output occurs 0    ,
           pernr like pernr-pernr       ,
           nachn like p0002-nachn       ,
           vorna like p0002-vorna       ,
           orgeh_stext like p1000-stext ,
           plans_stext like p1000-stext ,
           begda like p0023-begda       ,
           endda like p0023-endda       ,
           land1 like p0023-land1       ,
           arbgb like p0023-arbgb       ,
           ort01 like p0023-ort01   .
    data: end of t_output           .
    *eject
    *& Variables                                                           *
    data: o_stext like p1000-stext,
          p_stext like p1000-stext.
    *eject
    *& Initialization                                                      *
    Initialization.
    * Initialize Selection-Screen values
      perform init_selction_screen.
    *eject
    *& AT Selection-screen                                                 *
    at selection-screen .
    * Check if Test run selected, download file name should be entered
      if p_test is initial.  "
        if p_file is initial.
          message e016 with 'Please enter file name'
                            'specifying complete path'.
        endif.
      endif.
    *eject
    *& Start-of Selection                                                  *
    Start-of-selection.
    get pernr.
      clear t_output.
    * Read Infotype 0
      rp-provide-from-last p0000 space pn-begda pn-endda.
      check pnp-sw-found eq c_1.
    * Check if employee is active
      check p0000-stat2 in pnpstat2.      "pernr Active
    * Read Infotype 1
      rp-provide-from-last p0001 space pn-begda pn-endda.
      check pnp-sw-found eq c_1.
    * check if employee belongs to PL03
      check p0001-werks in pnpwerks.  "belongs to PL03
    * Check if emp belongs to Active Group
      check p0001-persg in pnppersg.
    * Read Infotype 2
      rp-provide-from-last p0002 space pn-begda pn-endda.
      check pnp-sw-found eq c_1.
    * Read Org Unit Text.
    CALL FUNCTION 'HR_READ_FOREIGN_OBJECT_TEXT'
         EXPORTING
              OTYPE                   = 'O'
              objid                   = p0001-orgeh
              begda                   = p0001-begda
              endda                   = p0001-endda
              reference_date          = p0001-begda
         IMPORTING
              object_text             = o_stext
          EXCEPTIONS
              nothing_found           = 1
              wrong_objecttype        = 2
              missing_costcenter_data = 3
              missing_object_id       = 4
              OTHERS                  = 5.
    *Read Position Text.
    CALL FUNCTION 'HR_READ_FOREIGN_OBJECT_TEXT'
         EXPORTING
              OTYPE                   = 'S'
              objid                   = p0001-plans
              begda                   = p0001-begda
              endda                   = p0001-endda
              reference_date          = p0001-begda
         IMPORTING
              object_text             = p_stext
         EXCEPTIONS
              nothing_found           = 1
              wrong_objecttype        = 2
              missing_costcenter_data = 3
              missing_object_id       = 4
              OTHERS                  = 5.
    * Gather all the required information related to the emp
      move: pernr-pernr to t_output-pernr,
            o_stext to t_output-orgeh_stext,
            p_stext to t_output-plans_stext,
            p0002-nachn to t_output-nachn,
            p0002-vorna to t_output-vorna.
    * Gather previous Employee details
      loop at p0023.
        move-corresponding p0023 to t_output.
        append t_output.
      endloop.
    *eject
    *& End-of Selection                                                    *
    end-of-selection.
      perform print_report.
    * Downlaod the file
      if not t_output[] is initial.
        if p_test eq space.
          perform download_file.
        endif.
      else.
        write: 'No records selected' color col_negative.
      endif.
    *eject
    *& Top-of-page                                                         *
    Top-of-page.
    * Print Header
      perform print_header.
    *eject
    *&      Form  download_file
    * Description :
    FORM download_file .
      DATA: full_file_name    TYPE string,
            z_akt_filesize    TYPE i     .
      full_file_name = p_file.
    *  download table into file on presentation server
      CALL METHOD cl_gui_frontend_services=>gui_download
        EXPORTING
          filename                = full_file_name
          filetype                = 'DAT'
          NO_AUTH_CHECK           = c_x
          codepage                = '1160'
        IMPORTING
          FILELENGTH              = z_akt_filesize
        CHANGING
          data_tab                = t_output[]
        EXCEPTIONS
          file_write_error        = 1
          no_batch                = 2
          gui_refuse_filetransfer = 3
          invalid_type            = 4
          no_authority            = 5
          unknown_error           = 6
          header_not_allowed      = 7
          separator_not_allowed   = 8
          filesize_not_allowed    = 9
          header_too_long         = 10
          dp_error_create         = 11
          dp_error_send           = 12
          dp_error_write          = 13
          unknown_dp_error        = 14
          access_denied           = 15
          dp_out_of_memory        = 16
          disk_full               = 17
          dp_timeout              = 18
          file_not_found          = 19
          dataprovider_exception  = 20
          control_flush_error     = 21
          not_supported_by_gui    = 22
          error_no_gui            = 23
          OTHERS                  = 24.
      IF  sy-subrc               NE        0.
        MESSAGE e016 WITH 'Download-Error; RC:' sy-subrc.
      ENDIF.
    ENDFORM.                    " download_file
    *eject
    *&      Form  print_report
    *Description:
    FORM print_report .
      data: i       type i,
            w_count type i.
      sort t_output.
    * Print the report
      loop at t_output.
        i = sy-tabix mod 2.
        if i eq 0.
          format color col_normal intensified on.
        else.
          format color col_normal intensified off.
        endif.
        write:/1     t_output-pernr          ,
               10     t_output-vorna(25)     ,
               35    t_output-nachn(25)      ,
               61   t_output-orgeh_stext     ,
               102  t_output-plans_stext     ,
               143  t_output-begda           ,
               154   t_output-endda          ,
               168   t_output-land1          ,
               178   t_output-arbgb(40)      ,
               219   t_output-ort01          ,
               249   space              .
      endloop.
      uline.
      Describe table t_output lines w_count.
      Skip 2.
      Write:/ 'Total No of Records Downloaded: ' color col_total,
              w_count.
    ENDFORM.                    " print_report
    *eject
    *&      Form  print_header
    *Description:
    FORM print_header .
      skip 1.
      Uline.
      format Intensified on color col_heading.
      write:/1   'Pers. #'        ,
             10   'Last Name'     ,
             35   'First Name'    ,
             61   'Org Unit'      ,
             102  'Position'      ,
             143  'Beg Date'      ,
            154   'End Date'      ,
            168   'Cntry Key'     ,
            178   'Prev Employer' ,
            219  'City'           ,
            249   space          .
      format intensified off color off.
      uline.
    ENDFORM.                    " print_header
    *eject
    *&      Form  init_selction_screen
    *Description:
    FORM init_selction_screen .
      refresh: pnpwerks,
               pnppersg,
               pnpstat2.
      clear:   pnpwerks,
               pnppersg,
               pnpstat2.
      pnpwerks-sign   = c_i.
      pnpwerks-option = c_EQ.
      pnpwerks-low    = c_pl03.
      append pnpwerks.
      pnppersg-sign   = c_i.
      pnppersg-option = c_EQ.
      pnppersg-low    = c_1.
      append pnppersg.
      pnpstat2-sign   = c_i.
      pnpstat2-option = c_EQ.
      pnpstat2-low    = c_3.
      append pnpstat2.
    ENDFORM.                    " init_selction_screen

  • Problem with userdefined combobox selection

    Hi guys,
    Have an "AutoSearchComboBox" as follows for searching the combolist fast.Have some problems with the selection in the AutoSearchComboBox.
    *public class AutoSearchComboBox extends JComboBox {*
    private static final long serialVersionUID = 1L;
    *public AutoSearchComboBox(){*
    setEditable(true);
    setModel(new AutoSearchComboBoxModel());
    setEditor(new MyComboBoxEditor());
    public class AutoSearchComboBoxModel extends AbstractListModel
    *implements MutableComboBoxModel{*
    private static final long serialVersionUID = 1L;
    private Vector items,filteredItems;
    private Filter filter;
    private Object selectedItem;
    *public AutoSearchComboBoxModel(){*
    this.items = new Vector();
    this.filteredItems = new Vector();
    this.filter = null;
    updateFilteredItems();
    *public void addElement(Object obj) {*
    items.add(obj);
    updateFilteredItems();
    public void insertElementAt(Object obj, int index) {}
    *public void removeElement(Object obj) {*
    items.remove(obj);
    updateFilteredItems();
    *public void removeElementAt(int index) {*
    items.remove(index);
    updateFilteredItems();
    *public Object getSelectedItem() {*
    return selectedItem;
    *public void setSelectedItem(Object anItem) {*
    if ((selectedItem==null) && (anItem==null))
    return;
    if ((selectedItem != null) && (selectedItem.equals(anItem)))
    return;
    if(anItem!= null && anItem.equals(selectedItem))
    return;
    selectedItem = anItem;
    fireContentsChanged(this, -1,-1);
    *public Object getElementAt(int index) {*
    return filteredItems.get(index);
    *public int getSize() {*
    return filteredItems.size();
    *public void setFilter(Filter filter){*
    this.filter = filter;
    updateFilteredItems();
    *public void updateFilteredItems(){*
    fireIntervalRemoved(this,0,filteredItems.size());
    filteredItems.clear();
    if(filter==null)
    filteredItems.addAll(items);
    else
    *for(Iterator iter = items.iterator(); iter.hasNext();){*
    Object item = iter.next();
    if (filter.accept(item))
    filteredItems.add(item);
    fireIntervalAdded(this,0, filteredItems.size());
    *public static interface Filter{*
    public boolean accept(Object obj);
    *class FilterItems implements Filter{*
    private String prefix;
    *public FilterItems(String prefix){*
    this.prefix = prefix;
    *public boolean accept(Object obj){*
    return doesStartsWithThePrefix(obj.toString(),prefix);
    *private boolean doesStartsWithThePrefix(String str1,String str2){*
    return str1.toUpperCase().startsWith(str2.toUpperCase());
    *public class MyComboBoxEditor implements ComboBoxEditor,DocumentListener{*
    private JTextField text;
    private volatile boolean filtering = false;
    private volatile boolean setting = false;
    *public MyComboBoxEditor(){*
    text = new JTextField(15);
    text.getDocument().addDocumentListener(this);
    *public void addActionListener(ActionListener l) {*
    *// TODO Auto-generated method stub*
    *public void removeActionListener(ActionListener l) {*
    *// TODO Auto-generated method stub*
    *public Component getEditorComponent() {*
    return text;
    *public void setItem(Object anObject) {*
    if(filtering)
    return;
    setting = true;
    String newText = (anObject==null)? "":anObject.toString();
    text.setText(newText);
    setting = false;
    *public Object getItem() {*
    return text.getText();
    *public void selectAll() {*
    text.selectAll();
    *public void changedUpdate(DocumentEvent e) {*
    *// TODO Auto-generated method stub*
    *public void insertUpdate(DocumentEvent e) {*
    handleChange();
    *public void removeUpdate(DocumentEvent e) {*
    handleChange();
    *public void handleChange(){*
    if(setting)
    return;
    filtering = true;
    Filter filter = null;
    if(text.getText().length()>0)
    filter = new FilterItems(text.getText());
    *((AutoSearchComboBoxModel)getModel()).setFilter(filter);*
    setPopupVisible(false);
    if (getModel().getSize()>0)
    setPopupVisible(true);
    filtering = false;
    Iam creating the combo boxes as follows from another source file.
    private AutoSearchComboBox indexTagCombo,indexValueCombo
    //The following function is called for loading the comboBoxes.
    private void loadInitialIndexTagValues()
    indexTagCombo.removeAllItems();
    //Getting values to be fiiled in the comboBox.
    Set tags = this.model.getAvailableIndexTags();
    // Iterating over the elements in the set
    Iterator tagIter = tags.iterator();
    while (tagIter.hasNext()) {
    indexTagCombo.addItem(tagIter.next());
    //Loading index values.
    String currTag = (String)indexTagCombo.getSelectedItem(); //Selection problem 1
    The statement above returns me null & the follwing code doesnt fill the other comboBox.
    Set values = model.getAllValues(currTag);
    indexValueCombo.removeAllItems();
    Iterator valIter = values.iterator();
    while (valIter.hasNext()) {
    indexValueCombo.addItem(valIter.next());
    Have added an "itemListener" to the indexTagCombo as follows:
    indexTagCombo.addItemListener(new ItemListener(){
    public void itemStateChanged(ItemEvent e)
    indexTagSelection(e);
    private void indexTagSelection(ItemEvent e) {
    if (e.getStateChange() == ItemEvent.SELECTED)
    //The "getStateChange" is never ItemEvent.SELECTED,so that it never gets in to this loop.//Another problem
    //code goes Here
    There is some problem with the defined "AutoSearchComboBox" with selection.When I change the privately defined "AutoSearchComboBox" to JComboBox and make it editable,all the selection problems are gone.
    In short all the "getSelectedItem" from the "AutoSearchComboBox" and the "itemstate" events defined are not going to the "ItemEvent.SELECTED"
    What should I fix in the "AutoSearchComboBox" so that the selections work.
    Any help is greatly appreciated.
    Thanks
    P

    Hi Smita,
    When you create the Transaction code either thru Se80 or thru Se93... please see that you are giving the screen number asked there as 1000, which is the default screen number for the selection screen.
    Also, please see if the checkboxes for the GUI Support are ticked. I think it iwll solve you problem.
    Regards,
    Jayant

  • Problem with quick mask selection appearence

    Hi,
    I am having a problem with the quick mask view (red) selection. When i press the \ key to see the selection i get a red rectangle in a random place of the screen instead of the red selection. Before the last update i had no such problem. Any solution to this ?
    I am working on 64bit cc version Win8

    No I tried to disable the Graphics Processor but no result.  It is as it tries to aply the mask but crushes. if i leave it for about 10 sec photoshop crushes also...

  • Problem with Headstart Multi-Select LOV

    Hi,
    I'm working on a few forms which should include a Multi-Select
    LOV. Now here's the problem: One MSEL doesn't close; you can
    select record(s), the LOV returns them, but doesn't disappear.
    Clicking Cancel doesn't help.
    Another MSEL-problem in another form: if you click Select All,
    this selection isn't visible in the MSEL. He returns all of the
    records, but it looks like he only selected one. Working with
    CTRL to select more than one record doesn't work either. This
    one closes fine.
    As you know I have to include module component
    QMS_MSEL_LOV_BUTTONS (which includes all button-functionality),
    and then it should work, but it doesn't.
    We've checked all the properties and they seem to be correct. It
    isn't the first time we encountered these problems. We always
    rebuilt the MSEL LOV, but it doesn't help this time.
    Has anyone got an idea what's causing this problem.
    P.S. There are also MSEL LOV's which operate just fine, without
    any problems; only these two are doing strange things.
    Thx,
    Wouter

    Workaround provided by Lauri Boyd seems to have worked:
    A bug (#1985903) was introduced in Forms 6.0.8.13.0 and later which affected Headstart. This was fixed in Headstart patch 6.5.2.1 which is available through the Supplement Option.
    Description
    ===========
    1. When using a multi-select LOV (which is displayed in a modal dialog
    window), you select the records you want, press OK, and the application exits.
    2. When using a shuttle control to move records from left to right or vice
    versa, you select the records you want, press '>' to move them, and the
    application exits.
    This occurs in Forms 6.0.8.13.0 and 6.0.8.14.1. It did NOT occur in prior
    releases. This is some kind of forms bug.
    Workaround
    ==========
    For some reason the call to procedure renumber in qms$msel.process_records
    causes the application to exit. If you copy the code from renumber to all the
    places from which it is called, it works fine.
    - open qmslib65.pll in Form Builder
    - open package body qms$msel
    - find procedure process_records and define a local variable l_recno of type
    number.
    - find local procedure renumber and copy the body of this procedure
    (everything
    after 'begin' and before 'exception').
    - replace each call to 'renumber;' with the copied code.
    Regards,
    Lauri

Maybe you are looking for

  • Ipod causes Windows Vista to stutter

    Hi, I have recently upgraded to Vista and when i plug my ipod in, it causes my system to slow to a crawl and stutter, mouse moves really slowly, things take ages to action. I had this problem when i installed my USB hard drive, but that seemed to cur

  • Fields in Report

    Hello,     I need fields for following reports. Fields for Purchase orders Report. Fields  for Plant and Purchase Organization with all the vendors of the selected material. Fields for Customer Sales report, which gives complete information of sales

  • Relation with parent components view with child component

    Hi All, Can a view controller of  one component can use his child component with the component usage declaration? Regards Chandra Edited by: Chandra Sekhara on Jan 4, 2008 4:26 AM

  • Opening pdf file in ole container in forms 6i

    Dear Sir, I have am working on Rental property system , i have to save the PDF of original agreement document along with the agreement transaction data entry form, but when i open those agreement in adobe writer there is issue that user can save as i

  • Problem in Forms navigator

    i'm sorry. i'm not good english writer. but i have one question. In forms navigator, if i click OAF Page, OAF Page will create in new Browser every time. so, multi oaf page exists. when i calll a dbtransaction's operation in a oaf page of multi, some