Exemplo n.º 1
0
        private void StornirajFakturu(string staraFaktura)
        {
            //ubaci u racuni i vrati broj nove fakture, oduzmi, način plaćanja i zki
            //zki treba: ako ga nema onda NE fiskalizira novu fakturu, ako ga ima onda fiskalizira
            string[] iznosi = InsertFaktura(staraFaktura, id_kasa, id_ducan, sifraPartnera);

            string novaFaktura   = iznosi[0].ToString();
            string oduzmi        = iznosi[1].ToString();
            string nacinPlacanja = iznosi[2].ToString();
            string zki           = iznosi[3].ToString();

            DataTable DSfakturaStavke = classSQL.select("SELECT * FROM faktura_stavke where broj_fakture='" + staraFaktura + "'  AND id_ducan='" + id_ducan + "' AND id_kasa='" + id_kasa + "'", "faktura_stavke").Tables[0];

            SrediStavkeRobuSkladiste(ref DSfakturaStavke, staraFaktura, novaFaktura, oduzmi);

            Util.AktivnostZaposlenika.SpremiAktivnost(new DataGridView(), null, "Faktura", staraFaktura, true);

            DataTable DT = classSQL.select("SELECT date, ukupno FROM fakture where broj_fakture='" + novaFaktura + "' AND id_ducan='" + id_ducan + "' AND id_kasa='" + id_kasa + "'", "fakture").Tables[0];

            if (!Class.Dokumenti.isKasica && Class.Postavke.automatski_zapisnik)
            {
                string oldNapomena = "Kreiranje zapisnika zbog promjene cijena na fakturi broj " + staraFaktura + "/" + Class.Postavke.default_poslovnica + "/" + Class.Postavke.naplatni_uredaj_faktura;
                string newNapomena = "Kreiranje zapisnika zbog promjene cijena na fakturi broj " + novaFaktura + "/" + Class.Postavke.default_poslovnica + "/" + Class.Postavke.naplatni_uredaj_faktura;

                Class.ZapisnikPromjeneCijene _zapisnik = new Class.ZapisnikPromjeneCijene(oldNapomena, newNapomena);
                if (_zapisnik.kreiraniZapisnik)
                {
                    MessageBox.Show("Kreiranje je zapisnik o promjeni cijene zbog stornirane fakture.");
                }
                _zapisnik = null;
            }
            if (DT.Rows.Count > 0)
            {
                if (zki != "")
                {
                    FiskalizirajFakturu(DSfakturaStavke, Convert.ToDateTime(DT.Rows[0][0].ToString()), Convert.ToInt32(novaFaktura), DT.Rows[0][1].ToString(), nacinPlacanja);
                    provjera_sql(classSQL.insert("INSERT INTO aktivnost_zaposlenici (id_zaposlenik,datum,radnja) VALUES" +
                                                 "('" + Properties.Settings.Default.id_zaposlenik + "','" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                                                 "'Storno fakture broj " + staraFaktura + " (fiskalizirana), nova faktura broj: " + novaFaktura + " (fiskalizirana)')"));
                }
                else
                {
                    provjera_sql(classSQL.insert("INSERT INTO aktivnost_zaposlenici (id_zaposlenik,datum,radnja) VALUES" +
                                                 "('" + Properties.Settings.Default.id_zaposlenik + "','" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                                                 "'Storno fakture broj " + staraFaktura + " (nije fiskalizirana), nova faktura broj: " + novaFaktura + " (nije fiskalizirana)')"));
                }
            }
            else
            {
                MessageBox.Show("Greška kod fiskalizacije storna fakture!", "Greška!");
                provjera_sql(classSQL.insert("INSERT INTO aktivnost_zaposlenici (id_zaposlenik,datum,radnja) VALUES" +
                                             "('" + Properties.Settings.Default.id_zaposlenik + "','" + DateTime.Now.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                                             "'Storno fakture broj " + staraFaktura + " (fiskalizirana), nova faktura broj: " + novaFaktura + " (nije fiskalizirana)')"));
            }
        }
Exemplo n.º 2
0
        private void StornirajRacunHelper(string stariRacun)
        {
            classSQL.transaction("BEGIN;");
            //ubaci u racuni i vrati IznosGotovina, IznosKartica, ukupno i novi racun
            string[] iznosi = InsertRacun(stariRacun, id_kasa, id_ducan, sifraPartnera);

            string IznosGotovina = iznosi[0].ToString();
            string IznosKartica  = iznosi[1].ToString();
            string IznosVirman   = iznosi[2].ToString();
            string uk            = iznosi[3].ToString();
            string noviRacun     = iznosi[4].ToString();

            DataTable DSracunStavke = classSQL.select("SELECT * FROM racun_stavke where broj_racuna='" + stariRacun + "' AND id_kasa=" + id_kasa + " AND id_ducan=" + id_ducan, "racun_stavke").Tables[0];

            srediStavkeRobuSkladiste(ref DSracunStavke, stariRacun, noviRacun);

            bool paragonProvjera = false;

            foreach (DataRow r in DSracunStavke.Rows)
            {
                if (r["sifra_robe"].ToString()[0] != '!')
                {
                    paragonProvjera = true; break;
                }
            }
            if (paragonProvjera)
            {
                Util.AktivnostZaposlenika.SpremiAktivnost(new DataGridView(), null, "Maloprodaja", stariRacun, true);
            }

            srediPopuste(stariRacun, noviRacun, uk);
            classSQL.transaction("COMMIT;");

            if (!Class.Dokumenti.isKasica && Class.Postavke.automatski_zapisnik)
            {
                string oldNapomena = "Kreiranje zapisnika zbog promjene cijena na maloprodajnom računu broj " + stariRacun + "/" + Util.Korisno.nazivPoslovnica + "/" + Util.Korisno.nazivNaplatnogUredaja;
                string newNapomena = "Kreiranje zapisnika zbog promjene cijena na maloprodajnom računu broj " + noviRacun + "/" + Util.Korisno.nazivPoslovnica + "/" + Util.Korisno.nazivNaplatnogUredaja;

                Class.ZapisnikPromjeneCijene _zapisnik = new Class.ZapisnikPromjeneCijene(oldNapomena, newNapomena);
                if (_zapisnik.kreiraniZapisnik)
                {
                    MessageBox.Show("Kreiranje je zapisnik o promjeni cijene zbog storniranog računa.");
                }
                _zapisnik = null;
            }

            printaj(DSracunStavke, IznosGotovina, IznosKartica, IznosVirman, noviRacun, iznosi[5], iznosi[6]);
        }