cancel
Showing results for 
Search instead for 
Did you mean: 

Creation of new SAP ME System Rule without IDAT

Former Member
0 Kudos

Hi,

We all know that to create a new System rule in SAP ME we need to do the same using an IDAT XML file. Then we need to do a plant data initial load and the then the new system rules can be visible in the System Rule Maintenance activity. I have one question regarding the same. Can we create a new system rule for a certain site without using the IDAT XML file or rather is there a different way of creating a new system rule in SAP ME. Please let me know.

Thanks

Anirban

Accepted Solutions (0)

Answers (1)

Answers (1)

0 Kudos

Hi Anirban,

IDAT XML only helps to load data to the corresponding tables. These tables are:

SYSTEM_RULE

SYSTEM_RULE_SETTING (here you the site specific value is stored)

You can manually enter the needed records into these tables. Not the best approach though.

I assume that you have written some custom code to make the custom Rule work.

Br, Alex.

andrew_hopwood
Participant
0 Kudos

Hi,

There are other database tables too.

But why would you not want to use IDAT which is the standard way?

Regards,

Andrew.

Former Member
0 Kudos

Hi Andrew,

I have created system rules using IDAT in NWDS which is always the standard way as you said. However my concern is if some projects there is not SDK or NWDS but we still need to use ME from MII workbench (using BLS). Here we won`t be having any SDK for creating new system rules.

So we will be having two options

1) Manually load data in the database tables

2) Cal the PAPI service createSystemRule from a MII BLS and pass values.

Please let me know if there are any other options.

Thanks

Anirban

Former Member
0 Kudos

Hi Alex,

Thanks for the reply.

I am currently using the IDAT file to create new system rule. Here I am using the createSystemRule method of the SystemRuleService (module ID sap.me.config).

The reason I am asking is if there is no option to use NWDS, in that case as you said I have to manually load the data in the database tables. Now is there any other way to do that. Please let me know.

Thanks

Anirban

former_member182330
Active Contributor
0 Kudos

Hi,

If NWDS and ME custom code is not used - then why would you need custom ME system rule? Core ME code definitely won't use it. If you are planning to somehow read it by external tool, why bother creating it in ME - just maintain the parameter somewhere else.

Regards,
Konstantin

0 Kudos

Hi Anirban,

You may be able to insert the System Rule records using the legacy production-xml context and Data XChange interface. Just another way to insert records into the database.

I am not positive how you implement bundles and make the rules actually work in case of 'not SDK/NWDS project', but it is probably a separate topic to discuss.

Br, Alex.

Former Member
0 Kudos

Konstantin,

I too was a bit surprised by Anirban's initial question, but I think I get it now.

Just to add a bit on the 'motivation' for doing this sort of thing:  At Medtronic, when we extend the configuration of ME by adding attributes to core objects (eg: custom data to Materials, system rules to Sites, etc), we try to use the core facilities.  We don't want to fragment and scatter our configuration user interfaces.  As a Medtronic ME user, if you want to configure a Site in ME, you (usually) go to System Rule Maintenance.  We carefully control access to System Rule Maintenance. 

If we were to create another table (or set of tables) in the database to hold this new configuration data, we would then create a configuration UI for that, and that UI would have to have rights associated with it.  Also, we would generally add audit-trail functionality.  Quite a bit of stuff to maintain going forward.  We can't avoid this if we're creating a brand new class of objects, but we can if we are just extending existing objects.

The code that 'consumes' (reads) the values of these custom configuration attributes might be custom ME activities written in Java, custom BLS's created in MII, custom reports (in BO), or maybe even custom stored procedure code in Oracle.

Given our experiences so far with ME SDK coding, I think there's a general desire to move towards using MII more.   (Personally, I'm not sure that I agree, but I don't make those decisions.)

Still (back to Anirban's original question), we won't get away from SDK coding anytime soon, so I don't see a good reason to avoid using an IDAT in this particular case.

Regards,

Barry