[rules-users] error while inserting values in excel

Swindells, Thomas TSwindells at nds.com
Fri Aug 20 05:33:00 EDT 2010


That's because you don't have an a, you don't have anything in your condition column so that column isn't included.
What you need to do is ensure that each column that you want actually contains values and the condition actually refers to $param.
The simplest way to do this is make your condition basic != $param and put null in as the row values.

I'm not clear why you have two separate rules for PF and HRA? You could just as easily do this in a single rule?

Thomas

From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Kripa Nathwani
Sent: 20 August 2010 10:22
To: Rules Users List
Subject: Re: [rules-users] error while inserting values in excel

Hi,

PFA newly modified DT and corresponding POJO as you have asked for.

CONDITION which we have applied on basic is such that I have to check 'if value passed to basic  variable is null(i.e. no value has been passed from calling code i.e. main method pasted below). We have written such a CONDITION because we wanted that rule should fire only when some value has been set to basic variable from  calling method and also I have changed data type of basic to Integer as you had asked for.


Calling program :

      public static final void main(String[] args) {
            try {
                  // load up the knowledge base
                  KnowledgeBase kbase = readKnowledgeBase();
                  StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
                  KnowledgeRuntimeLogger logger = KnowledgeRuntimeLoggerFactory.newFileLogger(ksession, "test");
                  // go !
                  AmountPojo a = new AmountPojo();
                  a.setBasic(1000);

                  ksession.insert(a);
                  ksession.fireAllRules();
                  logger.close();
            } catch (Throwable t) {
                  t.printStackTrace();
            }
      }



But,still we are getting  error as 'a can not be resolved' and this error is occurring on lines 5(occurrence is 3 times) and 14 (occurrence is 3 times). To my surprise, I found that these rows (i.e. row no.5 and 14) are blank.


Please suggest some solution for the same

Best Regards,
Kripa




From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Swindells, Thomas
Sent: Friday, August 20, 2010 1:55 PM
To: Rules Users List
Subject: Re: [rules-users] error while inserting values in excel

You class looks totally wrong!
What are you using statics? These should all just be instant variables (as you are trying to get a - an instance of AmountProj).
If you want to have nullable values then you can't use primitives, you need to use the Object forms (java.lang.Double, java.lang.Integer).

The syntax of your rules are wrong as well. Your should merge the a: AmountPair across all your condition columns so that you are using the same a.
Your condition expressions are also wrong - you should be using mvel not java style code and you should be using the column value.
This means that your expression should look like "basic == $param" (this would test that the basic salary matches whatever is in the corresponding column.
If you just want the rule to run always as long as basic isn't null (assuming you've done the fixes above) then the simplest way is to have teh expression "basic != $param" and then place null in the column, although I think you need to explain a bit more of what you are trying to achieve as I'm not sure why you are trying to do this in a spreadsheet?

Thomas

From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Kripa Nathwani
Sent: 20 August 2010 08:36
To: Rules Users List
Subject: Re: [rules-users] error while inserting values in excel

Hi,

The foll is the java file which I tried to run as a stand alone application:

package com.sample;

public class AmountPojo {
     public static int basic;
     public static double pf;
     public static double hra;
    public static int getBasic() {
        return basic;
    }
    public static void setBasic(int basic) {
        AmountPojo.basic = basic;
    }
    public static double getPf() {
        return pf;
    }
    public static void setPf(double pf) {
        AmountPojo.pf = pf;
    }
    public static double getHra() {
        return hra;
    }
    public static void setHra(double hra) {
        AmountPojo.hra = hra;
    }

}

Let me know if you still require any further information.

Regards,
Kripa
From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of tom ska
Sent: Friday, August 20, 2010 12:42 PM
To: Rules Users List
Subject: Re: [rules-users] error while inserting values in excel

Ok, please write me AmountPojo class code, and - if You can - those rules in DRL, I will try to write You rules in DT.

regards,
tom
2010/8/20 Kripa Nathwani <Kripa.Nathwani at lntinfotech.com<mailto:Kripa.Nathwani at lntinfotech.com>>
Hi,

Below is the decision table on which I am working. It is calculating PF and HRA by taking basic value and checking that basic is not equal to null.
The problem is when I start inserting values in the column it is giving me following error messages:

 no viable alternative at input ')' in rule "Pricing bracket_12" in pattern AmountPojo
 mismatched input '!=' expecting ')' in rule "Pricing bracket_12" in pattern AmountPojo
Unknown error while parsing. This is a bug. Please contact the Development team



I know it is related to syntax but I am not able to solve  it.




[cid:image001.png at 01CB4053.06AFAA30]


Best Regards,
Kripa



________________________________
This Email may contain confidential or privileged information for the intended recipient (s) If you are not the intended recipient, please do not use or disseminate the information, notify the sender and delete it from your system.

______________________________________________________________________

_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-users


______________________________________________________________________

________________________________
This Email may contain confidential or privileged information for the intended recipient (s) If you are not the intended recipient, please do not use or disseminate the information, notify the sender and delete it from your system.

______________________________________________________________________

________________________________

**************************************************************************************
This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster at nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00
**************************************************************************************

______________________________________________________________________

________________________________
This Email may contain confidential or privileged information for the intended recipient (s) If you are not the intended recipient, please do not use or disseminate the information, notify the sender and delete it from your system.

______________________________________________________________________

________________________________

**************************************************************************************
This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmaster at nds.com and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by NDS for employment and security purposes. To protect the environment please do not print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, United Kingdom. A company registered in England and Wales. Registered no. 3080780. VAT no. GB 603 8808 40-00
**************************************************************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20100820/4825913d/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 8448 bytes
Desc: image001.png
Url : http://lists.jboss.org/pipermail/rules-users/attachments/20100820/4825913d/attachment.png 


More information about the rules-users mailing list