public bool UpdatePredefinitionData(Guid objectCustomFieldId, IEnumerable <Guid> refIds, PredefinitionCustomFieldTypeEnum predefinitionCustomFieldType) { return(UpdatePredefinitionData(objectCustomFieldId, refIds, predefinitionCustomFieldType, CustomFieldTypeFlag.CUSTOM_FIELD_TYPE_DEFAULT)); }
public bool UpdatePredefinitionData(Guid objectCustomFieldId, IEnumerable <Guid> refIds, PredefinitionCustomFieldTypeEnum predefinitionCustomFieldType, CustomFieldTypeFlag customFieldTypeFlag) { ObjectCustomFieldDataPreDefinitionBO objectCustomFieldDataPreDefinitionBO = new ObjectCustomFieldDataPreDefinitionBO(); return(objectCustomFieldDataPreDefinitionBO.UpdateCustomFieldData( objectCustomFieldId, refIds, predefinitionCustomFieldType, customFieldTypeFlag)); }
public bool UpdatePredefinitionData(Guid cmsObjectId, Guid objectTypeCustomFieldId, IEnumerable <Guid> refIds, PredefinitionCustomFieldTypeEnum predefinitionCustomFieldType, CustomFieldTypeFlag customFieldTypeFlag) { Session session = null; try { session = XpoHelper.GetNewSession(); ObjectCustomFieldDataPreDefinitionBO objectCustomFieldDataPreDefinitionBO = new ObjectCustomFieldDataPreDefinitionBO(); ObjectCustomFieldBO objectCustomFieldBO = new ObjectCustomFieldBO(); ObjectCustomField objectCustomField = objectCustomFieldBO.GetObjectCustomField(session, cmsObjectId, objectTypeCustomFieldId); if (objectCustomField == null) { throw new Exception("Could not found ObjectCustomField"); } return(objectCustomFieldDataPreDefinitionBO.UpdateCustomFieldData( objectCustomField.ObjectCustomFieldId, refIds, predefinitionCustomFieldType, customFieldTypeFlag)); } catch (Exception) { throw; } finally { if (session != null) { session.Dispose(); } } }
public virtual bool UpdatePredefinitionDataForObject(Guid objectCustomFieldId, List <NASCustomFieldPredefinitionData> data) { try { if (data == null || data.Count == 0) { return(true); } ObjectCustomFieldBO objectCustomFieldBO = new ObjectCustomFieldBO(); PredefinitionCustomFieldTypeEnum predefinitionType = (PredefinitionCustomFieldTypeEnum)Enum.Parse( typeof(PredefinitionCustomFieldTypeEnum), data.First().PredefinitionType); return(objectCustomFieldBO.UpdatePredefinitionData( objectCustomFieldId, data.Select(r => r.RefId), predefinitionType)); } catch (Exception) { throw; } }
protected void customFieldDataGridView_DataUpdated(object sender, ERPSystem.CustomField.GUI.Control.CustomFieldControlEventArgs args) { using (UnitOfWork uow = XpoHelper.GetNewUnitOfWork()) { //Get all journal of transaction NAS.DAL.Accounting.Journal.Transaction transaction = uow.GetObjectByKey <NAS.DAL.Accounting.Journal.Transaction>(TransactionId); var cmsObjects = transaction.GeneralJournals .Where(r => r.RowStatus >= 0) .Select(r => r.GeneralJournalObjects.FirstOrDefault()) .Select(r => r.ObjectId); ObjectTypeCustomField objectTypeCustomField = uow.GetObjectByKey <ObjectTypeCustomField>(args.ObjectTypeCustomFieldId); if (cmsObjects != null) { ObjectCustomFieldBO objectCustomFieldBO = new ObjectCustomFieldBO(); foreach (var cmsObject in cmsObjects) { ObjectCustomField objectCustomField = cmsObject.ObjectCustomFields .Where(r => r.ObjectTypeCustomFieldId == objectTypeCustomField) .FirstOrDefault(); if (objectCustomField != null) { //Copy new data to all jounal of the transaction switch (args.CustomFieldCategory) { case CustomFieldControlEventArgs.CustomFieldCategoryEnum.BASIC: objectCustomFieldBO.UpdateBasicData( objectCustomField.ObjectCustomFieldId, args.NewBasicDataValue, args.BasicCustomFieldType); break; case CustomFieldControlEventArgs.CustomFieldCategoryEnum.LIST: objectCustomFieldBO.UpdateUserDefinedListData( objectCustomField.ObjectCustomFieldId, args.NewCustomFieldDataIds); break; case CustomFieldControlEventArgs.CustomFieldCategoryEnum.BUILT_IN: NASCustomFieldPredefinitionData temp = args.NewBuiltInData.FirstOrDefault(); if (temp != null) { PredefinitionCustomFieldTypeEnum predefinitionType = (PredefinitionCustomFieldTypeEnum)Enum .Parse(typeof(PredefinitionCustomFieldTypeEnum), temp.PredefinitionType); objectCustomFieldBO.UpdatePredefinitionData( objectCustomField.ObjectCustomFieldId, args.NewBuiltInData.Select(r => r.RefId).ToList(), predefinitionType); } break; default: break; } } } } } }
private ICustomFieldDataPreDefinitionDataGetter GetDataGetter(PredefinitionCustomFieldTypeEnum preDefinitionType) { PreDefinitionDataGetterType type = PreDefinitionDataGetterType.ORGANIZATION; switch (preDefinitionType) { case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_MANUFACTURER: type = PreDefinitionDataGetterType.MANUFACTURER; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_ORGANIZATION: type = PreDefinitionDataGetterType.ORGANIZATION; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_DEPARTMENT: type = PreDefinitionDataGetterType.DEPARTMENT; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_PERSON: type = PreDefinitionDataGetterType.PERSON; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_CUSTOMER: type = PreDefinitionDataGetterType.CUSTOMER; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_SUPPLIER: type = PreDefinitionDataGetterType.SUPPLIER; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_INVENTORY: type = PreDefinitionDataGetterType.INVENTORY; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_LOT: type = PreDefinitionDataGetterType.LOT; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_INVOICE_SALE: type = PreDefinitionDataGetterType.INVOICE_SALE; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_INVOICE_PURCHASE: type = PreDefinitionDataGetterType.INVOICE_PURCHASE; break; case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_ITEM: type = PreDefinitionDataGetterType.ITEM; break; /*2014/03/03 Duc.Vo INS*/ case PredefinitionCustomFieldTypeEnum.SINGLE_CHOICE_LIST_INPUT_INVENTORY_COMMAND: type = PreDefinitionDataGetterType.INPUT_INVENTORY_COMMAND; break; /*2014/03/03 Duc.Vo INS*/ case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_MANUFACTURER: type = PreDefinitionDataGetterType.MANUFACTURER; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_ORGANIZATION: type = PreDefinitionDataGetterType.ORGANIZATION; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_DEPARTMENT: type = PreDefinitionDataGetterType.DEPARTMENT; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_PERSON: type = PreDefinitionDataGetterType.PERSON; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_CUSTOMER: type = PreDefinitionDataGetterType.CUSTOMER; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_SUPPLIER: type = PreDefinitionDataGetterType.SUPPLIER; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_INVENTORY: type = PreDefinitionDataGetterType.INVENTORY; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_LOT: type = PreDefinitionDataGetterType.LOT; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_INVOICE_SALE: type = PreDefinitionDataGetterType.INVOICE_SALE; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_INVOICE_PURCHASE: type = PreDefinitionDataGetterType.INVOICE_PURCHASE; break; case PredefinitionCustomFieldTypeEnum.MULTI_CHOICE_LIST_ITEM: type = PreDefinitionDataGetterType.ITEM; break; default: throw new Exception("Unsupported type"); } return(PreDefinitionDataGetterSimpleFactory.Create(type)); }
public bool UpdateCustomFieldData(Guid objectCustomFieldId, IEnumerable <Guid> refIds, PredefinitionCustomFieldTypeEnum preDefinitionType, CustomFieldTypeFlag flag) { bool ret = false; UnitOfWork uow = null; try { uow = XpoHelper.GetNewUnitOfWork(); ObjectCustomField objectCustomField = uow.GetObjectByKey <ObjectCustomField>(objectCustomFieldId); objectCustomField.CustomFieldType = flag.Value; uow.FlushChanges(); NAS.DAL.CMS.ObjectDocument.CustomField customField = objectCustomField.ObjectTypeCustomFieldId.CustomFieldId; //Delete all old data uow.Delete(objectCustomField.ObjectCustomFieldDatas); uow.FlushChanges(); //Insert new data for object if (refIds != null) { foreach (var refId in refIds) { PredefinitionData predefinitionData = new PredefinitionData(uow) { CustomFieldId = customField, PredefinitionType = Enum.GetName(typeof(PredefinitionCustomFieldTypeEnum), preDefinitionType), RefId = refId }; //predefinitionData.Save(); ObjectCustomFieldData objectCustomFieldData = new ObjectCustomFieldData(uow) { CustomFieldDataId = predefinitionData, ObjectCustomFieldId = objectCustomField }; //objectCustomFieldData.Save(); uow.FlushChanges(); } } ICustomFieldDataPreDefinitionDataGetter getter = GetDataGetter(preDefinitionType); ObjectBO objectBO = new ObjectBO(); DynamicObjectListSerializeDataItem dataitem = new DynamicObjectListSerializeDataItem() { ObjectCustomFieldId = objectCustomFieldId, CustomFieldName = customField.Name, CustomFieldData = getter.GetData(objectCustomFieldId).ToString() }; objectBO.SetDynamicObjectListItem(uow, objectCustomField.ObjectId.ObjectId, dataitem); uow.CommitChanges(); ret = true; return(ret); } catch (Exception) { throw; } finally { if (uow != null) { uow.Dispose(); } } }