KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openbravo > erpCommon > ad_callouts > SL_AlertRule_SQL


1 /*
2  *************************************************************************
3  * The contents of this file are subject to the Openbravo Public License
4  * Version 1.0 (the "License"), being the Mozilla Public License
5  * Version 1.1 with a permitted attribution clause; you may not use this
6  * file except in compliance with the License. You may obtain a copy of
7  * the License at http://www.openbravo.com/legal/license.html
8  * Software distributed under the License is distributed on an "AS IS"
9  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
10  * License for the specific language governing rights and limitations
11  * under the License.
12  * The Original Code is Openbravo ERP.
13  * The Initial Developer of the Original Code is Openbravo SL
14  * All portions are Copyright (C) 2001-2006 Openbravo SL
15  * All Rights Reserved.
16  * Contributor(s): ______________________________________.
17  ************************************************************************
18 */

19 package org.openbravo.erpCommon.ad_callouts;
20
21 import org.openbravo.base.secureApp.HttpSecureAppServlet;
22 import org.openbravo.base.secureApp.VariablesSecureApp;
23 import org.openbravo.xmlEngine.XmlDocument;
24 import org.openbravo.erpCommon.utility.Utility;
25 import java.io.*;
26 import javax.servlet.*;
27 import javax.servlet.http.*;
28
29 import java.sql.*;
30 import org.openbravo.utils.FormatUtilities;
31
32
33 public class SL_AlertRule_SQL extends HttpSecureAppServlet {
34   
35
36   public void init (ServletConfig config) {
37     super.init(config);
38     boolHist = false;
39   }
40
41   public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException {
42     VariablesSecureApp vars = new VariablesSecureApp(request);
43     if (vars.commandIn("DEFAULT")) {
44       String JavaDoc strSQL = vars.getStringParameter("inpsql");
45       try {
46         printPage(response, vars, strSQL);
47       } catch (ServletException ex) {
48         pageErrorCallOut(response);
49       }
50     } else pageError(response);
51   }
52
53   boolean existsColumn(ResultSetMetaData rmeta, String JavaDoc col) {
54     try {
55       for (int i=1; i<=rmeta.getColumnCount(); i++) {
56         if (rmeta.getColumnName(i).equals(col)) return true;
57       }
58     } catch (Exception JavaDoc ex){}
59     return false;
60   }
61   
62   void printPage(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strSQL) throws IOException, ServletException {
63     if (log4j.isDebugEnabled()) log4j.debug("Output: dataSheet");
64     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_callouts/CallOut").createXmlDocument();
65
66     String JavaDoc msg="";
67     
68  
69     try {
70       PreparedStatement st = this.getPreparedStatement(strSQL);
71       ResultSet result;
72       result = st.executeQuery();
73       ResultSetMetaData rmeta=result.getMetaData();
74       if (!existsColumn(rmeta,"AD_CLIENT_ID")) msg = "AD_CLIENT_ID ";
75       if (!existsColumn(rmeta,"AD_ORG_ID")) msg += "AD_ORG_ID ";
76       if (!existsColumn(rmeta,"CREATED")) msg += "CREATED ";
77       if (!existsColumn(rmeta,"CREATEDBY")) msg += "CREATEDBY ";
78       if (!existsColumn(rmeta,"UPDATED")) msg += "UPDATED ";
79       if (!existsColumn(rmeta,"UPDATEDBY")) msg += "UPDATEDBY ";
80       if (!existsColumn(rmeta,"ISACTIVE")) msg += "ISACTIVE ";
81       if (!existsColumn(rmeta,"AD_USER_ID")) msg += "AD_USER_ID ";
82       if (!existsColumn(rmeta,"AD_ROLE_ID")) msg += "AD_ROLE_ID ";
83       if (!existsColumn(rmeta,"RECORD_ID")) msg += "RECORD_ID ";
84       if (!existsColumn(rmeta,"DESCRIPTION")) msg += "DESCRIPTION ";
85       if (!existsColumn(rmeta,"REFERENCEKEY_ID")) msg += "REFERENCEKEY_ID";
86       if (!msg.equals("")) msg = Utility.messageBD(this,"notColumnInQuery",vars.getLanguage()) + msg;
87     } catch (Exception JavaDoc ex) {
88       msg = "error in query: " + FormatUtilities.replaceJS(ex.toString());
89     }
90     
91     StringBuffer JavaDoc resultado = new StringBuffer JavaDoc();
92     resultado.append("var calloutName='SL_AlertRule_SQL';\n\n");
93     resultado.append("var respuesta = new Array(");
94     if (!msg.equals("")) resultado.append("new Array(\"MESSAGE\", \"" + msg + "\")");
95     resultado.append(");");
96     xmlDocument.setParameter("array", resultado.toString());
97     xmlDocument.setParameter("frameName", "frameAplicacion");
98     response.setContentType("text/html; charset=UTF-8");
99     PrintWriter out = response.getWriter();
100     out.println(xmlDocument.print());
101     out.close();
102   }
103 }
104
Popular Tags