Beispiel #1
0
        //public string Proces(string Stablo, string Dokument, int IdTree)
        //{
        //Form form1 = new Form();
        //form1 = Program.Parent.ActiveMdiChild;


        //mselect = "Select Upit From Upiti Where ime='GgRr" + Dokument + "StavkeView' AND TUD>0 Order by TUD";
        //DataTable tu = db.ReturnDataTable(mselect);
        //sselect = tu.Rows[0]["Upit"].ToString();

        //mselect = "Select idDok From RefreshGrida Where Dokument='" + Dokument+"' and imeupita like N'" +  "%StavkeView'";
        //tu = db.ReturnDataTable(mselect);

        //uslov = " Where " + tu.Rows[0]["idDok"] + "=-1";

        //int vv = sselect.IndexOf("GROUP BY");
        //if (vv > -1)

        //{
        //    Ggroup = sselect.Substring(vv);
        //    sselect = sselect.Substring(0, vv - 1);
        //}

        //sselect += uslov +" "+ Ggroup;
        //Console.WriteLine(sselect);

        //    return sselect;
        //}
        public string Proces(string Dokument, string TUD)
        {
            mselect = "Select Ime,Upit From Upiti Where Ime like'GgRr%' AND NazivDokumenta='" + Dokument + "' AND TUD=" + TUD;
            Console.WriteLine(mselect);
            DataTable tu = db.ReturnDataTable(mselect);

            sselect = tu.Rows[0]["Upit"].ToString();

            mselect = "Select idDok From RefreshGrida Where Dokument='" + Dokument + "' and ImeUpita='" + tu.Rows[0]["Ime"].ToString().Substring(4) + "'";
            Console.WriteLine(mselect);
            tu = db.ReturnDataTable(mselect);

            uslov = " Where " + tu.Rows[0]["idDok"] + "=-1";

            int vv = sselect.IndexOf("GROUP BY");

            if (vv > -1)

            {
                Ggroup  = sselect.Substring(vv);
                sselect = sselect.Substring(0, vv - 1);
            }

            sselect += uslov + " " + Ggroup;
            Console.WriteLine(sselect);

            return(sselect);
        }
        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 #3
0
        private void PrikaziZbirove(int mTUD)
        {
            clsFormInitialisation fi = new clsFormInitialisation();
            string ssel = " SElect AlijasPolja from RecnikPodataka Where TotalVSubtotal='S'  and Dokument =@param0" + " AND Width>0";

            t = db.ParamsQueryDT(ssel, Dokument);
            for (int k = 0; k < t.Rows.Count; k++)
            {
                var    pb    = forma.Controls.OfType <Field>().FirstOrDefault(n => n.IME == t.Rows[k]["AlijasPolja"].ToString());
                string ssel1 = "Select sum(" + t.Rows[k]["AlijasPolja"].ToString() + ") as zbir from Unija" + Dokument + " " + WWhere;
                Console.WriteLine(ssel1);
                tt = db.ReturnDataTable(ssel1);
                if (tt.Rows.Count > 0)
                {
                    Console.WriteLine(tt.Rows[0]["zbir"].ToString());
                    if (string.IsNullOrEmpty(tt.Rows[0]["zbir"].ToString()))
                    {
                        pb.Vrednost = "0";
                    }
                    else
                    {
                        pb.Vrednost = tt.Rows[0]["zbir"].ToString();
                    }
                    pb.textBox.Text = fi.FormatirajPolje(pb.Vrednost, pb.cTip);
                    //pb.textBox.Text=string.Format("{0:###,##0.00}", tt.Rows[0]["zbir"]);
                }
            }
        }
Beispiel #4
0
        //Djora 22.10.20
        //private static string vrednosti(string[,] arr, Form forma)
        private static string[,] vrednosti(string[,] arr, Form forma)
        {
            //string[,] niz= { };
            string[,] niz = new string[arr.GetLength(0), arr.GetLength(1)];
            DataBaseBroker db = new DataBaseBroker();

            //for (int i = 0; i < arr.GetLength(1); i++)
            for (int i = 0; i < arr.GetLength(0); i++)
            {
                //for (int j = 1; j < arr.GetLength(1); j++)
                //{

                //Control ctn = forma.Controls["t" + arr[i, 0]];
                Control ctn = forma.Controls["t" + i.ToString()];  //+ arr[i, 0]];

                Console.WriteLine(ctn.Name);
                Console.WriteLine(ctn.Text);

                niz[i, 0] = ctn.Name;

                if (ctn is ComboBox)
                {
                    // Jovana 18.10.21
                    if (((ComboBox)ctn).SelectedIndex == -1)
                    {
                        string    sql = "select ID from ( " + arr[i, 3] + " ) as t where Prikaz ='" + ctn.Text + "'";
                        DataTable t   = db.ReturnDataTable(sql);
                        if (t.Rows.Count != 0)
                        {
                            //   int index = ((ComboBox)ctn).FindStringExact(ctn.Text);
                            //cmbCategory.SelectedIndex = cmbCategory.Items.IndexOf(cmbCategory.Items.FindByText(TextValue));
                            niz[i, 1] = t.Rows[0]["ID"].ToString();
                        }
                        else
                        {
                            MessageBox.Show("Ne postoji uneta vrednost " + arr[i, 0]);
                            string[,] niz1 = { };
                            return(niz1);
                        }
                    }
                    else
                    {
                        niz[i, 1] = ((ComboBox)ctn).SelectedValue.ToString();
                    }
                }
                else
                {
                    niz[i, 1] = ctn.Text;
                }

                //}
            }

            //niz = { { "Kolicina", "1a" }, { "Cena", "2" }, { "Vrednost", "3" }, { "Potpis", "4" } };

            return(niz);
        }
Beispiel #5
0
        public string ProveriStanje(String Dokument, String IdDokumenta, ref SqlConnection con, ref SqlTransaction transaction)
        {
            DataBaseBroker db             = new DataBaseBroker();
            Dictionary <string, string> R = new Dictionary <string, string>();
            string    sql          = "";
            String    TrebaProvera = "";
            DataTable t            = new DataTable();

            sql = "SELECT OOrderBy  as trebaprovera from RecnikPodataka where Dokument='" + Dokument + "' And OOrderBy >0";
            Console.WriteLine(sql);
            t = db.ReturnDataTable(sql);
            if (t.Rows.Count == 0)
            {
                return("");
            }
            TrebaProvera = t.Rows[0]["trebaprovera"].ToString();

            if (Dokument.Contains("Lot") == true && TrebaProvera != "3")
            {
                R = db.ExucuteStoreProcedureDva("ProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
                if (R["@RezultatProvereStanja"].Trim() == "")
                {
                    R = db.ExucuteStoreProcedureDva("LotProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
                }
            }
            else if ((Dokument.Contains("Lot") == true && TrebaProvera == "3") || TrebaProvera == "3")  // provera samo magacinskog stanja
            {
                R = db.ExucuteStoreProcedureDva("LotProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
            }
            else
            {
                if (TrebaProvera == "4")     // provera lotovskih dokumenata koji nemaju prefiks LOT
                {
                    R = db.ExucuteStoreProcedureDva("ProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
                    if (R["@RezultatProvereStanja"].Trim() == "")
                    {
                        R = db.ExucuteStoreProcedureDva("LotProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
                    }
                }
                else       // Provera NELOTOVSKIH DOKUMENATA
                {
                    R = db.ExucuteStoreProcedureDva("ProveraStanja", ref con, ref transaction, "IdDokView:" + IdDokumenta, "RezultatProvereStanja:");
                }
            }
            //Djora 06.07.21
            //return R["@RezultatProvereStanja"].Trim();
            return(TrebaProvera + "|" + R["@RezultatProvereStanja"].Trim());
        }
        private DataTable GetDataSet()
        {
            //DataTable dt = new DataTable("Menu");
            //ovde se koristi MenuStablo tabela i ona ne odgovara php-u vise
            String SQL = ";  WITH RekurzivnoStablo (ID_MeniStablo,Naziv, NazivJavni,Brdok,Vezan,RedniBroj,ccopy, Level,slave,pd,pp) AS " +
                         "  (SELECT e.ID_MeniStablo,e.Naziv,e.NazivJavni,e.Brdok, e.Vezan,e.RedniBroj,e.ccopy,0 AS Level, CASE e.vrstacvora WHEN 'f' THEN 0 ELSE 1 END as slave,  PrikazDetaljaDaNe as pd,PrikazPo as pp " +
                         " FROM MeniStablo AS e WITH(NOLOCK)  where Naziv in (select g.naziv from Grupa as g, KadroviIOrganizacionaStrukturaStavkeView as ko Where(KO.ID_OrganizacionaStruktura = G.ID_OrganizacionaStruktura " +
                         "  Or KO.id_kadrovskaevidencija = G.id_kadrovskaevidencija)  And KO.ID_OrganizacionaStrukturaStablo = " + idfirme + " and ko.id_kadrovskaevidencija=" + idke + ")UNION ALL " +
                         " SELECT e.ID_MeniStablo,e.Naziv,e.NazivJavni,e.BrDok,e.Vezan,e.RedniBroj, e.ccopy,Level + 1 ,  CASE e.vrstacvora WHEN 'f' THEN 0 ELSE 1 END as slave,  PrikazDetaljaDaNe As pd, PrikazPo As pp " +
                         "   FROM MeniStablo AS e WITH(NOLOCK)  INNER JOIN RekurzivnoStablo AS d ON e.ID_MeniStablo = d.Vezan) " +
                         "   SELECT distinct ID_MeniStablo as MenuID, NazivJavni AS  MenuName,Vezan AS MenuParent,'Y' AS MenuEnable,'DEMO' AS USERID,Naziv, RedniBroj FROM RekurzivnoStablo WITH(NOLOCK) where ccopy= 0 and vezan<> 0  order by RedniBroj ";

            Console.WriteLine(SQL);
            dt = db.ReturnDataTable(SQL);
            return(dt);
        }
        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
Beispiel #8
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);
        }
        private static string CreateQuery(string KojiUpit, string KojiSegment, string iddok, string dokument, string DokumentJe) // vraca string
        {
            string UUslov       = null;
            string PocetakUpita = null;
            string KrajUpita    = null;
            string VN           = null; // dokument ima totale
            string NazivKlona   = null;

            DataTable tsd = db.ReturnDataTable("Select * from sifarnikdokumenta where naziv='" + dokument + "'");

            NazivKlona = tsd.Rows[0]["UlazniIzlazni"].ToString();
            VN         = "NE";
            DataTable rtt = db.ReturnDataTable("Select * from RefreshGrida where ImeUpita='" + KojiSegment + "'");

            if (rtt.Rows.Count == 0)
            {
                return(KojiUpit);
            }

            VN = rtt.Rows[0]["TotaliDaNe"].ToString();
            if (iddok != "0")
            {
                if (DokumentJe == "P")
                {
                    UUslov = rtt.Rows[0]["IdDok"].ToString() + ">" + iddok;
                }
                else
                {
                    if (dokument == "NalogZaRazduzenjeAmbalaze" && KojiSegment == "NalogZaRazduzenjeAmbalazeStavke1View")
                    {
                        DataTable rtp = db.ReturnDataTable("Select ID_Predhodni from dokumentaTotali Where ID_DokumentaTotali=" + iddok);
                        UUslov = rtt.Rows[0]["IdDok"].ToString() + "=" + (rtp.Rows[0]["ID_Predhodni"].ToString());
                    }
                    else
                    {
                        UUslov = rtt.Rows[0]["IdDok"].ToString() + "=" + iddok;
                    }
                }
            }

            if (VN == "NE")
            {
                KojiUpit = KojiUpit.Replace(NazivKlona + "Totali", rtt.Rows[0]["ImeUpita"].ToString());
            }

            if (UUslov != null && UUslov.Trim() != "")                                                  // uslov nije prazan
            {
                if (KojiUpit.Contains("WHERE") == false)                                                //  u upitu ne postoji rec WWHERE
                {
                    if (KojiUpit.Contains("ORDER BY") == true || KojiUpit.Contains("GROUP BY") == true) // u upitu postoje reci ORDER BY ili GROUP BY
                    {
                        if (KojiUpit.IndexOf("ORDER BY") > KojiUpit.IndexOf("GROUP BY") && KojiUpit.IndexOf("GROUP BY") > 0)
                        {
                            KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("GROUP BY"));
                            PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("GROUP BY") - 1);
                            KojiUpit     = PocetakUpita + " WHERE " + UUslov + " " + KrajUpita;
                        }
                        else
                        {
                            if (KojiUpit.IndexOf("ORDER BY") == -1)
                            {
                                KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("GROUP BY"));
                                PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("GROUP BY") - 1);
                                KojiUpit     = PocetakUpita + " WHERE " + UUslov + " " + KrajUpita;
                            }
                            else
                            {
                                KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("ORDER BY"));
                                PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("ORDER BY") - 1);
                                KojiUpit     = PocetakUpita + " WHERE " + UUslov + " " + KrajUpita;
                            }
                        }
                    }
                    else // u upitu ne postoji ni ORDER ni GROUP
                    {
                        KojiUpit = KojiUpit + " WHERE " + UUslov;
                    }
                }
                else  // uslov sadrzi WHERE
                {
                    KojiUpit = KojiUpit + " WHERE " + UUslov;
                }
            }
            else //  USLOV JE PRAZAN
            {
                KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("WHERE") + 5);
                PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("WHERE") + 5);
                Console.WriteLine(PocetakUpita);
                Console.WriteLine(KrajUpita);
                KojiUpit = PocetakUpita + UUslov + KrajUpita;
                Console.WriteLine(KojiUpit);
            }
            Console.WriteLine(KojiUpit);
            return(KojiUpit);
        }
        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}");
        }
Beispiel #11
0
        public void PovlacenjeAvansa(Form forma1, string KojiDok, int ParIdDok)

        {
            int             IdDokAvans = 1;
            string          KojiRacun  = "";
            List <string[]> lista      = new List <string[]>();
            string          strParams  = "";

            SqlCommand cmd = new SqlCommand();

            if (KojiDok == "PDVIzlazniRacunZaUsluge" || KojiDok == "PDVUlazniRacunZaUsluge")
            {
                KojiRacun = "RacunZaUsluge";
            }
            else
            {
                KojiRacun = "Racun";
            }

            //Jovana 25.05.21
            foreach (var pb in forma1.Controls.OfType <Field>())
            {
                if (pb.IME == "Avansi")
                {
                    IdDokAvans = Convert.ToInt32(pb.ID);
                }
            }
            //IdDokAvans = Convert.ToInt32(forma1.Controls.OfType<Field>().FirstOrDefault(n => n.IME == "Avansi").ID);

            if (IdDokAvans == 1)
            {
                strParams  = "";
                strParams += "@param1=" + ParIdDok;

                cmd.CommandType = CommandType.Text;
                str             = "Update " + KojiRacun + "Stavke set IznosAvansa = 0 WHERE ID_dokumentaView = @param1";
                lista.Add(new string[] { str, strParams });            /////...
                lista.ToArray();
                string rezultat = db.ReturnSqlTransactionParams(lista);
                // cmd.CommandText = str;
                //  db.Comanda(cmd);
                //  cmd.Dispose();
                return;
            }
            str  = "delete from " + KojiRacun + "Stavke Where id_ArtikliView= 1 AND ";
            str += "ID_dokumentaView =" + ParIdDok.ToString();

            cmd             = new SqlCommand();
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = str;
            db.Comanda(cmd);
            cmd.Dispose();

            str             = "Select Sum(IznosAvansa) as UpisaniAvansi from ";
            str            += KojiRacun + "Stavke where ID_dokumentaView =" + ParIdDok.ToString();
            cmd             = new SqlCommand();
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = str;
            db.Comanda(cmd);
            cmd.Dispose();

            str  = "Select Sum(IznosAvansa) as UpisaniAvansi from ";
            str += KojiRacun + "Stavke where ID_dokumentaView = " + ParIdDok.ToString();
            DataTable dt = db.ReturnDataTable(str);


            switch (dt.Rows.Count)
            {
            case 0:
                break;

            default:
                UpisiAvans(forma1, KojiDok, KojiRacun, ParIdDok, IdDokAvans, "Update", 0);
                break;
            }
        }
Beispiel #12
0
        //public static string Prikazi(string[,] arr)
        //ivana 19.10.2021.
        public static string[,] Prikazi(string[,] arr, string rec)
        {
            Form prompt = new Form()
            {
                //MaximizeBox = false,
                //MinimizeBox = false,
                Width = 450,
                //Height = 300,
                FormBorderStyle = FormBorderStyle.FixedDialog,
                //ivana 19.10.2021.
                //Text = "Ovo je naslov",
                Text          = "",
                StartPosition = FormStartPosition.CenterScreen
            };

            //Djora 02.09.21
            //prompt.FormBorderStyle = FormBorderStyle.FixedSingle;
            prompt.Font        = new Font("TimesRoman", Program.FontVelicina, FontStyle.Regular, GraphicsUnit.Point, ((Byte)(0)));
            prompt.MaximizeBox = false;
            prompt.MinimizeBox = false;

            int iniVrh = 10;
            int vrh    = iniVrh;

            System.Diagnostics.Debug.WriteLine(arr.GetLength(0));

            // Display the array elements.
            //for (int i = 0; i < arr.GetLength(0); i++)
            //{
            for (int i = 0; i < arr.GetLength(0); i++)
            {
                vrh = iniVrh * 3 * (i + 1);
                //System.Console.WriteLine("Element({0},{1})={2}", i, j, arr[i, j]);
                //Djora 02.09.21
                //Label textLabel = new Label() { Left = 10, Top = vrh, Text = arr[i, 0], Width = 150 };
                Label textLabel = new Label()
                {
                    Left = 10, Top = vrh, Text = arr[i, 0], AutoSize = true
                };                                                                                             //, Width = 150 };

                if (arr[i, 2] == "t")
                {
                    //Djora 02.09.21
                    //TextBox textBox = new TextBox() { Left = textLabel.Width + 10, Top = vrh, Width = 270 };
                    TextBox textBox = new TextBox()
                    {
                        Left = textLabel.Width + 10, Top = vrh
                    };
                    prompt.Controls.Add(textLabel);
                    prompt.Controls.Add(textBox);

                    textBox.Text = arr[i, 1];
                    textBox.Name = "t" + i.ToString(); // arr[i, 0];

                    textLabel.Text = arr[i, 0];
                    textLabel.Name = "l" + i.ToString();  //arr[i, 1];
                    //ivana 19.10.2021.
                    if (rec == "Mail" && i < 2)
                    {
                        textLabel.Visible = false;
                        textBox.Visible   = false;
                    }
                }
                else if (arr[i, 2] == "c")
                {
                    //Djora 02.09.21
                    //ComboBox textBox = new ComboBox() { Left = textLabel.Width + 10, Top = vrh, Width = 270 };
                    ComboBox textBox = new ComboBox()
                    {
                        Left = textLabel.Width + 10, Top = vrh
                    };
                    prompt.Controls.Add(textLabel);
                    prompt.Controls.Add(textBox);

                    textBox.Text = arr[i, 1];
                    textBox.Name = "t" + i.ToString();  //+ arr[i, 0];

                    textLabel.Text = arr[i, 0];
                    textLabel.Name = "l" + i.ToString(); //+ arr[i, 1];

                    DataBaseBroker db = new DataBaseBroker();
                    DataTable      dt = db.ReturnDataTable(arr[i, 3]);

                    //if (dt.Rows.Count > 0)
                    //{
                    //  foreach (var row in dt.Rows)
                    // {
                    //dt.Rows[0][1].ToString();
                    textBox.DataSource    = dt;
                    textBox.DisplayMember = "Prikaz";
                    textBox.ValueMember   = "ID";
                    //  }
                    //}
                }
                else if (arr[i, 2] == "d")
                {
                    DateTimePicker dtp = new DateTimePicker()
                    {
                        Left = textLabel.Width + 10, Top = vrh, Width = 270
                    };
                    prompt.Controls.Add(textLabel);
                    prompt.Controls.Add(dtp);

                    dtp.Name       = "t" + i.ToString(); //+ arr[i, 0];
                    textLabel.Name = "l" + i.ToString(); //+ arr[i, 1];
                }
            }
            //}

            Button confirmation = new Button()
            {
                Text = "Ok", Left = 30, Width = 100, Top = vrh + 50, DialogResult = DialogResult.OK, AutoSize = true
            };
            Button confirmationc = new Button()
            {
                Text = "Cancel", Left = 200, Width = 100, Top = vrh + 50, DialogResult = DialogResult.Cancel, AutoSize = true
            };

            prompt.Controls.Add(confirmation);
            prompt.Controls.Add(confirmationc);
            //ivana 6.10.2021. pomerila sam levo, da bi se videli celi dugmici
            confirmationc.Left  = prompt.Width - confirmationc.Width - 140;
            confirmation.Left   = confirmationc.Left - confirmation.Width - 70;
            confirmation.Click += (sender, e) => { prompt.Close(); };
            prompt.AcceptButton = confirmation;

            prompt.Height = confirmation.Top + confirmation.Height + iniVrh + 50;

            //prompt.Show();

            string[,] niz = { };

            //Djora 02.09.21
            prompt.BackColor = Color.FromArgb(Int32.Parse(Program.TableBackColor));


            //Djora 02.09.21
            IzgledDijaloga(prompt);


            //return prompt.ShowDialog() == DialogResult.OK ? vrednosti(arr, prompt) : "";
            return(prompt.ShowDialog() == DialogResult.OK ? vrednosti(arr, prompt) : niz);
            //return "aa";
        }
Beispiel #13
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 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);
        }
Beispiel #15
0
        public string Slovima(double KojiBroj, string KojaValuta)
        {
            //Jovana 05.01.21
            double U = Math.Abs(KojiBroj);
            // double U =  KojiBroj;
            double Broj;
            double Ost;
            double CeoDeo;
            double Ceo;
            double Ostatak;
            int    k;
            double OstOst;
            double CeoOst;
            double pom;
            string sSlovima = "";

            CeoDeo = (U - (Mod2(U, 100))) / 100;
            if (CeoDeo < 0)
            {
                Broj = -1 * CeoDeo;
            }
            else
            {
                Broj = CeoDeo;
            }
            Ost     = Mod2(U, 100);
            Ceo     = (Broj - (Mod2(Broj, 1000))) / 1000;
            k       = 1;
            Ostatak = Mod2(Broj, 1000);

            do
            {
                OstOst = Mod2(Ostatak, 100);
                CeoOst = (Ostatak - (Mod2(Ostatak, 100))) / 100;
                if (OstOst < 10)
                {
                    DataTable Pretraga = db.ReturnDataTable("Select * from Brojevi Where BR=" + OstOst.ToString());
                    if (k == 1)
                    {
                        if (OstOst == 1)
                        {
                            sSlovima = Pretraga.Rows[0][k].ToString();
                        }
                        else
                        {
                            if (OstOst != 0)
                            {
                                sSlovima = Pretraga.Rows[0][k].ToString();
                            }
                        }
                    }
                    else
                    {
                        //Jovana 05.01.21
                        if (sSlovima.IndexOf("hiljada") == 0)
                        {
                            sSlovima = sSlovima.Substring(7, sSlovima.Length - 7);
                        }
                        sSlovima = string.Concat(Pretraga.Rows[0][k].ToString(), sSlovima);
                    }
                }
                else
                {
                    if (OstOst < 20 && OstOst > 10)
                    {
                        DataTable Pretraga = db.ReturnDataTable("Select * from Brojevi Where BR=" + OstOst.ToString());
                        if (k == 1)
                        {
                            sSlovima = Pretraga.Rows[0]["JEDINICA"].ToString();
                        }
                        else
                        {
                            sSlovima = string.Concat(Pretraga.Rows[0][k].ToString(), sSlovima);
                        }
                    }
                    else
                    {
                        if (k == 1)
                        {
                            pom = Mod2(OstOst, 10);
                            if (pom != 0)
                            {
                                DataTable Pretraga1 = db.ReturnDataTable("Select * from Brojevi Where BR=" + pom.ToString());
                                //if (pom == 1)
                                //{
                                //    sSlovima = Pretraga1.Rows[0][k].ToString();
                                //}
                                //else
                                //{
                                sSlovima = (Pretraga1.Rows[0][k].ToString());
                                //}
                            }
                            pom = (OstOst - (Mod2(OstOst, 10))) / 10;
                            DataTable Pretraga2 = db.ReturnDataTable("Select * from Brojevi Where BR=" + pom.ToString());
                            sSlovima = string.Concat(Pretraga2.Rows[0]["DESETICA"].ToString(), sSlovima);/// Pretraga!desetica + sSlovima
                        }
                        else
                        {
                            pom = Mod2(OstOst, 10);
                            if (pom != 0)
                            {
                                DataTable Pretraga3 = db.ReturnDataTable("Select * from Brojevi Where BR=" + pom.ToString());
                                sSlovima = string.Concat(Pretraga3.Rows[0][k].ToString(), sSlovima);
                            }
                            pom = ((OstOst - (Mod2(OstOst, 10))) / 10);
                            //DataTable Pretraga5 = db.ReturnDataTable("Select * from Brojevi Where BR=" + pom.ToString());
                            if (k != 1 && (Mod2(OstOst, 10)) == 0)
                            {
                                DataTable Pretraga6 = db.ReturnDataTable("Select * from Brojevi Where BR=0");
                                sSlovima = string.Concat(Pretraga6.Rows[0][k].ToString(), sSlovima);
                            }
                            DataTable Pretraga = db.ReturnDataTable("Select * from Brojevi Where BR=" + pom.ToString());
                            sSlovima = string.Concat(Pretraga.Rows[0]["DESETICA"].ToString(), sSlovima);
                        }
                    }
                }
                if (CeoOst == -1)
                {
                    CeoOst = 0;
                }
                if (CeoOst != 0)
                {
                    DataTable Pretraga = db.ReturnDataTable("Select * from Brojevi Where BR=" + CeoOst.ToString());
                    sSlovima = string.Concat(Pretraga.Rows[0]["STOTINA"].ToString(), sSlovima);
                }
                if (k == 1)
                {
                    k = k + 3;
                }
                else
                {
                    if (k == 4)
                    {
                        k = k + 1;
                    }
                    else
                    {
                        k = 1;
                    }
                }
                Broj    = Ceo;
                Ostatak = Mod2(Ceo, 1000);
                Ceo     = (Ceo - (Mod2(Ceo, 1000))) / 1000;
            } while (Broj != 0);  // kraj do while

            double aaaa = Mod2(U, 100);

            //if (Mod2(U, 100) != 0)
            //{
            sSlovima = string.Concat(sSlovima, " ", KojaValuta, " ", Convert.ToString(aaaa), "/100 ");
            //Jovana 05.01.21
            //
            if (KojiBroj < 0)
            {
                sSlovima = "minus " + sSlovima;
            }

            //}
            //else
            //{
            //sSlovima = string.Concat(sSlovima, " ", "RSD", " 0/100");
            //}

            return(sSlovima);
        }
        private static string CreateQuery(string KojiUpit, string KojiSegment, string iddok, string dokument, string DokumentJe) // vraca string
        {
            string UUslov       = null;
            string PocetakUpita = null;
            string KrajUpita    = null;
            string VN           = null; // grid vezan da ne
            string NazivKlona   = null;

            DataTable tsd = db.ReturnDataTable("Select * from sifarnikdokumenta where naziv='" + dokument + "'");

            NazivKlona = tsd.Rows[0]["UlazniIzlazni"].ToString();
            DataTable rtt = db.ReturnDataTable("Select * from RefreshGrida where ImeUpita='" + KojiSegment + "'");

            VN = rtt.Rows[0]["TotaliDaNe"].ToString();

            if (iddok != "0")
            {
                if (DokumentJe == "P")
                {
                    UUslov = rtt.Rows[0]["IdDok"].ToString() + ">" + iddok;
                }
                else
                {
                    if (dokument == "NalogZaRazduzenjeAmbalaze" && KojiSegment == "NalogZaRazduzenjeAmbalazeStavke1View")
                    {
                        DataTable rtp = db.ReturnDataTable("Select ID_Predhodni from dokumentaTotali Where ID_DokumentaTotali=" + iddok);
                        UUslov = rtt.Rows[0]["IdDok"].ToString() + "=" + (rtp.Rows[0]["ID_Predhodni"].ToString());
                    }
                    else
                    {
                        UUslov = rtt.Rows[0]["IdDok"].ToString() + "=" + iddok;
                    }
                }
            }

            if (VN == "NE")
            {
                KojiUpit = KojiUpit.Replace(NazivKlona + "Totali", rtt.Rows[0]["ImeUpita"].ToString());
            }


            if (UUslov != null && UUslov.Trim(' ') != "")                                               // uslov nije prazan
            {
                if (KojiUpit.Contains("WHERE") == false)                                                //  u upitu ne postoji rec WWHERE
                {
                    if (KojiUpit.Contains("ORDER BY") == true || KojiUpit.Contains("GROUP BY") == true) // u upitu postoje reci ORDER BY ili GROUP BY
                    {
                        if (KojiUpit.Contains("GROUP BY") == true && KojiUpit.Contains("ORDER BY") == false)
                        {
                            KrajUpita    = KojiUpit.Substring(0, KojiUpit.IndexOf("GROUP BY"));
                            PocetakUpita = KojiUpit.Substring(1, KojiUpit.IndexOf("GROUP BY") - 1);
                        }
                        if (KojiUpit.Contains("ORDER BY") == true && KojiUpit.Contains("GROUP BY") == false)
                        {
                            KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("ORDER BY"));
                            PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("ORDER BY") - 1);
                            KojiUpit     = string.Concat(PocetakUpita + " WHERE " + UUslov + " " + KrajUpita);
                        }
                        if (KojiUpit.Contains("ORDER BY") == false)
                        {
                            KrajUpita    = KojiUpit.Substring(0, KojiUpit.IndexOf("GROUP BY"));
                            PocetakUpita = KojiUpit.Substring(1, KojiUpit.IndexOf("GROUP BY") - 1);
                        }
                        //if (KojiUpit.Contains("ORDER BY") == true)
                        //{
                        //    KrajUpita = KojiUpit.Substring(KojiUpit.IndexOf("ORDER BY"));
                        //    PocetakUpita = KojiUpit.Substring(0, KojiUpit.IndexOf("ORDER BY") - 1);
                        //    KojiUpit = string.Concat(PocetakUpita + " WHERE " + UUslov + " " + KrajUpita);
                        //}
                        //KojiUpit = string.Concat(PocetakUpita, " WHERE ", UUslov, " ", KrajUpita);
                    }
                    else
                    {
                        KojiUpit = string.Concat(KojiUpit, " WHERE ", UUslov);
                    }
                }
                else  // WHERE nije prazan
                {
                    KojiUpit = string.Concat(KojiUpit, " WHERE ", UUslov);
                }
            }    // raj uslov nije prazan
            else //  USLOV JE PRAZAN
            {
                KrajUpita    = KojiUpit.Substring(KojiUpit.IndexOf("WHERE") + 5);
                PocetakUpita = KojiUpit.Substring(1, KojiUpit.IndexOf("WHERE") + 5);
                KojiUpit     = string.Concat(PocetakUpita, UUslov, " AND ", KrajUpita);
            }
            return(KojiUpit);
        }
        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;
            }
        }
        private string CreateQuery(string Stablo, string Dokument)
        {
            string Ddokument = "";
            string sselect   = "";
            string uslov     = "";
            string Oorder    = "";
            string stab      = "";
            string sifusif   = "";
            string sifra     = "";

            Ddokument = Dokument;
            bool   ProveraGodine = false;
            string mselect       = "";
            int    idFirme       = Program.idFirme;
            string Firma         = Program.imeFirme; ////"Bankom";

            stab = Stablo.Trim() + "Stablo";
            if (Stablo != "")
            {
                sifusif = "Sif" + Stablo.Substring(0, 3);
            }
            mselect = "Select Upit From Upiti Where ime='GgRr" + Stablo + "StavkeView'";

            DataTable tu = db.ReturnDataTable(mselect);

            if (tu.Rows.Count > 0)
            {
                sselect = tu.Rows[0]["Upit"].ToString() + " as s ";
                if (Stablo == "Komitenti" && Firma != "Leotar")
                {
                    Oorder = "  order by  s.NazivKom ";
                }
                else
                {
                    Oorder = "  order by  s.id_" + Stablo.Trim() + "Totali desc";
                }
            }
            if (Stablo == "Dokumenta")
            {
                mselect = "Select sifra,Naziv,PrikazDetaljaDaNe,VrstaCvora,PrikazPo,OgraniceneGodine from " + stab + " WITH(NOLOCK) where ID_" + stab + "=" + Convert.ToString(IDStablo);
                Console.WriteLine(mselect);
            }
            else
            {
                mselect = "Select sifra,Naziv,PrikazDetaljaDaNe,VrstaCvora,PrikazPo from " + stab + " WITH(NOLOCK) where ID_" + stab + "=" + Convert.ToString(IDStablo);
            }
            DataTable ts = db.ReturnDataTable(mselect);

            if (ts.Rows.Count > 0)
            {
                sifra = ts.Rows[0]["sifra"].ToString();
                switch (ts.Rows[0]["PrikazDetaljaDaNe"].ToString())
                {
                case "0":                // nema tabelu na nivou detalja : izvestaji , pomocni sifarnici
                {
                    sselect = "";
                    Oorder  = "";
                    break;
                }

                case "1":                  // ima tabelu na nivou detalja  : dokumenta
                {
                    if (ts.Rows[0]["VrstaCvora"].ToString() == "d")
                    {
                        switch (ts.Rows[0]["PrikazPo"].ToString()) // Uslov za prikaz pripadajucih clanova
                        {
                        case "0":                                  // uslov = firma ;  prikazuju se samo clanovi koji pripadaju firmi(DOKUMENTA)
                            uslov   = " WHERE s.ID_" + stab + "=" + IDStablo.ToString() + " and s.nazivorg=ss.NazivOrg And ss.ID_OrganizacionaStrukturaStablo=" + idFirme.ToString();
                            sselect = sselect + ",OrganizacionaStrukturaStavkeView as  ss ";
                            sselect = sselect.Replace("NazivOrg", "s.NazivOrg");
                            sselect = sselect.Replace("IId", "s.IId");
                            Console.WriteLine(sselect);
                            break;

                        case "1":                            //idstablo prikazuju se samo clanovi koji imaju isti IDSTABLO(ista vrsta dokumenata npr svi InoRacuni)

                            uslov = " WHERE s.ID_" + stab + "=" + IDStablo.ToString();
                            break;

                        case "2":                           // sve prikazuju se svi podaci bez ogranicenja
                            uslov = " WHERE s." + sifusif + " like '" + sifra.Trim() + "%'  ";
                            break;
                        }
                    }
                    else
                    {
                        sselect = "";
                        Oorder  = "";
                        break;
                    }
                    break;
                }

                case "2":             // ima tabelu na nivou grupe : artikli,komitnti,organizaciona struktura
                {
                    if (ts.Rows[0]["VrstaCvora"].ToString() == "d")
                    {
                        uslov = " WHERE s.ID_" + stab.ToString() + "=" + IDStablo.ToString() + " and ccopy=0";
                        break;
                    }
                    else
                    {
                        uslov = " WHERE s." + sifusif + " like '" + sifra.ToString() + "%' and s.ccopy=0 ";
                        break;
                    }
                }
                }
                //treba se vrsiti provera godine dokumenta
                ProveraGodine = false;
                if (Stablo == "Dokumenta")
                {
                    if (ts.Rows[0]["OgraniceneGodine"].ToString() == "1") //mogu se videti samo one godine koje su dozvoljene za prijavljenog user-a
                    {
                        //Djora 14.07.21  zagradio Pocetak -------------------
                        //if (Program.mGodina>0 )
                        //{
                        //   uslov += " AND YEAR(s.datum) >="+Program.mGodina.ToString();
                        //    Console.WriteLine(uslov);

                        //}
                        //Djora 14.07.21  zagradio kraj -------------------

                        //Djora 14.07.21 pocetak -----------------
                        if (Program.mGodina2 != "")
                        {
                            uslov += Program.mGodina2.Replace("WHERE", " AND ");
                            Console.WriteLine(uslov);
                        }
                        //Djora 14.07.21 kraj --------------------
                    }
                }
                else
                {
                    ProveraGodine = true;
                    /// uslov = uslov + " AND " + mGodine.Replace("WHERE", "");
                }

                sselect = string.Concat(sselect, uslov, Oorder);
                Console.WriteLine(sselect);
            }

            return(sselect);
        }
Beispiel #19
0
        //Program.Parent.menustrip2 menustrip2 = new System.Windows.Forms.MenuStrip();
        public void Proccess()
        {
            DataBaseBroker db      = new DataBaseBroker();
            string         sselect = "; WITH RekurzivnoStablo (ID_MenuCsStablo,Naziv, NazivJavni,BrDok,Vezan,RedniBroj,ccopy, Level,slave,pd,pp) AS "
                                     + "(SELECT e.ID_MenuCsStablo,e.Naziv,e.NazivJavni,e.BrDok, e.Vezan,e.RedniBroj,e.ccopy,0 AS Level, CASE e.vrstacvora WHEN 'f' THEN 0 ELSE 1 END as slave,"
                                     + "  PrikazDetaljaDaNe as pd,PrikazPo as pp "
                                     + "FROM MenuCsStablo AS e WITH (NOLOCK)"
                                     + " UNION ALL "
                                     + " SELECT e.ID_MenuCsStablo,e.Naziv,e.NazivJavni, e.BrDok,e.Vezan,e.RedniBroj, e.ccopy,Level +1 ,  CASE e.vrstacvora WHEN 'f' THEN 0 ELSE 1 END as slave,"
                                     + "PrikazDetaljaDaNe As pd, PrikazPo As pp "
                                     + " FROM MenuCsStablo AS e INNER JOIN RekurzivnoStablo AS d "
                                     + " ON e.ID_MenuCsStablo = d.Vezan) "
                                     + " SELECT distinct ID_MenuCsStablo as ID, NazivJavni,Naziv,BrDok, Vezan,RedniBroj, slave,pd, pp  FROM RekurzivnoStablo "
                                     + " where ccopy=0 order by RedniBroj";
            DataTable ti = db.ReturnDataTable(sselect);
            DataTable tj = ti;

            if (ti.Rows.Count > 0)
            {
            }

            //PUNIStablo:

            string Naziv      = "";
            string JavniNaziv = "";
            string Parent     = "";
            int    vveza      = 0;
            int    i          = 0;
            int    j          = 0;
            int    slave;
            int    ttag   = 0;
            int    upisan = 0;

            //var menustrip2 = new System.Windows.Forms.MenuStrip();

            //var pparent = new System.Windows.Forms.ToolStripMenuItem();
            do     // po i
            {
                if (vveza != Convert.ToInt32(ti.Rows[i]["vezan"]))
                {
                    vveza = Convert.ToInt32(ti.Rows[i]["vezan"]);
                }
                Naziv      = ti.Rows[i]["Naziv"].ToString();
                JavniNaziv = ti.Rows[i]["NazivJavni"].ToString();
                if (Naziv == "ProcesiranjeDnevnogIzvestaja")
                {
                    upisan = 1;
                    break;
                }
                if (vveza != ttag)
                {
                    slave = Convert.ToInt32(ti.Rows[i]["slave"]);
                    ttag  = Convert.ToInt32(ti.Rows[i]["ID"]);
                    AddMenu(Naziv, JavniNaziv, slave, ttag);
                    if (slave == 0)      // ima decu
                    {
                        j = 0;
                        do     //po j // pronadji svu decu
                        {
                            if (Convert.ToInt32(tj.Rows[j]["vezan"]) == ttag)
                            {
                                Naziv      = tj.Rows[j]["Naziv"].ToString();
                                JavniNaziv = ti.Rows[j]["NazivJavni"].ToString();
                                slave      = 3;  ////    deca                Convert.ToInt32(ti.Rows[j]["slave"]);
                                AddMenu(Naziv, JavniNaziv, slave, ttag);
                            }
                            else
                            {
                            }
                            j = j + 1;
                        }while (j < tj.Rows.Count);        /// kraj while po j
                    }
                }
                i = i + 1;
            }while (i < ti.Rows.Count); //kraj while po i
        }                               // kraj obradastablaNew.
        public int UpisiDokument(ref string BrojDok, string Opis, int IdDokumentaStablo, string Datum)
        {
            clsOperacije    co          = new clsOperacije();
            string          strTabela   = "Dokumenta";
            string          strParams   = "";
            List <string[]> lista       = new List <string[]>();
            string          dokType     = "";
            string          str         = "";
            string          rezultat    = "";
            string          Proknjizeno = "";

            int newID = 0;

            forma = Program.Parent.ActiveMdiChild;
            string NazivDokumenta = "";
            int    ParRb          = 0;
            string knjizise       = "";

            BrojDok = KreirajBrDokNovi(ref ParRb, Datum, IdDokumentaStablo, "UNOS");
            clsMesecPoreza mp          = new clsMesecPoreza();
            int            MesecPoreza = mp.ObradiMesecPoreza(Datum);

            sql  = "Select s.KnjiziSe,s.Naziv from SifarnikDokumenta as s,DokumentaStablo as d  where d.ID_DokumentaStablo=" + IdDokumentaStablo;
            sql += " AND s.naziv =d.Naziv";
            t    = db.ReturnDataTable(sql);
            if (t.Rows.Count > 0)
            {
                knjizise       = t.Rows[0]["KnjiziSe"].ToString();
                NazivDokumenta = t.Rows[0]["Naziv"].ToString();
                if (knjizise.ToUpper().Contains("N") == true)
                {
                    Proknjizeno = "NeKnjiziSe";
                }
                else
                {
                    Proknjizeno = "NijeProknjizeno";
                }
            }
            dokType    = "D";
            strParams  = "";
            strParams  = "@param1=" + ParRb.ToString() + "`";
            strParams += "@param2=" + Program.idkadar.ToString() + "`";
            strParams += "@param3=" + IdDokumentaStablo.ToString() + "`";
            strParams += "@param4=" + BrojDok + "`";
            strParams += "@param5=" + Datum + "`";
            strParams += "@param6=" + Opis + "`";
            strParams += "@param7=" + Program.idOrgDeo.ToString() + "`";
            strParams += "@param8=" + Proknjizeno + "`";
            strParams += "@param9=" + Convert.ToString(MesecPoreza) + "`";
            strParams += "@param10=" + Program.idkadar.ToString() + "`";
            // Jovana 02.11.21 dodat UUser
            str  = "Insert Into Dokumenta ( [RedniBroj], [ID_KadrovskaEvidencija],";
            str += " [ID_DokumentaStablo], [BrojDokumenta], [Datum], [Opis],";
            str += " [ID_OrganizacionaStrukturaView],[Proknjizeno],[MesecPoreza],[UUser])";
            str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9,@param10)";
            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);
        }
        private void PrepisiIzvod(string ulaz)
        {
            int             RedniBroj         = 0;
            string          OOpis             = "";
            string          BrojDok           = "";
            DataTable       prometprepisani   = new DataTable();
            DataTable       rspromet          = new DataTable();
            DataTable       rstStablo         = new DataTable();
            DataTable       rs2               = new DataTable();
            DataTable       rsd               = new DataTable();
            DataTable       rsv               = new DataTable();
            DataTable       rspo              = new DataTable();
            DataTable       rsp               = new DataTable();
            DataTable       rsDokumentaStablo = new DataTable();
            int             pbanka            = 0;
            string          NazivBanke        = "";
            int             BrojIzvoda        = 0;
            int             PKomitent         = 0;
            int             Rr        = 0;
            string          BRD       = "";
            string          str       = "";
            string          pdokument = "";
            string          strParams = "";
            List <string[]> lista     = new List <string[]>();

            char[] separators = { '#' };
            string DatumP     = ulaz.Split(separators)[0];
            string KojiRacun  = ulaz.Split(separators)[1];
            clsObradaOsnovnihSifarnika coos = new clsObradaOsnovnihSifarnika();

            rspromet = db.ReturnDataTable("Select * from BankaView where Replace(NazivRacuna,'-','')='" + coos.FormatirajRacun(KojiRacun) + "'");
            if (rspromet.Rows.Count > 0)
            {
                pbanka     = Convert.ToInt32(rspromet.Rows[0]["ID_BankaView"]);
                NazivBanke = rspromet.Rows[0]["NazivBanke"].ToString();
                PKomitent  = Convert.ToInt32(rspromet.Rows[0]["id_KomitentiView"]);
            }
            else
            {
                MessageBox.Show("Pogrešan broj tekućeg računa!");
                return;
            }

            str  = "SELECT DISTINCT Datum, ID_Blagajna ";
            str += " FROM  IzvodTotali  WHERE ID_Blagajna =" + pbanka.ToString();
            str += " AND  Format(datum,'dd.MM.yy') ='" + DatumP + "' ";

            rspromet = db.ReturnDataTable(str);
            if (rspromet.Rows.Count > 0)
            {
                MessageBox.Show("Već je izvršen prepis izvoda za datum:" + DatumP + " i račun:" + KojiRacun);
                return;
            }
            rspromet.Dispose();



            str      = "Select * from PlacanjaNaplate as pn,Dokumenta as d  ";
            str     += " where  d.ID_Dokumenta=pn.ID_DokumentaView AND ((Isplate>0 and PrenesenoZaPlacanje=1) or Uplate>0 or VrstaSloga='T')";
            str     += " and Format(d.datum,'dd.MM.yy') ='" + DatumP + "' And ID_BankaView=" + pbanka.ToString() + " order by ID_SvrhaPlacanjaView,SvrhaPlacanjaSaIzvoda";
            rspromet = db.ReturnDataTable(str);


            str = db.ReturnString("delete IzvodPrepisi", 0);
            //Jovana 22.06.21
            //prometprepisani = db.ReturnDataTable(" select * from IzvodPrepisi");
            str = "";
            foreach (DataRow row in rspromet.Rows)
            {
                string opis = "";
                strParams  = "";
                strParams  = "@param1=" + row["Datum"].ToString() + "`";
                strParams += "@param2=" + row["ID_BankaView"] + "`";
                strParams += "@param3=" + row["uplate"].ToString().Replace(",", ".") + "`";
                strParams += "@param4=" + row["isplate"].ToString().Replace(",", ".") + "`";
                strParams += "@param5=" + row["OznakaKnjizenja"] + "`";
                strParams += "@param6=" + row["VrstaSloga"] + "`";

                if (Convert.ToInt32(row["ID_PozivNaBroj"]) > 1)
                {
                    str = "Select ID_PDVUlazniJciTotali as Iid  from PDVUlazniJciTotali where ID_RacunZaPlacanje=" + row["ID_PozivNaBroj"].ToString();
                    rsp = db.ReturnDataTable(str);
                    if (rsp.Rows.Count > 0)
                    {
                        row["ID_PozivNaBroj"] = rsp.Rows[0]["iid"];
                    }
                }
                strParams += "@param7=" + row["ID_PozivNaBroj"] + "`";
                strParams += "@param8=" + row["id_KomitentiView"] + "`";
                strParams += "@param9=" + row["ID_SvrhaplacanjaView"] + "`";
                strParams += "@param10=" + row["StariSaldo"].ToString().Replace(",", ".") + "`";
                strParams += "@param11=" + row["NoviSaldo"].ToString().Replace(",", ".") + "`";
                strParams += "@param12=" + row["BrojIzvoda"] + "`";
                strParams += "@param13=" + row["OblikPlacanja"] + "`";
                //Jovana 23.06.21
                //opis = row["opis"].ToString();
                opis = "";
                if (row["SvrhaPlacanjaSaIzvoda"].ToString().ToUpper().IndexOf("DOZ") > -1 ||
                    row["SvrhaPlacanjaSaIzvoda"].ToString().ToUpper().IndexOf("AKREDIT") > -1)
                {
                    if (row["SvrhaPlacanjaSaIzvoda"].ToString().Length > 17)
                    {
                        opis = row["SvrhaPlacanjaSaIzvoda"].ToString().Substring(17);
                    }
                    else
                    {
                        opis = row["SvrhaPlacanjaSaIzvoda"].ToString();
                    }
                }


                if (row["OblikPlacanja"].ToString().Length == 16)
                {
                    opis = row["PozivNaBrojSaIzvoda"].ToString();
                }

                if (Convert.ToInt32(row["ID_Svrhaplacanjaview"]) == 752)
                {
                    opis = row["SvrhaPlacanjaSaIzvoda"].ToString();
                }

                strParams += "@param14=" + opis + "`";
                strParams += "@param15=" + Program.idkadar;


                str  = " Insert into IzvodPrepisi ( ";
                str += " [Datum],[ID_BankaView],[uplate],[isplate],[OznakaKnjizenja],"; //5
                str += "[VrstaSloga],[ID_PozivNaBroj],";                                //2
                str += "[id_KomitentiView],[ID_SvrhaPlacanja],[StariSaldo],";           // 3
                str += "[NoviSaldo],[BrojIzvoda],[OblikPlacanja],[opis],[uuser] ) ";    //5
                str += " values(@param1,@param2,@param3 ,@param4,";
                str += " @param5,@param6,@param7,";
                str += " @param8 ,@param9,@param10,";
                str += " @param11,@param12,@param13 ,@param14,@param15 ) ";
                lista.Add(new string[] { str, strParams });
                /////...
                lista.ToArray();
            }
            string rezultat = db.ReturnSqlTransactionParams(lista);

            lista.Clear();
            if (rezultat != "")
            {
                MessageBox.Show(rezultat); return;
            }

            str  = "";
            str  = " Select NazivBanke,BrojIzvoda  ";
            str += " from IzvodPrepisi as p,BankaView as b Where p.ID_BankaView=b.ID_BankaView And p.VrstaSloga='T' ";
            prometprepisani.Clear();
            prometprepisani = db.ReturnDataTable(str);

            if (prometprepisani.Rows.Count > 0)
            {
                BrojIzvoda = Convert.ToInt32(prometprepisani.Rows[0]["BrojIzvoda"]);
            }
            pdokument         = "Izvod";
            str               = " SELECT * From DokumentaStablo where Naziv = '" + pdokument + "'";
            rsDokumentaStablo = db.ReturnDataTable(str);

            if (rsDokumentaStablo.Rows.Count > 0)
            {
                IdDokumentaStablo = Convert.ToInt32(rsDokumentaStablo.Rows[0]["ID_DokumentaStablo"]);
            }
            else
            {
                MessageBox.Show("Nije registrovan dokument " + pdokument + "!");
                return;
            }
            //  clsXmlPlacanja cx = new clsXmlPlacanja();
            // BrojDok = cx.KreirajBrDokNovi(pdokument, RedniBroj, DatumP, Program.idOrgDeo, Program.idkadar, IdDokumentaStablo);
            if (NazivBanke.ToUpper().Contains("INTESA") == true)
            {
                OOpis = pdokument + " INTESA " + BrojIzvoda.ToString();
            }
            else
            {
                OOpis = pdokument + " " + NazivBanke.Substring(0, NazivBanke.IndexOf(" ")) + " " + BrojIzvoda.ToString();
            }



            //DateTime dt = Convert.ToDateTime(DatumP);
            //string mesec = Convert.ToString(dt.Month);

            //strParams = "";
            //strParams = "@param1=" + RedniBroj + "`";
            //strParams += "@param2=" + Program.idkadar + "`";
            //strParams += "@param3=" + IdDokumentaStablo + "`";
            //strParams += "@param4=" + BrojDok + "`";
            //strParams += "@param5=" + DatumP.ToString() + "`";
            //strParams += "@param6=" + OOpis + "`";
            //strParams += "@param7=" + Program.idOrgDeo + "`";
            //strParams += "@param8=" + "NijeProknjizeno" + "`";
            //strParams += "@param9=" + mesec;



            //str = "insert into Dokumenta(RedniBroj, ID_KadrovskaEvidencija,";
            //str += " ID_DokumentaStablo, BrojDokumenta, Datum, Opis,";
            //str += " ID_OrganizacionaStrukturaView,Proknjizeno,MesecPoreza)";
            //str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9)";
            //lista.Clear();
            //lista.Add(new string[] { str, strParams });
            //lista.ToArray();
            //rezultat = db.ReturnSqlTransactionParams(lista);
            //if (rezultat != "") { MessageBox.Show(rezultat); return; }
            //lista.Clear();

            //str = "";
            //str = "select id_dokumenta from dokumenta where BrojDokumenta = '" + BrojDok.ToString() + "'";
            //rsd.Clear();
            //rsd = db.ReturnDataTable(str);
            //IdDokView = Convert.ToInt32(rsd.Rows[0]["Id_Dokumenta"]);

            // zaglavlje
            // rs2 = db.ReturnDataTable("SELECT * FROM Izvod Where ID_DokumentaView=1");
            prometprepisani.Clear();
            prometprepisani = db.ReturnDataTable(" Select *  from IzvodPrepisi as p Where  p.VrstaSloga='T' ");

            str       = "";
            strParams = "";

            if (prometprepisani.Rows.Count > 0)
            {
                strParams += "@param1=" + prometprepisani.Rows[0]["StariSaldo"].ToString().Replace(",", ".") + "`";
                strParams += "@param2=" + prometprepisani.Rows[0]["NoviSaldo"].ToString().Replace(",", ".") + "`";
                strParams += "@param3=" + prometprepisani.Rows[0]["isplate"].ToString().Replace(",", ".") + "`";
                strParams += "@param4=" + prometprepisani.Rows[0]["uplate"].ToString().Replace(",", ".") + "`";
                strParams += "@param5=" + prometprepisani.Rows[0]["BrojIzvoda"] + "`";
            }
            else
            {
                // Jovana 23.11.21
                //MessageBox.Show("Niste preuzeli izvod!");
                //return;
            }
            //Jovana 25.06.21 premestila da se dokument ne upisuje u izvod ako ne postoje slogovi
            clsObradaOsnovnihSifarnika cs = new clsObradaOsnovnihSifarnika();

            IdDokumentaStablo = (int)rsDokumentaStablo.Rows[0]["ID_DokumentaStablo"];
            BrojDok           = ""; //// cs.KreirajBrDokNovi(ref RedniBroj, DatumP, (int)rsDokumentaStablo.Rows[0]["ID_DokumentaStablo"], "");
            int IdDokview = cs.UpisiDokument(ref BrojDok, OOpis, IdDokumentaStablo, DatumP);


            //Jovana 21.06.21
            strParams += "@param6=" + IdDokview + "`";
            strParams += "@param7=" + pbanka + "`";
            strParams += "@param8=" + DatumP + "`";
            strParams += "@param9=" + Program.idkadar;



            char[]   izbor  = { '=' };
            string[] izbor2 = strParams.Split(izbor);

            switch (izbor2.Length)
            {
            case 10:

                str  = " INSERT INTO[dbo].[Izvod] ";
                str += "([KumulativnoDuguje],[KumulativnoPotrazuje],[DPDuguje],[DPPotrazuje],[BrojIzvoda],";
                str += "[ID_DokumentaView],[id_Blagajna],[Datum],[uuser])";
                str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9)";
                break;

            default:
                strParams = "";
                // Jovana 23.11.21
                //strParams += "@param1=" + prometprepisani.Rows[0]["IdDokView"] + "`";
                //strParams += "@param2=" + prometprepisani.Rows[0]["pbanka"] + "`";
                strParams += "@param1=" + IdDokview + "`";
                strParams += "@param2=" + pbanka + "`";
                strParams += "@param3=" + DatumP + "`";
                strParams += "@param4=" + Program.idkadar;
                str        = " INSERT INTO[dbo].[Izvod] ";
                str       += "([ID_DokumentaView],[id_Blagajna],[Datum],[uuser])";
                str       += " values(@param1,@param2,@param3,@param4)";
                break;
            }

            lista.Clear();
            lista.Add(new string[] { str, strParams });
            lista.ToArray();
            rezultat = db.ReturnSqlTransactionParams(lista);
            if (rezultat != "")
            {
                MessageBox.Show(rezultat); return;
            }
            lista.Clear();


            //' kraj zaglavlje
            ///////////////////////
            str  = "";
            str  = " Select p.*  from IzvodPrepisi as p,BankaView as b Where p.ID_BankaView=b.ID_BankaView ";
            str += " And p.VrstaSloga<>'T' and ID_SvrhaPlacanja <> 752";
            prometprepisani.Clear();

            prometprepisani = db.ReturnDataTable(str);
            //str = "SELECT * FROM IzvodStavke where ID_DokumentaView=1 ";
            //rs2.Clear();
            //rs2 = db.ReturnDataTable(str);

            decimal UkupnoNaknada = 0;

            foreach (DataRow row in prometprepisani.Rows)
            {
                strParams  = "";
                strParams += "@param1=" + IdDokview + "`";
                strParams += "@param2=" + row["id_KomitentiView"] + "`";
                strParams += "@param3=" + row["ID_SvrhaPlacanja"] + "`";
                if (Convert.ToInt32(row["OblikPlacanja"]) == 2)
                {
                    strParams += "@param4=5" + "`";
                }
                else
                {
                    strParams += "@param4=" + row["OblikPlacanja"] + "`";
                }
                strParams += "@param5=" + row["opis"] + "`";
                //Jovana 21.06.21 ne znam zasto je ovo postojalo u vb6?
                //if (Convert.ToInt32(row["OblikPlacanja"]) == 16)
                //{ strParams += "@param5=" + row["opis"] + "`"; }


                strParams += "@param6=" + row["ID_PozivNaBroj"] + "`";
                strParams += "@param7=" + row["uplate"].ToString().Replace(",", ".") + "`";
                strParams += "@param8=" + Math.Round(Convert.ToDecimal(row["isplate"]), 2).ToString().Replace(",", ".") + "`";
                strParams += "@param9=" + Program.idkadar;

                str  = "";
                str  = "INSERT INTO[dbo].[IzvodStavke] ";
                str += " ([ID_DokumentaView],[ID_KomitentiView],[ID_ArtikliView],";
                str += " [ID_NacinPlacanja],[Opis],[ID_PozivNaBroj],[Uplate],[Isplate],[uuser])";
                str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9)";
                lista.Add(new string[] { str, strParams });
                lista.ToArray();
            }
            rezultat = db.ReturnSqlTransactionParams(lista);
            if (rezultat != "")
            {
                MessageBox.Show(rezultat); return;
            }
            lista.Clear();
            ///////
            str = "";

            prometprepisani.Clear();
            str             = " Select p.*  from IzvodPrepisi as p,BankaView as b Where p.ID_BankaView=b.ID_BankaView ";
            str            += "  And p.VrstaSloga<>'T' and ID_SvrhaPlacanja = 752 order by Opis ";
            prometprepisani = db.ReturnDataTable(str);
            string mopis = "";

            UkupnoNaknada = 0;
            foreach (DataRow row in prometprepisani.Rows)
            {
                if (mopis == "")
                {
                    mopis = row["opis"].ToString();
                }
                if (row["opis"].ToString() != mopis)
                {
                    if (UkupnoNaknada > 0)
                    {
                        strParams  = "";
                        strParams += "@param1=" + IdDokview + "`";
                        strParams += "@param2=" + row["PKomitent"] + "`";
                        strParams += "@param3=752" + "`";
                        strParams += "@param4=5" + "`";
                        strParams += "@param5=1" + "`";
                        strParams += "@param6=0" + "`";
                        strParams += "@param7=" + UkupnoNaknada.ToString().Replace(",", ".") + "`";
                        strParams += "@param8=" + Program.idkadar + "`";
                        strParams += "@param9=" + mopis.ToLower() + "`";

                        str  = "INSERT INTO[dbo].[IzvodStavke] ";
                        str += " ([ID_DokumentaView],[id_KomitentiView],[ID_ArtikliView],";
                        str += " [ID_NacinPlacanja],[ID_PozivNaBroj],[Uplate],[Isplate][uuser],[opis])";
                        str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9)";

                        lista.Clear();
                        lista.Add(new string[] { str, strParams });
                        lista.ToArray();
                        rezultat = db.ReturnSqlTransactionParams(lista);
                        if (rezultat != "")
                        {
                            MessageBox.Show(rezultat); return;
                        }
                        lista.Clear();
                    }
                    mopis         = row["opis"].ToString();
                    UkupnoNaknada = 0;
                }
                UkupnoNaknada = UkupnoNaknada + Convert.ToInt32(row["isplate"]);
            }

            if (UkupnoNaknada > 0)
            {
                strParams  = "";
                strParams += "@param1=" + IdDokview + "`";
                strParams += "@param2=" + PKomitent + "`";
                strParams += "@param3=752" + "`";
                strParams += "@param4=5" + "`";
                strParams += "@param5=1" + "`";
                strParams += "@param6=0" + "`";
                strParams += "@param7=" + UkupnoNaknada.ToString().Replace(",", ".") + "`";
                strParams += "@param8=" + Program.idkadar + "`";
                strParams += "@param9=" + mopis.ToLower() + "`";

                str  = "[IzvodStavke] ";
                str += " ([ID_DokumentaView],[id_KomitentiView],[ID_ArtikliView],";
                str += " [ID_NacinPlacanja],[ID_PozivNaBroj],[Uplate],[Isplate][uuser],[opis])";
                str += " values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9)";

                lista.Clear();
                lista.Add(new string[] { str, strParams });
                lista.ToArray();
                rezultat = db.ReturnSqlTransactionParams(lista);
                if (rezultat != "")
                {
                    MessageBox.Show(rezultat); return;
                }
                lista.Clear();
            }
            Dictionary <string, string> rezult  = db.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:Dokumenta", "IdDokument:" + (int)IdDokview);
            Dictionary <string, string> rezult2 = db.ExecuteStoreProcedure("TotaliZaDokument", "NazivDokumenta:" + pdokument, "IdDokument:" + (int)IdDokview);
        }
        public string ReturnSqlTransactionParamsFull(List <string[]> lista)
        {
            //Djora 05.05.21
            //foreach (string[] prime in lista)
            //{
            //    // Part B: access each element with name.
            //    System.Console.WriteLine("PRIME ELEMENT: {0}", prime);
            //}

            //listu cini pet inputa
            // queru , parametri , ime tabele,doktype i IDDokumenta
            // sve kolone  moraju da budu uokvirene karakterima []  npr: [Datum]
            // doktype moze imati sledece vrednosti S sledbenik;P prazan dokument; D vrace se ID insertovanog sloga
            if (lista.Count == 0)
            {
                return("Greska");
            }

            SqlConnection conn = new SqlConnection(connstring);

            if (conn.State == ConnectionState.Closed)
            {
                conn.Open();
            }

            int    ctr   = 0;
            string Query = "";

            char[] delimit          = { '`' };
            char[] delimit1         = { '=' };
            string kljuc            = "";
            string vrednost         = "";
            string rezultat         = "";
            string name             = "";
            string strTabela        = lista[0][2].ToString();
            string spisakKolonaUluz = "";
            string spisakKolonaDB   = "";

            string[] spisakKolona = null;
            int      idPrazan     = 1;
            int      idSled       = 1;
            int      newID        = 0;
            int      rowsAffected = 0;
            string   pattern      = @"\[([^\[\]]+)\]";
            string   input;
            string   SqlCmd     = "";
            bool     isUpdated  = false;
            string   IdDokument = "";
            string   doctype    = "";

            using (SqlCommand commandSql = new SqlCommand())
            {
                SqlTransaction transaction;
                transaction            = conn.BeginTransaction("trTransaction");
                commandSql.Connection  = conn;
                commandSql.Transaction = transaction;


                for (int kk = 0; kk < lista.Count; kk++)
                {
                    input = lista[kk][0];                 //query
                    Console.WriteLine(input);
                    strTabela  = lista[kk][2].ToString(); //tabela
                    doctype    = lista[kk][3].ToString(); //tip dokumenta
                    IdDokument = lista[kk][4].ToString();
                    if (input.ToUpper().Contains("EXECUTE") == true)
                    {
                        commandSql.CommandType = CommandType.Text;
                        if (input.Contains("ssss") == true)
                        {
                            input = input.Replace("'ssss'", idSled.ToString());
                        }
                        if (input.Contains("pppp") == true)
                        {
                            input = input.Replace("'pppp'", idPrazan.ToString());
                        }
                        if (input.Contains("tttt") == true)
                        {
                            input = input.Replace("'tttt'", newID.ToString());
                        }
                        if (input.Contains("stanje") == true)
                        {
                            if (IdDokument.Trim() == "")
                            {
                                IdDokument = idSled.ToString();
                            }
                            clsProveraStanja ps = new clsProveraStanja();
                            rezultat = ps.ProveriStanje(strTabela, IdDokument, ref conn, ref transaction);
                            //Djora 06.07.21
                            string TrebaProvera = "";
                            TrebaProvera = rezultat.Substring(0, rezultat.IndexOf("|")).Trim();

                            //Djora 06.07.21
                            //if (rezultat.Trim() == "") isUpdated = true;
                            //Djora 12.07.21
                            //if (rezultat.Trim() == "" || TrebaProvera == "2") isUpdated = true;
                            if (rezultat.Substring(rezultat.IndexOf("|") + 1).Trim() == "" || TrebaProvera == "2")
                            {
                                isUpdated = true;
                            }
                            else
                            {
                                isUpdated = false;
                            }
                            if (kk == lista.Count - 1)
                            {
                                goto KrajTransakcije;
                            }
                        }
                        //Djora 10.12.21
                        string parametri = "";

                        //Djora 25.06.21 pocetak ------------------------------------------------
                        if (input.Contains("SPROC") == true)
                        {
                            input = input.Replace("SPROC", "").Replace("Execute", "").Trim();
                            string ImeProcedure = input.ToUpper().Trim();

                            DataBaseBroker db  = new DataBaseBroker();
                            string         sql = " SELECT PARAMETER_NAME, DATA_TYPE "
                                                 + " FROM INFORMATION_SCHEMA.PARAMETERS "
                                                 + " WHERE(SPECIFIC_NAME = '" + ImeProcedure + "')";

                            DataTable dt = db.ReturnDataTable(sql);

                            spisakKolona = dt.AsEnumerable().Select(r => r.Field <string>("PARAMETER_NAME")).ToArray();
                            var spisakTipova    = dt.AsEnumerable().Select(r => r.Field <string>("DATA_TYPE")).ToArray();
                            var spisakVrednosti = lista[kk][1].Split(new[] { '#' }, StringSplitOptions.RemoveEmptyEntries);

                            commandSql.CommandType = CommandType.StoredProcedure;

                            commandSql.Parameters.Clear();
                            for (int i = 0; i <= spisakVrednosti.Length - 1; i++)
                            {
                                SqlDbType sqlType = (SqlDbType)Enum.Parse(typeof(SqlDbType), spisakTipova[i].ToString(), true);
                                //commandSql.Parameters.Add(new SqlParameter(spisakKolona[i], sqlType)).Value = spisakVrednosti[i];
                                commandSql.Parameters.Add(spisakKolona[i].ToString(), sqlType).Value = spisakVrednosti[i].ToString();
                                //Djora 10.12.21
                                parametri += spisakKolona[i].ToString() + ", " + spisakVrednosti[i].ToString() + ", ";
                            }
                        }
                        //Djora 25.06.21 kraj ----------------------------------------------------

                        commandSql.CommandText = input;
                        try
                        {
                            rowsAffected = commandSql.ExecuteNonQuery();
                            if (rowsAffected > 0)
                            {
                                isUpdated = true;
                            }
                        }
                        catch (SqlException ex)
                        {
                            //Djora 10.12.21
                            ObradaGreske(ex, "DEO:18 KOMANDA: " + input + " PARAMETRI:" + parametri);

                            rezultat = input + Environment.NewLine + ((System.Data.SqlClient.SqlException)ex).Number.ToString() + "-" + ex.Message.ToString();
                            transaction.Rollback();
                            return(rezultat);
                        }
                    }
                    else//input ne sadrzi execute
                    {
                        spisakKolonaUluz = "";
                        spisakKolonaDB   = "";

                        foreach (System.Text.RegularExpressions.Match m in System.Text.RegularExpressions.Regex.Matches(input, pattern))
                        {
                            string polje = m.Groups[1].Value;
                            spisakKolonaUluz += (polje + "#");
                            spisakKolonaDB   += "'" + polje + "',";

                            ++ctr;
                        }
                        spisakKolona = spisakKolonaUluz.Split(new[] { '#' }, StringSplitOptions.RemoveEmptyEntries);
                        //tamara 26.02.2021.
                        if (spisakKolonaDB.Length > 0)
                        {
                            spisakKolonaDB = spisakKolonaDB.Trim().Substring(0, spisakKolonaDB.Length - 1);
                        }
                        else
                        {
                            spisakKolonaDB = spisakKolonaDB.Trim();
                        }

                        DataBaseBroker db = new DataBaseBroker();
                        SqlCmd  = "select COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE, ";
                        SqlCmd += " DATETIME_PRECISION, IS_NULLABLE from INFORMATION_SCHEMA.COLUMNS";
                        SqlCmd += " where TABLE_NAME = '" + strTabela + "' and COLUMN_NAME in  (" + spisakKolonaDB + ")";

                        Console.WriteLine(SqlCmd);

                        DataTable dt = db.ReturnDataTable(SqlCmd);
                        DataView  dv = dt.DefaultView;

                        string[] delovi = lista[kk][1].Split(delimit);
                        commandSql.Parameters.Clear();
                        int    k         = 0;
                        string parametri = "";
                        foreach (string polje in spisakKolona)
                        {
                            dv.RowFilter = "";
                            dv.RowFilter = "COLUMN_NAME='" + polje + "'";
                            kljuc        = delovi[k].Split(delimit1)[0].ToString();
                            name         = dv[0][1].ToString();
                            SqlDbType sqlType = (SqlDbType)Enum.Parse(typeof(SqlDbType), name, true);
                            vrednost = delovi[k].Split(delimit1)[1].ToString();

                            parametri += kljuc.ToString() + ",  " + polje + ",  " + vrednost.ToString() + "\n";
                            commandSql.Parameters.Add(kljuc, sqlType).Value = vrednost;
                            k++;
                        }
                        Query = lista[kk][0];
                        Console.WriteLine(Query);
                        commandSql.CommandType = CommandType.Text; //CommandType.StoredProcedure
                        commandSql.CommandText = Query;
                        //MessageBox.Show(parametri.ToString());
                        if (lista[kk][0].ToUpper().Contains("INSERT") == true)
                        {
                            commandSql.CommandText += " SELECT CAST(scope_identity() as int) ";

                            Console.WriteLine(commandSql.CommandText);
                            try
                            {
                                newID = (int)commandSql.ExecuteScalar();
                                if (lista[kk][3] == "S")
                                {
                                    idSled = newID;
                                }
                                if (lista[kk][3] == "P")
                                {
                                    idPrazan = newID;
                                }

                                if (lista[kk][3] == "D")
                                {
                                    IdDokument = Convert.ToString(newID);
                                    rezultat   = Convert.ToString(newID);
                                    isUpdated  = true;
                                    //transaction.Commit();
                                    //return rezultat;
                                }
                            }
                            catch (SqlException ex)
                            {
                                //Djora 10.12.21
                                ObradaGreske(ex, "DEO:19 KOMANDA: " + commandSql.CommandText + " ");

                                rezultat = Environment.NewLine + ((System.Data.SqlClient.SqlException)ex).Number.ToString() + "-" + ex.Message.ToString();
                                transaction.Rollback();
                                //ivana 4.8.2021.
                                string poruka = "";
                                switch (((System.Data.SqlClient.SqlException)ex).Number)
                                {
                                case 2601:
                                    poruka = "Unosite već postojeći entitet.";
                                    // Jovana 28.09.21
                                    // rezultat = "";
                                    rezultat = "Unosite već postojeći entitet.";
                                    break;
                                }
                                // Jovana 28.09.21
                                // MessageBox.Show(poruka);
                                return(rezultat);
                            }
                        }
                        else // input ne sadrzi INSERT
                        {
                            commandSql.CommandText = Query;

                            try
                            {
                                rowsAffected = commandSql.ExecuteNonQuery();
                                if (rowsAffected > 0)
                                {
                                    isUpdated = true;
                                }
                            }
                            //Djora 15.10.21
                            catch (SqlException ex)
                            {
                                ObradaGreske(ex, "DEO:8 KOMANDA: " + Query + " PARAMETRI:" + parametri);

                                rezultat = Environment.NewLine + ((System.Data.SqlClient.SqlException)ex).Number.ToString() + "-" + ex.Message.ToString();

                                rezultat = ex.ErrorCode + ": " + ex.Number + ": " + ex.Message;
                                transaction.Rollback();
                                return(rezultat);
                            }
                            //Djora 15.10.21
                            //catch (SqlException ex)
                            catch (Exception ex)
                            {
                                ////Djora 10.12.21 pocetak -----------------------------------------------------------
                                ////Daje formu iz foje je pozvana ova klasa
                                //Form forma = new Form();
                                //forma = Program.Parent.ActiveMdiChild;

                                //MessageBox.Show(forma.Name);
                                //MessageBox.Show(((Bankom.frmChield)forma).OOperacija.Text);
                                ////Djora 10.12.21 kraj --------------------------------------------------------------

                                //Djora 15.10.21
                                ObradaGreske(ex, "DEO:9  KOMANDA: " + Query + " PARAMETRI:" + parametri);

                                rezultat = ex.Message.ToString();
                                transaction.Rollback();
                                return(rezultat);
                            }
                        }
                    }
                }
KrajTransakcije:
                if (isUpdated == true)
                {
                    transaction.Commit();
                }
                else
                {
                    transaction.Rollback();
                }
                //return rezultat;
            }
            return(rezultat);
        }
    {             // OBUHVACENE SU SVE SPECIFICNOSTI STABLA POMOCNIH SIFARNIKA
        public string Proces(string Stablo, string Dokument, int IdTree)
        {
            DataBaseBroker db    = new DataBaseBroker();
            Form           form1 = new Form();

            form1 = Program.Parent.ActiveMdiChild;
            string sselect = "";
            string mselect = "";
            //form1.Controls["lidstablo"].Text = IdTree.ToString();
            string uslov  = "";
            string Oorder = "";

            //((Bankom.frmChield)form1).toolStripTexIme.Text = Dokument;
            mselect = "Select Upit From Upiti Where ime='GgRr" + Dokument + "StavkeView'";
            Console.WriteLine(mselect);
            DataTable tu = db.ReturnDataTable(mselect);

            //if (tu.Rows.Count )
            sselect = tu.Rows[0]["Upit"].ToString();

            if (sselect.ToUpper().Contains("WHERE") == true)
            {
                uslov = " AND ID_" + Dokument + "StavkeView>1";
            }
            else
            {
                uslov = " WHERE ID_" + Dokument + "StavkeView>1";
            }

            Console.WriteLine(sselect);
            int vv = sselect.ToUpper().IndexOf("ORDER BY");

            if (vv == -1)
            {
                //Djora 12.07.21
                if (Dokument == "KadroviIOrganizacionaStruktura")
                {
                    Oorder = " ORDER BY suser ";
                }
                //Djora 12.07.21
                if (Dokument == "Dozvole")
                {
                    Oorder = " ORDER BY Naziv ";
                }
                //vv = sselect.Length;
            }
            else
            {
                Oorder  = sselect.Substring(vv);
                sselect = sselect.Substring(0, vv - 1);
            }

            //Djora 09.09.21 pocetak --------------------------------
            if (Stablo == "PomocniSifarnici")
            {
                //Oorder = "  order by  id_" + Dokument.Trim() + "StavkeView asc";
                DataTable dt = new DataTable();

                string ssel = "SELECT DISTINCT OOrder FROM dbo.Upiti WHERE(NazivDokumenta = @param0) AND (Ime LIKE N'GGRr%')";

                dt = db.ParamsQueryDT(ssel, Dokument);

                if (dt.Rows.Count != 0)
                {
                    foreach (DataRow row in dt.Rows)
                    {
                        Oorder = "  order by " + row["OOrder"].ToString();
                    }
                }
            }
            //Djora 09.09.21 kraj ------------------------------------

            Console.WriteLine(sselect + " " + uslov + " " + Oorder);
            return(sselect + " " + uslov + " " + Oorder);
        }