예제 #1
0
        public void id2011Command(object sender, EventArgs e)
        {
            dsIdObrazac obrazac = new dsIdObrazac();
            sp_id_detaljiDataAdapter   adapter2 = new sp_id_detaljiDataAdapter();
            sp_id_zaglavljeDataAdapter adapter3 = new sp_id_zaglavljeDataAdapter();
            sp_id_detaljiDataSet       dataSet  = new sp_id_detaljiDataSet();
            sp_id_zaglavljeDataSet     set3     = new sp_id_zaglavljeDataSet();
            SqlConnection connection            = new SqlConnection();
            string        str2 = null;
            string        str  = null;

            connection.ConnectionString = Mipsed7.Core.ApplicationDatabaseInformation.ConnectionString;
            frmPregledMjeseciGodina godina = new frmPregledMjeseciGodina();

            godina.ShowDialog();
            if (godina.DialogResult != DialogResult.Cancel)
            {
                decimal num  = 0;
                decimal num2 = 0;
                sPorezIprirezPremaOpciniGraduObracunatiPorez[] porezArray = null;
                decimal num3 = 0;
                if ((godina.OdabraniGodinaIsplate != null) & (godina.OdabraniMjesecIsplate != null))
                {
                    set3.Clear();
                    dataSet.Clear();
                    str2 = Conversions.ToString(godina.OdabraniMjesecIsplate);
                    str  = Conversions.ToString(godina.OdabraniGodinaIsplate);
                    adapter3.Fill(set3, null, Conversions.ToString(godina.OdabraniMjesecIsplate), Conversions.ToString(godina.OdabraniGodinaIsplate), godina.Volonteri);
                    adapter2.Fill(dataSet, null, Conversions.ToString(godina.OdabraniMjesecIsplate), Conversions.ToString(godina.OdabraniGodinaIsplate), godina.Volonteri);
                    obrazac.Clear();
                    obrazac.Merge(dataSet.sp_id_detalji);
                    obrazac.Merge(set3.sp_id_zaglavlje);
                }
                KORISNIKDataAdapter adapter = new KORISNIKDataAdapter();
                KORISNIKDataSet     set2    = new KORISNIKDataSet();
                adapter.Fill(set2);

                sObrazacID    o           = new sObrazacID();
                sIDmetapodaci dmetapodaci = new sIDmetapodaci();

                dmetapodaci.Naslov       = new sNaslovTemeljni();
                dmetapodaci.Naslov.Value = "ID obrazac";
                dmetapodaci.Naslov.dc    = "http://purl.org/dc/elements/1.1/title";

                dmetapodaci.Autor       = new sAutorTemeljni();
                dmetapodaci.Autor.Value = "VugerGRAD d.o.o.";
                dmetapodaci.Autor.dc    = "http://purl.org/dc/elements/1.1/creator";

                dmetapodaci.Datum       = new sDatumTemeljni();
                dmetapodaci.Datum.Value = DateAndTime.Now.ToString("s");
                dmetapodaci.Datum.dc    = "http://purl.org/dc/elements/1.1/date";

                dmetapodaci.Format       = new sFormatTemeljni();
                dmetapodaci.Format.Value = PlacaExe.tFormat.textxml;
                dmetapodaci.Format.dc    = "http://purl.org/dc/elements/1.1/format";

                dmetapodaci.Jezik       = new sJezikTemeljni();
                dmetapodaci.Jezik.Value = PlacaExe.tJezik.hrHR;
                dmetapodaci.Jezik.dc    = "http://purl.org/dc/elements/1.1/language";

                dmetapodaci.Identifikator       = new sIdentifikatorTemeljni();
                dmetapodaci.Identifikator.Value = Guid.NewGuid().ToString(); //"dc0e2097-c43b-41f3-a095-dcf327268fad";
                dmetapodaci.Identifikator.dc    = "http://purl.org/dc/elements/1.1/identifier";

                dmetapodaci.Uskladjenost       = new sUskladjenost();
                dmetapodaci.Uskladjenost.Value = "ObrazacID-v3-0";
                dmetapodaci.Uskladjenost.dc    = "http://purl.org/dc/terms/conformsTo";

                dmetapodaci.Tip       = new sTipTemeljni();
                dmetapodaci.Tip.Value = PlacaExe.tTip.Elektroničkiobrazac;
                dmetapodaci.Tip.dc    = "http://purl.org/dc/elements/1.1/type";

                dmetapodaci.Adresant       = new sAdresantTemeljni();
                dmetapodaci.Adresant.Value = "Ministarstvo Financija, Porezna uprava, Zagreb";


                o.verzijaSheme = "3.0";
                o.Metapodaci   = dmetapodaci;
                sZaglavlje zaglavlje = new sZaglavlje();
                sZaglavljePodnositeljZahtjeva zahtjeva = new sZaglavljePodnositeljZahtjeva();
                sAdresa    adresa    = new sAdresa();
                sRazdoblje razdoblje = new sRazdoblje();

                zahtjeva.Naziv = Conversions.ToString(set2.KORISNIK[0]["KORISNIK1NAZIV"]);
                zahtjeva.OIB   = Conversions.ToString(set2.KORISNIK[0]["KORISNIKOIB"]);

                try
                {
                    adresa.Ulica = set2.KORISNIK[0]["KORISNIK1ADRESA"].ToString().Replace(DB.IzvuciSamoBrojke(set2.KORISNIK[0]["KORISNIK1ADRESA"].ToString(), false), "");
                }
                catch (Exception)
                {
                    throw new Exception("Problem u izvlačenju brojčanog kućnog broja iz ulice!");
                }

                adresa.Broj     = DB.IzvuciSamoBrojke(set2.KORISNIK[0]["KORISNIK1ADRESA"].ToString(), false);
                adresa.Mjesto   = Conversions.ToString(set2.KORISNIK[0]["KORISNIK1MJESTO"]);
                zahtjeva.Adresa = adresa;
                zaglavlje.PodnositeljZahtjeva = zahtjeva;
                zaglavlje.PodrucniUred        = Conversions.ToString(set2.KORISNIK[0]["NADLEZNAPU"]);
                if (Operators.ConditionalCompareObjectEqual(obrazac.sp_id_zaglavlje[0]["identifikator"], 1, false))
                {
                    zaglavlje.Identifikator = sIdentifikator.Item1;
                }
                if (Operators.ConditionalCompareObjectEqual(obrazac.sp_id_zaglavlje[0]["identifikator"], 11, false))
                {
                    zaglavlje.Identifikator = sIdentifikator.Item12;
                }
                zaglavlje.Ispostava = Conversions.ToString(set2.KORISNIK[0]["BROJCANAOZNAKAPU"]);
                razdoblje.DatumOd   = DateAndTime.DateSerial(Conversions.ToInteger(str), Conversions.ToInteger(str2), 1);
                razdoblje.DatumDo   = DateAndTime.DateSerial(Conversions.ToInteger(str), Conversions.ToInteger(str2), DateTime.DaysInMonth(Conversions.ToInteger(str), Conversions.ToInteger(str2)));
                zaglavlje.Razdoblje = razdoblje;
                o.Zaglavlje         = zaglavlje;
                sIsplaceniPrimiciIObracunPoreza poreza = new sIsplaceniPrimiciIObracunPoreza();
                sTijelo tijelo = new sTijelo();
                poreza.Podatak100 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_1"]), 2);
                poreza.Podatak200 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_2"]), 2);
                poreza.Podatak210 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_2_1_1"]), 2);
                poreza.Podatak220 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_2_1_2"]), 2);
                poreza.Podatak230 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_2_1_3"]), 2);
                poreza.Podatak300 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_3"]), 2);
                poreza.Podatak400 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_4"]), 2);
                poreza.Podatak500 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_5"]), 2);
                poreza.Podatak600 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_6"]), 2);
                poreza.Podatak610 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_6_1"]), 2);
                poreza.Podatak620 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_6_2"]), 2);
                poreza.Podatak700 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_II_7"]), 2);
                poreza.Podatak800 = Conversions.ToString(obrazac.sp_id_zaglavlje[0]["REDAK_II_8"]);
                sDoprinosiUkupno ukupno = new sDoprinosiUkupno {
                    Podatak110 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_1_1"]), 2),
                    Podatak120 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_1_2"]), 2),
                    Podatak210 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_2_1"]), 2),
                    Podatak220 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_2_2"]), 2),
                    Podatak310 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_3_1"]), 2),
                    Podatak320 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_3_2"]), 2),
                    Podatak330 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_3_3"]), 2),
                    Podatak410 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_4_1"]), 2),
                    Podatak420 = decimal.Round(Conversions.ToDecimal(obrazac.sp_id_zaglavlje[0]["REDAK_III_4_2"]), 2),
                    Podatak500 = Conversions.ToString(obrazac.sp_id_zaglavlje[0]["REDAK_III_5"])
                };
                porezArray = (sPorezIprirezPremaOpciniGraduObracunatiPorez[])Utils.CopyArray((Array)porezArray, new sPorezIprirezPremaOpciniGraduObracunatiPorez[obrazac.sp_id_detalji.Rows.Count + 1]);
                int num5 = obrazac.sp_id_detalji.Rows.Count - 1;
                for (int i = 0; i <= num5; i++)
                {
                    porezArray[i] = new sPorezIprirezPremaOpciniGraduObracunatiPorez();
                    sPorezIprirezPremaOpciniGraduObracunatiPorez porez = porezArray[i];
                    porez.Poreza  = Conversions.ToDecimal(obrazac.sp_id_detalji.Rows[i]["obracunaniporez"]);
                    num           = Conversions.ToDecimal(Operators.AddObject(num, obrazac.sp_id_detalji.Rows[i]["obracunaniporez"]));
                    porez.Prireza = Conversions.ToDecimal(obrazac.sp_id_detalji.Rows[i]["obracunaniprirez"]);
                    num2          = Conversions.ToDecimal(Operators.AddObject(num2, obrazac.sp_id_detalji.Rows[i]["obracunaniprirez"]));
                    porez.Ukupno  = Conversions.ToDecimal(obrazac.sp_id_detalji.Rows[i]["obracunanoukupno"]);
                    num3          = Conversions.ToDecimal(Operators.AddObject(num3, obrazac.sp_id_detalji.Rows[i]["obracunanoukupno"]));
                    porez.Sifra   = Conversions.ToString(obrazac.sp_id_detalji.Rows[i]["idopcine"]);
                    porez         = null;
                }
                sUkupno ukupno2 = new sUkupno {
                    Poreza  = num,
                    Prireza = num2,
                    Ukupno  = num3
                };
                tijelo.IsplaceniPrimiciIObracunPoreza = poreza;
                tijelo.DoprinosiUkupno  = ukupno;
                tijelo.ObracunatiPorezi = porezArray;
                tijelo.Ukupno           = ukupno2;
                o.Tijelo = tijelo;
                try
                {
                    SaveFileDialog dialog2 = new SaveFileDialog {
                        InitialDirectory = Conversions.ToString(0),
                        FileName         = "ID-" + str + "-" + str2 + ".xml",
                        RestoreDirectory = true
                    };
                    SaveFileDialog dialog = dialog2;
                    if (dialog.ShowDialog() == DialogResult.OK)
                    {
                        using (TextWriter writer = new StreamWriter(dialog.FileName))
                        {
                            XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces();
                            namespaces.Add("", "http://e-porezna.porezna-uprava.hr/sheme/zahtjevi/ObrazacID/v3-0");
                            new XmlSerializer(typeof(sObrazacID), "http://e-porezna.porezna-uprava.hr/sheme/zahtjevi/ObrazacID/v3-0").Serialize(writer, o, namespaces);

                            writer.Close();
                        }
                        Interaction.MsgBox("Datoteka uspješno  spremljena u: " + dialog.FileName, MsgBoxStyle.OkOnly, null);
                    }
                }
                catch (System.Exception exception1)
                {
                    throw exception1;
                }
            }
        }
예제 #2
0
        public void OtvoriObracun_Za_Mjesec()
        {
            SqlConnection connection = new SqlConnection {
                ConnectionString = Configuration.ConnectionString
            };
            frmPregledMjeseciGodina godina = new frmPregledMjeseciGodina();

            godina.ShowDialog();
            if (godina.DialogResult != DialogResult.Cancel)
            {
                DataRow row  = null;
                string  str  = string.Empty;
                string  str2 = string.Empty;
                string  str3 = string.Empty;
                if ((godina.OdabraniGodinaIsplate != null) & (godina.OdabraniMjesecIsplate != null))
                {
                    this.ds.Clear();
                    this.por.Clear();
                    this.mjesecisplate = Conversions.ToString(godina.OdabraniMjesecIsplate);
                    this.godinaisplate = Conversions.ToString(godina.OdabraniGodinaIsplate);
                    this.da.Fill(this.ds, Conversions.ToString(godina.OdabraniMjesecIsplate), Conversions.ToString(godina.OdabraniGodinaIsplate));
                    DataRow row2 = this.por.porez.NewRow();
                    row2["rbr"]   = 1;
                    row2["vrsta"] = "Plaća";
                    row2["broj"]  = DB.N20(RuntimeHelpers.GetObjectValue(this.ds.S_OD_IPP.Rows[0]["brojradnika"]));
                    if ((Conversions.ToInteger(godina.OdabraniGodinaIsplate) >= 0x7da) & (Conversions.ToInteger(godina.OdabraniMjesecIsplate) >= 7))
                    {
                        row2["osnovica"] = DB.RoundUP(Convert.ToDouble(DB.N20(RuntimeHelpers.GetObjectValue(this.ds.S_OD_IPP.Rows[0]["krizniporez"]))) / 0.04);
                        row2["porez"]    = DB.N20(RuntimeHelpers.GetObjectValue(this.ds.S_OD_IPP.Rows[0]["krizniporez"]));
                    }
                    else
                    {
                        row2["osnovica"] = DB.N20(RuntimeHelpers.GetObjectValue(this.ds.S_OD_IPP.Rows[0]["osnovicakriznogporeza"]));
                        row2["porez"]    = DB.N20(RuntimeHelpers.GetObjectValue(this.ds.S_OD_IPP.Rows[0]["krizniporez"]));
                    }
                    this.por.porez.Rows.Add(row2);
                    S_DD_IPPDataAdapter adapter2 = new S_DD_IPPDataAdapter();
                    S_DD_IPPDataSet     set2     = new S_DD_IPPDataSet();
                    adapter2.Fill(set2, DB.BrojVodeceNule(RuntimeHelpers.GetObjectValue(godina.OdabraniMjesecIsplate), 2, 0, false, ""), Conversions.ToString(godina.OdabraniGodinaIsplate));
                    row          = this.por.porez.NewRow();
                    row["rbr"]   = 3;
                    row["vrsta"] = "Drugi dohodak";
                    row["broj"]  = DB.N20(RuntimeHelpers.GetObjectValue(set2.S_DD_IPP.Rows[0]["brojradnika"]));
                    if ((Conversions.ToInteger(godina.OdabraniGodinaIsplate) >= 0x7da) & (Conversions.ToInteger(godina.OdabraniMjesecIsplate) >= 7))
                    {
                        row["osnovica"] = DB.RoundUP(Convert.ToDouble(DB.N20(RuntimeHelpers.GetObjectValue(set2.S_DD_IPP.Rows[0]["krizniporez"]))) / 0.04);
                        row["porez"]    = DB.N20(RuntimeHelpers.GetObjectValue(set2.S_DD_IPP.Rows[0]["krizniporez"]));
                    }
                    else
                    {
                        row["osnovica"] = DB.N20(RuntimeHelpers.GetObjectValue(set2.S_DD_IPP.Rows[0]["osnovicakriznogporeza"]));
                        row["porez"]    = DB.N20(RuntimeHelpers.GetObjectValue(set2.S_DD_IPP.Rows[0]["krizniporez"]));
                    }
                    this.por.porez.Rows.Add(row);
                }
                row             = this.por.porez.NewRow();
                row["rbr"]      = 2;
                row["vrsta"]    = "Mirovina";
                row["broj"]     = 0;
                row["osnovica"] = 0.0;
                row["porez"]    = 0.0;
                this.por.porez.Rows.Add(row);
                row             = this.por.porez.NewRow();
                row["rbr"]      = 4;
                row["vrsta"]    = "Dividende i udjeli u dobiti";
                row["broj"]     = 0;
                row["osnovica"] = 0.0;
                row["porez"]    = 0.0;
                this.por.porez.Rows.Add(row);
                KORISNIKDataSet dataSet = new KORISNIKDataSet();
                new KORISNIKDataAdapter().Fill(dataSet);
                ReportDocument document = new ReportDocument();
                document.Load(System.Windows.Forms.Application.StartupPath + @"\Izvjestaji\rptIPP.rpt");
                document.SetDataSource(this.por);
                if (dataSet.KORISNIK.Rows.Count > 0)
                {
                    str3 = Conversions.ToString(dataSet.KORISNIK.Rows[0]["KORISNIK1NAZIV"]);
                    str  = string.Format("{0}, {1}", RuntimeHelpers.GetObjectValue(dataSet.KORISNIK.Rows[0]["KORISNIK1ADRESA"]), RuntimeHelpers.GetObjectValue(dataSet.KORISNIK.Rows[0]["KORISNIK1MJESTO"]));
                    str2 = Conversions.ToString(dataSet.KORISNIK.Rows[0]["KORISNIKOIB"]);
                }
                document.SetParameterValue("ustanova", str3);
                document.SetParameterValue("adresa", str);
                document.SetParameterValue("mb", str2);
                document.SetParameterValue("datum", DateTime.Today);
                document.SetParameterValue("mjesec_ime", DB.MjesecNazivDativ(Conversions.ToInteger(this.mjesecisplate)).ToUpper());
                document.SetParameterValue("godina", this.godinaisplate + ".");
                this.CrystalReportViewer1.ReportSource = document;
            }
        }