Rule fragments using conditions from modules lead to system exception

I try to buid a project that uses a module with some rules that deduct a boolean value based on a name input (string). These name strings are inside an entity (one to many contained relationship from global), so the boolean is deducted per instance. That entity has a one to one relationship with another entity.
The property model is as follows. (All entitys, relationships and attributes are exported):
global - one.to.many entity1 - one.to.one - entitiy2
The modulair structure is as follows: module1 that contains a common property structure, is used by module2 with a set of business rules on instances of entity 1, which is used bij the main rulebase.
I use rule fragments on instances of entity2, that uses a a boolean statement in entity 1
i.e.:
(in module2)
the name of entity1 is foobar if
entity1 = "foobar"
(in the main rulebase)
[rule fragment]
entity2 is relevant if
the name of entity1 is foobar
[rule fragment:1]
entity2 is not relevant
If I build the project, I get a system exception. System.Exception Unknown relationship. It then shows the reverse text of the relationship text from entity1 to entity2. Then the stack trace continues, it begins with Oracle.Modeling.Compiler.Plugin.XMLTranslate.X3ToXML.ResolveDataModelReferences(ISourceDocument doc,XmlElement el, String context)
Is this a bug? The exception seems to point in that direction. In the userguide is explained that 'you cannot have rule fragments that cross over module boundaries ' but my fragments are in the main rulebase only.
Philip.

I am trying to get a small rulebase with modules in English running that behaves the same. So far, I have not been able to reproduce the problem with this rulebase.
EDIT: Can now reproduce this in a set of three OPA knowledge bases in English, two modules and one main kb. I guess the forum does not let you upload files?
Edited by: Philip Jan de Lang on 3-apr-2013 4:24

Similar Messages

  • Create a rule in Rule Editor using a function module

    Hello all,
    I want to create a rule using Rule Editor.
    As the requirements are complex, I created a function module; and I want the rule to call the function module
    My company already done this in the past, but the function module was supposed to fill a composition
    Here, it is a little bit different because I want the function module to fill characteristics in a property. I've tried to create the rule on rule editor which will call the function module but is doesn't work
    Have some of you already used rule editor with a function module?
    If yes, can you tell me if there are some "mandatory" parameters to add in Rule Editor to allow it to work?
    Thanks for your help on this topic
    Regards
    Stephanie

    Hi,
    There is well defined pdf is exist on google. please search and help yourself.
    Use google search term "How to Write a Routine for 0CALDAY in infopackage selections".
    Let me help you how to find it.
    Let me google that for you
    Thanks

  • Using UWL from a non sap system

    We are intgerating OTM (Oracle transportation management system) with SAP.
    We need to have a single point where the users track all their norifications.
    Is it possible to add notifications (task or error) into sap UWL from a non sap system.
    If yes what are the main steps to do it?
    Which set up must be done in SAP UWL to manage this?
    Thanks in advance
    Regards

    Do some searches about "UWL custom connector" or "UWL custom connector API". You should find pretty good documentation about this subject.
    Regards,
    Karri

  • Unable to build dimension thru rule file using export from DRM

    Hi All,
    I exported a dimension from DRM in parent-child format and trying to load it thru rule-file into essbase. Everytime i load the data..it is throwing error. Iam confused whether the error is due to DRM file or Essbase itself?
    Actually i wanted to show the client the syncup between DRM and Essbase, this is kind of POC. I created an ESSbase application and using outline extractor, extracted the individual dimensions and then converted it into DRM import and loaded there successful. After creation of Properties there and added few members under the hierarchy in DRM.Again exported the dimensions and wanted to load into the same Essbase Application which should reflect the member additions did in DRM. But this DRM to essbase thing is not happening.
    Pls anybody help me in this.
    Regards,
    Sahitya

    Hi,
    Is there anything in the error log file that is generated when you load it in Essbase??
    You got to find the reason in the error file and then we can help you out on this.
    Thanks,
    Sourabh

  • Creating a business partner using data from a remote legacy system

    Hi Experts,
    I am trying to make an interface for creating a business partner in SAP CRM from customer data created in a remote legacy system. I want to map the fields in XI.
    But to create a customer I need a RFC or a BAPI or maybe an IDoc, that includes all fields for business partner creation and can create a new business partner from the data.
    I have identified an RFC that have the structure of the BDoc BUPA_MAIN. This RFC is called: CRM_BUPA_MAIN_CRM_IN
    But I am not sure if that RFC can be used for Business Partner creation.
    Can anyone tell me if that RFC can be used, or if there are other RFC's, BAPI's or IDoc's that can be used for remote creation of business partners (they have to include all fields of the Business Partner)??
    There are a few BAPI's that include some of the fields for BP creation, but making several calls to different BAPIs from XI to CRM is not an option (I thought the BAPI: BAPI_BUPA_FS_CREATE_FROM_DATA could have been used, but it lacks some of the data fields needed for creating BPs).
    Thanks in advance,
    Torsten
    Edited by: Torsten Sander on Apr 22, 2008 2:48 PM

    Hi Experts,
    I am trying to make an interface for creating a business partner in SAP CRM from customer data created in a remote legacy system. I want to map the fields in XI.
    But to create a customer I need a RFC or a BAPI or maybe an IDoc, that includes all fields for business partner creation and can create a new business partner from the data.
    I have identified an RFC that have the structure of the BDoc BUPA_MAIN. This RFC is called: CRM_BUPA_MAIN_CRM_IN
    But I am not sure if that RFC can be used for Business Partner creation.
    Can anyone tell me if that RFC can be used, or if there are other RFC's, BAPI's or IDoc's that can be used for remote creation of business partners (they have to include all fields of the Business Partner)??
    There are a few BAPI's that include some of the fields for BP creation, but making several calls to different BAPIs from XI to CRM is not an option (I thought the BAPI: BAPI_BUPA_FS_CREATE_FROM_DATA could have been used, but it lacks some of the data fields needed for creating BPs).
    Thanks in advance,
    Torsten
    Edited by: Torsten Sander on Apr 22, 2008 2:48 PM

  • Using class from an API named System and builtin System class

    For some godforsaken reason the guys at sprint decided to name one of their utility classes System so it clashes with the java.lang.System class. Their must be an easy way to use both of these at the same time but I havent come across it yet. Anyone??
    Heres what I got so far:
    import com.sprintpcs.util.System;
    System.gc() //fails becasue it now looks at other sprint System class
    System.promptMasterVolume();
    Thanks;
    Sam

    use the full class name (inc. package), so
    java.util.System.out.println( "format the bastards harddisk" );
    com.bastard.System.format();

  • Can you transfer data from one numbers spreadsheet to another using conditional formatting?

    I have a tracker document set up for client payments and when I indicate payment received, it  flags green using conditional formatting. However I would like these to automatically transfer to another sheet - without having to cut and paste the associated data to the other sheet. Can I set up conditional formatting to do this? If not how could I get and automatic transfer?
    thanks forum.

    Hi Kangers,
    There are a number of ways to transfer data from one table to the next. It should not be hard to set up.
    Conditional formatting would not be involved it moving the data but you could set it up to flag the data in the new table.
    Without knowing what your tables and data look like it is hard to propose a solution.
    quinn

  • Can a Stored Procedure be called from a Rule (not using Scripted JDBC Adap)

    Hello smart people,
    Question: Can a stored procedure be called from a Rule without using the Scripted JDBC Resource Adapter?
    What's Desired: The project has very strong sql developers and average at best Java developers. We have been successful at implementing the scripted JDBC Resource Adapter which makes use of Java Bean shells. The custom Java Bean shell contains code that calls a stored procedure. We are cool with that process.
    However we would like to be able to set up a Rule that calls a Stored Procedure without jumping thru the Java Bean Shell layer. The Stored Procedures we will be developing will not access the tables in the Waveset database. Instead the Stored Procedures will be accessing custom tables in a custom database. The custom DBase will be housed on the same dBase server as the Waveset database.
    Environment: Identity Manager 7.1. Oracle 10i, and Unix OS.
    It seems to me that this task is possible, but the posts in this forum make it sound like perhaps it is not.
    Do any of you smart people agree that it should be possible or better yet has anyone implemented such an approach?
    Thanks.

    We did this by putting all of the JDBC calls into a Java class, then instantiated that class and called the methods from within a rule. An example of a rule we used is this:
    <Rule authType='UserMembersRule' name='List UserType'>
      <block>
        <defvar name='adapter'>
          <new class='com.waveset.adapter.ScriptedJdbcResourceAdapter'/>
        </defvar>
        <invoke name='setResource'>
          <ref>adapter</ref>
          <invoke name='getObject' class='com.waveset.ui.FormUtil'>
            <ref>context</ref>
            <s>Resource</s>
            <s>Banner</s>
          </invoke>
        </invoke>
        <defvar name='jdbcHelper'>
          <new class='edu.bates.JDBCHelper'>
            <invoke name='getConnection'>
              <ref>adapter</ref>
            </invoke>
          </new>
        </defvar>
        <defvar name='userList'>
          <new class='java.util.ArrayList'/>
        </defvar>
        <invoke name='addQueryToList'>
          <ref>jdbcHelper</ref>
          <s>SQL QUERY HERE</s>
          <ref>userList</ref>
        </invoke>
        <ref>userList</ref>
      </block>
      <MemberObjectGroups>
        <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
      </MemberObjectGroups>
    </Rule>

  • ERROR while uploading data from EXCEl to sap using ALSM_EXCEL FUNCION MODULE

    Hi Experts,
    I am uploading excel data into sap suing function module ALSM_EXCEl_TO_INTERNAL_TABLE , used this funcion module in the program while running the program one blank excel sheet is opening and data is not uploading into internal table . even same blank sheet is opeining if we user
    CONVERT_EXCEL_TO_INTERNAL function module also.
    can you please tell me why this error is coming how to over come this error.
    My excel sheet data records are less then 10000.
    Thanks & regards
    kiran

    Hi Taranam,
    Use FM ALSM_EXCEL_TO_INTERNAL_TABLE.
    Regards,
    Atish

  • How to enhance wcf_resource.xlf file from xlso to use in our module id?

    Dear All WEC developer,
    I would like to ask one question about how to enhance wcf_resource.xlf file which let's me to use more string in my module. I had use resourceBundlePrefix attribute in metadata.xml too but after deploy and use my own module it will show only my new string but another string which used sap or xlso will not found. Anyone had meet this problem? If you had, Can you please help me?
    Big thanks,
    Roty SENG.

    Something similar is described in SAP note: 1747899
    Could you please open this thread in the Web channel forum instead?

  • How to use BAPI_MATERIAL_AVAILABILITY Function Module....

    Hi Experts,
    I want to know actual free available quantity (ATP Qty.) for mass materials,
    How to use BAPI_MATERIAL_AVAILABILITY function module ?
    I have select all material from MARA and inserted in itab.
    LOOP AT ITAB.
    CALL FUNCTION 'BAPI_MATERIAL_AVAILABILITY'
      EXPORTING
        PLANT                    =
        MATERIAL                 =
        UNIT                     =
      CHECK_RULE               =
      STGE_LOC                 =
      BATCH                    =
      CUSTOMER                 =
      DOC_NUMBER               =
      ITM_NUMBER               =
      WBS_ELEM                 =
      STOCK_IND                =
      DEC_FOR_ROUNDING         =
      DEC_FOR_ROUNDING_X       =
      READ_ATP_LOCK            =
      READ_ATP_LOCK_X          =
    IMPORTING
      ENDLEADTME               =
      AV_QTY_PLT               =
      DIALOGFLAG               =
      RETURN                   =
      TABLES
        WMDVSX                   =
        WMDVEX                   =
    I dont know how to use it.
    pl. guide us.
    Yusuf

    Hi,
           data:  iwmdvsx type table of bapiwmdvs with header line,
           iwmdvex type table of bapiwmdve with header line.
    parameters: p_matnr type mara-matnr,
                p_werks type marc-werks,
                p_meins type mara-meins.
    call function 'BAPI_MATERIAL_AVAILABILITY'
      exporting
        plant            = p_werks
        material         = p_matnr
        unit             = p_meins
      CHECK_RULE       =
      STGE_LOC         =
      BATCH            =
      CUSTOMER         =
      DOC_NUMBER       =
      ITM_NUMBER       =
      WBS_ELEM         =
      STOCK_IND        =
    IMPORTING
      ENDLEADTME       =
      AV_QTY_PLT       =
      DIALOGFLAG       =
      RETURN           =
      tables
        wmdvsx           = iwmdvsx
        wmdvex           = iwmdvex.
    check sy-subrc = 0.
    Text
    ATP information
    Functionality
    Using this function module, you can determine the receipt quantity still available for a particular material in a certain plant according to ATP logic (MRPII).
    The availability check is carried out on transferring the material number, the plant and the input table (WMDVSX). The scope of the check, that is, which stocks, receipts and issues are to be included in the check is defined by the combination of checking group (material master) and cheking rule. In the function module, the system uses the checking rule defined in Sales & Distribution (A). You can overrule this checking rule by using an interface or a user-exit (exit_saplw61v_001). A similar procedure is also valid for the plant parameters. The customer number in the user-exit means that the plant selection can be controlled via the customer. If no plant parameters are given via the interface, the system uses the parameter 'WRK' saved in the user's fixed values.
    The results of the availability check are recorded in the output table (WMDVEX). This table contains dates and available receipt quantities (ATP quantities). The results of the check depends on the following entries:
    If no date and no quantity is transferred, the system displays the ATP situation from today's date into the future as the result.
    If only a date and no quantity is transferred, the system displays the ATP situation from the corresponding date as the result.
    If both a date and a quantity are transferred, the system calculates the availability situation for the quantity specified.
    In the last two cases, the parameter 'DIALOGFLAG' is supplied. This can result in the following:
    ' ' (blank)   <=> quantity completely available
    'X'           <=> only partial quantity available or not available at
                      all
    'N'           <=> Material not included in the availability check
                      (Material not relevant to the availability check)
    The system also displays the end of the replenishment lead time (ENDLEADTME).
    regards

  • ABAP Dump while using "Upload from clipboard"

    Hi,
    We are facing ABAP dump when using "upload from clipboard" funciton without any data on the clipboard.
    "Upload data" is working fine if some data exists on the clipboard. If in case of no data on the clipboard, it is leading to an ABAP dump.
    Appreciate if anyone could point some OSS note or any solution if you've already faced this issue.
    This is happening in our BW system with SAP_BASIS "SAPKB62018" and SAP_ABA "SAPKA62018".
    Same thing happens in our BW test systems which are upgraded to the latest support pack.
    Following is the error analysis
    Error analysis                                                                               
    A RAISE statement in the program "CL_GUI_FRONTEND_SERVICES======CP " raised the        
    exception                                                                             
    condition "CNTL_ERROR".                                                                
    Since the exception was not intercepted by a superior program                          
    in the hierarchy, processing was terminated.                                                                               
    Short description of exception condition:                                                                               
    For detailed documentation of the exception condition, use                             
    Transaction SE37 (Function Library). You can take the called                           
    function module from the display of active calls.                                      
    How to correct the error                                                                               
    You may able to find an interim solution to the problem                                
    in the SAP note system. If you have access to the note system yourself,                
    use the following search criteria:                                                                               
    "RAISE_EXCEPTION" C                                                                    
    "CL_GUI_FRONTEND_SERVICES======CP " or "CL_GUI_FRONTEND_SERVICES======CM00T "          
    "CLIPBOARD_IMPORT"

    Hi,
    When you say 'We are facing ABAP dump when using "upload from clipboard" funciton without any data on the clipboard.', are you using this in a custom program and are you running your custom program in the background?
    From the error you mentioned, to me it looks like you had a control error and controls are for foreground, online process and not suitable for background processing. Same argument holds good for most of the enjoy SAP transactions when you try to do BDC, they will give you a similar error if you hit the piece of code where controls are used.
    Controls are created on the desktop of the user and in background this is not possible.
    Please let me know if this is the reason.
    Srinivas

  • Rule fragments in shortcut rules

    I had a shortcut rule table that wasn't working, something along the lines of:
    Shortcut rule*
    the outcome of the transaction
    "Outcome A" - AttributeX = 5
    "Outcome B" - AttributeX = 6
    "Outcome C" - AttributeY is true
    "Outcome D" - AttributeZ is true
    I thought the reason it may not be working was because I had conditions on multiple attributes within a single table. Thinking that rule fragments may be the answer, I split the rule into 3 fragments (each a shortcut rule, but still tables as I don't seem to be able to set the value of a text attribute any other way).
    rule_property[fragment:1]
    Shortcut rule*
    the outcome of the transaction
    "Outcome A" - AttributeX = 5
    "Outcome B" - AttributeX = 6
    rule_property[fragment:2]
    Shortcut rule*
    the outcome of the transaction
    "Outcome C" - AttributeY is true
    rule_property[fragment:3]
    Shortcut rule*
    the outcome of the transaction
    "Outcome D" - AttributeZ is true
    However, regardless of the values of attribues X, Y and Z, the rule always seems to set the value to Outcome A, any ideas? Is it permitted to use rule fragments in shortcut rules?

    Going back to what I assume the original Word table looked like...
    | the outcome of the transaction          |
    | "Outcome A" | Attribute X = 5               |
    | "Outcome B" | Attribute X = 6               |
    | "Outcome C" | Attribute Y is true          |
    | "Outcome D" | Attribute Z is true          |
    | uncertain   | else                    |
    -------------------------------------------------... you commented that "regardless of the values of attribues X, Y and Z, the rule always seems to set the value to Outcome A". I just tried the same rule table and it behaved exactly as I expected, so I think it's worth explaining how Word rule tables work.
    Word rule tables start from the top of the table and work down until finding a table row for which the conditions are satisfied. If X = 5, then the first conditional row is satisfied and the conclusion is set to A. It doesn't matter what the values of Y and Z are, they will not impact the conclusion once X is set to 5.
    If X is unknown, and Y=true, then the conclusion will be unknown. This is because it's not even going to get to the third conditional row until all conditional rows above have been disproven. Whereas if X=7 and Y=true, then the conclusion will be set to C, since the first and second conditional rows have been disproven, i.e. proven not to be 5 or 6. Make sense? :)
    So when you were seeing the conclusion being set to A, regardless of the value of Y and Z, it must have been because X was set to 5 or 6. If there's a logic order to how you'd progress through the options, then just use that order in the rows of your rule table. Presumably you need to think thorough this logic anyway since you need to think about what's meant to happen if X=5 and Y=true? Should the conclusion be set to A or C? If it's the case that when Y=true, it trumps everything and the conclusion should be C, then just make that the first conditional line of your rule table.

  • Copy pricing conditions from R/3 to CRM

    Hello,
    I am using Function Module CRM_ORDER_MAINTAIN to copy pricing conditions from R/3 sales order to CRM complaint document.
    I am fetching R/3 conditions with the help of RFC call to R/3 and then passing these condition records to the FM CRM_ORDER_MAINTAIN.
    I am populating the importing parameter - IT_PRIDOC of this FM. And filling following internal table of this importing parameter:PRIC_COND, COND_ADD, COND_CHANGE and COND_DELETE.
    I am not sure if filling table PRIC_COND would be needed.
    Could you please guide me about the exact use of these tables? Do you have any documentation for this function module?
    Many thanks in advance,
    Sandhya.

    Dear Sandhya,
    I am facing the same problem.
    Could you please explain me (in case you finally implemented this), how you did it?
    Thanks in advance.
    Regards,
    Yolanda

  • How to copy the Pricing conditions from one Distribution Channel to another

    Generally we use VK11 transaction to create conditional records .
    but I Need to Know whether is it Possible to copy the Pricing conditions from one Distribution Channel to another with same name and same internal Characteristics .
    Since we have around 70+ of Condition type with different parameter Sequence.So Instead of Going for BDC whether is there any standard Funct Modules/programs/BAPIs to do this?
    How to make a copy Condition types from One Distribution Channel to another.
    since SAP has already provided to copy conditions from Customer to customer.
    Likewise i need to know whether SAP is facilitating for these feature also.
    Iam Dubious in this issue.
    Hope Fully looking for the answers.
    Harish.N

    - IDOC_INPUT_COND_A (you can create IDOC, but also call directly)
    - call transaction / batch input (use transaction XK15, as used by LSMW)
    - use group of function modules RV_CONDITION_COPY, RV_CONDITION_SAVE, RV_CONDITION_RESET + commit.
    if you search SDN on 'RV_CONDITION_COPY' you'll find more info I believe.
    Someone mentioned BAPI_PRICE_CONDITIONS as well.

Maybe you are looking for

  • View for MARA+MARC+MBEW

    hi ,       currently i am selecting data joining MARA,MARC,MBEW . it is giving hudge performance problem . ON  MARA~MATNR EQ MARC~MATNR          INNER JOIN MBEW       ON MARC~MANDT EQ MBEW~MANDT      AND MARC~MATNR EQ MBEW~MATNR      AND MARC~WERKS E

  • PO Cancellation Number

    Hello SAP Gurus! May I ask if it is possible for the system to generate a PO cancellation number? Our users want to track how many POs have been cancelled already. Please help us with this. Thanks in advance! ADP

  • Java class or MDB?

    This may be somewhat off topic (I'll gladly post my question on a different           forum if another one is named)           I have implemented a transformation server as a JMS client. This is not           written as a EJB bean, partly because I'm

  • IMac shuts down when i try to log into some user accounts

    Installed Lion on my mid 2010 iMac. Now when I log into one of my accounts it starts to log in, then decides it doesn't want to and restarts the machine. Guest account works fine, and when I made another account that works fine as well.  Just keeps s

  • [SOLVED] Wrong handling with file types after update

    Arch can't "remember" which program to use for certain file type Example: after update arch try to open everything (mp3, avi, doc, odt, rar.......) with gedit, when I set mplayer for avi, Arch try to open every file with mplayer, I set writer for odt