Merge with release-6.1

This commit is contained in:
hieplq 2018-11-13 12:06:17 +07:00
commit 3052c91c9b
76 changed files with 1145 additions and 1036 deletions

View File

@ -0,0 +1,67 @@
SET SQLBLANKLINES ON
SET DEFINE OFF
-- IDEMPIERE-2648 implement pack-in pack-out handle for infoWindow
-- Nov 12, 2018, 2:11:41 PM BRST
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (213804,0,'Info Window','Info and search/select Window','The Info window is used to search and select records as well as display information relevant to the selection.',50006,'AD_InfoWindow_ID',10,'N','N','N','N','N',0,'N',19,0,0,'Y',TO_DATE('2018-11-12 14:11:40','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2018-11-12 14:11:40','YYYY-MM-DD HH24:MI:SS'),100,3068,'N','N','D','N','N','N','Y','6b52cd03-c9ae-4b0e-b24f-45323a7ed42d','Y',0,'N','N','C','N')
;
-- Nov 12, 2018, 2:12:32 PM BRST
UPDATE AD_Column SET FKConstraintType='N',Updated=TO_DATE('2018-11-12 14:12:32','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
-- Nov 12, 2018, 2:12:35 PM BRST
UPDATE AD_Column SET FKConstraintName='ADInfoWindow_ADPackageExpDetai', FKConstraintType='N',Updated=TO_DATE('2018-11-12 14:12:35','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
-- Nov 12, 2018, 2:12:35 PM BRST
ALTER TABLE AD_Package_Exp_Detail ADD AD_InfoWindow_ID NUMBER(10) DEFAULT NULL
;
-- Nov 12, 2018, 2:12:35 PM BRST
ALTER TABLE AD_Package_Exp_Detail ADD CONSTRAINT ADInfoWindow_ADPackageExpDetai FOREIGN KEY (AD_InfoWindow_ID) REFERENCES ad_infowindow(ad_infowindow_id) DEFERRABLE INITIALLY DEFERRED
;
-- Nov 12, 2018, 2:14:03 PM BRST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200445,'Info Window',50004,'IW',0,0,'Y',TO_DATE('2018-11-12 14:14:02','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2018-11-12 14:14:02','YYYY-MM-DD HH24:MI:SS'),100,'D','c1e5ee93-987c-43cd-90e9-e4cf5d592105')
;
-- Nov 12, 2018, 2:15:14 PM BRST
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (205861,'Info Window','Info and search/select Window','The Info window is used to search and select records as well as display information relevant to the selection.',50006,213804,'Y',10,330,'N','N','N','N',0,0,'Y',TO_DATE('2018-11-12 14:15:13','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2018-11-12 14:15:13','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9cbe0104-e976-411a-9aa3-d35798c57519','Y',330,2)
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=290, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=53284
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=300, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57418
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=310, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=205861
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=320, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=50116
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=330, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=50117
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=204547
;
-- Nov 12, 2018, 2:16:29 PM BRST
UPDATE AD_Field SET DisplayLogic='@Type@=''IW''', AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2018-11-12 14:16:29','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=205861
;
-- Nov 12, 2018 2:49:09 PM BRST
UPDATE AD_Column SET IsUpdateable='Y',Updated=TO_DATE('2018-11-12 14:49:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
SELECT register_migration_script('201811121420_IDEMPIERE-2648.sql') FROM dual
;

View File

@ -0,0 +1,64 @@
-- IDEMPIERE-2648 implement pack-in pack-out handle for infoWindow
-- Nov 12, 2018, 2:11:41 PM BRST
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213804,0,'Info Window','Info and search/select Window','The Info window is used to search and select records as well as display information relevant to the selection.',50006,'AD_InfoWindow_ID',10,'N','N','N','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2018-11-12 14:11:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2018-11-12 14:11:40','YYYY-MM-DD HH24:MI:SS'),100,3068,'N','N','D','N','N','N','Y','6b52cd03-c9ae-4b0e-b24f-45323a7ed42d','Y',0,'N','N','C')
;
-- Nov 12, 2018, 2:12:32 PM BRST
UPDATE AD_Column SET FKConstraintType='N',Updated=TO_TIMESTAMP('2018-11-12 14:12:32','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
-- Nov 12, 2018, 2:12:35 PM BRST
UPDATE AD_Column SET FKConstraintName='ADInfoWindow_ADPackageExpDetai', FKConstraintType='N',Updated=TO_TIMESTAMP('2018-11-12 14:12:35','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
-- Nov 12, 2018, 2:12:35 PM BRST
ALTER TABLE AD_Package_Exp_Detail ADD COLUMN AD_InfoWindow_ID NUMERIC(10) DEFAULT NULL
;
-- Nov 12, 2018, 2:12:35 PM BRST
ALTER TABLE AD_Package_Exp_Detail ADD CONSTRAINT ADInfoWindow_ADPackageExpDetai FOREIGN KEY (AD_InfoWindow_ID) REFERENCES ad_infowindow(ad_infowindow_id) DEFERRABLE INITIALLY DEFERRED
;
-- Nov 12, 2018, 2:14:03 PM BRST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200445,'Info Window',50004,'IW',0,0,'Y',TO_TIMESTAMP('2018-11-12 14:14:02','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2018-11-12 14:14:02','YYYY-MM-DD HH24:MI:SS'),100,'D','c1e5ee93-987c-43cd-90e9-e4cf5d592105')
;
-- Nov 12, 2018, 2:15:14 PM BRST
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (205861,'Info Window','Info and search/select Window','The Info window is used to search and select records as well as display information relevant to the selection.',50006,213804,'Y',10,330,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2018-11-12 14:15:13','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2018-11-12 14:15:13','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9cbe0104-e976-411a-9aa3-d35798c57519','Y',330,2)
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=290, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=53284
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=300, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57418
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=310, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=205861
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=320, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=50116
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=330, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=50117
;
-- Nov 12, 2018, 2:15:57 PM BRST
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:15:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=204547
;
-- Nov 12, 2018, 2:16:29 PM BRST
UPDATE AD_Field SET DisplayLogic='@Type@=''IW''', AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2018-11-12 14:16:29','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=205861
;
-- Nov 12, 2018 2:49:09 PM BRST
UPDATE AD_Column SET IsUpdateable='Y',Updated=TO_TIMESTAMP('2018-11-12 14:49:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213804
;
SELECT register_migration_script('201811121420_IDEMPIERE-2648.sql') FROM dual
;

View File

@ -105,7 +105,12 @@ BEGIN
|| 'WHERE Name = '''
|| r.tablename
|| ''' AND istableid = ''Y''';
EXECUTE IMMEDIATE cmdseq INTO currentseq, currentseqsys;
BEGIN
EXECUTE IMMEDIATE cmdseq INTO currentseq, currentseqsys;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE ('Sequence does not exist for table '|| r.tablename);
END;
END IF;
IF currentnextsys <> currentseqsys OR (currentnext <> currentseq AND Isnativeseqon ='N')

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,16 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.maven2}/org/apache-extras/beanshell/bsh/2.0b6/bsh-2.0b6.jar" dest="lib/bsh.jar" usetimestamp="true" verbose="true" retries="5" />
<!-- bsf-all-3.0-beta3.jar replace for grovy-engine, jyyhon-enjine, bsh-engine
http://mvnrepository.com/artifact/org.apache.bsf/bsf-all/3.0-beta3
<get src="${url.maven2}/org/apache/bsf/bsf-all/3.0-beta3/bsf-all-3.0-beta3.jar" dest="bsf-all-3.0-beta3.jar" usetimestamp="true" verbose="true" retries="5"/>
-->
<get src="${url.maven2.ga}/com/sun/script/jython-engine/20080611/jython-engine-20080611.jar" dest="lib/jython-engine.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/python/jython/2.2.1/jython-2.2.1.jar" dest="lib/jython.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/it/sauronsoftware/cron4j/cron4j/2.2.5/cron4j-2.2.5.jar" dest="lib/cron4j.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-validator/commons-validator/1.6/commons-validator-1.6.jar" dest="lib/commons-validator.jar" usetimestamp="true" verbose="true" retries="5" />
<!-- jnlp is not used in idempiere? -->
<get src="${url.maven2.opennms}/javax/jnlp/jnlp/1.5.0/jnlp-1.5.0.jar" dest="lib/jnlp.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -90,6 +90,21 @@ public interface I_AD_Package_Exp_Detail
public org.compiere.model.I_AD_ImpFormat getAD_ImpFormat() throws RuntimeException;
/** Column name AD_InfoWindow_ID */
public static final String COLUMNNAME_AD_InfoWindow_ID = "AD_InfoWindow_ID";
/** Set Info Window.
* Info and search/select Window
*/
public void setAD_InfoWindow_ID (int AD_InfoWindow_ID);
/** Get Info Window.
* Info and search/select Window
*/
public int getAD_InfoWindow_ID();
public org.compiere.model.I_AD_InfoWindow getAD_InfoWindow() throws RuntimeException;
/** Column name AD_Menu_ID */
public static final String COLUMNNAME_AD_Menu_ID = "AD_Menu_ID";

View File

@ -808,7 +808,7 @@ public class MOrder extends X_C_Order implements DocAction
+" WHERE iol.M_InOut_ID=M_InOut.M_InOut_ID"
+" AND iol.C_OrderLine_ID=ol.C_OrderLine_ID"
+" AND ol.C_Order_ID=?)";
List<MInvoice> list = new Query(getCtx(), I_M_InOut.Table_Name, whereClause, get_TrxName())
List<MInOut> list = new Query(getCtx(), MInOut.Table_Name, whereClause, get_TrxName())
.setParameters(get_ID())
.setOrderBy("M_InOut_ID DESC")
.list();

View File

@ -119,6 +119,8 @@ public class MPackageExpDetail extends X_AD_Package_Exp_Detail
return getAD_Workflow_ID();
} else if (TYPE_EntityType.equals(type)) {
return getAD_EntityType_ID();
} else if (TYPE_InfoWindow.equals(type)) {
return getAD_InfoWindow_ID();
} else {
return 0;
}

View File

@ -30,7 +30,7 @@ public class X_AD_Package_Exp_Detail extends PO implements I_AD_Package_Exp_Deta
/**
*
*/
private static final long serialVersionUID = 20181104L;
private static final long serialVersionUID = 20181112L;
/** Standard Constructor */
public X_AD_Package_Exp_Detail (Properties ctx, int AD_Package_Exp_Detail_ID, String trxName)
@ -154,6 +154,34 @@ public class X_AD_Package_Exp_Detail extends PO implements I_AD_Package_Exp_Deta
return ii.intValue();
}
public org.compiere.model.I_AD_InfoWindow getAD_InfoWindow() throws RuntimeException
{
return (org.compiere.model.I_AD_InfoWindow)MTable.get(getCtx(), org.compiere.model.I_AD_InfoWindow.Table_Name)
.getPO(getAD_InfoWindow_ID(), get_TrxName()); }
/** Set Info Window.
@param AD_InfoWindow_ID
Info and search/select Window
*/
public void setAD_InfoWindow_ID (int AD_InfoWindow_ID)
{
if (AD_InfoWindow_ID < 1)
set_ValueNoCheck (COLUMNNAME_AD_InfoWindow_ID, null);
else
set_ValueNoCheck (COLUMNNAME_AD_InfoWindow_ID, Integer.valueOf(AD_InfoWindow_ID));
}
/** Get Info Window.
@return Info and search/select Window
*/
public int getAD_InfoWindow_ID ()
{
Integer ii = (Integer)get_Value(COLUMNNAME_AD_InfoWindow_ID);
if (ii == null)
return 0;
return ii.intValue();
}
public org.compiere.model.I_AD_Menu getAD_Menu() throws RuntimeException
{
return (org.compiere.model.I_AD_Menu)MTable.get(getCtx(), org.compiere.model.I_AD_Menu.Table_Name)
@ -915,6 +943,8 @@ public class X_AD_Package_Exp_Detail extends PO implements I_AD_Package_Exp_Deta
public static final String TYPE_EntityType = "ET";
/** SQL Mandatory = SQM */
public static final String TYPE_SQLMandatory = "SQM";
/** Info Window = IW */
public static final String TYPE_InfoWindow = "IW";
/** Set Type.
@param Type
Type of Validation (SQL, Java Script, Java Language)

View File

@ -60,7 +60,7 @@ public class MPrintFormat extends X_AD_PrintFormat
/**
*
*/
private static final long serialVersionUID = 5563074831750686572L;
private static final long serialVersionUID = 2979978408305853342L;
/**
* Public Constructor.
@ -650,6 +650,7 @@ public class MPrintFormat extends X_AD_PrintFormat
} // createFromTable
/**
*
* Create MPrintFormat for Table
* @param ctx context
* @param AD_Table_ID table
@ -657,12 +658,25 @@ public class MPrintFormat extends X_AD_PrintFormat
* @return print format
*/
static public MPrintFormat createFromTable (Properties ctx,
int AD_Table_ID, int AD_PrintFormat_ID)
int AD_Table_ID, int AD_PrintFormat_ID) {
return createFromTable(ctx, AD_Table_ID, AD_PrintFormat_ID, null);
}
/**
* Create MPrintFormat for Table
* @param ctx context
* @param AD_Table_ID table
* @param AD_PrintFormat_ID 0 or existing PrintFormat
* @param trxName the transaction
* @return print format
*/
static public MPrintFormat createFromTable (Properties ctx,
int AD_Table_ID, int AD_PrintFormat_ID, String trxName)
{
int AD_Client_ID = Env.getAD_Client_ID(ctx);
if (s_log.isLoggable(Level.INFO)) s_log.info ("AD_Table_ID=" + AD_Table_ID + " - AD_Client_ID=" + AD_Client_ID);
MPrintFormat pf = new MPrintFormat(ctx, AD_PrintFormat_ID, null);
MPrintFormat pf = new MPrintFormat(ctx, AD_PrintFormat_ID, trxName);
pf.setAD_Table_ID (AD_Table_ID);
// Get Info
@ -682,7 +696,7 @@ public class MPrintFormat extends X_AD_PrintFormat
ResultSet rs = null;
try
{
pstmt = DB.prepareStatement(sql, null);
pstmt = DB.prepareStatement(sql, trxName);
pstmt.setInt(1, AD_Table_ID);
pstmt.setInt(2, AD_Client_ID);
rs = pstmt.executeQuery();

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,10 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<!-- seem payment sdk is change without use verisign.jar, i can find out this lib. maybe have to update this plug-in
http://paypal.github.io/sdk/#ppo-payflow-->
<get src="${url.file.srv}/jarfile/6.1/jpayment.jar" dest="lib/jpayment.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/Verisign.jar" dest="lib/Verisign.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/payflow.jar" dest="lib/payflow.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -207,7 +207,27 @@
<handler
class="org.adempiere.pipo2.handler.ViewColumnElementHandler"
id="AD_ViewColumn">
</handler>
</handler>
<handler
class="org.adempiere.pipo2.handler.InfoWindowElementHandler"
id="AD_InfoWindow">
</handler>
<handler
class="org.adempiere.pipo2.handler.InfoColumnElementHandler"
id="AD_InfoColumn ">
</handler>
<handler
class="org.adempiere.pipo2.handler.InfoProcessElementHandler"
id="AD_InfoProcess ">
</handler>
<handler
class="org.adempiere.pipo2.handler.InfoRelatedElementHandler"
id="AD_InfoRelated ">
</handler>
<handler
class="org.adempiere.pipo2.handler.InfoWindowAccessElementHandler"
id="AD_InfoWindow_Access">
</handler>
</extension>
</plugin>

View File

@ -0,0 +1,155 @@
/***********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Carlos Ruiz (globalqss) - sponsored by FH *
**********************************************************************/
package org.adempiere.pipo2.handler;
import java.util.List;
import java.util.logging.Level;
import javax.xml.transform.sax.TransformerHandler;
import org.adempiere.pipo2.AbstractElementHandler;
import org.adempiere.pipo2.Element;
import org.adempiere.pipo2.ElementHandler;
import org.adempiere.pipo2.PIPOContext;
import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoExporter;
import org.adempiere.pipo2.PoFiller;
import org.adempiere.pipo2.exception.POSaveFailedException;
import org.compiere.model.I_AD_Element;
import org.compiere.model.I_AD_InfoColumn;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.X_AD_InfoColumn;
import org.compiere.model.X_AD_Package_Imp_Detail;
import org.compiere.util.Env;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
public class InfoColumnElementHandler extends AbstractElementHandler {
public void startElement(PIPOContext ctx, Element element) throws SAXException {
List<String> excludes = defaultExcludeList(X_AD_InfoColumn.Table_Name);
String entitytype = getStringValue(element, "EntityType");
if (isProcessElement(ctx.ctx, entitytype)) {
if (isParentDefer(element, I_AD_InfoWindow.Table_Name)) {
element.defer = true;
return;
}
X_AD_InfoColumn mInfoColumn = findPO(ctx, element);
if (mInfoColumn == null) {
mInfoColumn = new X_AD_InfoColumn(ctx.ctx, 0, getTrxName(ctx));
}
PoFiller filler = new PoFiller(ctx, mInfoColumn, element, this);
List<String> notfounds = filler.autoFill(excludes);
if (notfounds.size() > 0) {
element.defer = true;
element.unresolved = notfounds.toString();
return;
}
element.recordId = mInfoColumn.get_ID();
if (mInfoColumn.is_new() || mInfoColumn.is_Changed()) {
X_AD_Package_Imp_Detail impDetail = createImportDetail(ctx, element.qName, X_AD_InfoColumn.Table_Name, X_AD_InfoColumn.Table_ID);
String action = null;
if (!mInfoColumn.is_new()) {
backupRecord(ctx, impDetail.getAD_Package_Imp_Detail_ID(), X_AD_InfoColumn.Table_Name, mInfoColumn);
action = "Update";
} else {
action = "New";
}
if (mInfoColumn.save(getTrxName(ctx)) == true) {
logImportDetail(ctx, impDetail, 1, mInfoColumn.getColumnName(), mInfoColumn.get_ID(), action);
element.recordId = mInfoColumn.get_ID();
} else {
logImportDetail(ctx, impDetail, 0, mInfoColumn.getColumnName(), mInfoColumn.get_ID(), action);
throw new POSaveFailedException("Failed to save InfoColumn " + mInfoColumn.getColumnName());
}
}
} else {
element.skip = true;
}
}
public void endElement(PIPOContext ctx, Element element) throws SAXException {
}
public void create(PIPOContext ctx, TransformerHandler document) throws SAXException {
int AD_InfoColumn_ID = Env.getContextAsInt(ctx.ctx, X_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID);
if (ctx.packOut.isExported(X_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID+"|"+AD_InfoColumn_ID))
return;
X_AD_InfoColumn m_InfoColumn = new X_AD_InfoColumn(ctx.ctx, AD_InfoColumn_ID, getTrxName(ctx));
if (m_InfoColumn.getAD_Element_ID() > 0) {
PackOut packOut = ctx.packOut;
ElementHandler handler = packOut.getHandler(I_AD_Element.Table_Name);
try {
handler.packOut(packOut,document,null,m_InfoColumn.getAD_Element_ID());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
if (!isPackOutElement(ctx, m_InfoColumn))
return;
verifyPackOutRequirement(m_InfoColumn);
AttributesImpl atts = new AttributesImpl();
addTypeName(atts, "table");
document.startElement("", "", I_AD_InfoColumn.Table_Name, atts);
createInfoColumnBinding(ctx, document, m_InfoColumn);
PackOut packOut = ctx.packOut;
packOut.getCtx().ctx.put("Table_Name",I_AD_InfoColumn.Table_Name);
try {
new CommonTranslationHandler().packOut(packOut,document,null,m_InfoColumn.get_ID());
} catch(Exception e) {
if (log.isLoggable(Level.INFO)) log.info(e.toString());
}
document.endElement("", "", I_AD_InfoColumn.Table_Name);
}
private void createInfoColumnBinding(PIPOContext ctx, TransformerHandler document, X_AD_InfoColumn m_InfoColumn) {
PoExporter filler = new PoExporter(ctx, document, m_InfoColumn);
List<String> excludes = defaultExcludeList(X_AD_InfoColumn.Table_Name);
if (m_InfoColumn.getAD_InfoColumn_ID() <= PackOut.MAX_OFFICIAL_ID)
filler.add("AD_InfoColumn_ID", new AttributesImpl());
filler.export(excludes);
}
@Override
public void packOut(PackOut packout, TransformerHandler packoutHandler, TransformerHandler docHandler, int recordId) throws Exception {
Env.setContext(packout.getCtx().ctx, I_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID, recordId);
create(packout.getCtx(), packoutHandler);
packout.getCtx().ctx.remove(I_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID);
}
}

View File

@ -0,0 +1,143 @@
/***********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Carlos Ruiz (globalqss) - sponsored by FH *
**********************************************************************/
package org.adempiere.pipo2.handler;
import java.util.List;
import java.util.logging.Level;
import javax.xml.transform.sax.TransformerHandler;
import org.adempiere.pipo2.AbstractElementHandler;
import org.adempiere.pipo2.Element;
import org.adempiere.pipo2.PIPOContext;
import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoExporter;
import org.adempiere.pipo2.PoFiller;
import org.adempiere.pipo2.exception.POSaveFailedException;
import org.compiere.model.I_AD_InfoProcess;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.X_AD_InfoProcess;
import org.compiere.model.X_AD_Package_Imp_Detail;
import org.compiere.util.Env;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
public class InfoProcessElementHandler extends AbstractElementHandler {
public void startElement(PIPOContext ctx, Element element) throws SAXException {
List<String> excludes = defaultExcludeList(X_AD_InfoProcess.Table_Name);
String entitytype = getStringValue(element, "EntityType");
if (isProcessElement(ctx.ctx, entitytype)) {
if (isParentDefer(element, I_AD_InfoWindow.Table_Name)) {
element.defer = true;
return;
}
X_AD_InfoProcess mInfoProcess = findPO(ctx, element);
if (mInfoProcess == null) {
mInfoProcess = new X_AD_InfoProcess(ctx.ctx, 0, getTrxName(ctx));
}
PoFiller filler = new PoFiller(ctx, mInfoProcess, element, this);
List<String> notfounds = filler.autoFill(excludes);
if (notfounds.size() > 0) {
element.defer = true;
element.unresolved = notfounds.toString();
return;
}
element.recordId = mInfoProcess.get_ID();
if (mInfoProcess.is_new() || mInfoProcess.is_Changed()) {
X_AD_Package_Imp_Detail impDetail = createImportDetail(ctx, element.qName, X_AD_InfoProcess.Table_Name, X_AD_InfoProcess.Table_ID);
String action = null;
if (!mInfoProcess.is_new()) {
backupRecord(ctx, impDetail.getAD_Package_Imp_Detail_ID(), X_AD_InfoProcess.Table_Name, mInfoProcess);
action = "Update";
} else {
action = "New";
}
if (mInfoProcess.save(getTrxName(ctx)) == true) {
logImportDetail(ctx, impDetail, 1, mInfoProcess.toString(), mInfoProcess.get_ID(), action);
element.recordId = mInfoProcess.get_ID();
} else {
logImportDetail(ctx, impDetail, 0, mInfoProcess.toString(), mInfoProcess.get_ID(), action);
throw new POSaveFailedException("Failed to save InfoProcess " + mInfoProcess.toString());
}
}
} else {
element.skip = true;
}
}
public void endElement(PIPOContext ctx, Element element) throws SAXException {
}
public void create(PIPOContext ctx, TransformerHandler document) throws SAXException {
int AD_InfoProcess_ID = Env.getContextAsInt(ctx.ctx, X_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID);
if (ctx.packOut.isExported(X_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID+"|"+AD_InfoProcess_ID))
return;
X_AD_InfoProcess m_InfoProcess = new X_AD_InfoProcess(ctx.ctx, AD_InfoProcess_ID, getTrxName(ctx));
if (!isPackOutElement(ctx, m_InfoProcess))
return;
verifyPackOutRequirement(m_InfoProcess);
AttributesImpl atts = new AttributesImpl();
addTypeName(atts, "table");
document.startElement("", "", I_AD_InfoProcess.Table_Name, atts);
createInfoProcessBinding(ctx, document, m_InfoProcess);
PackOut packOut = ctx.packOut;
packOut.getCtx().ctx.put("Table_Name",I_AD_InfoProcess.Table_Name);
try {
new CommonTranslationHandler().packOut(packOut,document,null,m_InfoProcess.get_ID());
} catch(Exception e) {
if (log.isLoggable(Level.INFO)) log.info(e.toString());
}
document.endElement("", "", I_AD_InfoProcess.Table_Name);
}
private void createInfoProcessBinding(PIPOContext ctx, TransformerHandler document, X_AD_InfoProcess m_InfoProcess) {
PoExporter filler = new PoExporter(ctx, document, m_InfoProcess);
List<String> excludes = defaultExcludeList(X_AD_InfoProcess.Table_Name);
if (m_InfoProcess.getAD_InfoProcess_ID() <= PackOut.MAX_OFFICIAL_ID)
filler.add("AD_InfoProcess_ID", new AttributesImpl());
filler.export(excludes);
}
@Override
public void packOut(PackOut packout, TransformerHandler packoutHandler, TransformerHandler docHandler, int recordId) throws Exception {
Env.setContext(packout.getCtx().ctx, I_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID, recordId);
create(packout.getCtx(), packoutHandler);
packout.getCtx().ctx.remove(I_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID);
}
}

View File

@ -0,0 +1,143 @@
/***********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Carlos Ruiz (globalqss) - sponsored by FH *
**********************************************************************/
package org.adempiere.pipo2.handler;
import java.util.List;
import java.util.logging.Level;
import javax.xml.transform.sax.TransformerHandler;
import org.adempiere.pipo2.AbstractElementHandler;
import org.adempiere.pipo2.Element;
import org.adempiere.pipo2.PIPOContext;
import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoExporter;
import org.adempiere.pipo2.PoFiller;
import org.adempiere.pipo2.exception.POSaveFailedException;
import org.compiere.model.I_AD_InfoRelated;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.X_AD_InfoRelated;
import org.compiere.model.X_AD_Package_Imp_Detail;
import org.compiere.util.Env;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
public class InfoRelatedElementHandler extends AbstractElementHandler {
public void startElement(PIPOContext ctx, Element element) throws SAXException {
List<String> excludes = defaultExcludeList(X_AD_InfoRelated.Table_Name);
String entitytype = getStringValue(element, "EntityType");
if (isProcessElement(ctx.ctx, entitytype)) {
if (isParentDefer(element, I_AD_InfoWindow.Table_Name)) {
element.defer = true;
return;
}
X_AD_InfoRelated mInfoRelated = findPO(ctx, element);
if (mInfoRelated == null) {
mInfoRelated = new X_AD_InfoRelated(ctx.ctx, 0, getTrxName(ctx));
}
PoFiller filler = new PoFiller(ctx, mInfoRelated, element, this);
List<String> notfounds = filler.autoFill(excludes);
if (notfounds.size() > 0) {
element.defer = true;
element.unresolved = notfounds.toString();
return;
}
element.recordId = mInfoRelated.get_ID();
if (mInfoRelated.is_new() || mInfoRelated.is_Changed()) {
X_AD_Package_Imp_Detail impDetail = createImportDetail(ctx, element.qName, X_AD_InfoRelated.Table_Name, X_AD_InfoRelated.Table_ID);
String action = null;
if (!mInfoRelated.is_new()) {
backupRecord(ctx, impDetail.getAD_Package_Imp_Detail_ID(), X_AD_InfoRelated.Table_Name, mInfoRelated);
action = "Update";
} else {
action = "New";
}
if (mInfoRelated.save(getTrxName(ctx)) == true) {
logImportDetail(ctx, impDetail, 1, mInfoRelated.toString(), mInfoRelated.get_ID(), action);
element.recordId = mInfoRelated.get_ID();
} else {
logImportDetail(ctx, impDetail, 0, mInfoRelated.toString(), mInfoRelated.get_ID(), action);
throw new POSaveFailedException("Failed to save InfoRelated " + mInfoRelated.toString());
}
}
} else {
element.skip = true;
}
}
public void endElement(PIPOContext ctx, Element element) throws SAXException {
}
public void create(PIPOContext ctx, TransformerHandler document) throws SAXException {
int AD_InfoRelated_ID = Env.getContextAsInt(ctx.ctx, X_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID);
if (ctx.packOut.isExported(X_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID+"|"+AD_InfoRelated_ID))
return;
X_AD_InfoRelated m_InfoRelated = new X_AD_InfoRelated(ctx.ctx, AD_InfoRelated_ID, getTrxName(ctx));
if (!isPackOutElement(ctx, m_InfoRelated))
return;
verifyPackOutRequirement(m_InfoRelated);
AttributesImpl atts = new AttributesImpl();
addTypeName(atts, "table");
document.startElement("", "", I_AD_InfoRelated.Table_Name, atts);
createInfoRelatedBinding(ctx, document, m_InfoRelated);
PackOut packOut = ctx.packOut;
packOut.getCtx().ctx.put("Table_Name",I_AD_InfoRelated.Table_Name);
try {
new CommonTranslationHandler().packOut(packOut,document,null,m_InfoRelated.get_ID());
} catch(Exception e) {
if (log.isLoggable(Level.INFO)) log.info(e.toString());
}
document.endElement("", "", I_AD_InfoRelated.Table_Name);
}
private void createInfoRelatedBinding(PIPOContext ctx, TransformerHandler document, X_AD_InfoRelated m_InfoRelated) {
PoExporter filler = new PoExporter(ctx, document, m_InfoRelated);
List<String> excludes = defaultExcludeList(X_AD_InfoRelated.Table_Name);
if (m_InfoRelated.getAD_InfoRelated_ID() <= PackOut.MAX_OFFICIAL_ID)
filler.add("AD_InfoRelated_ID", new AttributesImpl());
filler.export(excludes);
}
@Override
public void packOut(PackOut packout, TransformerHandler packoutHandler, TransformerHandler docHandler, int recordId) throws Exception {
Env.setContext(packout.getCtx().ctx, I_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID, recordId);
create(packout.getCtx(), packoutHandler);
packout.getCtx().ctx.remove(I_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID);
}
}

View File

@ -0,0 +1,96 @@
/***********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Carlos Ruiz (globalqss) - sponsored by FH *
**********************************************************************/
package org.adempiere.pipo2.handler;
import java.util.List;
import javax.xml.transform.sax.TransformerHandler;
import org.adempiere.pipo2.AbstractElementHandler;
import org.adempiere.pipo2.Element;
import org.adempiere.pipo2.PIPOContext;
import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoExporter;
import org.adempiere.pipo2.PoFiller;
import org.compiere.model.I_AD_InfoWindow_Access;
import org.compiere.model.Query;
import org.compiere.model.X_AD_InfoWindow;
import org.compiere.model.X_AD_InfoWindow_Access;
import org.compiere.model.X_AD_Role;
import org.compiere.util.Env;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
public class InfoWindowAccessElementHandler extends AbstractElementHandler {
public void startElement(PIPOContext ctx, Element element) throws SAXException {
List<String> excludes = defaultExcludeList(X_AD_InfoWindow_Access.Table_Name);
X_AD_InfoWindow_Access po = findPO(ctx, element);
if (po == null) {
po = new X_AD_InfoWindow_Access(ctx.ctx, 0, getTrxName(ctx));
}
PoFiller filler = new PoFiller(ctx, po, element, this);
List<String> notfounds = filler.autoFill(excludes);
if (notfounds.size() > 0) {
element.defer = true;
element.unresolved = notfounds.toString();
return;
}
po.saveEx();
}
public void endElement(PIPOContext ctx, Element element) throws SAXException {
}
public void create(PIPOContext ctx, TransformerHandler document) throws SAXException {
int AD_InfoWindow_ID = Env.getContextAsInt(ctx.ctx, X_AD_InfoWindow.COLUMNNAME_AD_InfoWindow_ID);
int AD_Role_ID = Env.getContextAsInt(ctx.ctx, X_AD_Role.COLUMNNAME_AD_Role_ID);
Query query = new Query(ctx.ctx, "AD_InfoWindow_Access", "AD_Role_ID=? AND AD_InfoWindow_ID=?", getTrxName(ctx));
X_AD_InfoWindow_Access po = query.setParameters(AD_Role_ID, AD_InfoWindow_ID).first();
if (po != null) {
if (!isPackOutElement(ctx, po))
return;
verifyPackOutRequirement(po);
AttributesImpl atts = new AttributesImpl();
addTypeName(atts, "table");
document.startElement("", "", I_AD_InfoWindow_Access.Table_Name, atts);
createInfoWindowAccessBinding(ctx, document, po);
document.endElement("", "", I_AD_InfoWindow_Access.Table_Name);
}
}
private void createInfoWindowAccessBinding(PIPOContext ctx, TransformerHandler document, X_AD_InfoWindow_Access po) {
PoExporter filler = new PoExporter(ctx, document, po);
List<String> excludes = defaultExcludeList(X_AD_InfoWindow_Access.Table_Name);
filler.export(excludes);
}
@Override
public void packOut(PackOut packout, TransformerHandler packoutHandler, TransformerHandler docHandler, int recordId) throws Exception {
create(packout.getCtx(), packoutHandler);
}
}

View File

@ -0,0 +1,226 @@
/***********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the Free Software *
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Carlos Ruiz (globalqss) - sponsored by FH *
**********************************************************************/
package org.adempiere.pipo2.handler;
import java.util.List;
import java.util.logging.Level;
import javax.xml.transform.sax.TransformerHandler;
import org.adempiere.exceptions.AdempiereException;
import org.adempiere.pipo2.AbstractElementHandler;
import org.adempiere.pipo2.Element;
import org.adempiere.pipo2.ElementHandler;
import org.adempiere.pipo2.PIPOContext;
import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoExporter;
import org.adempiere.pipo2.PoFiller;
import org.adempiere.pipo2.exception.POSaveFailedException;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.I_AD_Process;
import org.compiere.model.I_AD_Reference;
import org.compiere.model.I_AD_Table;
import org.compiere.model.I_AD_Val_Rule;
import org.compiere.model.Query;
import org.compiere.model.X_AD_InfoColumn;
import org.compiere.model.X_AD_InfoProcess;
import org.compiere.model.X_AD_InfoRelated;
import org.compiere.model.X_AD_InfoWindow;
import org.compiere.model.X_AD_Package_Imp_Detail;
import org.compiere.util.Env;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.AttributesImpl;
public class InfoWindowElementHandler extends AbstractElementHandler {
private InfoColumnElementHandler infoColumnHandler = new InfoColumnElementHandler();
private InfoProcessElementHandler infoProcessHandler = new InfoProcessElementHandler();
private InfoRelatedElementHandler infoRelatedHandler = new InfoRelatedElementHandler();
public void startElement(PIPOContext ctx, Element element) throws SAXException {
String entitytype = getStringValue(element, "EntityType");
if (isProcessElement(ctx.ctx, entitytype)) {
X_AD_InfoWindow mInfoWindow = findPO(ctx, element);
if (mInfoWindow == null) {
mInfoWindow = new X_AD_InfoWindow(ctx.ctx, 0, getTrxName(ctx));
}
PoFiller filler = new PoFiller(ctx, mInfoWindow, element, this);
List<String> excludes = defaultExcludeList(X_AD_InfoWindow.Table_Name);
List<String> notfounds = filler.autoFill(excludes);
if (notfounds.size() > 0) {
element.defer = true;
element.unresolved = notfounds.toString();
return;
}
element.recordId = mInfoWindow.get_ID();
if (mInfoWindow.is_new() || mInfoWindow.is_Changed()) {
X_AD_Package_Imp_Detail impDetail = createImportDetail(ctx, element.qName, X_AD_InfoWindow.Table_Name, X_AD_InfoWindow.Table_ID);
String action = null;
if (!mInfoWindow.is_new()) {
backupRecord(ctx, impDetail.getAD_Package_Imp_Detail_ID(), X_AD_InfoWindow.Table_Name, mInfoWindow);
action = "Update";
} else {
action = "New";
}
if (mInfoWindow.save(getTrxName(ctx)) == true) {
logImportDetail(ctx, impDetail, 1, mInfoWindow.getName(), mInfoWindow.get_ID(), action);
element.recordId = mInfoWindow.get_ID();
element.requireRoleAccessUpdate = true;
} else {
logImportDetail(ctx, impDetail, 0, mInfoWindow.getName(), mInfoWindow.get_ID(), action);
throw new POSaveFailedException("Failed to save InfoWindow " + mInfoWindow.getName());
}
}
} else {
element.skip = true;
}
}
public void endElement(PIPOContext ctx, Element element) throws SAXException {
}
public void create(PIPOContext ctx, TransformerHandler document) throws SAXException {
int AD_InfoWindow_ID = Env.getContextAsInt(ctx.ctx, "AD_InfoWindow_ID");
if (ctx.packOut.isExported("AD_InfoWindow_ID"+"|"+AD_InfoWindow_ID))
return;
PackOut packOut = ctx.packOut;
X_AD_InfoWindow m_InfoWindow = new X_AD_InfoWindow(ctx.ctx, AD_InfoWindow_ID, getTrxName(ctx));
AttributesImpl atts = new AttributesImpl();
try {
if (m_InfoWindow.getAD_Table_ID() > 0) {
ElementHandler handler = packOut.getHandler(I_AD_Table.Table_Name);
handler.packOut(packOut,document,null,m_InfoWindow.getAD_Table_ID());
}
boolean createElement = isPackOutElement(ctx, m_InfoWindow);
if (createElement) {
verifyPackOutRequirement(m_InfoWindow);
addTypeName(atts, "table");
document.startElement("", "", I_AD_InfoWindow.Table_Name, atts);
createInfoWindowBinding(ctx, document, m_InfoWindow);
packOut.getCtx().ctx.put("Table_Name",I_AD_InfoWindow.Table_Name);
try {
new CommonTranslationHandler().packOut(packOut,document,null,m_InfoWindow.get_ID());
} catch(Exception e) {
if (log.isLoggable(Level.INFO)) log.info(e.toString());
}
}
Query queryCols = new Query(ctx.ctx, "AD_InfoColumn", "AD_InfoWindow_ID = ?", getTrxName(ctx));
List<X_AD_InfoColumn> infoColumnlist = queryCols.setParameters(AD_InfoWindow_ID).list();
for (X_AD_InfoColumn infoColumn : infoColumnlist) {
if (infoColumn.getAD_Reference_ID()>0)
{
ElementHandler handler = packOut.getHandler(I_AD_Reference.Table_Name);
handler.packOut(packOut,document,null,infoColumn.getAD_Reference_ID());
}
if (infoColumn.getAD_Reference_Value_ID()>0)
{
ElementHandler handler = packOut.getHandler(I_AD_Reference.Table_Name);
handler.packOut(packOut,document,null,infoColumn.getAD_Reference_Value_ID());
}
if (infoColumn.getAD_Val_Rule_ID() > 0)
{
ElementHandler handler = packOut.getHandler(I_AD_Val_Rule.Table_Name);
handler.packOut(packOut,document,null,infoColumn.getAD_Val_Rule_ID());
}
createInfoColumn(ctx, document, infoColumn.getAD_InfoColumn_ID());
}
Query queryProc= new Query(ctx.ctx, "AD_InfoProcess", "AD_InfoWindow_ID = ?", getTrxName(ctx));
List<X_AD_InfoProcess> infoProcesslist = queryProc.setParameters(AD_InfoWindow_ID).list();
for (X_AD_InfoProcess infoProcess : infoProcesslist) {
if (infoProcess.getAD_Process_ID()>0)
{
ElementHandler handler = packOut.getHandler(I_AD_Process.Table_Name);
handler.packOut(packOut,document,null,infoProcess.getAD_Process_ID());
}
createInfoProcess(ctx, document, infoProcess.getAD_InfoProcess_ID());
}
Query queryRel= new Query(ctx.ctx, "AD_InfoRelated", "AD_InfoWindow_ID = ?", getTrxName(ctx));
List<X_AD_InfoRelated> infoRelatedlist = queryRel.setParameters(AD_InfoWindow_ID).list();
for (X_AD_InfoRelated infoRelated : infoRelatedlist) {
createInfoRelated(ctx, document, infoRelated.getAD_InfoRelated_ID());
}
if (createElement) {
document.endElement("", "", X_AD_InfoWindow.Table_Name);
}
} catch (Exception e) {
throw new AdempiereException(e);
}
}
private void createInfoColumn(PIPOContext ctx, TransformerHandler document, int AD_InfoColumn_ID) throws SAXException {
Env.setContext(ctx.ctx, X_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID, AD_InfoColumn_ID);
infoColumnHandler.create(ctx, document);
ctx.ctx.remove(X_AD_InfoColumn.COLUMNNAME_AD_InfoColumn_ID);
}
private void createInfoProcess(PIPOContext ctx, TransformerHandler document, int AD_InfoProcess_ID) throws SAXException {
Env.setContext(ctx.ctx, X_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID, AD_InfoProcess_ID);
infoProcessHandler.create(ctx, document);
ctx.ctx.remove(X_AD_InfoProcess.COLUMNNAME_AD_InfoProcess_ID);
}
private void createInfoRelated(PIPOContext ctx, TransformerHandler document, int AD_InfoRelated_ID) throws SAXException {
Env.setContext(ctx.ctx, X_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID, AD_InfoRelated_ID);
infoRelatedHandler.create(ctx, document);
ctx.ctx.remove(X_AD_InfoRelated.COLUMNNAME_AD_InfoRelated_ID);
}
private void createInfoWindowBinding(PIPOContext ctx, TransformerHandler document, X_AD_InfoWindow m_InfoWindow) {
PoExporter filler = new PoExporter(ctx, document, m_InfoWindow);
List<String> excludes = defaultExcludeList(X_AD_InfoWindow.Table_Name);
if (m_InfoWindow.getAD_InfoWindow_ID() <= PackOut.MAX_OFFICIAL_ID)
filler.add("AD_InfoWindow_ID", new AttributesImpl());
filler.export(excludes);
}
public void packOut(PackOut packout, TransformerHandler packoutHandler, TransformerHandler docHandler,int recordId) throws Exception
{
Env.setContext(packout.getCtx().ctx, "AD_InfoWindow_ID", recordId);
this.create(packout.getCtx(), packoutHandler);
packout.getCtx().ctx.remove("AD_InfoWindow_ID");
}
}

View File

@ -34,6 +34,7 @@ import org.adempiere.pipo2.PackOut;
import org.adempiere.pipo2.PoFiller;
import org.adempiere.pipo2.ReferenceUtils;
import org.compiere.model.I_AD_Form;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.I_AD_Menu;
import org.compiere.model.I_AD_Process;
import org.compiere.model.I_AD_Task;
@ -230,7 +231,7 @@ public class MenuElementHandler extends AbstractElementHandler {
String sql = null;
int AD_Tree_ID = getDefaultMenuTreeId();
sql = "SELECT A.Node_ID, B.AD_Menu_ID, B.Name, B.AD_WINDOW_ID, B.AD_WORKFLOW_ID, B.AD_TASK_ID, "
+ "B.AD_PROCESS_ID, B.AD_FORM_ID, B.AD_WORKBENCH_ID "
+ "B.AD_PROCESS_ID, B.AD_FORM_ID, B.AD_WORKBENCH_ID, B.AD_INFOWINDOW_ID "
+ "FROM AD_TreeNodeMM A, AD_Menu B "
+ "WHERE A.Node_ID = "
+ AD_Menu_ID + " AND A.Node_ID = B.AD_Menu_ID" + " AND A.AD_Tree_ID="+AD_Tree_ID;
@ -257,10 +258,11 @@ public class MenuElementHandler extends AbstractElementHandler {
}
if (rs.getInt("AD_WINDOW_ID") > 0
|| rs.getInt("AD_WORKFLOW_ID") > 0
|| rs.getInt("AD_TASK_ID") > 0
|| rs.getInt("AD_PROCESS_ID") > 0
|| rs.getInt("AD_FORM_ID") > 0) {
|| rs.getInt("AD_TASK_ID") > 0
|| rs.getInt("AD_FORM_ID") > 0
|| rs.getInt("AD_WORKFLOW_ID") > 0
|| rs.getInt("AD_INFOWINDOW_ID") > 0) {
// Call CreateWindow.
if (rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_Window_ID)>0)
{
@ -286,6 +288,11 @@ public class MenuElementHandler extends AbstractElementHandler {
ElementHandler handler = packOut.getHandler(I_AD_Workflow.Table_Name);
handler.packOut(packOut,document,null,rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_Workflow_ID));
}
else if (rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_InfoWindow_ID) > 0)
{
ElementHandler handler = packOut.getHandler(I_AD_InfoWindow.Table_Name);
handler.packOut(packOut,document,null,rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_InfoWindow_ID));
}
// Call CreateModule because entry is a summary menu
} else {
createModule(ctx, document, rs.getInt("Node_ID"));
@ -306,7 +313,7 @@ public class MenuElementHandler extends AbstractElementHandler {
String sql = null;
int AD_Tree_ID = getDefaultMenuTreeId();
sql = "SELECT A.Node_ID, B.AD_Menu_ID, B.Name, B.AD_WINDOW_ID, B.AD_WORKFLOW_ID, B.AD_TASK_ID, "
+ "B.AD_PROCESS_ID, B.AD_FORM_ID, B.AD_WORKBENCH_ID "
+ "B.AD_PROCESS_ID, B.AD_FORM_ID, B.AD_WORKBENCH_ID, B.AD_INFOWINDOW_ID "
+ "FROM AD_TreeNodeMM A, AD_Menu B "
+ "WHERE A.Parent_ID = "
+ menu_id + " AND A.Node_ID = B.AD_Menu_ID" + " AND A.AD_Tree_ID="+AD_Tree_ID;
@ -326,10 +333,11 @@ public class MenuElementHandler extends AbstractElementHandler {
document.startElement("", "", I_AD_Menu.Table_Name, atts);
createMenuBinding(ctx, document, m_Menu);
if (rs.getInt("AD_WINDOW_ID") > 0
|| rs.getInt("AD_WORKFLOW_ID") > 0
|| rs.getInt("AD_TASK_ID") > 0
|| rs.getInt("AD_PROCESS_ID") > 0
|| rs.getInt("AD_FORM_ID") > 0) {
|| rs.getInt("AD_TASK_ID") > 0
|| rs.getInt("AD_FORM_ID") > 0
|| rs.getInt("AD_WORKFLOW_ID") > 0
|| rs.getInt("AD_INFOWINDOW_ID") > 0) {
// Call CreateWindow.
if (rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_Window_ID)>0)
{
@ -356,6 +364,11 @@ public class MenuElementHandler extends AbstractElementHandler {
ElementHandler handler = packOut.getHandler("AD_Workflow");
handler.packOut(packOut,document,null,rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_Workflow_ID));
}
else if (rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_InfoWindow_ID) > 0)
{
ElementHandler handler = packOut.getHandler("AD_InfoWindow");
handler.packOut(packOut,document,null,rs.getInt(X_AD_Package_Exp_Detail.COLUMNNAME_AD_InfoWindow_ID));
}
// Call CreateModule because entry is a summary menu
} else {
createModule(ctx, document, rs.getInt("Node_ID"));

View File

@ -34,6 +34,7 @@ import org.adempiere.pipo2.exception.POSaveFailedException;
import org.compiere.model.I_AD_Role;
import org.compiere.model.MRole;
import org.compiere.model.X_AD_Form;
import org.compiere.model.X_AD_InfoWindow;
import org.compiere.model.X_AD_Package_Exp_Detail;
import org.compiere.model.X_AD_Package_Imp_Detail;
import org.compiere.model.X_AD_Process;
@ -55,6 +56,7 @@ public class RoleElementHandler extends AbstractElementHandler {
private FormAccessElementHandler formHandler = new FormAccessElementHandler();
private TaskAccessElementHandler taskHandler = new TaskAccessElementHandler();
private WorkflowAccessElementHandler workflowHandler = new WorkflowAccessElementHandler();
private InfoWindowAccessElementHandler infoWindowHandler = new InfoWindowAccessElementHandler();
public void startElement(PIPOContext ctx, Element element)
throws SAXException {
@ -240,6 +242,23 @@ public class RoleElementHandler extends AbstractElementHandler {
} finally {
DB.close(rs, pstmt);
}
// Process AD_InfoWindow_Access Values
sql = "SELECT AD_InfoWindow_ID, AD_Role_ID FROM AD_InfoWindow_Access WHERE AD_Role_ID= " + Role_id;
pstmt = null;
rs = null;
try {
pstmt = DB.prepareStatement(sql, getTrxName(ctx));
rs = pstmt.executeQuery();
while (rs.next()) {
createInfoWindowAccess(ctx, document, rs.getInt("AD_InfoWindow_ID"), rs.getInt("AD_Role_ID"));
}
} catch (Exception e) {
log.log(Level.SEVERE, "AD_InfoWindow_Access", e);
throw new DatabaseAccessException("Failed to export InfoWindow access.");
} finally {
DB.close(rs, pstmt);
}
if (createElement) {
document.endElement("", "", X_AD_Role.Table_Name);
@ -291,6 +310,15 @@ public class RoleElementHandler extends AbstractElementHandler {
ctx.ctx.remove(X_AD_Role.COLUMNNAME_AD_Role_ID);
}
private void createInfoWindowAccess(PIPOContext ctx,
TransformerHandler document, int AD_InfoWindow_ID, int AD_Role_ID) throws SAXException {
Env.setContext(ctx.ctx, X_AD_InfoWindow.COLUMNNAME_AD_InfoWindow_ID, AD_InfoWindow_ID);
Env.setContext(ctx.ctx, X_AD_Role.COLUMNNAME_AD_Role_ID, AD_Role_ID);
infoWindowHandler.create(ctx, document);
ctx.ctx.remove(X_AD_InfoWindow.COLUMNNAME_AD_InfoWindow_ID);
ctx.ctx.remove(X_AD_Role.COLUMNNAME_AD_Role_ID);
}
/*
private void createUserRole(PIPOContext ctx, TransformerHandler document,
int AD_User_ID, int AD_Role_ID, int AD_Org_ID) throws SAXException {

View File

@ -426,12 +426,14 @@ public class PackInHandler extends DefaultHandler {
String fkConstraintSql = MColumn.getForeignKeyConstraintSql(md, catalog, schema, tableName, table, column, false);
if (! Util.isEmpty(fkConstraintSql)) {
if (fkConstraintSql.toLowerCase().contains(" ad_sequence(ad_sequence_id)"))
fkConstraintSql = fkConstraintSql + "; COMMIT";
if (fkConstraintSql.indexOf(DB.SQLSTATEMENT_SEPARATOR) == -1) {
DB.executeUpdate(fkConstraintSql, false, m_ctx.trx.getTrxName());
} else {
String statements[] = fkConstraintSql.split(DB.SQLSTATEMENT_SEPARATOR);
for (int i = 0; i < statements.length; i++) {
if (Util.isEmpty(statements[i]))
if (Util.isEmpty(statements[i], true))
continue;
DB.executeUpdateEx(statements[i], m_ctx.trx.getTrxName());
}

View File

@ -29,6 +29,7 @@ import java.util.logging.Level;
import org.compiere.model.I_AD_EntityType;
import org.compiere.model.I_AD_Form;
import org.compiere.model.I_AD_ImpFormat;
import org.compiere.model.I_AD_InfoWindow;
import org.compiere.model.I_AD_Menu;
import org.compiere.model.I_AD_Message;
import org.compiere.model.I_AD_ModelValidator;
@ -195,6 +196,8 @@ public class PackOutProcess extends SvrProcess
return I_AD_ModelValidator.Table_Name;
else if (X_AD_Package_Exp_Detail.TYPE_EntityType.equals(type))
return I_AD_EntityType.Table_Name;
else if (X_AD_Package_Exp_Detail.TYPE_InfoWindow.equals(type))
return I_AD_InfoWindow.Table_Name;
return type;
}

View File

@ -43,7 +43,7 @@ public abstract class AbstractActivator implements BundleActivator, ServiceTrack
protected BundleContext context;
protected ServiceTracker<IDictionaryService, IDictionaryService> serviceTracker;
protected IDictionaryService service;
private String trxName = "";
private String trxName = null;
private ProcessInfo m_processInfo = null;
private IProcessUI m_processUI = null;
@ -54,7 +54,7 @@ public abstract class AbstractActivator implements BundleActivator, ServiceTrack
service.merge(context, zipfile);
success = true;
} else {
logger.log(Level.SEVERE, "The file was previously installed: " + zipfile.getName());
logger.log(Level.WARNING, "The file was previously installed: " + zipfile.getName());
}
return success;
@ -77,7 +77,7 @@ public abstract class AbstractActivator implements BundleActivator, ServiceTrack
addLog(Level.SEVERE, "Could not find an IDictionaryService to process the zip files");
}
} else {
addLog(Level.SEVERE, "The file was previously installed: " + zipfile.getName());
addLog(Level.WARNING, "The file was previously installed: " + zipfile.getName());
success = true;
}
@ -107,15 +107,24 @@ public abstract class AbstractActivator implements BundleActivator, ServiceTrack
while(maxAttempts > 0 && !lockAcquired) {
maxAttempts --;
if (getDBLock(timeout))
lockAcquired = true;
if (logger.isLoggable(Level.INFO)) logger.log(Level.INFO, "Acquiring lock with timeout " + timeout + " for " + getName() + " / remaining attempts " + maxAttempts);
try {
if (getDBLock(timeout))
lockAcquired = true;
} catch (Exception e) {
// Timeout throws DBException, ignore and try again
releaseLock();
}
}
return lockAcquired;
}
public void releaseLock() {
Trx.get(trxName, false).close();
if (trxName != null) {
Trx.get(trxName, false).close();
trxName = null;
}
}
private boolean getDBLock(int timeout) throws AdempiereSystemError {

View File

@ -60,16 +60,17 @@ public class AdempiereActivator extends AbstractActivator {
if (pkg == null) {
try {
if (getDBLock()) {
System.out.println("Installing " + getName() + " " + version + " ...");
logger.log(Level.WARNING, "Installing " + getName() + " " + version + " ...");
packIn();
install();
releaseLock();
System.out.println(getName() + " " + version + " installed.");
logger.log(Level.WARNING, getName() + " " + version + " installed.");
} else {
logger.log(Level.SEVERE, "Could not acquire the DB lock to install:" + getName());
logger.log(Level.WARNING, "Could not acquire the DB lock to install:" + getName());
}
} catch (AdempiereSystemError e) {
e.printStackTrace();
} finally {
releaseLock();
}
} else {
if (logger.isLoggable(Level.INFO)) logger.info(getName() + " " + version + " was installed: "
@ -121,7 +122,7 @@ public class AdempiereActivator extends AbstractActivator {
// call 2pack
merge(zipfile, getPKVersion());
} catch (Throwable e) {
logger.log(Level.SEVERE, "Pack in failed.", e);
logger.log(Level.WARNING, "Pack in failed.", e);
}
finally{
if (zipstream != null) {

View File

@ -157,7 +157,7 @@ public class Incremental2PackActivator extends AbstractActivator {
}
}
if (patch) {
System.out.println("Patch Meta Data for " + getName() + " " + entry.version + " ...");
logger.log(Level.WARNING, "Patch Meta Data for " + getName() + " " + entry.version + " ...");
X_AD_Package_Imp pi = new X_AD_Package_Imp(Env.getCtx(), 0, trx.getTrxName());
pi.setName(getName());
@ -175,7 +175,7 @@ public class Incremental2PackActivator extends AbstractActivator {
trx.commit(true);
} catch (Exception e) {
trx.rollback();
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
logger.log(Level.WARNING, e.getLocalizedMessage(), e);
} finally {
trx.close();
}
@ -197,12 +197,13 @@ public class Incremental2PackActivator extends AbstractActivator {
}
}
}
releaseLock();
} else {
logger.log(Level.SEVERE, "Could not acquire the DB lock to install:" + getName());
logger.log(Level.WARNING, "Could not acquire the DB lock to install:" + getName());
}
} catch (AdempiereSystemError e) {
e.printStackTrace();
} finally {
releaseLock();
}
}
@ -220,7 +221,7 @@ public class Incremental2PackActivator extends AbstractActivator {
MSession.get(Env.getCtx(), true);
String path = packout.getPath();
String suffix = "_"+path.substring(path.lastIndexOf("2Pack_"));
System.out.println("Installing " + getName() + " " + path + " ...");
logger.log(Level.WARNING, "Installing " + getName() + " " + path + " ...");
FileOutputStream zipstream = null;
try {
// copy the resource to a temporary file to process it with 2pack
@ -236,7 +237,7 @@ public class Incremental2PackActivator extends AbstractActivator {
if (!merge(zipfile, extractVersionString(packout)))
return false;
} catch (Throwable e) {
logger.log(Level.SEVERE, "Pack in failed.", e);
logger.log(Level.WARNING, "Pack in failed.", e);
return false;
} finally{
if (zipstream != null) {
@ -245,7 +246,7 @@ public class Incremental2PackActivator extends AbstractActivator {
} catch (Exception e2) {}
}
}
System.out.println(getName() + " " + packout.getPath() + " installed");
logger.log(Level.WARNING, getName() + " " + packout.getPath() + " installed");
}
return true;
}

View File

@ -167,19 +167,19 @@ public class PackInApplicationActivator extends AbstractActivator {
currentFile = zipFile;
if (!packIn(zipFile)) {
// stop processing further packages if one fail
addLog(Level.SEVERE, "Failed application of " + zipFile);
addLog(Level.WARNING, "Failed application of " + zipFile);
break;
}
addLog(Level.INFO, "Successful application of " + zipFile);
filesToProcess.remove(zipFile);
}
} else {
addLog(Level.SEVERE, "Could not acquire the DB lock to automatically install the packins");
addLog(Level.WARNING, "Could not acquire the DB lock to automatically install the packins");
return;
}
} catch (AdempiereSystemError e) {
e.printStackTrace();
addLog(Level.SEVERE, e.getLocalizedMessage());
addLog(Level.WARNING, e.getLocalizedMessage());
} finally {
releaseLock();
}
@ -212,7 +212,7 @@ public class PackInApplicationActivator extends AbstractActivator {
seedClientValue = clientValue.split("-")[2];
seedClientIDs = getClientIDs(seedClientValue);
if (seedClientIDs.length == 0) {
logger.log(Level.SEVERE, "Seed client does not exist: " + seedClientValue);
logger.log(Level.WARNING, "Seed client does not exist: " + seedClientValue);
return false;
}
}
@ -234,7 +234,7 @@ public class PackInApplicationActivator extends AbstractActivator {
} else {
clientIDs = getClientIDs(clientValue);
if (clientIDs.length == 0) {
logger.log(Level.SEVERE, "Client does not exist: " + clientValue);
logger.log(Level.WARNING, "Client does not exist: " + clientValue);
return false;
}
}
@ -258,7 +258,7 @@ public class PackInApplicationActivator extends AbstractActivator {
}
}
} catch (Throwable e) {
logger.log(Level.SEVERE, "Pack in failed.", e);
logger.log(Level.WARNING, "Pack in failed.", e);
return false;
} finally {
Env.setContext(Env.getCtx(), "#AD_Client_ID", 0);
@ -299,7 +299,7 @@ public class PackInApplicationActivator extends AbstractActivator {
for (String filePath : filePaths) {
File toProcess = new File(filePath.trim());
if (!toProcess.exists()) {
addLog(Level.SEVERE, filePath + " does not exist");
addLog(Level.WARNING, filePath + " does not exist");
continue;
}
@ -326,7 +326,7 @@ public class PackInApplicationActivator extends AbstractActivator {
if (toProcess.getName().toLowerCase().endsWith(".zip"))
filesToProcess.add(toProcess);
else {
logger.log(Level.SEVERE, toProcess.getName() + " is not a valid .zip file");
logger.log(Level.WARNING, toProcess.getName() + " is not a valid .zip file");
return;
}
} else if (toProcess.isDirectory() && toProcess.canRead()) {
@ -350,7 +350,7 @@ public class PackInApplicationActivator extends AbstractActivator {
if (fileToProcess.canRead()) {
filesToProcess.add(fileToProcess);
} else {
addLog(Level.SEVERE, fileToProcess.getName() + " not readable");
addLog(Level.WARNING, fileToProcess.getName() + " not readable");
}
}
}
@ -359,7 +359,7 @@ public class PackInApplicationActivator extends AbstractActivator {
return;
}
} else {
addLog(Level.SEVERE, toProcess.getName() + " not a file or folder or not readable");
addLog(Level.WARNING, toProcess.getName() + " not a file or folder or not readable");
}
}

View File

@ -169,12 +169,13 @@ public class Version2PackActivator extends AbstractActivator {
break;
}
}
releaseLock();
} else {
logger.log(Level.SEVERE, "Could not acquire the DB lock to install:" + getName());
logger.log(Level.WARNING, "Could not acquire the DB lock to install:" + getName());
}
} catch (AdempiereSystemError e) {
e.printStackTrace();
} finally {
releaseLock();
}
}
@ -190,7 +191,7 @@ public class Version2PackActivator extends AbstractActivator {
if (packout != null && service != null) {
String path = packout.getPath();
String suffix = "_"+path.substring(path.lastIndexOf("2Pack_"));
System.out.println("Installing " + getName() + " " + path + " ...");
logger.log(Level.WARNING, "Installing " + getName() + " " + path + " ...");
FileOutputStream zipstream = null;
try {
// copy the resource to a temporary file to process it with 2pack
@ -206,7 +207,7 @@ public class Version2PackActivator extends AbstractActivator {
if (!merge(zipfile, extractVersionString(packout)))
return false;
} catch (Throwable e) {
logger.log(Level.SEVERE, "Pack in failed.", e);
logger.log(Level.WARNING, "Pack in failed.", e);
return false;
} finally{
if (zipstream != null) {
@ -215,7 +216,7 @@ public class Version2PackActivator extends AbstractActivator {
} catch (Exception e2) {}
}
}
System.out.println(getName() + " " + packout.getPath() + " installed");
logger.log(Level.WARNING, getName() + " " + packout.getPath() + " installed");
}
return true;
}

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,19 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE project>
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.maven2}/org/codehaus/castor/castor-core/1.3.3/castor-core-1.3.3.jar" dest="lib/castor-core.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/codehaus/castor/castor-xml/1.3.3/castor-xml-1.3.3.jar" dest="lib/castor-xml.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.jp.lib}/jasperreports-fonts-${jp-verion}.jar" dest="lib/jasperreports-fonts.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.jp}/net/sf/jasperreports/jasperreports-chart-themes/${jp-verion}/jasperreports-chart-themes-${jp-verion}.jar" dest="lib/jasperreports-chart-themes.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.jp}/net/sf/jasperreports/jasperreports-chart-customizers/${jp-verion}/jasperreports-chart-customizers-${jp-verion}.jar" dest="lib/jasperreports-chart-customizers.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.jp}/net/sf/jasperreports/jasperreports-functions/${jp-verion}/jasperreports-functions-${jp-verion}.jar" dest="lib/jasperreports-functions.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/mozilla/rhino/1.7.6/rhino-1.7.6.jar" dest="lib/rhino.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.jp.other}/org/olap4j/olap4j/0.9.7.309-JS-3/olap4j-0.9.7.309-JS-3.jar" dest="lib/olap4j.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-beans/2.5/spring-beans-2.5.jar" dest="lib/spring-beans.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-core/2.5/spring-core-2.5.jar" dest="lib/spring-core.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/xml-apis/xml-apis-ext/1.3.04/xml-apis-ext-1.3.04.jar" dest="lib/xml-apis-ext.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/adobe/xmp/xmpcore/5.1.1/xmpcore-5.1.1.jar" dest="lib/xmpcore.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,87 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<cspecExtension
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">
<dependencies>
<!-- Place your Dependencies here -->
<dependency name="org.idempiere.equinox.p2.director.feature" componentType="eclipse.feature"/>
<dependency name="org.idempiere.fitnesse.feature" componentType="eclipse.feature"/>
<dependency name="org.idempiere.fitnesse.fixture" componentType="osgi.bundle"/>
<dependency name="org.idempiere.fitnesse.server" componentType="osgi.bundle"/>
<dependency name="org.idempiere.fitrecorder" componentType="osgi.bundle"/>
<dependency name="org.idempiere.ui.zk.selenium" componentType="osgi.bundle"/>
</dependencies>
<generators>
<!-- Place your Generators here -->
</generators>
<artifacts>
<!-- Place your Artifacts here -->
</artifacts>
<actions>
<public name="create.product" actor="ant">
<actorProperties>
<property key="buildFile" value="product.ant" />
<property key="targets" value="create.product" />
</actorProperties>
<properties>
<property key="profile" value="${product.profile}" />
<property key="iu" value="${product.id}" />
<property key="features" value="${product.features}" />
</properties>
<prerequisites alias="repository">
<attribute name="site.p2"/>
</prerequisites>
<products alias="destination" base="${buckminster.output}">
<path path="idempiere.${target.ws}.${target.os}.${target.arch}/" ></path>
</products>
</public>
<public name="create.product.zip" actor="ant">
<actorProperties>
<property key="buildFileId" value="buckminster.pdetasks" />
<property key="targets" value="create.zip" />
</actorProperties>
<prerequisites alias="action.requirements">
<attribute name="create.product" />
</prerequisites>
<products alias="action.output" base="${buckminster.output}">
<path path="idempiereServer.${target.ws}.${target.os}.${target.arch}.zip" ></path>
</products>
</public>
<!-- public action with ant actor to do the actual copying -->
<public name="fetch.dependency.jars" actor="ant">
<actorProperties>
<property key="buildFile" value="copyjars.xml" />
<property key="targets" value="copy" />
</actorProperties>
</public>
</actions>
<groups>
<!-- Place your Groups here -->
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<private name="buckminster.postbind">
<attribute name="fetch.dependency.jars" alias="action.requirements" />
</private>
</groups>
<alterDependencies>
<!-- Place your Dependency alterations here -->
</alterDependencies>
<alterArtifacts>
<!-- Place your Artifact alterations here -->
</alterArtifacts>
<alterActions>
<!-- Place your Action alterations here -->
</alterActions>
<alterGroups>
<public name="bundle.jars">
<attribute name="bundle.jars" component="org.idempiere.fitnesse.fixture"/>
<attribute name="bundle.jars" component="org.idempiere.fitnesse.server"/>
<attribute name="bundle.jars" component="org.idempiere.fitrecorder"/>
<attribute name="bundle.jars" component="org.idempiere.ui.zk.selenium"/>
</public>
<public name="feature.references">
<attribute name="feature.jars" component="org.idempiere.equinox.p2.director.feature"/>
<attribute name="feature.jars" component="org.idempiere.fitnesse.feature"/>
</public>
</alterGroups>
</cspecExtension>

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=*
target.ws=*
target.arch=*
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=linux
target.ws=gtk
target.arch=x86
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,20 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=linux
target.ws=gtk
target.arch=x86_64
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=macosx
target.ws=cocoa
target.arch=x86
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=solaris
target.ws=gtk
target.arch=x86
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=win32
target.ws=win32
target.arch=x86
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,19 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=win32
target.ws=win32
target.arch=x86_64
product.features=org.idempiere.fitnesse.feature.feature.group, org.idempiere.equinox.p2.director.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.server.product, org.eclipse.equinox.p2.director
osgi.user.area=${user.home}
osgi.user.area.default=${user.home}
osgi.configuration.area.default=configuration

View File

@ -1,41 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="data/seed" />
<get src="${url.file.srv}/database/6.1/Adempiere_pg.jar" dest="data/seed/Adempiere_pg.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/database/6.1/Adempiere.jar" dest="data/seed/Adempiere.jar" usetimestamp="true" verbose="true" retries="5" />
<mkdir dir="../db/ddlutils/lib" />
<get src="${url.maven2}/ant-contrib/ant-contrib/1.0b2/ant-contrib-1.0b2.jar" dest="../db/ddlutils/lib/ant-contrib.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar" dest="../db/ddlutils/lib/commons-beanutils.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-betwixt/commons-betwixt/0.8/commons-betwixt-0.8.jar" dest="../db/ddlutils/lib/commons-betwixt.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-codec/commons-codec/1.3/commons-codec-1.3.jar" dest="../db/ddlutils/lib/commons-codec.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-collections/commons-collections/3.1/commons-collections-3.1.jar" dest="../db/ddlutils/lib/commons-collections.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-dbcp/commons-dbcp/1.2.1/commons-dbcp-1.2.1.jar" dest="../db/ddlutils/lib/commons-dbcp.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-digester/commons-digester/1.7/commons-digester-1.7.jar" dest="../db/ddlutils/lib/commons-digester.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-lang/commons-lang/2.1/commons-lang-2.1.jar" dest="../db/ddlutils/lib/commons-lang.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar" dest="../db/ddlutils/lib/commons-logging.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-pool/commons-pool/1.2/commons-pool-1.2.jar" dest="../db/ddlutils/lib/commons-pool.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/ddlutils/ddlutils/1.0/ddlutils-1.0.jar" dest="../db/ddlutils/lib/DdlUtils.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/dom4j/dom4j/1.4/dom4j-1.4.jar" dest="../db/ddlutils/lib/dom4j.jar" usetimestamp="true" verbose="true" retries="5" />
<!-- it's fyracle db, not yet support on idempiere
https://it.wikipedia.org/wiki/Fyracle
http://www.biz-wise.nl/compiere_dl.html
<get src="${url.file.srv}/jarfile/6.1/fyracle.jar" dest="../db/ddlutils/lib/fyracle.jar" usetimestamp="true" verbose="true" retries="5" />
-->
<get src="${url.maven2}/oro/oro/2.0.8/oro-2.0.8.jar" dest="../db/ddlutils/lib/jakarta-oro.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/oracle.jar" dest="../db/ddlutils/lib/oracle.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/postgresql.jar" dest="../db/ddlutils/lib/postgresql.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/stax/stax-api/1.0.1/stax-api-1.0.1.jar" dest="../db/ddlutils/lib/stax-api.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/woodstox/wstx-asl/3.0.2/wstx-asl-3.0.2.jar" dest="../db/ddlutils/lib/wstx-asl.jar" usetimestamp="true" verbose="true" retries="5" />
<mkdir dir="../fitnesse/FitNesseRoot/FitLibraryWeb" />
<get src="${url.file.srv}/jarfile/6.1/101-20121212164242.zip" dest="../fitnesse/FitNesseRoot/FitLibraryWeb/101-20121212164242.zip" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/21-20121212154702.zip" dest="../fitnesse/FitNesseRoot/FitLibraryWeb/21-20121212154702.zip" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/6-20121212124109.zip" dest="../fitnesse/FitNesseRoot/FitLibraryWeb/6-20121212124109.zip" usetimestamp="true" verbose="true" retries="5" />
<!-- maybe it's same file in org.idempiere.fitnesse.server, just diference version-->
<get src="${url.file.srv}/jarfile/6.1/fitnesse2.jar" dest="../fitnesse/fitnesse.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.alpn.boot}" dest="../alpn-boot.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,58 +0,0 @@
<project>
<pathconvert property="equinox.launcher.jar">
<first count="1">
<sort>
<fileset dir="${eclipse.home}/plugins" includes="**/org.eclipse.equinox.launcher_*.jar"/>
<reverse xmlns="antlib:org.apache.tools.ant.types.resources.comparators">
<date/>
</reverse>
</sort>
</first>
</pathconvert>
<target name="create.product">
<property name="installableIUs" value="${iu},${features}" />
<property name="destination" location="${sp:destination}"/>
<delete dir="${destination}"/>
<makeurl property="repository" file="${sp:repository}"/>
<mkdir dir="${destination}"/>
<echoproperties/>
<echo message="${equinox.launcher.jar}"/>
<echo message="${repository}"/>
<echo message="${destination}"/>
<java outputproperty="javaoutput" resultproperty="javaresult" jar="${equinox.launcher.jar}" fork="true" failonerror="false" >
<arg value="-application"/>
<arg value="org.eclipse.equinox.p2.director"/>
<arg value="-repository"/>
<arg value="${repository}"/>
<arg value="-destination"/>
<arg value="${destination}/idempiere-server"/>
<arg value="-profile"/>
<arg value="${profile}"/>
<arg value="-profileProperties" />
<arg value="org.eclipse.update.install.features=true" />
<arg value="-installIU"/>
<arg value="${installableIUs}"/>
<arg value="-p2.os" />
<arg value="${target.os}" />
<arg value="-p2.ws" />
<arg value="${target.ws}" />
<arg value="-p2.arch" />
<arg value="${target.arch}" />
<arg value="-consoleLog"/>
<arg value="-roaming"/>
<!-- jvmarg value="-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=y"/ -->
</java>
<!-- IDEMPIERE-1618: This block gives an error message on console. Else errors here are hard
to identify for unexperienced users because the java runs in a fork and gives no output to
stdout. Messages are still in the latest logfile in ECLIPSE_HOME/configuration
(or buckminster) - thanks to CarlosRuiz for this hint.
-->
<echo message="${javaresult}" />
<fail message="result: ${javaresult}\n${javaoutput}">
<condition>
<not><equals arg1="${javaresult}" arg2="0"/></not>
</condition>
</fail>
</target>
</project>

View File

@ -7,4 +7,4 @@ fi
. ./myEnvironment.sh Server
echo Synchronize iDempiere Database - $IDEMPIERE_HOME \($ADEMPIERE_DB_NAME\)
sh $ADEMPIERE_DB_PATH/SyncDB.sh "$ADEMPIERE_DB_USER" "$ADEMPIERE_DB_PASSWORD" "$ADEMPIERE_DB_PATH"
sh $ADEMPIERE_DB_PATH/SyncDB.sh "$ADEMPIERE_DB_USER" "$ADEMPIERE_DB_PASSWORD" "$ADEMPIERE_DB_PATH" $*

View File

@ -30,8 +30,20 @@ ADEMPIERE_DB_PATH=$3
CMD="sqlplus $ADEMPIERE_DB_USER/$ADEMPIERE_DB_PASSWORD@$ADEMPIERE_DB_SERVER:$ADEMPIERE_DB_PORT/$ADEMPIERE_DB_NAME"
SILENTCMD="sqlplus -S $ADEMPIERE_DB_USER/$ADEMPIERE_DB_PASSWORD@$ADEMPIERE_DB_SERVER:$ADEMPIERE_DB_PORT/$ADEMPIERE_DB_NAME"
ERROR_STRINGS="^(ORA-[0-9]+:|TNS-|PLS-)"
DIR_POST=$IDEMPIERE_HOME/migration
if [ "x$4" = "x" ]
then
DIR_SCRIPTS=$IDEMPIERE_HOME/migration
else
if [ `expr substr "$4" 1 1` = "/" ]
then
DIR_SCRIPTS="$4"
else
DIR_SCRIPTS="$IDEMPIERE_HOME/$4"
fi
fi
cd $IDEMPIERE_HOME/migration
cd "$DIR_SCRIPTS"
# Create list of files already applied - registered in AD_MigrationScript table
echo "set heading off
@ -47,7 +59,7 @@ find -type d -name $ADEMPIERE_DB_PATH | grep -v "./processes_post_migration/$ADE
do
cd "${FOLDER}"
ls *.sql 2>/dev/null >> $TMPFOLDER/lisFS_$$.txt
cd $IDEMPIERE_HOME/migration
cd "$DIR_SCRIPTS"
done
sort -o $TMPFOLDER/lisFS_$$.txt $TMPFOLDER/lisFS_$$.txt
sort -o $TMPFOLDER/lisDB_$$.txt $TMPFOLDER/lisDB_$$.txt
@ -82,7 +94,7 @@ else
fi
if [ x$APPLIED = xY ]
then
cd $IDEMPIERE_HOME/migration
cd "$DIR_POST"
for FILE in processes_post_migration/$ADEMPIERE_DB_PATH/*.sql
do
OUTFILE=$TMPFOLDER/SyncDB_out_$$/`basename "$FILE" .sql`.out

View File

@ -32,8 +32,20 @@ ADEMPIERE_DB_PATH=$3
CMD="psql -h $ADEMPIERE_DB_SERVER -p $ADEMPIERE_DB_PORT -d $ADEMPIERE_DB_NAME -U $ADEMPIERE_DB_USER"
SILENTCMD="$CMD -q -t"
ERROR_STRINGS="^(ERROR:|FEHLER:|FATAL:|ERRO:)"
DIR_POST=$IDEMPIERE_HOME/migration
if [ "x$4" = "x" ]
then
DIR_SCRIPTS=$IDEMPIERE_HOME/migration
else
if [ `expr substr "$4" 1 1` = "/" ]
then
DIR_SCRIPTS="$4"
else
DIR_SCRIPTS="$IDEMPIERE_HOME/$4"
fi
fi
cd $IDEMPIERE_HOME/migration
cd "$DIR_SCRIPTS"
# Create list of files already applied - registered in AD_MigrationScript table
echo "select name from ad_migrationscript" | $SILENTCMD | sed -e 's:^ ::' | grep -v '^$' | sort > $TMPFOLDER/lisDB_$$.txt
@ -44,7 +56,7 @@ find -type d -name $ADEMPIERE_DB_PATH | grep -v "./processes_post_migration/$ADE
do
cd "${FOLDER}"
ls *.sql 2>/dev/null >> $TMPFOLDER/lisFS_$$.txt
cd $IDEMPIERE_HOME/migration
cd "$DIR_SCRIPTS"
done
sort -o $TMPFOLDER/lisFS_$$.txt $TMPFOLDER/lisFS_$$.txt
sort -o $TMPFOLDER/lisDB_$$.txt $TMPFOLDER/lisDB_$$.txt
@ -79,7 +91,7 @@ else
fi
if [ x$APPLIED = xY ]
then
cd $IDEMPIERE_HOME/migration
cd "$DIR_POST"
for FILE in processes_post_migration/$ADEMPIERE_DB_PATH/*.sql
do
OUTFILE=$TMPFOLDER/SyncDB_out_$$/`basename "$FILE" .sql`.out

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,7 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="WEB-INF/lib" />
<get src="${url.maven2.opennms}/javax/samples/jnlp/jnlp-jardiff/1.6.0/jnlp-jardiff-1.6.0.jar" dest="WEB-INF/lib/jnlp-jardiff.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.opennms}/javax/samples/jnlp/jnlp-servlet/1.6.0/jnlp-servlet-1.6.0.jar" dest="WEB-INF/lib/jnlp-servlet.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,11 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=*
target.ws=*
target.arch=*

View File

@ -1,64 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<cspecExtension
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">
<dependencies>
<!-- Place your Dependencies here -->
<dependency name="org.idempiere.eclipse.platform.feature" componentType="eclipse.feature"/>
</dependencies>
<generators>
<!-- Place your Generators here -->
</generators>
<artifacts>
<!-- Place your Artifacts here -->
</artifacts>
<actions>
<public name="create.product" actor="ant">
<actorProperties>
<property key="buildFile" value="product.ant" />
<property key="targets" value="create.product" />
</actorProperties>
<properties>
<property key="profile" value="${product.profile}" />
<property key="iu" value="${product.id}" />
<property key="features" value="${product.features}" />
</properties>
<prerequisites alias="repository">
<attribute name="site.p2" />
</prerequisites>
<products alias="destination" base="${buckminster.output}">
<path path="adempiere.${target.ws}.${target.os}.${target.arch}/" ></path>
</products>
</public>
<public name="create.product.zip" actor="ant">
<actorProperties>
<property key="buildFileId" value="buckminster.pdetasks" />
<property key="targets" value="create.zip" />
</actorProperties>
<prerequisites alias="action.requirements">
<attribute name="create.product" />
</prerequisites>
<products alias="action.output" base="${buckminster.output}">
<path path="idempiereClient.${target.ws}.${target.os}.${target.arch}.zip" />
</products>
</public>
</actions>
<groups>
<!-- Place your Groups here -->
</groups>
<alterDependencies>
<!-- Place your Dependency alterations here -->
</alterDependencies>
<alterArtifacts>
<!-- Place your Artifact alterations here -->
</alterArtifacts>
<alterActions>
<!-- Place your Action alterations here -->
</alterActions>
<alterGroups>
<public name="feature.references">
<attribute name="feature.jars" component="org.idempiere.eclipse.platform.feature"/>
</public>
</alterGroups>
</cspecExtension>

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=*
target.ws=*
target.arch=*
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=linux
target.ws=gtk
target.arch=x86
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=linux
target.ws=gtk
target.arch=x86_64
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=macosx
target.ws=cocoa
target.arch=x86
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=solaris
target.ws=gtk
target.arch=x86
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,15 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=win32
target.ws=win32
target.arch=x86
product.features=org.idempiere.eclipse.platform.feature.feature.group
product.profile=DefaultProfile
product.id=org.adempiere.ui.swing.product

View File

@ -1,58 +0,0 @@
<project>
<pathconvert property="equinox.launcher.jar">
<first count="1">
<sort>
<fileset dir="${eclipse.home}/plugins" includes="**/org.eclipse.equinox.launcher_*.jar"/>
<reverse xmlns="antlib:org.apache.tools.ant.types.resources.comparators">
<date/>
</reverse>
</sort>
</first>
</pathconvert>
<target name="create.product">
<property name="installableIUs" value="${iu},${features}" />
<property name="destination" location="${sp:destination}"/>
<delete dir="${destination}"/>
<makeurl property="repository" file="${sp:repository}"/>
<mkdir dir="${destination}"/>
<echoproperties/>
<echo message="${equinox.launcher.jar}"/>
<echo message="${repository}"/>
<echo message="${destination}"/>
<java outputproperty="javaoutput" resultproperty="javaresult" jar="${equinox.launcher.jar}" fork="true" failonerror="false" >
<arg value="-application"/>
<arg value="org.eclipse.equinox.p2.director"/>
<arg value="-repository"/>
<arg value="${repository}"/>
<arg value="-destination"/>
<arg value="${destination}/adempiere-client"/>
<arg value="-profile"/>
<arg value="${profile}"/>
<arg value="-profileProperties" />
<arg value="org.eclipse.update.install.features=true" />
<arg value="-installIU"/>
<arg value="${installableIUs}"/>
<arg value="-p2.os" />
<arg value="${target.os}" />
<arg value="-p2.ws" />
<arg value="${target.ws}" />
<arg value="-p2.arch" />
<arg value="${target.arch}" />
<arg value="-consoleLog"/>
<arg value="-roaming"/>
<!-- jvmarg value="-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=y"/ -->
</java>
<!-- IDEMPIERE-1618: This block gives an error message on console. Else errors here are hard
to identify for unexperienced users because the java runs in a fork and gives no output to
stdout. Messages are still in the latest logfile in ECLIPSE_HOME/configuration
(or buckminster) - thanks to CarlosRuiz for this hint.
-->
<echo message="${javaresult}" />
<fail message="result: ${javaresult}\n${javaoutput}">
<condition>
<not><equals arg1="${javaresult}" arg2="0"/></not>
</condition>
</fail>
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,10 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="lib" />
<get src="${url.maven2}/org/swinglabs/swingx/1.6/swingx-1.6.jar" dest="lib/swingx.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/jgoodies/looks/2.0.4/looks-2.0.4.jar" dest="lib/looks.jar" usetimestamp="true" verbose="true" retries="5" />
<!-- old version is only for swing, but can't find out old version, so use jar for Swing, SWT and JavaFX to keep same version -->
<get src="${url.maven2}/com/miglayout/miglayout/3.7.1/miglayout-3.7.1.jar" dest="lib/miglayout.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/jpedal.jar" dest="lib/jpedal.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -369,14 +369,14 @@ public abstract class AbstractADWindowContent extends AbstractUIPart implements
toolbar.enableFind(true);
adTabbox.evaluate(null);
toolbar.updateToolbarAccess(adWindowId);
updateToolbar();
if (detailQuery != null && zoomToDetailTab(detailQuery))
{
return true;
}
toolbar.updateToolbarAccess(adWindowId);
updateToolbar();
SessionManager.getAppDesktop().updateHelpContext(X_AD_CtxHelp.CTXTYPE_Tab, adTabbox.getSelectedGridTab().getAD_Tab_ID());
return true;

View File

@ -14,6 +14,7 @@
package org.adempiere.webui.panel;
import org.adempiere.webui.component.Borderlayout;
import org.adempiere.webui.component.Checkbox;
import org.adempiere.webui.component.Column;
import org.adempiere.webui.component.Columns;
@ -30,6 +31,7 @@ import org.compiere.util.Util;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
import org.zkoss.zul.Center;
import org.zkoss.zul.Div;
@ -38,7 +40,7 @@ public class WRC1DisplayFieldsPanel extends WRCTabPanel implements EventListener
/**
*
*/
private static final long serialVersionUID = -2097631726230470398L;
private static final long serialVersionUID = -4595966853507636969L;
private static final int RENDER_IN_COLUMNS=4;
private MPrintFormat m_printFormat;
@ -60,7 +62,7 @@ public class WRC1DisplayFieldsPanel extends WRCTabPanel implements EventListener
}
public void init() {
m_chkboxes = new Checkbox[m_pfi.size()];
m_textBoxes = new Textbox[m_pfi.size()];
m_oldLabel = new String[m_pfi.size()];
@ -70,6 +72,13 @@ public class WRC1DisplayFieldsPanel extends WRCTabPanel implements EventListener
ZKUpdateUtil.setHeight(wind, "100%");
ZKUpdateUtil.setHflex(wind, "1");
Borderlayout borderlayout = new Borderlayout();
wind.appendChild(borderlayout);
ZKUpdateUtil.setHflex(borderlayout, "1");
Center center = new Center();
center.setAutoscroll(true);
borderlayout.appendChild(center);
Grid grid = new Grid();
//have problem moving the following out as css class
ZKUpdateUtil.setHflex(grid, "1");
@ -81,7 +90,7 @@ public class WRC1DisplayFieldsPanel extends WRCTabPanel implements EventListener
Div div = new Div();
div.setStyle("width:90%;height:100%;border:none;margin:none;padding:none");
div.appendChild(grid);
wind.appendChild(div);
center.appendChild(div);
this.appendChild(wind);
Columns columns = new Columns();

View File

@ -15,6 +15,7 @@ package org.adempiere.webui.panel;
import java.util.ArrayList;
import org.adempiere.webui.component.Borderlayout;
import org.adempiere.webui.component.Checkbox;
import org.adempiere.webui.component.Column;
import org.adempiere.webui.component.Columns;
@ -29,6 +30,7 @@ import org.compiere.util.Msg;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
import org.zkoss.zul.Center;
import org.zkoss.zul.Div;
import org.zkoss.zul.Row;
@ -36,7 +38,7 @@ public class WRC5SummaryFieldsPanel extends WRCTabPanel implements EventListener
/**
*
*/
private static final long serialVersionUID = -2231369601903381581L;
private static final long serialVersionUID = 4660623126634851224L;
private static final int RENDER_IN_COLUMNS=10;
Checkbox m_chkSum[]=null;
@ -65,10 +67,17 @@ public class WRC5SummaryFieldsPanel extends WRCTabPanel implements EventListener
grid.setStyle("margin:0; padding:0; position: absolute");
grid.makeNoStrip();
Borderlayout borderlayout = new Borderlayout();
wind.appendChild(borderlayout);
ZKUpdateUtil.setHflex(borderlayout, "1");
Center center = new Center();
center.setAutoscroll(true);
borderlayout.appendChild(center);
Div div = new Div();
div.setStyle("width:90%;height:100%;border:none;margin:none;padding:none");
div.appendChild(grid);
wind.appendChild(div);
center.appendChild(div);
this.appendChild(wind);
Columns columns = new Columns();

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE project>
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="WEB-INF/lib" />
<get src="${url.file.srv}/jarfile/6.1/labelapplet.jar" dest="labelapplet.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.atlassian.3rdparty}/org/outerj/daisy/daisydiff/1.1.14-atlassian-hosted/daisydiff-1.1.14-atlassian-hosted.jar" dest="WEB-INF/lib/daisydiff.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven.zkoss}/org/zkoss/zkforge/ckez/4.7.0.0/ckez-4.7.0.0.jar" dest="WEB-INF/lib/ckez.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,11 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<!--in maven has newer version, but now keep old version
${url.maven2}/org/codeartisans/thirdparties/swing/org-netbeans-api-visual/2.23.1/org-netbeans-api-visual-2.23.1.jar
${url.maven2}/org/codeartisans/thirdparties/swing/org-openide-util/8.6.2/org-openide-util-8.6.2.jar
-->
<get src="${url.maven2.netbeans}/org/netbeans/api/org-netbeans-api-visual/RELEASE65/org-netbeans-api-visual-RELEASE65.jar" dest="lib/org-netbeans-api-visual.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2.netbeans}/org/netbeans/api/org-openide-util/RELEASE65/org-openide-util-RELEASE65.jar" dest="lib/org-openide-util.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,11 +0,0 @@
## buckminster.properties ##
#Where all the output should go
buckminster.output.root=${user.home}/buckminster.output
# Where the temp files should go
buckminster.temp.root=${user.home}/tmp
# How .qualifier in versions should be replaced
qualifier.replacement.*=generator:buildTimestamp
generator.buildTimestamp.format='v'yyyyMMdd-HHmm
target.os=*
target.ws=*
target.arch=*

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,9 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.maven2}/com/mchange/c3p0/0.9.5/c3p0-0.9.5.jar" dest="lib/c3p0.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/mchange/mchange-commons-java/0.2.9/mchange-commons-java-0.2.9.jar" dest="lib/mchange-commons-java.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/google/code/maven-play-plugin/com/mchange/c3p0-oracle-thin-extras/0.9.5/c3p0-oracle-thin-extras-0.9.5.jar" dest="lib/c3p0-oracle-thin-extras.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/ojdbc7.jar" dest="lib/ojdbc7.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,8 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.maven2}/com/mchange/c3p0/0.9.5.2/c3p0-0.9.5.2.jar" dest="lib/c3p0.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/mchange/mchange-commons-java/0.2.12/mchange-commons-java-0.2.12.jar" dest="lib/mchange-commons-java.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/postgresql/postgresql/42.1.4/postgresql-42.1.4.jar" dest="lib/postgresql.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE project>
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.file.srv}/jarfile/6.1/fitlibrary-2.0.jar" dest="lib/fitlibrary.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/fitnesse/fitnesse/20111025/fitnesse-20111025.jar" dest="lib/fitnesse.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/fitlibraryweb-2.0.jar" dest="lib/fitlibraryweb.jar" usetimestamp="true" verbose="true" retries="5" />
<!--old version is 2.35, can't find out in maven also homepage.
when host old version (2.35) to bitbucket.org can't donwload by ant, maybe big file (even it's download normal with browse).
not sure why use a standalone (full) version.
in case use lib version, we can download at maven, it's small ${url.maven2}/org/seleniumhq/selenium/selenium-server/2.35.0/selenium-server-2.35.0.jar-->
<get src="${url.maven2.jenkins}/org/seleniumhq/selenium/selenium-server-standalone/2.39.0/selenium-server-standalone-2.39.0.jar" dest="lib/selenium-server-standalone.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/log4j/log4j/1.2.16/log4j-1.2.16.jar" dest="lib/log4j.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/github/detro/ghostdriver/phantomjsdriver/1.0.3/phantomjsdriver-1.0.3.jar" dest="lib/phantomjsdriver.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,7 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<mkdir dir="lib" />
<target name="copy">
<get src="${url.maven2}/com/hazelcast/hazelcast/3.9.3/hazelcast-3.9.3.jar" dest="lib/hazelcast.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/hazelcast/hazelcast-aws/2.1.0/hazelcast-aws-2.1.0.jar" dest="lib/hazelcast-aws.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,19 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,26 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="WEB-INF/lib" />
<get src="${url.maven2}/org/springframework/osgi/spring-osgi-extender/1.2.1/spring-osgi-extender-1.2.1.jar" dest="WEB-INF/lib/spring-osgi-extender.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-aop/3.0.7.RELEASE/spring-aop-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-aop.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/codehaus/woodstox/stax2-api/3.1.1/stax2-api-3.1.1.jar" dest="WEB-INF/lib/stax2-api.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-web/3.0.7.RELEASE/spring-web-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-web.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-context/3.0.7.RELEASE/spring-context-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-context.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-beans/3.0.7.RELEASE/spring-beans-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-beans.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-core/3.0.7.RELEASE/spring-core-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-core.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-asm/3.0.7.RELEASE/spring-asm-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-asm.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/springframework/spring-expression/3.0.7.RELEASE/spring-expression-3.0.7.RELEASE.jar" dest="WEB-INF/lib/spring-expression.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/wsdl4j/wsdl4j/1.6.2/wsdl4j-1.6.2.jar" dest="WEB-INF/lib/wsdl4j.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/cxf/cxf-bundle/2.6.2/cxf-bundle-2.6.2.jar" dest="WEB-INF/lib/cxf-bundle.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/neethi/neethi/3.0.2/neethi-3.0.2.jar" dest="WEB-INF/lib/neethi.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/ws/xmlschema/xmlschema-core/2.0.3/xmlschema-core-2.0.3.jar" dest="WEB-INF/lib/xmlschema-core.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/cxf/cxf-rt-frontend-jaxws/2.6.1/cxf-rt-frontend-jaxws-2.6.1.jar" dest="WEB-INF/lib/cxf-rt-frontend-jaxws.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/xmlbeans/xmlbeans/3.0.0/xmlbeans-3.0.0.jar" dest="WEB-INF/lib/xmlbeans.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" dest="WEB-INF/lib/aopalliance.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.file.srv}/jarfile/6.1/idempiere-xmlbeans-1.0.jar" dest="WEB-INF/lib/idempiere-xmlbeans.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/org/apache/axis/axis/1.4/axis-1.4.jar" dest="WEB-INF/lib/axis.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/commons-discovery/commons-discovery/0.5/commons-discovery-0.5.jar" dest="WEB-INF/lib/commons-discovery.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/javax/ws/rs/jsr311-api/1.1/jsr311-api-1.1.jar" dest="WEB-INF/lib/jsr311-api.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -1,26 +0,0 @@
<cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0">
<actions>
<!-- public action with ant actor to do the actual copying -->
<cs:public name="fetch.dependency.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copyjars.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
<cs:public name="fetch.sources.jars" actor="ant">
<cs:actorProperties>
<cs:property key="buildFile" value="copysources.xml" />
<cs:property key="targets" value="copy" />
</cs:actorProperties>
</cs:public>
</actions>
<groups>
<!-- buckminster.prebind the prebind group will be executed during materialization -->
<cs:private name="buckminster.postbind">
<cs:attribute name="fetch.dependency.jars" alias="action.requirements" />
<!--<cs:attribute name="fetch.sources.jars" alias="action.requirements" />-->
</cs:private>
</groups>
</cspecExtension>

View File

@ -1,11 +0,0 @@
<project name="zklibrary" basedir="." default="copy">
<target name="copy">
<mkdir dir="lib" />
<get src="${url.maven.zkoss}/org/zkoss/zkforge/gmapsz/3.0.4/gmapsz-3.0.4.jar" dest="lib/gmapsz.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven.zkoss}/org/zkoss/zkforge/timelinez/2.3.1_50/timelinez-2.3.1_50.jar" dest="lib/timelinez.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven.zkoss}/org/zkoss/zkforge/timeplotz/1.1_50/timeplotz-1.1_50.jar" dest="lib/timeplotz.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven.zkoss}/org/zkoss/calendar/calendar/2.1.5/calendar-2.1.5.jar" dest="lib/calendar.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven.zkoss}/org/zkoss/theme/breeze/8.5.0/breeze-8.5.0.jar" dest="lib/breeze.jar" usetimestamp="true" verbose="true" retries="5" />
<get src="${url.maven2}/com/google/javascript/closure-compiler/v20171112/closure-compiler-v20171112.jar" dest="lib/closure-compiler.jar" usetimestamp="true" verbose="true" retries="5" />
</target>
</project>

View File

@ -55,7 +55,6 @@
<module>org.adempiere.replication-feature</module>
<module>org.adempiere.pipo-feature</module>
<module>org.adempiere.replication.server-feature</module>
<module>org.adempiere.sdk-feature</module>
<module>org.adempiere.server-feature</module>
<module>org.adempiere.target.platform-feature</module>
<module>org.adempiere.ui.swing-feature</module>