Test convert PoastgreSQL
This commit is contained in:
parent
fd4b6ec354
commit
9f7cb1dd9c
|
@ -0,0 +1,164 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* The contents of this file are subject to the Compiere License Version 1.1
|
||||||
|
* ("License"); You may not use this file except in compliance with the License
|
||||||
|
* You may obtain a copy of the License at http://www.compiere.org/license.html
|
||||||
|
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||||
|
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
|
||||||
|
* the specific language governing rights and limitations under the License.
|
||||||
|
* The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
|
||||||
|
* Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
|
||||||
|
* are Copyright (C) 1999-2005 Jorg Janke.
|
||||||
|
* All parts are Copyright (C) 1999-2005 ComPiere, Inc. All Rights Reserved.
|
||||||
|
* Contributor(s): ______________________________________.
|
||||||
|
*****************************************************************************/
|
||||||
|
package org.compiere.dbPort;
|
||||||
|
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.sql.SQLException;
|
||||||
|
import java.util.logging.*;
|
||||||
|
|
||||||
|
import org.compiere.*;
|
||||||
|
import org.compiere.util.*;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Order Test Example
|
||||||
|
*
|
||||||
|
* @author Jorg Janke
|
||||||
|
* @version $Id: PostgresConvertTest.java,v 1.2 2005/03/11 20:30:16 jjanke Exp $
|
||||||
|
*/
|
||||||
|
public class PostgresConvertTest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* PostgresConvertTest
|
||||||
|
*/
|
||||||
|
public PostgresConvertTest ()
|
||||||
|
{
|
||||||
|
} // PostgresConvertTest
|
||||||
|
|
||||||
|
/** Logger */
|
||||||
|
private static CLogger log = CLogger.getCLogger (PostgresConvertTest.class);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test
|
||||||
|
* @param args ignored
|
||||||
|
*/
|
||||||
|
public static void main (String[] args)
|
||||||
|
{
|
||||||
|
Compiere.startup(true);
|
||||||
|
CLogMgt.setLoggerLevel(Level.INFO, null);
|
||||||
|
CLogMgt.setLevel(Level.INFO);
|
||||||
|
//
|
||||||
|
Ini.setProperty(Ini.P_UID,"SuperUser");
|
||||||
|
Ini.setProperty(Ini.P_PWD,"System");
|
||||||
|
Ini.setProperty(Ini.P_ROLE,"GardenWorld Admin");
|
||||||
|
Ini.setProperty(Ini.P_CLIENT, "GardenWorld");
|
||||||
|
Ini.setProperty(Ini.P_ORG,"HQ");
|
||||||
|
Ini.setProperty(Ini.P_WAREHOUSE,"HQ Warehouse");
|
||||||
|
Ini.setProperty(Ini.P_LANGUAGE,"English");
|
||||||
|
Login login = new Login(Env.getCtx());
|
||||||
|
if (!login.batchLogin(null))
|
||||||
|
System.exit(1);
|
||||||
|
|
||||||
|
log.info("start test");
|
||||||
|
StringBuffer sql = new StringBuffer (
|
||||||
|
"SELECT 'un DATE en una constante'," +
|
||||||
|
" 'ropa de cache para damas' FROM DUAL");
|
||||||
|
try
|
||||||
|
{
|
||||||
|
PreparedStatement pstmt = DB.prepareStatement(sql.toString());
|
||||||
|
ResultSet rs = pstmt.executeQuery();
|
||||||
|
}
|
||||||
|
catch(SQLException e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, sql.toString(), e);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// From org.compiere.acct.Doc_Order
|
||||||
|
// update Product PO info
|
||||||
|
// should only be once, but here for every AcctSchema
|
||||||
|
// ignores multiple lines with same product - just uses first
|
||||||
|
/*sql = new StringBuffer (
|
||||||
|
"UPDATE M_Product_PO po "
|
||||||
|
+ "SET PriceLastPO = (SELECT currencyConvert(ol.PriceActual,ol.C_Currency_ID,po.C_Currency_ID,o.DateOrdered,o.C_ConversionType_ID,o.AD_Client_ID,o.AD_Org_ID) "
|
||||||
|
+ "FROM C_Order o, C_OrderLine ol "
|
||||||
|
+ "WHERE o.C_Order_ID=ol.C_Order_ID"
|
||||||
|
+ " AND po.M_Product_ID=ol.M_Product_ID AND po.C_BPartner_ID=o.C_BPartner_ID"
|
||||||
|
+ " AND ROWNUM=1 AND o.C_Order_ID=").append(getRecord_ID()).append(") ")
|
||||||
|
.append("WHERE EXISTS (SELECT * "
|
||||||
|
+ "FROM C_Order o, C_OrderLine ol "
|
||||||
|
+ "WHERE o.C_Order_ID=ol.C_Order_ID"
|
||||||
|
+ " AND po.M_Product_ID=ol.M_Product_ID AND po.C_BPartner_ID=o.C_BPartner_ID"
|
||||||
|
+ " AND o.C_Order_ID=").append(getRecord_ID()).append(")");
|
||||||
|
int no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
log.fine("M_Product_PO - Updated=" + no);
|
||||||
|
*/
|
||||||
|
|
||||||
|
//sql = new StringBuffer ("DELETE T_MRP WHERE AD_Client_ID<>0");
|
||||||
|
//no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
|
||||||
|
/*
|
||||||
|
// From org.compiere.acct.Doc_Invoice
|
||||||
|
// update Product PO info
|
||||||
|
// should only be once, but here for every AcctSchema
|
||||||
|
// ignores multiple lines with same product - just uses first
|
||||||
|
StringBuffer sql = new StringBuffer (
|
||||||
|
"UPDATE M_Product_PO po "
|
||||||
|
+ "SET PriceLastInv = "
|
||||||
|
// select
|
||||||
|
+ "(SELECT currencyConvert(il.PriceActual,i.C_Currency_ID,po.C_Currency_ID,i.DateInvoiced,i.C_ConversionType_ID,i.AD_Client_ID,i.AD_Org_ID) "
|
||||||
|
+ "FROM C_Invoice i, C_InvoiceLine il "
|
||||||
|
+ "WHERE i.C_Invoice_ID=il.C_Invoice_ID"
|
||||||
|
+ " AND po.M_Product_ID=il.M_Product_ID AND po.C_BPartner_ID=i.C_BPartner_ID"
|
||||||
|
+ " AND ROWNUM=1 AND i.C_Invoice_ID=").append(getRecord_ID()).append(") ")
|
||||||
|
// update
|
||||||
|
.append("WHERE EXISTS (SELECT * "
|
||||||
|
+ "FROM C_Invoice i, C_InvoiceLine il "
|
||||||
|
+ "WHERE i.C_Invoice_ID=il.C_Invoice_ID"
|
||||||
|
+ " AND po.M_Product_ID=il.M_Product_ID AND po.C_BPartner_ID=i.C_BPartner_ID"
|
||||||
|
+ " AND i.C_Invoice_ID=").append(getRecord_ID()).append(")");
|
||||||
|
int no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
log.fine("M_Product_PO - Updated=" + no);
|
||||||
|
*/
|
||||||
|
sql = new StringBuffer ("UPDATE I_Order SET M_Warehouse_ID=(SELECT M_Warehouse_ID FROM M_Warehouse w WHERE ROWNUM=1 AND I_Order.AD_Client_ID=w.AD_Client_ID AND I_Order.AD_Org_ID=w.AD_Org_ID) WHERE M_Warehouse_ID IS NULL AND I_IsImported<>'Y' AND AD_Client_ID=11");
|
||||||
|
int no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
/*sql = new StringBuffer ("UPDATE I_Order o SET I_IsImported='E', I_ErrorMsg=I_ErrorMsg||'ERR=Invalid Org, ' WHERE (AD_Org_ID IS NULL OR AD_Org_ID=0 OR EXISTS (SELECT * FROM AD_Org oo WHERE o.AD_Org_ID=oo.AD_Org_ID AND (oo.IsSummary='Y' OR oo.IsActive='N'))) AND I_IsImported<>'Y'");
|
||||||
|
no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
sql = new StringBuffer ("UPDATE I_Order o SET C_DocType_ID=(SELECT C_DocType_ID FROM C_DocType d WHERE d.Name=o.DocTypeName AND d.DocBaseType='POO' AND o.AD_Client_ID=d.AD_Client_ID) WHERE C_DocType_ID IS NULL AND IsSOTrx='N' AND DocTypeName IS NOT NULL AND I_IsImported<>'Y'");
|
||||||
|
no = DB.executeUpdate(sql.toString(), getTrxName());*/
|
||||||
|
sql = new StringBuffer ("UPDATE I_Order o SET (C_BPartner_ID,AD_User_ID)=(SELECT C_BPartner_ID,AD_User_ID FROM AD_User u WHERE o.ContactName=u.Name AND o.AD_Client_ID=u.AD_Client_ID AND u.C_BPartner_ID IS NOT NULL) WHERE C_BPartner_ID IS NULL AND ContactName IS NOT NULL AND EXISTS (SELECT Name FROM AD_User u WHERE o.ContactName=u.Name AND o.AD_Client_ID=u.AD_Client_ID AND u.C_BPartner_ID IS NOT NULL GROUP BY Name HAVING COUNT(*)=1) AND I_IsImported<>'Y' AND AD_Client_ID=11");
|
||||||
|
no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
|
||||||
|
|
||||||
|
//sql = new StringBuffer ("SELECT M_PriceList_ID, pl.Name, pl.Description, pl.IsTaxIncluded, c.ISO_Code, c.CurSymbol, cc.AD_Language FROM M_PriceList pl INNER JOIN C_Currency c ON (pl.C_Currency_ID=c.C_Currency_ID) LEFT OUTER JOIN C_Country cc ON (c.C_Currency_ID=cc.C_Currency_ID AND ROWNUM=1) WHERE pl.IsActive='Y' AND pl.AD_Client_ID=? AND pl.M_PriceList_ID=100000");
|
||||||
|
//no = DB.executeUpdate(sql.toString(), getTrxName());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
log.info("final test");
|
||||||
|
|
||||||
|
} // main
|
||||||
|
|
||||||
|
public static int getRecord_ID()
|
||||||
|
{
|
||||||
|
return 10000000;
|
||||||
|
} // getRecord_ID
|
||||||
|
|
||||||
|
protected static String getTrxName()
|
||||||
|
{
|
||||||
|
return "Test";
|
||||||
|
} // getTrxName
|
||||||
|
|
||||||
|
} // PostgresConvertTest
|
Loading…
Reference in New Issue