예제 #1
0
        static void Main(string[] args)
        {
            for(int i = 0; i < args.Length; i++)
            {
                switch(args[i])
                {
                    case "-n":
                        i++;
                        int n = Int32.Parse(args[i]);
                        if (n < 0)
                        {
                            System.Console.WriteLine("Error parsing arguments!");
                            return;
                        }
                        else
                        {
                            LiczbaWynajec = n;
                        }
                        break;
                    default:
                        break;
                }
            }

            LiczbaWynajecPojedynczegoPojazdu = (LiczbaWynajec * 3) / 2;
            LiczbaAdresow = 2 * LiczbaWynajec;
            LiczbaOddzialow = LiczbaAdresow / 20;
            LiczbaKierowcow = 5 * LiczbaOddzialow;
            LiczbaPojazdow = 2 * LiczbaKierowcow;

            LiczbaWynajecDodane = LiczbaWynajec / 100;

            LiczbaWynajecPojedynczegoPojazduDodane = (LiczbaWynajecDodane * 3) / 2;
            LiczbaAdresowDodane = 2 * LiczbaWynajecDodane;
            LiczbaOddzialowDodane = LiczbaAdresowDodane / 20;
            LiczbaKierowcowDodane = 5 * LiczbaOddzialowDodane;
            LiczbaPojazdowDodane = 3 * LiczbaKierowcowDodane;

            shKlienci.Name = "KlienciT1";
            shKlienci2.Name = "KlienciT2";
            /*
            try
            {
                make_sheets();
            }
            catch (Exception ex)
            {
                excel_destination.Quit();
            }
            System.Console.WriteLine("Skonczyl sie excel");
            */

            Adresy = new AdresPojedynczy[LiczbaAdresow];
            Pojazdy = new PojazdPojedynczy[LiczbaPojazdow];

            zajeteAdresy = new bool[Program.LiczbaAdresow];
            zajeciKierowcy = new bool[Program.LiczbaKierowcow];

            Encje = new Encja[LiczbaEncji];

            Encje[2] = new Kierowca(LiczbaKierowcow);
            Encje[0] = new Adres(LiczbaAdresow);
            Encje[1] = new Oddzial(LiczbaOddzialow);
            Encje[3] = new Pojazd(LiczbaPojazdow);
            Encje[4] = new Wynajem(LiczbaWynajec);
            Encje[5] = new WynajemPojedycznegoPojazdu(LiczbaWynajecPojedynczegoPojazdu);

            TablicaZajetosci = new List<int>[LiczbaWynajec];

            for (int i = 0; i < TablicaZajetosci.Length; i++)
            {
                TablicaZajetosci[i] = new List<int>();
            }

            FileWriter = new StreamWriter(PathToCreateSql);
            FileWriter.AutoFlush = true;

            FileWriterInsert = new StreamWriter(PathToInsertSql);
            FileWriterInsert.AutoFlush = true;

            FileWriterTwo = new StreamWriter(PathToSqlT2);
            FileWriterTwo.AutoFlush = true;

            FileWriter.WriteLine("CREATE DATABASE TransakcjeWynajmu");
            FileWriter.WriteLine("GO");
            FileWriter.WriteLine();
            FileWriter.WriteLine("USE TransakcjeWynajmu");
            FileWriter.WriteLine("GO");
            FileWriter.WriteLine();

            int u = 0;

            foreach (Encja e in Encje)
            {
                e.Create(FileWriter);

                if (e != Encje.Last())
                {
                    FileWriter.WriteLine("GO");
                    FileWriter.WriteLine();
                }
                else
                {
                    FileWriter.Write("GO");
                }
            }

            foreach (Encja e in Encje)
            {
                System.Console.WriteLine("Encja randomize {0}", u);
                u++;
                e.Randomize();
                System.Console.WriteLine();
            }
            if (JedenPlikWynikowy == true)
            {
                FileWriterInsert.WriteLine("USE TransakcjeWynajmu");
                FileWriterInsert.WriteLine("GO");
                FileWriterInsert.WriteLine();

                FileWriterInsert.WriteLine("SET ANSI_WARNINGS  OFF;");
                u = 0;
                foreach (Encja e in Encje)
                {
                    System.Console.WriteLine("Encja insert {0}", u);
                    u++;
                    e.Insert(FileWriterInsert);
                    System.Console.WriteLine();
                }

                FileWriterInsert.WriteLine("SET ANSI_WARNINGS  OFF;");
            }

            if (JedenPunktCzasowy == false)
            {

                PunktCzasowy = TimePoint.SecondTimePoint;

                Encja[] EncjeT2 = new Encja[LiczbaEncji];

                LiczbaKierowcow = LiczbaKierowcowDodane;
                zajeciKierowcy = new bool[LiczbaKierowcow];

                Adresy2 = new AdresPojedynczy[LiczbaAdresowDodane];
                Pojazdy2 = new PojazdPojedynczy[LiczbaPojazdowDodane];

                EncjeT2[2] = new Kierowca(LiczbaKierowcowDodane);
                EncjeT2[0] = new Adres(LiczbaAdresowDodane);
                EncjeT2[1] = new Oddzial(LiczbaOddzialowDodane);
                EncjeT2[3] = new Pojazd(LiczbaPojazdowDodane);
                EncjeT2[4] = new Wynajem(LiczbaWynajecDodane);
                EncjeT2[5] = new WynajemPojedycznegoPojazdu(LiczbaWynajecPojedynczegoPojazduDodane);
                foreach (Encja e in EncjeT2)
                {

                    e.Randomize();
                }

                FileWriterTwo.WriteLine("USE TransakcjeWynajmu");
                FileWriterTwo.WriteLine("GO");
                FileWriterTwo.WriteLine();

                foreach (Encja e in EncjeT2)
                {
                    e.Update(FileWriterTwo);
                }

                FileWriterTwo.WriteLine("GO");
                FileWriterTwo.WriteLine();

                foreach (Encja e in EncjeT2)
                {
                    e.Insert(FileWriterTwo);
                }
            }
            wb_dest.Save();
            excel_destination.Quit();
            wb_dest_data2.Save();
            excel_destination2.Quit();
        }
예제 #2
0
        static void Main(string[] args)
        {
            for (int i = 0; i < args.Length; i++)
            {
                switch (args[i])
                {
                case "-n":
                    i++;
                    int n = Int32.Parse(args[i]);
                    if (n < 0)
                    {
                        System.Console.WriteLine("Error parsing arguments!");
                        return;
                    }
                    else
                    {
                        LiczbaWynajec = n;
                    }
                    break;

                default:
                    break;
                }
            }


            LiczbaWynajecPojedynczegoPojazdu = (LiczbaWynajec * 3) / 2;
            LiczbaAdresow   = 2 * LiczbaWynajec;
            LiczbaOddzialow = LiczbaAdresow / 20;
            LiczbaKierowcow = 5 * LiczbaOddzialow;
            LiczbaPojazdow  = 2 * LiczbaKierowcow;

            LiczbaWynajecDodane = LiczbaWynajec / 100;

            LiczbaWynajecPojedynczegoPojazduDodane = (LiczbaWynajecDodane * 3) / 2;
            LiczbaAdresowDodane   = 2 * LiczbaWynajecDodane;
            LiczbaOddzialowDodane = LiczbaAdresowDodane / 20;
            LiczbaKierowcowDodane = 5 * LiczbaOddzialowDodane;
            LiczbaPojazdowDodane  = 3 * LiczbaKierowcowDodane;

            shKlienci.Name  = "KlienciT1";
            shKlienci2.Name = "KlienciT2";

            /*
             * try
             * {
             *  make_sheets();
             * }
             * catch (Exception ex)
             * {
             *  excel_destination.Quit();
             * }
             * System.Console.WriteLine("Skonczyl sie excel");
             */

            Adresy  = new AdresPojedynczy[LiczbaAdresow];
            Pojazdy = new PojazdPojedynczy[LiczbaPojazdow];

            zajeteAdresy   = new bool[Program.LiczbaAdresow];
            zajeciKierowcy = new bool[Program.LiczbaKierowcow];



            Encje = new Encja[LiczbaEncji];

            Encje[2] = new Kierowca(LiczbaKierowcow);
            Encje[0] = new Adres(LiczbaAdresow);
            Encje[1] = new Oddzial(LiczbaOddzialow);
            Encje[3] = new Pojazd(LiczbaPojazdow);
            Encje[4] = new Wynajem(LiczbaWynajec);
            Encje[5] = new WynajemPojedycznegoPojazdu(LiczbaWynajecPojedynczegoPojazdu);

            TablicaZajetosci = new List <int> [LiczbaWynajec];

            for (int i = 0; i < TablicaZajetosci.Length; i++)
            {
                TablicaZajetosci[i] = new List <int>();
            }

            FileWriter           = new StreamWriter(PathToCreateSql);
            FileWriter.AutoFlush = true;

            FileWriterInsert           = new StreamWriter(PathToInsertSql);
            FileWriterInsert.AutoFlush = true;

            FileWriterTwo           = new StreamWriter(PathToSqlT2);
            FileWriterTwo.AutoFlush = true;

            FileWriter.WriteLine("CREATE DATABASE TransakcjeWynajmu");
            FileWriter.WriteLine("GO");
            FileWriter.WriteLine();
            FileWriter.WriteLine("USE TransakcjeWynajmu");
            FileWriter.WriteLine("GO");
            FileWriter.WriteLine();

            int u = 0;

            foreach (Encja e in Encje)
            {
                e.Create(FileWriter);

                if (e != Encje.Last())
                {
                    FileWriter.WriteLine("GO");
                    FileWriter.WriteLine();
                }
                else
                {
                    FileWriter.Write("GO");
                }
            }

            foreach (Encja e in Encje)
            {
                System.Console.WriteLine("Encja randomize {0}", u);
                u++;
                e.Randomize();
                System.Console.WriteLine();
            }
            if (JedenPlikWynikowy == true)
            {
                FileWriterInsert.WriteLine("USE TransakcjeWynajmu");
                FileWriterInsert.WriteLine("GO");
                FileWriterInsert.WriteLine();

                FileWriterInsert.WriteLine("SET ANSI_WARNINGS  OFF;");
                u = 0;
                foreach (Encja e in Encje)
                {
                    System.Console.WriteLine("Encja insert {0}", u);
                    u++;
                    e.Insert(FileWriterInsert);
                    System.Console.WriteLine();
                }

                FileWriterInsert.WriteLine("SET ANSI_WARNINGS  OFF;");
            }

            if (JedenPunktCzasowy == false)
            {
                PunktCzasowy = TimePoint.SecondTimePoint;

                Encja[] EncjeT2 = new Encja[LiczbaEncji];

                LiczbaKierowcow = LiczbaKierowcowDodane;
                zajeciKierowcy  = new bool[LiczbaKierowcow];

                Adresy2  = new AdresPojedynczy[LiczbaAdresowDodane];
                Pojazdy2 = new PojazdPojedynczy[LiczbaPojazdowDodane];

                EncjeT2[2] = new Kierowca(LiczbaKierowcowDodane);
                EncjeT2[0] = new Adres(LiczbaAdresowDodane);
                EncjeT2[1] = new Oddzial(LiczbaOddzialowDodane);
                EncjeT2[3] = new Pojazd(LiczbaPojazdowDodane);
                EncjeT2[4] = new Wynajem(LiczbaWynajecDodane);
                EncjeT2[5] = new WynajemPojedycznegoPojazdu(LiczbaWynajecPojedynczegoPojazduDodane);
                foreach (Encja e in EncjeT2)
                {
                    e.Randomize();
                }

                FileWriterTwo.WriteLine("USE TransakcjeWynajmu");
                FileWriterTwo.WriteLine("GO");
                FileWriterTwo.WriteLine();

                foreach (Encja e in EncjeT2)
                {
                    e.Update(FileWriterTwo);
                }

                FileWriterTwo.WriteLine("GO");
                FileWriterTwo.WriteLine();

                foreach (Encja e in EncjeT2)
                {
                    e.Insert(FileWriterTwo);
                }
            }
            wb_dest.Save();
            excel_destination.Quit();
            wb_dest_data2.Save();
            excel_destination2.Quit();
        }