Difference between revisions of "Script Callout"
From ADempiere
This Wiki is read-only for reference purposes to avoid broken links.
(edit for readibility and more elegant advertising :-)) |
(→Status: more prominence to company names) |
||
Line 1: | Line 1: | ||
=Status= | =Status= | ||
* Testing for Next Release 340 - January, 2008<br> | * Testing for Next Release 340 - January, 2008<br> | ||
− | *A real huge contribution from [[User:CarlosRuiz|Carlos Ruiz]], Quality Systems & Solutions | + | *A real huge contribution from [[User:CarlosRuiz|Carlos Ruiz]], '''Quality Systems & Solutions (QSS)''', [[Colombia]] |
− | *Now it can work with any java scripting language such as Groovy and Jython, thanks to [[User:vpj-cd|Víctor Pérez]], E-Evolution, [[Mexico]] | + | *Now it can work with any java scripting language such as Groovy and Jython, thanks to [[User:vpj-cd|Víctor Pérez]], '''E-Evolution (Libero)''', [[Mexico]] |
− | + | ||
= Creating the Rule = | = Creating the Rule = | ||
Revision as of 18:45, 25 January 2008
Contents
Status
- Testing for Next Release 340 - January, 2008
- A real huge contribution from Carlos Ruiz, Quality Systems & Solutions (QSS), Colombia
- Now it can work with any java scripting language such as Groovy and Jython, thanks to Víctor Pérez, E-Evolution (Libero), Mexico
Creating the Rule
Within the script you can use:
- Window context variables start with a single underscore _
- Login context variables start with two underscores __
- Parameters for callout start with three underscores ___
- ___WindowNo
- ___Tab
- ___Field
- ___Value
- ___OldValue
Configure the callout
Sample Code provided for copy/paste testing
On the Table and Column, callout reference:
@script:beanshell:BP_fillDescriptionFromName
On the Rule Search Key:
beanshell:BP_fillDescriptionFromName
On the Rule Script:
if (___Tab.getValue("Name") != null) { ___Tab.setValue("Description", ___Tab.getValue("Name")); } result = "";
Scripting Languages
- Now standard Adempiere has uploaded jars to work with groovy, jython and beanshell
- to call a script from a Callout now you can follow this syntax:
- @script:beanshell:ValidateQtyOnHand
- @script:groovy:ValidateQtyOnHand
- @script:jython:ValidateQtyOnHand
- Note: When you create the rule, you have to set in the Search Key box with the respective rule:
- Search Key : beanshell:ValidateQtyOnHand
- Search Key : groovy:ValidateQtyOnHand
- Search Key : jython:vValidateQtyOnHand
- Set the Event Type as Callout and Rule Type as JSR 223 Scripting APIs