示例#1
0
        /// <summary>
        /// Applies updated values from <paramref name="update"/> to this instance
        /// </summary>
        /// <remarks>Used to apply data updates to the current instance. This WILL overwrite existing values. Default update values are ignored.</remarks>
        /// <param name="update">The next data update for this instance</param>
        public void UpdateValues(FineFundamental update)
        {
            if (update == null)
            {
                return;
            }

            CompanyReference?.UpdateValues(update.CompanyReference);
            SecurityReference?.UpdateValues(update.SecurityReference);
            FinancialStatements?.UpdateValues(update.FinancialStatements);
            EarningReports?.UpdateValues(update.EarningReports);
            OperationRatios?.UpdateValues(update.OperationRatios);
            EarningRatios?.UpdateValues(update.EarningRatios);
            ValuationRatios?.UpdateValues(update.ValuationRatios);
            CompanyProfile?.UpdateValues(update.CompanyProfile);
            AssetClassification?.UpdateValues(update.AssetClassification);
        }
示例#2
0
        /// <summary>
        /// Sets values for non existing periods from a previous instance
        /// </summary>
        /// <remarks>Used to fill-forward values from previous dates</remarks>
        /// <param name="previous">The previous instance</param>
        public void UpdateValues(FineFundamental previous)
        {
            if (previous == null)
            {
                return;
            }

            if (CompanyReference != null)
            {
                CompanyReference.UpdateValues(previous.CompanyReference);
            }
            if (SecurityReference != null)
            {
                SecurityReference.UpdateValues(previous.SecurityReference);
            }
            if (FinancialStatements != null)
            {
                FinancialStatements.UpdateValues(previous.FinancialStatements);
            }
            if (EarningReports != null)
            {
                EarningReports.UpdateValues(previous.EarningReports);
            }
            if (OperationRatios != null)
            {
                OperationRatios.UpdateValues(previous.OperationRatios);
            }
            if (EarningRatios != null)
            {
                EarningRatios.UpdateValues(previous.EarningRatios);
            }
            if (ValuationRatios != null)
            {
                ValuationRatios.UpdateValues(previous.ValuationRatios);
            }
            if (CompanyProfile != null)
            {
                CompanyProfile.UpdateValues(previous.CompanyProfile);
            }
            if (AssetClassification != null)
            {
                AssetClassification.UpdateValues(previous.AssetClassification);
            }
        }