コード例 #1
0
        private void frmBlagajnickaIsplatnica_Load(object sender, EventArgs e)
        {
            try
            {
                PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();
                string iznos_slovima = broj_u_text.PretvoriBrojUTekst(iznos.ToString(), ',', "kn", "lp").ToString();

                string naslov             = (dokuments.Contains(dokument) ? "UPLATNICA BROJ:" : "ISPLATNICA BROJ:");
                string adresaNazivTvrtke  = Class.PodaciTvrtka.nazivTvrtke;
                string adresaAdresaTvrtke = Class.PodaciTvrtka.adresaTvrtke;
                string adresaGradTvrtke   = classSQL.select(string.Format(@"select concat(posta, ' ', grad) as grad from grad where id_grad = {0};", Class.PodaciTvrtka.gradTvrtke), "grad").Tables[0].Rows[0]["grad"].ToString();

                string adresa = adresaNazivTvrtke;
                if (adresa.Length > 0 && adresaAdresaTvrtke.Length > 0)
                {
                    adresa += Environment.NewLine;
                }
                adresa += adresaAdresaTvrtke;
                if (adresa.Length > 0 && adresaGradTvrtke.Length > 0)
                {
                    adresa += Environment.NewLine;
                }
                adresa += adresaGradTvrtke;

                ReportParameter p1 = new ReportParameter("adresa", adresa);
                ReportParameter p2 = new ReportParameter("naslov", naslov);
                ReportParameter p3 = new ReportParameter("broj", broj);
                ReportParameter p4 = new ReportParameter("iznos", (iznos.ToString("#,##0.00") + " kn"));
                ReportParameter p5 = new ReportParameter("slovima_iznos", iznos_slovima);
                ReportParameter p6 = new ReportParameter("kome", partner);
                ReportParameter p7 = new ReportParameter("za", dokument + (dokument.Length > 0 && broj_dokumenta.Length > 0 ? " - " : "") + broj_dokumenta);
                ReportParameter p8 = new ReportParameter("datum", mjesto_i_datum);
                this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p1, p2, p3, p4, p5, p6, p7, p8 });
                this.reportViewer1.RefreshReport();
            }
            catch (Exception)
            {
                throw;
            }
        }
コード例 #2
0
        private void FillRacun(string broj)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            //MessageBox.Show(broj_slovima.ToLower());

            string sql2 = "SELECT " +
                          " racun_stavke.kolicina," +
                          " racun_stavke.vpc," +
                          " racun_stavke.mpc," +
                          " CAST(racun_stavke.mpc AS NUMERIC) * CAST(REPLACE(racun_stavke.kolicina,',','.') AS NUMERIC)   -      (CAST(racun_stavke.mpc AS NUMERIC) * CAST(REPLACE(racun_stavke.kolicina,',','.') AS NUMERIC)*CAST(REPLACE(racun_stavke.rabat,',','.') AS NUMERIC)/100) AS iznos," +
                          " racun_stavke.porez," +
                          " racun_stavke.porez_potrosnja," +
                          " racun_stavke.broj_racuna," +
                          " racun_stavke.rabat," +
                          " racun_stavke.sifra_robe AS sifra," +
                          " roba.naziv as naziv," +
                          " racun_stavke.id_skladiste AS skladiste" +
                          " FROM racun_stavke" +
                          " LEFT JOIN roba ON roba.sifra=racun_stavke.sifra_robe " +
                          " WHERE racun_stavke.broj_racuna='" + broj + "' AND racun_stavke.id_ducan='" + (id_poslovnica == null ? Util.Korisno.idDucan : id_poslovnica) + "' AND racun_stavke.id_blagajna='" + (id_kasa == null ? Util.Korisno.idKasa : id_kasa) + "'";

            //DSRfakturaStavke DSfs = new DSRfakturaStavke();

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            string iznososlobpdv = "";
            string iznos_marza   = "";
            /////kraj priprema za fiskalizaciju

            double osnovica               = 0;
            double pdv_stavka             = 0;
            double Porez_potrosnja_stavka = 0;
            double ukupno = 0;

            double osnovica_sve        = 0;
            double Porez_potrosnja_sve = 0;
            double pdv_sve             = 0;
            double rabat_sve           = 0;
            double rabat = 0;

            ukupno_rabat = 0;

            for (int i = 0; i < dSRfakturaStavke.Tables[0].Rows.Count; i++)
            {
                if (DTpdv.Columns["stopa"] == null)
                {
                    DTpdv.Columns.Add("stopa");
                    DTpdv.Columns.Add("iznos");
                }

                double kolicina = Convert.ToDouble(dSRfakturaStavke.Tables[0].Rows[i]["kolicina"].ToString());
                double PP       = Convert.ToDouble(dSRfakturaStavke.Tables[0].Rows[i]["porez_potrosnja"].ToString());
                double PDV      = Convert.ToDouble(dSRfakturaStavke.Tables[0].Rows[i]["porez"].ToString());
                double VPC      = Convert.ToDouble(dSRfakturaStavke.Tables[0].Rows[i]["vpc"].ToString());

                double MPC = 0;
                double.TryParse(dSRfakturaStavke.Tables[0].Rows[i]["mpc"].ToString(), out MPC);

                //double cijena = ((VPC * (PP + PDV) / 100) + VPC);
                double mpc = MPC * kolicina;

                rabat        = Convert.ToDouble(dSRfakturaStavke.Tables[0].Rows[i]["rabat"].ToString());
                ukupno_rabat = (mpc * rabat / 100) + ukupno_rabat;
                mpc          = mpc - (mpc * rabat / 100);

                //Ovaj kod dobiva PDV
                double PreracunataStopaPDV = Convert.ToDouble((100 * PDV) / (100 + PDV + PP));
                pdv_stavka = (mpc * PreracunataStopaPDV) / 100;

                //Ovaj kod dobiva porez na potrošnju
                double PreracunataStopaPorezNaPotrosnju = Convert.ToDouble((100 * PP) / (100 + PDV + PP));
                Porez_potrosnja_stavka = (mpc * PreracunataStopaPorezNaPotrosnju) / 100;

                //izračun porez potrosnja
                Porez_potrosnja_sve = (Porez_potrosnja_stavka) + Porez_potrosnja_sve;

                //izračun osnovica
                if (rabat > 0)
                {
                    double pps = (100 * (PDV + PP)) / (100 + PDV + PP);
                    osnovica = mpc - (mpc * pps / 100);
                }
                else
                {
                    osnovica = VPC * kolicina;
                }
                osnovica_sve = (osnovica) + osnovica_sve;

                //Izracun pdv
                pdv_sve = pdv_sve + (pdv_stavka);

                StopePDVa(Convert.ToDecimal(PDV), (Convert.ToDecimal(mpc) * Convert.ToDecimal(PreracunataStopaPDV)) / 100);
                StopePDVa(PDV, Math.Round(pdv_stavka, 4), Math.Round(((VPC * kolicina) - (mpc * rabat / 100)), 4));

                //ukupno sve
                ukupno += mpc;
            }

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(SveUkupno.ToString(), ',', "kn", "lp").ToString();

            string   year = classSQL.select("SELECT datum_racuna FROM racuni WHERE broj_racuna='" + broj_dokumenta + "' AND racuni.id_ducan='" + (id_poslovnica == null ? Util.Korisno.idDucan : id_poslovnica) + "' AND racuni.id_kasa='" + (id_kasa == null ? Util.Korisno.idKasa : id_kasa) + "'", "racuni").Tables[0].Rows[0][0].ToString();
            DateTime date = Convert.ToDateTime(year);

            year = date.Year.ToString();

            string pdv_ispis = "";

            for (int p = 0; p < DTpdv.Rows.Count; p++)
            {
                if (pdv_ispis.Length > 0)
                {
                    pdv_ispis += " kn\r\n";
                }
                pdv_ispis += "" + DTpdv.Rows[p]["stopa"].ToString() + "%:   " + Convert.ToDecimal(DTpdv.Rows[p]["iznos"].ToString()).ToString("#0.00");
            }

            DataTable DTrac = classSQL.select("SELECT * FROM racuni WHERE racuni.broj_racuna='" + broj_dokumenta + "' AND racuni.id_ducan='" + (id_poslovnica == null ? Util.Korisno.idDucan : id_poslovnica) + "' AND racuni.id_kasa='" + (id_kasa == null ? Util.Korisno.idKasa : id_kasa) + "'", "racuni").Tables[0];
            string    popust_sve_napomena   = "";
            decimal   popust_cijelog_racuna = 0;

            decimal.TryParse(DTrac.Rows[0]["popust_cijeli_racun"].ToString(), out popust_cijelog_racuna);
            if (popust_cijelog_racuna > 0)
            {
                decimal popust_iznos = 0;
                popust_iznos         = ((decimal)ukupno * (1 + (((100 * popust_cijelog_racuna) / (100 - popust_cijelog_racuna)) / 100))) - (decimal)ukupno;
                popust_sve_napomena  = "\r\nUKUPNO POPUSTA NA RAČUN: " + popust_cijelog_racuna + "%\r\n";
                popust_sve_napomena += "POPUST U KN: " + Math.Round(popust_iznos, 3).ToString("#0.00") + " kn\r\n";
            }

            string sql = "SELECT " +
                         " racuni.broj_racuna," +
                         " 'JIR: ' + racuni.jir AS string1," +
                         " 'ZIK: ' + racuni.zik AS string2," +
                         " racuni.datum_racuna AS datum, '1970-01-01' as datum_dvo, '1970-01-01' as datum_valute, " +
                         " '" + ukupno + "' AS ukupno," +
                         " '" + pdv_ispis + "' AS iznos_pdv," +
                         " '" + osnovica_sve + "' AS osnovica," +
                         " '" + ukupno_rabat + "' AS rabat," +
                         " '" + Porez_potrosnja_sve.ToString("#0.00") + "' AS string3," +
                         " CAST (racuni.broj_racuna AS nvarchar) + '/' + CAST (ducan.ime_ducana AS nvarchar) + '/' + CAST (blagajna.ime_blagajne AS nvarchar)  AS Naslov," +
                         " partners.ime_tvrtke AS kupac_tvrtka," +
                         " partners.adresa AS kupac_adresa," +
                         " ' Novčanice: ' + CAST(racuni.ukupno_gotovina AS money) + '   Kartice: ' + CAST(racuni.ukupno_kartice AS money) + '   Virman: ' + CAST(racuni.ukupno_virman AS money)  AS placanje," +
                         " partners.id_grad AS id_kupac_grad," +
                         " partners.id_partner AS sifra_kupac," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " '" + popust_sve_napomena + "' AS napomena," +
                         " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                         " partners.oib AS kupac_oib" +
                         " FROM racuni" +
                         " LEFT JOIN podaci_tvrtka ON podaci_tvrtka.id='1'" +
                         " LEFT JOIN ducan ON ducan.id_ducan = racuni.id_ducan" +
                         " LEFT JOIN blagajna ON blagajna.id_ducan = racuni.id_ducan and blagajna.id_blagajna = racuni.id_kasa" +
                         " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun='1'" +
                         " LEFT JOIN partners ON partners.id_partner=racuni.id_kupac" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=racuni.id_blagajnik WHERE racuni.broj_racuna='" + broj_dokumenta + "'  AND racuni.id_ducan='" + (id_poslovnica == null ? Util.Korisno.idDucan : id_poslovnica) + "' AND racuni.id_kasa='" + (id_kasa == null ? Util.Korisno.idKasa : id_kasa) + "';" +
                         "";


            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string id_kupac = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
            }

            if (id_kupac.Length == 0)
            {
                id_kupac = "0";
            }

            string    grad_kupac   = "";
            DataTable DTgrad_kupac = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + id_kupac + "'", "grad").Tables[0];

            if (DTgrad_kupac.Rows.Count != 0)
            {
                grad_kupac = DTgrad_kupac.Rows[0]["posta"].ToString().Trim() + " " + DTgrad_kupac.Rows[0]["grad"].ToString();
                dSFaktura.Tables[0].Rows[0]["kupac_grad"] = grad_kupac;
            }

            string    poslovnica_grad   = "";
            DataTable DTposlovnica_grad = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + Class.PodaciTvrtka.gradPoslovnicaId + "'", "grad").Tables[0];

            if (DTposlovnica_grad.Rows.Count != 0)
            {
                poslovnica_grad = DTposlovnica_grad.Rows[0]["posta"].ToString().Trim() + " " + DTposlovnica_grad.Rows[0]["grad"].ToString();
            }

            string sql1 = "SELECT " +
                          " podaci_tvrtka.ime_tvrtke," +
                          " podaci_tvrtka.skraceno_ime," +
                          " podaci_tvrtka.oib," +
                          " podaci_tvrtka.tel," +
                          " podaci_tvrtka.fax," +
                          " podaci_tvrtka.mob," +
                          " podaci_tvrtka.iban," +
                          " podaci_tvrtka.adresa," +
                          " podaci_tvrtka.vl," +
                          " '" + grad_kupac + "' AS grad_kupac," +
                          " podaci_tvrtka.poslovnica_adresa," +
                          "  '" + poslovnica_grad + "' as poslovnica_grad," +
                          " podaci_tvrtka.email," +
                          " podaci_tvrtka.naslov_racuna AS naziv_fakture," +
                          " podaci_tvrtka.text_bottom, " +
                          "podaci_tvrtka.nazivPoslovnice as ime_poslovnice,  podaci_tvrtka.swift, podaci_tvrtka.pdvBr as pdv_br," +
                          " grad.grad + '' + grad.posta AS grad" +
                          " FROM podaci_tvrtka" +
                          " LEFT JOIN grad ON grad.id_grad=podaci_tvrtka.id_grad" +
                          "";

            //DSRpodaciTvrtke DSpt = new DSRpodaciTvrtke();

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
                //classSQL.NpgAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            this.reportViewer1.RefreshReport();
        }
コード例 #3
0
        private void FillPonude(string broj)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            string sql2 = "SELECT " +
                          " replace(ponude_stavke.kolicina, ',','.')::numeric as kolicina," +
                          " ponude_stavke.vpc," +
                          " ponude_stavke.porez," +
                          " ponude_stavke.broj_ponude," +
                          " ponude_stavke.rabat," +
                          " ponude_stavke.sifra," +
                          " roba.naziv as naziv," +
                          " ponude_stavke.id_skladiste AS skladiste," +
                          " ponude_stavke.mpc," +
                          " ponude_stavke.vpc * replace(ponude_stavke.kolicina, ',','.')::numeric as iznos," +
                          " ponude_stavke.porez_potrosnja," +
                          " 'OVO NIJE FISKALIZIRAN RAČUN' as string1" +
                          " FROM ponude_stavke" +
                          " LEFT JOIN roba ON roba.sifra=ponude_stavke.sifra WHERE ponude_stavke.broj_ponude='" + broj + "'";
            DSRfakturaStavke DSfs = new DSRfakturaStavke();

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            double vpc_stavka      = 0;
            double kol_stavka      = 0;
            double porez_potrosnja = 0;
            double pdv             = 0;
            double rabat           = 0;
            double mpc_stavka      = 0;
            double rabat_stavka    = 0;
            double pdv_stavka      = 0;
            double osnovica_stavka = 0;
            double RabatSve        = 0;
            double potrosnjaUkupno = 0;

            DataTable DT = dSRfakturaStavke.Tables[0];

            for (int i = 0; i < DT.Rows.Count; i++)
            {
                vpc_stavka = Convert.ToDouble(DT.Rows[i]["vpc"].ToString());
                kol_stavka = Convert.ToDouble(DT.Rows[i]["kolicina"].ToString());
                pdv        = Convert.ToDouble(DT.Rows[i]["porez"].ToString());
                rabat      = Convert.ToDouble(DT.Rows[i]["rabat"].ToString());
                //porez_potrosnja = Convert.ToDouble(DT.Rows[i]["porez_potrosnja"].ToString());
                porez_potrosnja = 0;
                double.TryParse(DT.Rows[i]["porez_potrosnja"].ToString(), out porez_potrosnja);
                //mpc_stavka = Convert.ToDouble(DT.Rows[i]["mpc"].ToString());
                mpc_stavka = vpc_stavka * (1 + (pdv / 100));
                //mpc_stavka = mpc_stavka - (mpc_stavka * rabat / 100);

                pdv             = vpc_stavka * (pdv / 100);
                porez_potrosnja = (vpc_stavka * (porez_potrosnja / 100));
                rabat           = (mpc_stavka * (rabat / 100));

                rabat_stavka = (rabat * kol_stavka);
                mpc_stavka   = (((mpc_stavka - rabat) * kol_stavka));
                pdv_stavka   = (pdv * kol_stavka);

                osnovica_stavka = (vpc_stavka * kol_stavka);
                porez_potrosnja = (porez_potrosnja * kol_stavka);

                RabatSve        += rabat_stavka;
                osnovica_ukupno += osnovica_stavka;
                pdv_ukupno      += pdv_stavka;
                SveUkupno       += mpc_stavka;
                potrosnjaUkupno += porez_potrosnja;

                StopePDVa(Convert.ToDouble(DT.Rows[i]["porez"].ToString()), pdv_stavka, osnovica_stavka);
            }

            porez_potrosnja = SveUkupno - pdv_ukupno - osnovica_ukupno;
            SveUkupno       = osnovica_ukupno + pdv_ukupno + potrosnjaUkupno - RabatSve;

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(SveUkupno.ToString(), ',', "kn", "lp").ToString();

            string sql = "SELECT " +
                         " ponude.broj_ponude," +
                         " ponude.date AS datum," +
                         " ponude.vrijedi_do AS datum_dvo, '1970-01-01' as datum_valute, " +
                         " nacin_placanja.naziv_placanja AS placanje," +
                         " otprema.naziv AS otprema," +
                         " CAST (ponude.model AS nvarchar) + '  '+ CAST (ponude.broj_ponude AS nvarchar)+CAST (ponude.godina_ponude AS nvarchar)+'-'+CAST (ponude.id_fakturirati AS nvarchar) AS model," +
                         " ponude.napomena," +
                         " '" + RabatSve + "' AS rabat," +
                         " '" + SveUkupno + "' AS ukupno," +
                         " '" + Math.Round(pdv_ukupno, 2, MidpointRounding.AwayFromZero) + "' AS iznos_pdv," +
                         " '" + osnovica_ukupno + "' AS osnovica," +
                         " ponude.godina_ponude," +
                         " CAST (ponude.broj_ponude AS nvarchar) +'/'+ CAST (ponude.godina_ponude AS nvarchar) AS Naslov," +
                         " case when vrsta_korisnika = 1 then partners.ime_tvrtke else concat(partners.ime, ' ', partners.prezime) end AS kupac_tvrtka," +
                         " 'Vrijedi do:' AS naziv_date1," +
                         " 'Datum dospijeća:' AS naziv_date2," +
                         " partners.adresa AS kupac_adresa," +
                         " partners.id_grad AS id_kupac_grad," +
                         " partners.id_partner AS sifra_kupac," +
                         " ziro_racun.ziroracun AS zr," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " ziro_racun.banka AS banka," +
                         " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                         " partners.oib AS kupac_oib," +
                         " '" + potrosnjaUkupno.ToString("#0.00") + "' as string3" +
                         " FROM ponude" +
                         " LEFT JOIN partners ON partners.id_partner=ponude.id_fakturirati" +
                         " LEFT JOIN otprema ON otprema.id_otprema=ponude.otprema" +
                         " LEFT JOIN nacin_placanja ON nacin_placanja.id_placanje=ponude.id_nacin_placanja" +
                         " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun=ponude.zr" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=ponude.id_zaposlenik_izradio WHERE ponude.broj_ponude='" + broj + "'" +
                         "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string id_kupac = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
            }

            if (id_kupac.Length == 0)
            {
                id_kupac = "0";
            }

            string    grad_kupac   = "";
            DataTable DTgrad_kupac = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + id_kupac + "'", "grad").Tables[0];

            if (DTgrad_kupac.Rows.Count != 0)
            {
                grad_kupac = DTgrad_kupac.Rows[0]["posta"].ToString().Trim() + " " + DTgrad_kupac.Rows[0]["grad"].ToString();
                dSFaktura.Tables[0].Rows[0]["kupac_grad"] = grad_kupac;
            }

            string    poslovnica_grad   = "";
            DataTable DTposlovnica_grad = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + Class.PodaciTvrtka.gradPoslovnicaId + "'", "grad").Tables[0];

            if (DTposlovnica_grad.Rows.Count != 0)
            {
                poslovnica_grad = DTposlovnica_grad.Rows[0]["posta"].ToString().Trim() + " " + DTposlovnica_grad.Rows[0]["grad"].ToString();
            }

            string sql1 = "SELECT " +
                          " podaci_tvrtka.ime_tvrtke," +
                          " podaci_tvrtka.skraceno_ime," +
                          " podaci_tvrtka.oib," +
                          " podaci_tvrtka.tel," +
                          " podaci_tvrtka.fax," +
                          " podaci_tvrtka.mob," +
                          " podaci_tvrtka.iban," +
                          " podaci_tvrtka.adresa," +
                          " podaci_tvrtka.vl," +
                          " '" + grad_kupac + "' AS grad_kupac," +
                          " podaci_tvrtka.poslovnica_adresa," +
                          "  '" + poslovnica_grad + "' as poslovnica_grad," +
                          " podaci_tvrtka.email," +
                          " 'Ponuda ' AS naziv_fakture," +
                          " podaci_tvrtka.text_bottom, " +
                          "podaci_tvrtka.nazivPoslovnice as ime_poslovnice,  podaci_tvrtka.swift, podaci_tvrtka.pdvBr as pdv_br," +
                          " grad.grad + '' + grad.posta AS grad" +
                          " FROM podaci_tvrtka" +
                          " LEFT JOIN grad ON grad.id_grad=podaci_tvrtka.id_grad" +
                          "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
                //classSQL.NpgAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            this.reportViewer1.RefreshReport();
        }
コード例 #4
0
        private void FillOtpremnicu(string broj, string skladiste)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            //MessageBox.Show(broj_slovima.ToLower());

            string sql2 = "SELECT " +
                          " otpremnica_stavke.kolicina," +
                          " otpremnica_stavke.vpc," +
                          " otpremnica_stavke.porez," +
                          " otpremnica_stavke.broj_otpremnice," +
                          " otpremnica_stavke.rabat," +
                          " otpremnica_stavke.sifra_robe," +
                          " roba.naziv as naziv," +
                          " otpremnica_stavke.vpc * otpremnica_stavke.kolicina as iznos, " +
                          " otpremnica_stavke.id_skladiste AS skladiste," +
                          " otpremnica_stavke.porez_potrosnja," +
                          " 'OVO NIJE FISKALIZIRAN RAČUN' as string1" +
                          " FROM otpremnica_stavke" +
                          " LEFT JOIN roba ON roba.sifra=otpremnica_stavke.sifra_robe WHERE otpremnica_stavke.broj_otpremnice='" + broj + "' AND otpremnica_stavke.id_skladiste='" + skladiste + "'";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            double osnovica               = 0;
            double pdv_stavka             = 0;
            double Porez_potrosnja_stavka = 0;
            double ukupno = 0;

            double osnovica_sve        = 0;
            double osnovica_pnp        = 0;
            double Porez_potrosnja_sve = 0;
            double pdv_sve             = 0;

            ukupno_rabat = 0;
            double rabat = 0;

            double maxPNP = 0;

            DataTable DT = dSRfakturaStavke.Tables[0];

            for (int i = 0; i < DT.Rows.Count; i++)
            {
                double kolicina = Convert.ToDouble(DT.Rows[i]["kolicina"].ToString().Replace('.', ','));
                double PP       = 0;
                if (DT.Columns.Contains("porez_potrosnja"))
                {
                    PP = Convert.ToDouble(DT.Rows[i]["porez_potrosnja"].ToString());
                }

                double PDV    = Convert.ToDouble(DT.Rows[i]["porez"].ToString().Replace('.', ','));
                double VPC    = Convert.ToDouble(DT.Rows[i]["vpc"].ToString().Replace('.', ','));
                double cijena = Math.Round(((VPC * (PP + PDV) / 100) + VPC), 3);
                double mpc    = cijena * kolicina;

                rabat        = Convert.ToDouble(DT.Rows[i]["rabat"].ToString().Replace('.', ','));
                ukupno_rabat = (mpc * rabat / 100) + ukupno_rabat;
                mpc          = Math.Round((mpc - (mpc * rabat / 100)), 3);

                //Ovaj kod dobiva PDV
                double PreracunataStopaPDV = Convert.ToDouble((100 * PDV) / (100 + PDV + PP));
                pdv_stavka = (mpc * PreracunataStopaPDV) / 100;

                //Ovaj kod dobiva porez na potrošnju
                double PreracunataStopaPorezNaPotrosnju = Convert.ToDouble((100 * PP) / (100 + PDV + PP));
                Porez_potrosnja_stavka = (mpc * PreracunataStopaPorezNaPotrosnju) / 100;
                if (PP > 0)
                {
                    osnovica_pnp += mpc / (1 + (PP + PDV) / 100);
                }

                if (maxPNP < PP)
                {
                    maxPNP = PP;
                }

                //izračun porez potrosnja
                Porez_potrosnja_sve = (Porez_potrosnja_stavka) + Porez_potrosnja_sve;

                //izračun osnovica
                if (rabat > 0)
                {
                    double pps = (100 * (PDV + PP)) / (100 + PDV + PP);
                    osnovica = mpc - (mpc * pps / 100);
                }
                else
                {
                    osnovica = VPC * kolicina;
                }

                osnovica_sve = (osnovica) + osnovica_sve;

                StopePDVa(PDV, pdv_stavka, (osnovica));

                //Izracun pdv
                pdv_sve = pdv_sve + (pdv_stavka);
                ukupno  = mpc + ukupno;
            }

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(ukupno.ToString(), ',', "kn", "lp").ToString();

            string sql = "SELECT " +
                         " otpremnice.broj_otpremnice," +
                         " otpremnice.datum AS datum, '1970-01-01' as datum_dvo, '1970-01-01' as datum_valute, " +
                         " 'Mjesto otpreme:  '+otpremnice.mj_otpreme  + '\nAdresa otpreme:  ' + otpremnice.adr_otpreme + '\nIstovarno mjesto:  ' +  otpremnice.istovarno_mj + '\nRegistracija:  ' +  otpremnice.registracija    AS string1," +
                         " 'Isprave:  '+otpremnice.isprave  + '\nTroškovi prijevoza:  ' + otpremnice.troskovi_prijevoza + '\nIstovarni rok:  ' +  otpremnice.istovarni_rok    AS string2," +
                         " otprema.naziv AS otprema," +
                         " otpremnice.napomena," +
                         " '" + ukupno_rabat.ToString("#0.00") + "' AS rabat," +
                         " '" + ukupno.ToString("#0.00") + "' AS ukupno," +
                         " '" + pdv_sve.ToString("#0.00") + "' AS iznos_pdv," +
                         " '" + osnovica_sve.ToString("#0.00") + "' AS osnovica," +
                         " '" + Porez_potrosnja_sve.ToString("#0.00") + "' as string3, " +
                         " otpremnice.godina_otpremnice," +
                         " CAST (otpremnice.broj_otpremnice AS nvarchar) +'/'+ CAST (otpremnice.godina_otpremnice AS nvarchar) AS Naslov," +
                         " case when otpremnice.na_sobu then sobe.naziv_sobe else partners.ime_tvrtke end AS kupac_tvrtka," +
                         " case when otpremnice.na_sobu then '' else partners.adresa end AS kupac_adresa," +
                         " case when otpremnice.na_sobu then '0' else partners.id_grad end AS id_kupac_grad," +
                         " case when otpremnice.na_sobu then '0' else partners.id_partner end AS sifra_kupac," +
                         " ziro_racun.ziroracun AS zr," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " ziro_racun.banka AS banka," +
                         " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                         " case when otpremnice.na_sobu then 'SOBA' else partners.oib end AS kupac_oib" +
                         " FROM otpremnice" +
                         " LEFT JOIN partners ON partners.id_partner=otpremnice.osoba_partner" +
                         " LEFT JOIN sobe ON sobe.id=otpremnice.osoba_partner" +
                         " LEFT JOIN otprema ON otprema.id_otprema=otpremnice.id_otprema" +
                         " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun='1'" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=otpremnice.id_izradio WHERE otpremnice.broj_otpremnice='" + broj + "'" +
                         "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string id_kupac = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
            }
            if (id_kupac.Length == 0)
            {
                id_kupac = "0";
            }

            string    grad_kupac   = "";
            DataTable DTgrad_kupac = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + id_kupac + "'", "grad").Tables[0];

            if (DTgrad_kupac.Rows.Count != 0)
            {
                grad_kupac = DTgrad_kupac.Rows[0]["posta"].ToString().Trim() + " " + DTgrad_kupac.Rows[0]["grad"].ToString();
                dSFaktura.Tables[0].Rows[0]["kupac_grad"] = grad_kupac;
            }

            string    poslovnica_grad   = "";
            DataTable DTposlovnica_grad = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + Class.PodaciTvrtka.gradPoslovnicaId + "'", "grad").Tables[0];

            if (DTposlovnica_grad.Rows.Count != 0)
            {
                poslovnica_grad = DTposlovnica_grad.Rows[0]["posta"].ToString().Trim() + " " + DTposlovnica_grad.Rows[0]["grad"].ToString();
            }

            string sql1 = "SELECT " +
                          " podaci_tvrtka.ime_tvrtke," +
                          " podaci_tvrtka.skraceno_ime," +
                          " podaci_tvrtka.oib," +
                          " podaci_tvrtka.tel," +
                          " podaci_tvrtka.fax," +
                          " podaci_tvrtka.mob," +
                          " podaci_tvrtka.iban," +
                          " podaci_tvrtka.adresa," +
                          " podaci_tvrtka.vl," +
                          " '" + grad_kupac + "' AS grad_kupac," +
                          " podaci_tvrtka.poslovnica_adresa," +
                          "  '" + poslovnica_grad + "' as poslovnica_grad," +
                          " podaci_tvrtka.email," +
                          " 'OTPREMNICA ' AS naziv_fakture," +
                          " podaci_tvrtka.text_bottom, " +
                          "podaci_tvrtka.nazivPoslovnice as ime_poslovnice,  podaci_tvrtka.swift, podaci_tvrtka.pdvBr as pdv_br," +
                          " grad.grad + '' + grad.posta AS grad" +
                          " FROM podaci_tvrtka" +
                          " LEFT JOIN grad ON grad.id_grad=podaci_tvrtka.id_grad" +
                          "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            this.reportViewer1.RefreshReport();
        }
コード例 #5
0
        private void FillFaktura(string broj)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            //MessageBox.Show(broj_slovima.ToLower());

            string sql2 = "SELECT " +
                          " faktura_stavke.kolicina as kolicina," +
                          " faktura_stavke.vpc," +
                          " faktura_stavke.porez," +
                          " faktura_stavke.broj_fakture," +
                          " faktura_stavke.rabat," +
                          " faktura_stavke.sifra," +
                          " roba.naziv as naziv," +
                          " faktura_stavke.id_skladiste AS skladiste," +
                          " faktura_stavke.mpc," +
                          " faktura_stavke.vpc * replace(faktura_stavke.kolicina, ',','.')::numeric as iznos," +
                          " faktura_stavke.porez_potrosnja" +
                          " FROM faktura_stavke" +
                          " LEFT JOIN roba ON roba.sifra=faktura_stavke.sifra WHERE faktura_stavke.broj_fakture='" + broj + "' order by roba.naziv asc;";

            //DSRfakturaStavke DSfs = new DSRfakturaStavke();

            sql2 = @"SELECT sum(replace(faktura_stavke.kolicina, ',','.')::numeric) as kolicina, faktura_stavke.vpc, faktura_stavke.porez, faktura_stavke.broj_fakture, faktura_stavke.rabat, faktura_stavke.sifra, roba.naziv as naziv, faktura_stavke.id_skladiste AS skladiste,
                    faktura_stavke.mpc, ((faktura_stavke.vpc - (faktura_stavke.vpc * replace(rabat,',','.')::numeric / 100)) * sum(replace(faktura_stavke.kolicina, ',','.')::numeric)) as iznos, faktura_stavke.porez_potrosnja, '' as string1
                    FROM faktura_stavke
                    LEFT JOIN roba ON roba.sifra=faktura_stavke.sifra
                    WHERE faktura_stavke.broj_fakture='" + broj + @"'
                    group by faktura_stavke.vpc, faktura_stavke.porez, faktura_stavke.broj_fakture, faktura_stavke.rabat, faktura_stavke.sifra, roba.naziv, faktura_stavke.id_skladiste, faktura_stavke.mpc, faktura_stavke.porez_potrosnja
                    order by roba.naziv asc;";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            double vpc = 0;
            double kol_stavka = 0;
            double porez_potrosnja = 0, porez_potrosnja_stavka = 0;
            double pdv             = 0;
            double rabat           = 0;
            double mpc_stavka      = 0;
            double rabat_stavka    = 0;
            double pdv_stavka      = 0;
            double osnovica_stavka = 0;
            double RabatSve        = 0;
            double potrosnjaUkupno = 0;

            DataTable DT = dSRfakturaStavke.Tables[0];

            for (int i = 0; i < DT.Rows.Count; i++)
            {
                mpc_stavka      = Convert.ToDouble(DT.Rows[i]["mpc"].ToString());
                vpc             = Convert.ToDouble(DT.Rows[i]["vpc"].ToString());
                kol_stavka      = Convert.ToDouble(DT.Rows[i]["kolicina"].ToString());
                pdv             = Convert.ToDouble(DT.Rows[i]["porez"].ToString());
                rabat           = Convert.ToDouble(DT.Rows[i]["rabat"].ToString());
                porez_potrosnja = Convert.ToDouble(DT.Rows[i]["porez_potrosnja"].ToString());
                vpc             = Math.Round((mpc_stavka / (1 + (pdv + porez_potrosnja) / 100)), 4, MidpointRounding.AwayFromZero);

                rabat_stavka           = Math.Round((vpc * rabat / 100 * kol_stavka), 6, MidpointRounding.AwayFromZero);
                osnovica_stavka        = Math.Round((vpc - (vpc * rabat / 100)) * kol_stavka, 6, MidpointRounding.AwayFromZero);
                pdv_stavka             = Math.Round((vpc - (vpc * rabat / 100)) * pdv / 100 * kol_stavka, 6, MidpointRounding.AwayFromZero);
                porez_potrosnja_stavka = Math.Round((((vpc - (vpc * rabat / 100)) * (porez_potrosnja / 100)) * kol_stavka), 6, MidpointRounding.AwayFromZero);
                //mpc_stavka = Math.Round((vpc - (vpc * rabat / 100)) * (1 + (pdv + porez_potrosnja) / 100) * kol_stavka, 3, MidpointRounding.AwayFromZero);

                RabatSve        += rabat_stavka;
                osnovica_ukupno += osnovica_stavka;
                pdv_ukupno      += pdv_stavka;
                potrosnjaUkupno += porez_potrosnja_stavka;
                SveUkupno       += ((mpc_stavka - (mpc_stavka * rabat / 100)) * kol_stavka);

                StopePDVa(Convert.ToDouble(DT.Rows[i]["porez"].ToString()), pdv_stavka, osnovica_stavka);
            }

            //porez_potrosnja = SveUkupno - pdv_ukupno - osnovica_ukupno;
            //SveUkupno = Math.Round(osnovica_ukupno, 2, MidpointRounding.AwayFromZero) + Math.Round(pdv_ukupno, 2, MidpointRounding.AwayFromZero) + Math.Round(potrosnjaUkupno, 2, MidpointRounding.AwayFromZero);

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(SveUkupno.ToString(), ',', "kn", "lp").ToString();

            string sql = "SELECT " +
                         " fakture.broj_fakture," +
                         " fakture.date AS datum," +
                         " fakture.dateDVO AS datum_dvo," +
                         " fakture.datum_valute," +
                         " fakture.mj_troska AS mjesto_troska," +
                         " CASE WHEN nacin_placanja.naziv_placanja = 'Virman' THEN 'Transakcijski račun' ELSE nacin_placanja.naziv_placanja END AS placanje," +
                         " otprema.naziv AS otprema," +
                         " CAST (fakture.model AS nvarchar) + '  '+ CAST (fakture.broj_fakture AS nvarchar)+CAST (fakture.godina_fakture AS nvarchar)+'-'+CAST (fakture.id_fakturirati AS nvarchar) AS model," +
                         " fakture.napomena," +
                         " '" + RabatSve + "' AS rabat," +
                         " '" + SveUkupno + "' AS ukupno," +
                         " '" + Math.Round(pdv_ukupno, 2, MidpointRounding.AwayFromZero) + "' AS iznos_pdv," +
                         " '" + osnovica_ukupno + "' AS osnovica," +
                         " fakture.godina_fakture," +
                         " CAST (fakture.broj_fakture AS nvarchar) + CAST ('" + Util.Korisno.VratiDucanIBlagajnuZaIspis(2) + "' AS nvarchar)  AS Naslov," +
                         " partners.ime_tvrtke AS kupac_tvrtka," +
                         " 'Datum isporuke:' AS naziv_date1," +
                         " 'Datum dospijeća:' AS naziv_date2," +
                         " partners.adresa AS kupac_adresa," +
                         " partners.id_grad AS id_kupac_grad," +
                         " partners.id_partner AS sifra_kupac," +
                         " ziro_racun.ziroracun AS zr," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " ziro_racun.banka AS banka," +
                         " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                         " partners.oib AS kupac_oib," +
                         " '" + potrosnjaUkupno.ToString("#0.00") + "' as string3" +
                         " FROM fakture" +
                         " LEFT JOIN partners ON partners.id_partner=fakture.id_fakturirati" +
                         " LEFT JOIN otprema ON otprema.id_otprema=fakture.otprema" +
                         " LEFT JOIN nacin_placanja ON nacin_placanja.id_placanje=fakture.id_nacin_placanja" +
                         " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun=fakture.zr" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=fakture.id_zaposlenik_izradio WHERE fakture.broj_fakture='" + broj + "'" +
                         "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string id_kupac = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
            }

            if (id_kupac.Length == 0)
            {
                id_kupac = "0";
            }

            string    grad_kupac   = "";
            DataTable DTgrad_kupac = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad='" + id_kupac + "'", "grad").Tables[0];

            if (DTgrad_kupac.Rows.Count != 0)
            {
                grad_kupac = DTgrad_kupac.Rows[0]["posta"].ToString().Trim() + " " + DTgrad_kupac.Rows[0]["grad"].ToString();
                dSFaktura.Tables[0].Rows[0]["kupac_grad"] = grad_kupac;
            }

            string    poslovnica_grad   = "";
            DataTable DTposlovnica_grad = classSQL.select("SELECT grad,posta FROM grad WHERE id_grad = '" + Class.PodaciTvrtka.gradPoslovnicaId + "'", "grad").Tables[0];

            if (DTposlovnica_grad.Rows.Count != 0)
            {
                poslovnica_grad = DTposlovnica_grad.Rows[0]["posta"].ToString().Trim() + " " + DTposlovnica_grad.Rows[0]["grad"].ToString();
            }


            string sql1 = "SELECT " +
                          " podaci_tvrtka.ime_tvrtke," +
                          " podaci_tvrtka.skraceno_ime," +
                          " podaci_tvrtka.oib," +
                          " podaci_tvrtka.tel," +
                          " podaci_tvrtka.fax," +
                          " podaci_tvrtka.mob," +
                          " podaci_tvrtka.iban," +
                          " podaci_tvrtka.adresa," +
                          " podaci_tvrtka.vl," +
                          " '" + grad_kupac + "' AS grad_kupac," +
                          " podaci_tvrtka.poslovnica_adresa," +
                          "  '" + poslovnica_grad + "' as poslovnica_grad," +
                          " podaci_tvrtka.email," +
                          " podaci_tvrtka.naslov_racuna AS naziv_fakture," +
                          " podaci_tvrtka.text_bottom, " +
                          "podaci_tvrtka.nazivPoslovnice as ime_poslovnice,  podaci_tvrtka.swift, podaci_tvrtka.pdvBr as pdv_br," +
                          " grad.grad + '' + grad.posta AS grad" +
                          " FROM podaci_tvrtka" +
                          " LEFT JOIN grad ON grad.id_grad=podaci_tvrtka.id_grad" +
                          "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            this.reportViewer1.RefreshReport();

            //----------------------------------------------------BarCode------------------------------------------
            string barCodeString = "HRVHUB30" + "\n";

            barCodeString += "HRK" + "\n";
            barCodeString += BarCodeIznos(Double.Parse(dSFaktura.DTRfaktura.Rows[0]["ukupno"].ToString()).ToString("#0.00")) + "\n";
            barCodeString += dSFaktura.DTRfaktura.Rows[0]["kupac_tvrtka"].ToString() + "\n";
            barCodeString += dSFaktura.DTRfaktura.Rows[0]["kupac_adresa"].ToString() + "\n";
            barCodeString += dSFaktura.DTRfaktura.Rows[0]["kupac_grad"].ToString() + "\n";
            barCodeString += dSRpodaciTvrtke.DTRpodaciTvrtke.Rows[0]["ime_tvrtke"].ToString() + "\n";
            barCodeString += dSRpodaciTvrtke.DTRpodaciTvrtke.Rows[0]["adresa"].ToString() + "\n";
            barCodeString += dSRpodaciTvrtke.DTRpodaciTvrtke.Rows[0]["grad"].ToString() + "\n";
            barCodeString += dSRpodaciTvrtke.DTRpodaciTvrtke.Rows[0]["iban"].ToString() + "\n";
            barCodeString += "MODEL" + "\n";         // Pitati dejana kaj tu?
            barCodeString += "POZIV NA BROJ" + "\n"; // Pitati dejana kaj tu?
            barCodeString += "SIFRA NAMJENE" + "\n"; // Pitati dejana kaj tu?
            barCodeString += "Uplata";

            MessageBox.Show(barCodeString);
        }
コード例 #6
0
ファイル: frmA6racun.cs プロジェクト: Dincho98/SyncTesting
        private void FillRacun(string broj, string[] imeTablice)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            //MessageBox.Show(broj_slovima.ToLower());

            string sql2 = "SELECT " +
                          " " + imeTablice[1] + ".kolicina," +
                          " " + imeTablice[1] + ".vpc," +
                          " " + imeTablice[1] + ".porez," +
                          " " + imeTablice[1] + ".broj_racuna," +
                          " " + imeTablice[1] + ".rabat," +
                          " " + imeTablice[1] + ".sifra_robe AS sifra," +
                          " roba.naziv as naziv," +
                          " roba.jm as jm," +
                          " " + imeTablice[1] + ".id_skladiste AS skladiste" +
                          " FROM " + imeTablice[1] + "" +
                          " LEFT JOIN roba ON roba.sifra=" + imeTablice[1] + ".sifra_robe " +
                          " WHERE " + imeTablice[1] + ".broj_racuna='" + broj + "'";

            if (imeTablice[1] == "racun_stavke")
            {
                sql2 += " AND racun_stavke.id_ducan=" + poslovnica + " AND racun_stavke.id_kasa=" + naplatni;
            }

            //DSRfakturaStavke DSfs = new DSRfakturaStavke();

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            double vpc = 0;
            double kol = 0;
            double porez;
            double rabat;
            double mpc;
            double mpcStavka;
            double rabatStavka    = 0;
            double pdvStavka      = 0;
            double osnovicaStavka = 0;

            double osnovicaUkupno = 0;
            double sveUkupno      = 0;
            double pdvUkupno      = 0;
            double rabatSve       = 0;

            DataTable DT = dSRfakturaStavke.Tables[0];

            for (int i = 0; i < DT.Rows.Count; i++)
            {
                vpc   = Math.Round(Convert.ToDouble(DT.Rows[i]["vpc"].ToString()), 3);
                kol   = Math.Round(Convert.ToDouble(DT.Rows[i]["kolicina"].ToString()), 3);
                porez = Math.Round(Convert.ToDouble(DT.Rows[i]["porez"].ToString()), 2);
                rabat = Math.Round(Convert.ToDouble(DT.Rows[i]["rabat"].ToString()), 2);

                mpc = Math.Round(vpc * (1 + porez / 100.0), 2);

                rabatStavka    = Math.Round(mpc * kol * rabat / 100, 2);
                mpcStavka      = Math.Round(mpc * kol - rabatStavka, 2);
                pdvStavka      = Math.Round(mpcStavka * (1 - 100 / (100 + porez)), 2);
                osnovicaStavka = Math.Round(mpcStavka - pdvStavka, 2);

                DT.Rows[i].SetField("mpc", Math.Round(mpc, 2));
                DT.Rows[i].SetField("vpc", Math.Round(vpc, 3));
                DT.Rows[i].SetField("porez", Math.Round(porez, 2));
                DT.Rows[i].SetField("rabat", Math.Round(rabat, 2));
                DT.Rows[i].SetField("kolicina", Math.Round(kol, 3));
                DT.Rows[i].SetField("mpcStavka", Math.Round(mpcStavka, 2));
                DT.Rows[i].SetField("rabatStavka", Math.Round(rabatStavka, 2));

                rabatSve       += rabatStavka;
                osnovicaUkupno += osnovicaStavka;
                pdvUkupno      += pdvStavka;
                sveUkupno      += mpcStavka;
            }

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(sveUkupno.ToString(), ',', "kn", "lp").ToString();

            string year;

            if (imeTablice[0] == "ispis_racuni")
            {
                year = DateTime.Now.Year.ToString();
            }
            else
            {
                year = classSQL.select("SELECT datum_racuna FROM racuni WHERE broj_racuna='" + broj_dokumenta + "'", "racuni").Tables[0].Rows[0][0].ToString();
                DateTime date = Convert.ToDateTime(year);
                year = date.Year.ToString();
            }

            string sql = "SELECT " +
                         " " + imeTablice[0] + ".broj_racuna," +
                         " " + imeTablice[0] + ".datum_racuna AS datum," +
                         " " + imeTablice[0] + ".jir," +
                         " " + imeTablice[0] + ".zki," +
                         " " + imeTablice[0] + ".napomena," +
                         " '" + sveUkupno + "' AS ukupno," +
                         " '" + pdvUkupno + "' AS iznos_pdv," +
                         " '" + osnovicaUkupno + "' AS osnovica," +
                         " '" + rabatSve + "' AS rabat,";

            if (imeTablice[0] == "racuni")
            {
                sql += "CAST (racuni.broj_racuna AS varchar) + '/' + ime_ducana + '/' + ime_blagajne AS Naslov,";
            }
            else
            {
                sql += " CAST (" + imeTablice[0] + ".broj_racuna AS nvarchar) + CAST ('" + Util.Korisno.VratiDucanIBlagajnuZaIspis(1) + "' AS nvarchar)  AS Naslov,";
            }
            sql += " partners.ime_tvrtke AS kupac_tvrtka," +
                   " partners.adresa AS kupac_adresa," +
                   " ' Novčanice: ' + CAST(" + imeTablice[0] + ".ukupno_gotovina AS money) + '   Kartice: ' + CAST(" + imeTablice[0] + ".ukupno_kartice AS money)  AS placanje," +
                   " partners.id_grad AS id_kupac_grad," +
                   " partners.id_partner AS sifra_kupac," +
                   " partners.napomena AS napomena_tvrtka," +
                   " ziro_racun.ziroracun AS zr," +
                   " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                   " ziro_racun.banka AS banka," +
                   " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                   " partners.oib AS kupac_oib" +
                   " FROM " + imeTablice[0] + "" +
                   " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun='1'" +
                   " LEFT JOIN zacrnjeni_partner as  partners ON partners.id_partner=" + imeTablice[0] + ".id_kupac";
            if (imeTablice[0] == "racuni")
            {
                sql += " LEFT JOIN ducan ON racuni.id_ducan = ducan.id_ducan " + " LEFT JOIN blagajna ON racuni.id_kasa = blagajna.id_blagajna ";
            }
            sql += " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=" + imeTablice[0] + ".id_blagajnik WHERE " + imeTablice[0] + ".broj_racuna='" + broj_dokumenta + "'";
            if (imeTablice[0] == "racuni")
            {
                sql += " AND racuni.id_ducan=" + poslovnica + " AND racuni.id_kasa=" + naplatni;
            }

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string id_kupac_grad = "";
            string id_kupac      = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac_grad = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
                id_kupac      = dSFaktura.Tables[0].Rows[0]["sifra_kupac"].ToString();
            }
            else
            {
                MessageBox.Show("Odabrani zahtjev ne postoji.", "Greška", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            string naziv_fakture = " podaci_tvrtka.naziv_fakture,";
            string sql1          = SqlPodaciTvrtke.VratiSql(id_kupac_grad, naziv_fakture, id_kupac);

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
                //classSQL.NpgAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }

            string ziro = dSRpodaciTvrtke.Tables[0].Rows[0]["zr"].ToString();

            dSFaktura.Tables[0].Rows[0].SetField("zr", ziro);
            string iban = dSRpodaciTvrtke.Tables[0].Rows[0]["iban"].ToString();

            dSFaktura.Tables[0].Rows[0].SetField("iban", iban);

            string    banka = "";
            DataTable dt    = classSQL.select("SELECT banka FROM ziro_racun WHERE ziroracun = '" + ziro + "'", "ziro_racun").Tables[0];

            if (dt.Rows.Count > 0)
            {
                banka = dt.Rows[0]["banka"].ToString();
                dSFaktura.Tables[0].Rows[0].SetField("banka", banka);
            }
            else
            {
            }
        }
コード例 #7
0
        private void FillIFB(string broj)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            string sql2 = "SELECT " +
                          " ifb_stavke.kolicina," +
                          " ifb_stavke.vpc," +
                          " ifb_stavke.porez," +
                          " ifb_stavke.broj," +
                          " ifb_stavke.rabat," +
                          " ifb_stavke.jmj AS jm," +
                          " ifb_stavke.naziv as naziv" +
                          " FROM ifb_stavke" +
                          " WHERE ifb_stavke.broj='" + broj + "'";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }
            else
            {
                classSQL.NpgAdatpter(sql2).Fill(dSRfakturaStavke, "DTfakturaStavke");
            }

            double vpc = 0;
            //double kol_stavka = 0;
            double pdv                    = 0;
            double kol                    = 0;
            double mpc                    = 0;
            double rabat                  = 0;
            double mpc_stavka             = 0;
            double rabat_stavka           = 0;
            double pdv_stavka             = 0;
            double osnovica_stavka        = 0;
            double RabatSve               = 0;
            double ukupno_stav            = 0;
            double pdvStavka              = 0;
            double stopa                  = 0;
            double mpcStavka              = 0;
            double rabatStavka            = 0;
            double osnovicaStavka         = 0;
            double cista_cijena_sveukupno = 0;

            DataTable DT = dSRfakturaStavke.Tables[0];

            for (int i = 0; i < DT.Rows.Count; i++)
            {
                vpc = Convert.ToDouble(DT.Rows[i]["vpc"].ToString());
                //kol_stavka = Convert.ToDouble(DT.Rows[i]["kolicina"].ToString());
                pdv             = Convert.ToDouble(DT.Rows[i]["porez"].ToString());
                rabat           = Convert.ToDouble(DT.Rows[i]["rabat"].ToString());
                kol             = Convert.ToDouble(DT.Rows[i]["kolicina"].ToString());
                mpc             = vpc * (1 + (pdv / 100));
                ukupno_stav     = vpc * kol - vpc * kol * rabat / 100;
                rabat_stavka    = vpc * kol * rabat / 100;
                rabatStavka     = mpc * kol * rabat / 100;
                mpc_stavka      = vpc * kol - rabat_stavka;
                pdv_stavka      = mpc_stavka - mpc_stavka / (1 + pdv / 100);
                osnovica_stavka = mpc_stavka;

                mpcStavka      = Math.Round(mpc * kol - rabatStavka, 2);
                osnovicaStavka = mpcStavka;
                double preracunataSto = (100 * pdv) / (100 + pdv);
                pdvStavka = Math.Round(mpcStavka * (preracunataSto / 100), 3);
                stopa     = ((mpc - vpc) / vpc);

                dSRfakturaStavke.Tables[0].Rows[i].SetField("mpcStavka", mpc_stavka);
                dSRfakturaStavke.Tables[0].Rows[i].SetField("rabatStavka", rabat_stavka);
                dSRfakturaStavke.Tables[0].Rows[i].SetField("mpc", mpc);
                dSRfakturaStavke.Tables[0].Rows[i].SetField("kolicina", kol.ToString("#0.00"));

                RabatSve        = rabat_stavka + RabatSve;
                osnovica_ukupno = Math.Round(osnovica_stavka, 2) + osnovica_ukupno;
                pdv_ukupno      = Math.Round(pdvStavka, 2) + pdv_ukupno;
                SveUkupno       = mpcStavka + SveUkupno;

                StopePDVa(Math.Round((stopa * 100), 0), Math.Round(pdvStavka, 2), Math.Round(osnovica_stavka, 2));
            }

            string broj_slovima = broj_u_text.PretvoriBrojUTekst(SveUkupno.ToString(), ',', "kn", "lp").ToString();

            string sql = "SELECT " +
                         " ifb.broj," +
                         " ifb.datum AS datum," +
                         " ifb.datum_dvo AS datum_dvo," +
                         " ifb.datum_valute," +
                         " ifb.jir," +
                         " ifb.zki," +
                         " ifb.mj_troska AS mjesto_troska," +
                         " nacin_placanja.naziv_placanja AS placanje," +
                         " ifb.otprema AS otprema," +
                         " CAST (ifb.model AS nvarchar) + '  '+ CAST (ifb.broj AS nvarchar)+CAST (ifb.godina AS nvarchar)+'-'+CAST (ifb.odrediste AS nvarchar) AS model," +
                         " ifb.napomena," +
                         " '" + mpc + "' AS string4," +
                         " '" + RabatSve + "' AS rabat," +
                         " '" + SveUkupno + "' AS ukupno," +
                         " '" + pdv_ukupno + "' AS iznos_pdv," +
                         " '" + osnovica_ukupno + "' AS osnovica," +
                         " '" + ukupno_stav + "' AS string5," +
                         " ifb.godina," +
                         //" CAST (ifb.broj AS nvarchar) +'/'+ CAST (ifb.godina AS nvarchar) AS Naslov," +
                         " CAST (ifb.broj AS nvarchar) + CAST ('" + Util.Korisno.VratiDucanIBlagajnuZaIspis(4) + "' AS nvarchar)  AS Naslov," +
                         " partners.ime_tvrtke AS kupac_tvrtka," +
                         " 'Datum isporuke:' AS naziv_date1," +
                         " 'Datum dospijeća:' AS naziv_date2," +
                         " '' AS string3," +
                         " partners.adresa AS kupac_adresa," +
                         " partners.id_grad AS id_kupac_grad," +
                         " partners.id_partner AS sifra_kupac," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " '" + broj_slovima.ToLower() + "' AS broj_slovima," +
                         " partners.oib AS kupac_oib" +
                         " FROM ifb" +
                         " LEFT JOIN zacrnjeni_partner as  partners ON partners.id_partner=ifb.odrediste" +
                         " LEFT JOIN nacin_placanja ON nacin_placanja.id_placanje=ifb.id_nacin_placanja" +
                         //" LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun=fakture.zr" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=ifb.id_zaposlenik WHERE ifb.broj='" + broj + "'" +
                         "";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSFaktura, "DTRfaktura");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSFaktura, "DTRfaktura");
            }

            string dodatak = "";

            if (DTpostavke.Rows[0]["oslobodenje_pdva"].ToString() == "1" && pdv_ukupno == 0)
            {
                dodatak = "\r\n\r\nPrijenos porezne obveze prema čl. 75., st. 3b. i čl. 79. Zakona o PDV-u.\r\nKupac će sam obračunati PDV od 25% i iskazati ga u poreznoj prijavi.\r\nObračun prema naplaćenoj naknadi.";
            }
            else if (DTpostavke.Rows[0]["oslobodenje_pdva"].ToString() == "1")
            {
                dodatak = "\r\n\r\nObračun prema naplaćenoj naknadi";
            }

            dSFaktura.Tables[0].Rows[0]["napomena"] = dSFaktura.Tables[0].Rows[0]["napomena"] + dodatak;

            string id_kupac_grad = "";
            string id_kupac      = "";

            if (dSFaktura.Tables[0].Rows.Count > 0)
            {
                id_kupac_grad = dSFaktura.Tables[0].Rows[0]["id_kupac_grad"].ToString();
                id_kupac      = dSFaktura.Tables[0].Rows[0]["sifra_kupac"].ToString();
            }
            else
            {
                MessageBox.Show("Odabrani zahtjev ne postoji.", "Greška", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            string naziv_fakture = " podaci_tvrtka.naziv_fakture,";
            string sql1          = SqlPodaciTvrtke.VratiSql(id_kupac_grad, naziv_fakture, id_kupac);

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");

                if (dSRpodaciTvrtke.Tables[0].Rows.Count > 0)
                {
                    string   iban  = dSRpodaciTvrtke.Tables[0].Rows[0]["iban"].ToString();
                    string[] ibans = iban.Split(';');
                    string   ibanR = "";
                    foreach (string s in ibans)
                    {
                        ibanR += s + "\r\n";
                    }
                    if (ibanR.Length > 4)
                    {
                        ibanR = ibanR.Remove(ibanR.Length - 2);
                    }
                    dSRpodaciTvrtke.Tables[0].Rows[0]["iban"] = ibanR;
                }
            }

            DateTime datum_ = Convert.ToDateTime(dSFaktura.Tables[0].Rows[0]["datum"].ToString());

            reportViewer1.LocalReport.DisplayName = "IFB-" + dSFaktura.Tables[0].Rows[0]["broj"].ToString() + "-" + datum_.ToString("dd-MM-yyyy") + "";

            decimal u_kune_iz_valute = 0;
            string  u_kunama         = "";

            if (racunajTecaj)
            {
                u_kune_iz_valute = Math.Round(Convert.ToDecimal(cista_cijena_sveukupno), 2);
                u_kunama         = u_kune_iz_valute.ToString() + " kn";
            }
            else
            {
                u_kunama = "0 kn";
            }

            ReportParameter p7 = new ReportParameter("iznos_valuta_kn", u_kunama);

            this.reportViewer1.RefreshReport();
        }
コード例 #8
0
ファイル: repAvans.cs プロジェクト: Dincho98/SyncTesting
        private void FillAvans(string broj, string godina)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            ////MessageBox.Show(broj_slovima.ToLower());
            string    usustavu_pdva = "SELECT sustav_pdv FROM postavke";
            DataTable DTsust_pdv    = classSQL.select_settings(usustavu_pdva, "Sustav PDV").Tables[0];

            string sql = "SELECT " +
                         " avansi.broj_avansa," +
                         " avansi.dat_dok AS datum," +
                         " avansi.dat_knj AS datum_knj," +
                         " avansi.datum_valute AS datum_valute," +
                         " nacin_placanja.naziv_placanja AS placanje," +
                         " concat(CAST (avansi.model AS text),'  ',CAST (avansi.broj_avansa AS text),CAST (avansi.godina_avansa AS text),'-',CAST (avansi.broj_avansa AS text)) AS model," +
                         " avansi.opis," +
                         " avansi.ukupno," +
                         " avansi.osnovica10," +
                         " avansi.porez_var as porez," +
                         " avansi.osnovica_var as osnovica," +
                         " avansi.godina_avansa," +
                         " avansi.nult_stp," +
                         " avansi.neoporezivo," +
                         " avansi.jir," +
                         " avansi.zki," +
                         " avansi.storno," +
                         " concat(CAST (avansi.broj_avansa AS text),CAST ('" + Util.Korisno.VratiDucanIBlagajnuZaIspis(3) + "' AS text))  AS Naslov," +
                         " partners.ime_tvrtke AS kupac_tvrtka," +
                         " partners.adresa AS kupac_adresa," +
                         " partners.id_grad AS id_kupac_grad," +
                         " partners.id_partner AS sifra_kupac," +
                         " ziro_racun.ziroracun AS ziro," +
                         " zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio," +
                         " ziro_racun.banka AS banka," +
                         " '' AS broj_slovima," +
                         " partners.oib AS kupac_oib," +
                         " porezi.iznos AS porez_postotak" +
                         " FROM avansi" +
                         " LEFT JOIN zacrnjeni_partner as  partners ON partners.id_partner=avansi.id_partner" +
                         " LEFT JOIN nacin_placanja ON nacin_placanja.id_placanje=avansi.id_nacin_placanja" +
                         " LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun=avansi.ziro" +
                         " LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=avansi.id_zaposlenik_izradio" +
                         " LEFT JOIN porezi ON porezi.id_porez=avansi.id_pdv" +
                         " WHERE avansi.broj_avansa='" + broj.Trim() + "'" +
                         " AND avansi.godina_avansa='" + godina.Trim() + "'";

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSAvans, "DTRAvans");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSAvans, "DTRAvans");
            }

            string  sql_tecaj    = string.Format(@"select avansi.id_valuta, avansi.tecaj, valute.ime_valute, valute.sifra, valute.naziv from avansi
left join valute on avansi.id_valuta = valute.id_valuta
where avansi.broj_avansa = {0} and avansi.godina_avansa::integer = {1};", broj.Trim(), godina.Trim());
            decimal tecaj        = 1;
            string  stranaValuta = "";
            DataSet dsTecaj      = classSQL.select(sql_tecaj, "tecaj");

            if (dsTecaj != null && dsTecaj.Tables.Count > 0 && dsTecaj.Tables[0] != null && dsTecaj.Tables[0].Rows.Count > 0)
            {
                decimal.TryParse(dsTecaj.Tables[0].Rows[0]["tecaj"].ToString(), out tecaj);
                if (dsTecaj.Tables[0].Rows[0]["sifra"].ToString() == "978")
                {
                    decimal ukp = 0;
                    decimal.TryParse(dSAvans.Tables[0].Rows[0]["ukupno"].ToString(), out ukp);
                    stranaValuta = "Prema tečaju " + tecaj.ToString() + " ukupna vrijednost iznosi " + Math.Round(ukp / tecaj, 3).ToString("#0.00") + " " + dsTecaj.Tables[0].Rows[0]["naziv"].ToString();
                    //stranaValuta = string.Format("Iznos u eurima prema tecaju {0} je {1}", tecaj, Math.Round((ukp / tecaj), 2, MidpointRounding.AwayFromZero));
                }
            }


            if (dSAvans.Tables[0].Rows.Count > 0)
            {
                if (dSAvans.Tables[0].Rows[0]["storno"].ToString() == "DA")
                {
                    dSAvans.Tables[0].Rows[0].SetField("storno", "Storno račun za predujam: ");
                }
                else
                {
                    if (DTsust_pdv.Rows[0]["sustav_pdv"].ToString() == "1")
                    {
                        dSAvans.Tables[0].Rows[0].SetField("storno", "R1 Račun za predujam: ");
                    }
                    else
                    {
                        dSAvans.Tables[0].Rows[0].SetField("storno", "R2 Račun za predujam: ");
                    }
                }
            }

            string ukupno = broj_u_text.PretvoriBrojUTekst(dSAvans.Tables[0].Rows[0]["ukupno"].ToString(), ',', "kn", "lp").ToString().ToLower();

            dSAvans.Tables[0].Rows[0]["broj_slovima"] = ukupno;

            string id_kupac_grad = "";
            string id_kupac      = "";

            if (dSAvans.Tables[0].Rows.Count > 0)
            {
                id_kupac_grad = dSAvans.Tables[0].Rows[0]["id_kupac_grad"].ToString();
                id_kupac      = dSAvans.Tables[0].Rows[0]["sifra_kupac"].ToString();
            }
            else
            {
                MessageBox.Show("Odabrani zahtjev ne postoji.", "Greška", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            string naziv_fakture = " podaci_tvrtka.naziv_fakture,";
            string sql1          = SqlPodaciTvrtke.VratiSql(id_kupac_grad, naziv_fakture, id_kupac);

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }

            sql = string.Format(@"select artikl from avansi where broj_avansa = '{0}' and godina_avansa = '{1}';", broj, godina);

            try
            {
                string artikl = classSQL.select(sql, "avans_racun").Tables[0].Rows[0]["artikl"].ToString().Trim();
                if (artikl.Length == 0)
                {
                    artikl = "Uplata predujma";
                }
                ReportParameter p2 = new ReportParameter("artikl", artikl);
                ReportParameter p4 = new ReportParameter("stranaValuta", stranaValuta);
                this.reportViewer1.LocalReport.EnableExternalImages = true;
                this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p2, p4 });
            }
            catch (Exception)
            {
            }

            this.reportViewer1.RefreshReport();
        }
コード例 #9
0
ファイル: repAvans.cs プロジェクト: Dincho98/SyncTesting
        private void FillAvansRacun(string broj, string godina, string poslovnica)
        {
            PCPOS.classNumberToLetter broj_u_text = new PCPOS.classNumberToLetter();

            string    usustavu_pdva = "SELECT sustav_pdv FROM postavke";
            DataTable DTsust_pdv    = classSQL.select_settings(usustavu_pdva, "Sustav PDV").Tables[0];

            string sql = string.Format(@"SELECT
                avans_racun.broj_avansa, avans_racun.dat_dok AS datum, avans_racun.dat_knj as datum_knj, avans_racun.datum_valute, nacin_placanja.naziv_placanja AS placanje, CAST (avans_racun.model AS text) + '  '+ CAST (avans_racun.broj_avansa AS text)+CAST (avans_racun.godina_avansa AS text)+'-'+CAST (avans_racun.broj_avansa AS text) +'¤'+case when avans_racun.storno > 0 then (select ar.broj_avansa||'/'||d.ime_ducana||'/'||ar.godina_avansa from avans_racun ar left join ducan d on d.id_ducan = ar.poslovnica
where ar.id = avans_racun.storno) else '' end AS model, avans_racun.opis, avans_racun.ukupno, avans_racun.osnovica10, avans_racun.porez_var as porez, avans_racun.osnovica_var as osnovica, avans_racun.godina_avansa, avans_racun.nult_stp, avans_racun.neoporezivo, avans_racun.jir, avans_racun.zki, avans_racun.storno, concat(CAST(avans_racun.broj_avansa AS text),'/',ducan.ime_ducana,'/',CAST(godina_avansa as text))  AS Naslov, partners.ime_tvrtke AS kupac_tvrtka, partners.adresa AS kupac_adresa, partners.id_grad AS id_kupac_grad, partners.id_partner AS sifra_kupac, ziro_racun.ziroracun AS ziro, zaposlenici.ime + ' ' + zaposlenici.prezime AS izradio, ziro_racun.banka AS banka, '' AS broj_slovima, partners.oib AS kupac_oib, porezi.iznos AS porez_postotak
FROM avans_racun
LEFT JOIN zacrnjeni_partner as  partners ON partners.id_partner=avans_racun.id_partner
LEFT JOIN nacin_placanja ON nacin_placanja.id_placanje=avans_racun.id_nacin_placanja
LEFT JOIN ziro_racun ON ziro_racun.id_ziroracun=avans_racun.ziro
LEFT JOIN zaposlenici ON zaposlenici.id_zaposlenik=avans_racun.id_zaposlenik_izradio
LEFT JOIN porezi ON porezi.id_porez=avans_racun.id_pdv
left join ducan on ducan.id_ducan = avans_racun.poslovnica
WHERE avans_racun.broj_avansa={0} AND avans_racun.godina_avansa={1} and avans_racun.poslovnica = {2};", broj, godina, poslovnica);

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql).Fill(dSAvans, "DTRAvans");
            }
            else
            {
                classSQL.NpgAdatpter(sql.Replace("nvarchar", "varchar")).Fill(dSAvans, "DTRAvans");
            }

            if (dSAvans.Tables[0].Rows.Count > 0)
            {
                if (Convert.ToInt32(dSAvans.Tables[0].Rows[0]["storno"].ToString()) > 0)
                {
                    dSAvans.Tables[0].Rows[0].SetField("storno", "Storno računa za predujam: ");
                }
                else
                {
                    if (DTsust_pdv.Rows[0]["sustav_pdv"].ToString() == "1")
                    {
                        dSAvans.Tables[0].Rows[0].SetField("storno", "Račun za predujam: ");
                    }
                    else
                    {
                        dSAvans.Tables[0].Rows[0].SetField("storno", "Račun za predujam: ");
                    }
                }
            }

            string ukupno = broj_u_text.PretvoriBrojUTekst(dSAvans.Tables[0].Rows[0]["ukupno"].ToString(), ',', "kn", "lp").ToString().ToLower();

            dSAvans.Tables[0].Rows[0]["broj_slovima"] = ukupno;

            string id_kupac_grad = "";
            string id_kupac      = "";

            if (dSAvans.Tables[0].Rows.Count > 0)
            {
                id_kupac_grad = dSAvans.Tables[0].Rows[0]["id_kupac_grad"].ToString();
                id_kupac      = dSAvans.Tables[0].Rows[0]["sifra_kupac"].ToString();
            }
            else
            {
                MessageBox.Show("Odabrani zahtjev ne postoji.", "Greška", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            string naziv_fakture = " podaci_tvrtka.naziv_fakture,";
            string sql1          = SqlPodaciTvrtke.VratiSql(id_kupac_grad, naziv_fakture, id_kupac);

            if (classSQL.remoteConnectionString == "")
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }
            else
            {
                classSQL.CeAdatpter(sql1).Fill(dSRpodaciTvrtke, "DTRpodaciTvrtke");
            }

            sql = string.Format(@"select artikl from avans_racun where broj_avansa = {0} and poslovnica = {1} and godina_avansa = {2}", broj, poslovnica, godina);

            string artikl = classSQL.select(sql, "avans_racun").Tables[0].Rows[0]["artikl"].ToString().Trim();

            if (artikl.Length == 0)
            {
                artikl = "Uplata predujma";
            }
            ReportParameter p2 = new ReportParameter("artikl", artikl);
            ReportParameter p3 = new ReportParameter("stranaValuta", "1");

            this.reportViewer1.LocalReport.EnableExternalImages = true;
            this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p2, p3 });

            this.reportViewer1.RefreshReport();
        }