[rules-users] rules-users Digest, Vol 40, Issue 41
Greg Barton
greg_barton at yahoo.com
Wed Mar 10 14:58:02 EST 2010
You mean like nabble.com?
http://n3.nabble.com/Re-rules-users-Digest-Vol-40-Issue-41-td440433.html#a440433
--- On Wed, 3/10/10, Nathan Bell <Nathan.Bell at pharmacyonesource.com> wrote:
> From: Nathan Bell <Nathan.Bell at pharmacyonesource.com>
> Subject: Re: [rules-users] rules-users Digest, Vol 40, Issue 41
> To: rules-users at lists.jboss.org
> Date: Wednesday, March 10, 2010, 1:50 PM
> True. I probably should not have
> included wiki in that list. What I am
> thinking of is more along the lines of a forum (think
> stackoverflow.com)
> where conversations are recorded, can be commented on,
> voted on, rated,
> etc. Some mechanism where conversations like the ones that
> occur in this
> mailing list are persisted and become searchable.
>
> -Nathan
>
>
> Date: Wed, 10 Mar 2010 19:25:39 +0100
> From: Geoffrey De Smet <ge0ffrey.spam at gmail.com>
> Subject: Re: [rules-users] A general question about this
> mailing list
> To: rules-users at lists.jboss.org
> Message-ID: <hn8o73$b59$1 at dough.gmane.org>
> Content-Type: text/plain; charset=windows-1252;
> format=flowed
>
> I personally don't believe much in a wiki (there is a
> drools wiki btw),
> because it gets stale fast.
> I believe much more in the reference manual, which is
> checked in in
> Subversion.
>
> In the Drools Planner manual I 've already added "meta"
> information,
> such as where jira is and how to build from source etc
> etc.
>
> https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/
> trunk/target/docs/drools-planner/html_single/index.html
>
> With kind regards,
> Geoffrey De Smet
>
>
> Nathan Bell schreef:
> > I?m fairly new to this list, but I have already seen a
> great deal of
> > helpful information being shared. The problem is that
> a collection of
> > emails makes a poor knowledge base. Has there ever
> been an attempt to
> > set up a forum/wiki/knowledgebase for the Drools
> community? I would be
>
> > willing to help with setting that up if it is
> something the community
> > wants. I?m guessing that this has been talked about
> before, so I want
> to
> > check-in with the community and ask why it does not
> exist already. Is
> > there some barrier that I am not aware of that would
> make a different
> > format undesirable?
> >
> >
> >
> > Thank You,
> >
> >
> >
> > Nathan Bell
> >
> >
> >
> >
> >
> ------------------------------------------------------------------------
> >
> > _______________________________________________
> > rules-users mailing list
> > rules-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
> ------------------------------
>
> Message: 3
> Date: Wed, 10 Mar 2010 19:38:09 +0000
> From: Yamil Bracho <yamilbracho at hotmail.com>
> Subject: Re: [rules-users] Problems count and sumarizing
> data in facts
> To: Drools UserList <rules-users at lists.jboss.org>
> Message-ID: <SNT130-w419F987761CE0A1C882981AA330 at phx.gbl>
> Content-Type: text/plain; charset="windows-1252"
>
>
> Thanks Thomas.
> I rewrote the rule as:
> rule "Sumatoria de lineas detalle vs Header" salience
> 10 when
> Number( $total : doubleValue) from accumulate(
> Map(this["_TYPE_"] == "D",
> $monto :
> eval(Double.parseDouble(this.get("MONTO")))),
> sum($monto))
> $map : Map(this["_TYPE_"] == "H",
> this["MT_TOTAL"]
> !=
> $total) then System.out.println("TOTAL="
> + $total);
> listBitacora.add(new BitacoraDTO($map.get("_NUMLINE_"),
> "Error en el Detalle: El n?mero del lineas de detalle ("
> + $total +
> ") no empareja con lo del encabezado (" +
> $map.get("NU_REGISTROS") +
> ")")); end
>
> but I am getting errors in the parseDouble:
> [828,29]: [ERR 101] Line 828:29 no viable alternative at
> input 'Double'
> in rule "Sumatoria de lineas detalle vs Header" in pattern
> Map[828,67]:
> [ERR 102] Line 828:67 mismatched input ')' expecting 'then'
> in rule
> "Sumatoria de lineas detalle vs Header"
> Any hint...
>
>
> From: TSwindells at nds.com
> To: rules-users at lists.jboss.org
> Date: Wed, 10 Mar 2010 15:13:49 +0000
> Subject: Re: [rules-users] Problems count and sumarizing
> data in facts
>
>
>
>
>
>
>
>
>
>
>
>
>
> To convert from string to double you have to full back to
> java:
> Something along the lines of
> $monto : eval(Double.parseDouble(this.get(?MONTO?)))
>
> However even with doing this your rules are unlikely to
> work
> consistently as you expect. Using equality tests on
> doubles is
> fundamentally unsafe as doubles
> aren?t represented exactly and may not exactly match the
> value you
> think you have. Force instance
> 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1
> != 1.0 (dependent on floating point chipset etc). If
> you are dealing
> with currency then it is far simpler and safer
> to just operate with integers and divide by 100 when you
> want to
> display the value. The other alternative is to use
> BigDecimal which
> will store an exact representation but will probably
> require more work
> with getting your accumulate function correct. Your
> last option is to use Math.abs(left-right) < 0.1 to see
> if they are
> approximately equal. More details can be found here
> http://firstclassthoughts.co.uk/java/traps/java_double_traps.html
>
> Thomas
>
>
>
>
>
> From: rules-users-bounces at lists.jboss.org
> [mailto:rules-users-bounces at lists.jboss.org]
> On Behalf Of Yamil Bracho
>
> Sent: 10 March 2010 14:27
>
> To: Drools UserList
>
> Subject: Re: [rules-users] Problems count and sumarizing
> data in facts
>
>
>
> I solved the counting of detail lines this way:
>
>
>
>
>
> rule "Contador de lineas detalle vs Header"
>
>
> salience 10
>
>
> when
>
>
> Number($count : intValue)
> from accumulate(
>
>
> $mp :
> Map(this["_TYPE_"] == "D"), count($mp))
>
>
> $map : Map(this["_TYPE_"]
> == "H",
>
>
>
> this["NU_REGISTROS"] != $count)
>
>
> then
>
>
> System.out.println("NumRecs=" + $count);
>
>
> listBitacora.add(new
> BitacoraDTO($map.get("_NUMLINE_"),
>
>
>
>
> "El n?mero del lineas de
> detalle (" + $count +
>
>
>
>
> ") no empareja con lo
> del
> encabezado (" + $map.get("NU_REGISTROS") + ")"));
>
>
> end
>
>
>
>
>
> However, I still got problem with summarize the amounts. I
> wrote
>
>
>
>
>
>
> rule "Sumatoria de lineas detalle vs Header"
>
>
> salience 10
>
>
> when
>
>
> Number( $total :
> doubleValue) from accumulate(
>
>
>
> Map(this["_TYPE_"] == "D",
>
>
>
> $monto : ((Number) this["MONTO"]),
>
>
>
> sum($monto)))
>
>
> $map : Map(this["_TYPE_"]
> == "H",
>
>
>
> this["MT_TOTAL"] != $total)
>
>
> then
>
>
> System.out.println("TOTAL=" + $total);
>
>
> listBitacora.add(new
> BitacoraDTO($map.get("_NUMLINE_"),
>
>
>
>
> "Error en el Detalle: El
> n?mero del lineas de detalle (" + $total +
>
>
>
>
> ") no empareja con lo
> del
> encabezado (" + $map.get("NU_REGISTROS") + ")"));
>
>
> end
>
>
>
>
>
> And i am getting mismatched input" so my question is
> how to convert a
> string to double in this line "$monto : ((Number)
> this["MONTO"])," ?
>
>
>
>
>
> TIA
>
>
>
>
>
> Yamil
>
>
>
>
>
>
> From: yamilbracho at hotmail.com
>
> To: rules-users at lists.jboss.org
>
> Date: Tue, 9 Mar 2010 17:41:43 +0000
>
> Subject: [rules-users] Problems count and sumarizing data
> in facts
>
>
>
> Hi, I have two kind of facts in a map.
>
>
> There is a field called _TYPE_ (H)eader, D)etail)
>
>
> In the Header line I have two String fields, one for the
> number of
> details lines ("NU_REGISTROS") and another for the sum of
> the detail
> line ("MT_TOTAL")
>
>
> In the detail lines I only have a String field called
> "MONTO"
>
>
>
>
>
> I would like to build two rules. One to check the count of
> detail lines
> versus the field in the header line so I wrote :
>
>
>
>
>
> rule "Contador de lineas detalle vs Header"
>
>
> salience 10
>
>
> when
>
>
> $numRecs : Number()
>
>
>
> from accumulate(Map(this["_TYPE_"] == "D", $d :
> this["_NUMLINE_"]), count($d))
>
>
> $map : Map(this["_TYPE_"]
> == "H",
>
>
>
> this["NU_REGISTROS"] != $numRecs)
>
>
> then
>
>
> System.out.println("NumRecs=" + $numRecs);
>
>
> listBitacora.add(new
> BitacoraDTO($map.get("_NUMLINE_"),
>
>
>
>
> "Error en el Detalle: El
> n?mero del lineas de detalle (" + $total +
>
>
>
>
> ") no empareja con lo
> del
> encabezado (" + $map.get("NU_REGISTROS") + ")"));
>
>
> end
>
>
>
>
>
> However I always got "NumRecs=1" when i print out the
> value of $numRecs
> but I am absolute sure there is two details lines...
>
>
>
>
>
> Second when i try to sumarize the total field in the
> details line i got
> (MONTO in the detail line is a string):
>
>
>
>
>
> rule "Sumatoria de lineas detalle vs Header"
>
>
> salience 10
>
>
> when
>
>
> $total : Number()
>
>
>
> from accumulate(Map(this["_TYPE_"] == "D",
>
>
>
>
> $monto : this["MONTO"]),
>
>
>
>
> sum(eval(Double.valueOf((String) $monto
> ))))
>
>
> $map : Map(this["_TYPE_"]
> == "H",
>
>
>
> this["MT_TOTAL"] != $total)
>
>
> then
>
>
> System.out.println("TOTAL=" + $total);
>
>
> listBitacora.add(new
> BitacoraDTO($map.get("_NUMLINE_"),
>
>
>
>
> "Error en el Detalle: El
> n?mero del lineas de detalle (" + $total +
>
>
>
>
> ") no empareja con lo
> del
> encabezado (" + $map.get("NU_REGISTROS") + ")"));
>
>
> end
>
>
>
>
>
> but I got
>
>
> Rule Compilation error : [Rule name='Sumatoria de lineas
> detalle vs
> Header']
>
>
>
> rule/Rule_Sumatoria_de_lineas_detalle_vs_Header_0.java
> (9:1313)
> : The method eval(Double) is undefined for the type
> Rule_Sumatoria_de_lineas_detalle_vs_Header_0
>
>
>
>
>
>
>
>
>
>
>
> Any help in those tow problems
>
>
>
>
>
> TIA
>
>
>
>
>
> Yamil
>
>
>
>
>
>
> Actual?zate gratis al nuevo Internet Explorer 8 y
> navega m?s seguro
>
>
>
>
>
> Compartir tus mejores FOTOS es f?cil en Messenger
>
> ?DESCUBRE c?mo!
>
>
>
>
>
>
>
> ************************************************************************
> **************
>
> 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 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.
>
>
>
> An NDS Group Limited company. www.nds.com
>
>
>
>
>
> _________________________________________________________________
> Recibe en tu m?vil un SMS con tu Hotmail recibido. ?Date de
> alta ya!
> http://serviciosmoviles.es.msn.com/
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:
> http://lists.jboss.org/pipermail/rules-users/attachments/20100310/014970
> 61/attachment.html
>
> ------------------------------
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
> End of rules-users Digest, Vol 40, Issue 41
> *******************************************
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
More information about the rules-users
mailing list