public void Ausführen()
        {
            txtUnten.Clear();
            txtUnten.FontSize   = 10;
            txtUnten.FontFamily = new FontFamily("Courier New, Verdana");
            PrintTxtUnten("Start -KontenAusInternetSynchronisieren-2-");
            DateTime dt = DataSetAdmin.HolenAusXml(Helpers.GlobalRef.g_Ein.MyDataPfad);

            if (dt == null)
            {
                MessageBox.Show("MeineFinanzen HauptFenster.xaml.cs HauptFenster() Fehler HolenAusXml() DataSetAdmin");
                MessageBox.Show("MyPortfolio Fehler!!  Dateien nicht geladen!!!!");
                Close();
            }
            PrintTxtUnten(dt.ToString());
            // DataColumn[] keys = new DataColumn[1];
            // keys[0] = DataSetAdmin.dtPortFol.Columns["WPIsin"];
            // DataSetAdmin.dtPortFol.PrimaryKey = keys;       // NOCH
            Visibility  = Visibility.Visible;
            WindowState = WindowState.Maximized;
            string[] _strurl = new string[3];
            _strurl[0] = "http://www.finanztreff.de";
            _strurl[1] = "http://waehrungen.finanztreff.de/devisen_uebersicht.htn";                       // USD ...
            _strurl[2] = "http://waehrungen.finanztreff.de/devisen_einzelkurs_uebersicht,i,2079609.html"; // nur SGD
            string[] _strWohin = new string[3];
            _strWohin[0] = "MarktÜberblick";
            _strWohin[1] = "USD";
            _strWohin[2] = "SGD";
            string strx = _strFile + _strWohin[0] + ".html";

            if (!File.Exists(strx))
            {
                File.Create(strx);
            }
            //DateTime dtLastWriteTime = File.GetLastWriteTime(strx);
            string _url = "";

            for (int lop = 0; lop < 3; lop++)
            {
                _url = _strurl[lop];
                string    strFile  = _strFile + _strWohin[lop] + ".html";
                WebClient wclient1 = new WebClient();
                wclient1.DownloadFile(new Uri(_url), strFile);
            }
            dtPortFol = DataSetAdmin.dsHier.Tables["tblPortFol"];       // dtPortFol geholt.
            foreach (DataRow dr in dtPortFol.Rows)
            {
                Wertpapierklasse typeid = (Wertpapierklasse)dr["WPTypeID"];

                //if (typeid != Wertpapierklasse.Anleihe)
                //    continue;

                if (typeid < Wertpapierklasse.MinWertpap || typeid > Wertpapierklasse.MaxWertpap)
                {
                    continue;
                }
                if (dr["WPISIN"].ToString().Length != 12)
                {
                    continue;
                }
                _wertpapsynchro.Add(new WertpapSynchro {
                    WPSAnzahl   = Convert.ToSingle(dr["WPAnzahl"]),
                    WPSName     = dr["WPName"].ToString(),
                    WPSKursZeit = Convert.ToDateTime(dr["WPStand"]),
                    WPSISIN     = dr["WPISIN"].ToString(),

                    WPSURL              = dr["WPUrlText"].ToString(),
                    WPSKurs             = Convert.ToSingle(dr["WPKurs"]),
                    WPSProzentAenderung = Convert.ToSingle(dr["WPProzentAenderung"]),
                    WPSType             = (Wertpapierklasse)Convert.ToInt32(dr["WPTypeID"]),
                    WPSSharpe           = Convert.ToSingle(dr["WPSharpe"]),

                    WPURLSharp   = dr["WPUrlSharpe"].ToString(),
                    WPXPathKurs  = dr["WPXPathKurs"].ToString(),
                    WPXPathAend  = dr["WPXPathAend"].ToString(),
                    WPXPathZeit  = dr["WPXPathZeit"].ToString(),
                    WPXPathSharp = dr["WPXPathSharp"].ToString(),
                    WPSColor     = "0"
                });
            }
            progrBar.Maximum = _wertpapsynchro.Count;
            Progress         = 1;
            Minimum          = 0;
            Maximum          = _wertpapsynchro.Count;
            do
            {
            } while (LosGehts(true));
        }
Example #2
0
        public void VorgabeParameterBearbeiten()
        {
            liVorg.Clear();
            DateTime dt = DataSetAdmin.HolenAusXml(Helpers.GlobalRef.g_Ein.MyDataPfad);

            if (dt == null)
            {
                System.Windows.Forms.MessageBox.Show("MeineFinanzen VorgabeParameterBearbeiten.xaml.cs Fehler HolenAusXml() DataSetAdmin");
                System.Windows.Forms.MessageBox.Show("MeineFinanzen Fehler!!  Dateien nicht geladen!!!!");
                Close();
            }
            dtPortFol = DataSetAdmin.dsHier.Tables["tblPortFol"];       // dtPortFol geholt.
            foreach (DataRow dr in dtPortFol.Rows)                      // _wertpapsynchroneu erstellen
            {
                int typeid = (int)dr["WPTypeID"];
                if (typeid <= 10 || typeid >= 80)
                {
                    continue;
                }
                if (dr["WPISIN"].ToString().Length != 12)
                {
                    continue;
                }
                _wertpapsynchroneu.Add(new WertpapSynchroNeu {
                    WPVAnzahl   = Convert.ToSingle(dr["WPAnzahl"]),
                    WPVName     = dr["WPName"].ToString(),
                    WPVKursZeit = Convert.ToDateTime(dr["WPStand"]),
                    WPVISIN     = dr["WPISIN"].ToString(),

                    WPVURL              = dr["WPUrlText"].ToString(),
                    WPVKurs             = Convert.ToDouble(dr["WPKurs"]),
                    WPVProzentAenderung = Convert.ToDouble(dr["WPProzentAenderung"]),
                    WPVType             = Convert.ToInt32(dr["WPTypeID"]),
                    WPVSharpe           = Convert.ToSingle(dr["WPSharpe"]),

                    WPVURLSharp            = dr["WPUrlSharpe"].ToString(),
                    WPVRowColor            = "1",
                    WPVKursNeu             = 0,
                    WPVKursZeitNeu         = Convert.ToDateTime("01.01.1970"),
                    WPVProzentAenderungNeu = 0,
                    WPVSharpeNeu           = 0
                });
            }
            dgvUrls.ItemsSource = _wertpapsynchroneu;
            dgvUrls.UpdateLayout();
            dtVorgabe = DataSetAdmin.dsHier.Tables["tblVorgabeInt2"];   // dtVorgabeInt2 geholt.
            // dtVorgabe.Clear();
            dtVorgabe.PrimaryKey = new DataColumn[] { dtVorgabe.Columns["Url1"], dtVorgabe.Columns["Url2"] };
            // ---- Datensätze erstellen falls sie nicht vorhanden sind in liVorg. ----
            if (dtVorgabe.Rows.Count == 0)
            {
                DataRow newRow = DataSetAdmin.dtVorgabeInt2.NewRow();   // Standard Basissatz erstellen.
                newRow["Url1"]        = "https://www.finanzen.net/";
                newRow["Url2"]        = "fonds";
                newRow["Boxanfang"]   = "row quotebox";
                newRow["Ausschluss1"] = "Kurse";
                newRow["Wert1"]       = "Kursdatum";
                newRow["Wert2"]       = "Kurszeit";
                newRow["Wert3"]       = "Kurs";
                newRow["Wert4"]       = "";
                newRow["Vg2Color"]    = "2";
                dtVorgabe.Rows.Add(newRow);
            }
            // ---- liVorg für dgvVorgabeInt2 erstellen ----
            for (int i = dtVorgabe.Rows.Count - 1; i >= 0; i--)
            {
                DataRow dr = dtVorgabe.Rows[i];
                //foreach (DataRow dr in dtVorgabeLoop.Rows) {
                Vorg = new UrlVerwalten {
                    Url1        = dr["Url1"].ToString(),
                    Url2        = dr["Url2"].ToString(),
                    Boxanfang   = dr["Boxanfang"].ToString(),
                    Ausschluss1 = dr["Ausschluss1"].ToString(),
                    Wert1       = dr["Wert1"].ToString(),
                    Wert2       = dr["Wert2"].ToString(),
                    Wert3       = dr["Wert3"].ToString(),
                    Wert4       = dr["Wert4"].ToString()
                };
                liVorg.Add(Vorg);
            }
            // ---- In dgvUrl Color auf 'Eingefügt' setzen, wenn kein Vogabesatz vorhanden.
            string[] splitUrls = null;
            string[] splitVorg = null;
            foreach (WertpapSynchroNeu wps in _wertpapsynchroneu)
            {
                splitUrls = wps.WPVURL.Split('/');
                bool gef = false;
                if (splitUrls.Length < 3)
                {
                    continue;           // wp ohne url
                }
                foreach (UrlVerwalten vg in liVorg)
                {
                    splitVorg = vg.Url1.Split('/');            // https leer www.finanzen.net leer
                    if (splitUrls[2] == splitVorg[2] && splitUrls[3] == vg.Url2)
                    {
                        // www.finanzen.net == dto   &&        fonds == fonds
                        gef = true;
                        break;
                    }
                }
                if (!gef)
                {
                    // ---- Und jetzt fehlenden Satz in liVorg erstellen. ----
                    string[] splitUrls2 = wps.WPVURL.Split('/');
                    Vorg = new UrlVerwalten {
                        Url1        = splitUrls2[0] + "//" + splitUrls2[2] + "/",
                        Url2        = splitUrls2[3],
                        Boxanfang   = "",
                        Ausschluss1 = "",
                        Wert1       = "",
                        Wert2       = "",
                        Wert3       = "",
                        Wert4       = "",
                        Vg2Color    = "0"
                    };
                    liVorg.Add(Vorg);
                    AddliVorgTodtVorgabe(liVorg, Vorg);
                }
            }
            Meldung("VorgabeParameter aufgebaut.");
            dgvUrls.ItemsSource             = null;
            dgvUrls.ItemsSource             = _wertpapsynchroneu;
            dgvUrls.EnableRowVirtualization = false;
            dgvUrls.UpdateLayout();
            dgvVorgabeInt2.ItemsSource             = null;
            dgvVorgabeInt2.ItemsSource             = liVorg;
            dgvVorgabeInt2.EnableRowVirtualization = false;
            dgvVorgabeInt2.UpdateLayout();
            DoEvents();
        }