public bool ObradiZahtev(string PoLotuDaNe)
        {
            bool ObradiZahtev = false;
            Form forma        = new Form();

            forma = Program.Parent.ActiveMdiChild;

            if (MessageBox.Show("Zatvaramo promet za " + Program.imeFirme, "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                Godina = Prompt.ShowDialog("", "Unesite Godinu za koju vrsimo zatvaranje ", "Zatvaranje prometa");
                if (Godina == "")
                {
                    MessageBox.Show("Niste uneli godinu ponovite !!!"); return(ObradiZahtev);
                }
                datum   = "31.12." + Godina;
                datumOd = "01.01." + Godina;
                sql     = "select dokument from  DokumentaTotali where dokument ='PocetnoStanjeZaRobu' and Datum=@param0 and nazivorg like @param1";
                DataTable t = db.ParamsQueryDT(sql, datum, Program.imeFirme + "%");
                if (t.Rows.Count == 0)
                {
                    // Zatvaranje i otvaranje stanja
                    Zatvaranje(PoLotuDaNe);
                    Otvaranje(PoLotuDaNe);
                    ObradiZahtev = true;
                }
                else
                {
                    MessageBox.Show("Vec je izvrseno zatvaranje");
                    return(ObradiZahtev);
                }
            }

            return(ObradiZahtev);
        }
        //Djora 22.10.20
        //private void RealizacijaRadnogNaloga()
        //{

        //}

        //Djora 22.10.20
        //private void KreirajDokument(string datum, string brdok)
        //{
        //    //Dobiti kao parametar
        //    string datum = "22.10.20"; //Datum Radnog Naloga
        //    string brdok = "1446-456-898/20-20";  //Broj Radnog Naloga

        //    int ParRb = 0;

        //    clsObradaOsnovnihSifarnika os = new clsObradaOsnovnihSifarnika();
        //    string brojDok = os.KreirajBrDokNovi(ref ParRb, datum, 503, "UNOS");

        //    string strTabela = "Dokumenta";
        //    string strParams = "";
        //    List<string[]> lista = new List<string[]>();
        //    string dokType = "";
        //    string str = "";
        //    string rezultat = "";
        //    string Proknjizeno = "";

        //    string[] sp = brojDok.Split('-');
        //    string RedBr = sp[1];

        //    int newID = 0;

        //    DataBaseBroker db = new DataBaseBroker();

        //    clsMesecPoreza mp = new clsMesecPoreza();
        //    int mesecporeza = mp.ObradiMesecPoreza(datum);

        //    dokType = "D";
        //    strParams = "";
        //    strParams = "@param1=" + Program.idkadar.ToString() + "`";
        //    strParams += "@param2=1" + "`";
        //    strParams += "@param3=503" + "`";
        //    strParams += "@param4=" + brojDok + "`";
        //    strParams += "@param5=" + datum + "`";
        //    strParams += "@param6=" + brdok + "`";
        //    strParams += "@param7=NijeProknjizeno" + "`";
        //    strParams += "@param8=" + RedBr + "`";
        //    strParams += "@param9=1" + "`";
        //    strParams += "@param10=" + Program.idOrgDeo.ToString() + "`";
        //    strParams += "@param11=" + Program.idkadar.ToString() + "`";
        //    strParams += "@param12=" + mesecporeza + "`";

        //    str = "Insert Into Dokumenta ([ID_KadrovskaEvidencija], [ID_Predhodni], [id_dokumentaStablo], [BrojDokumenta], [datum], [opis], [Proknjizeno], [RedniBroj], [ID_LikvidacijaDokumenta], [ID_OrganizacionaStrukturaView], [uuser], [mesecporeza])";
        //    str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9,@param10,@param11,@param12)";
        //    lista.Add(new string[] { str, strParams, strTabela, dokType, "" });
        //    lista.ToArray();

        //    dokType = "D";
        //    strParams = "";
        //    str = "Execute TotaliZaDokument 'Dokumenta'," + "'tttt'";
        //    lista.Add(new string[] { str, strParams, strTabela, dokType, "" });
        //    lista.ToArray();

        //    rezultat = db.ReturnSqlTransactionParamsFull(lista);

        //    //if (rezultat != "")
        //    //    if (co.IsNumeric(rezultat.Trim()) == true)
        //    //        newID = Convert.ToInt32(rezultat);
        //    //    else
        //    //        MessageBox.Show("Greaka kod upisa Dokumenta za: " + NazivDokumenta + "!!");
        //    //return (newID);

        //}

        //22.10.20 01.07.21
        // Kopra u tabelu RadniNalogTotaliBarKod sve stavke iz RadniNalogTotali za zadati BrDok radnog naloga i to onoliko puta koliko je u
        // radnom nalogu vrednost za BrojSarzi, ako je nula onda je 1. i Ako je vrednost recimo 3, onda ce 3 puta da kopira slogove gde se u
        // svakom setu da menja vrednost za BrojSarzi, pa ce biti 1, 2, 3 u ovom slucaju.
        private void PrenosNaloga(string IDRN, string IDMP, string iDLotP)
        {
            //string IDRN = "1565444"; // Staviti kao parametar

            DataBaseBroker db  = new DataBaseBroker();
            string         sql = "DELETE FROM RadniNalogTotaliBarKod WHERE id_radninalogtotali=@param0";
            DataTable      dt  = db.ParamsQueryDT(sql, IDRN);

            sql = "DELETE FROM RadniNalogLotPolje WHERE id_radninalogtotali=@param0";
            dt  = db.ParamsQueryDT(sql, IDRN);


            sql = "SELECT BrojSarzi, BrDok FROM RadniNalogTotali WHERE id_RadniNalogTotali=@param0";
            dt  = db.ParamsQueryDT(sql, IDRN);
            Int32 brs = 0;

            if (dt.Rows.Count > 0)
            {
                string BrDok = dt.Rows[0][1].ToString();

                //Ako u Radnom nalogu pise 0 za broj sarzi
                if (Convert.ToInt32(dt.Rows[0][0].ToString()) == 0)
                {
                    brs = 1;
                }
                else
                {
                    brs = Convert.ToInt32(dt.Rows[0][0].ToString());
                }

                string sqlU;

                for (int i = 0; i < brs; i++)
                {
                    sqlU = " INSERT INTO RadniNalogTotaliBarKod (id_radninalogtotali, opisskladistau, NazivProizvoda, PlanskaCena, planskavrednost, id_skladisteiz, ID_SirovinaView, id_proizvodView, OpisSkladista, "
                           + " ID_SkladisteU, JMProizvoda, iid, StaraSifra, NazivSirovine, JMSirovine, ProsecnaNabavnaCena, KolicinaSirovine, vrednost, brdok, datum, NazivSklIz, Receptura, kolicina, Voda, BrojSarzi, "
                           + " NazivSklU, DatumSmena, SumaVrednost, SumaKolicina, DomVal, PlanskaVrednostDomVal, SumaVrednostDomVal, VrednostDomVal, IIIDDD, ID_NormativView, IzmerenaKolicina, ID_Lot, sarzabroj) "
                           + " SELECT id_radninalogtotali, opisskladistau, NazivProizvoda, PlanskaCena, planskavrednost, id_skladisteiz, ID_SirovinaView, id_proizvodView, OpisSkladista, ID_SkladisteU, JMProizvoda, "
                           + " iid, StaraSifra, NazivSirovine, JMSirovine, ProsecnaNabavnaCena, KolicinaSirovine, vrednost, brdok, datum, NazivSklIz, Receptura, kolicina, Voda, BrojSarzi, NazivSklU, DatumSmena, SumaVrednost, "
                           + " SumaKolicina, DomVal, PlanskaVrednostDomVal, SumaVrednostDomVal, VrednostDomVal, IIIDDD, ID_NormativView, 0, 0, " + (i + 1).ToString()
                           + " FROM RadniNalogTotali "
                           + " WHERE brdok = @param0";

                    DataTable dt2 = db.ParamsQueryDT(sqlU, BrDok);
                }

                //Djora 03.08.21 ovde je broj sarze zakucano 1 jer za sada ova realizacija radi samo za one koji koriste dugme MESAONA. Premiksana za sada ne radi
                string sqlP = " INSERT INTO RadniNalogLotPolje (ID_RadniNalogTotali, ID_Lot, ID_MagacinskaPolja, BrojSarze) "
                              + " VALUES(@param0, @param1, @param2, @param3)";

                DataTable dt4 = db.ParamsQueryDT(sqlP, IDRN, iDLotP, IDMP, 1);
            }
        }
        public bool Obrada()
        {
            bool Obrada = false;

            if (Program.imeFirme == "Hotel Nevski" || Program.imeFirme == "Bankom")
            {
                Firma = "Bankom";
            }
            else
            {
                Firma = Program.imeFirme;
            }

            if (MessageBox.Show("Da li zelite ponistiti postojece stavke?", "POPPdv", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                sql = "Delete from Poppdv WHERE firma=@param0 and mesec=@param1 and godina=@param2";
                ret = db.ParamsInsertScalar(sql, Firma, Mesec, Godina);

                sql = "Insert into POPPdv ( id_SemaBilansa,firma,godina,mesec,PoBroj,AOP,FORMULA,Opis,zavisnost)"
                      + " select id_DokumentaView,@param0,@param1,@param2,Konto,AOP,Formula,Opis,Zavisnost "
                      + " from kontoaopstavke where id_dokumentaView=@param3";
                DataTable dtr = db.ParamsQueryDT(sql, Firma, Godina, Mesec, IdentSeme);

                db.ExecuteStoreProcedure("PopuniRedoveSemePOPPdv", "Dokument:" + imedokumenta, "Firma:" + Firma, "Godina:" + Godina, "Mesec:" + Mesec);
            }

            return(Obrada);
        }
        public string fGodine()
        {
            string mGodine = "";

            DataBaseBroker db = new DataBaseBroker();
            DataTable      dt = new DataTable();

            string ssel = "SELECT K.Ime+' '+K.Prezime as ImeIPrezime, Godina, Flag, G.ID_KadrovskaEvidencija FROM Godine as G, KadrovskaEvidencija as K WHERE G.ID_KadrovskaEvidencija=K.ID_KadrovskaEvidencija AND G.ID_KadrovskaEvidencija=@param0";

            dt = db.ParamsQueryDT(ssel, Program.idkadar);

            if (dt.Rows.Count != 0)
            {
                string mPocetak = " WHERE (";

                foreach (DataRow row in dt.Rows)
                {
                    if (row["flag"].ToString() == "1")
                    {
                        mGodine = mGodine + "year(datum)=" + row["godina"] + " OR ";
                    }
                }

                if (mGodine != "")
                {
                    mGodine = mPocetak + mGodine;
                }

                mGodine = mGodine.Substring(1, mGodine.Length - 4) + ")";
            }
            return(mGodine);
        }
Beispiel #5
0
        public bool ProveraIspravnosti(Form forma)
        {
            bool ProveraIspravnosti = true;

            //forma = Program.Parent.ActiveMdiChild;
            Console.WriteLine(forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost);
            if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost.Contains("reval") == false &&
                forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost.Contains("ran") == false &&
                forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost.Contains("vanbil") == false &&
                forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost.Contains("88") == false &&
                forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Analitika").Vrednost.Contains("tek") == false)
            {
                string Poruka = "Pogresan izbor vrste obracuna";
                MessageBox.Show(Poruka);
                ProveraIspravnosti = false;
            }
            Console.WriteLine(forma.Controls["OOperacija"].Text);
            if (forma.Controls["OOperacija"].Text == "UNOS")
            {
                sql = "Select Id_DokumentaView from KursnerazlikeStavke where ID_DokumentaView =@param0";
                DataTable t = db.ParamsQueryDT(sql, iddokument);
                if (t.Rows.Count > 0)
                {
                    if (MessageBox.Show("Da li brisete postojece promene?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        sql = "Delete from KursnerazlikeStavke where ID_DokumentaView =@param0";
                        ret = db.ParamsInsertScalar(sql, iddokument);
                    }
                }
            }
            return(ProveraIspravnosti);
        }
        public long Pregledaj(string ffilter)
        {
            forma            = Program.Parent.ActiveMdiChild;
            BrojacDokumenata = 0;
            dokje            = forma.Controls["ldokje"].Text;
            if (dokje == "S")
            {
                imedokumenta = ((Bankom.frmChield)forma).imestabla;
            }
            else
            {
                imedokumenta = forma.Controls["limedok"].Text;
            }
            Idstablo = forma.Controls["lidstablo"].Text;

            filter = ffilter;

            sql = "SELECT UlazniIzlazni as NazivKlona from SifarnikDokumenta where Naziv=@param0";
            DataTable dt = db.ParamsQueryDT(sql, imedokumenta);

            if (dt.Rows.Count > 0)
            {
                NazivKlona = dt.Rows[0]["NazivKlona"].ToString();
            }

            UpitZaPregled = PripremaidDokumentaZaPregled();
            if (UpitZaPregled == "KRAJ")
            {
                goto PrinudniIzlaz;
            }

            if (dokje == "S" || dokje == "P")
            {
                Console.WriteLine(UpitZaPregled);
                DataTable t = db.ReturnDataTable(UpitZaPregled);
                if (t.Rows.Count == 0)
                {
                    MessageBox.Show("Ne postoje podaci za zadate uslove");
                    goto PrinudniIzlaz;
                }
                //t.rows.count>0
                Console.WriteLine(UpitZaPregled);
                cdr.refreshDokumentGrid(forma, imedokumenta, "1", UpitZaPregled, "1", dokje);  ///?????????????????
                kk = 1;
            }
            else// nisu S ili P
            {
                if (kk > 0)
                {
                    Operacija = "prvi";
                    Osvezi(Operacija, ref BrojacDokumenata);
                }
                else
                {
                    MessageBox.Show("Ne postoje podaci za zadate uslove");
                }
            }
PrinudniIzlaz:
            return(kk);
        }
Beispiel #7
0
        public bool ObradiZahtev()
        {
            bool ObradiZahtev = false;
            Form forma        = new Form();

            forma = Program.Parent.ActiveMdiChild;

            if (MessageBox.Show("Korigujemo promet za " + Program.imeFirme, "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                datumOd = Prompt.ShowDialog("", "Unesite datum korekcije: ", "Korekcija  prometa");

                if (datumOd == "")
                {
                    MessageBox.Show("Niste uneli datum ponovite !!!"); return(ObradiZahtev);
                }

                if (CheckDate(datumOd) == false)
                {
                    MessageBox.Show("Pogresan datum !!!"); return(ObradiZahtev);
                }

                NazivSkl = Prompt.ShowDialog("", "Unesite skladiste za koje vrsite korekciju ", "Korekcija  prometa");

                if (NazivSkl == "")
                {
                    ID_Skladiste = "1";
                }
                else
                {
                    sql = "select ID_Skladiste from skladiste where NazivSkl= @param0";
                    DataTable t = db.ParamsQueryDT(sql, NazivSkl);
                    if (t.Rows.Count == 0)
                    {
                        MessageBox.Show("Greska kod unosa skladista !!!");
                        ObradiZahtev = true;
                        return(ObradiZahtev);
                    }
                    else
                    {
                        ID_Skladiste = t.Rows[0]["ID_Skladiste"].ToString();
                    }
                }
                KorekcijaNaDan(datumOd, NazivSkl, ID_Skladiste);
            }
            return(ObradiZahtev);
        }
        public string DodajRestrikcije(string Dokument, string TUD)
        {
            string    res = "";
            string    ss  = "Select * from RecnikPodataka where Dokument=@param0 AND Tud=@param1 AND ltrim(rtrim(Restrikcije))<>''";
            DataTable tt  = db.ParamsQueryDT(ss, Dokument, TUD);

            for (int rr = 0; rr < tt.Rows.Count; rr++)
            {
                if (tt.Rows[rr]["Restrikcije"].ToString().ToUpper().Contains("BRDOK") == true)
                {
                }
                else
                {
                    if (string.IsNullOrEmpty(tt.Rows[rr]["Restrikcije"].ToString()))
                    {
                    }
                    else
                    if (tt.Rows[rr]["Restrikcije"].ToString().Trim() != "")
                    {
                        res += tt.Rows[rr]["Restrikcije"].ToString().Trim() + " AND ";
                    }
                }
            }
            if (res.Trim() != "")
            {
                res = res.Substring(0, res.Length - 5);
            }
            return(res);
        }
        public bool ObradiPlan()
        {
            bool ObradiPlan = false;

            Form forma = new Form();

            forma = Program.Parent.ActiveMdiChild;

            int IdDokView = Convert.ToInt32(forma.Controls["liddok"].Text);

            //Boolean vrati = new Boolean();
            //CRUD ccrud = new CRUD();
            //vrati = ccrud.DoIt(forma, Convert.ToString(((Bankom.frmChield)forma).iddokumenta), ((Bankom.frmChield)forma).imedokumenta);

            sql = "Delete from PlanProdajeStavke where ID_ArtikliView=1 and ID_DokumentaView =@param0";
            ret = db.ParamsInsertScalar(sql, IdDokView);

            if (forma.Controls["OOperacija"].Text == "UNOS")
            {
                if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "NazivKom").Vrednost.Trim() == "") //nisu popunjena polja za stavke
                {
                    sql = "Select Id_DokumentaView from PlanProdajeStavke where ID_DokumentaView =@param0";
                    dt  = db.ParamsQueryDT(sql, IdDokView);
                    if (dt.Rows.Count > 0) // postoje stavke
                    {
                        if (MessageBox.Show("Da li brisete postojece promene?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            sql = "Delete from PlanProdajeStavke where ID_DokumentaView =@param0";
                            ret = db.ParamsInsertScalar(sql, IdDokView);
                        }
                    }
                    if (((Bankom.frmChield)forma).imedokumenta == "PlanProdaje")
                    {
                        ObradiPlan = NoviPlan(IdDokView);
                    }
                    else
                    {
                        ObradiPlan = NoviMesecniPlan(IdDokView);
                    }
                }
            }



            clsAzuriranja az = new clsAzuriranja();

            az.DodatnaAzuriranja(((Bankom.frmChield)forma).imedokumenta, IdDokView.ToString());

            db.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:" + ((Bankom.frmChield)forma).imedokumenta, "IdDokument:" + IdDokView.ToString());
            ObradiPlan = true;

            return(ObradiPlan);
        }
Beispiel #10
0
        public void Klasifikacija_Click(string d, string pomIzv, string pomStablo)
        {
            if (pomIzv == "Izvestaj")
            {
                param1 = d.Substring(4);
            }
            else
            {
                param1 = d;
            }
            if (!String.IsNullOrEmpty(d.ToString()) || !String.IsNullOrWhiteSpace(d.ToString()))
            {
                int       param2 = Program.IdSelektovanogCvora;
                string    upit1  = " SELECT MAX(RedniBroj) FROM " + pomStablo;
                DataTable rez    = db.ParamsQueryDT(upit1);
                int       param3 = int.Parse(rez.Rows[0][0].ToString()) + 1;
                var       param0 = param1;
                int       param4 = 0;
                char      param6 = 'd';

                string upit = "insert into " + pomStablo + " (Naziv, NazivJavni, Vezan, RedniBroj, CCopy, Brdok, VrstaCvora) values(@param0, @param1, @param2, @param3,@param4,@param5,@param6)";

                db.ParamsInsertScalar(upit, param0, param1, param2, param3, param4, param5, param6);
                //ivana 1.4.2021.
                string upit2 = "UPDATE " + pomStablo + " SET VrstaCvora = 'f' where ID_" + pomStablo + " = @param0";
                db.ParamsInsertScalar(upit2, param2);
                //ivana 1.4.2021. mislim da je suvisno
                //clsRefreshForm frm = new clsRefreshForm();
                //frm.refreshform();
                MessageBox.Show("Uspešno dodato.");
                pokazivac = true;
            }
            else
            {
                MessageBox.Show("Morate uneti naziv novog čvora u tekstualno polje!");
            }
        }
        public void refreshDokumentBody(Form forma, string dokument, string iddok, string DokumentJe)
        {
            DataBaseBroker db = new DataBaseBroker();
            DataTable      tt = new DataTable();

            string sql = "Select Naziv,UlazniIzlazni as NazivDokumenta from SifarnikDokumenta  where naziv=@param0";

            tt = db.ParamsQueryDT(sql, dokument);
            if (tt.Rows.Count > 0)
            {
                dokument = tt.Rows[0]["NazivDokumenta"].ToString();
            }

            writeFrom(forma, dokument, iddok, DokumentJe);
            CalculatedField(forma, dokument, iddok);
        }
        //Djora 21.04.21
        public void SkorasnjiMeni(ToolStripMenuItem t)
        {
            t.DropDownItems.Clear();

            string         sql = "";
            DataBaseBroker db  = new DataBaseBroker();

            //sql = "SELECT ID, ID_KadrovskaEvidencija, Dokument FROM Skorasnje WHERE id_kadrovskaEvidencija=@param0";
            //ivana 30.11.2021.
            //sql = " SELECT DISTINCT TOP (10) derivedtbl_1.Dokument, dbo.DokumentaStablo.ID_DokumentaStablo AS ID, dbo.DokumentaStablo.Naziv "
            //    + " FROM(SELECT TOP(100) PERCENT Dokument FROM dbo.[Log] WHERE(UUser = @param0) ORDER BY ID_DokumentaView DESC) AS derivedtbl_1 "
            //    + " INNER JOIN dbo.DokumentaStablo ON derivedtbl_1.Dokument = dbo.DokumentaStablo.Naziv";
            //sql = "Select top 10 NazivJavni as Dokument, ID_DokumentaStablo as ID, Naziv from DokumentaStablo inner join (Select Dokument, TTime as t from Log where " +
            //"Uuser = @param0) as l on DokumentaStablo.Naziv = RTRIM(LTRIM(l.Dokument)) order by t desc";
            //Jovana 02.12.21
            sql = "; WITH Skorasnji AS(SELECT   NazivJavni as Dokument, ID_DokumentaStablo as ID, Naziv, l.t, ROW_NUMBER() OVER(PARTITION BY  NazivJavni ORDER BY  l.t DESC) AS" +
                  " 'RowNumber' FROM  DokumentaStablo inner join(Select Dokument, TTime as t from Log where Uuser = @param0) as l on DokumentaStablo.Naziv = RTRIM(LTRIM(l.Dokument)))" +
                  " SELECT top 10 Dokument,id,naziv,t FROM Skorasnji WHERE RowNumber = 1 order by t desc";
            DataTable dt = db.ParamsQueryDT(sql, Program.idkadar.ToString());

            if (dt.Rows.Count > 0)
            {
                //ToolStripMenuItem tsParent = (ToolStripMenuItem)sender;

                foreach (DataRow row in dt.Rows)
                {
                    ToolStripMenuItem newChild;

                    newChild      = new ToolStripMenuItem();
                    newChild.Text = row["Dokument"].ToString();
                    newChild.Tag  = row["ID"].ToString();
                    //ivana 29.11.2021.
                    newChild.Name   = row["Naziv"].ToString();
                    newChild.Click += new EventHandler(subMenuSkorasnje_Click);
                    //ivana 2.12.2021.
                    newChild.TextAlign = ContentAlignment.TopLeft;
                    newChild.Height    = 70;
                    newChild.BackColor = Color.Snow;
                    newChild.Font      = new Font("TimesRoman", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
                    newChild.ForeColor = Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(107)))), ((int)(((byte)(167)))));
                    t.DropDownItems.Add(newChild);
                }
            }
        }
        public bool DovrsiObradu(Form forma)
        {
            bool DovrsiObradu = false;

            if (forma.Controls["OOperacija"].Text == "UNOS")
            {
                sql = "Select ID_KamataStavke from KamataStavke where ID_DokumentaView =@param0";
                DataTable t = db.ParamsQueryDT(sql, iddokument);
                br = t.Rows.Count;
                if (t.Rows.Count > 1)
                {
                    if (MessageBox.Show("Da li brišete postojeće promene?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        if (PopuniPromene(forma) == true)
                        {
                            sql = "Delete from KamataStavke where ID_DokumentaView = @param0 and ID_KamataStavke <> (select max(ID_KamataStavke) from KamataStavke where ID_DokumentaView = @param1)";
                            ret = db.ParamsInsertScalar(sql, iddokument, iddokument);
                            br  = 1;
                        }
                    }
                    else if (PopuniPromene(forma) == false)
                    {
                        return(DovrsiObradu);
                    }
                }
                else
                {
                    IDKamataStavkeView = Convert.ToInt32(t.Rows[0][0]);
                    if (PopuniPromene(forma) == false)
                    {
                        return(DovrsiObradu);
                    }
                }
            }
            if (forma.Controls["OOperacija"].Text == "IZMENA")
            {
                if (SloziPromene(forma) == false)
                {
                    return(DovrsiObradu);
                }
                ObracunajKamatu(forma);
            }
            db.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:" + ((Bankom.frmChield)forma).imedokumenta, "IdDokument:" + ((Bankom.frmChield)forma).iddokumenta);
            DovrsiObradu = true;
            return(DovrsiObradu);
        }
        //Djora 21.04.21
        public void NajcesceKorisceniMeni(ToolStripMenuItem t)
        {
            //t.DropDownItems.Add("xxxx");

            //t.DropDownItems.Clear();

            string sql = "";

            DataBaseBroker db = new DataBaseBroker();

            //sql = "SELECT ID, ID_KadrovskaEvidencija, Dokument FROM Skorasnje WHERE id_kadrovskaEvidencija=@param0";

            //sql = " SELECT TOP (10) derivedtbl_1.Dokument, dbo.DokumentaStablo.ID_DokumentaStablo AS ID "
            //    + " FROM(SELECT TOP(100) PERCENT COUNT(Dokument) AS komada, RTRIM(LTRIM(Dokument)) AS Dokument FROM dbo.[Log] WHERE(UUser = @param0) GROUP BY Dokument ORDER BY komada DESC) AS derivedtbl_1 "
            //    + " INNER JOIN dbo.DokumentaStablo ON derivedtbl_1.Dokument = dbo.DokumentaStablo.Naziv";
            //steva i ivana 29.11.2021.
            sql = "Select top 10 NazivJavni as Dokument, ID_DokumentaStablo as ID, Naziv from DokumentaStablo inner join (Select Dokument, COUNT(Dokument) as br from Log where Uuser = @param0" +
                  " group by Dokument) as l on DokumentaStablo.Naziv = RTRIM(LTRIM(l.Dokument)) order by br desc";
            DataTable dt = db.ParamsQueryDT(sql, Program.idkadar.ToString());

            if (dt.Rows.Count > 0)
            {
                //ToolStripMenuItem tsParent = (ToolStripMenuItem)sender;

                foreach (DataRow row in dt.Rows)
                {
                    ToolStripMenuItem newChild;

                    newChild      = new ToolStripMenuItem();
                    newChild.Text = row["Dokument"].ToString();
                    newChild.Tag  = row["ID"].ToString();
                    //ivana 29.11.2021.
                    newChild.Name   = row["Naziv"].ToString();
                    newChild.Click += new EventHandler(subMenuSkorasnje_Click);
                    //ivana 2.12.2021.
                    newChild.Height    = 70;
                    newChild.BackColor = Color.Snow;
                    newChild.Font      = new Font("TimesRoman", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
                    newChild.ForeColor = Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(107)))), ((int)(((byte)(167)))));
                    t.DropDownItems.Add(newChild);
                }
            }
        }
        public void MenuItemClickHandler(object sender, EventArgs e)
        {
            clsProveraDozvola proDoz = new clsProveraDozvola();
            string            s      = GetMenuNaziv(((ToolStripMenuItem)sender).Text);
            //zajedno 14.1.2021.
            //Program.AktivnaSifraIzvestaja = s;
            char slovo = UzmiSlovo(s);

            Program.KlasifikacijaSlovo = "";
            switch (s)
            {
            //tamara 28.4.2021.
            case "cmdMagacin":
                System.Diagnostics.Process.Start("http:\\192.168.1.71\\magacin");
                break;

            case "OrganizacionaSema":
                System.Diagnostics.Process.Start("http://192.168.1.4:8080/");
                break;

            case "Imenik":
                proDoz.ToolBarItemsEnDis();
                Form   f    = Application.OpenForms["Imenik"];
                Imenik frmi = new Imenik();
                if (f == null)
                {
                    //ivana 2.3.2021.
                    //if (Program.brtabova < 10 && Program.Parent.tabovi < Program.Parent.toolStrip1.Width - 50)
                    //{

                    frmi.FormBorderStyle = FormBorderStyle.None;
                    frmi.Name            = "Imenik";
                    frmi.MdiParent       = Program.Parent;
                    frmi.Dock            = DockStyle.Fill;

                    Program.Parent.addFormTotoolstrip1(frmi, "Imenik");
                    Program.Parent.updateToolStrip("Imenik");
                    frmi.StartPosition = FormStartPosition.CenterScreen;
                    frmi.Show();
                    //ivana 15.11.2021.
                    //proDoz.ProveriDozvole("", "", "", "");
                    Program.Parent.itemn_click(sender, e);
                    //}
                    //else
                    //MessageBox.Show("Imate dosta otvorenih formi, zatvorite neku od njih.");
                }
                //ivana 22.2.2021.
                else
                {
                    Program.Parent.itemn_click(sender, e);
                    f.Focus();
                }
                break;

            case "Dokumenta":
            case "Izvestaj":
            case "OsnovniSifarnici":
            case "PomocniSifarnici":
            case "Artikli":
            case "Komitenti":
            case "OrganizacionaStruktura":
                Program.Parent.ToolBar.Items["Uunos"].Visible = true;
                Program.Parent.ToolBar.Items["Uunos"].Enabled = true;
                clsObradaOsnovnihSifarnika co0 = new clsObradaOsnovnihSifarnika();
                mdi.ShowNewForm(s, 1, s, 1, "", "", slovo.ToString(), "", "TreeView");
                break;

            //28.10.2020. Ivana
            case "KlasifikacijaOrgStrukture":
            case "KlasifikacijaArtikla":
            case "KlasifikacijaKomitenata":
            case "KlasifikacijaDokumenata":
            case "KlasifikacijaIzvestaja":
            case "KlasifikacijaMenija":
            case "KlasifikacijaPomocnihSifarnika":
                Program.Parent.ToolBar.Items["Uunos"].Visible = true;
                Program.Parent.ToolBar.Items["Uunos"].Enabled = true;
                Program.KlasifikacijaSlovo = "K";
                mdi.ShowNewForm(SkiniKlasifikaciju(s), 1, SkiniKlasifikaciju(s), 1, "", "", slovo.ToString(), "", "TreeView");
                break;

            case "KadroviIOrganizacionaStruktura":                                                       //"DodeljivanjeUlogeKorisniku":
                mdi.ShowNewForm("", 1, "KadroviIOrganizacionaStruktura", 1, "", "", "P", "", "");
                break;

            case "Dozvole":
                mdi.ShowNewForm("", 1, "Dozvole", 1, "", "", "P", "", "");
                break;

            case "PreuzimanjeKursneListe":
                //tamara 21.6.21.
                PreuzimanjeKursneListe kl = new PreuzimanjeKursneListe();
                kl.Name = "PreuzimanjeKursneListe";
                kl.Text = "PreuzimanjeKursneListe";
                //ivana 19.3.2021.
                if (!mdi.DalijevecOtvoren("", "", "PreuzimanjeKursneListe"))
                {
                    kl.FormBorderStyle = FormBorderStyle.None;
                    kl.MdiParent       = mdi;
                    kl.Dock            = DockStyle.Fill;
                    kl.AutoScroll      = true;
                    if (mdi.IzborJezika.Text == "Српски-Ћирилица")
                    {
                        kl.Text = mdi.VratiCirlilicu("PreuzimanjeKursneListe");
                    }
                    int sirina1 = (mdi.Width / 100) * 10;
                    mdi.addFormTotoolstrip1(kl, "PreuzimanjeKursneListe");
                    mdi.SrediFormu();
                    kl.Show();
                    //ivana 25.3.2021.
                    mdi.itemn_click("PreuzimanjeKursneListe", e);
                }
                break;

            case "Prenosi":
                Form activeChild = mdi.ActiveMdiChild;
                activeChild.FormBorderStyle = FormBorderStyle.None;
                if (activeChild != null)
                {
                    activeChild.Hide();
                }
                break;

            case "PlacanjeRateKredita":
                if (!mdi.DalijevecOtvoren("", "", "PlacanjeRateKredita"))
                {
                    Preuzimanja.PreuzimanjeRateKredita();                             //"PreuzimanjeRateKredita"
                }
                break;

            case "PreuzimanjeManjkovaIViskova":
                if (!mdi.DalijevecOtvoren("", "", "PreuzimanjeManjkovaIViskova"))
                {
                    Preuzimanja.PreuzimanjeManjkovaIViskova();                        //"PreuzimanjeManjkovaIViskova"
                }
                break;

            case "PreuzimanjeUplata":
                if (!mdi.DalijevecOtvoren("", "", "PreuzimanjeUplata"))
                {
                    Preuzimanja.PreuzimanjeUplataKupacaIzBanaka();
                }
                break;

            case "PrenosNalogaZaPlacanje":
                if (!mdi.DalijevecOtvoren("", "", "PrenosNalogaZaPlacanje"))          //"PrenosNalogaNaPlacanje"
                {
                    clsPreuzimanja cp          = new clsPreuzimanja();                //BORKA je zakomentarisala ovo
                    string         DatOd       = (DateTime.Now.ToString("dd.MM.yy")); ///, "dd/MM/yyyy", null);// , CultureInfo.InvariantCulture);
                    string         TekuciRacun = "";
                    TekuciRacun = Prompt.ShowDialog("", "Prepisivanje naloga iz pripreme za plaćanje.", "Unesite tekući račun za koji prenosimo naloge");
                    if (TekuciRacun == "")
                    {
                        return;
                    }
                    string vrati = cp.PrepisiNaloge(DatOd, TekuciRacun);     //BORKA je zakomentarisala ovo
                    MessageBox.Show("Završeno!");
                }
                break;

            case "PreuzimanjeIzvodaIzBanaka":
                if (!mdi.DalijevecOtvoren("", "", "PreuzimanjeIzvodaIzBanaka"))
                {
                    clsPreuzimanja cp = new clsPreuzimanja();
                    string         strPreuzimanjePlacanja = cp.preuzimanjeIzvodaizBanaka();
                    if (strPreuzimanjePlacanja == "")
                    {
                        return;
                    }
                    char[]   separators = { '#' };
                    frmIzvod childForm  = new frmIzvod();

                    childForm.strPutanjaPlacanja = strPreuzimanjePlacanja.Split(separators)[0];
                    childForm.mesecgodina        = strPreuzimanjePlacanja.Split(separators)[1];
                    childForm.IdDokView          = Convert.ToInt32(strPreuzimanjePlacanja.Split(separators)[2]);
                    childForm.KojiPrepis         = strPreuzimanjePlacanja.Split(separators)[3];
                    childForm.Show();
                }
                break;

            case "PrepisPlacanjaIUplataUIzvod":        /// stari je bio ovaj naziv -> "PrepisNaplataIPlacanjaUIzvod" Ivana
                if (!mdi.DalijevecOtvoren("", "", "PrepisPlacanjaIUplataUIzvod"))
                {
                    clsOperacije   co          = new clsOperacije();
                    clsPreuzimanja cp1         = new clsPreuzimanja();
                    DataBaseBroker db          = new DataBaseBroker();
                    string         DatOd1      = "";
                    string         TekuciRacun = "";
                    DataTable      rsp         = new DataTable();
                    //Jovana 21.06.21

                    DatOd1 = Prompt.ShowDialog(DateTime.Now.ToString("dd.MM.yy"), "Prepisivanje izvoda iz Plaćanja i naplata", "Unesite datum za koji prepisujemo izvod");
                    if (DatOd1 == "")
                    {
                        return;
                    }
                    //Jovana 21.06.21
                    if (co.IsDateTime(DatOd1) == false)
                    {
                        MessageBox.Show("Pogrešno unet datum!"); return;
                    }
                    ;
                    //Jovana 21.06.21
                    TekuciRacun = Prompt.ShowDialog("", "Prepisivanje izvoda iz Plaćanja i naplata", "Unesite tekući račun za koji prepisujete promet ");
                    if (TekuciRacun == "")
                    {
                        return;
                    }
                    rsp = db.ReturnDataTable("if not exists (select datum from  IzvodTotali  where Datum='" + DatOd1 + "' And Blagajna='" + TekuciRacun.ToString() + "') select 0 else select 1 ");
                    if (rsp.Rows.Count == 0)
                    {
                        MessageBox.Show("Ne postoje podaci za datum i tekući račun!"); return;
                    }

                    if (Convert.ToInt16(rsp.Rows[0][0]) == 1)
                    {
                        MessageBox.Show("Već je izvršen prepis izvoda za datum " + DatOd1);
                    }
                    else
                    {
                        cp1.izborPReuzimanja(1, DatOd1 + "#" + TekuciRacun);
                    }
                    MessageBox.Show("Završeno!");
                }
                break;

            case "FormiranjePPPPDzaPlate":
                if (!mdi.DalijevecOtvoren("", "", "FormiranjePPPPDzaPlate"))
                {
                    DateTime d      = DateTime.Now;
                    string   pDatum = d.ToString("dd.MM.yy");
                    string   mg     = Prompt.ShowDialog(pDatum.Substring(3, 2) + pDatum.Substring(6, 2), "Formiranje PPPPD za plate", "Unesite mesec i godinu za koji formiramo PPPPD za plate");
                    if (string.IsNullOrEmpty(mg))
                    {
                        return;
                    }
                    clsOperacije co2 = new clsOperacije();
                    bool         r   = co2.IsNumeric(mg);
                    if (r == false)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    if (mg.Length != 4)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    string svrsta = Prompt.ShowDialog("", "Formiranje PPPPD za plate", "Unesite vrstu obracuna: A za akontaciju ili K za platu");
                    svrsta = svrsta.ToUpper();
                    if (svrsta != "a".ToUpper() && svrsta != "K".ToUpper())
                    {
                        MessageBox.Show("Pogrešno uneta vrsta obračuna! Dozvoljen je samo unos A ili K.");
                        return;
                    }
                    clsXmlPlacanja cxml = new clsXmlPlacanja();
                    cxml.izborPlacanja(2, mg + svrsta, "");
                    //Djora 10.10.21
                    //mdi.LayoutMdi(MdiLayout.TileVertical);
                }
                break;

            //ivana 7.5.2021.
            case "FormiranjePPPPDzaDobit":
                if (!mdi.DalijevecOtvoren("", "", "FormiranjePPPPDzaDobit"))
                {
                    string mg = Prompt.ShowDialog("", "Formiranje PPPPD za dobit", "Unesite broj naloga");
                    if (string.IsNullOrEmpty(mg))
                    {
                        MessageBox.Show("Niste uneli broj naloga.");
                        return;
                    }
                    string    upit = "Select * from DokumentaTotali where BrDok = @param0";
                    DataTable dt   = db.ParamsQueryDT(upit, mg);
                    if (dt.Columns.Count == 0)
                    {
                        MessageBox.Show("Neispravan broj naloga.");
                        return;
                    }
                    else
                    {
                        upit = "Select * from FinansijskiInterniNalogTotali where BrDok = @param0";
                        dt   = db.ParamsQueryDT(upit, mg);
                        if (dt.Rows.Count == 0)
                        {
                            MessageBox.Show("Morate prvo popuniti izabrani nalog.");
                            return;
                        }
                        else
                        {
                            brojNaloga = mg;
                            clsXmlPlacanja cxml = new clsXmlPlacanja();
                            cxml.izborPlacanja(5, dt.Rows[0]["Datum"].ToString(), brojNaloga);
                        }
                    }
                    //Djora 10.10.21
                    //mdi.LayoutMdi(MdiLayout.TileVertical);
                }
                break;

            case "PreuzimanjePlata":                                   //"UvozPlataUPlacanje"
                if (!mdi.DalijevecOtvoren("", "", "PreuzimanjePlata"))
                {
                    clsXmlPlacanja cls = new clsXmlPlacanja();
                    cls.izborPlacanja(3, "", "");
                }
                break;

            case "Prevoz":
                if (!mdi.DalijevecOtvoren("", "", "Prevoz"))
                {
                    DateTime d1      = DateTime.Now;
                    string   pDatum1 = d1.ToString("dd.MM.yy");
                    string   mg1     = Prompt.ShowDialog(pDatum1.Substring(3, 2) + pDatum1.Substring(6, 2), "Formiranje naloga za knjiženje prevoza", "Unesite mesec i godinu za koji isplaćujemo prevoz");
                    if (string.IsNullOrEmpty(mg1))
                    {
                        return;
                    }
                    clsOperacije co1 = new clsOperacije();
                    bool         r1  = co1.IsNumeric(mg1);
                    if (r1 == false)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    if (mg1.Length != 4)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    clsXmlPlacanja cxml1 = new clsXmlPlacanja();
                    cxml1.izborPlacanja(0, mg1, "");
                    //Djora 10.10.21
                    //mdi.LayoutMdi(MdiLayout.TileVertical);
                }
                break;

            case "Nagrade":
                if (!mdi.DalijevecOtvoren("", "", "Nagrade"))
                {
                    DateTime d2      = DateTime.Now;
                    string   pDatum2 = d2.ToString("dd.MM.yy");

                    string mg2 = Prompt.ShowDialog(pDatum2.Substring(3, 2) + pDatum2.Substring(6, 2), "Formiranje naloga za knjiženje nagrada", "Unesite mesec i godinu za koji isplaćujemo nagrade");
                    if (string.IsNullOrEmpty(mg2))
                    {
                        return;
                    }
                    clsOperacije co3 = new clsOperacije();
                    bool         r2  = co3.IsNumeric(mg2);
                    if (r2 == false)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    if (mg2.Length != 4)
                    {
                        MessageBox.Show("Nekorektan unos."); return;
                    }
                    clsXmlPlacanja cxml2 = new clsXmlPlacanja();
                    cxml2.izborPlacanja(1, mg2, "");
                    //Djora 10.10.21
                    //mdi.LayoutMdi(MdiLayout.TileVertical);
                }
                break;

            case "UvozPrevozaUPlacanje":
                if (!mdi.DalijevecOtvoren("", "", "UvozPrevozaUPlacanje"))
                {
                    clsXmlPlacanja cls2 = new clsXmlPlacanja();
                    cls2.izborPlacanja(4, "", "");
                }
                break;

            case "PrenosiZaProdajnaMesta":
            case "PreuzimanjePrometaRecepcije":
            case "PreuzimanjePrometaMaloprodaje":
                //zajedno 10.5.2021.
                Prenosi v = new Prenosi();
                //ivana 14.9.2021. gde god je bilo PreuzimanjePrometa, zamenila sam sa PrenosiZaProdajnaMesta, da bi se prikazao NazivJavni
                if (!mdi.DalijevecOtvoren("", "", "PrenosiZaProdajnaMesta"))
                {
                    v.MdiParent       = mdi;
                    v.FormBorderStyle = FormBorderStyle.None;

                    v.Name = "PrenosiZaProdajnaMesta";
                    v.Dock = DockStyle.Fill;
                    Program.Parent.addFormTotoolstrip1(v, "PrenosiZaProdajnaMesta");
                    v.Show();


                    Program.Parent.itemn_click("Prenosi za prodajna mesta", e);
                    if ("PreuzimanjePrometaMaloprodaje" == s)
                    {
                        v.radioButton3.Checked = true;
                    }
                    else
                    {
                        v.radioButton2.Checked = true;
                    }
                }
                else
                {
                    Program.Parent.ActiveMdiChild.WindowState = FormWindowState.Normal;
                }
                break;

            case "FaktureRecepcijeZaOdabraneDatume":
                if (!mdi.DalijevecOtvoren("", "", "FaktureRecepcijeZaOdabraneDatume"))
                {
                    Preuzimanja.FaktureRecepcijeZaOdabraneDatume();
                }
                break;

            case "FaktureRestoranaZaOdabraneDatume":
                if (!mdi.DalijevecOtvoren("", "", "FaktureRestoranaZaOdabraneDatume"))
                {
                    Preuzimanja.FaktureRestoranaZaOdabraneDatume();
                }
                break;

            case "RazduzenjeSirovinaMinibar":
                if (!mdi.DalijevecOtvoren("", "", "RazduzenjeSirovinaMinibar"))
                {
                    Preuzimanja.RazduzenjeSirovinaMiniBar();
                }
                break;

            case "RazduzenjeSirovinaZaOdabraneDatume":
                if (!mdi.DalijevecOtvoren("", "", "RazduzenjeSirovinaZaOdabraneDatume"))
                {
                    Preuzimanja.RazduzenjeSirovinaZaOdabraniIntervalDatuma();
                }
                break;

            case "KursnaListaZaCeluGodinu":
                if (!mdi.DalijevecOtvoren("", "", "KursnaListaZaCeluGodinu"))
                {
                    string         GodinaKursa       = "";
                    string         PocetniDatumKursa = "";
                    int            KojiIDDokstablo   = 1;
                    string         sql              = "";
                    long           granica          = 0;
                    int            ret              = 1;
                    string         ID_DokumentaView = "1";
                    DateTime       DatumKursa;
                    DataBaseBroker db2 = new DataBaseBroker();

                    if (MessageBox.Show("Upisujemo kursnu listu za " + (System.DateTime.Now).Year.ToString(), "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        GodinaKursa       = Prompt.ShowDialog("", "Unesite godinu za kursnu listu ", "Kursna lista");
                        PocetniDatumKursa = "01.01." + GodinaKursa.Trim();
                        sql = "select ID_DokumentaTotali from  DokumentaTotali where dokument ='KursnaLista' and Datum>@param0";
                        DataTable t = db2.ParamsQueryDT(sql, PocetniDatumKursa);

                        if (t.Rows.Count == 0)
                        {
                            sql = "select ID_DokumentaStablo from DokumentaStablo where Naziv='KursnaLista'";
                            DataTable dt = db2.ParamsQueryDT(sql);
                            if (dt.Rows.Count == 0)
                            {
                                MessageBox.Show("Nije definisana kursna lista!");
                            }
                            else
                            {
                                KojiIDDokstablo = Convert.ToInt32(dt.Rows[0]["ID_DokumentaStablo"]);

                                clsOperacije cOp = new clsOperacije();
                                if (cOp.Prestupna(Convert.ToInt32(GodinaKursa)) == true)
                                {
                                    granica = 366;
                                }
                                else
                                {
                                    granica = 365;
                                }

                                int i = 1;

                                for (; i <= granica; i++)
                                {
                                    DatumKursa = Convert.ToDateTime(PocetniDatumKursa).AddDays(i);

                                    clsObradaOsnovnihSifarnika cls3 = new clsObradaOsnovnihSifarnika();
                                    string ParRb = "";

                                    ret = cls3.UpisiDokument(ref ParRb, "Kursna lista " + DatumKursa.Date, KojiIDDokstablo, DatumKursa.ToString());

                                    if (ret == -1)
                                    {
                                        MessageBox.Show("Greška prilikom inserta!");
                                        return;
                                    }
                                    ID_DokumentaView = ret.ToString();

                                    //stavka za domacu valutu
                                    sql = " Insert into KursnaLista(ID_SifrarnikValuta,ID_Zemlja,ID_DokumentaView,datum,paritet,"
                                          + " Kupovni,Srednji,Prodajni,Dogovorni,verzija,KupovniZaDevize,ProdajniZaDevize,OznVal,UUser,TTIME )"
                                          + " Values(@param0,@param1,@param2,@param3,@param4, "
                                          + " @param5,@param6,@param7,@param8,@param9,@param10,@param11,@param12,@param13,@param14)";

                                    DataTable dkl = db2.ParamsQueryDT(sql, 1, Program.ID_MojaZemlja, ID_DokumentaView, DatumKursa.ToString(), 001,
                                                                      1, 1, 1, 1, "", 1, 1, Program.DomacaValuta, Program.idkadar.ToString(), (System.DateTime.Now).ToString());

                                    // Druga stavka za eur ako je zemlja bosna

                                    if (Program.ID_MojaZemlja == 38)
                                    {
                                        sql = " Insert into KursnaLista(ID_SifrarnikValuta,ID_Zemlja,ID_DokumentaView,datum,paritet,"
                                              + " Kupovni,Srednji,Prodajni,Dogovorni,verzija,KupovniZaDevize,ProdajniZaDevize,OznVal,UUser,TTIME )"
                                              + " Values(@param0,@param1,@param2,@param3,@param4, "
                                              + " @param5,@param6,@param7,@param8,@param9,@param10,@param11,@param12,@param13,@param14)";

                                        DataTable dkb = db2.ParamsQueryDT(sql, 1, Program.ID_MojaZemlja, ID_DokumentaView, DatumKursa.ToString(), 001,
                                                                          1.95583, 1.95583, 1.95583, 1.95583, "", 1.95583, 1.95583, "EUR", Program.idkadar.ToString(), (System.DateTime.Now).ToString());
                                    }
                                    db2.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:Dokumenta", "IdDokument:" + ID_DokumentaView);
                                    db2.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:KursnaLista", "IdDokument:" + ID_DokumentaView);
                                }
                                MessageBox.Show("Završeno!");
                            }
                        }
                        else
                        {
                            MessageBox.Show("Već je uneta kursna lista za datume tekuće godine!");
                        }
                    }
                }
                break;

            case "PopunjavanjeTabeleDatuma":
                if (!mdi.DalijevecOtvoren("", "", "PopunjavanjeTabeleDatuma"))
                {
                    string         GodinaDatuma = "";
                    string         sql3         = "";
                    DataBaseBroker db3          = new DataBaseBroker();

                    if (MessageBox.Show("Upisujemo tabelu datuma za " + (System.DateTime.Now).Year.ToString(), "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        GodinaDatuma = Prompt.ShowDialog("", "Unesite Godinu za tabelu datuma ", "Tabela datuma");
                        if (GodinaDatuma == "")
                        {
                            MessageBox.Show("Niste uneli godinu!"); return;
                        }

                        if (GodinaDatuma != (System.DateTime.Now).Year.ToString() && GodinaDatuma != (System.DateTime.Now).AddYears(+1).Year.ToString())
                        {
                            MessageBox.Show("Pogrešno uneta godina!");
                            return;
                        }
                        else
                        {
                            sql3 = "select time_id from  Time_by_Day where the_year =@param0 ";
                            DataTable t = db3.ParamsQueryDT(sql3, GodinaDatuma);
                            if (t.Rows.Count == 0)
                            {
                                db3.ExecuteStoreProcedure("PopuniTimeByDay", "Godina:" + GodinaDatuma);
                                MessageBox.Show("Završeno!");
                            }
                            else
                            {
                                MessageBox.Show("Već je uneta godina!");
                            }
                        }
                    }
                }
                break;

            //Jovana 02.06.21
            case "ProcesiranjeDnevnogIzvestaja":
                if (MessageBox.Show("Procesiramo dnevni izvestaj za " + Program.imeFirme + " ?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    db.RunAJob("dnevni" + Program.imeFirme);
                }
                break;

            case "ProcesiranjeBrutoBilansa":
                if (MessageBox.Show("Procesiramo bruto bilans za " + Program.imeFirme + " ?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    db.RunAJob("BrutoBilansZa" + Program.imeFirme);
                }
                break;

            case "SpisakDokumenata":
                mdi.ShowNewForm(" ", 1, "SpisakDokumenata", 1, "", "", "I", "", "");     //SpisakDokumenata
                break;

            case "ZatvaranjeStanjaPoLotu":
                if (!mdi.DalijevecOtvoren("", "", "ZatvaranjeStanjaPoLotu"))
                {
                    clsZatvaranjeIOtvaranjeStanja c = new clsZatvaranjeIOtvaranjeStanja();
                    bool pom = c.ObradiZahtev("DA");
                    if (pom)
                    {
                        MessageBox.Show("Uspešno završeno!");
                    }
                    else
                    {
                        MessageBox.Show("Nije uspelo zatvaranje stanja po lot-u!");
                    }
                }
                break;

            case "PocetakGodine":
                if (!mdi.DalijevecOtvoren("", "", "PocetakGodine"))
                {
                    clsZatvaranjeIOtvaranjeStanja c1 = new clsZatvaranjeIOtvaranjeStanja();
                    bool pom = c1.ObradiZahtev("NE");
                    if (pom)
                    {
                        MessageBox.Show("Uspešno završeno!");
                    }
                    else
                    {
                        MessageBox.Show("Neuspešno!");
                    }
                }
                break;

            //Djora 21.04.21
            case "Najcesci":
                break;

            case "UsaglasavanjeRobeIFinansija":
                if (!mdi.DalijevecOtvoren("", "", "UsaglasavanjeRobeIFinansija"))
                {
                    clsKorekcija k   = new clsKorekcija();
                    bool         pom = k.ObradiZahtev();
                    if (pom)
                    {
                        MessageBox.Show("Uspešno završeno!");
                    }
                    else
                    {
                        MessageBox.Show("Nije uspelo usaglašavanje robe i finansija!");
                    }
                }
                break;
                //case "Dozvole":
                //    ShowNewForm(" ", 1, "Dozvole", 1, "", "", "P", "", "");
                //    break;
                //default:
                //    break;
            }
        }
        public void ObradiNalogAutomatski()
        {
            // UPISIVANJE NALOGA GLAVNE KNJGE U DOKUMENTA
            Form forma = new Form();

            forma       = Program.Parent.ActiveMdiChild;
            BrDokZaKnj  = forma.Controls["lBrDok"].Text.ToString();
            idDokStablo = Convert.ToInt32(forma.Controls["lidstablo"].Text);

            //Jovana 30.06.21
            // Ne moze knjiziti autor dokumenta
            sql = "select uuser from dokumenta where BrojDokumenta =@param0";
            DataTable t = db.ParamsQueryDT(sql, BrDokZaKnj);

            if (t.Rows.Count > 0)
            {
                if (Convert.ToInt32(t.Rows[0]["uuser"]) == Program.idkadar)
                {
                    MessageBox.Show("Knjizenje ne moze vrsiti autor !");
                    return;
                }
            }

            //ODREDJIVANJE Id DOKUMENTA ZA KNJIZENJE i ID_DokumenStablo
            string IdDokZaKnj = forma.Controls["liddok"].Text.ToString();  /////ef.DajVrednostPropertija(forma, "iddokumenta");

            //long IdStabloZaKnjizenje = Convert.ToInt64(ef.DajVrednostPropertija(activeChild, "IDDokStablo"));
            // Jovana 05.10.21 promenila upite na parametarske
            sql = "select id_dokumentaTotali,dokument,ID_DokumentaStablo,Rb,datum from dokumentaTotali WITH(NOLOCK) where id_dokumentaTotali =@param0";
            t   = db.ParamsQueryDT(sql, IdDokZaKnj);
            if (t.Rows.Count == 0)
            {
                return;
            }

            IdStabloZaKnjizenje = Convert.ToInt32(t.Rows[0]["ID_DokumentaStablo"]);
            RedniBrZaKnjizenje  = Convert.ToInt64(t.Rows[0]["RB"]);

            opis = IdStabloZaKnjizenje.ToString() + "-" + RedniBrZaKnjizenje.ToString();

            IdStabloZaKnjizenje = 29;
            NazivDokumenta      = forma.Controls["limedok"].Text; // t.Rows[0]["Dokument"].ToString();
            //strParams =  "@param1='" +NazivDokumenta  + "`";
            sql = "SELECT UlazniIzlazni as NazivKlona from SifarnikDokumenta where Naziv=@param0";

            t = db.ParamsQueryDT(sql, NazivDokumenta);

            NazivKlona = t.Rows[0]["NazivKlona"].ToString();
            dtm        = DateTime.Today; // danasnji dan

            string Datum = forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Datum").Vrednost;

            //datum naloga da je datum dokumenta! ISKORISTITI PODATAK Program.datumk
            if (dtm < Convert.ToDateTime("01.03." + dtm.Year.ToString().Substring(2)) & dtm.Year != Convert.ToDateTime(Datum).Year)
            {
                dtm = Convert.ToDateTime(Datum);
            }

            //PROVERA DA LI JE VEC PROKNJIZEN NEKIM DRUGIM NALOGOM
            sql = " select ID_DokumentaView,ID_OpisTransakcijeView,BrojDokumenta "
                  + " from NalogGlavneKnjigeStavke WITH(NOLOCK),Dokumenta WITH(NOLOCK) "
                  + " where ID_Dokumenta= ID_DokumentaView and ID_DokumentZaKnj = @param0";
            t = db.ParamsQueryDT(sql, IdDokZaKnj);
            if (t.Rows.Count > 0)
            {
                MessageBox.Show("Dokument je vec proknjizen nalogom -> " + t.Rows[0]["BrojDokumenta"]);
                return;
            }
            //PROVERA ZA IZVOD DA LI SE SLAZU UNESENI I DNEVNI PROMET
            if (NazivDokumenta == "Izvod")
            {
                sql = "Select Distinct SumaIsplate,DPDuguje,SumaUplate,DPPotrazuje from IzvodTotali WHERE ID_IzvodTotali=@param0";
                t   = db.ParamsQueryDT(sql, IdDokZaKnj);

                if (t.Rows[0]["SumaIsplate"] != t.Rows[0]["DPDuguje"] || t.Rows[0]["SumaUplate"] != t.Rows[0]["DPPotrazuje"])
                {
                    MessageBox.Show("Ne slazu se dnevni i uneseni promet Izvod se ne moze knjiziti ISPAVITE!!!! ");
                    return;
                }
            }
            //PROVERA ZA NALOGZADORADU DA LI SE SLAZU KOLICINA ZA PAKOVANJE SA ZAPAKOVANIM KOLICINAMA
            if (NazivDokumenta == "LotNalogZaDoradu")
            {
                sql = " Select Distinct SumaKolicina as sk,SumaKolicinaSirovine as sks "
                      + " from LotNalogZaPoluProizvodTotali "
                      + " WHERE ID_LotNalogZaPoluProizvodTotali=@param0";

                t = db.ParamsQueryDT(sql, IdDokZaKnj);

                if (Convert.ToDecimal(t.Rows[0]["sk"]) != Convert.ToDecimal(t.Rows[0]["sks"]))
                {
                    MessageBox.Show("Ne slazu se sume kolicina dokument se ne moze knjiziti ISPAVITE!!!! ");
                    return;
                }
            }

            //DODELJIVANJE Id TRANSAKCIJE(biranje seme knjizenja)
            if (NazivDokumenta == "FinansijskiInterniNalog" || NazivDokumenta == "PDVIzvestajOKnjizenju")
            {
                sql = "select ID_DokumentaView from OpisTransakcije WITH(NOLOCK) where OpisTransakcije not like '%ispravka%' and Tabela = '" + NazivDokumenta + "' order by ID_DokumentaView  ";
            }
            else
            {
                if (NazivKlona == "PreknjizavanjeKonta")
                {
                    // Jovana 05.10.21 bilo je NazivDokumenta.Substring(1, 3)
                    sql = " select ID_DokumentaView from OpisTransakcije  WITH(NOLOCK) where OpisTransakcije not like '%ispravka%' "
                          + " and Tabela ='" + NazivKlona + "' and opistransakcije like'%" + NazivDokumenta.Substring(1, 3) + "%' order by ID_DokumentaView desc ";
                }
                else
                {
                    sql = "select ID_DokumentaView from OpisTransakcije  WITH(NOLOCK) where OpisTransakcije not like '%ispravka%' and Tabela ='" + NazivDokumenta + "' order by ID_DokumentaView desc ";
                }
            }
            t = db.ReturnDataTable(sql);
            if (t.Rows.Count > 0)
            {
                //ID transakcije
                IdTrans = t.Rows[0]["ID_DokumentaView"].ToString();
            }
            else
            {
                sql = " select ID_DokumentaView from OpisTransakcije  WITH(NOLOCK) where OpisTransakcije not like '%ispravka%' "
                      + " and Tabela =@param0 order by ID_DokumentaView desc ";
                t = db.ParamsQueryDT(sql, NazivKlona);
                if (t.Rows.Count > 0)
                {
                    //ID transakcije
                    IdTrans = t.Rows[0]["ID_DokumentaView"].ToString();
                }
                else
                {
                    MessageBox.Show("Nije definisana transakcija za " + NazivDokumenta);
                    return;
                }
            }

            int IdDokView;
            clsObradaOsnovnihSifarnika os = new clsObradaOsnovnihSifarnika();

            // Jovana 03.12.21 -
            //IdDokView = os.UpisiDokument(ref BrojDok, opis, 29, Datum.ToString());
            IdDokView = os.UpisiDokument(ref BrojDok, opis, 29, dtm.ToString());
            //Totali za Dokumenta sa ID_Dokumenta = idDokView   izvrsava se u  FUNKCIJI UpisiDokument

            UpisiUNalog(IdDokView);
            UpisiUStavke(IdDokView, IdDokZaKnj);
            ObradiBB(BrDokZaKnj, IdDokView);
            string Poruka = "";

            //provera ispravnostinaloga
            Poruka = DovrsiObradu(IdDokZaKnj);

//Izvrsenje totala za Dokument koji knjizimo
            db.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:Dokumenta", "IdDokument:" + IdDokZaKnj);

            if (Poruka.Trim() != "") /// razmisliti
            {
                MessageBox.Show(Poruka);
                deleteGlavnaKnjiga(IdDokZaKnj);
            }
            else
            {
                MessageBox.Show("Za dokument: " + BrDokZaKnj.Trim() + " Broj naloga je: " + (BrojDok).Trim());
            }
            //ivana 7.10.2021.
            clsProveraDozvola pd = new clsProveraDozvola();

            //ivana 11.10.2021. umesto idDokStablo stavila sam IdDokZaKnj
            pd.ProveriDozvole(NazivDokumenta, idDokStablo.ToString(), IdDokZaKnj.ToString(), "D");
        } // kraj obradi nalog automatski
        //Djora 22.10.20
        public int ProveraStanjaPreRealizacije(string idRN, string idMP)
        {
            int vrati = 1;
            // Jovana 12.08.21 NE ZOVE SE NA DOBROM MESTU PROVERA STANJA BAR JA MISLIM TAKO
            //return vrati;
            string sql           = "";
            string sql2          = "";
            string IDMagPoljeSir = "";

            DataBaseBroker db = new DataBaseBroker();

            sql = " SELECT id_lot, ID_SirovinaView, SUM(IzmerenaKolicina) AS SumKolicina, id_skladisteiz "
                  + " FROM dbo.RadniNalogTotaliBarKod "
                  + " GROUP BY ID_SirovinaView, id_lot, ID_RadniNalogTotali, id_skladisteiz "
                  + " HAVING id_lot <> 0 And ID_RadniNalogTotali = @param0 "
                  + " ORDER BY id_skladisteiz ";

            //Privremeno obrisati Dobijam kao parametar u funkciju
            string idRadniNalog      = idRN; // "1332501";
            string ID_MagacinskaPolj = idMP; //"282";

            switch (ID_MagacinskaPolj)
            {
            case "63":
                IDMagPoljeSir = "105";
                break;

            case "62":
                IDMagPoljeSir = "106";
                break;

            case "103":
                IDMagPoljeSir = "104";
                break;

            case "282":     //Dodato
                IDMagPoljeSir = "283";
                break;

            case "202":
                IDMagPoljeSir = "283";
                //IDMagPoljeSir = "283, 110, 112, 113, 114, 115";
                break;

            case "11":
                IDMagPoljeSir = "11";
                break;

            case "234":
                IDMagPoljeSir = "271, 302, 266, 267, 268, 269, 270, 272, 273, 298";
                break;

            case "308":
                IDMagPoljeSir = "299, 300, 301";
                break;

            case "316":
                IDMagPoljeSir = "317";
                break;

            case "310":
            case "207":
                IDMagPoljeSir = "305";
                break;
            }

            DataTable dt2 = db.ParamsQueryDT(sql, idRadniNalog);

            if (dt2.Rows.Count > 0)
            {
                foreach (DataRow row in dt2.Rows)
                {
                    sql2 = " SELECT TOP (100) PERCENT ID_LotView, SUM(Stanje) AS saldo, ID_ArtikliView, NazivArt, dbo.Artikli.StaraSifra "
                           + " FROM dbo.StanjeRobeNaSkl, dbo.Artikli "
                           + " WHERE ID_MagacinskaPolja in (@param0) "
                           + " AND dbo.StanjeRobeNaSkl.ID_ArtikliView = dbo.Artikli.ID_Artikli "
                           + " AND ID_ArtikliView=" + row["ID_SirovinaView"].ToString()
                           + " AND ID_LotView=" + row["ID_Lot"].ToString()
                           + " GROUP BY ID_LotView, ID_ArtikliView, NazivArt, dbo.Artikli.StaraSifra "
                           + " HAVING Sum(Stanje) < " + row["SumKolicina"].ToString().Replace(",", ".")
                           + " ORDER BY ID_ArtikliView";

                    DataTable dt3 = db.ParamsQueryDT(sql2, IDMagPoljeSir);

                    if (dt3.Rows.Count > 0)
                    {
                        vrati = 0;

                        // "Lot: " + row["ID_Lot"].ToString() + "   Artikal: " + Trim(Str(pom!StaraSifra)) + " - " + Trim(pom!NazivArt) + "    Potrebna kolicina: " + Str(rsp!SumKolicina) + "    Kolicina na stanju: " + CStr(pom!saldo) + Chr(10) + Chr(13)
                        // Jovana 12.08.21
                        MessageBox.Show("Nema na stanju artikla: " + dt3.Rows[0][3].ToString());
                        // MessageBox.Show("Nema te na stanju");
                        break;
                    }
                }
            }

            return(vrati);
        }
        //Djora 08.07.21
        public void KreirajRealizaciju(string IDRN, string IDRE)
        {
            string          str       = "";
            string          strParams = "";
            List <string[]> lista     = new List <string[]>();
            //string dokType = "";

            DataBaseBroker db  = new DataBaseBroker();
            string         sql = " SELECT dbo.RadniNalogTotaliBarKod.brdok, dbo.RadniNalogTotaliBarKod.ID_NormativView, dbo.RadniNalogLotPolje.ID_Lot AS LotProizvoda, dbo.RadniNalogLotPolje.ID_MagacinskaPolja, "
                                 + " dbo.RadniNalogTotaliBarKod.Kolicina, dbo.RadniNalogTotaliBarKod.BrojSarzi, dbo.RadniNalogTotaliBarKod.Voda, "
                                 + " dbo.RadniNalogTotaliBarKod.ID_SkladisteIz, dbo.RadniNalogTotaliBarKod.PlanskaCena, dbo.RadniNalogTotaliBarKod.ID_SkladisteU, "
                                 + " dbo.RadniNalogTotaliBarKod.ID_SirovinaView, SUM(dbo.RadniNalogTotaliBarKod.IzmerenaKolicina) AS KolicinaS, "
                                 + " dbo.RadniNalogTotaliBarKod.ProsecnaNabavnaCena , dbo.RadniNalogTotaliBarKod.id_lot, dbo.RadniNalogTotaliBarKod.ID_RadniNalogTotali, dbo.RadniNalogTotaliBarKod.ID_MagacinskaPolja AS IDMagPoljaSir "
                                 + " FROM dbo.RadniNalogTotaliBarKod INNER JOIN "
                                 + " dbo.RadniNalogLotPolje ON dbo.RadniNalogTotaliBarKod.ID_RadniNalogTotali = dbo.RadniNalogLotPolje.ID_RadniNalogTotali "
                                 + " WHERE dbo.RadniNalogLotPolje.BrojSarze = 1 "
                                 + " GROUP BY dbo.RadniNalogTotaliBarKod.brdok, dbo.RadniNalogTotaliBarKod.ID_NormativView, dbo.RadniNalogLotPolje.ID_Lot, dbo.RadniNalogLotPolje.ID_MagacinskaPolja, "
                                 + " dbo.RadniNalogTotaliBarKod.Kolicina, dbo.RadniNalogTotaliBarKod.BrojSarzi, dbo.RadniNalogTotaliBarKod.Voda, "
                                 + " dbo.RadniNalogTotaliBarKod.ID_SkladisteIz, dbo.RadniNalogTotaliBarKod.PlanskaCena, dbo.RadniNalogTotaliBarKod.ID_SkladisteU, "
                                 + " dbo.RadniNalogTotaliBarKod.ID_SirovinaView, dbo.RadniNalogTotaliBarKod.ProsecnaNabavnaCena, dbo.RadniNalogTotaliBarKod.id_lot, "
                                 + " dbo.RadniNalogTotaliBarKod.ID_RadniNalogTotali, dbo.RadniNalogTotaliBarKod.ID_MagacinskaPolja "
                                 + " HAVING dbo.RadniNalogTotaliBarKod.ID_RadniNalogTotali=@param0"; //+ IDRN

            DataTable dt = db.ParamsQueryDT(sql, IDRN);

            if (dt.Rows.Count > 0)
            {
                int IDMagPoljeSirovine = 0;

                string LotProizvoda        = dt.Rows[0]["LotProizvoda"].ToString();
                int    IDMagPoljeProizvoda = Convert.ToInt32(dt.Rows[0]["ID_MagacinskaPolja"].ToString());

                if (IDMagPoljeProizvoda == 63)
                {
                    IDMagPoljeSirovine = 105;
                }
                else if (IDMagPoljeProizvoda == 62)
                {
                    IDMagPoljeSirovine = 106;
                }
                else if (IDMagPoljeProizvoda == 103)
                {
                    IDMagPoljeSirovine = 104;
                }
                else if (IDMagPoljeProizvoda == 282)
                {
                    IDMagPoljeSirovine = 283;
                }
                else if (IDMagPoljeProizvoda == 11)
                {
                    IDMagPoljeSirovine = 11;
                }
                else if (IDMagPoljeProizvoda == 324)
                {
                    IDMagPoljeSirovine = 299;
                }

                if (Convert.ToInt32(dt.Rows[0]["id_skladisteiz"].ToString()) == 156 && Convert.ToInt32(dt.Rows[0]["ID_SkladisteU"].ToString()) == 175)
                {
                    IDMagPoljeProizvoda = 283;
                }

                if (Convert.ToInt32(dt.Rows[0]["id_skladisteiz"].ToString()) == 156 && Convert.ToInt32(dt.Rows[0]["ID_SkladisteU"].ToString()) == 155)
                {
                    IDMagPoljeProizvoda = 104;
                }

                if (Convert.ToInt32(dt.Rows[0]["id_skladisteiz"].ToString()) == 207)
                {
                    IDMagPoljeProizvoda = 305;
                }

                if (Convert.ToInt32(dt.Rows[0]["id_skladisteiz"].ToString()) == 207)
                {
                    IDMagPoljeSirovine  = 305;
                    IDMagPoljeProizvoda = 310;
                }

                IDMagPoljeSirovine = Convert.ToInt32(dt.Rows[0]["IDMagPoljaSir"].ToString());

                int pAnalitika;

                if (Convert.ToInt32(dt.Rows[0]["id_skladisteiz"].ToString()) == 175)  //Ako je FSH
                {
                    pAnalitika = 10703;
                }
                else
                {
                    pAnalitika = 1;
                }


                strParams  = "@param1=" + dt.Rows[0]["ID_NormativView"].ToString() + "`";
                strParams += "@param2=" + IDRE + "`";
                strParams += "@param3=1`";
                strParams += "@param4=" + dt.Rows[0]["kolicina"].ToString() + "`";
                strParams += "@param5=" + dt.Rows[0]["Voda"].ToString() + "`";
                strParams += "@param6=" + dt.Rows[0]["BrojSarzi"].ToString() + "`";
                strParams += "@param7=" + dt.Rows[0]["id_skladisteiz"].ToString() + "`";
                strParams += "@param8=" + dt.Rows[0]["PlanskaCena"].ToString() + "`";
                strParams += "@param9=" + dt.Rows[0]["ID_SkladisteU"].ToString() + "`";
                strParams += "@param10=" + LotProizvoda + "`";
                strParams += "@param11=" + IDMagPoljeProizvoda + "`";
                strParams += "@param12=" + pAnalitika + "`";
                str        = " INSERT INTO NalogKooperanta ([ID_NormativView], [ID_DokumentaView], [ID_KomitentiView], [Kolicina], [Voda], [BrojSarzi], "
                             + " [ID_SkladisteIz], [PlanskaCena], [ID_SkladisteU], [ID_LOtProizvoda], [ID_MagacinskaPolja1], [ID_Analitika]) "
                             + " VALUES(@param1, @param2, @param3, @param4, @param5, @param6, @param7, @param8, @param9, @param10, @param11, @param12)";

                lista.Add(new string[] { str, strParams, "NalogKooperanta", "D", IDRE });
                lista.ToArray();

                foreach (DataRow row in dt.Rows)
                {
                    strParams  = "@param1=" + IDRE + "`";
                    strParams += "@param2=" + row["ID_SirovinaView"] + "`";
                    strParams += "@param3=" + row["ID_NormativView"] + "`";
                    strParams += "@param4=" + row["KolicinaS"] + "`";
                    strParams += "@param5=" + row["ProsecnaNabavnaCena"] + "`";
                    strParams += "@param6= ''`";
                    strParams += "@param7=" + row["ID_Lot"] + "`";
                    strParams += "@param8=" + row["IDMagPoljaSir"] + "`";

                    str = "Insert Into NalogKooperantaStavke ([ID_DokumentaView], [ID_SirovinaView], [ID_NormativView], [Kolicina], [ProsecnaNabavnaCena], "
                          + " [Reekspotr], [ID_LotView], [ID_MagacinskaPolja])"
                          + " values (@param1,@param2,@param3,@param4,@param5,@param6,@param7, @param8)";

                    lista.Add(new string[] { str, strParams, "NalogKooperantaStavke", "D", IDRE });
                    lista.ToArray();
                }

                sql = "Execute TotaliZaDokument SPROC";
                lista.Add(new string[] { sql, "LotRadniNalog" + "#" + IDRE, "", "", "" });
                lista.ToArray();

                // Jovana 12.08.21 Ne znam zasto mora da ima SPROC???
                sql = "Execute CeneArtikalaPoSkladistimaIStanje " + IDRE;
                lista.Add(new string[] { sql, "", "", "", "" });
                lista.ToArray();

                // Jovana 12.08.21
                sql = "Execute StanjeRobePoLotu " + IDRE;
                lista.Add(new string[] { sql, "", "", "", "" });
                lista.ToArray();

                string rezultat = db.ReturnSqlTransactionParamsFull(lista);
            }
        }
Beispiel #19
0
        public void PrikaziFormu(string vrsta, string imestabla, string imedokumenta, Int32 idstablo, string DokumentJe)
        {
            if (DokumentJe != "K")
            {
                switch (imestabla)
                {
                case "Artikli":
                case "Komitenti":
                    //ivana 13.9.2021.
                    //Program.Parent.ShowNewForm(imestabla, 1, imestabla + "-" + imedokumenta, 1, "", "", DokumentJe, "", "");
                    //Djora 10.09.21
                    //Program.Parent.ShowNewForm(imestabla, 1, imedokumenta, 1, "", "", DokumentJe, "", "");
                    //ivana 17.9.2021.
                    //Program.Parent.ShowNewForm(imestabla, idstablo, imestabla + "-" + imedokumenta, 1, "", "", DokumentJe, "", "");
                    Program.Parent.ShowNewForm(imestabla, idstablo, imedokumenta, 1, "", "", DokumentJe, "", "");
                    break;

                case "Izvestaj":
                    //if (vrsta == "D")
                    //    Program.Parent.ShowNewForm("Dokumenta", idstablo, imedokumenta, 1, "", "", "S", "", ""); // na dogadjaju form load otvara se nova forma  sa predatim parametrima
                    //else
                    //{
                    string sql = " select s.ulazniizlazni as NazivDokumenta,NacinRegistracije as nr,"
                                 + " Knjizise,Izvor  from  SifarnikDokumenta as s"
                                 + "  Where s.naziv=@param0";

                    DataTable t = db.ParamsQueryDT(sql, imedokumenta);
                    if (t.Rows.Count > 0)
                    {
                        Program.AktivnaSifraIzvestaja = imedokumenta;

                        if (t.Rows[0]["nr"].ToString().ToUpper() == "B")     // izvestaj je u bazi
                        {
                            //ivana 16.9.2021.
                            //Program.Parent.ShowNewForm("Izvestaj", 1, imedokumenta, -1, "", "", "I", "", "");
                            Program.Parent.ShowNewForm("Izvestaj", idstablo, imedokumenta, -1, "", "", "I", "", "");
                        }


                        else if (t.Rows[0]["Izvor"].ToString() == "online")
                        {
                            string iddok = "1";
                            //ivana 13.9.2021.
                            //string naslov = "Print - " + imedokumenta;
                            //if (!Program.Parent.DalijevecOtvoren("I", "", naslov))
                            if (!Program.Parent.DalijevecOtvoren("I", "", imedokumenta))
                            {
                                Print fs = new Print();
                                fs.BackColor       = System.Drawing.Color.FromArgb(((int)(((byte)(238)))), ((int)(((byte)(226)))), ((int)(((byte)(220)))));
                                fs.FormBorderStyle = FormBorderStyle.None;
                                fs.MdiParent       = Program.Parent;
                                fs.Text            = imedokumenta;
                                //ivana 13.9.2021.
                                //fs.Name = naslov;
                                fs.Name          = imedokumenta;
                                fs.intCurrentdok = Convert.ToInt32(iddok);
                                fs.LayoutMdi(MdiLayout.TileVertical);
                                fs.imefajla  = imedokumenta;
                                fs.kojiprint = "rpt";
                                fs.kojinacin = "E";
                                fs.izvor     = t.Rows[0]["Izvor"].ToString();
                                fs.Show();
                                fs.Focus();
                                Program.Parent.addFormTotoolstrip1(fs, imedokumenta);
                                //ivana 21.10.2021.
                                EventArgs e = new EventArgs();
                                Program.Parent.itemn_click(imedokumenta, e);
                            }
                        }

                        else    //  izvestaj je excel
                        {
                            Program.Excel = imedokumenta;
                            //ivana 13.9.2021.
                            //string naslov = "Print - " + imedokumenta;
                            Boolean odgovor = false;
                            odgovor = Program.Parent.DalijevecOtvoren("I", "", imedokumenta);
                            if (odgovor == false)
                            {
                                frmChield fs = new frmChield();

                                fs.BackColor       = System.Drawing.Color.FromArgb(((int)(((byte)(238)))), ((int)(((byte)(226)))), ((int)(((byte)(220)))));
                                fs.FormBorderStyle = FormBorderStyle.None;
                                fs.MdiParent       = Program.Parent;
                                fs.Text            = imedokumenta;
                                //ivana 13.9.2021.
                                //fs.Name = naslov;
                                fs.Name = imedokumenta;
                                fs.LayoutMdi(MdiLayout.TileVertical);
                                fs.Visible = false;
                                //ivana 15.9.2021.
                                Program.vred = "excel";
                                Program.Parent.addFormTotoolstrip1(fs, imedokumenta);
                                fs.Show();
                            }
                            //ivana 27.9.2021.
                            Program.Excel = "";
                        }
                    }
                    break;

                default:
                    Program.Parent.ShowNewForm(imestabla, idstablo, imedokumenta, 1, "", "", DokumentJe, "", "");
                    //Program.Parent.ShowNewForm("Dokumenta", idstablo, imedokumenta, 1, "", "", "S", "", ""); // na dogadjaju form load otvara se nova forma  sa predatim parametrima
                    break;
                }
            }
            //}
        }
        public void addFormControls(Form forma1, string dokument, string iddok, string operacija)
        {
            Form           forma = forma1;
            DataBaseBroker db    = new DataBaseBroker();
            DataTable      tt    = new DataTable();
            string         sql   = "Select Naziv,UlazniIzlazni as NazivDokumenta from SifarnikDokumenta  where Naziv=@param0";

            tt = db.ParamsQueryDT(sql, dokument);
            if (tt.Rows.Count > 0)
            {
                dokument = tt.Rows[0]["NazivDokumenta"].ToString();
            }

            if (Program.ID_Jezik == 0)
            {
                Program.ID_Jezik = 3;
            }
            //string query = " SELECT RecnikPodatakaDjora.ID_RecnikPodataka AS ID, RecnikPodatakaDjora.levo, RecnikPodatakaDjora.vrh, RecnikPodatakaDjora.width, RecnikPodatakaDjora.height, "
            //           + " RecnikPodatakaDjora.AlijasPolja, RecnikPodatakaDjora.AlijasTabele, dbo.TipoviPodataka.tip, dbo.TipoviPodataka.velicina, dbo.TipoviPodataka.naziv, dbo.TipoviPodataka.DifoltZaIzvestaje, "
            //           + " dbo.TipoviPodataka.Format, dbo.TipoviPodataka.Alajment, RecnikPodatakaDjora.Izborno, RecnikPodatakaDjora.Polje, RecnikPodatakaDjora.PostojiLabela, RecnikPodatakaDjora.ID_NaziviNaFormi, "
            //           + " RecnikPodatakaDjora.TUD, RecnikPodatakaDjora.TabelaVView,RecnikPodatakaDjora.TabIndex, RecnikPodatakaDjora.StornoIUpdate, RecnikPodatakaDjora.Tabela, dbo.Prevodi.Prevod as Srpski, "
            //           + " dbo.TipoviPodataka.CSharp as FormatPolja,RecnikPodatakaDjora.Restrikcije,RecnikPodatakaDjora.JJoinTvV as ImaNaslov,RecnikPodatakaDjora.FormulaForme"
            //           + " FROM dbo.RecnikPodataka AS RecnikPodatakaDjora INNER JOIN "
            //           + " dbo.TipoviPodataka ON RecnikPodatakaDjora.ID_TipoviPodataka = dbo.TipoviPodataka.ID_TipoviPodataka INNER JOIN "
            //           + " dbo.Prevodi ON RecnikPodatakaDjora.ID_NaziviNaFormi = dbo.Prevodi.ID_NaziviNaFormi "
            //           + " WHERE(RecnikPodatakaDjora.Dokument = N'" + dokument + "')AND( RecnikPodatakaDjora.width <> 0  OR  RecnikPodatakaDjora.ID_NaziviNaFormi = 20 "
            //           + " OR RecnikPodatakaDjora.ID_NaziviNaFormi = 25 ) "
            //           + "  AND(dbo.Prevodi.ID_Jezik = "+Program.ID_Jezik.ToString()+") "
            //           + " ORDER BY RecnikPodatakaDjora.TabelaVView DESC, RecnikPodatakaDjora.TabIndex

            //Djora 26.09.20
            //string query = " SELECT RecnikPodatakaDjora.ID_RecnikPodataka AS ID, RecnikPodatakaDjora.levo, RecnikPodatakaDjora.vrh, RecnikPodatakaDjora.width, RecnikPodatakaDjora.height, "
            //       + " RecnikPodatakaDjora.AlijasPolja, RecnikPodatakaDjora.AlijasTabele, dbo.TipoviPodataka.tip, dbo.TipoviPodataka.velicina, dbo.TipoviPodataka.naziv, dbo.TipoviPodataka.DifoltZaIzvestaje, "
            //       + " dbo.TipoviPodataka.Format, dbo.TipoviPodataka.Alajment, RecnikPodatakaDjora.Izborno, RecnikPodatakaDjora.Polje, RecnikPodatakaDjora.PostojiLabela, RecnikPodatakaDjora.ID_NaziviNaFormi, "
            //       + " RecnikPodatakaDjora.TUD, RecnikPodatakaDjora.TabelaVView, RecnikPodatakaDjora.StornoIUpdate, RecnikPodatakaDjora.Tabela, dbo.Prevodi.Prevod as Srpski, "
            //       + " dbo.TipoviPodataka.CSharp as FormatPolja,RecnikPodatakaDjora.Restrikcije,RecnikPodatakaDjora.JJoinTvV as ImaNaslov,RecnikPodatakaDjora.FormulaForme"
            //       + " FROM dbo.RecnikPodataka AS RecnikPodatakaDjora INNER JOIN "
            //       + " dbo.TipoviPodataka ON RecnikPodatakaDjora.ID_TipoviPodataka = dbo.TipoviPodataka.ID_TipoviPodataka INNER JOIN "
            //       + " dbo.Prevodi ON RecnikPodatakaDjora.ID_NaziviNaFormi = dbo.Prevodi.ID_NaziviNaFormi "
            //       + " WHERE(RecnikPodatakaDjora.Dokument = N'" + dokument + "') AND(RecnikPodatakaDjora.TabIndex >= 0) AND(RecnikPodatakaDjora.width <> 0) AND(dbo.Prevodi.ID_Jezik = " + Program.ID_Jezik.ToString() + ") OR "
            //       + " (RecnikPodatakaDjora.Dokument = N'" + dokument + "') AND(RecnikPodatakaDjora.ID_NaziviNaFormi = 20)  AND(dbo.Prevodi.ID_Jezik = " + Program.ID_Jezik.ToString() + ") "
            //       + " ORDER BY RecnikPodatakaDjora.TabelaVView DESC, RecnikPodatakaDjora.TabIndex";

            //Djora 26.09.20
            //Djora 26.09.20
            //ivana 6.9.2021. dodala sam da se ucitava i polje CAlijasPolja
            string query = " SELECT RecnikPodatakaDjora.ID_RecnikPodataka AS ID, RecnikPodatakaDjora.Clevo as levo, RecnikPodatakaDjora.Cvrh as vrh, RecnikPodatakaDjora.Cwidth as width, RecnikPodatakaDjora.height, "
                           + " RecnikPodatakaDjora.AlijasPolja, RecnikPodatakaDjora.AlijasTabele, dbo.TipoviPodataka.tip, dbo.TipoviPodataka.velicina, dbo.TipoviPodataka.naziv, dbo.TipoviPodataka.DifoltZaIzvestaje, "
                           + " dbo.TipoviPodataka.Format, dbo.TipoviPodataka.Alajment, RecnikPodatakaDjora.Izborno, RecnikPodatakaDjora.Polje, RecnikPodatakaDjora.PostojiLabela, RecnikPodatakaDjora.ID_NaziviNaFormi, RecnikPodatakaDjora.ZavisiOd, RecnikPodatakaDjora.CAlijasPolja, "
                           + " RecnikPodatakaDjora.TUD, RecnikPodatakaDjora.TabelaVView, RecnikPodatakaDjora.StornoIUpdate, RecnikPodatakaDjora.Tabela, dbo.Prevodi.Prevod as Srpski, "
                           + " dbo.TipoviPodataka.CSharp as FormatPolja,RecnikPodatakaDjora.Restrikcije,RecnikPodatakaDjora.JJoinTvV as ImaNaslov,RecnikPodatakaDjora.FormulaForme,RecnikPodatakaDjora.TabIndex, RecnikPodatakaDjora.ObavezanUnos"
                           + " FROM dbo.RecnikPodataka AS RecnikPodatakaDjora INNER JOIN "
                           + " dbo.TipoviPodataka ON RecnikPodatakaDjora.ID_TipoviPodataka = dbo.TipoviPodataka.ID_TipoviPodataka INNER JOIN "
                           + " dbo.Prevodi ON RecnikPodatakaDjora.ID_NaziviNaFormi = dbo.Prevodi.ID_NaziviNaFormi "
                           + " WHERE(RecnikPodatakaDjora.Dokument = N'" + dokument + "') AND(RecnikPodatakaDjora.TabIndex >= 0) AND(RecnikPodatakaDjora.width <> 0) AND(dbo.Prevodi.ID_Jezik = " + Program.ID_Jezik.ToString() + ") OR "
                           + " (RecnikPodatakaDjora.Dokument = N'" + dokument + "') AND(RecnikPodatakaDjora.ID_NaziviNaFormi = 20)  AND(dbo.Prevodi.ID_Jezik = " + Program.ID_Jezik.ToString() + ") "
                           + " ORDER BY RecnikPodatakaDjora.TabelaVView DESC, RecnikPodatakaDjora.TabIndex";

            //Djora 16.04.21
            int    pFokus   = 1;
            string ImeFokus = "";

            Console.WriteLine(query);
            DataTable t = db.ReturnDataTable(query);

            if (t.Rows.Count > 0)
            {
                foreach (DataRow row in t.Rows)
                {
                    var csirina = Convert.ToDouble(row["width"].ToString());
                    if (csirina == 0 || csirina > 9 || row["polje"].ToString() == "RedniBroj") // BORKA ne prikazuju se kontrole za polja cija je sirina<9 primeceno u pdvkalkulacijaulaza ????????
                    {
                        var clevo            = Convert.ToDouble(row["levo"].ToString());
                        var cvrh             = Convert.ToDouble(row["vrh"].ToString());
                        var cvisina          = Convert.ToDouble(row["height"].ToString());
                        var ctekst           = row["Srpski"].ToString();
                        var cPostojiLabela   = row["PostojiLabela"].ToString();
                        var cTip             = Int32.Parse(row["tip"].ToString());
                        var cAlijasPolja     = row["AlijasPolja"].ToString();
                        var cizborno         = row["izborno"].ToString();
                        var cidNaziviNaFormi = row["ID_NaziviNaFormi"].ToString();
                        //Ivana 11.12.2020.
                        var cZavisiOd = row["ZavisiOd"].ToString();
                        //ivana 6.9.2021.
                        var ccAlijasPolja = row["CAlijasPolja"].ToString();

                        var    cTUD          = row["tud"].ToString();
                        var    cPolje        = row["polje"].ToString();
                        string cEnDis        = row["StornoIUpdate"].ToString();
                        string cFormat       = row["Format"].ToString();
                        var    cAlijasTabele = row["AlijasTabele"].ToString();
                        string cTabelaVView  = row["TabelaVView"].ToString();
                        string cFormatPolja  = row["FormatPolja"].ToString();
                        var    cTabela       = row["Tabela"].ToString();
                        var    cSegment      = row["TabelavView"].ToString();

                        //Djora 16.04.21
                        var cTabIndex = Convert.ToInt32(row["TabIndex"].ToString());

                        //var cTabIndex = Convert.ToInt32(row["TabIndex"].ToString());
                        var cRestrikcije = row["Restrikcije"].ToString();
                        var cImaNaslov   = 0;
                        //Console.WriteLine(row["ImaNaslov"].ToString());
                        if (row["ImaNaslov"].ToString() == "False")
                        {
                            cImaNaslov = 0;//row["ImaNaslov"].ToString();
                        }
                        else
                        {
                            cImaNaslov = 1;
                        }
                        var cFormulaForme = row["FormulaForme"].ToString();

                        //Djora 02.12.21
                        int cObavezanUnos = Convert.ToInt16(row["ObavezanUnos"].ToString());

                        //Srdjan 16.04.21
                        //var mfield = new Field(forma, iddok, dokument, ctekst, cPolje, cAlijasPolja, Color.Lavender, clevo, cvrh, cvisina, csirina, cPostojiLabela, cTip, cizborno, cidNaziviNaFormi, cZavisiOd, cTUD, cEnDis, cFormat, cTabela, cAlijasTabele, cTabelaVView, cFormatPolja, cSegment, cRestrikcije, cImaNaslov, cFormulaForme);
                        //ivana 6.9.2021. dodala sam CAlijasPolja
                        var mfield = new Field(forma, iddok, dokument, ctekst, cPolje, cAlijasPolja, Color.Lavender, clevo, cvrh, cvisina, csirina, cPostojiLabela, cTip, cizborno, cidNaziviNaFormi, cZavisiOd, ccAlijasPolja, cTUD, cEnDis, cFormat, cTabela, cAlijasTabele, cTabelaVView, cFormatPolja, cSegment, cRestrikcije, cImaNaslov, cFormulaForme, cTabIndex, cObavezanUnos);
                        forma.Controls.Add(mfield);
                        //Ivana 11.12.2020.
                        if (cZavisiOd.Trim() != "" && cAlijasPolja.Substring(0, 2) != "ID")
                        {
                            mfield.Visible = false;
                        }

                        //Djora 16.04.21
                        if (cTabIndex >= 0)
                        {
                            if (cTabIndex <= pFokus && cEnDis != "D")
                            {
                                pFokus   = cTabIndex;
                                ImeFokus = cAlijasPolja;
                            }
                            else
                            {
                                pFokus = cTabIndex;
                            }
                        }
                    }
                }
            }
            //ivana 19.10.2021.
            string    upit = "Select NazivJavni from DokumentaStablo where Naziv = @param0";
            DataTable dt   = db.ParamsQueryDT(upit, tt.Rows[0]["Naziv"].ToString());

            if (dt.Rows.Count > 0)
            {
                var polje = new Field(forma, iddok, dokument, "", "", "NazivJavni", Color.Lavender, 31, -2, 12, 850, "1", 10, "", "1", "", "NazivJavni", "0", "D", "@", "", "", "", "", "", "", 0, "", 150, 0);
                polje.textBox.Text      = dt.Rows[0][0].ToString();
                polje.textBox.ForeColor = Color.Red;
                forma.Controls.Add(polje);
            }
            //Djora 16.04.21
            //forma.Controls[ImeFokus].Focus();
            //SendKeys.Send("{TAB}");
        }
        //Djora 22.10.20
        public string Merenje(double kolicina, string idRN, string idMP, string DatumRN, string BrDokRN, string iDLotP)
        {
            string sql           = "";
            string IDMagPoljeSir = "";

            //Privremeno obrisati Dobijam kao parametar u funkciju
            string idRadniNalog      = idRN; // "1332501";
            string ID_MagacinskaPolj = idMP; //"282";

            switch (ID_MagacinskaPolj)
            {
            case "63":
                IDMagPoljeSir = "105";
                break;

            case "62":
                IDMagPoljeSir = "106";
                break;

            case "103":
                IDMagPoljeSir = "104";
                break;

            case "282":     //Dodato
                IDMagPoljeSir = "283";
                break;

            case "202":
                IDMagPoljeSir = "283";
                //IDMagPoljeSir = "283, 110, 112, 113, 114, 115";
                break;

            case "11":
                IDMagPoljeSir = "11";
                break;

            case "234":
                IDMagPoljeSir = "271, 302, 266, 267, 268, 269, 270, 272, 273, 298";
                break;

            case "308":
                IDMagPoljeSir = "299, 300, 301";
                break;

            case "316":
                IDMagPoljeSir = "317";
                break;

            case "310":
            case "207":
                IDMagPoljeSir = "305";
                break;
            }

            //Djora 01.07.21
            PrenosNaloga(idRN, idMP, iDLotP);
            //Djora 08.07.21
            //KreirajDokument(DatumRN, BrDokRN);

            //Djora 23.08.21 pocetak --------------------------------------
            //Provera stanja svih komponenti
            clsRealizacija real = new clsRealizacija();
            int            ret  = real.ProveraStanjaPreRealizacije(idRadniNalog, idMP);

            if (ret == 0)
            {
                MessageBox.Show("Nema te komponente na stanju!");
                //Ovde obrisati iz RadniNalogTotaliBarKod

                return("");
            }
            //Djora 23.08.21 kraj ------------------------------------------


            double pNeto = 0;

            DataBaseBroker db = new DataBaseBroker();

            //Daje kolicine sirovina potrebnih u odnosu na kolicinu proizvedenog proizvoda
            sql = " SELECT  dbo.ReceptiStavke.ID_SirovinaView, dbo.ReceptiStavke.Kolicina / 100 * " + kolicina + " AS Kolicina, dbo.RadniNalogTotali.ID_SkladisteIz, dbo.RadniNalogTotali.Datum "
                  + " FROM dbo.RadniNalogTotali INNER JOIN "
                  + "      dbo.ReceptiStavke ON dbo.RadniNalogTotali.ID_NormativView = dbo.ReceptiStavke.ID_DokumentaView "
                  + " AND dbo.RadniNalogTotali.ID_SirovinaView = dbo.ReceptiStavke.ID_SirovinaView "
                  + " WHERE(dbo.RadniNalogTotali.ID_RadniNalogTotali = @param0)";

            DataTable dt = db.ParamsQueryDT(sql, idRadniNalog);

            if (dt.Rows.Count > 0)
            {
                foreach (DataRow row in dt.Rows)
                {
                    fifo(row["ID_SirovinaView"].ToString(), IDMagPoljeSir, row["ID_SkladisteIz"].ToString(), Convert.ToDouble(row["Kolicina"]), kolicina, idRadniNalog);
                }
            }


            //Djora 08.07.21
            string idRealizacije = KreirajDokument(DatumRN, BrDokRN);

            //Djora 08.07.21
            KreirajRealizaciju(idRadniNalog, idRealizacije);

            //Jovana 11.08.21
            return(idRealizacije);
        }
Beispiel #22
0
        public void PrikaziDokument(string Broj)
        {
            DataBaseBroker db = new DataBaseBroker();

            if (Broj.Trim() != "")
            {
                string    sel = "Select id_dokumentatotali as ID_dok,ID_DokumentaStablo,dokument,Datum from dokumentatotali where brdok=@param0";
                DataTable tt  = db.ParamsQueryDT(sel, Broj);
                if (tt.Rows.Count != 0)
                {
                    long   iddokview = Convert.ToInt64(tt.Rows[0]["ID_dok"].ToString());
                    int    idstablo  = Convert.ToInt32(tt.Rows[0]["ID_DokumentaStablo"].ToString());
                    string dokument  = tt.Rows[0]["dokument"].ToString();
                    string mdatum    = tt.Rows[0]["Datum"].ToString();
                    //ivana 16.9.2021.
                    Broj = Broj.Replace(" ", "");
                    string upit = "Select NacinRegistracije from SifarnikDokumenta where Naziv = @param0";
                    tt = db.ParamsQueryDT(upit, dokument);
                    if (tt.Rows.Count > 0)
                    {
                        if (tt.Rows[0][0].ToString() != "P" && tt.Rows[0][0].ToString() != "W" && tt.Rows[0][0].ToString() != "E")
                        {
                            Program.Parent.ShowNewForm("Dokumenta", idstablo, dokument, iddokview, Broj, mdatum, "D", "", "");
                        }
                        else if (Broj.Trim() != "")
                        {
                            string pom;
                            string slovo;
                            string ekstenzija;
                            switch (tt.Rows[0][0].ToString())
                            {
                            case "P":
                                pom        = "Pdf";
                                slovo      = "-";
                                ekstenzija = ".pdf";
                                break;

                            case "W":
                                pom        = "Word";
                                slovo      = "&";
                                ekstenzija = ".doc";
                                break;

                            case "E":
                                pom        = "Excel";
                                slovo      = "&";
                                ekstenzija = ".xls";
                                break;

                            default:
                                pom        = "";
                                slovo      = "";
                                ekstenzija = "";
                                break;
                            }
                            string putanja = @"\\" + LoginForm.FileServer + @"\ISdokumenta\" + Program.imeFirme + "\\" + pom + "\\" + dokument + "\\" + Broj.Replace("/", slovo) + ekstenzija;
                            Console.WriteLine(putanja);
                            if (File.Exists(putanja))
                            {
                                System.Diagnostics.Process.Start(putanja);
                            }
                            else
                            {
                                MessageBox.Show("Ne postoji dati dokument!");
                            }
                        }
                    }
                }
            }
        }
Beispiel #23
0
        public void RasporedTroskova(long IdDok, string OOd, string DDo, string skl, string Odakle)
        {
            if (Odakle == "STORNO")
            {
                goto RasporediTRoskove;
            }

            string BrojKalkulacije      = "";
            string KalkulacijaStaraNova = "";

            sql  = " SELECT DokumentaStablo.Naziv as BrDokKorisnik,Dokumenta.BrojDokumenta ";
            sql += " FROM Dokumenta, DokumentaStablo ";
            sql += " WHERE Dokumenta.ID_DokumentaStablo=DokumentaStablo.ID_DokumentaStablo ";
            sql += " AND Dokumenta.ID_Dokumenta=@param0";
            Console.WriteLine(sql);
            DataTable t = new DataTable();

            t = db.ParamsQueryDT(sql, IdDok);
            KalkulacijaStaraNova = t.Rows[0]["BrDokKorisnik"].ToString();
            BrojKalkulacije      = t.Rows[0]["BrojDokumenta"].ToString();

            switch (KalkulacijaStaraNova)
            {
            case "KalkulacijaUlaza":
                sql  = " insert into kalk(ID_DokumentaView, Skl, ID_ArtikliView, StaraSifra, Kolicina, IznosDomVal)";
                sql += " select distinct " + IdDok.ToString() + " as ID_DokumentaView,  NazivSkl as Skl, ID_ArtikliView,StaraSifra, Kolicina, IznosDomVal";
                sql += " from UlazniRacunTotali ";
                sql += " where ID_UlazniRacunTotali=(select ID_UlazniRacunCeo from KalkulacijaUf where id_dokumentaview=" + IdDok.ToString() + ")";
                break;

            case "PDVKalkulacijaUlaza":
                break;
            }

RasporediTRoskove:
            if (Odakle != "Load")
            {
                long IdRacuna = 0;
                sql = "select ID_UlazniRacunCeo from KalkulacijaUf where id_dokumentaview=@param0";
                t   = db.ParamsQueryDT(sql, IdDok);
                if (t.Rows.Count > 0)
                {
                    IdRacuna = Convert.ToInt64(t.Rows[0]["ID_UlazniRacunCeo"].ToString());
                    string sel = "";
                    sel  = "select kut.IznosDomVal/kut.Kolicina as Cena,sum(kufs.iznos)/kut.kolicina as dodatakcene,kut.ID_ArtikliView ,kut.IId ";
                    sel += " From KonacniUlazniRacunTotali as kut, KalkulacijaUfStavke as kufs, kalkulacijauf as kuf ";
                    sel += " Where kut.iid=kufs.ID_StavkeUlaznogRacuna and ID_KonacniUlazniRacunTotali= kuf.ID_UlazniRacunCeo And kuf.ID_DokumentaView = kufs.ID_DokumentaView ";
                    sel += " and kut.ID_ArtikliView=kufs.ID_ArtikliView and  ID_UlazniRacunCeo=@param0";
                    sel += " Group by kut.ID_ArtikliView ,kut.IId ,kut.IznosDomVal/kut.Kolicina ,kut.kolicina ";
                    Console.WriteLine(sel);
                    t = db.ParamsQueryDT(sel, IdRacuna);
                    for (int i = 0; i < t.Rows.Count; i++)
                    {
                        //JOvana 05.02.21  Djora 06.04.21
                        sel  = "update RacunStavke set NabavnaCena=" + t.Rows[i]["Cena"].ToString().Replace(",", ".") + "+" + t.Rows[i]["DodatakCene"].ToString().Replace(",", ".");
                        sel += " FROM racunstavke as r where r.ID_RacunStavke=@param0";
                        Console.WriteLine(sel);
                        int r = db.ParamsInsertScalar(sel, t.Rows[i]["iid"]);
                    }
                }
            }
        }
Beispiel #24
0
        public void refreshform()
        {
            forma = Program.Parent.ActiveMdiChild;
            //string dokje,string imestabla,string ime,string idstablo,string ident)
            string supit      = "";
            string imestabla  = "";
            string NazivKlona = "";

            if (forma.Controls["limestabla"].Text != "")
            {
                imestabla = forma.Controls["limestabla"].Text;
            }
            string dokje = forma.Controls["ldokje"].Text;

            string ident    = forma.Controls["liddok"].Text;
            string idstablo = forma.Controls["lidstablo"].Text;
            string ime      = forma.Controls["limedok"].Text;
            // Jovana 18.08.21
            string    sql = "SELECT UlazniIzlazni as NazivKlona from SifarnikDokumenta where Naziv=@param0";
            DataTable dt  = db.ParamsQueryDT(sql, ime);

            if (dt.Rows.Count != 0)
            {
                NazivKlona = dt.Rows[0]["NazivKlona"].ToString();
            }
            clsdokumentRefresh dr = new clsdokumentRefresh();

            switch (dokje)
            {
            case "K":
                clsTreeProcessing tw = new clsTreeProcessing();
                tw.ObradaStabla(forma, "1", imestabla, dokje);
                break;

            case "S":
                if (idstablo == "1")
                {
                    break;
                }
                clsObradaStablaStipa procs = new clsObradaStablaStipa();
                supit = procs.Proces(imestabla, ime, Convert.ToInt32(idstablo));
                if (supit.Trim() != "")
                {
                    dr.refreshDokumentBody(forma, imestabla, idstablo, dokje);
                    dr.refreshDokumentGrid(forma, imestabla, idstablo, supit, "1", dokje);
                }
                break;

            case "P":
                if (idstablo == "1")
                {
                    break;
                }
                clsObradaStablaPtipa procp = new clsObradaStablaPtipa();
                supit = procp.Proces(imestabla, ime, Convert.ToInt32(idstablo));
                dr.refreshDokumentGrid(forma, ime, idstablo, supit, "1", dokje);
                break;

            case "I":
                // Jovana 18.08.21 zamenila ime sa NazivKlona
                if (idstablo == "1")
                {
                    break;
                }
                string sel = "Select TUD From Upiti Where NazivDokumenta='" + NazivKlona + "' and ime like'GGrr%' AND TUD>0 Order by TUD";
                Console.WriteLine(sel);
                DataTable            ti    = db.ReturnDataTable(sel);
                clsObradaStablaItipa proci = new clsObradaStablaItipa();
                for (int j = 0; j < ti.Rows.Count; j++)
                {
                    supit = proci.Proces(NazivKlona, ti.Rows[j]["TUD"].ToString());
                    Console.WriteLine(supit);
                    dr.refreshDokumentGrid(forma, NazivKlona, idstablo.ToString(), supit, ti.Rows[j]["TUD"].ToString(), dokje);
                }
                break;

            default:
                dr.refreshDokumentBody(forma, ime, ident, dokje);
                dr.refreshDokumentGrid(forma, ime, ident, "", "", dokje);
                break;
            }
        }
        public void refreshDokumentGrid(Form forma, string dokument, string iddok, string mUpit, string TUD, string DokumentJe)
        {
            Console.WriteLine(mUpit);
            Form      form1       = forma;
            string    tUpit       = "";
            string    tIme        = "";
            string    tud         = "";
            string    KojiSegment = "";
            string    ss          = "";
            int       brredova    = 0;
            DataTable tt          = new DataTable();

            string sql = "Select Naziv,UlazniIzlazni as NazivDokumenta from SifarnikDokumenta  where naziv=@param0";

            tt = db.ParamsQueryDT(sql, dokument);
            if (tt.Rows.Count > 0)
            {
                dokument = tt.Rows[0]["NazivDokumenta"].ToString();
            }                                                                              // naziv iz sifarnika dokumenata
            if (TUD.Trim() == "")
            {
                //jovana 20.4.2021.
                ss = " SELECT TUD, MaxHeight, Levo, Vrh, cWidth as Width, height, Upit, Ime "
                     + " FROM dbo.Upiti "
                     + " WHERE (NazivDokumenta = @param0 AND Ime Like'GgRr%') "
                     + " AND TUD>0  ORDER BY TUD";
            }
            else
            {
                //jovana 20.4.2021.
                ss = " SELECT TUD, MaxHeight, Levo, Vrh, cWidth as Width, height, Upit, Ime "
                     + " FROM dbo.Upiti "
                     + " WHERE (NazivDokumenta = @param0 AND Ime Like'GgRr%') "
                     + " AND TUD =" + TUD;
            }
            Console.WriteLine(ss);

            DataTable t = db.ParamsQueryDT(ss, dokument);

            for (int i = 0; i < t.Rows.Count; i++)
            {
                tIme        = t.Rows[i]["Ime"].ToString();
                KojiSegment = tIme.Substring(4, tIme.Length - 4);
                tud         = t.Rows[i]["TUD"].ToString();
                tUpit       = t.Rows[i]["Upit"].ToString();
                brredova    = Convert.ToInt32(t.Rows[i]["MaxHeight"]);
                if (tud == "1")
                {
                    ((Bankom.frmChield)forma).BrRedova = brredova;
                }

                ((Bankom.frmChield)forma).imegrida = tIme;

                if (mUpit.Trim() == "")
                {
                    tUpit = CreateQuery(tUpit, KojiSegment, iddok, dokument, DokumentJe);
                }
                else
                {
                    tUpit = mUpit;
                }
                ((Bankom.frmChield)forma).tUpit = tUpit;  // sacuvana tabela za grid pocetni upit
                Console.WriteLine(tUpit);
                //statusStrip1 - podaci o paging-u
                if (DokumentJe == "D" || DokumentJe == "I")
                {
                    ((Bankom.frmChield)forma).statusStrip1.Visible = false;// NEMA PAGING Djora 14.07.21
                }
                else
                {
                    ((Bankom.frmChield)forma).statusStrip1.Visible = true;//IMA PAGING
                }
                //    ovde je bila greska 30.12.20. otklonile smo if
                if (/*!*/ (((Bankom.frmChield)forma).Controls.Find(tIme, true).FirstOrDefault() is DataGridView dv))


                //    MessageBox.Show("Greska ne postoji grid");
                ///*else*/ // postoji grid
                {
                    if (((Bankom.frmChield)forma).statusStrip1.Visible == true)
                    {
                        Console.WriteLine(tUpit);
                        PripremiPaging(forma, ref tUpit, iddok);
                    }
                    tg = db.ReturnDataTable(tUpit);  // za datasource grida ako je prosao kroz PripremiPaging  tg samo slogove stranice inace sadrzi sve slogove iz upita

                    PripremiPodatkeZaGrid(forma, dv, dokument, tUpit, Convert.ToInt32(tud), iddok, tIme, DokumentJe);

                    dv.DataSource = tg;
                    if (dv.Columns.Count > 0)
                    {
                        //ivana 23.9.2021.
                        dv.DefaultCellStyle.SelectionBackColor = Color.FromArgb(((int)(((byte)(100)))), ((int)(((byte)(200)))), ((int)(((byte)(245)))));
                        setingWidthOfColumns(dokument, dv, tud.ToString());
                        if (dv.ColumnHeadersVisible == true)
                        {
                            AddColumnsText(dv, tud.ToString());
                        }
                        if (dokument == "LotStanjeRobeM")
                        {
                            colorofrows(dv);
                        }
                    }
                }
            }
        }
        public bool ProveraIspravnosti(Form forma)
        {
            bool ProveraIspravnosti = false;

            //forma = Program.Parent.ActiveMdiChild;

            sql = "Select Id_DokumentaView from GlavnaKnjiga where ID_DokumentaView =@param0";
            DataTable t = db.ParamsQueryDT(sql, iddokument);

            if (t.Rows.Count > 0)
            {
                if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Proknjizeno").Vrednost.Contains("Zatvaranje") == true)
                {
                    if (MessageBox.Show("Vec postoji glana knjiga zelite li je brisati ?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        sql = "Delete from GlavnaKnjiga where ID_DokumentaView =@param0";
                        ret = db.ParamsInsertScalar(sql, iddokument);
                    }
                }
            }

            if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Proknjizeno").Vrednost.Contains("MalaSalda") == true)
            {
                IznosZaOtpis = Prompt.ShowDialog("", "Unesite iznos za otpis ", " Otpis malih salda ");
                clsOperacije co = new clsOperacije();
                bool         r  = co.IsNumeric(IznosZaOtpis);
                if (r == false)
                {
                    MessageBox.Show("Pogresno unesen iznos ponovite !!!"); return(ProveraIspravnosti);
                }

                KontoPrihoda = Prompt.ShowDialog("", "Unesite konto za prihod ", " Otpis malih salda ").Trim();
                if (KontoPrihoda.Substring(1, 1) != "6")
                {
                    MessageBox.Show("Pogresno unesen konto prihoda !!!"); return(ProveraIspravnosti);
                }

                KontoTroskova = Prompt.ShowDialog("", "Unesite konto za troskove ", " Otpis malih salda ").Trim();
                if (KontoPrihoda.Substring(1, 1) != "5")
                {
                    MessageBox.Show("Pogresno unesen konto troskova !!!"); return(ProveraIspravnosti);
                }

                sql = "Delete from GlavnaKnjiga where ID_DokumentaView =@param0";
                ret = db.ParamsInsertScalar(sql, iddokument);
            }


            if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Proknjizeno").Vrednost.Contains("Otvaranje") == true)
            {
                if (forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Predhodni").Vrednost == "1")
                {
                    MessageBox.Show("Niste odabrali  prethodnika !!!");
                    return(ProveraIspravnosti);
                }

                sql = "Select Proknjizeno from Dokumenta where ID_Dokumenta =@param0";
                t   = db.ParamsQueryDT(sql, forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == "Predhodni").ID);
                if (t.Rows.Count > 0)
                {
                    if (t.Rows[0]["Proknjizeno"].ToString().Contains("Zatvaranje") == false)
                    {
                        MessageBox.Show("Niste odabrali zatvaranje kao prethodnika otvaranju!!!");
                        return(ProveraIspravnosti);
                    }
                }
            }

            ProveraIspravnosti = true;
            return(ProveraIspravnosti);
        }
        //Djora 22.10.20
        private void fifo(string gArtikal, string IDMagPoljeSirovine, string idskladiste, double pNeto, double ProizvedenaKol, string IDRN)
        {
            string sql = "";
            int    i   = 0;

            // Jovana 12.08.21
            mKolicinaLotLista.Clear();
            //Djora 22.10.20 Obrisati
            //gArtikal = "126";
            //IDMagPoljeSirovine = "283";
            //idskladiste = "175";
            //pNeto = 9.6;

            //sql = " SELECT ID_LotView, SUM(Stanje) AS saldo, ID_MagacinskaPolja "
            //    + " FROM StanjeRobeNaSkl "
            //    + " WHERE ID_ArtikliView=" + gArtikal
            //    + " AND ID_MagacinskaPolja in (" + IDMagPoljeSirovine + ") "
            //    + " AND ID_Skladiste = " + idskladiste
            //    + " GROUP BY ID_LotView, DatumIsteka, ID_MagacinskaPolja "
            //    + " HAVING (Sum(Stanje) > 0) "
            //    + " ORDER BY DatumIsteka";

            //Jovana 13.08.21 -menjala upit
            //sql = " ;WITH x(id_lot, Kumulativ, ID_MagacinskaPolja, barkod) AS "
            //    + " ( "
            //    + "     SELECT  ID_LotView, SUM(stanje) OVER(ORDER BY StanjeRobeNaSkl.DatumIsteka RANGE UNBOUNDED PRECEDING), ID_MagacinskaPolja, barkod "
            //    + "     FROM StanjeRobeNaSkl, lot "
            //    + "     WHERE ID_ArtikliView = @param0"
            //    + "     AND ID_MagacinskaPolja in (@param1) "
            //    + "     AND ID_Skladiste = @param2"
            //    + "     AND lot.id_lot = StanjeRobeNaSkl.ID_LotView "
            //    + " ) "
            //    + " SELECT x.id_lot, x.Kumulativ as Saldo, x.ID_MagacinskaPolja, barkod "
            //    + " FROM x WHERE x.Kumulativ <= @param3 "
            //    + " AND x.kumulativ > 0 "
            //    + " UNION ALL "
            //    + " SELECT top 1 x.id_lot, x.Kumulativ as Saldo, x.ID_MagacinskaPolja, barkod "
            //    + " FROM x WHERE x.Kumulativ > @param3 "
            //    + " ORDER BY x.kumulativ ";
            sql = " ;WITH x(  DatumIsteka, id_lot, Kumulativ,stanje, ID_MagacinskaPolja, barkod) AS "
                  + " ( "
                  + "     SELECT StanjeRobeNaSkl.DatumIsteka, ID_LotView, SUM(stanje) OVER( ORDER BY StanjeRobeNaSkl.DatumIsteka RANGE UNBOUNDED PRECEDING),"
                  + "     sum( stanje) OVER(PARTITION BY ID_LotView ORDER BY StanjeRobeNaSkl.DatumIsteka   RANGE UNBOUNDED PRECEDING),ID_MagacinskaPolja, barkod  "
                  + "     FROM StanjeRobeNaSkl, lot "
                  + "     WHERE ID_ArtikliView = @param0"
                  + "     AND ID_MagacinskaPolja in (@param1) "
                  + "     AND ID_Skladiste = @param2"
                  + "     AND lot.id_lot = StanjeRobeNaSkl.ID_LotView "
                  + " ) "
                  + " SELECT DISTINCT x.DatumIsteka, x.id_lot, x.Kumulativ as Saldo,x.stanje, x.ID_MagacinskaPolja, barkod "
                  + " FROM x WHERE x.Kumulativ <= @param3 "
                  + " AND x.kumulativ > 0 "
                  + " UNION ALL "
                  + " SELECT DISTINCT TOP 1 x.DatumIsteka, x.id_lot, x.Kumulativ as Saldo, x.stanje,x.ID_MagacinskaPolja, barkod "
                  + " FROM x WHERE x.Kumulativ > @param3 "
                  + " ORDER BY x.DatumIsteka ";
            DataBaseBroker db = new DataBaseBroker();

            DataTable dt4 = db.ParamsQueryDT(sql, gArtikal, IDMagPoljeSirovine, idskladiste, pNeto);

            if (dt4.Rows.Count > 0)
            {
                //Djora 26.05.21
                //Ako vec kod prvog imamo dovoljno kolicine onda zavrsi inace idi na granu gde cemo uzeti kolicine sa vise lotova
                if (Convert.ToDouble(dt4.Rows[0][3].ToString()) >= pNeto)
                {
                    mKolicinaLotLista.Add(new mKolicinaLot {
                        Kolicina = pNeto, Lot = Convert.ToInt32(dt4.Rows[0][1].ToString()), idMagPolje = Convert.ToInt32(dt4.Rows[0][4].ToString())
                    });
                }
                else
                {
                    // Jovana 11.08.21 menjala iz int u double
                    double pom2 = 0;
                    double pom  = Convert.ToDouble(dt4.Rows[0][3].ToString());


                    while (pom <= pNeto)
                    {
                        if (pom == pNeto)
                        {
                            break;
                        }

                        mKolicinaLotLista.Add(new mKolicinaLot {
                            Kolicina = Convert.ToDouble(dt4.Rows[i][3].ToString()), Lot = Convert.ToInt32(dt4.Rows[i][1].ToString()), idMagPolje = Convert.ToInt32(dt4.Rows[i][4].ToString())
                        });

                        pom2 = pom2 + Convert.ToDouble(dt4.Rows[i][3].ToString());
                        // Jovana 12.08.21 zamenila redosled
                        i   = i + 1;
                        pom = pom + Convert.ToDouble(dt4.Rows[i][3].ToString());
                        // i=i+1;
                    }

                    mKolicinaLotLista.Add(new mKolicinaLot {
                        Kolicina = pNeto - pom2, Lot = Convert.ToInt32(dt4.Rows[i][1].ToString()), idMagPolje = Convert.ToInt32(dt4.Rows[i][4].ToString())
                    });
                }
            }

            for (int k = 0; k < mKolicinaLotLista.Count; k++)
            {
                if (mKolicinaLotLista[k].Kolicina < 0)
                {
                    MessageBox.Show("Lot " + mKolicinaLotLista[k].Lot + " je u minusu !");
                    return;
                }
            }
            i = 0;
            for (int k = 0; k < mKolicinaLotLista.Count; k++)
            {
                // Jovana 12.08.21
                //if (i == 0)
                if (k == 0)
                {
                    //Djora 08.07.21
                    //sql = " update RadniNalogTotaliBarKod set kolicina=" + ProizvedenaKol.ToString() + ", izmerenakolicina=" + mKolicinaLotLista[k].Kolicina.ToString() + ",id_lot=" + mKolicinaLotLista[k].Lot.ToString() + ", uuser="******", ID_MagacinskaPolja=" + mKolicinaLotLista[k].idMagPolje.ToString()
                    sql = " update RadniNalogTotaliBarKod set kolicina=" + ProizvedenaKol.ToString() + ", izmerenakolicina=" + mKolicinaLotLista[k].Kolicina.ToString().Replace(",", ".") + ",id_lot=" + mKolicinaLotLista[k].Lot.ToString() + ", uuser="******", ID_MagacinskaPolja=" + mKolicinaLotLista[k].idMagPolje.ToString()
                          + " WHERE id_radninalogtotali=@param0 "
                          + " AND ID_SirovinaView=@param1 "
                          + " AND sarzabroj=@param2 ";

                    DataBaseBroker db2 = new DataBaseBroker();
                    DataTable      dt2 = db2.ParamsQueryDT(sql, IDRN, gArtikal, 1);
                }
                else
                {
                    // Jovana 12.08.21  nije bilo mKolicinaLotLista[k].Kolicina.ToString().Replace (",",".") vec mKolicinaLotLista[k].Kolicina.ToString()
                    sql = " INSERT INTO RadniNalogTotaliBarKod "
                          + " SELECT top 1 ID_RadniNalogTotali, OpisSkladistaU, NazivProizvoda, PlanskaCena, PlanskaVrednost, ID_SkladisteIz, "
                          + " ID_SirovinaView, ID_ProizvodView, OpisSkladista, ID_SkladisteU, JMProizvoda, " + i.ToString() + ", StaraSifra, NazivSirovine, "
                          + " JMSirovine, ProsecnaNabavnaCena, KolicinaSirovine, Vrednost, BrDok, Datum,  NazivSklIz , Receptura, " + ProizvedenaKol.ToString() + ", "
                          + " Voda, BrojSarzi, NazivSklU, DatumSmena, SumaVrednost, SumaKolicina, DomVal, PlanskaVrednostDomVal, SumaVrednostDomVal, "
                          + " VrednostDomVal, IIIDDD, IznosTroska, IznosTroskaDomVal, RazlikaRadnogNaloga, RazlikaRadnogNalogaDomVal, ID_SmenaView, "
                          + " ID_NormativView, " + mKolicinaLotLista[k].Kolicina.ToString().Replace(",", ".") + ", " + mKolicinaLotLista[k].Lot.ToString() + ", SarzaBroj, nosioc, uuser, veza, posto, " + mKolicinaLotLista[k].idMagPolje.ToString()
                          + " FROM RadniNalogTotaliBarKod "
                          + " WHERE id_radninalogtotali=@param0"
                          + " AND ID_SirovinaView=@param1"
                          + " AND sarzabroj=@param2";
                    //Console.WriteLine(sql);

                    DataBaseBroker db2 = new DataBaseBroker();
                    DataTable      dt2 = db2.ParamsQueryDT(sql, IDRN, gArtikal, 1);
                }
            }
        }
Beispiel #28
0
        public void ObrisiZaglavljeIStavkePoljaZaUnos()
        {
            DataBaseBroker db = new DataBaseBroker();

            forma = Program.Parent.ActiveMdiChild;
            //string dokje,string imestabla,string ime,string idstablo,string ident)
            string sql          = "";
            string dokje        = forma.Controls["ldokje"].Text;
            string imestabla    = forma.Controls["limestabla"].Text;
            string ident        = forma.Controls["liddok"].Text;
            string idstablo     = forma.Controls["lidstablo"].Text;
            string imedokumenta = forma.Controls["limedok"].Text;
            string NazivKlona   = "";

            dokje = forma.Controls["ldokje"].Text;

            if (dokje == "S")
            {
                imedokumenta = ((Bankom.frmChield)forma).imestabla;
            }
            else
            {
                imedokumenta = forma.Controls["limedok"].Text;
            }
            sql = "SELECT UlazniIzlazni as NazivKlona from SifarnikDokumenta where Naziv=@param0";
            DataTable dt = db.ParamsQueryDT(sql, imedokumenta);

            if (dt.Rows.Count != 0)
            {
                NazivKlona = dt.Rows[0]["NazivKlona"].ToString();
            }

            sql = "SELECT alijaspolja as polje,izborno from RecnikPodataka where  dokument=@param0 and TabIndex>=0 and width>0 and Height > 0 order by tabindex";
            DataTable drp = db.ParamsQueryDT(sql, NazivKlona);

            foreach (DataRow row in drp.Rows)
            {
                Field pb = (Field)Program.Parent.ActiveMdiChild.Controls[row["polje"].ToString()];

                if (pb != null)
                {
                    pb.Vrednost = "";
                    pb.cEnDis   = "";
                    switch (pb.VrstaKontrole)
                    {
                    case "tekst":
                        pb.textBox.Text = "";
                        //pb.textBox.Enabled = true; //ivana 18.3.2021.
                        break;

                    case "datum":

                        //Djora 16.06.21
                        if (Program.Parent.ActiveMdiChild.Controls["OOperacija"].Text == "PREGLED")
                        {
                            //Djora 08.06.21
                            //pb.dtp.Text = "";
                            pb.dtp.Format = DateTimePickerFormat.Custom;
                            //Djora 08.06.21
                            pb.dtp.CustomFormat = " ";
                        }
                        else
                        {
                            pb.dtp.Format       = DateTimePickerFormat.Custom;
                            pb.dtp.CustomFormat = "dd.MM.yyyy";
                            //Jovana 17.06.21
                            if (pb.cTip == 8)
                            {
                                pb.dtp.Value = Convert.ToDateTime(System.DateTime.Now);
                            }
                            else
                            {
                                // Jovana 19.08.21 stavila 6 umesto 8
                                //string mgodina = System.DateTime.Now.ToString().Substring(8, 2);
                                string mgodina = System.DateTime.Now.ToString().Substring(6, 2);
                                string mdatum  = "01.01." + mgodina;
                                pb.dtp.Value = Convert.ToDateTime(mdatum);
                            }
                        }

                        // Jovana 19.08.21 dodala
                        pb.Vrednost = pb.dtp.Text;

                        //pb.dtp.Enabled = true;    ivana 18.3.2021.
                        //pb.dtp.CustomFormat = "dd.MM.yy";
                        //pb.dtp.Format = DateTimePickerFormat.Custom;
                        break;

                    case "combo":
                        pb.ID       = "1";
                        pb.Vrednost = "";
                        pb.cIzborno = row["izborno"].ToString();
                        //pb.comboBox.Enabled = true;    ivana 18.3.2021.
                        pb.comboBox.Text          = "";
                        pb.comboBox.SelectedIndex = -1;

                        //Djora 05.05.21
                        pb.comboBox.DataSource = null;

                        //ivana 15.3.2021.
                        //Djora 05.05.21
                        //if (pb.comboBox.Items.Count > 0 && pb.comboBox.Name.Contains("Lot"))
                        pb.comboBox.Items.Clear();

                        break;
                    }
                }
            }
            foreach (var ctrls in forma.Controls.OfType <Field>())
            {
                switch (ctrls.VrstaKontrole)
                {
                case "grid":
                    ctrls.dv.Tag = "-1";
                    break;
                }
            }
        }
Beispiel #29
0
        public bool ObradiOpisTransakcije()
        {
            bool ObradiOpisTransakcije = false;

            //forma = new Form();
            forma        = Program.Parent.ActiveMdiChild;
            iddokview    = Convert.ToString(((Bankom.frmChield)forma).iddokumenta);
            idReda       = Convert.ToString(((Bankom.frmChield)forma).idReda);
            imedokumenta = forma.Controls["limedok"].Text;
            dokje        = forma.Controls["ldokje"].Text;

            //azuriramo tabelu transakcije za odabranu transakciju tako sto brisemo sve slogove koji imaju ID_dokumentaview=iddokview
            //i upisemo ih ponovo funkcijom UpisOpisaTransakcijeUTransakcije
            if (Convert.ToInt32(idReda) == -1 && forma.Controls["OOperacija"].Text == "IZMENA")
            {
                UpisOpisaTransakcijeUTransakcije(forma, iddokview, idReda);
                ObradiOpisTransakcije = true;
                return(ObradiOpisTransakcije);
            }

            //obradjujemo pojedinacnu stavku odabrane transakcije
            if (forma.Controls["OOperacija"].Text == "BRISANJE")
            {
                sql = "Select g.IDOpisTransa,g.brnal from glavnaknjiga as g,transakcije as t "
                      + "where t.id_opisTransakcijeStavke= @param0 and t.ID_Transakcije=g.IDOpisTransa AND Year(g.Datum)>=Year(getdate())-1";
                DataTable dt = db.ParamsQueryDT(sql, idReda);
                if (dt.Rows.Count != 0)
                {
                    MessageBox.Show("Transakcija je koristena ne moze se brisati!!!! ");
                    return(ObradiOpisTransakcije);
                }
                else
                {
                    if (ProveraIspravnosti() == false)
                    {
                        return(ObradiOpisTransakcije);
                    }
                }
            }

            sql = "Select* from Upiti WHERE NazivDokumenta = @param0 AND ime like 'Uu%'";
            DataTable du = db.ParamsQueryDT(sql, "dokumenta");

            if (du.Rows.Count == 0)
            {
                MessageBox.Show("Ne postoje upiti za transakciju! ");
                return(ObradiOpisTransakcije);
            }
            else
            {
                foreach (DataRow row in du.Rows)
                {
                    int IndUpisan = 0;
                    UpitiIme = row["Ime"].ToString();
                    if (row["Ime"].ToString().Contains("Stavke") == false) //upis zaglavlja
                    {
                        PoljeGdeSeUpisujeIId = "ID_DokumentaView";
                        iid = iddokview;
                        //da li je vec upisano zaglavlje
                        sql = "select ID_DokumentaView from " + row["Tabela"].ToString() + " where "
                              + "ID_DokumentaView = " + iddokview;
                        DataTable duz = db.ReturnDataTable(sql);
                        if (duz.Rows.Count != 0)
                        {
                            IndUpisan = 1;
                        }
                    }
                    else //upis u stavke
                    {
                        PoljeGdeSeUpisujeIId = "ID_" + row["Tabela"].ToString();
                        iid = idReda;
                    }

                    if (forma.Controls["OOperacija"].Text == "UNOS")
                    {
                        if (IndUpisan == 1) //vec postoji upisan slog u zaglavlje
                        {
                            if (IzmeniSlog() == false)
                            {
                                return(ObradiOpisTransakcije);
                            }
                            else
                            if (UpisiSlog(row["Tabela"].ToString().Trim()) == false)
                            {
                                return(ObradiOpisTransakcije);
                            }
                        }
                    }

                    if (forma.Controls["OOperacija"].Text == "IZMENA")
                    {
                        if (IzmeniSlog() == false)
                        {
                            return(ObradiOpisTransakcije);
                        }
                    }

                    if (forma.Controls["OOperacija"].Text == "BRISANJE")
                    {
                        if (BrisiStavku(row["Tabela"].ToString().Trim()) == false)
                        {
                            return(ObradiOpisTransakcije);
                        }
                    }
                }

                if (DovrsiObradu() == false)
                {
                    return(ObradiOpisTransakcije);
                }

                clsdokumentRefresh cdr = new clsdokumentRefresh();
                cdr.refreshDokumentBody(forma, imedokumenta, iddokview, dokje);
                cdr.refreshDokumentGrid(forma, imedokumenta, iddokview, "", "1", "");

                ObradiOpisTransakcije = true;
            }

            return(ObradiOpisTransakcije);
        }
        public bool Obradi(int IdDokView, ref int ID_DokumentaStablo, ref string Dokument, ref string BrDok)
        {
            bool Obradi = false;

            sql = "select distinct d.Dokument,d.ID_DokumentaStablo,BrDok,datum,Predhodni,ID_Predhodni from dokumentatotali as d WITH(NOLOCK) where  d.id_dokumentatotali=@param0 ";
            DataTable dt = db.ParamsQueryDT(sql, IdDokView);

            if (dt.Rows.Count != 0)
            {
                Dokument           = dt.Rows[0]["Dokument"].ToString();
                ID_DokumentaStablo = Convert.ToInt32(dt.Rows[0]["ID_DokumentaStablo"]);
                BrDok        = dt.Rows[0]["BrDok"].ToString();
                datum        = dt.Rows[0]["datum"].ToString();
                Prethodni    = dt.Rows[0]["Predhodni"].ToString();
                ID_Prethodni = dt.Rows[0]["ID_Predhodni"].ToString();
            }
            // Jovana 21.12.21
            if (ID_Prethodni == "1")
            {
                return(true);
            }

            sql = "select UlazniIzlazni  as NazivKlona,NacinRegistracije,PutanjaZaCuvanje,prikaz,vrsta,OdakleSePreuzima from SifarnikDokumenta where Naziv=@param0";
            DataTable dt1 = db.ParamsQueryDT(sql, Dokument);

            if (dt1.Rows.Count != 0)
            {
                NazivKlona        = dt1.Rows[0]["NazivKlona"].ToString();
                NacinRegistracije = dt1.Rows[0]["NacinRegistracije"].ToString();
                prikaz            = dt1.Rows[0]["prikaz"].ToString().Trim();
                DokumentJe        = dt1.Rows[0]["vrsta"].ToString().Trim();
                OdakleSePreuzima  = dt1.Rows[0]["OdakleSePreuzima"].ToString().Trim();
                PutanjaDokumenta  = dt1.Rows[0]["PutanjaZaCuvanje"].ToString().Trim();
            }
            //jovana 16.04.21 Dokument zamenila sa NazivKlona (ino avansni racun bio motiv)
            sql = "select oorderby as TrebaProvera from recnikpodataka where dokument=@param0 and oorderby>0 and oorderby<5";
            DataTable dt2 = db.ParamsQueryDT(sql, NazivKlona);

            if (dt2.Rows.Count != 0)
            {
                TrebaProvera = dt2.Rows[0]["TrebaProvera"].ToString();
            }

            if (Dokument.Trim() == "")
            {
                return(Obradi);
            }
            // provera dozvola se zove kod otvaranja forme
            clsProveraDozvola cPd = new clsProveraDozvola();

            Obradi = cPd.ProveriDozvole(Dokument, ID_DokumentaStablo.ToString(), IdDokView.ToString(), DokumentJe);

            if (Obradi == false)
            {
                MessageBox.Show("Nije dozvoljen pristup");
                return(Obradi);
            }

            sql = "select NazivJavni from dokumentastablo where id_dokumentastablo=@param0";
            DataTable dt3 = db.ParamsQueryDT(sql, ID_DokumentaStablo);

            if (dt3.Rows.Count != 0)
            {
                Naslov = dt3.Rows[0]["NazivJavni"].ToString();
            }

            if (NacinRegistracije == "B")
            {
                if (Dokument.Contains("OpisTransakcije") == true)
                {
                    return(true);
                }
                sql = "select ID_" + NazivKlona.Trim() + "Totali from " + NazivKlona.Trim() + "Totali where ID_" + NazivKlona.Trim() + "Totali=" + IdDokView;
                DataTable dt4 = db.ReturnDataTable(sql);
                if (dt4.Rows.Count != 0)
                {
                    if (NazivKlona != "PrometUplata")
                    {
                        return(true);
                    }
                }
            }
            if (NacinRegistracije == "W" || NacinRegistracije == "E" || NacinRegistracije == "P")
            {
                ObradaWordExcelPdf OWEP = new ObradaWordExcelPdf();
                //tamara 27.4.2021.
                OWEP.OtvoriDokument(NacinRegistracije, PutanjaDokumenta, BrDok, DokumentJe);
                return(false);
            }
            //tamara 7.5.2021.
            //Obradi = true;

            if (NacinRegistracije == "B" && OdakleSePreuzima.Trim() != "")
            {
                bool otvori = PovlacenjeSaPrethodnika(Dokument, IdDokView);
                //tamara 7.5.2021
                //if (otvori == false)
                //    Obradi = false;
            }

            // Jovana 21.12.21
            Prethodi = true;
            return(Obradi);
        }