details:   https://code.openbravo.com/erp/devel/pi/rev/e26f3940e388
changeset: 23386:e26f3940e388
user:      Atul Gaware <atul.gaware <at> openbravo.com>
date:      Tue May 27 20:43:26 2014 +0530
summary:   Related To Issue 26242:Performance of Alert Rules created in 
AlertsWrongOrders
Modulescript

diffstat:

 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.class
                    |    0 
 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.class
                |    0 
 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java
         |    8 +-
 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql
    |   13 +++-
 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java
 |   34 +++++++++-
 5 files changed, 51 insertions(+), 4 deletions(-)

diffs (114 lines):

diff -r e60dfabc36f9 -r e26f3940e388 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.class
Binary file 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.class
 has changed
diff -r e60dfabc36f9 -r e26f3940e388 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.class
Binary file 
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.class
 has changed
diff -r e60dfabc36f9 -r e26f3940e388 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java
--- 
a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java
        Tue May 27 14:17:08 2014 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java
        Tue May 27 20:43:26 2014 +0530
@@ -61,7 +61,7 @@
                    wrongOrder.adClientId);
            if (!AlertsForWrongOrdersData.existsAlert(cp, oldAlertRuleId, 
wrongOrder.cOrderId)) {
            if (!AlertsForWrongOrdersData.existsAlertRule(cp, ALERT_RULE, 
wrongOrder.adClientId)) {
-               AlertsForWrongOrdersData.insertAlertRule(cp, 
wrongOrder.adClientId, ALERT_RULE, strTabId, ALERT_RULE_SQL);
+               AlertsForWrongOrdersData.insertAlertRule(cp, 
wrongOrder.adClientId, ALERT_RULE, strTabId, "");
                AlertsForWrongOrdersData[] roles = 
AlertsForWrongOrdersData.getRoleId(cp,
                    WindowOrderId, wrongOrder.adClientId);
                for (AlertsForWrongOrdersData role : roles) {
@@ -70,11 +70,15 @@
                      AlertsForWrongOrdersData.getAlertRuleId(cp, ALERT_RULE, 
wrongOrder.adClientId),
                      role.adRoleId);
                }
+             } else {
+               AlertsForWrongOrdersData.updateAlertRule(cp, ALERT_RULE, 
wrongOrder.adClientId);
              }
                String alertRuleId = 
AlertsForWrongOrdersData.getAlertRuleId(cp, ALERT_RULE,
                    wrongOrder.adClientId);
              AlertsForWrongOrdersData.insertAlert(cp, wrongOrder.adClientId, 
wrongOrder.adOrgId,
                  strName, alertRuleId, wrongOrder.orderinfo, 
wrongOrder.cOrderId);
-           }
+           } else {
+              AlertsForWrongOrdersData.updateAlertRule(cp, ALERT_RULE, 
wrongOrder.adClientId);
+            }
        }
 }
diff -r e60dfabc36f9 -r e26f3940e388 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql
--- 
a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql
   Tue May 27 14:17:08 2014 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql
   Tue May 27 20:43:26 2014 +0530
@@ -40,6 +40,17 @@
     <Parameter name="alertRule"/>
     <Parameter name="client"/>
   </SqlMethod>
+  <SqlMethod name="updateAlertRule" type="preparedStatement" return="rowcount">
+    <SqlMethodComment></SqlMethodComment>
+    <Sql>
+      <![CDATA[
+        UPDATE AD_AlertRule
+        SET SQL='', TYPE='E' WHERE NAME = ? AND AD_Client_ID = ?
+      ]]>
+    </Sql>
+    <Parameter name="name"/>
+    <Parameter name="clientId"/>
+  </SqlMethod>
   <SqlMethod name="existsAlert" type="preparedStatement" return="boolean">
     <SqlMethodComment></SqlMethodComment>
     <Sql><![CDATA[
@@ -88,7 +99,7 @@
       ) VALUES (
         get_uuid(), ?, '0', 'Y',
         now(), '100', now(), '100',
-        ?, ?, '', 'D',
+        ?, ?, '', 'E',
         ?
       )
     ]]></Sql>
diff -r e60dfabc36f9 -r e26f3940e388 
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java
--- 
a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java
        Tue May 27 14:17:08 2014 +0200
+++ 
b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java
        Tue May 27 20:43:26 2014 +0530
@@ -161,6 +161,38 @@
     return(boolReturn);
   }
 
+  public static int updateAlertRule(ConnectionProvider connectionProvider, 
String name, String clientId)    throws ServletException {
+    String strSql = "";
+    strSql = strSql + 
+      "        UPDATE AD_AlertRule" +
+      "        SET SQL='', TYPE='E' WHERE NAME = ? AND AD_Client_ID = ?";
+
+    int updateCount = 0;
+    PreparedStatement st = null;
+
+    int iParameter = 0;
+    try {
+    st = connectionProvider.getPreparedStatement(strSql);
+      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
+      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
+
+      updateCount = st.executeUpdate();
+    } catch(SQLException e){
+      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
+      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) 
+ "@" + e.getMessage());
+    } catch(Exception ex){
+      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
+      throw new ServletException("@CODE=@" + ex.getMessage());
+    } finally {
+      try {
+        connectionProvider.releasePreparedStatement(st);
+      } catch(Exception ignore){
+        ignore.printStackTrace();
+      }
+    }
+    return(updateCount);
+  }
+
   public static boolean existsAlert(ConnectionProvider connectionProvider, 
String alertRule, String order)    throws ServletException {
     String strSql = "";
     strSql = strSql + 
@@ -312,7 +344,7 @@
       "      ) VALUES (" +
       "        get_uuid(), ?, '0', 'Y'," +
       "        now(), '100', now(), '100'," +
-      "        ?, ?, '', 'D'," +
+      "        ?, ?, '', 'E'," +
       "        ?" +
       "      )";
 

------------------------------------------------------------------------------
The best possible search technologies are now affordable for all companies.
Download your FREE open source Enterprise Search Engine today!
Our experts will assist you in its installation for $59/mo, no commitment.
Test it for FREE on our Cloud platform anytime!
http://pubads.g.doubleclick.net/gampad/clk?id=145328191&iu=/4140/ostg.clktrk
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to