Exemplo n.º 1
0
        private bool ExportToExtrato()
        {
            // https://www.aspsnippets.com/Articles/The-OLE-DB-provider-Microsoft.Ace.OLEDB.12.0-for-linked-server-null.aspx
            var retorno = true;

            using (var ctx = new MoneyBinEntities()) {
                ctx.spExportToAccessExtrato(_saveAs);
            }

            MoneyBinDB.ExportToExtrato(_saveAs);

            var tempFile = Path.Combine(Path.GetDirectoryName(_saveAs),
                                        Path.GetRandomFileName() + Path.GetExtension(_saveAs));
            var app = new Microsoft.Office.Interop.Access.Application {
                Visible = false
            };

            try {
                app.CompactRepair(_saveAs, tempFile, false);
                var temp = new FileInfo(tempFile);
                temp.CopyTo(_saveAs, true);
                temp.Delete();
            }
            catch (Exception e) {
                MessageBox.Show(e.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                retorno = false;
                //throw;
            }
            finally {
                app.Quit();
            }
            return(retorno);
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            using (var ctx = new MoneyBinEntities()) {
                var conta  = ctx.Contas.First();
                var ativos = conta.AcoesNaoZerado;

                var termino = new DateTime(2020, 05, 25);

                foreach (var ativo in ativos)
                {
                    var sh = ativo.Ativo.SerieHistorica;
                    Console.WriteLine($"\n{ativo.Codigo}");
                    var data = new DateTime(2019, 01, 05);
                    while (data < termino)
                    {
                        var antes = sh.TakeWhile(c => c.Data < data)
                                    .TakeLast(2).ToArray();

                        var variacao = (antes[0].PrecoMedio - antes[1].PrecoMedio) / antes[0].PrecoMedio;

                        var depois = sh.First(c => c.Data > data);

                        Console.ForegroundColor = variacao > 0 ? ConsoleColor.White : ConsoleColor.Red;
                        Console.WriteLine($"\t{data:d}\t{antes[0].PrecoMedio:N2}\t{antes[1].PrecoMedio:N2}\t{variacao:P1}\t{depois.PrecoMedio:N2}");

                        data = data.AddDays(7);
                    }
                }
                Console.ReadLine();
            }
        }
Exemplo n.º 3
0
 private void SetContaComboBox(ComboBox combo)
 {
     using (var ctx = new MoneyBinEntities()) {
         var contas = ctx.Contas.OrderBy(c => c.Apelido).ToList();
         combo.DataSource    = contas;
         combo.ValueMember   = "ID";
         combo.DisplayMember = "Apelido";
     }
 }
Exemplo n.º 4
0
        static void Main(string[] args)
        {
            using (var ctx = new MoneyBinEntities()) {
                var conta  = ctx.Contas.Find(1);
                var inicio = conta.Operacoes.Min(o => o.Data);

                var serie = ctx.SeriesHistoricas.ToList();

                var monthList = serie
                                .GroupBy(i => new { i.Data.Year, i.Data.Month })
                                .Select(g => new {
                    Year     = g.Key.Year,
                    Month    = g.Key.Month,
                    LastDate = new DateTime(g.Key.Year, g.Key.Month, 1).AddMonths(1).AddDays(-1)
                }).ToList();
            }
        }