diff --git a/migration/i1.0a-release/oracle/201211281100IDEMPIERE_390.sql b/migration/i1.0a-release/oracle/201211281100IDEMPIERE_390.sql
new file mode 100644
index 0000000000..49eaf7531f
--- /dev/null
+++ b/migration/i1.0a-release/oracle/201211281100IDEMPIERE_390.sql
@@ -0,0 +1,1063 @@
+-- Nov 23, 2012 6:06:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Table (ImportTable,CopyColumnsFromTable,IsSecurityEnabled,AccessLevel,LoadSeq,AD_Table_ID,IsHighVolume,IsView,IsChangeLog,EntityType,ReplicationType,AD_Table_UU,IsCentrallyMaintained,IsDeleteable,TableName,Name,AD_Client_ID,IsActive,AD_Org_ID,CreatedBy,Updated,UpdatedBy,Created) VALUES ('N','N','N','3',0,200037,'N','N','N','D','L','3aa0dee7-006f-4e64-b7d4-e361a62736d6','Y','Y','AD_StorageProvider','AD_StorageProvider',0,'Y',0,100,TO_DATE('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'))
+;
+
+-- Nov 23, 2012 6:06:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Table_Trl (AD_Language,AD_Table_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Table_Trl_UU ) SELECT l.AD_Language,t.AD_Table_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Table t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Table_ID=200037 AND NOT EXISTS (SELECT * FROM AD_Table_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Table_ID=t.AD_Table_ID)
+;
+
+-- Nov 23, 2012 6:06:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Sequence (StartNewYear,CurrentNextSys,IsTableID,CurrentNext,IsAudited,IsAutoSequence,AD_Sequence_ID,Description,Name,IncrementNo,AD_Sequence_UU,AD_Org_ID,AD_Client_ID,Created,CreatedBy,Updated,UpdatedBy,IsActive,StartNo) VALUES ('N',200000,'Y',1000000,'N','Y',200033,'Table AD_StorageProvider','AD_StorageProvider',1,'e83a2dbe-f8e8-4dfd-be2f-dff711fb8513',0,0,TO_DATE('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,'Y',1000000)
+;
+
+-- Nov 23, 2012 6:07:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AD_StorageProvider_ID',200238,'D','AD_StorageProvider_ID','AD_StorageProvider_ID','ba365847-2f59-4e6b-b0e0-ccdcf24039fe',0,TO_DATE('2012-11-23 18:07:02','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2012-11-23 18:07:02','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:07:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200238 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:07:54 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200961,'D','N','N','N',0,'N',22,'N',13,'N',200238,'N','Y','88580a3a-b7a8-4e65-a94e-0608c96e9b90','Y','N','AD_StorageProvider_ID','AD_StorageProvider_ID','Y',TO_DATE('2012-11-23 18:07:53','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:07:53','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:07:54 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200961 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:09:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200962,'D','N','N','N',0,'N',22,'N',19,'N',102,'N','Y','a44813a8-a8b0-41b1-b88e-ed7fbc9a0cc1','Y','N','AD_Client_ID','Client/Tenant for this installation.','@#AD_Client_ID@','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.','Client','N',TO_DATE('2012-11-23 18:09:11','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:09:11','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:09:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200962 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:10:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200963,'D','N','N','N',0,'N',22,'N',19,'N',113,'N','Y','63422271-d59a-4917-b4e1-4abf845e7596','Y','N','AD_Org_ID','Organizational entity within client','@#AD_Org_ID@','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.','Organization','N',TO_DATE('2012-11-23 18:10:44','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:10:44','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:10:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200963 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:12:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200964,'D','N','N','N',0,'N',7,'N',16,'N',245,'N','Y','0f56c969-9ba2-4eee-b903-127a78204259','Y','N','Created','Date this record was created','The Created field indicates the date that this record was created.','Created','N',TO_DATE('2012-11-23 18:12:11','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:12:11','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:12:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200964 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:13:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200965,'D',110,'N','N','N',0,'N',22,'N',18,'N',246,'N','Y','dd621b78-2934-427d-bf2f-04935cb7f71f','Y','N','CreatedBy','User who created this records','The Created By field indicates the user who created this record.','Created By','N',TO_DATE('2012-11-23 18:13:09','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:13:09','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:13:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200965 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:13:59 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200966,'D','N','N','N',0,'N',7,'N',16,'N',607,'N','Y','b6b79bc1-90f2-4656-bd23-c269bcb7836f','Y','N','Updated','Date this record was updated','The Updated field indicates the date that this record was updated.','Updated','N',TO_DATE('2012-11-23 18:13:58','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:13:58','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:13:59 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200966 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:14:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200967,'U',110,'N','N','N',0,'N',22,'N',18,'N',608,'N','Y','ca82ad38-95d9-4b19-b817-983664a8d448','Y','N','UpdatedBy','User who updated this records','The Updated By field indicates the user who updated this record.','Updated By','N',TO_DATE('2012-11-23 18:14:37','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:14:37','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:14:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200967 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:15:19 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200968,'D','N','N','N',0,'N',1,'N',20,'N',348,'N','Y','8a3bef85-7886-4415-9721-1276a2d4ddf8','Y','N','IsActive','The record is active in the system','Y','There are two methods of making records unavailable in the system: One is to delete the record, the other is to de-activate the record. A de-activated record is not available for selection, but available for reports.
+There are two reasons for de-activating and not deleting records:
+(1) The system requires the record for audit purposes.
+(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.','Active','N',TO_DATE('2012-11-23 18:15:18','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:15:18','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:15:19 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200968 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:17:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200969,'D','N','N','N',0,'N',60,'Y',10,'N',469,'N','Y','0f1f3927-5c86-414a-b973-6c9505d1a62e','Y','N','Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.','Name','Y',TO_DATE('2012-11-23 18:17:08','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:17:08','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:17:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200969 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:17:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('Method',200239,'D','Method','Method','acaddc54-113d-4603-a94f-8c2f6beb5310',0,TO_DATE('2012-11-23 18:17:45','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2012-11-23 18:17:45','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:17:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200239 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:18:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200970,'D','N','N','N',0,'N',60,'N',10,'N',200239,'N','Y','14790a4c-b78f-42f4-b7f8-13f63cffcdbe','Y','N','Method','Method','Y',TO_DATE('2012-11-23 18:18:14','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:18:14','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:18:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200970 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:19:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200971,'D','N','N','N',0,'N',225,'N',10,'N',983,'N','Y','9a741611-a86a-4360-81b2-7b8f618ba941','Y','N','URL','Full URL address - e.g. http://www.idempiere.org','The URL defines an fully qualified web address like http://www.idempiere.org','URL','Y',TO_DATE('2012-11-23 18:18:59','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:18:59','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:19:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200971 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:19:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200972,'D','N','N','N',0,'N',255,'N',10,'N',3012,'N','Y','45e0f607-c654-456b-84df-066c2d229a18','Y','N','Folder','A folder on a local or remote system to store data into','We store files in folders, especially media files.','Folder','Y',TO_DATE('2012-11-23 18:19:38','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:19:38','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:19:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200972 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:21:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200973,'D','N','N','N',0,'N',60,'Y',10,'N',1903,'N','Y','2081bd64-ca7b-4bbf-8a30-a3229f2e9ef4','Y','N','UserName','Email of the responsible for the System','Email of the responsible person for the system (registered in WebStore)','Registered EMail','Y',TO_DATE('2012-11-23 18:21:22','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:21:22','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:21:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200973 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:22:06 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200974,'D','N','N','N',0,'N',255,'N',10,'N',498,'N','Y','8db1ec5a-9c4f-44ed-bd78-efdf84114534','Y','N','Password','Password of any length (case sensitive)','The Password for this User. Passwords are required to identify authorized users. For Adempiere Users, you can change the password via the Process "Reset Password".','Password','Y',TO_DATE('2012-11-23 18:22:05','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:22:05','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:22:06 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200974 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:22:33 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D',Updated=TO_DATE('2012-11-23 18:22:33','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200967
+;
+
+-- Nov 23, 2012 6:23:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Reference (AD_Reference_ID,Name,EntityType,AD_Reference_UU,IsOrderByValue,Description,ValidationType,AD_Client_ID,AD_Org_ID,CreatedBy,Updated,IsActive,Created,UpdatedBy) VALUES (200019,'StorageProvider','D','b4cb87d1-d08f-4987-8f66-9f923d68ec2f','N','StorageProvider','L',0,0,100,TO_DATE('2012-11-23 18:23:38','YYYY-MM-DD HH24:MI:SS'),'Y',TO_DATE('2012-11-23 18:23:38','YYYY-MM-DD HH24:MI:SS'),100)
+;
+
+-- Nov 23, 2012 6:23:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Reference_Trl (AD_Language,AD_Reference_ID, Help,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Reference_Trl_UU ) SELECT l.AD_Language,t.AD_Reference_ID, t.Help,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Reference t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Reference_ID=200019 AND NOT EXISTS (SELECT * FROM AD_Reference_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Reference_ID=t.AD_Reference_ID)
+;
+
+-- Nov 23, 2012 6:24:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List (AD_Ref_List_ID,AD_Reference_ID,EntityType,Name,AD_Ref_List_UU,Value,Created,CreatedBy,Updated,UpdatedBy,IsActive,AD_Org_ID,AD_Client_ID) VALUES (200043,200019,'D','File System','826c7b7b-8412-4b36-a912-dcf4ae56c9c0','FileSystem',TO_DATE('2012-11-23 18:24:03','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2012-11-23 18:24:03','YYYY-MM-DD HH24:MI:SS'),100,'Y',0,0)
+;
+
+-- Nov 23, 2012 6:24:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List_Trl (AD_Language,AD_Ref_List_ID, Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Ref_List_Trl_UU ) SELECT l.AD_Language,t.AD_Ref_List_ID, t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Ref_List t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Ref_List_ID=200043 AND NOT EXISTS (SELECT * FROM AD_Ref_List_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Ref_List_ID=t.AD_Ref_List_ID)
+;
+
+-- Nov 23, 2012 6:24:20 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List (AD_Ref_List_ID,AD_Reference_ID,EntityType,Name,AD_Ref_List_UU,Value,Created,CreatedBy,Updated,UpdatedBy,IsActive,AD_Org_ID,AD_Client_ID) VALUES (200044,200019,'D','Database','f84a4deb-5b8b-4951-86af-3b0ae957ca9b','DB',TO_DATE('2012-11-23 18:24:19','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2012-11-23 18:24:19','YYYY-MM-DD HH24:MI:SS'),100,'Y',0,0)
+;
+
+-- Nov 23, 2012 6:24:20 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List_Trl (AD_Language,AD_Ref_List_ID, Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Ref_List_Trl_UU ) SELECT l.AD_Language,t.AD_Ref_List_ID, t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Ref_List t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Ref_List_ID=200044 AND NOT EXISTS (SELECT * FROM AD_Ref_List_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Ref_List_ID=t.AD_Ref_List_ID)
+;
+
+-- Nov 23, 2012 6:24:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET AD_Reference_Value_ID=200019, AD_Reference_ID=17,Updated=TO_DATE('2012-11-23 18:24:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200970
+;
+
+-- Nov 23, 2012 6:25:36 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET AD_Reference_ID=40,Updated=TO_DATE('2012-11-23 18:25:36','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200971
+;
+
+-- Nov 23, 2012 6:26:11 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Window (Processing,WindowType,IsSOTrx,IsDefault,IsBetaFunctionality,WinHeight,WinWidth,EntityType,Name,AD_Window_ID,AD_Window_UU,Created,Updated,AD_Org_ID,AD_Client_ID,IsActive,UpdatedBy,CreatedBy) VALUES ('N','M','N','N','N',0,0,'D','Storage Provider',200022,'18bd7875-684e-495f-8ecc-0faba7a6ff01',TO_DATE('2012-11-23 18:26:10','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2012-11-23 18:26:10','YYYY-MM-DD HH24:MI:SS'),0,0,'Y',100,100)
+;
+
+-- Nov 23, 2012 6:26:11 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Window_Trl (AD_Language,AD_Window_ID, Help,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Window_Trl_UU ) SELECT l.AD_Language,t.AD_Window_ID, t.Help,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Window t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Window_ID=200022 AND NOT EXISTS (SELECT * FROM AD_Window_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Window_ID=t.AD_Window_ID)
+;
+
+-- Nov 23, 2012 6:27:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Tab (ImportFields,Processing,IsSingleRow,AD_Window_ID,SeqNo,IsTranslationTab,IsSortTab,AD_Table_ID,HasTree,IsInfoTab,IsReadOnly,IsInsertRecord,IsAdvancedTab,TabLevel,AD_Tab_UU,EntityType,Name,Description,AD_Tab_ID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,IsActive) VALUES ('N','N','N',200022,10,'N','N',200037,'N','N','N','Y','N',0,'fc14e1ae-e9b0-40ad-b9f0-d6b7c179762e','D','Storage Provider','Storage Provider',200032,0,0,TO_DATE('2012-11-23 18:26:59','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2012-11-23 18:26:59','YYYY-MM-DD HH24:MI:SS'),100,'Y')
+;
+
+-- Nov 23, 2012 6:27:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Tab_Trl (AD_Language,AD_Tab_ID, Help,CommitWarning,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Tab_Trl_UU ) SELECT l.AD_Language,t.AD_Tab_ID, t.Help,t.CommitWarning,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Tab t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Tab_ID=200032 AND NOT EXISTS (SELECT * FROM AD_Tab_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Tab_ID=t.AD_Tab_ID)
+;
+
+-- Nov 23, 2012 6:27:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,1,'N','N',200968,'Y',200860,'N','There are two methods of making records unavailable in the system: One is to delete the record, the other is to de-activate the record. A de-activated record is not available for selection, but available for reports.
+There are two reasons for de-activating and not deleting records:
+(1) The system requires the record for audit purposes.
+(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.','D','The record is active in the system','Active','92044da6-5e3a-4f05-bd2e-d29cad8240c5','Y','N',100,0,TO_DATE('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200860 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:13 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200961,'Y',200861,'N','D','AD_StorageProvider_ID','46651fa8-435c-4dcf-b4cf-349bb5febf6d','Y','N',100,0,TO_DATE('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:13 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200861 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200962,'Y',200862,'N','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.','D','Client/Tenant for this installation.','Client','a5cc7cd7-d787-43d9-92bc-15a491b94685','Y','N',100,0,TO_DATE('2012-11-23 18:27:13','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:13','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200862 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,255,'N','N',200972,'Y',200863,'N','We store files in folders, especially media files.','D','A folder on a local or remote system to store data into','Folder','a315f114-eb88-449c-873b-59a516f4948a','Y','N',100,0,TO_DATE('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200863 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200970,'Y',200864,'N','D','Method','cbbd3c67-480e-4ae4-b1f8-328d00fc8568','Y','N',100,0,TO_DATE('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200864 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200969,'Y',200865,'N','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.','D','Alphanumeric identifier of the entity','Name','ebf98b82-d1a9-42d3-a4df-df1b4d5aaf70','Y','N',100,0,TO_DATE('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200865 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200963,'Y',200866,'N','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.','D','Organizational entity within client','Organization','3f002c70-92be-4ac1-a4d5-2ae2d3abb581','Y','N',100,0,TO_DATE('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200866 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,255,'N','N',200974,'Y',200867,'N','The Password for this User. Passwords are required to identify authorized users. For Adempiere Users, you can change the password via the Process "Reset Password".','D','Password of any length (case sensitive)','Password','ca62493a-2f21-4060-9fc4-d063d64284ef','Y','N',100,0,TO_DATE('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200867 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200973,'Y',200868,'N','Email of the responsible person for the system (registered in WebStore)','D','Email of the responsible for the System','Registered EMail','cf69a0b9-3b07-48a3-b432-903b08604fe3','Y','N',100,0,TO_DATE('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200868 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,225,'N','N',200971,'Y',200869,'N','The URL defines an fully qualified web address like http://www.idempiere.org','D','Full URL address - e.g. http://www.idempiere.org','URL','d7b49310-21f9-41f2-9a1c-ea54246cf267','Y','N',100,0,TO_DATE('2012-11-23 18:27:17','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:27:17','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200869 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:28:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AD_StorageProvider_UU',200240,'D','AD_StorageProvider_UU','AD_StorageProvider_UU','fb335dc9-54b3-44d7-8ab3-6e8d5957925d',0,TO_DATE('2012-11-23 18:28:25','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2012-11-23 18:28:25','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:28:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200240 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:30:50 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200975,'U','N','N','N',0,'N',36,'N',10,'N',200240,'N','Y','e81e7f51-02b1-4bf7-9707-a01194b3741b','Y','N','AD_StorageProvider_UU','AD_StorageProvider_UU','N',TO_DATE('2012-11-23 18:30:49','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 18:30:49','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:30:50 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200975 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:31:07 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D',Updated=TO_DATE('2012-11-23 18:31:07','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200975
+;
+
+-- Nov 23, 2012 6:31:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,36,'N','N',200975,'Y',200870,'N','D','AD_StorageProvider_UU','d3873062-f913-423a-b7c7-486178e007cb','Y','N',100,0,TO_DATE('2012-11-23 18:31:22','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 18:31:22','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:31:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200870 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=200861
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=200870
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=10,IsDisplayed='Y' WHERE AD_Field_ID=200862
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=20,IsDisplayed='Y' WHERE AD_Field_ID=200866
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=30,IsDisplayed='Y' WHERE AD_Field_ID=200865
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=40,IsDisplayed='Y' WHERE AD_Field_ID=200864
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=50,IsDisplayed='Y' WHERE AD_Field_ID=200869
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=60,IsDisplayed='Y' WHERE AD_Field_ID=200863
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=70,IsDisplayed='Y' WHERE AD_Field_ID=200868
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80,IsDisplayed='Y' WHERE AD_Field_ID=200867
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90,IsDisplayed='Y' WHERE AD_Field_ID=200860
+;
+
+-- Nov 23, 2012 6:34:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2,Updated=TO_DATE('2012-11-23 18:34:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200862
+;
+
+-- Nov 23, 2012 6:34:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, XPosition=4,Updated=TO_DATE('2012-11-23 18:34:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200866
+;
+
+-- Nov 23, 2012 6:35:01 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2,Updated=TO_DATE('2012-11-23 18:35:01','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200865
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, SeqNo=40, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200864
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=5, SeqNo=50,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200869
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=5, SeqNo=60,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200863
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, SeqNo=70,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200868
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200867
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90, XPosition=4,Updated=TO_DATE('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200860
+;
+
+-- Nov 23, 2012 6:40:53 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+CREATE TABLE AD_StorageProvider (AD_Client_ID NUMBER(10) DEFAULT NULL , AD_Org_ID NUMBER(10) DEFAULT NULL , AD_StorageProvider_ID NUMBER(10) DEFAULT NULL , AD_StorageProvider_UU NVARCHAR2(36) DEFAULT NULL , Created DATE DEFAULT NULL , CreatedBy NUMBER(10) DEFAULT NULL , Folder NVARCHAR2(255) DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')), Method NVARCHAR2(60) DEFAULT NULL , Name NVARCHAR2(60) DEFAULT NULL , Password NVARCHAR2(255) DEFAULT NULL , Updated DATE DEFAULT NULL , UpdatedBy NUMBER(10) DEFAULT NULL , URL NVARCHAR2(225) DEFAULT NULL , UserName NVARCHAR2(60) DEFAULT NULL )
+;
+
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Menu (AD_Window_ID,AD_Menu_ID,IsSummary,IsSOTrx,IsReadOnly,EntityType,IsCentrallyMaintained,Name,Description,Action,AD_Menu_UU,IsActive,AD_Client_ID,CreatedBy,Updated,AD_Org_ID,Created,UpdatedBy) VALUES (200022,200027,'N','N','N','D','Y','Storage Provider','Storage Provider','W','4b3344c7-7f1b-445d-8b1d-28774d15c361','Y',0,100,TO_DATE('2012-11-23 19:05:24','YYYY-MM-DD HH24:MI:SS'),0,TO_DATE('2012-11-23 19:05:24','YYYY-MM-DD HH24:MI:SS'),100)
+;
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Menu_Trl (AD_Language,AD_Menu_ID, Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Menu_Trl_UU ) SELECT l.AD_Language,t.AD_Menu_ID, t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Menu t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Menu_ID=200027 AND NOT EXISTS (SELECT * FROM AD_Menu_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Menu_ID=t.AD_Menu_ID)
+;
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_TreeNodeMM (AD_Client_ID,AD_Org_ID, IsActive,Created,CreatedBy,Updated,UpdatedBy, AD_Tree_ID, Node_ID, Parent_ID, SeqNo, AD_TreeNodeMM_UU) SELECT t.AD_Client_ID, 0, 'Y', SysDate, 100, SysDate, 100,t.AD_Tree_ID, 200027, 0, 999, Generate_UUID() FROM AD_Tree t WHERE t.AD_Client_ID=0 AND t.IsActive='Y' AND t.IsAllNodes='Y' AND t.TreeType='MM' AND NOT EXISTS (SELECT * FROM AD_TreeNodeMM e WHERE e.AD_Tree_ID=t.AD_Tree_ID AND Node_ID=200027)
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=0, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=218
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=1, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=153
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=2, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=263
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=3, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=166
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=4, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=203
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=5, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53242
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=6, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=236
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=7, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=183
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=8, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=160
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=9, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=278
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=10, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=345
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=11, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53296
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=12, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=519
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=13, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53014
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=14, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53108
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=15, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=518
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=16, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=200024
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=0, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=200027
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=1, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=261
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=2, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53202
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=3, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=225
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=4, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=200009
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=5, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=148
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=6, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=529
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=7, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=397
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=8, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=532
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=9, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53084
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=10, Updated=SysDate WHERE AD_Tree_ID=10 AND Node_ID=53083
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50158
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50160
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50159
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=120,IsDisplayed='Y' WHERE AD_Field_ID=200594
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=130,IsDisplayed='Y' WHERE AD_Field_ID=200595
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=140,IsDisplayed='Y' WHERE AD_Field_ID=5161
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=150,IsDisplayed='Y' WHERE AD_Field_ID=5162
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=160,IsDisplayed='Y' WHERE AD_Field_ID=5163
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=170,IsDisplayed='Y' WHERE AD_Field_ID=5164
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=180,IsDisplayed='Y' WHERE AD_Field_ID=12099
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=190,IsDisplayed='Y' WHERE AD_Field_ID=12098
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=200,IsDisplayed='Y' WHERE AD_Field_ID=11024
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,IsDisplayed='Y' WHERE AD_Field_ID=50184
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,IsDisplayed='Y' WHERE AD_Field_ID=50185
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,IsDisplayed='Y' WHERE AD_Field_ID=50186
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=240,IsDisplayed='Y' WHERE AD_Field_ID=54238
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=250,IsDisplayed='Y' WHERE AD_Field_ID=54680
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=260,IsDisplayed='Y' WHERE AD_Field_ID=200096
+;
+
+-- Nov 23, 2012 7:18:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_DATE('2012-11-23 19:18:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50184
+;
+
+-- Nov 23, 2012 7:18:27 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_DATE('2012-11-23 19:18:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50186
+;
+
+-- Nov 23, 2012 7:18:46 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_DATE('2012-11-23 19:18:46','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50185
+;
+
+-- Nov 23, 2012 7:20:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AttachmentMethod',200241,'D','AttachmentMethod','Attachment Method','7f8bcec7-f364-4767-9ed6-a2600ef13530',0,TO_DATE('2012-11-23 19:19:59','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2012-11-23 19:19:59','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 7:20:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200241 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 7:20:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,112,200976,'U','N','N','N',0,'N',22,'N',18,'N',200241,'N','Y','5a753477-c244-4624-a325-47647a5552b2','Y','N','AttachmentMethod','AttachmentMethod','Y',TO_DATE('2012-11-23 19:20:54','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-23 19:20:54','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 7:20:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200976 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D', AD_Reference_ID=19, AD_Element_ID=200238, ColumnName='AD_StorageProvider_ID', Description=NULL, Help=NULL, Name='AD_StorageProvider_ID',Updated=TO_DATE('2012-11-23 19:23:58','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200976
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column_Trl SET IsTranslated='N' WHERE AD_Column_ID=200976
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET Name='AD_StorageProvider_ID', Description=NULL, Help=NULL WHERE AD_Column_ID=200976 AND IsCentrallyMaintained='Y'
+;
+
+-- Nov 23, 2012 7:27:30 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (ColumnSpan,NumLines,SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry) VALUES (2,1,0,'N',145,0,'N','N',200976,270,'Y',200871,'N','D','AD_StorageProvider_ID','5f2578c0-0f8c-4278-8a02-574af285a1a9','Y','N',100,0,TO_DATE('2012-11-23 19:27:29','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-23 19:27:29','YYYY-MM-DD HH24:MI:SS'),'Y','Y',270,1,'N')
+;
+
+-- Nov 23, 2012 7:27:30 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200871 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 7:28:02 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,IsDisplayed='Y' WHERE AD_Field_ID=200871
+;
+
+-- Nov 23, 2012 7:28:02 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,IsDisplayed='Y' WHERE AD_Field_ID=50184
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,IsDisplayed='Y' WHERE AD_Field_ID=50185
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=240,IsDisplayed='Y' WHERE AD_Field_ID=50186
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=250,IsDisplayed='Y' WHERE AD_Field_ID=54238
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=260,IsDisplayed='Y' WHERE AD_Field_ID=54680
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=270,IsDisplayed='Y' WHERE AD_Field_ID=200096
+;
+
+
+-- Nov 26, 2012 3:25:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Table SET AccessLevel='7', AD_Window_ID=200022, Name='Storage Provider',Updated=TO_DATE('2012-11-26 15:25:14','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=200037
+;
+
+-- Nov 27, 2012 11:30:00 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,227,201006,'D','N','N','N',0,'N',22,'N',19,'N',200238,'N','Y','0ae144df-50d5-4eb3-aff5-d613a6bbf30d','Y','N','AD_StorageProvider_ID','AD_StorageProvider_ID','Y',TO_DATE('2012-11-27 11:29:58','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2012-11-27 11:29:58','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 27, 2012 11:30:00 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=201006 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 27, 2012 11:31:30 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (ColumnSpan,NumLines,SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry) VALUES (2,1,0,'N',169,0,'N','N',201006,310,'Y',200948,'N','D','AD_StorageProvider_ID','2dfa64e4-aa94-471a-b764-c7bb88f8a684','Y','N',100,0,TO_DATE('2012-11-27 11:31:29','YYYY-MM-DD HH24:MI:SS'),0,100,TO_DATE('2012-11-27 11:31:29','YYYY-MM-DD HH24:MI:SS'),'Y','Y',310,1,'N')
+;
+
+-- Nov 27, 2012 11:31:30 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200948 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 27, 2012 11:43:35 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+ALTER TABLE AD_ClientInfo ADD AD_StorageProvider_ID NUMBER(10) DEFAULT NULL
+;
+
+-- Nov 27, 2012 3:31:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsMandatory='Y',Updated=TO_DATE('2012-11-27 15:31:15','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200969
+;
+
+-- Nov 27, 2012 3:31:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+ALTER TABLE AD_StorageProvider MODIFY Name NVARCHAR2(60)
+;
+
+-- Nov 27, 2012 3:31:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+ALTER TABLE AD_StorageProvider MODIFY Name NOT NULL
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=10,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=904
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=20,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=5346
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=30,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=4727
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=40,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=905
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=50,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1309
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=60,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1310
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=70,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1311
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1312
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=3052
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=100, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200948
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=110,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=3054
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=120,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=9201
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=130,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1564
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=140,Updated=TO_DATE('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1563
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=150,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1562
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=160,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1565
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=170,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1566
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=180,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1567
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=190,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=10319
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=200,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=10320
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57531
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57534
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57535
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=910
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,Updated=TO_DATE('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=911
+;
+
+-- Nov 27, 2012 3:41:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Table SET AccessLevel='6',Updated=TO_DATE('2012-11-27 15:41:55','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=200037
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Element SET PrintName='Storage Provider',Updated=TO_DATE('2012-11-27 15:42:34','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Element_ID=200238
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Element_Trl SET IsTranslated='N' WHERE AD_Element_ID=200238
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_PrintFormatItem pi SET PrintName='Storage Provider', Name='AD_StorageProvider_ID' WHERE IsCentrallyMaintained='Y' AND EXISTS (SELECT * FROM AD_Column c WHERE c.AD_Column_ID=pi.AD_Column_ID AND c.AD_Element_ID=200238)
+;
+
+INSERT INTO ad_storageprovider
+ (ad_client_id,
+ ad_org_id,
+ ad_storageprovider_id,
+ ad_storageprovider_uu,
+ created,
+ createdby,
+ folder,
+ isactive,
+ method,
+ name,
+ password,
+ updated,
+ updatedby,
+ url,
+ username)
+SELECT
+ ad_client_id,
+ 0,
+ nextidfunc(200033,'N'),
+ generate_uuid(),
+ now(),
+ 100,
+ coalesce(windowsattachmentpath, unixattachmentpath),
+ 'Y',
+ 'FileSystem',
+ 'Folder',
+ null,
+ now(),
+ 100,
+ null,
+ null
+FROM ad_client
+WHERE storeattachmentsonfilesystem='Y' AND (windowsattachmentpath is not null or unixattachmentpath is not null)
+;
+
+UPDATE ad_clientinfo
+ SET ad_storageprovider_id = (SELECT ad_storageprovider_id FROM ad_storageprovider WHERE ad_storageprovider.ad_client_id=ad_clientinfo.ad_client_id)
+FROM ad_storageprovider
+WHERE ad_clientinfo.ad_client_id IN
+ (SELECT ad_client_id FROM ad_client WHERE storeattachmentsonfilesystem='Y' AND (windowsattachmentpath is not null or unixattachmentpath is not null))
+;
+
+SELECT register_migration_script('201211281100IDEMPIERE_390.sql') FROM dual
+;
diff --git a/migration/i1.0a-release/postgresql/201211281100IDEMPIERE_390.sql b/migration/i1.0a-release/postgresql/201211281100IDEMPIERE_390.sql
new file mode 100644
index 0000000000..fe24061b88
--- /dev/null
+++ b/migration/i1.0a-release/postgresql/201211281100IDEMPIERE_390.sql
@@ -0,0 +1,1063 @@
+-- Nov 23, 2012 6:06:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Table (ImportTable,CopyColumnsFromTable,IsSecurityEnabled,AccessLevel,LoadSeq,AD_Table_ID,IsHighVolume,IsView,IsChangeLog,EntityType,ReplicationType,AD_Table_UU,IsCentrallyMaintained,IsDeleteable,TableName,Name,AD_Client_ID,IsActive,AD_Org_ID,CreatedBy,Updated,UpdatedBy,Created) VALUES ('N','N','N','3',0,200037,'N','N','N','D','L','3aa0dee7-006f-4e64-b7d4-e361a62736d6','Y','Y','AD_StorageProvider','AD_StorageProvider',0,'Y',0,100,TO_TIMESTAMP('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'))
+;
+
+-- Nov 23, 2012 6:06:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Table_Trl (AD_Language,AD_Table_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Table_Trl_UU ) SELECT l.AD_Language,t.AD_Table_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Table t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Table_ID=200037 AND NOT EXISTS (SELECT * FROM AD_Table_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Table_ID=t.AD_Table_ID)
+;
+
+-- Nov 23, 2012 6:06:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Sequence (StartNewYear,CurrentNextSys,IsTableID,CurrentNext,IsAudited,IsAutoSequence,AD_Sequence_ID,Description,Name,IncrementNo,AD_Sequence_UU,AD_Org_ID,AD_Client_ID,Created,CreatedBy,Updated,UpdatedBy,IsActive,StartNo) VALUES ('N',200000,'Y',1000000,'N','Y',200033,'Table AD_StorageProvider','AD_StorageProvider',1,'e83a2dbe-f8e8-4dfd-be2f-dff711fb8513',0,0,TO_TIMESTAMP('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2012-11-23 18:06:09','YYYY-MM-DD HH24:MI:SS'),100,'Y',1000000)
+;
+
+-- Nov 23, 2012 6:07:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AD_StorageProvider_ID',200238,'D','AD_StorageProvider_ID','AD_StorageProvider_ID','ba365847-2f59-4e6b-b0e0-ccdcf24039fe',0,TO_TIMESTAMP('2012-11-23 18:07:02','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2012-11-23 18:07:02','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:07:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200238 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:07:54 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200961,'D','N','N','N',0,'N',22,'N',13,'N',200238,'N','Y','88580a3a-b7a8-4e65-a94e-0608c96e9b90','Y','N','AD_StorageProvider_ID','AD_StorageProvider_ID','Y',TO_TIMESTAMP('2012-11-23 18:07:53','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:07:53','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:07:54 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200961 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:09:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200962,'D','N','N','N',0,'N',22,'N',19,'N',102,'N','Y','a44813a8-a8b0-41b1-b88e-ed7fbc9a0cc1','Y','N','AD_Client_ID','Client/Tenant for this installation.','@#AD_Client_ID@','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.','Client','N',TO_TIMESTAMP('2012-11-23 18:09:11','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:09:11','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:09:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200962 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:10:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200963,'D','N','N','N',0,'N',22,'N',19,'N',113,'N','Y','63422271-d59a-4917-b4e1-4abf845e7596','Y','N','AD_Org_ID','Organizational entity within client','@#AD_Org_ID@','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.','Organization','N',TO_TIMESTAMP('2012-11-23 18:10:44','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:10:44','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:10:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200963 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:12:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200964,'D','N','N','N',0,'N',7,'N',16,'N',245,'N','Y','0f56c969-9ba2-4eee-b903-127a78204259','Y','N','Created','Date this record was created','The Created field indicates the date that this record was created.','Created','N',TO_TIMESTAMP('2012-11-23 18:12:11','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:12:11','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:12:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200964 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:13:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200965,'D',110,'N','N','N',0,'N',22,'N',18,'N',246,'N','Y','dd621b78-2934-427d-bf2f-04935cb7f71f','Y','N','CreatedBy','User who created this records','The Created By field indicates the user who created this record.','Created By','N',TO_TIMESTAMP('2012-11-23 18:13:09','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:13:09','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:13:10 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200965 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:13:59 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200966,'D','N','N','N',0,'N',7,'N',16,'N',607,'N','Y','b6b79bc1-90f2-4656-bd23-c269bcb7836f','Y','N','Updated','Date this record was updated','The Updated field indicates the date that this record was updated.','Updated','N',TO_TIMESTAMP('2012-11-23 18:13:58','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:13:58','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:13:59 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200966 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:14:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200967,'U',110,'N','N','N',0,'N',22,'N',18,'N',608,'N','Y','ca82ad38-95d9-4b19-b817-983664a8d448','Y','N','UpdatedBy','User who updated this records','The Updated By field indicates the user who updated this record.','Updated By','N',TO_TIMESTAMP('2012-11-23 18:14:37','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:14:37','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:14:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200967 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:15:19 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,DefaultValue,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200968,'D','N','N','N',0,'N',1,'N',20,'N',348,'N','Y','8a3bef85-7886-4415-9721-1276a2d4ddf8','Y','N','IsActive','The record is active in the system','Y','There are two methods of making records unavailable in the system: One is to delete the record, the other is to de-activate the record. A de-activated record is not available for selection, but available for reports.
+There are two reasons for de-activating and not deleting records:
+(1) The system requires the record for audit purposes.
+(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.','Active','N',TO_TIMESTAMP('2012-11-23 18:15:18','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:15:18','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:15:19 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200968 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:17:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200969,'D','N','N','N',0,'N',60,'Y',10,'N',469,'N','Y','0f1f3927-5c86-414a-b973-6c9505d1a62e','Y','N','Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.','Name','Y',TO_TIMESTAMP('2012-11-23 18:17:08','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:17:08','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:17:09 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200969 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:17:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('Method',200239,'D','Method','Method','acaddc54-113d-4603-a94f-8c2f6beb5310',0,TO_TIMESTAMP('2012-11-23 18:17:45','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2012-11-23 18:17:45','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:17:45 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200239 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:18:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200970,'D','N','N','N',0,'N',60,'N',10,'N',200239,'N','Y','14790a4c-b78f-42f4-b7f8-13f63cffcdbe','Y','N','Method','Method','Y',TO_TIMESTAMP('2012-11-23 18:18:14','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:18:14','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:18:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200970 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:19:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200971,'D','N','N','N',0,'N',225,'N',10,'N',983,'N','Y','9a741611-a86a-4360-81b2-7b8f618ba941','Y','N','URL','Full URL address - e.g. http://www.idempiere.org','The URL defines an fully qualified web address like http://www.idempiere.org','URL','Y',TO_TIMESTAMP('2012-11-23 18:18:59','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:18:59','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:19:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200971 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:19:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200972,'D','N','N','N',0,'N',255,'N',10,'N',3012,'N','Y','45e0f607-c654-456b-84df-066c2d229a18','Y','N','Folder','A folder on a local or remote system to store data into','We store files in folders, especially media files.','Folder','Y',TO_TIMESTAMP('2012-11-23 18:19:38','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:19:38','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:19:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200972 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:21:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200973,'D','N','N','N',0,'N',60,'Y',10,'N',1903,'N','Y','2081bd64-ca7b-4bbf-8a30-a3229f2e9ef4','Y','N','UserName','Email of the responsible for the System','Email of the responsible person for the system (registered in WebStore)','Registered EMail','Y',TO_TIMESTAMP('2012-11-23 18:21:22','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:21:22','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:21:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200973 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:22:06 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Description,Help,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200974,'D','N','N','N',0,'N',255,'N',10,'N',498,'N','Y','8db1ec5a-9c4f-44ed-bd78-efdf84114534','Y','N','Password','Password of any length (case sensitive)','The Password for this User. Passwords are required to identify authorized users. For Adempiere Users, you can change the password via the Process "Reset Password".','Password','Y',TO_TIMESTAMP('2012-11-23 18:22:05','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:22:05','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:22:06 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200974 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:22:33 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D',Updated=TO_TIMESTAMP('2012-11-23 18:22:33','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200967
+;
+
+-- Nov 23, 2012 6:23:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Reference (AD_Reference_ID,Name,EntityType,AD_Reference_UU,IsOrderByValue,Description,ValidationType,AD_Client_ID,AD_Org_ID,CreatedBy,Updated,IsActive,Created,UpdatedBy) VALUES (200019,'StorageProvider','D','b4cb87d1-d08f-4987-8f66-9f923d68ec2f','N','StorageProvider','L',0,0,100,TO_TIMESTAMP('2012-11-23 18:23:38','YYYY-MM-DD HH24:MI:SS'),'Y',TO_TIMESTAMP('2012-11-23 18:23:38','YYYY-MM-DD HH24:MI:SS'),100)
+;
+
+-- Nov 23, 2012 6:23:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Reference_Trl (AD_Language,AD_Reference_ID, Help,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Reference_Trl_UU ) SELECT l.AD_Language,t.AD_Reference_ID, t.Help,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Reference t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Reference_ID=200019 AND NOT EXISTS (SELECT * FROM AD_Reference_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Reference_ID=t.AD_Reference_ID)
+;
+
+-- Nov 23, 2012 6:24:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List (AD_Ref_List_ID,AD_Reference_ID,EntityType,Name,AD_Ref_List_UU,Value,Created,CreatedBy,Updated,UpdatedBy,IsActive,AD_Org_ID,AD_Client_ID) VALUES (200043,200019,'D','File System','826c7b7b-8412-4b36-a912-dcf4ae56c9c0','FileSystem',TO_TIMESTAMP('2012-11-23 18:24:03','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2012-11-23 18:24:03','YYYY-MM-DD HH24:MI:SS'),100,'Y',0,0)
+;
+
+-- Nov 23, 2012 6:24:04 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List_Trl (AD_Language,AD_Ref_List_ID, Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Ref_List_Trl_UU ) SELECT l.AD_Language,t.AD_Ref_List_ID, t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Ref_List t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Ref_List_ID=200043 AND NOT EXISTS (SELECT * FROM AD_Ref_List_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Ref_List_ID=t.AD_Ref_List_ID)
+;
+
+-- Nov 23, 2012 6:24:20 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List (AD_Ref_List_ID,AD_Reference_ID,EntityType,Name,AD_Ref_List_UU,Value,Created,CreatedBy,Updated,UpdatedBy,IsActive,AD_Org_ID,AD_Client_ID) VALUES (200044,200019,'D','Database','f84a4deb-5b8b-4951-86af-3b0ae957ca9b','DB',TO_TIMESTAMP('2012-11-23 18:24:19','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2012-11-23 18:24:19','YYYY-MM-DD HH24:MI:SS'),100,'Y',0,0)
+;
+
+-- Nov 23, 2012 6:24:20 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Ref_List_Trl (AD_Language,AD_Ref_List_ID, Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Ref_List_Trl_UU ) SELECT l.AD_Language,t.AD_Ref_List_ID, t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Ref_List t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Ref_List_ID=200044 AND NOT EXISTS (SELECT * FROM AD_Ref_List_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Ref_List_ID=t.AD_Ref_List_ID)
+;
+
+-- Nov 23, 2012 6:24:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET AD_Reference_Value_ID=200019, AD_Reference_ID=17,Updated=TO_TIMESTAMP('2012-11-23 18:24:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200970
+;
+
+-- Nov 23, 2012 6:25:36 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET AD_Reference_ID=40,Updated=TO_TIMESTAMP('2012-11-23 18:25:36','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200971
+;
+
+-- Nov 23, 2012 6:26:11 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Window (Processing,WindowType,IsSOTrx,IsDefault,IsBetaFunctionality,WinHeight,WinWidth,EntityType,Name,AD_Window_ID,AD_Window_UU,Created,Updated,AD_Org_ID,AD_Client_ID,IsActive,UpdatedBy,CreatedBy) VALUES ('N','M','N','N','N',0,0,'D','Storage Provider',200022,'18bd7875-684e-495f-8ecc-0faba7a6ff01',TO_TIMESTAMP('2012-11-23 18:26:10','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2012-11-23 18:26:10','YYYY-MM-DD HH24:MI:SS'),0,0,'Y',100,100)
+;
+
+-- Nov 23, 2012 6:26:11 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Window_Trl (AD_Language,AD_Window_ID, Help,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Window_Trl_UU ) SELECT l.AD_Language,t.AD_Window_ID, t.Help,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Window t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Window_ID=200022 AND NOT EXISTS (SELECT * FROM AD_Window_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Window_ID=t.AD_Window_ID)
+;
+
+-- Nov 23, 2012 6:27:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Tab (ImportFields,Processing,IsSingleRow,AD_Window_ID,SeqNo,IsTranslationTab,IsSortTab,AD_Table_ID,HasTree,IsInfoTab,IsReadOnly,IsInsertRecord,IsAdvancedTab,TabLevel,AD_Tab_UU,EntityType,Name,Description,AD_Tab_ID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,IsActive) VALUES ('N','N','N',200022,10,'N','N',200037,'N','N','N','Y','N',0,'fc14e1ae-e9b0-40ad-b9f0-d6b7c179762e','D','Storage Provider','Storage Provider',200032,0,0,TO_TIMESTAMP('2012-11-23 18:26:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2012-11-23 18:26:59','YYYY-MM-DD HH24:MI:SS'),100,'Y')
+;
+
+-- Nov 23, 2012 6:27:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Tab_Trl (AD_Language,AD_Tab_ID, Help,CommitWarning,Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Tab_Trl_UU ) SELECT l.AD_Language,t.AD_Tab_ID, t.Help,t.CommitWarning,t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Tab t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Tab_ID=200032 AND NOT EXISTS (SELECT * FROM AD_Tab_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Tab_ID=t.AD_Tab_ID)
+;
+
+-- Nov 23, 2012 6:27:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,1,'N','N',200968,'Y',200860,'N','There are two methods of making records unavailable in the system: One is to delete the record, the other is to de-activate the record. A de-activated record is not available for selection, but available for reports.
+There are two reasons for de-activating and not deleting records:
+(1) The system requires the record for audit purposes.
+(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.','D','The record is active in the system','Active','92044da6-5e3a-4f05-bd2e-d29cad8240c5','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:12 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200860 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:13 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200961,'Y',200861,'N','D','AD_StorageProvider_ID','46651fa8-435c-4dcf-b4cf-349bb5febf6d','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:12','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:13 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200861 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200962,'Y',200862,'N','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.','D','Client/Tenant for this installation.','Client','a5cc7cd7-d787-43d9-92bc-15a491b94685','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:13','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:13','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200862 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,255,'N','N',200972,'Y',200863,'N','We store files in folders, especially media files.','D','A folder on a local or remote system to store data into','Folder','a315f114-eb88-449c-873b-59a516f4948a','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200863 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200970,'Y',200864,'N','D','Method','cbbd3c67-480e-4ae4-b1f8-328d00fc8568','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:14','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200864 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200969,'Y',200865,'N','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.','D','Alphanumeric identifier of the entity','Name','ebf98b82-d1a9-42d3-a4df-df1b4d5aaf70','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200865 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,22,'N','N',200963,'Y',200866,'N','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.','D','Organizational entity within client','Organization','3f002c70-92be-4ac1-a4d5-2ae2d3abb581','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:15','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200866 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,255,'N','N',200974,'Y',200867,'N','The Password for this User. Passwords are required to identify authorized users. For Adempiere Users, you can change the password via the Process "Reset Password".','D','Password of any length (case sensitive)','Password','ca62493a-2f21-4060-9fc4-d063d64284ef','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200867 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,60,'N','N',200973,'Y',200868,'N','Email of the responsible person for the system (registered in WebStore)','D','Email of the responsible for the System','Registered EMail','cf69a0b9-3b07-48a3-b432-903b08604fe3','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:16','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200868 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,Help,EntityType,Description,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,225,'N','N',200971,'Y',200869,'N','The URL defines an fully qualified web address like http://www.idempiere.org','D','Full URL address - e.g. http://www.idempiere.org','URL','d7b49310-21f9-41f2-9a1c-ea54246cf267','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:27:17','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:27:17','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:27:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200869 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:28:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AD_StorageProvider_UU',200240,'D','AD_StorageProvider_UU','AD_StorageProvider_UU','fb335dc9-54b3-44d7-8ab3-6e8d5957925d',0,TO_TIMESTAMP('2012-11-23 18:28:25','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2012-11-23 18:28:25','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 6:28:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200240 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 6:30:50 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,200037,200975,'U','N','N','N',0,'N',36,'N',10,'N',200240,'N','Y','e81e7f51-02b1-4bf7-9707-a01194b3741b','Y','N','AD_StorageProvider_UU','AD_StorageProvider_UU','N',TO_TIMESTAMP('2012-11-23 18:30:49','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 18:30:49','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 6:30:50 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200975 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 6:31:07 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D',Updated=TO_TIMESTAMP('2012-11-23 18:31:07','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200975
+;
+
+-- Nov 23, 2012 6:31:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive) VALUES ('N',200032,36,'N','N',200975,'Y',200870,'N','D','AD_StorageProvider_UU','d3873062-f913-423a-b7c7-486178e007cb','Y','N',100,0,TO_TIMESTAMP('2012-11-23 18:31:22','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 18:31:22','YYYY-MM-DD HH24:MI:SS'),'Y')
+;
+
+-- Nov 23, 2012 6:31:23 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200870 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=200861
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=200870
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=10,IsDisplayed='Y' WHERE AD_Field_ID=200862
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=20,IsDisplayed='Y' WHERE AD_Field_ID=200866
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=30,IsDisplayed='Y' WHERE AD_Field_ID=200865
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=40,IsDisplayed='Y' WHERE AD_Field_ID=200864
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=50,IsDisplayed='Y' WHERE AD_Field_ID=200869
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=60,IsDisplayed='Y' WHERE AD_Field_ID=200863
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=70,IsDisplayed='Y' WHERE AD_Field_ID=200868
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80,IsDisplayed='Y' WHERE AD_Field_ID=200867
+;
+
+-- Nov 23, 2012 6:32:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90,IsDisplayed='Y' WHERE AD_Field_ID=200860
+;
+
+-- Nov 23, 2012 6:34:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2,Updated=TO_TIMESTAMP('2012-11-23 18:34:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200862
+;
+
+-- Nov 23, 2012 6:34:39 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, XPosition=4,Updated=TO_TIMESTAMP('2012-11-23 18:34:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200866
+;
+
+-- Nov 23, 2012 6:35:01 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2,Updated=TO_TIMESTAMP('2012-11-23 18:35:01','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200865
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, SeqNo=40, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200864
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=5, SeqNo=50,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200869
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=5, SeqNo=60,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200863
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET ColumnSpan=2, SeqNo=70,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200868
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200867
+;
+
+-- Nov 23, 2012 6:36:40 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90, XPosition=4,Updated=TO_TIMESTAMP('2012-11-23 18:36:40','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200860
+;
+
+-- Nov 23, 2012 6:40:53 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+CREATE TABLE AD_StorageProvider (AD_Client_ID NUMERIC(10) DEFAULT NULL , AD_Org_ID NUMERIC(10) DEFAULT NULL , AD_StorageProvider_ID NUMERIC(10) DEFAULT NULL , AD_StorageProvider_UU VARCHAR(36) DEFAULT NULL , Created TIMESTAMP DEFAULT NULL , CreatedBy NUMERIC(10) DEFAULT NULL , Folder VARCHAR(255) DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')), Method VARCHAR(60) DEFAULT NULL , Name VARCHAR(60) DEFAULT NULL , Password VARCHAR(255) DEFAULT NULL , Updated TIMESTAMP DEFAULT NULL , UpdatedBy NUMERIC(10) DEFAULT NULL , URL VARCHAR(225) DEFAULT NULL , UserName VARCHAR(60) DEFAULT NULL )
+;
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Menu (AD_Window_ID,AD_Menu_ID,IsSummary,IsSOTrx,IsReadOnly,EntityType,IsCentrallyMaintained,Name,Description,"action",AD_Menu_UU,IsActive,AD_Client_ID,CreatedBy,Updated,AD_Org_ID,Created,UpdatedBy) VALUES (200022,200027,'N','N','N','D','Y','Storage Provider','Storage Provider','W','4b3344c7-7f1b-445d-8b1d-28774d15c361','Y',0,100,TO_TIMESTAMP('2012-11-23 19:05:24','YYYY-MM-DD HH24:MI:SS'),0,TO_TIMESTAMP('2012-11-23 19:05:24','YYYY-MM-DD HH24:MI:SS'),100)
+;
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Menu_Trl (AD_Language,AD_Menu_ID, Name,Description, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Menu_Trl_UU ) SELECT l.AD_Language,t.AD_Menu_ID, t.Name,t.Description, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Menu t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Menu_ID=200027 AND NOT EXISTS (SELECT * FROM AD_Menu_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Menu_ID=t.AD_Menu_ID)
+;
+
+-- Nov 23, 2012 7:05:25 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_TreeNodeMM (AD_Client_ID,AD_Org_ID, IsActive,Created,CreatedBy,Updated,UpdatedBy, AD_Tree_ID, Node_ID, Parent_ID, SeqNo, AD_TreeNodeMM_UU) SELECT t.AD_Client_ID, 0, 'Y', CURRENT_TIMESTAMP, 100, CURRENT_TIMESTAMP, 100,t.AD_Tree_ID, 200027, 0, 999, Generate_UUID() FROM AD_Tree t WHERE t.AD_Client_ID=0 AND t.IsActive='Y' AND t.IsAllNodes='Y' AND t.TreeType='MM' AND NOT EXISTS (SELECT * FROM AD_TreeNodeMM e WHERE e.AD_Tree_ID=t.AD_Tree_ID AND Node_ID=200027)
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=0, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=218
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=1, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=153
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=2, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=263
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=3, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=166
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=4, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=203
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=5, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53242
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=6, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=236
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=7, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=183
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=8, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=160
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=9, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=278
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=10, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=345
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=11, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53296
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=12, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=519
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=13, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53014
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=14, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53108
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=15, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=518
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=16, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=200024
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=0, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=200027
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=1, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=261
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=2, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53202
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=3, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=225
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=4, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=200009
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=5, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=148
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=6, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=529
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=7, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=397
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=8, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=532
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=9, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53084
+;
+
+-- Nov 23, 2012 7:05:57 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_TreeNodeMM SET Parent_ID=156, SeqNo=10, Updated=CURRENT_TIMESTAMP WHERE AD_Tree_ID=10 AND Node_ID=53083
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50158
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50160
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,IsDisplayed='N' WHERE AD_Field_ID=50159
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=120,IsDisplayed='Y' WHERE AD_Field_ID=200594
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=130,IsDisplayed='Y' WHERE AD_Field_ID=200595
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=140,IsDisplayed='Y' WHERE AD_Field_ID=5161
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=150,IsDisplayed='Y' WHERE AD_Field_ID=5162
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=160,IsDisplayed='Y' WHERE AD_Field_ID=5163
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=170,IsDisplayed='Y' WHERE AD_Field_ID=5164
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=180,IsDisplayed='Y' WHERE AD_Field_ID=12099
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=190,IsDisplayed='Y' WHERE AD_Field_ID=12098
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=200,IsDisplayed='Y' WHERE AD_Field_ID=11024
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,IsDisplayed='Y' WHERE AD_Field_ID=50184
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,IsDisplayed='Y' WHERE AD_Field_ID=50185
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,IsDisplayed='Y' WHERE AD_Field_ID=50186
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=240,IsDisplayed='Y' WHERE AD_Field_ID=54238
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=250,IsDisplayed='Y' WHERE AD_Field_ID=54680
+;
+
+-- Nov 23, 2012 7:17:26 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=260,IsDisplayed='Y' WHERE AD_Field_ID=200096
+;
+
+-- Nov 23, 2012 7:18:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_TIMESTAMP('2012-11-23 19:18:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50184
+;
+
+-- Nov 23, 2012 7:18:27 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_TIMESTAMP('2012-11-23 19:18:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50186
+;
+
+-- Nov 23, 2012 7:18:46 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsActive='N',Updated=TO_TIMESTAMP('2012-11-23 19:18:46','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=50185
+;
+
+-- Nov 23, 2012 7:20:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element (ColumnName,AD_Element_ID,EntityType,Name,PrintName,AD_Element_UU,AD_Client_ID,Created,Updated,AD_Org_ID,CreatedBy,UpdatedBy,IsActive) VALUES ('AttachmentMethod',200241,'D','AttachmentMethod','Attachment Method','7f8bcec7-f364-4767-9ed6-a2600ef13530',0,TO_TIMESTAMP('2012-11-23 19:19:59','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2012-11-23 19:19:59','YYYY-MM-DD HH24:MI:SS'),0,100,100,'Y')
+;
+
+-- Nov 23, 2012 7:20:00 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Element_Trl (AD_Language,AD_Element_ID, Help,PO_Description,PO_Help,Name,Description,PrintName,PO_Name,PO_PrintName, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Element_Trl_UU ) SELECT l.AD_Language,t.AD_Element_ID, t.Help,t.PO_Description,t.PO_Help,t.Name,t.Description,t.PrintName,t.PO_Name,t.PO_PrintName, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Element t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Element_ID=200241 AND NOT EXISTS (SELECT * FROM AD_Element_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Element_ID=t.AD_Element_ID)
+;
+
+-- Nov 23, 2012 7:20:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,112,200976,'U','N','N','N',0,'N',22,'N',18,'N',200241,'N','Y','5a753477-c244-4624-a325-47647a5552b2','Y','N','AttachmentMethod','AttachmentMethod','Y',TO_TIMESTAMP('2012-11-23 19:20:54','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-23 19:20:54','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 23, 2012 7:20:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=200976 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET EntityType='D', AD_Reference_ID=19, AD_Element_ID=200238, ColumnName='AD_StorageProvider_ID', Description=NULL, Help=NULL, Name='AD_StorageProvider_ID',Updated=TO_TIMESTAMP('2012-11-23 19:23:58','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200976
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column_Trl SET IsTranslated='N' WHERE AD_Column_ID=200976
+;
+
+-- Nov 23, 2012 7:23:58 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET Name='AD_StorageProvider_ID', Description=NULL, Help=NULL WHERE AD_Column_ID=200976 AND IsCentrallyMaintained='Y'
+;
+
+-- Nov 23, 2012 7:27:30 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (ColumnSpan,NumLines,SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry) VALUES (2,1,0,'N',145,0,'N','N',200976,270,'Y',200871,'N','D','AD_StorageProvider_ID','5f2578c0-0f8c-4278-8a02-574af285a1a9','Y','N',100,0,TO_TIMESTAMP('2012-11-23 19:27:29','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-23 19:27:29','YYYY-MM-DD HH24:MI:SS'),'Y','Y',270,1,'N')
+;
+
+-- Nov 23, 2012 7:27:30 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200871 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+-- Nov 23, 2012 7:28:02 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,IsDisplayed='Y' WHERE AD_Field_ID=200871
+;
+
+-- Nov 23, 2012 7:28:02 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,IsDisplayed='Y' WHERE AD_Field_ID=50184
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,IsDisplayed='Y' WHERE AD_Field_ID=50185
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=240,IsDisplayed='Y' WHERE AD_Field_ID=50186
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=250,IsDisplayed='Y' WHERE AD_Field_ID=54238
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=260,IsDisplayed='Y' WHERE AD_Field_ID=54680
+;
+
+-- Nov 23, 2012 7:28:03 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=270,IsDisplayed='Y' WHERE AD_Field_ID=200096
+;
+
+-- Nov 26, 2012 3:25:14 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Table SET AccessLevel='7', AD_Window_ID=200022, Name='Storage Provider',Updated=TO_TIMESTAMP('2012-11-26 15:25:14','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=200037
+;
+
+
+-- Nov 27, 2012 11:30:00 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,IsEncrypted,Version,AD_Table_ID,AD_Column_ID,EntityType,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,AD_Element_ID,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,IsAlwaysUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,AD_Client_ID,IsToolbarButton) VALUES (0,'N','N',0,227,201006,'D','N','N','N',0,'N',22,'N',19,'N',200238,'N','Y','0ae144df-50d5-4eb3-aff5-d613a6bbf30d','Y','N','AD_StorageProvider_ID','AD_StorageProvider_ID','Y',TO_TIMESTAMP('2012-11-27 11:29:58','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2012-11-27 11:29:58','YYYY-MM-DD HH24:MI:SS'),100,0,'N')
+;
+
+-- Nov 27, 2012 11:30:00 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Column_Trl (AD_Language,AD_Column_ID, Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Column_Trl_UU ) SELECT l.AD_Language,t.AD_Column_ID, t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Column t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Column_ID=201006 AND NOT EXISTS (SELECT * FROM AD_Column_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Column_ID=t.AD_Column_ID)
+;
+
+-- Nov 27, 2012 11:31:30 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field (ColumnSpan,NumLines,SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,AD_Client_ID,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry) VALUES (2,1,0,'N',169,0,'N','N',201006,310,'Y',200948,'N','D','AD_StorageProvider_ID','2dfa64e4-aa94-471a-b764-c7bb88f8a684','Y','N',100,0,TO_TIMESTAMP('2012-11-27 11:31:29','YYYY-MM-DD HH24:MI:SS'),0,100,TO_TIMESTAMP('2012-11-27 11:31:29','YYYY-MM-DD HH24:MI:SS'),'Y','Y',310,1,'N')
+;
+
+-- Nov 27, 2012 11:31:30 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO AD_Field_Trl (AD_Language,AD_Field_ID, Help,Description,Name, IsTranslated,AD_Client_ID,AD_Org_ID,Created,Createdby,Updated,UpdatedBy,AD_Field_Trl_UU ) SELECT l.AD_Language,t.AD_Field_ID, t.Help,t.Description,t.Name, 'N',t.AD_Client_ID,t.AD_Org_ID,t.Created,t.Createdby,t.Updated,t.UpdatedBy,Generate_UUID() FROM AD_Language l, AD_Field t WHERE l.IsActive='Y' AND l.IsSystemLanguage='Y' AND l.IsBaseLanguage='N' AND t.AD_Field_ID=200948 AND NOT EXISTS (SELECT * FROM AD_Field_Trl tt WHERE tt.AD_Language=l.AD_Language AND tt.AD_Field_ID=t.AD_Field_ID)
+;
+
+
+-- Nov 27, 2012 11:43:35 AM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+ALTER TABLE AD_ClientInfo ADD COLUMN AD_StorageProvider_ID NUMERIC(10) DEFAULT NULL
+;
+
+-- Nov 27, 2012 3:31:15 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Column SET IsMandatory='Y',Updated=TO_TIMESTAMP('2012-11-27 15:31:15','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=200969
+;
+
+-- Nov 27, 2012 3:31:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO t_alter_column values('ad_storageprovider','Name','VARCHAR(60)',null,null)
+;
+
+-- Nov 27, 2012 3:31:38 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+INSERT INTO t_alter_column values('ad_storageprovider','Name',null,'NOT NULL',null)
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=10,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=904
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=20,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=5346
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=30,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=4727
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=40,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=905
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=50,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1309
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=60,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1310
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=70,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1311
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=80,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1312
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=90,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=3052
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=100, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200948
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=110,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=3054
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=120,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=9201
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=130,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1564
+;
+
+-- Nov 27, 2012 3:40:16 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=140,Updated=TO_TIMESTAMP('2012-11-27 15:40:16','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1563
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=150,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1562
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=160,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1565
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=170,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1566
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=180,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=1567
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=190,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=10319
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=200,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=10320
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=210,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57531
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=220,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57534
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=230,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57535
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=910
+;
+
+-- Nov 27, 2012 3:40:17 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Field SET SeqNo=0,Updated=TO_TIMESTAMP('2012-11-27 15:40:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=911
+;
+
+-- Nov 27, 2012 3:41:55 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Table SET AccessLevel='6',Updated=TO_TIMESTAMP('2012-11-27 15:41:55','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=200037
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Element SET PrintName='Storage Provider',Updated=TO_TIMESTAMP('2012-11-27 15:42:34','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Element_ID=200238
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_Element_Trl SET IsTranslated='N' WHERE AD_Element_ID=200238
+;
+
+-- Nov 27, 2012 3:42:34 PM COT
+-- IDEMPIERE-390 Attachments/archives on load balancer scenario
+UPDATE AD_PrintFormatItem SET PrintName='Storage Provider', Name='AD_StorageProvider_ID' WHERE IsCentrallyMaintained='Y' AND EXISTS (SELECT * FROM AD_Column c WHERE c.AD_Column_ID=AD_PrintFormatItem.AD_Column_ID AND c.AD_Element_ID=200238)
+;
+
+INSERT INTO ad_storageprovider
+ (ad_client_id,
+ ad_org_id,
+ ad_storageprovider_id,
+ ad_storageprovider_uu,
+ created,
+ createdby,
+ folder,
+ isactive,
+ method,
+ name,
+ password,
+ updated,
+ updatedby,
+ url,
+ username)
+SELECT
+ ad_client_id,
+ 0,
+ nextidfunc(200033,'N'),
+ generate_uuid(),
+ now(),
+ 100,
+ coalesce(windowsattachmentpath, unixattachmentpath),
+ 'Y',
+ 'FileSystem',
+ 'Folder',
+ null,
+ now(),
+ 100,
+ null,
+ null
+FROM ad_client
+WHERE storeattachmentsonfilesystem='Y' AND (windowsattachmentpath is not null or unixattachmentpath is not null)
+;
+
+UPDATE ad_clientinfo
+ SET ad_storageprovider_id = (SELECT ad_storageprovider_id FROM ad_storageprovider WHERE ad_storageprovider.ad_client_id=ad_clientinfo.ad_client_id)
+FROM ad_storageprovider
+WHERE ad_clientinfo.ad_client_id IN
+ (SELECT ad_client_id FROM ad_client WHERE storeattachmentsonfilesystem='Y' AND (windowsattachmentpath is not null or unixattachmentpath is not null))
+;
+
+SELECT register_migration_script('201211281100IDEMPIERE_390.sql') FROM dual
+;
diff --git a/org.adempiere.base/META-INF/MANIFEST.MF b/org.adempiere.base/META-INF/MANIFEST.MF
index e21a2ebef5..a545b4df79 100644
--- a/org.adempiere.base/META-INF/MANIFEST.MF
+++ b/org.adempiere.base/META-INF/MANIFEST.MF
@@ -290,6 +290,6 @@ Import-Package: com.sun.mail.auth;version="1.4.5",
Eclipse-BuddyPolicy: registered
Eclipse-ExtensibleAPI: true
Bundle-Activator: org.adempiere.base.BaseActivator
-Service-Component: OSGI-INF/eventmanager.xml, OSGI-INF/dslocator.xml, OSGI-INF/extensionlocator.xml, OSGI-INF/serverbean.xml, OSGI-INF/statusbean.xml, OSGI-INF/defaultmodelfactory.xml, OSGI-INF/defaultdocfactory.xml
+Service-Component: OSGI-INF/eventmanager.xml, OSGI-INF/dslocator.xml, OSGI-INF/extensionlocator.xml, OSGI-INF/serverbean.xml, OSGI-INF/statusbean.xml, OSGI-INF/defaultmodelfactory.xml, OSGI-INF/defaultdocfactory.xml, OSGI-INF/AttachmentFile.xml, OSGI-INF/AttachmentDB.xml
Bundle-ActivationPolicy: lazy
Require-Bundle: org.eclipse.equinox.app;bundle-version="1.3.1"
diff --git a/org.adempiere.base/OSGI-INF/AttachmentDB.xml b/org.adempiere.base/OSGI-INF/AttachmentDB.xml
new file mode 100644
index 0000000000..51232ec3a1
--- /dev/null
+++ b/org.adempiere.base/OSGI-INF/AttachmentDB.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.base/OSGI-INF/AttachmentFile.xml b/org.adempiere.base/OSGI-INF/AttachmentFile.xml
new file mode 100644
index 0000000000..41b3a0535b
--- /dev/null
+++ b/org.adempiere.base/OSGI-INF/AttachmentFile.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.base/src/org/compiere/model/AttachmentDBSystem.java b/org.adempiere.base/src/org/compiere/model/AttachmentDBSystem.java
new file mode 100644
index 0000000000..324005b78b
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/AttachmentDBSystem.java
@@ -0,0 +1,135 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 2012 Trek Global *
+ * This program is free software; you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ *****************************************************************************/
+
+package org.compiere.model;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.util.ArrayList;
+import java.util.logging.Level;
+import java.util.zip.Deflater;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+import java.util.zip.ZipOutputStream;
+
+import org.compiere.util.CLogger;
+
+public class AttachmentDBSystem implements IAttachmentStore
+{
+
+ /** Indicator for zip data */
+ public static final String ZIP = "zip";
+ private final CLogger log = CLogger.getCLogger(getClass());
+
+
+ @Override
+ public boolean loadLOBData(MAttachment attach, MStorageProvider prov) {
+// Reset
+ attach.m_items = new ArrayList();
+ //
+ byte[] data = attach.getBinaryData();
+ if (data == null)
+ return true;
+ log.fine("ZipSize=" + data.length);
+ if (data.length == 0)
+ return true;
+
+ // Old Format - single file
+ if (!ZIP.equals(attach.getTitle()))
+ {
+ attach.m_items.add (new MAttachmentEntry(attach.getTitle(), data, 1));
+ return true;
+ }
+
+ try
+ {
+ ByteArrayInputStream in = new ByteArrayInputStream(data);
+ ZipInputStream zip = new ZipInputStream (in);
+ ZipEntry entry = zip.getNextEntry();
+ while (entry != null)
+ {
+ String name = entry.getName();
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ byte[] buffer = new byte[2048];
+ int length = zip.read(buffer);
+ while (length != -1)
+ {
+ out.write(buffer, 0, length);
+ length = zip.read(buffer);
+ }
+ //
+ byte[] dataEntry = out.toByteArray();
+ log.fine(name
+ + " - size=" + dataEntry.length + " - zip="
+ + entry.getCompressedSize() + "(" + entry.getSize() + ") "
+ + (entry.getCompressedSize()*100/entry.getSize())+ "%");
+ //
+ attach.m_items.add (new MAttachmentEntry (name, dataEntry, attach.m_items.size()+1));
+ entry = zip.getNextEntry();
+ }
+ }
+ catch (Exception e)
+ {
+ log.log(Level.SEVERE, "loadLOBData", e);
+ attach.m_items = null;
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public boolean save(MAttachment attach, MStorageProvider prov) {
+ if (attach.m_items == null || attach.m_items.size() == 0)
+ {
+ attach.setBinaryData(null);
+ return true;
+ }
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ ZipOutputStream zip = new ZipOutputStream(out);
+ zip.setMethod(ZipOutputStream.DEFLATED);
+ zip.setLevel(Deflater.BEST_COMPRESSION);
+ zip.setComment("adempiere");
+ //
+ try
+ {
+ for (int i = 0; i < attach.m_items.size(); i++)
+ {
+ MAttachmentEntry item = attach.getEntry(i);
+ ZipEntry entry = new ZipEntry(item.getName());
+ entry.setTime(System.currentTimeMillis());
+ entry.setMethod(ZipEntry.DEFLATED);
+ zip.putNextEntry(entry);
+ byte[] data = item.getData();
+ zip.write (data, 0, data.length);
+ zip.closeEntry();
+ log.fine(entry.getName() + " - "
+ + entry.getCompressedSize() + " (" + entry.getSize() + ") "
+ + (entry.getCompressedSize()*100/entry.getSize())+ "%");
+ }
+ // zip.finish();
+ zip.close();
+ byte[] zipData = out.toByteArray();
+ log.fine("Length=" + zipData.length);
+ attach.setBinaryData(zipData);
+ return true;
+ }
+ catch (Exception e)
+ {
+ log.log(Level.SEVERE, "saveLOBData", e);
+ }
+ attach.setBinaryData(null);
+ return false;
+ }
+
+}
diff --git a/org.adempiere.base/src/org/compiere/model/AttachmentFileSystem.java b/org.adempiere.base/src/org/compiere/model/AttachmentFileSystem.java
new file mode 100644
index 0000000000..6d866ae5ab
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/AttachmentFileSystem.java
@@ -0,0 +1,251 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 2012 Trek Global *
+ * This program is free software; you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ *****************************************************************************/
+package org.compiere.model;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.FileNotFoundException;
+import java.nio.channels.FileChannel;
+import java.util.ArrayList;
+import java.util.logging.Level;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.transform.Result;
+import javax.xml.transform.Source;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.compiere.util.CLogger;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.NamedNodeMap;
+import org.xml.sax.SAXException;
+
+/**
+ * @author juliana
+ *
+ */
+public class AttachmentFileSystem implements IAttachmentStore {
+
+ private final CLogger log = CLogger.getCLogger(getClass());
+
+ public String m_attachmentPathRoot;
+
+ @Override
+ public boolean save(MAttachment attach,MStorageProvider prov) {
+
+ /*if(File.separatorChar == '\\'){
+ m_attachmentPathRoot = prov.getWi;
+ } else {
+ m_attachmentPathRoot = prov.getUnixAttachmentPath();
+ }*/
+ m_attachmentPathRoot=prov.getFolder();
+ if("".equals(m_attachmentPathRoot)){
+ log.severe("no attachmentPath defined");
+ } else if (!m_attachmentPathRoot.endsWith(File.separator)){
+ log.warning("attachment path doesn't end with " + File.separator);
+ m_attachmentPathRoot = m_attachmentPathRoot + File.separator;
+ log.fine(m_attachmentPathRoot);
+ }
+
+ if (attach.m_items == null || attach.m_items.size() == 0) {
+ attach.setBinaryData(null);
+ return true;
+ }
+ final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ try {
+ final DocumentBuilder builder = factory.newDocumentBuilder();
+ final Document document = builder.newDocument();
+ final Element root = document.createElement("attachments");
+ document.appendChild(root);
+ document.setXmlStandalone(true);
+ // create xml entries
+ for (int i = 0; i < attach.m_items.size(); i++) {
+ log.fine(attach.m_items.get(i).toString());
+ File entryFile = attach.m_items.get(i).getFile();
+ final String path = entryFile.getAbsolutePath();
+ // if local file - copy to central attachment folder
+ log.fine(path + " - " + attach.m_attachmentPathRoot);
+ if (!path.startsWith(attach.m_attachmentPathRoot)) {
+ log.fine("move file: " + path);
+ FileChannel in = null;
+ FileChannel out = null;
+ try {
+ //create destination folder
+ StringBuilder msgfile = new StringBuilder().append(attach.m_attachmentPathRoot).append(File.separator).append(attach.getAttachmentPathSnippet());
+ final File destFolder = new File(msgfile.toString());
+ if(!destFolder.exists()){
+ if(!destFolder.mkdirs()){
+ log.warning("unable to create folder: " + destFolder.getPath());
+ }
+ }
+ msgfile = new StringBuilder().append(attach.m_attachmentPathRoot).append(File.separator)
+ .append(attach.getAttachmentPathSnippet()).append(File.separator).append(entryFile.getName());
+ final File destFile = new File(msgfile.toString());
+ in = new FileInputStream(entryFile).getChannel();
+ out = new FileOutputStream(destFile).getChannel();
+ in.transferTo(0, in.size(), out);
+ in.close();
+ out.close();
+ if(entryFile.exists()){
+ if(!entryFile.delete()){
+ entryFile.deleteOnExit();
+ }
+ }
+ entryFile = destFile;
+
+ } catch (IOException e) {
+ e.printStackTrace();
+ log.severe("unable to copy file " + entryFile.getAbsolutePath() + " to "
+ + attach.m_attachmentPathRoot + File.separator +
+ attach.getAttachmentPathSnippet() + File.separator + entryFile.getName());
+ } finally {
+ if (in != null && in.isOpen()) {
+ in.close();
+ }
+ if (out != null && out.isOpen()) {
+ out.close();
+ }
+ }
+ }
+ final Element entry = document.createElement("entry");
+ //entry.setAttribute("name", m_items.get(i).getName());
+ entry.setAttribute("name", attach.getEntryName(i));
+ String filePathToStore = entryFile.getAbsolutePath();
+ filePathToStore = filePathToStore.replaceFirst(attach.m_attachmentPathRoot.replaceAll("\\\\","\\\\\\\\"), attach.ATTACHMENT_FOLDER_PLACEHOLDER);
+ log.fine(filePathToStore);
+ entry.setAttribute("file", filePathToStore);
+ root.appendChild(entry);
+ }
+
+ final Source source = new DOMSource(document);
+ final ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ final Result result = new StreamResult(bos);
+ final Transformer xformer = TransformerFactory.newInstance().newTransformer();
+ xformer.transform(source, result);
+ final byte[] xmlData = bos.toByteArray();
+ log.fine(bos.toString());
+ attach.setBinaryData(xmlData);
+ return true;
+ } catch (Exception e) {
+ log.log(Level.SEVERE, "saveLOBData", e);
+ }
+ attach.setBinaryData(null);
+ return false;
+
+ }
+
+ @Override
+ public boolean loadLOBData(MAttachment attach,MStorageProvider prov) {
+ if("".equals(attach.m_attachmentPathRoot)){
+ log.severe("no attachmentPath defined");
+ return false;
+ }
+ // Reset
+ attach.m_items = new ArrayList();
+ //
+ byte[] data = attach.getBinaryData();
+ if (data == null)
+ return true;
+ log.fine("TextFileSize=" + data.length);
+ if (data.length == 0)
+ return true;
+
+ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+
+ try {
+ final DocumentBuilder builder = factory.newDocumentBuilder();
+ final Document document = builder.parse(new ByteArrayInputStream(data));
+ final NodeList entries = document.getElementsByTagName("entry");
+ for (int i = 0; i < entries.getLength(); i++) {
+ final Node entryNode = entries.item(i);
+ final NamedNodeMap attributes = entryNode.getAttributes();
+ final Node fileNode = attributes.getNamedItem("file");
+ final Node nameNode = attributes.getNamedItem("name");
+ if(fileNode==null || nameNode==null){
+ log.severe("no filename for entry " + i);
+ attach.m_items = null;
+ return false;
+ }
+ log.fine("name: " + nameNode.getNodeValue());
+ String filePath = fileNode.getNodeValue();
+ log.fine("filePath: " + filePath);
+ if(filePath!=null){
+ filePath = filePath.replaceFirst(attach.ATTACHMENT_FOLDER_PLACEHOLDER, attach.m_attachmentPathRoot.replaceAll("\\\\","\\\\\\\\"));
+ //just to be shure...
+ String replaceSeparator = File.separator;
+ if(!replaceSeparator.equals("/")){
+ replaceSeparator = "\\\\";
+ }
+ filePath = filePath.replaceAll("/", replaceSeparator);
+ filePath = filePath.replaceAll("\\\\", replaceSeparator);
+ }
+ log.fine("filePath: " + filePath);
+ final File file = new File(filePath);
+ if (file.exists()) {
+ // read files into byte[]
+ final byte[] dataEntry = new byte[(int) file.length()];
+ try {
+ final FileInputStream fileInputStream = new FileInputStream(file);
+ fileInputStream.read(dataEntry);
+ fileInputStream.close();
+ } catch (FileNotFoundException e) {
+ log.severe("File Not Found.");
+ e.printStackTrace();
+ } catch (IOException e1) {
+ log.severe("Error Reading The File.");
+ e1.printStackTrace();
+ }
+ final MAttachmentEntry entry = new MAttachmentEntry(filePath,
+ dataEntry, attach.m_items.size() + 1);
+ attach.m_items.add(entry);
+ } else {
+ log.severe("file not found: " + file.getAbsolutePath());
+ }
+ }
+
+ } catch (SAXException sxe) {
+ // Error generated during parsing)
+ Exception x = sxe;
+ if (sxe.getException() != null)
+ x = sxe.getException();
+ x.printStackTrace();
+ log.severe(x.getMessage());
+
+ } catch (ParserConfigurationException pce) {
+ // Parser with specified options can't be built
+ pce.printStackTrace();
+ log.severe(pce.getMessage());
+
+ } catch (IOException ioe) {
+ // I/O error
+ ioe.printStackTrace();
+ log.severe(ioe.getMessage());
+ }
+
+ return true;
+ }
+
+
+}
diff --git a/org.adempiere.base/src/org/compiere/model/IAttachmentStore.java b/org.adempiere.base/src/org/compiere/model/IAttachmentStore.java
new file mode 100644
index 0000000000..6d1f287a28
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/IAttachmentStore.java
@@ -0,0 +1,26 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
+ * This program is free software, you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ * For the text or an alternative of this public license, you may reach us *
+ * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
+ * or via info@compiere.org or http://www.compiere.org/license.html *
+ *****************************************************************************/
+
+package org.compiere.model;
+
+
+public interface IAttachmentStore {
+
+ public boolean loadLOBData(MAttachment attach,MStorageProvider prov);
+
+ boolean save(MAttachment attach, MStorageProvider prov);
+}
diff --git a/org.adempiere.base/src/org/compiere/model/I_AD_Client.java b/org.adempiere.base/src/org/compiere/model/I_AD_Client.java
index db4c1988a3..376ca28e16 100644
--- a/org.adempiere.base/src/org/compiere/model/I_AD_Client.java
+++ b/org.adempiere.base/src/org/compiere/model/I_AD_Client.java
@@ -408,15 +408,6 @@ public interface I_AD_Client
/** Get Store Archive On File System */
public boolean isStoreArchiveOnFileSystem();
- /** Column name StoreAttachmentsOnFileSystem */
- public static final String COLUMNNAME_StoreAttachmentsOnFileSystem = "StoreAttachmentsOnFileSystem";
-
- /** Set Store Attachments On File System */
- public void setStoreAttachmentsOnFileSystem (boolean StoreAttachmentsOnFileSystem);
-
- /** Get Store Attachments On File System */
- public boolean isStoreAttachmentsOnFileSystem();
-
/** Column name UnixArchivePath */
public static final String COLUMNNAME_UnixArchivePath = "UnixArchivePath";
@@ -426,15 +417,6 @@ public interface I_AD_Client
/** Get Unix Archive Path */
public String getUnixArchivePath();
- /** Column name UnixAttachmentPath */
- public static final String COLUMNNAME_UnixAttachmentPath = "UnixAttachmentPath";
-
- /** Set Unix Attachment Path */
- public void setUnixAttachmentPath (String UnixAttachmentPath);
-
- /** Get Unix Attachment Path */
- public String getUnixAttachmentPath();
-
/** Column name Updated */
public static final String COLUMNNAME_Updated = "Updated";
@@ -472,13 +454,4 @@ public interface I_AD_Client
/** Get Windows Archive Path */
public String getWindowsArchivePath();
-
- /** Column name WindowsAttachmentPath */
- public static final String COLUMNNAME_WindowsAttachmentPath = "WindowsAttachmentPath";
-
- /** Set Windows Attachment Path */
- public void setWindowsAttachmentPath (String WindowsAttachmentPath);
-
- /** Get Windows Attachment Path */
- public String getWindowsAttachmentPath();
}
diff --git a/org.adempiere.base/src/org/compiere/model/I_AD_ClientInfo.java b/org.adempiere.base/src/org/compiere/model/I_AD_ClientInfo.java
index c9aac30363..e7dbd8fee7 100644
--- a/org.adempiere.base/src/org/compiere/model/I_AD_ClientInfo.java
+++ b/org.adempiere.base/src/org/compiere/model/I_AD_ClientInfo.java
@@ -71,6 +71,17 @@ public interface I_AD_ClientInfo
*/
public int getAD_Org_ID();
+ /** Column name AD_StorageProvider_ID */
+ public static final String COLUMNNAME_AD_StorageProvider_ID = "AD_StorageProvider_ID";
+
+ /** Set AD_StorageProvider_ID */
+ public void setAD_StorageProvider_ID (int AD_StorageProvider_ID);
+
+ /** Get AD_StorageProvider_ID */
+ public int getAD_StorageProvider_ID();
+
+ public org.compiere.model.I_AD_StorageProvider getAD_StorageProvider() throws RuntimeException;
+
/** Column name AD_Tree_Activity_ID */
public static final String COLUMNNAME_AD_Tree_Activity_ID = "AD_Tree_Activity_ID";
diff --git a/org.adempiere.base/src/org/compiere/model/I_AD_StorageProvider.java b/org.adempiere.base/src/org/compiere/model/I_AD_StorageProvider.java
new file mode 100644
index 0000000000..b9a800a656
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/I_AD_StorageProvider.java
@@ -0,0 +1,201 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
+ * This program is free software, you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ * For the text or an alternative of this public license, you may reach us *
+ * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
+ * or via info@compiere.org or http://www.compiere.org/license.html *
+ *****************************************************************************/
+package org.compiere.model;
+
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+import org.compiere.util.KeyNamePair;
+
+/** Generated Interface for AD_StorageProvider
+ * @author iDempiere (generated)
+ * @version Release 1.0a
+ */
+public interface I_AD_StorageProvider
+{
+
+ /** TableName=AD_StorageProvider */
+ public static final String Table_Name = "AD_StorageProvider";
+
+ /** AD_Table_ID=200037 */
+ public static final int Table_ID = 200037;
+
+ KeyNamePair Model = new KeyNamePair(Table_ID, Table_Name);
+
+ /** AccessLevel = 3 - Client - Org
+ */
+ BigDecimal accessLevel = BigDecimal.valueOf(3);
+
+ /** Load Meta Data */
+
+ /** Column name AD_Client_ID */
+ public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID";
+
+ /** Get Client.
+ * Client/Tenant for this installation.
+ */
+ public int getAD_Client_ID();
+
+ /** Column name AD_Org_ID */
+ public static final String COLUMNNAME_AD_Org_ID = "AD_Org_ID";
+
+ /** Set Organization.
+ * Organizational entity within client
+ */
+ public void setAD_Org_ID (int AD_Org_ID);
+
+ /** Get Organization.
+ * Organizational entity within client
+ */
+ public int getAD_Org_ID();
+
+ /** Column name AD_StorageProvider_ID */
+ public static final String COLUMNNAME_AD_StorageProvider_ID = "AD_StorageProvider_ID";
+
+ /** Set AD_StorageProvider_ID */
+ public void setAD_StorageProvider_ID (int AD_StorageProvider_ID);
+
+ /** Get AD_StorageProvider_ID */
+ public int getAD_StorageProvider_ID();
+
+ /** Column name AD_StorageProvider_UU */
+ public static final String COLUMNNAME_AD_StorageProvider_UU = "AD_StorageProvider_UU";
+
+ /** Set AD_StorageProvider_UU */
+ public void setAD_StorageProvider_UU (String AD_StorageProvider_UU);
+
+ /** Get AD_StorageProvider_UU */
+ public String getAD_StorageProvider_UU();
+
+ /** Column name Created */
+ public static final String COLUMNNAME_Created = "Created";
+
+ /** Get Created.
+ * Date this record was created
+ */
+ public Timestamp getCreated();
+
+ /** Column name CreatedBy */
+ public static final String COLUMNNAME_CreatedBy = "CreatedBy";
+
+ /** Get Created By.
+ * User who created this records
+ */
+ public int getCreatedBy();
+
+ /** Column name Folder */
+ public static final String COLUMNNAME_Folder = "Folder";
+
+ /** Set Folder.
+ * A folder on a local or remote system to store data into
+ */
+ public void setFolder (String Folder);
+
+ /** Get Folder.
+ * A folder on a local or remote system to store data into
+ */
+ public String getFolder();
+
+ /** Column name IsActive */
+ public static final String COLUMNNAME_IsActive = "IsActive";
+
+ /** Set Active.
+ * The record is active in the system
+ */
+ public void setIsActive (boolean IsActive);
+
+ /** Get Active.
+ * The record is active in the system
+ */
+ public boolean isActive();
+
+ /** Column name Method */
+ public static final String COLUMNNAME_Method = "Method";
+
+ /** Set Method */
+ public void setMethod (String Method);
+
+ /** Get Method */
+ public String getMethod();
+
+ /** Column name Name */
+ public static final String COLUMNNAME_Name = "Name";
+
+ /** Set Name.
+ * Alphanumeric identifier of the entity
+ */
+ public void setName (String Name);
+
+ /** Get Name.
+ * Alphanumeric identifier of the entity
+ */
+ public String getName();
+
+ /** Column name Password */
+ public static final String COLUMNNAME_Password = "Password";
+
+ /** Set Password.
+ * Password of any length (case sensitive)
+ */
+ public void setPassword (String Password);
+
+ /** Get Password.
+ * Password of any length (case sensitive)
+ */
+ public String getPassword();
+
+ /** Column name Updated */
+ public static final String COLUMNNAME_Updated = "Updated";
+
+ /** Get Updated.
+ * Date this record was updated
+ */
+ public Timestamp getUpdated();
+
+ /** Column name UpdatedBy */
+ public static final String COLUMNNAME_UpdatedBy = "UpdatedBy";
+
+ /** Get Updated By.
+ * User who updated this records
+ */
+ public int getUpdatedBy();
+
+ /** Column name URL */
+ public static final String COLUMNNAME_URL = "URL";
+
+ /** Set URL.
+ * Full URL address - e.g. http://www.idempiere.org
+ */
+ public void setURL (String URL);
+
+ /** Get URL.
+ * Full URL address - e.g. http://www.idempiere.org
+ */
+ public String getURL();
+
+ /** Column name UserName */
+ public static final String COLUMNNAME_UserName = "UserName";
+
+ /** Set Registered EMail.
+ * Email of the responsible for the System
+ */
+ public void setUserName (String UserName);
+
+ /** Get Registered EMail.
+ * Email of the responsible for the System
+ */
+ public String getUserName();
+}
diff --git a/org.adempiere.base/src/org/compiere/model/MAttachment.java b/org.adempiere.base/src/org/compiere/model/MAttachment.java
index 57e167c06f..c6108199b1 100644
--- a/org.adempiere.base/src/org/compiere/model/MAttachment.java
+++ b/org.adempiere.base/src/org/compiere/model/MAttachment.java
@@ -26,6 +26,7 @@ import java.io.IOException;
import java.nio.channels.FileChannel;
import java.sql.ResultSet;
import java.util.ArrayList;
+import java.util.List;
import java.util.Properties;
import java.util.logging.Level;
import java.util.zip.Deflater;
@@ -43,6 +44,8 @@ import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
+import org.adempiere.base.Service;
+import org.adempiere.base.ServiceQuery;
import org.compiere.util.CLogger;
import org.compiere.util.Env;
import org.compiere.util.MimeType;
@@ -71,8 +74,7 @@ public class MAttachment extends X_AD_Attachment
/**
*
*/
- private static final long serialVersionUID = -1948066627503677516L;
-
+ private static final long serialVersionUID = 1415801644995116959L;
/**
* Get Attachment (if there are more than one attachment it gets the first in no specific order)
@@ -92,6 +94,8 @@ public class MAttachment extends X_AD_Attachment
/** Static Logger */
private static CLogger s_log = CLogger.getCLogger (MAttachment.class);
+
+ public MStorageProvider provider;
/**************************************************************************
@@ -145,25 +149,38 @@ public class MAttachment extends X_AD_Attachment
public static final String XML = "xml";
/** List of Entry Data */
- private ArrayList m_items = null;
+ public ArrayList m_items = null;
+
/** is this client using the file system for attachments */
private boolean isStoreAttachmentsOnFileSystem = false;
/** attachment (root) path - if file system is used */
- private String m_attachmentPathRoot = "";
+ public String m_attachmentPathRoot = "";
/** string replaces the attachment root in stored xml file
* to allow the changing of the attachment root. */
- private final String ATTACHMENT_FOLDER_PLACEHOLDER = "%ATTACHMENT_FOLDER%";
+ public final String ATTACHMENT_FOLDER_PLACEHOLDER = "%ATTACHMENT_FOLDER%";
/**
* Get the isStoreAttachmentsOnFileSystem and attachmentPath for the client.
* @param ctx
* @param trxName
*/
- private void initAttachmentStoreDetails(Properties ctx, String trxName){
- final MClient client = new MClient(ctx, this.getAD_Client_ID(), trxName);
+ private void initAttachmentStoreDetails(Properties ctx, String trxName)
+ {
+
+ MClientInfo clientInfo = MClientInfo.get(ctx);
+
+ provider=new MStorageProvider(ctx, clientInfo.getAD_StorageProvider_ID(), trxName);
+
+ m_attachmentPathRoot=provider.getFolder();
+
+ if(m_attachmentPathRoot == null){
+ log.severe("no attachmentPath defined");
+ }
+
+ /* final MClient client = new MClient(ctx, this.getAD_Client_ID(), trxName);
isStoreAttachmentsOnFileSystem = client.isStoreAttachmentsOnFileSystem();
if(isStoreAttachmentsOnFileSystem){
if(File.separatorChar == '\\'){
@@ -178,7 +195,7 @@ public class MAttachment extends X_AD_Attachment
m_attachmentPathRoot = m_attachmentPathRoot + File.separator;
log.fine(m_attachmentPathRoot);
}
- }
+ }*/
}
/**
@@ -244,6 +261,7 @@ public class MAttachment extends X_AD_Attachment
*/
public boolean addEntry (File file)
{
+
if (file == null)
{
log.warning("No File");
@@ -411,11 +429,14 @@ public class MAttachment extends X_AD_Attachment
* @return name or null
*/
public String getEntryName(int index) {
+ String method=provider.getMethod();
+ if(method == null)
+ method="DB";
MAttachmentEntry item = getEntry(index);
if (item != null){
//strip path
String name = item.getName();
- if(name!=null && isStoreAttachmentsOnFileSystem){
+ if(name!=null && "FileSystem".equals(method)){
name = name.substring(name.lastIndexOf(File.separator)+1);
}
return name;
@@ -491,10 +512,24 @@ public class MAttachment extends X_AD_Attachment
*/
private boolean saveLOBData()
{
- if(isStoreAttachmentsOnFileSystem){
+ ServiceQuery query=new ServiceQuery();
+ String method=provider.getMethod();
+ if(method == null)
+ method="DB";
+ query.put("method", method);
+ List storelist = Service.locator().list(IAttachmentStore.class, query).getServices();
+
+ if(storelist != null){
+ for(IAttachmentStore prov:storelist){
+ return prov.save(this,provider);
+ }
+ }
+ return false;
+
+ /*if(isStoreAttachmentsOnFileSystem){
return saveLOBDataToFileSystem();
}
- return saveLOBDataToDB();
+ return saveLOBDataToDB();*/
}
/**
@@ -648,10 +683,25 @@ public class MAttachment extends X_AD_Attachment
*/
private boolean loadLOBData ()
{
- if(isStoreAttachmentsOnFileSystem){
+
+ ServiceQuery query=new ServiceQuery();
+ String method=provider.getMethod();
+ if(method == null)
+ method="DB";
+ query.put("method", method);
+
+ List storelist = Service.locator().list(IAttachmentStore.class, query).getServices();
+
+ if(storelist != null){
+ for(IAttachmentStore prov:storelist){
+ return prov.loadLOBData(this,provider);
+ }
+ }
+ return false;
+ /*if(isStoreAttachmentsOnFileSystem){
return loadLOBDataFromFileSystem();
}
- return loadLOBDataFromDB();
+ return loadLOBDataFromDB();*/
}
/**
@@ -717,7 +767,7 @@ public class MAttachment extends X_AD_Attachment
* Load Data from file system
* @return true if success
*/
- private boolean loadLOBDataFromFileSystem(){
+ public boolean loadLOBDataFromFileSystem(){
if("".equals(m_attachmentPathRoot)){
log.severe("no attachmentPath defined");
return false;
@@ -812,7 +862,7 @@ public class MAttachment extends X_AD_Attachment
* Returns a path snippet, containing client, org, table and record id.
* @return String
*/
- private String getAttachmentPathSnippet(){
+ public String getAttachmentPathSnippet(){
StringBuilder msgreturn = new StringBuilder().append(this.getAD_Client_ID()).append(File.separator)
.append(this.getAD_Org_ID()).append(File.separator)
diff --git a/org.adempiere.base/src/org/compiere/model/MStorageProvider.java b/org.adempiere.base/src/org/compiere/model/MStorageProvider.java
new file mode 100644
index 0000000000..5248808fab
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/MStorageProvider.java
@@ -0,0 +1,42 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
+ * This program is free software, you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ * For the text or an alternative of this public license, you may reach us *
+ * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
+ * or via info@compiere.org or http://www.compiere.org/license.html *
+ *****************************************************************************/
+package org.compiere.model;
+
+import java.sql.ResultSet;
+import java.util.Properties;
+
+public class MStorageProvider extends X_AD_StorageProvider {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -4048103579840786187L;
+
+ public MStorageProvider(Properties ctx, int AD_StorageProvider_ID,
+ String trxName) {
+ super(ctx, AD_StorageProvider_ID, trxName);
+ }
+
+ public MStorageProvider(Properties ctx, ResultSet rs, String trxName) {
+ super(ctx, rs, trxName);
+
+ }
+
+}
+
+
+
+
diff --git a/org.adempiere.base/src/org/compiere/model/X_AD_Client.java b/org.adempiere.base/src/org/compiere/model/X_AD_Client.java
index efd5ad0ad5..9921caf83c 100644
--- a/org.adempiere.base/src/org/compiere/model/X_AD_Client.java
+++ b/org.adempiere.base/src/org/compiere/model/X_AD_Client.java
@@ -30,7 +30,7 @@ public class X_AD_Client extends PO implements I_AD_Client, I_Persistent
/**
*
*/
- private static final long serialVersionUID = 20121031L;
+ private static final long serialVersionUID = 20121127L;
/** Standard Constructor */
public X_AD_Client (Properties ctx, int AD_Client_ID, String trxName)
@@ -56,7 +56,6 @@ public class X_AD_Client extends PO implements I_AD_Client, I_Persistent
// F
setName (null);
setStoreArchiveOnFileSystem (false);
- setStoreAttachmentsOnFileSystem (false);
setValue (null);
} */
}
@@ -612,27 +611,6 @@ public class X_AD_Client extends PO implements I_AD_Client, I_Persistent
return false;
}
- /** Set Store Attachments On File System.
- @param StoreAttachmentsOnFileSystem Store Attachments On File System */
- public void setStoreAttachmentsOnFileSystem (boolean StoreAttachmentsOnFileSystem)
- {
- set_Value (COLUMNNAME_StoreAttachmentsOnFileSystem, Boolean.valueOf(StoreAttachmentsOnFileSystem));
- }
-
- /** Get Store Attachments On File System.
- @return Store Attachments On File System */
- public boolean isStoreAttachmentsOnFileSystem ()
- {
- Object oo = get_Value(COLUMNNAME_StoreAttachmentsOnFileSystem);
- if (oo != null)
- {
- if (oo instanceof Boolean)
- return ((Boolean)oo).booleanValue();
- return "Y".equals(oo);
- }
- return false;
- }
-
/** Set Unix Archive Path.
@param UnixArchivePath Unix Archive Path */
public void setUnixArchivePath (String UnixArchivePath)
@@ -647,20 +625,6 @@ public class X_AD_Client extends PO implements I_AD_Client, I_Persistent
return (String)get_Value(COLUMNNAME_UnixArchivePath);
}
- /** Set Unix Attachment Path.
- @param UnixAttachmentPath Unix Attachment Path */
- public void setUnixAttachmentPath (String UnixAttachmentPath)
- {
- set_Value (COLUMNNAME_UnixAttachmentPath, UnixAttachmentPath);
- }
-
- /** Get Unix Attachment Path.
- @return Unix Attachment Path */
- public String getUnixAttachmentPath ()
- {
- return (String)get_Value(COLUMNNAME_UnixAttachmentPath);
- }
-
/** Set Search Key.
@param Value
Search key for the record in the format required - must be unique
@@ -691,18 +655,4 @@ public class X_AD_Client extends PO implements I_AD_Client, I_Persistent
{
return (String)get_Value(COLUMNNAME_WindowsArchivePath);
}
-
- /** Set Windows Attachment Path.
- @param WindowsAttachmentPath Windows Attachment Path */
- public void setWindowsAttachmentPath (String WindowsAttachmentPath)
- {
- set_Value (COLUMNNAME_WindowsAttachmentPath, WindowsAttachmentPath);
- }
-
- /** Get Windows Attachment Path.
- @return Windows Attachment Path */
- public String getWindowsAttachmentPath ()
- {
- return (String)get_Value(COLUMNNAME_WindowsAttachmentPath);
- }
}
\ No newline at end of file
diff --git a/org.adempiere.base/src/org/compiere/model/X_AD_ClientInfo.java b/org.adempiere.base/src/org/compiere/model/X_AD_ClientInfo.java
index 0e2f09bd31..75d218a3a9 100644
--- a/org.adempiere.base/src/org/compiere/model/X_AD_ClientInfo.java
+++ b/org.adempiere.base/src/org/compiere/model/X_AD_ClientInfo.java
@@ -29,7 +29,7 @@ public class X_AD_ClientInfo extends PO implements I_AD_ClientInfo, I_Persistent
/**
*
*/
- private static final long serialVersionUID = 20121031L;
+ private static final long serialVersionUID = 20121127L;
/** Standard Constructor */
public X_AD_ClientInfo (Properties ctx, int AD_ClientInfo_ID, String trxName)
@@ -83,6 +83,31 @@ public class X_AD_ClientInfo extends PO implements I_AD_ClientInfo, I_Persistent
return (String)get_Value(COLUMNNAME_AD_ClientInfo_UU);
}
+ public org.compiere.model.I_AD_StorageProvider getAD_StorageProvider() throws RuntimeException
+ {
+ return (org.compiere.model.I_AD_StorageProvider)MTable.get(getCtx(), org.compiere.model.I_AD_StorageProvider.Table_Name)
+ .getPO(getAD_StorageProvider_ID(), get_TrxName()); }
+
+ /** Set AD_StorageProvider_ID.
+ @param AD_StorageProvider_ID AD_StorageProvider_ID */
+ public void setAD_StorageProvider_ID (int AD_StorageProvider_ID)
+ {
+ if (AD_StorageProvider_ID < 1)
+ set_Value (COLUMNNAME_AD_StorageProvider_ID, null);
+ else
+ set_Value (COLUMNNAME_AD_StorageProvider_ID, Integer.valueOf(AD_StorageProvider_ID));
+ }
+
+ /** Get AD_StorageProvider_ID.
+ @return AD_StorageProvider_ID */
+ public int getAD_StorageProvider_ID ()
+ {
+ Integer ii = (Integer)get_Value(COLUMNNAME_AD_StorageProvider_ID);
+ if (ii == null)
+ return 0;
+ return ii.intValue();
+ }
+
public org.compiere.model.I_AD_Tree getAD_Tree_Activity() throws RuntimeException
{
return (org.compiere.model.I_AD_Tree)MTable.get(getCtx(), org.compiere.model.I_AD_Tree.Table_Name)
diff --git a/org.adempiere.base/src/org/compiere/model/X_AD_StorageProvider.java b/org.adempiere.base/src/org/compiere/model/X_AD_StorageProvider.java
new file mode 100644
index 0000000000..e805a8d1bd
--- /dev/null
+++ b/org.adempiere.base/src/org/compiere/model/X_AD_StorageProvider.java
@@ -0,0 +1,210 @@
+/******************************************************************************
+ * Product: iDempiere ERP & CRM Smart Business Solution *
+ * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
+ * This program is free software, you can redistribute it and/or modify it *
+ * under the terms version 2 of the GNU General Public License as published *
+ * by the Free Software Foundation. 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., *
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
+ * For the text or an alternative of this public license, you may reach us *
+ * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
+ * or via info@compiere.org or http://www.compiere.org/license.html *
+ *****************************************************************************/
+/** Generated Model - DO NOT CHANGE */
+package org.compiere.model;
+
+import java.sql.ResultSet;
+import java.util.Properties;
+
+/** Generated Model for AD_StorageProvider
+ * @author iDempiere (generated)
+ * @version Release 1.0a - $Id$ */
+public class X_AD_StorageProvider extends PO implements I_AD_StorageProvider, I_Persistent
+{
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 20121123L;
+
+ /** Standard Constructor */
+ public X_AD_StorageProvider (Properties ctx, int AD_StorageProvider_ID, String trxName)
+ {
+ super (ctx, AD_StorageProvider_ID, trxName);
+ /** if (AD_StorageProvider_ID == 0)
+ {
+ } */
+ }
+
+ /** Load Constructor */
+ public X_AD_StorageProvider (Properties ctx, ResultSet rs, String trxName)
+ {
+ super (ctx, rs, trxName);
+ }
+
+ /** AccessLevel
+ * @return 3 - Client - Org
+ */
+ protected int get_AccessLevel()
+ {
+ return accessLevel.intValue();
+ }
+
+ /** Load Meta Data */
+ protected POInfo initPO (Properties ctx)
+ {
+ POInfo poi = POInfo.getPOInfo (ctx, Table_ID, get_TrxName());
+ return poi;
+ }
+
+ public String toString()
+ {
+ StringBuffer sb = new StringBuffer ("X_AD_StorageProvider[")
+ .append(get_ID()).append("]");
+ return sb.toString();
+ }
+
+ /** Set AD_StorageProvider_ID.
+ @param AD_StorageProvider_ID AD_StorageProvider_ID */
+ public void setAD_StorageProvider_ID (int AD_StorageProvider_ID)
+ {
+ if (AD_StorageProvider_ID < 1)
+ set_Value (COLUMNNAME_AD_StorageProvider_ID, null);
+ else
+ set_Value (COLUMNNAME_AD_StorageProvider_ID, Integer.valueOf(AD_StorageProvider_ID));
+ }
+
+ /** Get AD_StorageProvider_ID.
+ @return AD_StorageProvider_ID */
+ public int getAD_StorageProvider_ID ()
+ {
+ Integer ii = (Integer)get_Value(COLUMNNAME_AD_StorageProvider_ID);
+ if (ii == null)
+ return 0;
+ return ii.intValue();
+ }
+
+ /** Set AD_StorageProvider_UU.
+ @param AD_StorageProvider_UU AD_StorageProvider_UU */
+ public void setAD_StorageProvider_UU (String AD_StorageProvider_UU)
+ {
+ set_Value (COLUMNNAME_AD_StorageProvider_UU, AD_StorageProvider_UU);
+ }
+
+ /** Get AD_StorageProvider_UU.
+ @return AD_StorageProvider_UU */
+ public String getAD_StorageProvider_UU ()
+ {
+ return (String)get_Value(COLUMNNAME_AD_StorageProvider_UU);
+ }
+
+ /** Set Folder.
+ @param Folder
+ A folder on a local or remote system to store data into
+ */
+ public void setFolder (String Folder)
+ {
+ set_Value (COLUMNNAME_Folder, Folder);
+ }
+
+ /** Get Folder.
+ @return A folder on a local or remote system to store data into
+ */
+ public String getFolder ()
+ {
+ return (String)get_Value(COLUMNNAME_Folder);
+ }
+
+ /** Method AD_Reference_ID=200019 */
+ public static final int METHOD_AD_Reference_ID=200019;
+ /** File System = FileSystem */
+ public static final String METHOD_FileSystem = "FileSystem";
+ /** Database = DB */
+ public static final String METHOD_Database = "DB";
+ /** Set Method.
+ @param Method Method */
+ public void setMethod (String Method)
+ {
+
+ set_Value (COLUMNNAME_Method, Method);
+ }
+
+ /** Get Method.
+ @return Method */
+ public String getMethod ()
+ {
+ return (String)get_Value(COLUMNNAME_Method);
+ }
+
+ /** Set Name.
+ @param Name
+ Alphanumeric identifier of the entity
+ */
+ public void setName (String Name)
+ {
+ set_Value (COLUMNNAME_Name, Name);
+ }
+
+ /** Get Name.
+ @return Alphanumeric identifier of the entity
+ */
+ public String getName ()
+ {
+ return (String)get_Value(COLUMNNAME_Name);
+ }
+
+ /** Set Password.
+ @param Password
+ Password of any length (case sensitive)
+ */
+ public void setPassword (String Password)
+ {
+ set_Value (COLUMNNAME_Password, Password);
+ }
+
+ /** Get Password.
+ @return Password of any length (case sensitive)
+ */
+ public String getPassword ()
+ {
+ return (String)get_Value(COLUMNNAME_Password);
+ }
+
+ /** Set URL.
+ @param URL
+ Full URL address - e.g. http://www.idempiere.org
+ */
+ public void setURL (String URL)
+ {
+ set_Value (COLUMNNAME_URL, URL);
+ }
+
+ /** Get URL.
+ @return Full URL address - e.g. http://www.idempiere.org
+ */
+ public String getURL ()
+ {
+ return (String)get_Value(COLUMNNAME_URL);
+ }
+
+ /** Set Registered EMail.
+ @param UserName
+ Email of the responsible for the System
+ */
+ public void setUserName (String UserName)
+ {
+ set_Value (COLUMNNAME_UserName, UserName);
+ }
+
+ /** Get Registered EMail.
+ @return Email of the responsible for the System
+ */
+ public String getUserName ()
+ {
+ return (String)get_Value(COLUMNNAME_UserName);
+ }
+}
\ No newline at end of file
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
index 5cd48c0dca..aff656a7f9 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/WAttachment.java
@@ -19,7 +19,9 @@ package org.adempiere.webui.panel;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
+
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
@@ -35,6 +37,7 @@ import org.adempiere.webui.component.Textbox;
import org.adempiere.webui.component.Window;
import org.adempiere.webui.event.DialogEvents;
import org.adempiere.webui.window.FDialog;
+import org.codehaus.groovy.vmplugin.v6.Java6;
import org.compiere.model.MAttachment;
import org.compiere.model.MAttachmentEntry;
import org.compiere.util.CLogger;
@@ -58,6 +61,8 @@ import org.zkoss.zul.Filedownload;
import org.zkoss.zul.Hbox;
import org.zkoss.zul.Iframe;
+import com.lowagie.text.pdf.ByteBuffer;
+
/**
*
* @author Low Heng Sin
@@ -574,24 +579,27 @@ public class WAttachment extends Window implements EventListener
}
}
- private byte[] getMediaData(Media media) {
+ private byte[] getMediaData(Media media) {
byte[] bytes = null;
-
- if (media.inMemory())
- bytes = media.getByteData();
- else {
- InputStream is = media.getStreamData();
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- byte[] buf = new byte[ 1000 ];
- int byteread = 0;
- try {
- while (( byteread=is.read(buf) )!=-1)
+
+ try{
+
+ if (media.inMemory())
+ bytes = media.isBinary() ? media.getByteData() : media.getStringData().getBytes(getCharset(media.getContentType()));
+ else {
+ InputStream is = media.getStreamData();
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ byte[] buf = new byte[ 1000 ];
+ int byteread = 0;
+
+ while (( byteread=is.read(buf) )!=-1)
baos.write(buf,0,byteread);
- } catch (IOException e) {
- log.log(Level.SEVERE, e.getLocalizedMessage(), e);
- throw new IllegalStateException(e.getLocalizedMessage());
- }
+
bytes = baos.toByteArray();
+ }
+ } catch (IOException e) {
+ log.log(Level.SEVERE, e.getLocalizedMessage(), e);
+ throw new IllegalStateException(e.getLocalizedMessage());
}
return bytes;
@@ -673,4 +681,16 @@ public class WAttachment extends Window implements EventListener
}
}
} // saveAttachmentToFile
+
+
+ static private String getCharset(String contentType) {
+ if (contentType != null) {
+ int j = contentType.indexOf("charset=");
+ if (j >= 0) {
+ String cs = contentType.substring(j + 8).trim();
+ if (cs.length() > 0) return cs;
+ }
+ }
+ return "UTF-8";
+ }
}