예제 #1
0
        private void btnPostavi_Click(object sender, EventArgs e)
        {
            PostaviInventuru(true);
            if (inventuraIzProsleGodine)
            {
                classSQL.remoteConnection = new NpgsqlConnection(classSQL.remoteConnectionString.Replace(tmp.UzmiGodinuKojaSeKoristi().ToString(), (tmp.UzmiGodinuKojaSeKoristi() - 1).ToString()));
                classSQL.update("UPDATE inventura SET is_pocetno_stanje='1' WHERE broj_inventure='" + inventura + "' AND id_skladiste='" + skladiste + "'");
                classSQL.remoteConnection = new NpgsqlConnection(classSQL.remoteConnectionString);
            }
            else
            {
                classSQL.update("UPDATE inventura SET is_pocetno_stanje='1' WHERE broj_inventure='" + inventura + "' AND id_skladiste='" + skladiste + "'");
            }

            Until.FunkcijeRobno robno = new Until.FunkcijeRobno();
            robno.PostaviStanjeSkladista();
            try
            {
                if (!Util.Korisno.RadimSinkronizaciju)
                {
                    Util.Korisno.RadimSinkronizaciju = true;
                    bgSinkronizacija.RunWorkerAsync();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
 private void frmPovratRobe_FormClosing(object sender, FormClosingEventArgs e)
 {
     Until.FunkcijeRobno robno = new Until.FunkcijeRobno();
     robno.PostaviStanjeSkladista();
     try
     {
         if (!Util.Korisno.RadimSinkronizaciju)
         {
             Util.Korisno.RadimSinkronizaciju = true;
             bgSinkronizacija.RunWorkerAsync();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
예제 #3
0
        private void btnStornoZadnjegR_Click(object sender, EventArgs e)
        {
            bool storno = false;

            if (!File.Exists("belveder"))
            {
                if (MessageBox.Show("Dali ste sigurni da želite stornirati račun?", "Storno računa!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    storno = true;
                }
            }
            else
            {
                Dodaci.frmVracaNekuVrijednost v = new Dodaci.frmVracaNekuVrijednost();
                Properties.Settings.Default.privremena_vrijednost = "";
                v.txtBroj.PasswordChar = '*';
                v._title = "Unesite ključ:";
                v.ShowDialog();

                string key = File.ReadAllText("belveder");
                if (Properties.Settings.Default.privremena_vrijednost == key)
                {
                    if (MessageBox.Show("Dali ste sigurni da želite stornirati račun?", "Storno računa!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        storno = true;
                    }
                }
                else
                {
                    MessageBox.Show("Krivi unos!");
                }
            }

            if (storno)
            {
                DTsend = new DataTable();
                DTsend.Columns.Add("broj_racuna");
                DTsend.Columns.Add("sifra_robe");
                DTsend.Columns.Add("id_skladiste");
                DTsend.Columns.Add("mpc");
                DTsend.Columns.Add("vpc");
                DTsend.Columns.Add("nbc");
                DTsend.Columns.Add("porez");
                DTsend.Columns.Add("kolicina");
                DTsend.Columns.Add("godina");
                DTsend.Columns.Add("rabat");
                DTsend.Columns.Add("cijena");
                DTsend.Columns.Add("ime");
                DTsend.Columns.Add("stol");
                DTsend.Columns.Add("jelo");
                DTsend.Columns.Add("porez_potrosnja");
                DTsend.Columns.Add("storno");
                DTsend.Columns.Add("id_ducan");
                DTsend.Columns.Add("id_blagajna");
                DTsend.Columns.Add("dod");
                DTsend.Columns.Add("pol");

                DataRow row;

                string   brRac = brojRacuna();
                DateTime dRac  = Convert.ToDateTime(DateTime.Now);
                string   dt    = dRac.ToString("yyyy-MM-dd H:mm:ss");

                DataTable DSbr = classSQL.select("SELECT MAX(CAST(broj_racuna AS integer)) FROM racuni " +
                                                 "WHERE  id_ducan='" + DTsettings.Rows[0]["default_ducan"].ToString() + "' " +
                                                 "AND id_kasa='" + DTsettings.Rows[0]["default_blagajna"].ToString() + "'" +
                                                 "AND godina='" + DateTime.Now.Year.ToString() + "'"
                                                 , "racuni").Tables[0];

                string    sql = "SELECT * FROM racuni WHERE broj_racuna='" + DSbr.Rows[0][0].ToString() + "' AND id_ducan='" + DTsettings.Rows[0]["default_ducan"].ToString() + "' AND godina='" + DateTime.Now.Year.ToString() + "' AND id_kasa='" + DTsettings.Rows[0]["default_blagajna"].ToString() + "'";
                DataTable DTr = classSQL.select(sql, "racuni").Tables[0];

                if (DTr.Rows.Count > 0)
                {
                    if (DTr.Rows[0]["storno"].ToString() == "DA")
                    {
                        MessageBox.Show("Ovaj je račun je već stonirani.");
                        return;
                    }
                    decimal dec;
                    decimal Dukupno_virman = 0;
                    if (!decimal.TryParse(DTr.Rows[0]["ukupno_virman"].ToString(), out dec))
                    {
                        Dukupno_virman = 0;
                    }
                    else
                    {
                        Dukupno_virman = Convert.ToDecimal(DTr.Rows[0]["ukupno_virman"].ToString());
                    }

                    string sqlR = "INSERT INTO racuni (" +
                                  " broj_racuna," +
                                  " datum_racuna," +
                                  " id_ducan," +
                                  " id_kasa," +
                                  " id_kupac," +
                                  " id_blagajnik," +
                                  " ukupno_gotovina," +
                                  " ukupno_kartice," +
                                  " storno," +
                                  " ukupno," +
                                  " dobiveno_gotovina," +
                                  " id_stol," +
                                  " nacin_placanja," +
                                  " ukupno_virman," +
                                  " godina" +
                                  ") VALUES (" +
                                  "'" + brRac + "'," +
                                  "'" + dt + "'," +
                                  "'" + DTr.Rows[0]["id_ducan"].ToString() + "'," +
                                  "'" + DTr.Rows[0]["id_kasa"].ToString() + "'," +
                                  "'" + DTr.Rows[0]["id_kupac"].ToString() + "'," +
                                  "'" + DTr.Rows[0]["id_blagajnik"].ToString() + "'," +
                                  "'" + (Convert.ToDouble(DTr.Rows[0]["ukupno_gotovina"].ToString()) * (-1)).ToString() + "'," +
                                  "'" + (Convert.ToDouble(DTr.Rows[0]["ukupno_kartice"].ToString()) * (-1)).ToString() + "'," +
                                  "'NE'," +
                                  "'" + (Convert.ToDouble(DTr.Rows[0]["ukupno"].ToString()) * (-1)).ToString() + "'," +
                                  "'" + DTr.Rows[0]["dobiveno_gotovina"].ToString() + "'," +
                                  "'" + DTr.Rows[0]["id_stol"].ToString() + "'," +
                                  "'" + DTr.Rows[0]["nacin_placanja"].ToString() + "'," +
                                  "'" + (Dukupno_virman * (-1)).ToString() + "'," +
                                  "'" + DTr.Rows[0]["godina"].ToString() + "'" +
                                  ")";

                    string aa = DTr.Rows[0]["ukupno_gotovina"].ToString();

                    provjera_sql(classSQL.insert(sqlR));

                    string sqlA = "SELECT * FROM racun_stavke WHERE broj_racuna='" + DSbr.Rows[0][0].ToString() + "'" +
                                  " AND id_ducan='" + DTsettings.Rows[0]["default_ducan"].ToString() + "'" +
                                  " AND godina='" + DateTime.Now.Year.ToString() + "'" +
                                  " AND id_blagajna='" + DTsettings.Rows[0]["default_blagajna"].ToString() + "'";

                    DataTable DTA = classSQL.select(sqlA, "racun_stavke").Tables[0];

                    for (int i = 0; i < DTA.Rows.Count; i++)
                    {
                        sifra = DTA.Rows[i]["sifra_robe"].ToString();
                        row   = DTsend.NewRow();
                        row["broj_racuna"]     = brRac;
                        row["sifra_robe"]      = sifra;
                        row["mpc"]             = DTA.Rows[i]["mpc"].ToString();
                        row["godina"]          = DTA.Rows[i]["godina"].ToString();
                        row["id_skladiste"]    = DTA.Rows[i]["id_skladiste"].ToString();
                        row["porez"]           = DTA.Rows[i]["porez"].ToString();
                        row["kolicina"]        = (Convert.ToDouble(DTA.Rows[i]["kolicina"].ToString()) * (-1)).ToString();
                        row["rabat"]           = DTA.Rows[i]["rabat"].ToString();
                        row["vpc"]             = DTA.Rows[i]["vpc"].ToString();
                        row["cijena"]          = DTA.Rows[i]["mpc"].ToString();
                        row["porez_potrosnja"] = DTA.Rows[i]["porez_potrosnja"].ToString();
                        row["ime"]             = classSQL.select("SELECT naziv FROM roba WHERE sifra='" + sifra + "'", "roba").Tables[0].Rows[0][0].ToString();
                        row["stol"]            = DTr.Rows[0]["id_stol"].ToString();
                        row["nbc"]             = DTA.Rows[0]["nbc"].ToString().Replace(",", ".");
                        row["dod"]             = 0;
                        row["pol"]             = 0;

                        DTsend.Rows.Add(row);

                        sqlA = "INSERT INTO racun_stavke (broj_racuna,sifra_robe,id_skladiste,mpc,porez,kolicina,rabat,vpc,odjava,nbc,porez_potrosnja,id_ducan,godina,id_blagajna) VALUES (" +
                               "'" + brRac + "'," +
                               "'" + DTA.Rows[i]["sifra_robe"].ToString() + "'," +
                               "'" + DTA.Rows[i]["id_skladiste"].ToString() + "'," +
                               "'" + DTA.Rows[i]["mpc"].ToString() + "'," +
                               "'" + DTA.Rows[i]["porez"].ToString() + "'," +
                               "'" + (Convert.ToDouble(DTA.Rows[i]["kolicina"].ToString()) * (-1)).ToString() + "'," +
                               "'" + DTA.Rows[i]["rabat"].ToString() + "'," +
                               "'" + DTA.Rows[i]["vpc"].ToString().Replace(",", ".") + "'," +
                               "'" + DTA.Rows[i]["odjava"].ToString() + "'," +
                               "'" + DTA.Rows[i]["nbc"].ToString().Replace(",", ".") + "'," +
                               "'" + DTA.Rows[i]["porez_potrosnja"].ToString() + "'," +
                               "'" + DTA.Rows[i]["id_ducan"].ToString() + "'," +
                               "'" + DTA.Rows[i]["godina"].ToString() + "'," +
                               "'" + DTA.Rows[i]["id_blagajna"].ToString() + "'" +
                               ")";
                        provjera_sql(classSQL.insert(sqlA));

                        SQL.ClassSkladiste.GetAmountCaffe(DTA.Rows[i]["sifra_robe"].ToString(), DTA.Rows[i]["id_skladiste"].ToString(), (Convert.ToDouble(DTA.Rows[i]["kolicina"].ToString()) * (-1)).ToString(), "-");
                    }

                    if (DTr.Rows[0]["nacin_placanja"].ToString() == "G")
                    {
                        Util.Korisno.dodajIznosUBlagajnickiIzvjestaj(Convert.ToInt32(brRac), dRac, (Convert.ToDecimal(DTr.Rows[0]["ukupno"].ToString()) * (-1)));
                    }

                    //OVA FUNKCIJA POSTAVLJA SKLADIŠTE TAKO DA UZME U OBZIR SVE DOKUMENTE I ZAKLJUČI STANJE NA SKLADIŠTU
                    if (DTsettings.Rows[0]["skidaj_kolicinu_po_dokumentima"].ToString() == "1")
                    {
                        RobnoFunkcije.PostaviStanjeSkladista();
                    }

                    if (DTpostavkePrinter.Rows[0]["posPrinterBool"].ToString() == "1")
                    {
                        try
                        {
                            try
                            {
                                PosPrint.classPosPrintCaffe.PrintReceipt(DTsend, DTr.Rows[0]["id_blagajnik"].ToString(), brRac + "/" + DTr.Rows[0]["id_ducan"].ToString() + "/" + DTr.Rows[0]["id_kasa"].ToString(), DTr.Rows[0]["id_kupac"].ToString(), barcode, brRac, DTr.Rows[0]["nacin_placanja"].ToString(), "DA", 0);
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.ToString());
                            }
                        }
                        catch (Exception ex)
                        {
                            if (MessageBox.Show("Desila se pogreška kod ispisa na 'mali' pos printer.\r\nŽelite li ispisati ovaj dokumenat na A4 format?\r\nOvo je orginalna greška:\r\n" + ex, "Printer", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes)
                            {
                                Report.Faktura.repFaktura rfak = new Report.Faktura.repFaktura();
                                rfak.dokumenat      = "RAC";
                                rfak.ImeForme       = "Račun";
                                rfak.broj_dokumenta = brRac;
                                rfak.ShowDialog();
                            }
                        }
                    }
                    else
                    {
                        Report.Faktura.repFaktura rfak = new Report.Faktura.repFaktura();
                        rfak.dokumenat      = "RAC";
                        rfak.ImeForme       = "Račun";
                        rfak.broj_dokumenta = brRac;
                        rfak.ShowDialog();
                    }

                    if (DSbr.Rows.Count != 0)
                    {
                        classSQL.update("UPDATE racuni SET storno='DA' WHERE broj_racuna='" + DSbr.Rows[0][0].ToString() + "'" +
                                        " AND racuni.id_ducan='" + Util.Korisno.idDucan + "' AND racuni.id_kasa='" + Util.Korisno.idKasa + "';");
                    }

                    MessageBox.Show("Izvršeno");
                    this.Close();
                }
            }
        }
예제 #4
0
        public void UzmiPodatkeSaWeba()
        {
            try
            {
                DataTable DTpostavke      = SqlPostgres.select_settings("SELECT * FROM postavke", "postavke").Tables[0];
                DataTable DTpodaci_tvrtka = SqlPostgres.select_settings("SELECT * FROM podaci_tvrtka", "postavke").Tables[0];
                DataTable DTposlovnica    = SqlPostgres.select("SELECT * FROM ducan WHERE aktivnost='DA' LIMIT 1", "postavke").Tables[0];

                poslovnica = "1";
                if (DTposlovnica.Rows.Count > 0)
                {
                    poslovnica = DTposlovnica.Rows[0]["ime_ducana"].ToString();
                }

                string sql_za_web = "sql=";

                //*************************WEB ARTIKLI******************************
                string query = "SELECT * FROM  roba_prodaja WHERE " +
                               "oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "' AND poslovnica='" + poslovnica + "';";
                DataTable DT = Pomagala.MyWebRequestXML("sql=" + query + "&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "uzmi_podatke_xml/web_request.php");

                //*************************LOCAL ARTIKLI******************************
                query = "SELECT * FROM  roba_prodaja";
                DataTable DTlocal = SqlPostgres.select(query, "loc").Tables[0];
                decimal   porez;

                if (DT.Rows.Count > 0)
                {
                    foreach (DataRow r in DT.Rows)
                    {
                        DataRow[] row = DTlocal.Select("sifra='" + r["sifra"].ToString() + "'");
                        decimal.TryParse(r["ulazni_porez"].ToString().Replace(".", ","), out porez);

                        int     id_partner;
                        decimal mpc, kolicina_predracun, cijena2;

                        int.TryParse(r["id_partner"].ToString(), out id_partner);
                        decimal.TryParse(r["mpc"].ToString().Replace(".", ","), out mpc);
                        decimal.TryParse(r["kolicina_predracun"].ToString().Replace(".", ","), out kolicina_predracun);
                        decimal.TryParse(r["cijena2"].ToString().Replace(".", ","), out cijena2);

                        if (row.Length == 0)
                        {
                            query = "INSERT INTO roba_prodaja (" +
                                    "id_skladiste,kolicina,nc,vpc,sifra,porez_potrosnja,id_grupa,id_podgrupa,mjera,aktivnost," +
                                    "povratna_naknada,poticajna_naknada,ulazni_porez,izlazni_porez,naziv,novo,editirano" +
                                    ") VALUES (" +
                                    "'" + r["id_skladiste"].ToString() + "'," +
                                    "'0'," +
                                    "'" + r["nc"].ToString().Replace(",", ".") + "'," +
                                    "'0'," +
                                    "'" + r["sifra"].ToString() + "'," +
                                    "'" + r["porez_potrosnja"].ToString().Replace(".", ",") + "'," +
                                    "'" + r["id_grupa"].ToString() + "'," +
                                    "'" + r["id_podgrupa"].ToString() + "'," +
                                    "'" + r["mjera"].ToString() + "'," +
                                    "'1'," +
                                    "'" + r["povratna_naknada"].ToString().Replace(".", ",") + "'," +
                                    "'" + r["poticajna_naknada"].ToString().Replace(".", ",") + "'," +
                                    "'" + porez.ToString("#0.0").Replace(".", ",") + "'," +
                                    "'" + r["izlazni_porez"].ToString().Replace(".", ",") + "'," +
                                    "'" + r["naziv"].ToString() + "'," +
                                    "'0','0'" +
                                    ");";
                            classSQL.insert(query);
                        }
                        else
                        {
                            query = "UPDATE roba_prodaja SET " +
                                    " id_grupa='" + r["id_grupa"].ToString() + "'," +
                                    " id_podgrupa='" + r["id_podgrupa"].ToString() + "'," +
                                    " mjera='" + r["mjera"].ToString() + "'," +
                                    " aktivnost='" + r["aktivnost"].ToString() + "'," +
                                    " ulazni_porez='" + porez.ToString("#0.0").Replace(".", ",") + "'," +
                                    " povratna_naknada='" + r["povratna_naknada"].ToString().Replace(".", ",") + "'," +
                                    " naziv='" + r["naziv"].ToString() + "'" +
                                    " WHERE sifra='" + r["sifra"].ToString() + "'";
                            classSQL.update(query);
                        }
                    }

                    //*********PORAVNAJ SKLADIŠTE**********
                    FunkcijeRobno.PostaviStanjeSkladista();
                }
            }
            catch
            {
            }
        }
예제 #5
0
        public void UzmiPodatkeSaWeba()
        {
            DataTable DTpodaci_tvrtka = SqlPostgres.select_settings("SELECT * FROM podaci_tvrtka", "postavke").Tables[0];
            DataTable DTposlovnica    = SqlPostgres.select("SELECT * FROM ducan WHERE aktivnost='DA' LIMIT 1", "postavke").Tables[0];
            string    sql_za_web      = "sql=";

            poslovnica    = "1";
            id_poslovnica = "1";
            if (DTposlovnica.Rows.Count > 0)
            {
                poslovnica    = DTposlovnica.Rows[0]["ime_ducana"].ToString();
                id_poslovnica = DTposlovnica.Rows[0]["id_ducan"].ToString();
            }

            #region IZ POSLOVNICE

            string sql = "SELECT * FROM medu_poslovnice" +
                         " WHERE  (novo_izskl='1') AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "' AND (iz_poslovnice='" + poslovnica + "');";
            DataTable DT = Pomagala.MyWebRequestXML("sql=" + sql + "&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "uzmi_podatke_xml/web_request.php");

            if (DT.Rows.Count > 0)
            {
                sql = "BEGIN;";
                string tempDel = "";
                foreach (DataRow r in DT.Rows)
                {
                    tempDel = "DELETE FROM medu_poslovnice WHERE iz_poslovnice = '" + r["iz_poslovnice"] + "' and u_poslovnicu = '" + r["u_poslovnicu"] + "' AND godina='" + r["godina"].ToString() + "' AND broj='" + r["broj"].ToString() + "';";

                    if (!sql.Contains(tempDel))
                    {
                        sql += tempDel;
                    }
                }

                foreach (DataRow r in DT.Rows)
                {
                    if (r["sifra"].ToString() != "")
                    {
                        decimal nbc, mpc, pdv, kol, pnp, povratna_naknada;
                        decimal.TryParse(r["nbc"].ToString().Replace(".", ","), out nbc);
                        decimal.TryParse(r["mpc"].ToString().Replace(".", ","), out mpc);
                        decimal.TryParse(r["pdv"].ToString().Replace(".", ","), out pdv);
                        decimal.TryParse(r["kolicina"].ToString().Replace(".", ","), out kol);
                        decimal.TryParse(r["pnp"].ToString().Replace(".", ","), out pnp);
                        decimal.TryParse(r["povratna_naknada"].ToString().Replace(".", ","), out povratna_naknada);

                        DateTime DateT;
                        DateTime.TryParse(r["datum"].ToString(), out DateT);

                        sql += "INSERT INTO medu_poslovnice (sifra,nbc,mpc,pdv,kolicina,pnp,pp,id_skladiste,broj,godina," +
                               "datum,iz_poslovnice,u_poslovnicu,id_izradio,napomena,novo_izskl,novo_uskl, zakljucano) VALUES (" +
                               " '" + r["sifra"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + Math.Round(nbc, 3).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(mpc, 3).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(pdv, 2).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(kol, 4).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(pnp, 2).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(povratna_naknada, 2).ToString().Replace(",", ".") + "'," +
                               " '" + r["id_skladiste"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["broj"].ToString() + "'," +
                               " '" + r["godina"].ToString() + "'," +
                               " '" + DateT.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                               " '" + r["iz_poslovnice"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["u_poslovnicu"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["id_izradio"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["napomena"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '0'," +
                               " '0'," +
                               " '" + r["zakljucano"].ToString().Replace(";", "").Replace("~", "") + "'" +
                               ");";
                    }

                    //**********************SQL WEB REQUEST***************************************************************************
                    sql_za_web += "UPDATE medu_poslovnice SET novo_izskl='0'" +
                                  " WHERE id='" + r["id"].ToString() + "'" +
                                  " AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "';~";
                    //**********************SQL WEB REQUEST***************************************************************************
                }

                sql += " COMMIT;";
                classSQL.insert(sql);
                Until.FunkcijeRobno robno = new Until.FunkcijeRobno();
                robno.PostaviStanjeSkladista();
            }

            #endregion IZ POSLOVNICE

            #region U POSLOVNICU

            sql = "SELECT * FROM medu_poslovnice" +
                  " WHERE  (novo_uskl='1') AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "' AND (u_poslovnicu='" + poslovnica + "');";
            DT = Pomagala.MyWebRequestXML("sql=" + sql + "&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "uzmi_podatke_xml/web_request.php");

            if (DT.Rows.Count > 0)
            {
                string tempDel = "";
                sql = "BEGIN;";

                foreach (DataRow r in DT.Rows)
                {
                    tempDel = "DELETE FROM medu_poslovnice WHERE u_poslovnicu='" + poslovnica + "' AND godina='" + r["godina"].ToString() + "' AND broj='" + r["broj"].ToString() + "';";

                    if (!sql.Contains(tempDel))
                    {
                        sql += tempDel;
                    }
                }

                foreach (DataRow r in DT.Rows)
                {
                    if (r["sifra"].ToString() != "")
                    {
                        decimal nbc, pdv, kol, pnp, povratna_naknada;
                        decimal.TryParse(r["nbc"].ToString().Replace(".", ","), out nbc);
                        decimal.TryParse(r["pdv"].ToString().Replace(".", ","), out pdv);
                        decimal.TryParse(r["kolicina"].ToString().Replace(".", ","), out kol);
                        decimal.TryParse(r["pnp"].ToString().Replace(".", ","), out pnp);
                        decimal.TryParse(r["povratna_naknada"].ToString().Replace(".", ","), out povratna_naknada);

                        DateTime DateT;
                        DateTime.TryParse(r["datum"].ToString(), out DateT);

                        sql += "INSERT INTO medu_poslovnice (sifra,mpc,pdv,kolicina,pnp,pp,id_skladiste,broj,godina," +
                               "datum,iz_poslovnice,u_poslovnicu,id_izradio,napomena,novo_izskl,novo_uskl, zakljucano) VALUES (" +
                               " '" + r["sifra"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + Math.Round(nbc, 3).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(pdv, 2).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(kol, 4).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(pnp, 2).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(povratna_naknada, 2).ToString().Replace(",", ".") + "'," +
                               " '" + r["id_skladiste"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["broj"].ToString() + "'," +
                               " '" + r["godina"].ToString() + "'," +
                               " '" + DateT.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                               " '" + r["iz_poslovnice"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["u_poslovnicu"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["id_izradio"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["napomena"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '0'," +
                               " '0'," +
                               " '" + r["zakljucano"].ToString().Replace(";", "").Replace("~", "") + "'" +
                               ");";
                    }

                    //**********************SQL WEB REQUEST***************************************************************************
                    sql_za_web += "UPDATE medu_poslovnice SET novo_uskl='0'" +
                                  " WHERE id='" + r["id"].ToString() + "'" +
                                  " AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "';~";
                    //**********************SQL WEB REQUEST***************************************************************************
                }

                sql += " COMMIT;";
                classSQL.insert(sql);

                Until.FunkcijeRobno robno = new Until.FunkcijeRobno();
                robno.PostaviStanjeSkladista();
            }

            #endregion U POSLOVNICU

            if (sql_za_web.Length > 4)
            {
                sql_za_web = sql_za_web.Remove(sql_za_web.Length - 1);
                string[] odg = Pomagala.MyWebRequest(sql_za_web + "&lozinka=sinkronizacija_za_caffeq1w2e3r4&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "include/primam_post_sql_query.php").Split(';');
            }
        }
예제 #6
0
        public void UzmiPodatkeSaWeba()
        {
            DataTable DTpodaci_tvrtka = SqlPostgres.select_settings("SELECT * FROM podaci_tvrtka", "postavke").Tables[0];
            DataTable DTposlovnica    = SqlPostgres.select("SELECT * FROM ducan WHERE aktivnost='DA' LIMIT 1", "postavke").Tables[0];
            string    sql_za_web      = "sql=";

            poslovnica = "1";
            string id_poslovnica = "1";

            if (DTposlovnica.Rows.Count > 0)
            {
                poslovnica    = DTposlovnica.Rows[0]["ime_ducana"].ToString();
                id_poslovnica = DTposlovnica.Rows[0]["id_ducan"].ToString();
            }

            string sql = "SELECT * FROM pocetno " +
                         " WHERE  (novo='1' OR editirano='1') AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "' AND poslovnica='" + poslovnica + "';";
            DataTable DT = Pomagala.MyWebRequestXML("sql=" + sql + "&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "uzmi_podatke_xml/web_request.php");

            if (DT.Rows.Count > 0)
            {
                sql = "BEGIN;";
                foreach (DataRow r in DT.Rows)
                {
                    if (r["sifra"].ToString() != "")
                    {
                        decimal nbc, kol, mpc, povratna_naknada;
                        decimal.TryParse(r["nc"].ToString().Replace(".", ","), out nbc);
                        decimal.TryParse(r["kolicina"].ToString().Replace(".", ","), out kol);
                        decimal.TryParse(r["prodajna_cijena"].ToString().Replace(".", ","), out mpc);
                        decimal.TryParse(r["povratna_naknada"].ToString().Replace(".", ","), out povratna_naknada);

                        DateTime DateT;
                        DateTime.TryParse(r["datum"].ToString(), out DateT);

                        sql += "DELETE FROM pocetno WHERE sifra='" + r["sifra"].ToString() + "' AND id_skladiste='" + r["id_skladiste"].ToString() + "';" +
                               " INSERT INTO pocetno (sifra,id_skladiste,novo,editirano,kolicina,nc,datum,prodajna_cijena,povratna_naknada) VALUES (" +
                               " '" + r["sifra"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '" + r["id_skladiste"].ToString().Replace(";", "").Replace("~", "") + "'," +
                               " '0'," +
                               " '0'," +
                               " '" + Math.Round(kol, 4).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(nbc, 4).ToString().Replace(",", ".") + "'," +
                               " '" + DateT.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                               " '" + Math.Round(mpc, 2).ToString().Replace(",", ".") + "'," +
                               " '" + Math.Round(povratna_naknada, 2).ToString().Replace(",", ".") + "'" +
                               ");";
                    }

                    //**********************SQL WEB REQUEST***************************************************************************
                    sql_za_web += "UPDATE pocetno SET novo='0',editirano='0'" +
                                  " WHERE id='" + r["id"].ToString() + "'" +
                                  " AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "';~";
                    //**********************SQL WEB REQUEST***************************************************************************
                }

                sql += " COMMIT;";
                classSQL.insert(sql);

                if (sql_za_web.Length > 4)
                {
                    sql_za_web = sql_za_web.Remove(sql_za_web.Length - 1);
                    string[] odg = Pomagala.MyWebRequest(sql_za_web + "&lozinka=sinkronizacija_za_caffeq1w2e3r4&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "include/primam_post_sql_query.php").Split(';');
                }

                Until.FunkcijeRobno robno = new Until.FunkcijeRobno();
                robno.PostaviStanjeSkladista();
            }
        }
예제 #7
0
        public void UzmiPodatkeSaWeba()
        {
            try
            {
                DataTable DTpostavke      = SqlPostgres.select_settings("SELECT * FROM postavke", "postavke").Tables[0];
                DataTable DTpodaci_tvrtka = SqlPostgres.select_settings("SELECT * FROM podaci_tvrtka", "postavke").Tables[0];
                DataTable DTposlovnica    = SqlPostgres.select("SELECT * FROM ducan WHERE aktivnost='DA' LIMIT 1", "postavke").Tables[0];

                poslovnica = "1";
                if (DTposlovnica.Rows.Count > 0)
                {
                    poslovnica = DTposlovnica.Rows[0]["ime_ducana"].ToString();
                }

                string sql_za_web = "sql=";
                string query      = "SELECT * FROM roba_prodaja WHERE (novo='1' OR editirano='1') " +
                                    " AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "' AND poslovnica='" + poslovnica + "';";
                DataTable DT = Pomagala.MyWebRequestXML("sql=" + query + "&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "uzmi_podatke_xml/web_request.php");

                if (DT.Rows.Count > 0)
                {
                    foreach (DataRow r in DT.Rows)
                    {
                        decimal porez;
                        decimal.TryParse(r["ulazni_porez"].ToString().Replace(".", ","), out porez);

                        query = "BEGIN; " +
                                "DELETE FROM roba_prodaja WHERE sifra='" + r["sifra"].ToString() + "' AND id_skladiste='" + r["id_skladiste"].ToString() + "';" +
                                "INSERT INTO roba_prodaja (" +
                                "id_skladiste,kolicina,nc,vpc,sifra,porez_potrosnja,id_grupa,id_podgrupa,mjera,aktivnost," +
                                "povratna_naknada,poticajna_naknada,ulazni_porez,izlazni_porez,naziv,novo,editirano" +
                                ") VALUES (" +
                                "'" + r["id_skladiste"].ToString() + "'," +
                                "'0'," +
                                "'" + r["nc"].ToString().Replace(",", ".") + "'," +
                                "'0'," +
                                "'" + r["sifra"].ToString() + "'," +
                                "'" + r["porez_potrosnja"].ToString().Replace(".", ",") + "'," +
                                "'" + r["id_grupa"].ToString() + "'," +
                                "'" + r["id_podgrupa"].ToString() + "'," +
                                "'" + r["mjera"].ToString() + "'," +
                                "'1'," +
                                "'" + r["povratna_naknada"].ToString().Replace(".", ",") + "'," +
                                "'" + r["poticajna_naknada"].ToString().Replace(".", ",") + "'," +
                                "'" + porez.ToString("#0.0").Replace(".", ",") + "'," +
                                "'" + r["izlazni_porez"].ToString().Replace(".", ",") + "'," +
                                "'" + r["naziv"].ToString() + "'," +
                                "'0','0'" +
                                ");" +
                                " COMMIT;";
                        classSQL.insert(query);

                        //**********************SQL WEB REQUEST***************************************
                        sql_za_web += "UPDATE roba_prodaja SET novo='0', editirano='0' " +
                                      " WHERE sifra='" + r["sifra"].ToString() + "'" +
                                      " AND oib='" + DTpodaci_tvrtka.Rows[0]["oib"].ToString() + "'" +
                                      " AND poslovnica='" + poslovnica + "';~";
                        //**********************SQL WEB REQUEST***************************************
                    }

                    if (sql_za_web.Length > 4)
                    {
                        sql_za_web = sql_za_web.Remove(sql_za_web.Length - 1);
                        string[] odg = Pomagala.MyWebRequest(sql_za_web + "&lozinka=sinkronizacija_za_caffeq1w2e3r4&godina=" + Util.Korisno.GodinaKojaSeKoristiUbazi, Util.Korisno.domena_za_sinkronizaciju + "include/primam_post_sql_query.php").Split(';');
                    }

                    //*********PORAVNAJ SKLADIŠTE**********
                    FunkcijeRobno.PostaviStanjeSkladista();
                }
            }
            catch
            {
            }
        }
예제 #8
0
        private void PostaviInventuru(bool pocetno)
        {
            ControlEnableDisable(false);

            if (dgw.Rows.Count > 0)
            {
                List <DataTable> Ldt = UzmiKolicineIzOveIprosleGodine();
                DataTable        DTsadasnja_godina = Ldt[0];
                DataTable        DTprosla_godina   = Ldt[1];
                DateTime         datumspremanja;

                int g = DateTime.Now.Year;
                if (Util.Korisno.GodinaKojaSeKoristiUbazi != 0)
                {
                    g = Util.Korisno.GodinaKojaSeKoristiUbazi;
                }

                DateTime.TryParse(g + "-01-01 00:00:59", out datumspremanja);

                if (pocetno)
                {
                    classSQL.update("DELETE FROM pocetno WHERE id_skladiste='" + skladiste + "'");
                }

                DataTable DTartikli        = classSQL.select("SELECT * FROM roba", "roba").Tables[0];
                DataTable DTRepromaterijal = classSQL.select("SELECT * FROM roba_prodaja", "roba_prodaja").Tables[0];

                foreach (DataGridViewRow r in dgw.Rows)
                {
                    decimal _kolicinaSadasnjaGodina = 0, _kolicinaPrijasnjaGodina = 0, ukupna_kolicina_za_spremiti = 0, inventurna_kolicina = 0, kolicina_pocetnog = 0;

                    ///
                    ///OVAJ DIO UZIMA IZ ROW-a I STAVLJA U struct "SadasnjaGodina_struct"
                    ///
                    if (DTsadasnja_godina.Rows.Count > 0)
                    {
                        DataRow[] rowSG = DTsadasnja_godina.Select("sifra='" + r.Cells["Sifra"].FormattedValue.ToString() + "'");
                        if (rowSG.Length > 0)
                        {
                            decimal.TryParse(rowSG[0]["kol"].ToString(), out _kolicinaSadasnjaGodina);
                        }
                    }

                    /*string sifra = r.Cells["sifra"].FormattedValue.ToString();
                     * if (sifra == "46")
                     * {
                     *  sifra = "46";
                     * }*/

                    ///
                    ///OVAJ DIO UZIMA IZ ROW-a I STAVLJA U struct "StaraGod_struct"
                    ///

                    if (DTprosla_godina.Rows.Count > 0)
                    {
                        DataRow[] rowPG = DTprosla_godina.Select("sifra='" + r.Cells["Sifra"].FormattedValue.ToString() + "'");
                        if (rowPG.Length > 0)
                        {
                            decimal.TryParse(rowPG[0]["kol"].ToString(), out _kolicinaPrijasnjaGodina);
                        }
                    }

                    ///
                    ///OVAJ DIO je da uzme kolicinu sa popisane inventure
                    ///
                    decimal.TryParse(r.Cells["kolicina"].FormattedValue.ToString(), out inventurna_kolicina);
                    kolicina_pocetnog           = inventurna_kolicina + _kolicinaPrijasnjaGodina;
                    ukupna_kolicina_za_spremiti = inventurna_kolicina + _kolicinaPrijasnjaGodina - _kolicinaSadasnjaGodina;

                    string sql = "";

                    if (pocetno)
                    {
                        string sifra = r.Cells["sifra"].FormattedValue.ToString();

                        DataRow[] row         = DTartikli.Select("sifra='" + sifra + "'");
                        DataRow[] rowReproMat = DTRepromaterijal.Select("sifra='" + sifra + "'");

                        decimal mpc_cijena = 0, povratna_naknada = 0, nbc = 0;

                        if (row.Length > 0)
                        {
                            decimal.TryParse(row[0]["mpc"].ToString(), out mpc_cijena);
                        }

                        if (rowReproMat.Length > 0)
                        {
                            decimal.TryParse(rowReproMat[0]["povratna_naknada"].ToString(), out povratna_naknada);
                        }

                        decimal.TryParse(r.Cells["cijena"].FormattedValue.ToString(), out nbc);

                        sql = "INSERT INTO pocetno (sifra,id_skladiste,kolicina,nc,datum,novo,povratna_naknada,prodajna_cijena) VALUES (" +
                              "'" + sifra + "'," +
                              "'" + skladiste + "'," +
                              "'" + ukupna_kolicina_za_spremiti.ToString().Replace(",", ".") + "'," +
                              "'" + nbc.ToString().Replace(",", ".") + "'," +
                              "'" + datumspremanja.ToString("yyyy-MM-dd H:mm:ss") + "'," +
                              "'1'," +
                              "'" + povratna_naknada.ToString().Replace(",", ".") + "'," +
                              "'" + mpc_cijena.ToString().Replace(",", ".") + "');";
                        classSQL.update(sql);
                    }
                }

                //Postavljam stanje skladišta prema dokumentima
                Until.FunkcijeRobno fr = new Until.FunkcijeRobno();
                fr.PostaviStanjeSkladista();

                MessageBox.Show("Stanje je uspješno postavljeno!", "Stanje", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Nije odabrana inventura.");
            }

            ControlEnableDisable(true);
        }