Example #1
0
        /// <summary>
        /// get master data
        /// </summary>
        /// <param name="id"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public MasterDataBase GetMasterData(MasterDataIdentity id,
                                            MasterDataType type)
        {
            MasterDataFactoryBase factory = this.GetMasterDataFactory(type);

            return(factory.GetEntity(id));
        }
        /// <summary>
        /// set dirty data
        /// </summary>
        protected void SetDirtyData()
        {
            MasterDataFactoryBase factory = null;

            if (this is BankAccountMasterData)
            {
                factory = _management
                          .GetMasterDataFactory(MasterDataType.BANK_ACCOUNT);
            }
            else if (this is BankKeyMasterData)
            {
                factory = _management.GetMasterDataFactory(MasterDataType.BANK_KEY);
            }
            else if (this is BusinessAreaMasterData)
            {
                factory = _management
                          .GetMasterDataFactory(MasterDataType.BUSINESS_AREA);
            }
            else if (this is CustomerMasterData)
            {
                factory = _management.GetMasterDataFactory(MasterDataType.CUSTOMER);
            }
            else if (this is GLAccountMasterData)
            {
                factory = _management
                          .GetMasterDataFactory(MasterDataType.GL_ACCOUNT);
            }
            else if (this is VendorMasterData)
            {
                factory = _management.GetMasterDataFactory(MasterDataType.VENDOR);
            }

            factory._containDirtyData = true;
        }
Example #3
0
        /// <summary>
        /// get master data with identity
        /// </summary>
        /// <param name="idStr"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        /// <exception cref="IdentityInvalidChar"></exception>
        /// <exception cref="IdentityNoData"></exception>
        /// <exception cref="IdentityTooLong"></exception>
        public MasterDataBase GetMasterData(char[] idStr, MasterDataType type)
        {
            MasterDataFactoryBase factory = this.GetMasterDataFactory(type);
            MasterDataIdentity    id      = new MasterDataIdentity(idStr);

            return(factory.GetEntity(id));
        }
Example #4
0
        /// <summary>
        /// load the data from file system
        /// </summary>
        /// <returns></returns>
        /// <exception cref="MasterDataFileFormatException"></exception>
        /// <exception cref="SystemException"></exception>
        public override async Task InitializeAsync()
        {
            _coreDriver.logDebugInfo(this.GetType(), 141,
                                     "Master data loading...", MessageType.INFO);
            foreach (MasterDataType type in Enum.GetValues(typeof(MasterDataType)))
            {
                _coreDriver.logDebugInfo(this.GetType(), 144,
                                         String.Format("Loading {0}...", type), MessageType.INFO);

                StorageFile file = await getMasterFileAsync(type);

                _coreDriver.logDebugInfo(this.GetType(), 148, String.Format(
                                             "Master data file {0} for master data {1}.", file.Path, type),
                                         MessageType.INFO);

                String str = await FileIO.ReadTextAsync(file);

                XDocument xdoc = XDocument.Parse(str);

                // parse
                MasterDataFactoryBase newFactory = factoryParser(type, xdoc);

                _coreDriver.logDebugInfo(this.GetType(), 208,
                                         String.Format("Loading %s completed.", type),
                                         MessageType.INFO);

                this._factoryList.Add(type, newFactory);
            }

            _coreDriver.logDebugInfo(
                this.GetType(),
                282,
                "Master data loading completed.", MessageType.INFO);
        }
 /// <summary>
 /// Raise master data created event
 /// </summary>
 /// <param name="factory"></param>
 /// <param name="masterData"></param>
 public void CreateMasterData(MasterDataFactoryBase factory,
         MasterDataBase masterData)
 {
     foreach (MasterDataCreated d in MasterDataCreatedHandler.GetInvocationList())
     {
         d(factory, masterData);
     }
 }
Example #6
0
        /// <summary>
        /// Get GL Account based on G/L account group
        /// </summary>
        /// <param name="group"></param>
        /// <returns></returns>
        public List <MasterDataIdentity_GLAccount> GetGLAccountsBasedGroup(
            GLAccountGroupENUM group)
        {
            MasterDataFactoryBase factory             = GetMasterDataFactory(MasterDataType.GL_ACCOUNT);
            List <MasterDataBase> datas               = factory.AllEntities;
            List <MasterDataIdentity_GLAccount> array = new List <MasterDataIdentity_GLAccount>();

            foreach (MasterDataBase data in datas)
            {
                GLAccountMasterData glAccount = (GLAccountMasterData)data;
                if (glAccount.Group.Identity == group)
                {
                    array.Add(glAccount.GLIdentity);
                }
            }

            array.Sort();
            return(array);
        }
 private void masterDataCreated(MasterDataFactoryBase factory, MasterDataBase master)
 {
     newMasterdata(master);
 }
Example #8
0
        /// <summary>
        /// constain master data
        /// </summary>
        /// <param name="id"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public bool ContainsMasterData(MasterDataIdentity id, MasterDataType type)
        {
            MasterDataFactoryBase factory = this.GetMasterDataFactory(type);

            return(factory.Contains(id));
        }