Beispiel #1
0
        // Osvježavanje svojstava stavke. Ovo bi se inaèe trebalo raditi u poslovnom
        // objektu stavke ali to u ovom primjeru nije moguæe zbog jednostavnijeg dizajna frameworka
        private void stavkaDataGridView_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex == -1)
            {
                return;
            }

            if (e.ColumnIndex == 0 || e.ColumnIndex == 1)
            {
                try
                {
                    // Šifra
                    object sifArtikla = stavkaDataGridView[e.ColumnIndex, e.RowIndex].Value;
                    if (sifArtikla != null)
                    {
                        Artikl a = artiklBll.Fetch((int)sifArtikla);
                        if (a != null)
                        {
                            Stavka s = stavkaBindingSource.Current as Stavka;
                            s.JedCijArtikla   = a.CijArtikla;
                            s.JedMjereArtikla = a.JedMjere;
                        }
                    }
                }
                catch (InvalidCastException)
                {
                    // Nije unesena ispravna vrijednost. Zanemari. Validacija æe to uloviti.
                }
            }
        }
Beispiel #2
0
        // Stvara novi objekt èitanjem iz podataka baze
        public static Stavka CreateNew(IDataReader dr)
        {
            Stavka rez = new Stavka();

            rez.Load(dr);
            return(rez);
        }
Beispiel #3
0
        protected void Zoom()
        {
            if (stavkaDataGridView.SelectedCells.Count == 1 && stavkaDataGridView.SelectedCells[0].ColumnIndex == 0 || stavkaDataGridView.SelectedCells[0].ColumnIndex == 1)
            {
                ArtiklForm f = new ArtiklForm();
                f.StartPosition = FormStartPosition.CenterScreen;
                if (f.ShowDialog() == DialogResult.OK)
                {
                    // Potrebno zbog bindinga na lookup u sluèaju novounesenih artikala
                    artiklBindingSource.DataSource = artiklBll.FetchAll();

                    Artikl a = (Artikl)f.Selected;
                    Stavka s = null;
                    if (stavkaDataGridView.Rows[stavkaDataGridView.SelectedCells[0].RowIndex].IsNewRow)
                    {
                        stavkaBindingSource.CancelEdit();
                        Dokument dok = (Dokument)dokumentBindingSource.Current;
                        s = new Stavka();
                        dok.Stavke.Add(s);
                    }
                    else
                    {
                        s = (Stavka)stavkaBindingSource.Current;
                    }

                    if (s != null)
                    {
                        s.SifArtikla      = a.SifArtikla;
                        s.NazArtikla      = a.NazArtikla;
                        s.JedMjereArtikla = a.JedMjere;
                        s.JedCijArtikla   = a.CijArtikla;
                    }
                }
            }
        }
Beispiel #4
0
        // Obavlja DELETE
        private void Delete(Stavka item, SqlCommand cmd)
        {
            cmd.CommandText = "[dbo].[ap_Stavka_D]";
            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Parameters.Add(new SqlParameter("@IdDokumenta", SqlDbType.Int)).Value = item.IdDokumenta.HasValue ? (object)item.IdDokumenta.Value : DBNull.Value;
            cmd.Parameters.Add(new SqlParameter("@SifArtikla", SqlDbType.Int)).Value  = item.SifArtikla.HasValue ? (object)item.SifArtikla.Value : DBNull.Value;

            cmd.ExecuteNonQuery();
        }
Beispiel #5
0
        // Validacija pojedinog svojstva poslovnog objekta. Ukoliko
        // poslovno pravilo nije zadovoljeno, metoda baca iznimku.
        public void Validate(object businessObject, string propertyName)
        {
            Stavka target = (Stavka)businessObject;

            switch (propertyName)
            {
            case "JedCijArtikla":
            {
                if (!target.JedCijArtikla.HasValue)
                {
                    throw new Exception("Cijena je obavezno polje!");
                }

                if (target.JedCijArtikla.Value < 0)
                {
                    throw new Exception("Neispravan unos!");
                }

                break;
            }

            case "KolArtikla":
            {
                if (!target.KolArtikla.HasValue)
                {
                    throw new Exception("Kolièina je obavezno polje!");
                }

                if (target.KolArtikla.Value < 0)
                {
                    throw new Exception("Neispravan unos!");
                }

                break;
            }

            case "PostoRabat":
            {
                if (!target.PostoRabat.HasValue)
                {
                    throw new Exception("Rabat je obavezno polje!");
                }

                if (target.PostoRabat.Value < 0)
                {
                    throw new Exception("Neispravan unos!");
                }

                break;
            }

            default: break;
            }
        }
Beispiel #6
0
        // Vraæanje originalnih vrijednosti (poništenje izmjena)
        protected override void DoRestore(object backupObject)
        {
            Stavka bak = (Stavka)backupObject;

            idDokumenta     = bak.idDokumenta;
            sifArtikla      = bak.sifArtikla;
            kolArtikla      = bak.kolArtikla;
            jedCijArtikla   = bak.jedCijArtikla;
            postoRabat      = bak.postoRabat;
            nazArtikla      = bak.nazArtikla;
            jedMjereArtikla = bak.jedMjereArtikla;
        }
Beispiel #7
0
        // Pohrana originalnih vrijednosti kako bi se mogao napraviti
        // poništenje unosa
        protected override void DoBackup(object backupObject)
        {
            Stavka bak = (Stavka)backupObject;

            bak.idDokumenta     = idDokumenta;
            bak.sifArtikla      = sifArtikla;
            bak.kolArtikla      = kolArtikla;
            bak.jedCijArtikla   = jedCijArtikla;
            bak.postoRabat      = postoRabat;
            bak.nazArtikla      = nazArtikla;
            bak.jedMjereArtikla = jedMjereArtikla;
        }
Beispiel #8
0
        // Osvježavanje unosa i pridruživanje metode za BLL objekt poslovnom objektu
        private void stavkaBindingSource_CurrentChanged(object sender, EventArgs e)
        {
            // as za razliku od obiène pretvorbe tipa neæe puknuti s InvalidCastException
            // ako tip nije ispravan nego æe vratiti null.
            Stavka s = stavkaBindingSource.Current as Stavka;

            // Ako se radi o novom poslovnom objektu koji još ne zna gdje mu
            // je BLL objekt... ažuriraj.
            if (s != null && !s.HasBllObject)
            {
                s.NeedBllObject += new NeedBllObjectEventHandler(Stavka_NeedBllObject);
            }
        }
Beispiel #9
0
        // Obavlja INSERT
        private void Insert(Stavka item, SqlCommand cmd)
        {
            cmd.CommandText = "[dbo].[ap_Stavka_C]";
            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Parameters.Add(new SqlParameter("@IdDokumenta", SqlDbType.Int)).Value       = item.IdDokumenta.HasValue ? (object)item.IdDokumenta.Value : DBNull.Value;
            cmd.Parameters.Add(new SqlParameter("@SifArtikla", SqlDbType.Int)).Value        = item.SifArtikla.HasValue ? (object)item.SifArtikla.Value : DBNull.Value;
            cmd.Parameters.Add(new SqlParameter("@KolArtikla", SqlDbType.Decimal)).Value    = item.KolArtikla.HasValue ? (object)item.KolArtikla.Value : DBNull.Value;
            cmd.Parameters.Add(new SqlParameter("@JedCijArtikla", SqlDbType.Decimal)).Value = item.JedCijArtikla.HasValue ? (object)item.JedCijArtikla.Value : DBNull.Value;
            cmd.Parameters.Add(new SqlParameter("@PostoRabat", SqlDbType.Decimal)).Value    = item.PostoRabat.HasValue ? (object)item.PostoRabat.Value : DBNull.Value;

            cmd.ExecuteNonQuery();
        }
Beispiel #10
0
        protected override void Zoom()
        {
            if (InEditMode)
            {
                if (idPartneraComboBox.Focused)
                {
                    PartnerForm f = new PartnerForm();
                    f.StartPosition = FormStartPosition.CenterScreen;
                    if (f.ShowDialog() == DialogResult.OK)
                    {
                        // Potrebno zbog bindinga na lookup u sluèaju novounesenih partnera
                        partnerInfoBindingSource.DataSource = partnerBll.FetchAll();

                        Partner p = (Partner)f.Selected;
                        (dokumentBindingSource.Current as Dokument).IdPartnera = p.IdPartnera;
                    }
                }
                else if (idPrethDokumentaComboBox.Focused)
                {
                    DokumentForm f = new DokumentForm();
                    f.StartPosition = FormStartPosition.CenterScreen;
                    if (f.ShowDialog() == DialogResult.OK)
                    {
                        // Potrebno zbog bindinga na lookup u sluèaju novounesenih dokumenata
                        prethDokumentBindingSource.DataSource = dokumentBll.FetchAll();

                        Dokument d = (Dokument)f.Selected;
                        (dokumentBindingSource.Current as Dokument).IdPrethDokumenta = d.IdDokumenta;
                    }
                }
                else if (stavkaDataGridView.SelectedCells.Count == 1 &&
                         stavkaDataGridView.SelectedCells[0].ColumnIndex == 0 ||
                         stavkaDataGridView.SelectedCells[0].ColumnIndex == 1)
                {
                    ArtiklForm f = new ArtiklForm();
                    f.StartPosition = FormStartPosition.CenterScreen;
                    if (f.ShowDialog() == DialogResult.OK)
                    {
                        // Potrebno zbog bindinga na lookup u sluèaju novounesenih artikala
                        artiklBindingSource.DataSource = artiklBll.FetchAll();

                        Artikl a = (Artikl)f.Selected;
                        Stavka s = null;
                        if (stavkaDataGridView.Rows[stavkaDataGridView.SelectedCells[0].RowIndex].IsNewRow)
                        {
                            stavkaBindingSource.CancelEdit();
                            Dokument dok = (Dokument)dokumentBindingSource.Current;
                            s = new Stavka();
                            dok.Stavke.Add(s);
                        }
                        else
                        {
                            s = (Stavka)stavkaBindingSource.Current;
                        }

                        s.SifArtikla      = a.SifArtikla;
                        s.NazArtikla      = a.NazArtikla;
                        s.JedMjereArtikla = a.JedMjere;
                        s.JedCijArtikla   = a.CijArtikla;
                    }
                }
                StatusBar.RefreshStatusBar();
            }
        }