public CustomEntityDescriptor GetCustomEntityDescriptor(string entityName, int parentEntities) { CustomEntityDescriptor descriptor = this.ActFramework.CustomEntities.GetCustomEntityDescriptor(entityName); if (descriptor != null) { Logging.Log("GetCustomEntityDescriptor", descriptor.Name + ", " + descriptor.DisplayName + ", " + descriptor.ParentEntity); return(descriptor); } this.ActFramework.Database.LockDatabase(DatabaseLockReason.SchemaChanges); try { if (parentEntities <= 0) { descriptor = this.ActFramework.CustomEntities.CreateCustomEntity(entityName, entityName, false, "Automatische Wiedervorlage und Aktionen (Matrix)"); } else { descriptor = this.ActFramework.CustomEntities.CreateCustomSubEntity(entityName, entityName, (ParentEntity)parentEntities, false, "Automatische Wiedervorlage und Aktionen (Matrix)"); } } finally { this.ActFramework.Database.UnlockDatabase(); } Logging.Log("GetCustomEntityDescriptor", descriptor.Name + ", " + descriptor.DisplayName + descriptor.ParentEntity); return(descriptor); }
public FieldDescriptor GetField(CustomEntityDescriptor descriptor, string alias, FieldDataType fieldType) { string name = "IBOL_" + alias; FieldDescriptorCollection fieldDescriptors = this.ActFramework.Fields.GetFields(descriptor); //foreach (FieldDescriptor des in fieldDescriptors) //{ // Logging.Log("GetFieldDescriptor", des.Name + ", " + des.ColumnName + ", " + des.Alias + ", " + des.EntityName + ", " + des.TableName); //} FieldDescriptor field = fieldDescriptors.Find(name); if (field != null) { return(field); } field = new FieldDescriptor(name, alias, descriptor, fieldType); // name will be changed, the alias not this.ActFramework.Database.LockDatabase(DatabaseLockReason.SchemaChanges); try { this.ActFramework.Fields.Save(field); } finally { this.ActFramework.Database.UnlockDatabase(); } return(field); }
public void GetCustomEntityDescriptorTest() { using (ActFramework framework = new ActFramework()) { framework.LogOn(Settings.Default.userName, Settings.Default.password, Settings.Default.databaseHost, Settings.Default.databaseName); IbolManagerBase ibolManagerBase = new IbolManagerBase(framework); CustomEntityDescriptor descriptor = ibolManagerBase.GetCustomEntityDescriptor(IbolTests.IbolTableName, (int)ParentEntity.Contacts); Assert.IsNotNull(descriptor, "descriptor is null"); } }
public void GetFieldTest() { using (ActFramework framework = new ActFramework()) { framework.LogOn(Settings.Default.userName, Settings.Default.password, Settings.Default.databaseHost, Settings.Default.databaseName); IbolManagerBase ibolManagerBase = new IbolManagerBase(framework); CustomEntityDescriptor descriptor = ibolManagerBase.GetCustomEntityDescriptor(IbolTests.IbolTableName, (int)ParentEntity.Contacts); Assert.IsNotNull(descriptor, "CustomEntityDescriptor is null"); string alias = "GetFieldTest"; FieldDataType fieldType = FieldDataType.Character; FieldDescriptor des = ibolManagerBase.GetField(descriptor, alias, fieldType); Assert.IsNotNull(des, "FieldDescriptor is null"); Logging.Log("InitializeColumns", des.Name + ", " + des.ColumnName + ", " + des.Alias + ", " + des.TableName); } }
public void DeleteCustomEntity(string entityName) { CustomEntityDescriptor descriptor = this.ActFramework.CustomEntities.GetCustomEntityDescriptor(entityName); if (descriptor == null) { Logging.Log("DeleteCustomEntity", entityName); return; } this.ActFramework.Database.LockDatabase(DatabaseLockReason.SchemaChanges); try { this.ActFramework.CustomEntities.DeleteCustomEntity(descriptor); } finally { this.ActFramework.Database.UnlockDatabase(); } Logging.Log("DeleteCustomEntity", entityName); return; }