Rule Based System

Hi all,
I am currently working on a project which required to Implemented 500-600 rules in the System. Some of them are global Rules and some are just module level rules.
Is there any pattern exist for Rule Based System?
Thanks in Advance
Rashmikant

Just 1 pattern?
The short answer: No.
The longer (though still short answer):
A rules engine is not the easiest thing to implement, just 2 or 3 classes don't hack it if you're working with a dynamic rule base that is steered based on input/ouput and states.
There are rules engines for sale and there also a few opensource, look on the internet, use your best best friend.

Similar Messages

  • Rule based system in SQL

    we have an airline pricing system whose rules change often, and rather than re-designing tables and the client application code everytime that happens, we would like to develop a rule-based system to dynamically store the rules in a rule-based system that doesn't require re-design and code modification.
    any ideas ?
    here is an example of the data that we would like to store
    if seasonality is LOW
    and passenger is CHILD
    and carrier is TRW
    and origination is COS
    and destination is PIT
    and ticket code is Y
    then price is 908
    seasonality for carrier TRW is LOWfor travel between 01/15/06 to 04/15/06
    seasonality for carrier JAR is LOW for travel between 02/01/06 to 05/01/06
    age for carrier TRW is CHILD for passenger age betwen 2 and 12
    age for carrier JAR is CHILD for passenger age between 6 and 14
    .. and another price can be given with an entirely different set of rules
    reason is ask in this forum is I read a blog of someone who praises the set-based nature of the SQL language for developing exactly this kind of system, rather than trying to implement it on the client (for example using JRules)

    What version of Oracle are you on? 10g introduced a rules engine into the database (Oracle Rules Manager and/or Oracle Expression Filter) which would seem to be right up your alley.
    Justin

  • Rule-based or 'expert' system in Oracle

    Hi,
    Has anyone implemented a rule-based system in Oracle? E.g. based upon a decision tree?
    I have a feeling that the algorithm will involve 'tree-walking' within a heirarchy of rules but I'm not quite sure how to structure it. I have a couple of ideas such as storing pointers to the next rule with the columns holding things like the name of the parameter, the condition, the comparison value and the outcome.
    The program has to choose a carrier (such as UPS or Fed-Ex) based upon rules such as the weight (<1kg?>, the intrinsic value (> #100), the addressee postcode and whether the package is hazardous or not. There can be any permutaion of these conditions apart from those that are direct opposites (such as greatr than or lower than 1kg).
    I would be grateful for any advice on this, or a web address that might help (I have googled and found something calld the 'reme algorithm' but cannot find any elaboration of it! grrr.....).
    Thanks for your time,
    Regards,
    Jim.

    thanks for your reply, but need different thing,
    suppose we prepare a report in report builder and when we want to print it, it always print in windows gui fonts like times new roman, arial , tahoma etc..
    I WANT TO PRINT IT IN TEXT-BASED FONTS NOT WINDOWS FONT WHICH GAIN HIGH QUANTITY OF TONER . I want to print like IBM COBOL, FOXPRO, GWBASIC, PASCAL TEXT MODE REPORTS

  • Connect SharePoint to SQL Server Database Then Build Rules Based Returns System

    Hello Guys,
    I work for an ecommerce business. We sell a wide range of products to customers all around the world which are ordered from our websites and then dispatched to our customers from our warehouses.
    I have been tasked with developing a computerised return system from the company because at the moment everything is done using paper forms.
    We have all our customer, order and product data within SQL Server databases.
    What I would like to know is...
    1. Can we connect sharepoint online to a local sql server database
    2. Could we then build searches within sharepoint to display data contained within these databases e.g. customer information etc
    3. How is the data presented in sharepoint - is there a way to design how the data is displayed within sharepoint etc?
    4. Can we then build a rules based return system within sharepoint? The on screen workflow would need to vary according to data contained within the database e.g. the weight if the product being returned and also on fields input by the service agent such
    as the reason for the return, what solution the customer would like etc.
    5. is it possible to build these workflows in such a way that they can be saved part way through then gone back to later
    6. Can reports be build based on the returns that are being generated e.g. list of products most commonly returned
    Sorry for all the questions, I am a bit of sharepoint novice. I think it may possible be able to do what we need but I just wondered if the answer to any of the above questions is definately a no because if it is that could mean it is not suitable
    Thanks

    You could use a BCS connection
    http://community.office365.com/en-us/b/office_365_community_blog/archive/2012/10/11/business-data-connectivity-services-in-office-365-sharepoint-online.aspx, this will allow you to edit data in your non SharePoint SQL DB, on premises, from Office 365 SharePoint.
    Search will index the web applications you point it at, and the lists from the BCS will be part of those web apps, site collections, sites at some place and will get indexed. 
    You can create views on the data, that can sort of work like a search, but when you search on the site where the lists are the query will return results based on the BCS data.
    These views can be based on criteria such as the weight of the product being returned and other fields.
    The data is presented as a list.
    You can make it read only or read-write based on SharePoint permissions on the list.  The account used to create the connection can edit.
    BCS is possible in on-premises SharePoint too
    here is a good read on it,
    http://www.dotnetcurry.com/showarticle.aspx?ID=632
    Stacy Simpkins | MCSE SharePoint | www.sharepointpapa.com

  • Rule based monitors (RZ20) - Show system availability for selected systems

    Hi experts,
    I'm new with CCMS monitoring and need an advice for rule based monitors.
    I want to create three alert monitors (RZ20). One for our developing systems, one for our quality assurance systems and one to monitor our production systems.
    For the start, I want to show data in each of this monitor for free space of the filesytems (MTE class: "FilesystemFreeSpace"), for users which are locked out (MTE class "R3SyslogSecurity") and for the availabilty of the ABAP systems (MTE class "Availability_SysPercent_ABAP").
    I started to create the monitor for our developing system and got a problem. I started with the rule "CCMS_DEFINE_R3_SYSTEMS" to select our developing systems "HRT", "CRT" and so on. Under this nodes, I defined the mte classes ("CCMS_GET_MTE_BY_CLASS") which needs to be shown: "FilesystemFreeSpace", "R3SyslogSecurity" and "Availability_SysPercent_ABAP".
    When I checked the results, I was able to see the free space of the filesystems and whether a user has been locked out. Unfortunately, I recognized that the availability is not shown. Instead there is the message "No MTEs currently available".
    I'm aware, the availability cannot be shown on this way, since the agents are part of the central monitoring system and hence i need to choose the central system for "CCMS_DEFINE_R3_SYSTEMS". However I'd like to show the availability separated for each system under "HRT", "CRT" and so on. That means for example, there should me a node "HRT", which contains the free space of the filesystems, whether users are locked out, and the availability for the system.
    It's not a problem to get a solution with a static monitor. I simply create a virtual node "HRT" and tick the checkbox under "<central system>, ..., <availability>, <hrt> ..."
    However, I'd like to use rule based monitor to keep the effort at a minimum by not ticking thousand of check-boxes when I expand the monitored objects.
    I also tried to use the rule "CCMS_GET_AVAILABILITY_FOR_SYSTEM", but it doesn't work and SAP documentations say "This rule is reserved by SAP for later use".
    Does anybody know a solution for my problem?
    In addition, I've got one more question concerning rule based monitors: If I want to create a monitor for my developing systems, I'll not be able to choose "<all>" for "CCMS_DEFINE_R3_SYSTEMS". Do I need to create "CCMS_DEFINE_R3_SYSTEMS" for each system separately? Or is there another possible way?
    Thanks for your help in advance.
    Bob
    Edited by: Bob Norwich on Oct 17, 2010 12:04 PM
    I read something about logical MTE classes: http://help.sap.com/saphelp_nw04s/helpdata/en/31/5462405c910272e10000000a155106/frameset.htm --> Does I need to use this?

    Sorry Sean for my very late anwser.
    I was very busy in my company.
    Yes, I had tried you suggestion but it didn't work for me.
    The problem is, that the Agent "CCMSPING" is part of the central monitoring system by definition.
    Furthermore I tried to copy the default availabiliy monitor to look how it is definied. It didn't help.
    I made the decision to define my monitor differently (an extra monitor for the availability for all system) and replace this temporalily solution when ""CCMS_GET_AVAILABILITY_FOR_SYSTEM" will be available.
    The situation is not so bad after all.
    Thx for your help. I appreciate it!!
    Bob

  • REDHAT LINUX 7.3 on nForce based systems - An installation guide.

    INSTALLING REDHAT LINUX 7.3 ON NFORCE BASED SYSTEMS.
    A) Preface
    I'm a Linux newbie, just sharing my experience with installing linux on nforce.
    in my opinion Linux is a powerful but still a nascent operating system (in terms of user friendliness atleast!). many features are extremely 'release' and 'version' dependent.  this means that, what works in redhat might not work in mandrake or what works in redhat 7.3 might not work in redhat 7.1 or likewise...
    the steps i'm listing below just reflects how i went about installing RH 7.3 on my machine (K7N420D). it MAY not work for other versions or releases.
    B) BIOS SETTINGS
    1. I recommend, PnP disabled, ACPI/APIC disabled.
    for Mandrake 8.2 install on some machines (mine included), i suggest disabling audio and network in the bios till you get a stable level 3 (console without X windows) or level 5 install. for some reason, sometimes, on some boards,  Mandrake 8.2 hangs when probing audio and lan during boot.
    C) PREPARING TO INSTALL
    1. i suggest you get the three iso images from the internet and burn them into installation disks. though there are other ways of installing, this is the simplest way of doing it.
    2. if you have windows installed already, make sure you have a windows boot floppy in case of boot problems, you can also make one for linux during installation.
    3. using windows or fdisk strip off a sufficient chunk of hard disk space from an existing partition if you don't have a free partition. you need not create any partitions, just the non-allocated space would do. (as red hat can beautifully split this partition into /boot, / & swap partitions!)
    4. i recommend using GRUB (GRand Unified Boot-loader) instead of LILO for boot management. if you prefer the same way, get good documentation/how-to for grub from the net. this will be handy if you mess up your boot partition and end up in a grub prompt during boot.
    5. goto nvidia's drivers page and get appropriate drivers. i always recommend tar balls or src.rpm files instead of pre-compiled rpms. if you are using EXACT same version of the linux release as mentioned in the drivers page you can use rpms. If you wish to upgrade your kernel or use a different version of linux then make sure you have tar balls or source rpm files. make sure you also print the installation instructions from the same page.
    6. the drivers you need are
    a. NVIDIA_nforce-1.xxxx. - you need this one for audio & lan. (found in nforce link in drivers menu in nvidia site with an instruction manual)
    b. NVIDIA_kernel-xxxx AND NVIDIA_GLX-xxxx- both these for Graphics in Xwindows. these two drivers should be exactly matched. i suggest you download all of them along with a files named NVchooser.sh found on the same page. NVchooser will tell you which pair to install for your linux kernel version and CPU.
    D) LINUX INSTALLATION
    1. boot from 1st installation disk that you made. go through the GUI installer and choose automatic partitioning, it will take you to the Disk Druid and you can select the partition in which you wanna install linux. if the partition you choose is unallocated, most of the times didk druid will make three patrtions on its own, one is /boot (boot partion), /swap (partition for swap, similar to ramdisk) and / (root partition). all the three mount-points may be allocated on the same partition too.
    2. Choose GRUB (if you prefer) as boot loader and set Linux as primary boot OS and this page would've detected windows if you've already (it may appear as DOS). Choose "MBR" to install GrUB. If you get any warning ignore it. IMPORTANT: If you have NTFS partition for windows and you had windows as primary OS, there is a reported problem that says, in some versions of the linux installer, choosing MBR to install GRUB makes it hard to boot into windows. i haven't tried that option yet as i don't have a NTFS partition. If you have an NTFS partition, you may prefer to choose the other option to install GRUB or you may choose to install it later. in either case make sure you have a boot floppy to get you into linux or windows, whichever one you want.
    3. choose automatic install if you don't want to control which packages you want to install. else choose expert installation and proceed with it.
    4. when prompted to check the packages you want to install, choose "development tools" or something similar without fail. This is for installing a C compiler which is a must have for some driver installations. (this also installs perl and other dev tools, if you're an 'expert', there's an option in this page to custom select modules)
    5. somewhere you'll be asked to provide a root password, in the same page there'll be a provision to add users other than root. create atleast one user other than root at this time.
    4. somewhere you'll be shown a list of video adapters with NVIDIA Geforce 2 generic driver already highlighted. Below this screen you'll see a "Skip X install" or something similar. CHECK THIS TAB and this will NOT install the generic driver for your integrated GPU and also will not configure the GUI environment for Linux. This makes your video configuration a little easier.
    5. now linux will install, get configured and will ask if you wanna create a boot floppy. make one just in case you
    6. RH 7.3 will not recognize your APU and integrated LAN. you can install the drivers for this later.
    7. After installation boot into Linux, if you just followed the steps above you'll nicely end up in level 3 console!
    E) INSTALLING DRIVERS
    1. Assuming you got all the drivers in CD/floppy, login as 'user', type command "su" (super user) supply root password, now you are logged in as root. read the installation manual for the NVIDIA drivers and install NVIDIA_nforce-1.xxxx drivers for audio/LAN. do these series of steps from the console prompt,
    #vi /etc/modules.conf
    press INSERT key, add the following lines,
    alias eth0 mcpeth
    alias sound-slot-1 i810_audio
    alias usb-interface usb-ohci
    press ESC, (Shift) colon, wq and Enter.
    This will save the changes you made.
    2. Now install the NVIDIA_kernel-xxxx AND NVIDIA_GLX-xxxx- drivers as per instructions. follow the steps below.
    #XConfigurator
    Choose settings that are relevant to the monitor you use and mode supported. Choose custom configuration wherever possible. If your monitor is not listed, choose 'custom' all the way through and provide hardware details such as horiz/vert freq range, video memory and clock settings (choose 'recommended').
    DO NOT LET THE XCONFIGURATOR PROBE ANYTHING. sometimes this might cause a hang that is not necessary at all.
    select all videomodes and color depths that you think your monitor will support and exit XConfigurator without any probing.
    3.  Now at the prompt do the following,
    #vi /etc/X11/XF86Config-4
    Press INSERT and make following changes.
    replace line
    Driver "nv"  
    with
    Driver "nvidia"
    In the Module section, make sure you have:
            Load   "glx"
    Remove the following lines: (or put a hash before)
            Load  "dri"
            Load  "GLcore"
    and the whole
    Section "DRI" (last three lines usually, DRI may be in lower case usually)
    Press Esc, (Shift) colon, wq, Enter to save and exit.
    4. using vi make sure you have these lines in /etc/modules.conf file
    alias char-major-195 NVdriver
    5. edit /etc/rc.d/rc.local and insert
    /sbin/modprobe nvaudio
    /sbin/modprobe nvnet
    save and exit. ( this is a crude way of loading modules but it works though!)
    6. Type "reboot" at prompt and reboot your system.
    7. get into bios and load original settings. (get back ACPI if you have windows, enable PnP OS etc)
    8. During restart linux may get you into the kudzu installer to install network drivers/audio, ignore this.
    9. login as "user" and type "startx" from console, your GUI should start smooth and you'll have video, sound, USB, LAN working (you need to fiddle a little bit more to get things work perfect) !
    10. There is extensive documentation found in the internet on these topics, have fun exploring them.
    F) TWEAKING YOUR HARD DRIVE
    most of the modern hard drives support UDMA transfers and usually linux is pretty much conservative on this option. so you might want to force linux to use UDMA. the following discussion assumes that your hard drive is /dev/hda, change it to hdb, hdc etc as per your setup.
    CAUTION: The 'hdparm' utility described here is a very powerful and dangerous if used improperly. USING hdparm IMPROPERLY MIGHT CORRUPT YOUR PARTITIONS AND RESULT IN SEVERE DATA LOSS. hdparm works with IDE drives. i'm not sure how it works on SCSI drives.
    @ console,
    1. type "man hdparm" and read through the hdparm manual atleast twice before you understand what it can do. THIS IS A MUST.
    2. login as root or get into super user mode and try the following. all commands are shown after #
    3. Benchmark the hard drive
    # /sbin/hdparm -t -T /dev/hda
    this should spit out the transfer rate both cached and sustained. note this value. if these values are close to what you expect out of your drive, you are OK. you may get out of further adventures! if the transfer rates are horrible like 3.5 Mbps etc (it was on my seagate ata IV drive!), then proceed with the tweaks. the golden rule is, after each tweak, run the benchmark and record your transfer rate. if there is no significant improvement, revert back to the default settings.
    4. # /sbin/hdparm -i /dev/hda
    note down MaxMultSect, MultSect, Modes supported : PIO/DMA, especially the mode with a 'star' in front of it. (prefered mode)
    5. 32 bit I/O : to enable 32 bit I/O over the PCI bus
    # /sbin/hdparm -c1 /dev/hda
    this usually doubles your transfer rate if the drive supports. you may need to use -c3 for some chipsets.
    6. Enable DMA and set DMA mode
    if your drive supports DMA find out the prefered DMA mode using -i option.
    # /sbin/hdparm -d1 -Xab /dev/hda, where
    ab=64 + uDMA mode number (for eg. 66 for UDMA 2)
    ab=32 + DMA mode number (for multi-word DMA mode)
    you might need to prepare the chipset to enable DMA but on most of the modern hard dirves this works. refer to the "man hdparm" for details. beware, the options to 'prepare' the chipset for DMA should be used with EXTREME caution. if you do not know what you are doing, don't try it.
    7. To set multiple sector mode I/O,
    # /sbin/hdparm -m XX /dev/hda
    where XX is the MaxMultSect value obtained using -i option. if the MaxSect is already set to this value, you need not tweak this.
    after all these tweaks run the benchmark atleast three times consecutively and average the transfer rates. make sure you don't hear grinding noises in the hard drive. use these tweaks a couple of times manually and if verything appears to be working fine, add the necessary commands to the rc.local script to execute them automatically during  start up.
    G) FINAL WORDS
    I assumed that you're a total 'newbie' to linux when writing this so i followed a conservative approach. most of the things that i described can be done in many ways, it's up to you to explore them! as usual, there MIGHT be typos and other serious errors in this guide. also the driver files that i might have mentioned here are the ones that were available when i wrote this. so you might wanna try their latest equivalents. i'm open to all healthy criticism and suggestions. when i installed linux on my nforce board, i was badly looking for an article like this on the net. i missed one, if it exists at all. so am i writing this. i hope you'll get benefitted by this in some way.
    -Venk@

    Venkat,
    Thanks for this really really amazingly accurate and exhaustive post that helped me A LOT to install linux on my machine!!! Otherwise, I think I would still be hanging with a mandrake 8.2 trying to load sound...
    My system is now fully functional but, (yes, there is a little but) I was not able to make the LAN function properly. When booting, while linux tries to load the ethernet module, I get something like:
    'mcpeth device does not seem to be present, delaying eth0 initialiation'. Then, I open an X session, I try to use the network configurator, the ethernet device is there but when trying to activate, it fails... I swear I enabled the LAN in my BIOS.
    I also tried to replace 'alias eth0 mcpeth' with 'alias eth0 nvnet' in /etc/modules.conf after reading the installation notes of NVIDIA drivers. I get a slighty different result: my boot error is now 'failed to load module'.
    It is a shame I have to boot back to Windows to use my DSL connection. I think i need some insights. It will be greatly appreciated!
    Thanks,
    Chouch
    >I'm a Linux newbie, just sharing my experience with
    >installing linux on nforce.
    Not bad for a Newbie...  

  • Questions on Rules-Based ATP and Purchase Requisitions for STOs

    Hello experts,
    We are working on rules-based ATP configuration and have several questions about the functionality.  Iu2019m hoping that some of you are using this functionality and can help give us direction.
    In our environment we have multiple distribution centers and multiple manufacturing plants.  We want to confirm sales orders against stock and production orders in any of those plants, depending on the locations that have stock or planned production.  For example, we will place a sales order against plant A.  If there is not enough stock in plant A then rules-based ATP will use location determination to check in plant B, then C.  The scope of check on the ATP check will include stock and released production orders.  We will configure plant A as the u201Cconsolidation locationu201D so if stock is found in plants B or C then stock transport orders will automatically be created to move the stock to plant A before shipping to the customer.
    We have configured rules-based ATP and this functionality is working well in our Development system.  The ATP check is executed and uses the rules-based ATP to find eligible stock in other plants.  The system is also creating purchase requisitions to move the stock to the consolidation plant. 
    Our first concern is that there doesnu2019t appear to be any firm linkage between the sales order and the resulting purchase requisition.  For example, if we create sales order 123 for plant A and the rules-based ATP finds stock in plant B it automatically creates a purchase requisition 987 to move the stock from plant B to plant A.  However, there doesnu2019t appear to be a linkage between sales order 123 and purchase requisition 987.  For instance, if we delete sales order 123 the purchase requisition doesnu2019t get deleted. 
    Our second concern is that the quantity on the purchase requisition can still be confirmed against later sales orders.  For example, say the above scenario resulted in a purchase requisition 987 that consumed all the stock available in plant B.  We then create a second sales order 456 for the same product.  Plant A is out of stock so the rules-based ATP looks in plant B.  We would expect that plant B would also not have any stock because itu2019s all been consumed by the purchase requisition.  Instead, the system creates a second purchase requisition to move quantity from plant B to plant A.  Itu2019s as if the system doesnu2019t realize that the purchase requisition 987 is already planning to move stock out of plant B.
    Does anyone have any thoughts or suggestions on these two scenarios?  Is there a way to configure the system so there is a hard linkage between the sales order and the purchase requisition so that if the sales order is deleted then the purchase requisition is also deleted?  Should ATP realize that purchase orders are consuming inventory and not allow later sales orders to confirm against that same inventory?  Any advice or experience would be greatly appreciated.
    Thanks,
    David Eady
    Application Delivery Team Lead
    Propex, Inc.

    Hi,
    The scheduling is done in SCM, and from there, whenever the RBA is triggered, the calculation is done always with the old route in SCM. Until you get back to R/3 this is when your route is determined. But the ATP check is always with the original route. So the idea would be that you change the values of the route while still in APO, this is possible via the user exit. Should be done in scheduling in APO.  
    Hope this information is helpful.
    Regards,
    Tibor

  • Improving performace for a Rule Based Optimizer DB

    Hi,
    I am looking for information on improving the current performance of an ancient 35GB Oracle 7.3.4 using RULE based optimizer mode. It is using 160 MB SGA and the physical memory on the system is 512MB RAM.
    As of now, all the major tasks which take time, are run after peak hours so that the 130 user sessions are not affected significantly.
    But recently am told some procedures take too long to execute ( procedure has to do with truncating tables and re-populating data into it ) and I do see 54% of the pie chart for WAITS are for "sequential reads" followed by "scattered reads" of 36%. There are a couple of large tables of around 4GB in this DB.
    Autotrace doesn't help me much in terms of getting an explain plan of slow queries since COST option doesnt show up and am trying to find ways of improving the performance of DB in general.
    Apart from the "redo log space requests" which I run into frequently (which btw is something I am trying to resolve ..thanks to some of you) I dont see much info on exactly how to proceed.
    Is there any info that I can look towards in terms of improving performance on this rule based optimizer DB ? Or is identifying the top sql's in terms of buffer gets the only way to tune ?
    Thank you for any suggestions provided.

    Thanks Hemant.
    This is for a 15 minute internal under moderate load early this morning.
    Statistic                   Total        Per Transact Per Logon    Per Second 
    CR blocks created                    275          .95         5.19          .29
    Current blocks converted fo           10          .03          .19          .01
    DBWR buffers scanned               74600       258.13      1407.55        78.44
    DBWR free buffers found            74251       256.92      1400.96        78.08
    DBWR lru scans                       607          2.1        11.45          .64
    DBWR make free requests              607          2.1        11.45          .64
    DBWR summed scan depth             74600       258.13      1407.55        78.44
    DBWR timeouts                        273          .94         5.15          .29
    OS Integral shared text siz   1362952204   4716097.59  25716079.32   1433177.92
    OS Integral unshared data s    308759380   1068371.56   5825648.68    324668.12
    OS Involuntary context swit       310493      1074.37      5858.36       326.49
    OS Maximum resident set siz       339968      1176.36      6414.49       357.48
    OS Page faults                      3434        11.88        64.79         3.61
    OS Page reclaims                    6272         21.7       118.34          6.6
    OS System time used                19157        66.29       361.45        20.14
    OS User time used                 195036       674.87      3679.92       205.09
    OS Voluntary context switch        21586        74.69       407.28         22.7
    SQL*Net roundtrips to/from         16250        56.23        306.6        17.09
    SQL*Net roundtrips to/from           424         1.47            8          .45
    background timeouts                  646         2.24        12.19          .68
    bytes received via SQL*Net        814224      2817.38     15362.72       856.18
    bytes received via SQL*Net         24470        84.67        461.7        25.73
    bytes sent via SQL*Net to c       832836      2881.79     15713.89       875.75
    bytes sent via SQL*Net to d        42713        147.8       805.91        44.91
    calls to get snapshot scn:         17103        59.18        322.7        17.98
    calls to kcmgas                      381         1.32         7.19           .4
    calls to kcmgcs                      228          .79          4.3          .24
    calls to kcmgrs                    20845        72.13        393.3        21.92
    cleanouts and rollbacks - c           86           .3         1.62          .09
    cleanouts only - consistent           40          .14          .75          .04
    cluster key scan block gets         1051         3.64        19.83         1.11
    cluster key scans                    376          1.3         7.09           .4
    commit cleanout failures: c           18          .06          .34          .02
    commit cleanout number succ         2406         8.33         45.4         2.53
    consistent changes                   588         2.03        11.09          .62
    consistent gets                   929408      3215.94        17536        977.3
    cursor authentications              1746         6.04        32.94         1.84
    data blocks consistent read          588         2.03        11.09          .62
    db block changes                   20613        71.33       388.92        21.68
    db block gets                      40646       140.64       766.91        42.74
    deferred (CURRENT) block cl          668         2.31         12.6           .7
    dirty buffers inspected                3          .01          .06            0
    enqueue conversions                  424         1.47            8          .45
    enqueue releases                    1981         6.85        37.38         2.08
    enqueue requests                    1977         6.84         37.3         2.08
    execute count                      20691         71.6        390.4        21.76
    free buffer inspected               2264         7.83        42.72         2.38
    free buffer requested             490899      1698.61      9262.25       516.19
    immediate (CR) block cleano          126          .44         2.38          .13
    immediate (CURRENT) block c          658         2.28        12.42          .69
    logons cumulative                     53          .18            1          .06
    logons current                         1            0          .02            0
    messages received                    963         3.33        18.17         1.01
    messages sent                        963         3.33        18.17         1.01
    no work - consistent read g       905734      3134.03     17089.32        952.4
    opened cursors cumulative           2701         9.35        50.96         2.84
    opened cursors current               147          .51         2.77          .15
    parse count                         2733         9.46        51.57         2.87
    physical reads                    490258      1696.39      9250.15       515.52
    physical writes                     2265         7.84        42.74         2.38
    recursive calls                    37296       129.05        703.7        39.22
    redo blocks written                 5222        18.07        98.53         5.49
    redo entries                       10575        36.59       199.53        11.12
    redo size                        2498156      8644.14     47135.02      2626.87
    redo small copies                  10575        36.59       199.53        11.12
    redo synch writes                    238          .82         4.49          .25
    redo wastage                      104974       363.23      1980.64       110.38
    redo writes                          422         1.46         7.96          .44
    rollback changes - undo rec            1            0          .02            0
    rollbacks only - consistent          200          .69         3.77          .21
    session logical reads             969453      3354.51     18291.57       1019.4
    session pga memory              35597936    123176.25    671659.17     37432.11
    session pga memory max          35579576    123112.72    671312.75      37412.8
    session uga memory               2729196      9443.58     51494.26      2869.82
    session uga memory max          20580712     71213.54    388315.32     21641.13
    sorts (memory)                      1091         3.78        20.58         1.15
    sorts (rows)                       12249        42.38       231.11        12.88
    table fetch by rowid               57246       198.08      1080.11         60.2
    table fetch continued row            111          .38         2.09          .12
    table scan blocks gotten          763421       2641.6     14404.17       802.76
    table scan rows gotten          13740187      47543.9    259248.81     14448.15
    table scans (long tables)            902         3.12        17.02          .95
    table scans (short tables)          4614        15.97        87.06         4.85
    total number commit cleanou         2489         8.61        46.96         2.62
    transaction rollbacks                  1            0          .02            0
    user calls                         15266        52.82       288.04        16.05
    user commits                         289            1         5.45           .3
    user rollbacks                        23          .08          .43          .02
    write requests                       331         1.15         6.25          .35Wait Events :
    Event Name                       Count         Total Time    Avg Time    
    SQL*Net break/reset to client                7             0             0
    SQL*Net message from client              16383             0             0
    SQL*Net message from dblink                424             0             0
    SQL*Net message to client                16380             0             0
    SQL*Net message to dblink                  424             0             0
    SQL*Net more data from client                1             0             0
    SQL*Net more data to client                 24             0             0
    buffer busy waits                          169             0             0
    control file sequential read                55             0             0
    db file scattered read                   74788             0             0
    db file sequential read                 176241             0             0
    latch free                                6134             0             0
    log file sync                              225             0             0
    rdbms ipc message                           10             0             0
    write complete waits                         4             0             0I did enable the timed_stats for the session but dont know why the times are 0's. Since I cant bounce the instance until weekend, cant enable the parameter in init.ora as well.

  • Partitioning on Oracle 8i (Rule Based vs. Cost Based)

    At my current engagement, we are using Oracle Financials 11.0.3 on Oracle 8.0.6. The application uses rule-based optimizer. The client wants to implement Oracle partitioning. With this in mind, we are concerned about possible performance issues that the implementation of partitioning may cause since RBO does not recognize it.
    We agree that the RBO will see a non-partitioned table the same as a partitioned. In this scenario where you gain the most is with backup/recoverability and general maintenance of the partitioned table.
    Nevertheless, we have a few questions:
    When implementing partitions, will the optimizer choose to go with Cost base vs. Rule base for these partitioned tables?
    Is it possible that the optimizer might get confused with this?
    Could it degrade performance at the SQL level?
    If this change from RBO to CBO does occur, the application could potential perform poorly because of the way it has been written.
    Please provide any feedback.
    Thanks in advance.

    If the CBO is invoked when accessing these tables, you may run into problems.
    - You'll have to analyze your tables & ensure that the statistics are kept up to date.
    - It's possible that any SQL statements which invoke the CBO rather than the RBO will have different performance characteristics. The SYSTEM data dictionary tables, for example, must use the RBO or their performance suffers dramatically. Most of the time, the CBO beats the RBO, but applications which have been heavily tuned with the RBO may have problems with the CBO.
    - Check your init.ora to see what optimizer mode you're in. If you're set to CHOOSE, the CBO will be invoked whenever statistics are available on the table(s) involved. If you choose RULE, you'll only invoke the CBO when the RBO encounters situations it doesn't have rules for.
    Justin

  • APO Rule based ATP for RA Repair

    Hey,
    Could you please help me to turn on rule based ATP for document type RA outbound?
    The senario is as follows:
    Customer returns to my company the product.
    My company has multiple locations (plants) for replacement products. I would like to determine the replacement product location with rule-based ATP. We use rule-based ATP for the sales site w/o issues.
    I set up in configuration:
    ZRA (copy of RA) with business transaction RMA(to trigger the rule based ATP)
    Assigned ZRA / Item usage = R104/ PSTYV= ZXNN (item category allows rule based ATP).
    ZRA     ZNO1     R104     IRRA     ZXNN
    I also did the below rules based ATP item catgegory determination:
    AUART        MTPOS         VWPOS        UEPST         PSTYV
    ZRA     ZNO1     APO0     ZTP1     ZXNN
    ZRA     ZNO1     APO1          ZTP1
    ZRA     ZNO1     APO1     ZXNN     ZTP1
    ZRA     ZNO1     APO2     ZTP1     ZXNN
    When I create with VA01 a ZRA order and add a replacement plant then I get this message:
    The ATP rules are not called up for item 000030 - Message no. /SAPAPO/ATP147
    But when I go from the "APO Availability Check" view to the Rule then I see my rules determined.
    The detail message also says that the system "things" the line was already delivered, which is not the case.
    Could you please tell me if it is possible to combine rule-based ATP with the RA replacement process and if yes how to do it?
    Thanks,
    Sabine

    Check OSS Note 571044 - RBA: Use of calculation profiles and rules
    Regards,

  • Rule Based ATP- Error in calling up function 'BAPI_APOATP_CHECK' in APO ser

    Hi Experts
    I hae configured Rule Based ATP with Multi-Level ATP check. I have completed all configuration required for Rule Based ATP but still facing an error
    " Error in calling up function 'BAPI_APOATP_CHECK' in APO server 'SC5CLNT001': Check instructions 30 / A does not exist for locat"
    Have any of you ever encountered this error?
    Regards,
    Sushovan Datta

    Dear Sushovan,
    Most likely cause of the above error is a missing requirement class in R/3 and missing Check mode in APO for material and plant combination.                            
    Please read the F1-Help for field check mode in APO:                    
    "Together with the business event, the check mode derived from the product master defines the type and scope of the checks carried out. It also controls forecast consumption.                                                                               
    SD (R/3) uses the requirement class of the requirement as check mode. As of R/3 Plugin 2000.1, the requirement class is transferred (via the strategy group in the material master) to the location-specific APO product master (ATP tab page). In the process, no plausibility check is carried out. For this reason, you should not enter any other check mode in the product master. (The check mode in the product master must agree with the requirement class from the R/3 system.)"                                                                               
    So please create for your material in corresponding plant the requirement class ' 030' assigned to the strategy group in MRP3 in R/3 and the same in the check mode field in //mat1 in APO.                                                                               
    Afterwards the gatp check will find the check mode and business event  (check instructions) and the error will be not appear again.            
    Regards,
    Tibor

  • Implementing roles and rules based authorisation with Azure AD

    Hi all,
    I would greatly appreciate some input on feasibility and patterns I should look at for a complex technical requirement that I am currently tasked with designing.
    We have a system that comprises a web and mobile app. In the past we have implemented session based authentication through ADAM and authorisation through custom business rules contained within the applications. The authentication mechanism is in the process
    of being migrated to Azure AD and authorisation is planned to be moved to Azure AD for our next release.
    Existing authorisation within our web application is already complex. We have users that belong to different groups with a range of permissions such as read, write or admin. Additionally each user is granted access to N customers and also N locations within
    each customer. We have a requirement that any number of combinations of customers and locations be supported. Users also need to have different permissions for each entity, i.e. read access to customer 1 location 2, write access to customer 4 and administer
    customer 7. Currently these privileges are maintained within a relational database and enforced as part of each PageLoad(). Essentially this is a combination of roles and rules based authorisation.
    We are struggling to represent this complex matrix structure within Azure AD and efficiently implement the authorisation decision in Azure AD. The driver for this technical requirement is to provide re-usability of the authorisation component to other (as
    yet unidentified) applications.
    Currently the best option we have come up with is implementing custom attributes for each class of permissions and storing within this 2048 bit field a bitmask that represents whether this permission is granted for a given location (which has a many to one
    relationship with customer).
    Any help or comment would be gratefully received,
    Phil

    Hi
    When "Advance routing" is used for Task assignment; the task service asserts the folllowing fact types : Task, PreviousOutcome and TaskAction to the rules engine. These facts gives all the reqd info about the task (like outcome of the participant, task stage .. etc)
    Now in the defined ruleset; we can have rules as per our requirement that can extract info from the asserted fact types and assign task to the required/next participant.
    Also note that we write the advance rules for exception cases only.
    For example; let's say all participants have 2 possible Outcomes [COMPLETE, RECHECK]. We have defined the ideal task routing flow as :
    Participant A -> Participant B -> Participant C. This is the flow when all participant selects "COMPLETE"
    Now suppose B selects outcome as "RECHECK" then the task shld move back to A. So for this case only we need to write a advance rule.
    Pls refer to the code sample at : http://download.oracle.com/technology/sample_code/hwf/workflow-106-IterativeDesign.zip
    Also dev guide : refer to section 28.3.7.2 http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10224/bp_hwfmodel.htm#BABBFEJJ
    Thanks
    Edited by: Kania on May 19, 2010 2:41 AM

  • Rules based ATP not working

    Hi Experts,
    We are facing couple of issues with Rules based ATP . The scenario is we are using only location based  substitution
    1) We are creating an order for a material in ECC . This material is GATP relevant & the settings are made for rules based ( if no stock available at Plant 1 it would check for stock  at plant 2 and confirm the requested quantity if available )   , ATP check is happening after creation of order for plant1  , but it is not checking for quantity at plant 2  eventhough quantity is available at Plant 2 .
    I am checking the rules, it says no rule was found ,it is not possible to dispaly the rules , But for the sameif i am doing a ATP simulation in APO , it is working fine , the susbstitutions are happening & confirmations are being done.
    2) IS it possible to use both checking horizon & rules based ATP ? The situation is if we use Checking horizon  in check control , any SO will get confirmed based on checking horizon , if no receipts or stock is available before the CH . If the rules based ATP is present along with CH  for plants 1 & 2, the system is still confirming the quantity at the CH on Plant1 , even though there is enough quantity to be confirmed at Plant 2.
    Thanks for your help
    Regards
    Surendra

    The first issue  is solved . There was discrepancy in the data format between APO & ECC . The data when transferred to APO from ECC has been converted to a  format  which APO uses & when a SO is created in ECC the data that was entered in the SO is not being recognised by APO  so the error .
    Regards
    Surendra

  • Rules-based GATP with sales BOM

    Hi,
    with reference to the following thread which asks the same question, but although in "answered" status, actually contains no answer to the final question...
    GATP Question
    We are investigating the possibility of using GATP with rules-based ATP to propose a sourcing plant. The result of this is of course a subitem in the sales order.
    My question is, is there any restriction to using the sales BOM with rules-based ATP? We use the sales BOM currently to insert the packaging items into the sales order. From a previous project, I have in the back of my mind that there was a restriction in this respect, and that with the subitem from the GATP result, it was not possible to explode the sales BOM.
    I cannot find what I recall to be the explicit SAP-help statement in this respect. Anybody with experience in this?
    Regards,
    Douglas

    The current situation is as follows:
    We have the saleable product A in plants X and Y, with a sales BOM in each of the plants, for the packaging items B and C. When product A is entered in the sales order in, say, plant X, the sales BOM is exploded and items B and C are inserted into the sales order. ATP is done in R/3, and if there is no availability in X, then the plant can be manually changed to Y, but each of the subitems from the sales BOM must also be manually changed to Y.
    Desired to be situation:
    We implement GATP, with a rule to subsitute plant X with plant Y in the event that plant X has no stock. So the desired system response is: enter item A in the sales order with plant X, GATP subsitutes plant X with plant Y and generates a subitem for product A in plant Y. Now the sales BOM is exploded for the new subitem, generating the further subitems for B and C, also in plant Y.
    Is this possible?

  • Rule-based distribution for opportunities

    Hello,
           I've configured a rule for opportunity distribution in 'Rule Policies' in SAP CRM Web UI. The rule is shown as 'Active' and 'Released'. However, when I create an opportunity and select the distribution method as 'Rule-Based distribution', then the dropdown the field 'Rule' stays blank and I don't get any options to select a 'Rule'. Please provide your inputs on how the rule I created can be made available for an opportunity.
    Regards,
    Aditya Mishra

    Hi Aditya,
    Have you configured a service profile and assigned your rule policy to it? You can set this up in:
    SPRO --> E-mail Response Management System --> Service Manager --> Define Service Manager Profiles
    1. Create a new service profile
    2. Add in service ID DD_RE
    3. Under property ID add in CONTEXT using value DD_OPPORTUNITY
    4. Under property ID add in POLICY using the rule policy ID you created.
    I hope this helps.
    Regards,
    David.

Maybe you are looking for

  • S10-3t and linux: which wifi driver?

    I have linux on this little beast and now I'm trying to get wireless up. A lspci -v shows that I'm dealing with a AR9285 atheros device. I have tried: the native kernel drivers with the latest 2.6.34-rcxx kernel. I have tried the latest svn from madw

  • MacBook Pro will not dectect Linksys Router

    I have recently aqquired a MacBook Pro and i'm at a loss as to why airport will not dectect my Linksys WRV54G wireless router, yet it will detect other secure and non-secure routers in my neighborhood. The MacBook will connect fine to the router via

  • Creating Drill-Down Links

    Hello, I want to be able to create 'drill-down' links in my SWING applications, I have seen these in many apps written in Visual Basic where you can click in a label and it acts like a button. Can anyone tell me how this is done or where I might find

  • Concurrent Employment (CE)

    Hi Experts, Can anyone could explain what is "Concurrent Employment (CE), " I have never come across, so i request you give me brief idea on this. Thanks in Advance, Hasini

  • Error in draft invoice for INV1.CogsAcct

    Hello everybody, I need you assistance for an error i recieve when I try to store an Invoice using SKD. In my system the "Manage Freight in Documents" is set on. When I try to store invoices using SDK i recieve the error "Error [INV1.CogsAcct][line1]