コード例 #1
0
        public SelectGimnasticariPrethTakmForm(Gimnastika gim, bool izborTakmicenja)
        {
            InitializeComponent();
            this.gim = gim;
            this.izborTakmicenja = izborTakmicenja;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                initUI();
                gimMap = new Dictionary<int, List<GimnasticarUcesnik>>();
                takmicenja = loadTakmicenja(gim);
                setTakmicenja(takmicenja);
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #2
0
        public void initialize(Nullable<Gimnastika> gimnastika)
        {
            initializing = true;
            this.gimnastika = gimnastika;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();
                loadData();
                initUI();

                //dataContext.Commit();

                initializing = false;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #3
0
        protected override void filter(object filterObject)
        {
            GimnasticarUcesnikFilter flt = filterObject as GimnasticarUcesnikFilter;
            if (flt == null)
                return;

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();

                string failureMsg = "Ne postoje gimnasticari koji zadovoljavaju date kriterijume.";
                IList<GimnasticarUcesnik> gimnasticari = findGimnasticariUcesnici(
                    flt.Ime, flt.Prezime, flt.GodRodj, flt.Gimnastika, flt.Drzava,
                    flt.Kategorija, flt.Klub, takmicenjeId);
                setEntities(gimnasticari);
                if (gimnasticari.Count == 0)
                    MessageDialogs.showMessage(failureMsg, this.Text);
                dataGridViewUserControl1.clearSelection();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showError(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #4
0
        public void insert()
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                insertKategorijeGimnasticara();
                insertKluboviIMesta();
                insertDrzave();
                insertGimnasticari();
                insertRegistrovaniGimnasticari();
                insertSudije();

                dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #5
0
        public static Opcije loadOptions()
        {
            IDataContext dataContext = null;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                // mora ovako zato sto metod dataContext.GetAll<Opcije> trazi da
                // Opcije imaju public contructor, a to nije moguce jer su Opcije
                // singleton
                string query = @"from Opcije";
                IList result = dataContext.ExecuteQuery(QueryLanguageType.HQL,
                    query, new string[] { }, new object[] { });
                if (result.Count > 0)
                    return (Opcije)result[0];
                else
                    return null;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #6
0
        public OtvoriTakmicenjeForm(Nullable<int> currTakmicenjeId, bool selectMode, int broj, bool gornjaGranica)
        {
            InitializeComponent();
            this.currTakmicenjeId = currTakmicenjeId;
            this.selectMode = selectMode;
            this.broj = broj;
            this.gornjaGranica = gornjaGranica;

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                initUI();
                takmicenja = loadTakmicenja();
                setTakmicenja(takmicenja);

                //          dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #7
0
ファイル: ZrebForm.cs プロジェクト: stankela/bilten
        // TODO: Dodaj provere i validaciju.
        private void btnOK_Click(object sender, EventArgs e)
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje.ZrebZaFinalePoSpravama = textBox1.Text.Trim();
                dataContext.Save(takmicenje);
                dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showError(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                this.DialogResult = DialogResult.Cancel;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #8
0
ファイル: SelectSudijaForm.cs プロジェクト: stankela/bilten
        private void showAll()
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();

                IList<Sudija> sudije = loadSudije();
                setEntities(sudije);
                DataGridViewUserControl.sort<Sudija>(
                    new string[] { "Prezime", "Ime" },
                    new ListSortDirection[] { ListSortDirection.Ascending, ListSortDirection.Ascending });
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #9
0
ファイル: ZrebForm.cs プロジェクト: stankela/bilten
        public ZrebForm(int takmicenjeId)
        {
            InitializeComponent();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = loadTakmicenje(takmicenjeId);

                initUI();

                //dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #10
0
        public RezultatiEkipeZbirViseKolaForm(int takmicenjeId)
        {
            InitializeComponent();

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = loadTakmicenje(takmicenjeId);

                IList<RezultatskoTakmicenje> svaRezTakmicenja = loadRezTakmicenja(takmicenje);
                if (svaRezTakmicenja.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                rezTakmicenja = takmicenje.getRezTakmicenjaEkipe(svaRezTakmicenja, DeoTakmicenjaKod.Takmicenje1, true);
                if (rezTakmicenja.Count == 0)
                    throw new BusinessException("Ne postoji takmicenje IV ni za jednu kategoriju.");

                initUI();
                takmicenjeOpened = new bool[rezTakmicenja.Count];
                cmbTakmicenje.SelectedIndex = 0;

                cmbTakmicenje.SelectedIndexChanged += new EventHandler(cmbTakmicenje_SelectedIndexChanged);

                //onSelectedTakmicenjeChanged();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (InfrastructureException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #11
0
ファイル: RezultatiEkipeForm.cs プロジェクト: stankela/bilten
        public RezultatiEkipeForm(int takmicenjeId, DeoTakmicenjaKod deoTakKod)
        {
            InitializeComponent();
            this.deoTakKod = deoTakKod;

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);
                NHibernateUtil.Initialize(takmicenje);

                IList<RezultatskoTakmicenje> svaRezTakmicenja = loadRezTakmicenja(takmicenjeId);
                if (svaRezTakmicenja.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                rezTakmicenja = takmicenje.getRezTakmicenjaEkipe(svaRezTakmicenja, deoTakKod, false);
                if (rezTakmicenja.Count == 0)
                    throw new BusinessException("Ne postoji takmicenje IV ni za jednu kategoriju.");

                ocene = loadOcene(takmicenjeId, deoTakKod);
                sviRezultatiUkupno = takmicenje.createRezultatiUkupnoZaSveEkipe(rezTakmicenja, ocene, deoTakKod);

                initUI();
                takmicenjeOpened = new bool[rezTakmicenja.Count];
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (InfrastructureException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #12
0
        public KvalifikantiTak2Form(int takmicenjeId)
        {
            InitializeComponent();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                IList<RezultatskoTakmicenje> svaRezTakmicenja = loadRezTakmicenja(takmicenjeId);
                if (svaRezTakmicenja.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                rezTakmicenja = new List<RezultatskoTakmicenje>();
                foreach (RezultatskoTakmicenje rt in svaRezTakmicenja)
                {
                    if (rt.Propozicije.PostojiTak2 && rt.Propozicije.OdvojenoTak2)
                        rezTakmicenja.Add(rt);
                }
                if (rezTakmicenja.Count == 0)
                    throw new BusinessException("Ne postoji odvojeno takmicenje II ni za jednu kategoriju.");

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);

                initUI();
                takmicenjeOpened = new bool[rezTakmicenja.Count];
                cmbTakmicenje.SelectedIndex = 0;

                cmbTakmicenje.SelectedIndexChanged += new EventHandler(cmbTakmicenje_SelectedIndexChanged);

                //onSelectedTakmicenjeChanged();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (InfrastructureException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #13
0
        private void btnIzaberi_Click(object sender, EventArgs e)
        {
            DialogResult dlgResult = DialogResult.None;
            SelectGimnasticariPrethTakmForm form = null;
            try
            {
                form = new SelectGimnasticariPrethTakmForm(gimnastika, true);
                dlgResult = form.ShowDialog();
            }
            catch (InfrastructureException ex)
            {
                MessageDialogs.showError(ex.Message, this.Text);
                return;
            }

            if (dlgResult != DialogResult.OK || form.SelTakmicenje == null)
                return;

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = form.SelTakmicenje;
                txtTakmicenje.Text = takmicenje.Naziv;
                dataContext.Attach(takmicenje, false);

                lstTakmicenja.Items.Clear();
                takmicenja.Clear();
                foreach (RezultatskoTakmicenjeDescription d in takmicenje.TakmicenjeDescriptions)
                {
                    lstTakmicenja.Items.Add(d, true);
                    takmicenja.Add(d);
                }
                lstKategorije.Items.Clear();
                kategorije.Clear();
                foreach (TakmicarskaKategorija k in takmicenje.Kategorije)
                {
                    lstKategorije.Items.Add(k, true);
                    kategorije.Add(k);
                }
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showMessage(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                return;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #14
0
        public RezultatiSpravaForm(int takmicenjeId, DeoTakmicenjaKod deoTakKod, bool selectMode,
            RezultatskoTakmicenje startTakmicenje, Sprava startSprava)
        {
            InitializeComponent();
            this.deoTakKod = deoTakKod;
            this.selectMode = selectMode;

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);
                NHibernateUtil.Initialize(takmicenje);

                IList<RezultatskoTakmicenje> svaRezTakmicenja = loadRezTakmicenja(takmicenjeId);
                if (svaRezTakmicenja.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                rezTakmicenja = takmicenje.getRezTakmicenjaSprava(svaRezTakmicenja, deoTakKod, false);
                if (rezTakmicenja.Count == 0)
                    throw new BusinessException("Ne postoji takmicenje III ni za jednu kategoriju.");

                initUI(startTakmicenje, startSprava);
                rezultatiOpened = new HashSet<int>();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (InfrastructureException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #15
0
ファイル: OceneForm.cs プロジェクト: stankela/bilten
        public OceneForm(int takmicenjeId, DeoTakmicenjaKod deoTakKod)
        {
            InitializeComponent();
            this.deoTakKod = deoTakKod;

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                kategorije = loadKategorije(takmicenjeId);
                if (kategorije.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);
                ocene = new Dictionary<int, List<Ocena>>();

                initUI();
                cmbKategorija.SelectedIndex = 0;
                cmbSprava.SelectedIndex = 0;

                cmbKategorija.SelectedIndexChanged += new EventHandler(selectedOceneChanged);
                cmbSprava.SelectedIndexChanged += new EventHandler(selectedOceneChanged);

                onSelectedOceneChanged();

              //          dataContext.Commit();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #16
0
        public TakmicariKategorijeForm(int takmicenjeId)
        {
            InitializeComponent();

            // TODO3: Probaj da nadjes nacin da obavestis korisnika da postoje gimnasticari koji su uneti u kategorije, a
            // nisu uneti u takmicenja (pa nece biti prikazani u rezultatima)

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicarskeKategorije = loadKategorije(takmicenjeId);
                if (takmicarskeKategorije.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                loadGimnasticari();

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);
                NHibernateUtil.Initialize(takmicenje);

                initUI();
                tabOpened = new bool[takmicarskeKategorije.Count];
                onSelectedIndexChanged();

                //dataContext.Commit();
            }
            catch(BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #17
0
        protected override void filter(object filterObject)
        {
            GimnasticarFilter flt = filterObject as GimnasticarFilter;
            if (flt == null)
                return;

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();

                // biranje gimnasticara sa prethodnog takmicenja
                //Takmicenje takmicenje = dataContext.GetById<Takmicenje>(5);
                //gimnasticari = dataContext.ExecuteNamedQuery<Gimnasticar>(
                //    "FindGimnasticariByTakmicenje",
                //    new string[] { "takmicenje" }, new object[] { takmicenje });

                IList<Gimnasticar> gimnasticari;
                string failureMsg = "";
                if (flt.RegBroj != null)
                {
                    gimnasticari = findGimnasticari(flt.RegBroj);
                    if (gimnasticari.Count == 0)
                        failureMsg = "Ne postoji gimnasticar sa datim registarskim brojem.";
                }
                else
                {
                    gimnasticari = findGimnasticari(flt.Ime, flt.Prezime,
                        flt.GodRodj, flt.Gimnastika, flt.Drzava, flt.Kategorija,
                        flt.Klub);
                    if (gimnasticari.Count == 0)
                        failureMsg = "Ne postoje gimnasticari koji zadovoljavaju date kriterijume.";
                }
                setEntities(gimnasticari);
                if (gimnasticari.Count == 0)
                    MessageDialogs.showMessage(failureMsg, this.Text);
                dataGridViewUserControl1.clearSelection();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showError(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #18
0
        public void delete()
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                IList<Gimnasticar> gimnasticari = dataContext.GetAll<Gimnasticar>();
                foreach (Gimnasticar g in gimnasticari)
                    dataContext.Delete(g);

                IList<KategorijaGimnasticara> kategorije = dataContext.GetAll<KategorijaGimnasticara>();
                foreach (KategorijaGimnasticara k in kategorije)
                    dataContext.Delete(k);

                IList<Klub> klubovi = dataContext.GetAll<Klub>();
                foreach (Klub k in klubovi)
                    dataContext.Delete(k);

                IList<Mesto> mesta = dataContext.GetAll<Mesto>();
                foreach (Mesto m in mesta)
                    dataContext.Delete(m);

                IList<Sudija> sudije = dataContext.GetAll<Sudija>();
                foreach (Sudija s in sudije)
                    dataContext.Delete(s);

                IList<Drzava> drzave = dataContext.GetAll<Drzava>();
                foreach (Drzava d in drzave)
                    dataContext.Delete(d);

                dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #19
0
        public KvalifikantiTak3EditorForm(int takmicenjeId, int rezTakmicenjeId, Sprava sprava)
        {
            InitializeComponent();
            this.sprava = sprava;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                rezTakmicenje = loadRezTakmicenje(rezTakmicenjeId);
                if (rezTakmicenje == null)
                    throw new BusinessException("Greska u programu.");

                takmicenje = dataContext.GetById<Takmicenje>(takmicenjeId);
                NHibernateUtil.Initialize(takmicenje);

                initUI();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (InfrastructureException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #20
0
        public TakmicariTakmicenjaForm(int takmicenjeId)
        {
            InitializeComponent();

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                rezTakmicenja = loadRezTakmicenja(takmicenjeId);
                if (rezTakmicenja.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");

                initUI();
                tabOpened = new bool[rezTakmicenja.Count];
                onSelectedIndexChanged();

                //dataContext.Commit();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #21
0
        public StartListaRotEditorForm(int rasporedId, Sprava sprava,
            int grupa, int rotacija, int takmicenjeId, Color[] bojeZaEkipe)
        {
            InitializeComponent();
            this.takmicenjeId = takmicenjeId;
            this.rotacija = rotacija;
            this.bojeZaEkipe = bojeZaEkipe;

            spravaGridUserControl1.init(sprava);
            spravaGridUserControl1.DataGridViewUserControl.DataGridView.CellFormatting += new DataGridViewCellFormattingEventHandler(DataGridView_CellFormatting);
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                raspored = loadRaspored(rasporedId);
                startLista = raspored.getStartLista(sprava, grupa, rotacija);
                foreach (NastupNaSpravi n in startLista.Nastupi)
                {
                    //  potrebno za slucaj kada se u start listi nalaze i gimnasticari iz kategorija razlicitih od kategorija
                    // za koje start lista vazi.
                    NHibernateUtil.Initialize(n.Gimnasticar.TakmicarskaKategorija);
                }

                initUI();
                spravaGridUserControl1.setItems(startLista.Nastupi);

            //    dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #22
0
ファイル: PropozicijeForm.cs プロジェクト: stankela/bilten
        public PropozicijeForm(int takmicenjeId)
        {
            InitializeComponent();
            treeView1.HideSelection = false;

            Cursor.Current = Cursors.WaitCursor;
            Cursor.Show();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                takmicenje = loadTakmicenje(takmicenjeId);
                if (takmicenje.Kategorije.Count == 0)
                    throw new BusinessException("Morate najpre da unesete takmicarske kategorije.");
                rezTakmicenja = loadRezTakmicenja(takmicenjeId);

                addPages();
            }
            catch (BusinessException)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;

                Cursor.Hide();
                Cursor.Current = Cursors.Arrow;
            }
        }
コード例 #23
0
        public SelectSudijaUcesnikForm(int takmicenjeId)
        {
            InitializeComponent();
            Text = "Izaberi sudiju";
            this.ClientSize = new System.Drawing.Size(800, 540);
            btnFilter.Enabled = false;
            initializeGridColumns();

            DataGridViewUserControl.GridColumnHeaderMouseClick += new EventHandler<GridColumnHeaderMouseClickEventArgs>(DataGridViewUserControl_GridColumnHeaderMouseClick);

            FetchModes.Add(new AssociationFetch(
                "DrzavaUcesnik", AssociationFetchMode.Eager));
            FetchModes.Add(new AssociationFetch(
                "KlubUcesnik", AssociationFetchMode.Eager));

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();

                IList<SudijaUcesnik> sudije = loadSudije(takmicenjeId);
                setEntities(sudije);
                DataGridViewUserControl.sort<SudijaUcesnik>(
                    new string[] { "Prezime", "Ime" },
                    new ListSortDirection[] { ListSortDirection.Ascending, ListSortDirection.Ascending });
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #24
0
ファイル: MilanoInitializer.cs プロジェクト: stankela/bilten
        public void insert()
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                insertTakmicenje();
                insertGimnasticariAndDrzaveUcesniciAndAddRezTakmicenjaUcesnici();
                insertSudijeUcesnici();

                insertRasporedSudija();
                insertStartListe();
                insertOcene();

                insertRezultatiUkupno(DeoTakmicenjaKod.Takmicenje1);
                insertRezultatiUkupno(DeoTakmicenjaKod.Takmicenje2);

                insertRezultatiSprava(DeoTakmicenjaKod.Takmicenje1);
                insertRezultatiSprava(DeoTakmicenjaKod.Takmicenje3);

                dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #25
0
        public SelectKategorijaForm(int takmicenjeId,
            IList<TakmicarskaKategorija> nedozvoljeneKategorije,
            bool kategorijeGimnasticara,
            string labelText)
        {
            InitializeComponent();
            this.kategorijeGimnasticara = kategorijeGimnasticara;
            this.labelText = labelText;
            this.nedozvoljeneKategorije = nedozvoljeneKategorije;
            selektovaneKategorije = new List<TakmicarskaKategorija>();
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();

                IList<TakmicarskaKategorija> kategorije;
                if (kategorijeGimnasticara)
                    kategorije = loadKategorijeGimnasticara(takmicenjeId);
                else
                    kategorije = loadTakKategorije(takmicenjeId);
                sveKategorije = new List<TakmicarskaKategorija>(kategorije);
                createUI();

            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #26
0
        public RasporedSudijaEditorForm(int rasporedId, Sprava sprava,
            int takmicenjeId)
        {
            InitializeComponent();
            this.takmicenjeId = takmicenjeId;
            spravaGridUserControl1.init(sprava);
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                // TODO: Trebalo bi i NHibernateUtil.Initialize smestiti u
                // IDataContext klasu

                raspored = loadRaspored(rasporedId);
                sudijskiOdbor = raspored.getOdbor(sprava);

                initUI();
                spravaGridUserControl1.setItems(sudijskiOdbor.Raspored);

              //  dataContext.Commit();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #27
0
ファイル: OpcijeForm.cs プロジェクト: stankela/bilten
        private void btnOk_Click(object sender, EventArgs e)
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                Notification notification = new Notification();
                requiredFieldsAndFormatValidation(notification);
                if (!notification.IsValid())
                    throw new BusinessException(notification);

                update();

                dataContext.Commit();
                closedByOK = true;
            }
            catch (BusinessException ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                if (ex.Notification != null)
                {
                    NotificationMessage msg = ex.Notification.FirstMessage;
                    MessageDialogs.showMessage(msg.Message, this.Text);
                    setFocus(msg.FieldName);
                }
                else if (!string.IsNullOrEmpty(ex.InvalidProperty))
                {
                    MessageDialogs.showMessage(ex.Message, this.Text);
                    setFocus(ex.InvalidProperty);
                }
                else
                {
                    MessageDialogs.showMessage(ex.Message, this.Text);
                }
                this.DialogResult = DialogResult.None;
            }
            catch (InfrastructureException ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                //discardChanges();
                MessageDialogs.showError(ex.Message, this.Text);
                this.DialogResult = DialogResult.Cancel;
                closedByCancel = true;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                //discardChanges();
                MessageDialogs.showError(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                this.DialogResult = DialogResult.Cancel;
                closedByCancel = true;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #28
0
        private void promeniKvalStatus(KvalifikacioniStatus kvalStatus)
        {
            RezultatSpravaFinaleKupa rez
                = spravaGridUserControl1.DataGridViewUserControl.getSelectedItem<RezultatSpravaFinaleKupa>();
            int selCount = spravaGridUserControl1.DataGridViewUserControl.getSelectedItems<RezultatSpravaFinaleKupa>().Count;
            if (selCount != 1 || rez.KvalStatus == kvalStatus)
                return;

            string msg = String.Empty;
            if (kvalStatus != KvalifikacioniStatus.None)
            {
                string msgFmt = "Da li zelite da oznacite sa \"{1}\" gimnasticara \"{0}\"?";
                msg = String.Format(msgFmt, rez.Gimnasticar, kvalStatus);
            }
            else
            {
                string msgFmt = "Da li zelite da ponistite oznaku \"{1}\" za gimnasticara \"{0}\"?";
                msg = String.Format(msgFmt, rez.Gimnasticar, rez.KvalStatus);
            }
            if (!MessageDialogs.queryConfirmation(msg, this.Text))
                return;

            // NOTE: Promena kval. statusa kod finala kupa namerno je implementirana da se cuva u posebnoj tabeli kao
            // update na postojece rezultate. Ako bih implementirao drugacije, tj. da se cuva u istoj tabeli gde su i rezultati,
            // tada bi se poredak snimio u bazu prilikom prvog otvaranja prozora, i ne bi se ponovo izracunavao prilikom
            // svakog sledeceg otvaranja prozora vec bi se ucitavao iz baze. U tom slucaju ne bih mogao da postignem da se
            // npr. promeni neki rezultat iz prvog i drugog kola i da ta promena automatski bude vidljiva kada se ponovo
            // otvori prozor za finale kupa.

            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                insertRezultatSpravaFinaleKupaUpdate(rez.Gimnasticar, ActiveTakmicenje, ActiveSprava, kvalStatus);
                rez.KvalStatus = kvalStatus;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showError(Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                Close();
                return;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }

            spravaGridUserControl1.DataGridViewUserControl.refreshItems();
            spravaGridUserControl1.DataGridViewUserControl.setSelectedItem<RezultatSpravaFinaleKupa>(rez);
        }
コード例 #29
0
        void cmdSelectedRezultatiChanged()
        {
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                onSelectedRezultatiChanged();
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                MessageDialogs.showError(Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                Close();
                return;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }
コード例 #30
0
ファイル: SudijeIOcenePage.cs プロジェクト: stankela/bilten
        private bool postojeUneteOcene(int takmicenjeId)
        {
            IDataContext dataContext = null;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                string query = @"from Ocena o
                           where o.Gimnasticar.Takmicenje.Id = :id";
                IList<Ocena> ocene = dataContext.ExecuteQuery<Ocena>(QueryLanguageType.HQL, query,
                        new string[] { "id" }, new object[] { takmicenjeId });
                return ocene.Count > 0;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                throw new InfrastructureException(
                    Strings.getFullDatabaseAccessExceptionMessage(ex), ex);
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }
        }