Example #1
0
 /// <summary>
 /// Retrieve Data for Model-Reference worksheet
 /// </summary>
 /// <param name="issuerId">IssuerId of the selected Security</param>
 /// <param name="securityDetails">Data of the selected security from GF_SECURITY_BASEVIEW</param>
 /// <returns>object of type ModelReferenceDatapoints</returns>
 private ModelReferenceDataPoints RetrieveExcelModelReferenceData(string issuerId, GreenField.DAL.GF_SECURITY_BASEVIEW securityDetails)
 {
     try
     {
         ExternalResearchEntities entity = new ExternalResearchEntities();
         ModelReferenceDataPoints data   = new ModelReferenceDataPoints();
         data.IssuerId   = issuerId;
         data.IssuerName = securityDetails.ISSUER_NAME;
         INTERNAL_ISSUER issuerData = entity.RetrieveCOAType(issuerId).FirstOrDefault();
         if (issuerData != null)
         {
             data.COATypes = issuerData.COA_TYPE;
         }
         return(data);
     }
     catch (Exception ex)
     {
         ExceptionTrace.LogException(ex);
         string networkFaultMessage = ServiceFaultResourceManager.GetString("NetworkFault").ToString();
         return(null);
     }
 }
Example #2
0
        public ExcelModelData RetrieveStatementData(string issuerId, String currency)
        {
            List <ModelConsensusEstimatesData>  resultConsensus = new List <ModelConsensusEstimatesData>();
            List <FinancialStatementDataModels> resultReuters   = new List <FinancialStatementDataModels>();
            List <FinancialStatementData>       resultStatement = new List <FinancialStatementData>();
            List <string>  commodities = new List <string>();
            ExcelModelData modelData   = new ExcelModelData();
            List <DataPointsModelUploadData> dataPointsExcelUpload    = new List <DataPointsModelUploadData>();
            ModelReferenceDataPoints         dataPointsModelReference = new ModelReferenceDataPoints();
            string currencyReuters   = "";
            string currencyConsensus = string.Empty;

            try
            {
                ExternalResearchEntities entity = new ExternalResearchEntities();
                if (issuerId == null)
                {
                    throw new Exception("Issuer Id is not Valid");
                }
                GreenField.DAL.GF_SECURITY_BASEVIEW securityDetails = DimensionEntity.GF_SECURITY_BASEVIEW
                                                                      .Where(record => record.ISSUER_ID == issuerId).FirstOrDefault();
                if (securityDetails == null)
                {
                    throw new Exception("Issuer Id is not Valid");
                }
                //External_Country_Master countryDetails = entity.External_Country_Master
                //.Where(record => record.COUNTRY_CODE == securityDetails.ISO_COUNTRY_CODE &&
                // record.COUNTRY_NAME == securityDetails.ASEC_SEC_COUNTRY_NAME)
                //.FirstOrDefault();
                string issuerID = issuerId;
                //string currency = countryDetails.CURRENCY_CODE;
                if (currency != null)
                {
                    resultReuters     = RetrieveFinancialData(issuerID, currency);
                    resultConsensus   = RetrieveModelConsensusData(issuerID, currency);
                    currencyReuters   = currency;
                    currencyConsensus = currency;
                }
                if (resultReuters != null)
                {
                    resultReuters = resultReuters.Where(a => a.PeriodYear != 2300).ToList();
                }
                if (resultReuters == null || resultReuters.Count == 0)
                {
                    //if (currency != "USD")
                    //{
                    //    resultReuters = RetrieveFinancialData(issuerID, "USD");
                    //    currencyReuters = "USD";
                    //}
                    //else
                    //{
                    //    resultReuters = new List<FinancialStatementDataModels>();
                    //}

                    throw new Exception("Data does not exist for the selected currency '"
                                        + currency + "' and issuer id '" + issuerId + "'.");
                }
                resultReuters = resultReuters.Where(a => a.PeriodYear != 2300).ToList();

                if (resultConsensus == null || resultConsensus.Count == 0)
                {
                    //if (currency != "USD")
                    //{
                    //    resultConsensus = RetrieveModelConsensusData(issuerID, "USD");
                    //    currencyConsensus = "USD";
                    //}
                    //else
                    //{
                    //    resultConsensus = new List<ModelConsensusEstimatesData>();
                    //}
                    throw new Exception("Data does not exist for the selected currency '"
                                        + currency + "' and issuer id '" + issuerId + "'.");
                }

                if (resultReuters == null || resultReuters.Count == 0)
                {
                    throw new Exception("No Data Returned from server");
                }
                dataPointsExcelUpload = RetrieveModelUploadDataPoints(issuerID);
                commodities           = entity.RetrieveCommodityForecasts().ToList();
                ExcelModelData excelModelData = new ExcelModelData();
                excelModelData.ConsensusEstimateData = new List <ModelConsensusEstimatesData>();
                excelModelData.ModelReferenceData    = dataPointsModelReference;
                excelModelData.ModelUploadDataPoints = dataPointsExcelUpload;
                excelModelData.Currencies            = entity.RetrieveDistinctFXRates().ToList();
                excelModelData.Commodities           = commodities;
                excelModelData.ReutersData           = resultReuters;
                excelModelData.CurrencyReuters       = currencyReuters;
                excelModelData.ConsensusEstimateData = resultConsensus;
                return(excelModelData);
            }
            catch (Exception ex)
            {
                string networkFaultMessage = ServiceFaultResourceManager.GetString("NetworkFault").ToString();
                throw new FaultException <ServiceFault>(new ServiceFault(networkFaultMessage), new FaultReason(ex.Message));
            }
        }
Example #3
0
        public byte[] RetrieveStatementData(EntitySelectionData selectedSecurity)
        {
            List <ModelConsensusEstimatesData>  resultConsensus = new List <ModelConsensusEstimatesData>();
            List <FinancialStatementDataModels> resultReuters   = new List <FinancialStatementDataModels>();
            List <FinancialStatementData>       resultStatement = new List <FinancialStatementData>();
            List <string>  commodities = new List <string>();
            ExcelModelData modelData   = new ExcelModelData();
            List <DataPointsModelUploadData> dataPointsExcelUpload    = new List <DataPointsModelUploadData>();
            ModelReferenceDataPoints         dataPointsModelReference = new ModelReferenceDataPoints();
            string currencyReuters   = "";
            string currencyConsensus = "";

            try
            {
                ExternalResearchEntities entity = new ExternalResearchEntities();
                if (selectedSecurity == null)
                {
                    return(new byte[1]);
                }
                GreenField.DAL.GF_SECURITY_BASEVIEW securityDetails = DimensionEntity.GF_SECURITY_BASEVIEW
                                                                      .Where(record => record.ASEC_SEC_SHORT_NAME == selectedSecurity.InstrumentID &&
                                                                             record.ISSUE_NAME == selectedSecurity.LongName &&
                                                                             record.TICKER == selectedSecurity.ShortName).FirstOrDefault();
                if (securityDetails == null)
                {
                    return(new byte[1]);
                }
                External_Country_Master countryDetails = entity.External_Country_Master
                                                         .Where(record => record.COUNTRY_CODE == securityDetails.ISO_COUNTRY_CODE &&
                                                                record.COUNTRY_NAME == securityDetails.ASEC_SEC_COUNTRY_NAME)
                                                         .FirstOrDefault();
                string issuerID = securityDetails.ISSUER_ID;
                string currency = countryDetails.CURRENCY_CODE;
                if (issuerID == null)
                {
                    return(new byte[1]);
                }
                if (currency != null)
                {
                    resultReuters     = RetrieveFinancialData(issuerID, currency);
                    resultConsensus   = RetrieveModelConsensusData(issuerID, currency);
                    currencyReuters   = currency;
                    currencyConsensus = currency;
                }
                if (resultReuters != null)
                {
                    resultReuters = resultReuters.Where(a => a.PeriodYear != 2300).ToList();
                }
                if (resultReuters == null || resultReuters.Count == 0)
                {
                    if (currency != "USD")
                    {
                        resultReuters   = RetrieveFinancialData(issuerID, "USD");
                        currencyReuters = "USD";
                    }
                    else
                    {
                        resultReuters = new List <FinancialStatementDataModels>();
                    }
                }
                resultReuters = resultReuters.Where(a => a.PeriodYear != 2300).ToList();

                if (resultConsensus == null || resultConsensus.Count == 0)
                {
                    if (currency != "USD")
                    {
                        resultConsensus   = RetrieveModelConsensusData(issuerID, "USD");
                        currencyConsensus = "USD";
                    }
                    else
                    {
                        resultConsensus = new List <ModelConsensusEstimatesData>();
                    }
                }
                dataPointsExcelUpload    = RetrieveModelUploadDataPoints(issuerID);
                dataPointsModelReference = RetrieveExcelModelReferenceData(issuerID, securityDetails);
                commodities = entity.RetrieveCommodityForecasts().ToList();
                ExcelModelData excelModelData = new ExcelModelData();
                excelModelData.ModelReferenceData    = dataPointsModelReference;
                excelModelData.ModelUploadDataPoints = dataPointsExcelUpload;
                excelModelData.Currencies            = entity.RetrieveDistinctFXRates().ToList();
                excelModelData.Commodities           = commodities;
                return(GenerateOpenXMLExcelModel.GenerateExcel(resultReuters, resultConsensus, currencyReuters, currencyConsensus, excelModelData));
            }
            catch (Exception ex)
            {
                ExceptionTrace.LogException(ex);
                string networkFaultMessage = ServiceFaultResourceManager.GetString("NetworkFault").ToString();
                throw new FaultException <ServiceFault>(new ServiceFault(networkFaultMessage), new FaultReason(ex.Message));
            }
        }