Beispiel #1
0
        private void RunCalculation_Click(object sender, EventArgs e)
        {
            string commandExe = ConfigurationManager.AppSettings["run_program"];

            System.Diagnostics.Process.Start(commandExe);
            _provider.ClearCache();
            _provider.Dispose();

            curves           = new List <string>();
            subCurves        = new Dictionary <string, List <string> >();
            currencies       = new Dictionary <string, string>();
            _dbLink          = null;
            positions        = null;
            _cachedPositions = null;
            var iConnection = DataBaseLink.Fabricate.CreateConnection(_connection, DataBaseLink.ConnectionType.Npgsql);

            _dbLink = new DataBaseLink.DbLink(iConnection);
            IMarketProvider moex = GetMoex();
            IMarketProvider cbr  = GetCbr();

            _provider =
                new DataProvider.Input.CombinedProvider.Provider(new List <IMarketProvider>()
            {
                moex,
                cbr
            });

            LoadDataFinInstruments();
            Paint();
            LoadDataCurrencies();
            LoadAttributes();
            LoadDictionary();
            LoadPercentCurves();
            LoadCalculations();
        }
Beispiel #2
0
        public Form1()
        {
            InitializeComponent();

            var iConnection = DataBaseLink.Fabricate.CreateConnection(_connection, DataBaseLink.ConnectionType.Npgsql);

            _dbLink = new DataBaseLink.DbLink(iConnection);
            IMarketProvider moex = GetMoex();
            IMarketProvider cbr  = GetCbr();

            _provider =
                new DataProvider.Input.CombinedProvider.Provider(new List <IMarketProvider>()
            {
                moex,
                cbr
            });

            LoadDataFinInstruments();
            Paint();
            LoadDataCurrencies();
            LoadAttributes();
            LoadDictionary();
            LoadPercentCurves();
            LoadCalculations();
        }
        public void LoadData()
        {
            treeView1.Nodes.Clear();

            var iConnection = DataBaseLink.Fabricate.CreateConnection(_connection, DataBaseLink.ConnectionType.Npgsql);

            DataBaseLink.DbLink _dbLink = new DataBaseLink.DbLink(iConnection);
            //достаем финансовые инструменты и сортируем по папкам

            IMarketProvider moex = GetMoex();
            IMarketProvider cbr  = GetCbr();

            DataProvider.Input.CombinedProvider.Provider provider =
                new DataProvider.Input.CombinedProvider.Provider(new List <IMarketProvider>()
            {
                moex,
                cbr
            });

            List <FinType> finTypes = new List <FinType>()
            {
                FinType.Bond,
                FinType.Certificate,
                FinType.DepositaryReceipt,
                FinType.Equity,
                FinType.Fund
            };

            Dictionary <FinType, string> types = new Dictionary <FinType, string>()
            {
                { FinType.Bond, "Облигации" },
                { FinType.Certificate, "Сертификаты" },
                { FinType.DepositaryReceipt, "Депозитарные распискы" },
                { FinType.Equity, "Акции" },
                { FinType.Fund, "Фонды" },
            };

            List <PortfolioPosition> positions = provider.GetAllPositions(finTypes);

            foreach (var x in types)
            {
                TreeNode root = treeView1.Nodes.Add(x.Value, x.Value);
                foreach (var z in positions.Where(p => p.FinType == x.Key))
                {
                    root.Nodes.Add(z.Ident, z.Ident);
                }
            }
        }