public bool Obradi()
        {
            bool Obradi = false;
            Form forma  = new Form();

            forma      = Program.Parent.ActiveMdiChild;
            iddokument = Convert.ToString(((Bankom.frmChield)forma).iddokumenta);
            if (DovrsiObradu(forma) == false)
            {
                return(Obradi);
            }
            clsdokumentRefresh docref = new clsdokumentRefresh();

            docref.refreshDokumentBody(forma, ((Bankom.frmChield)forma).imedokumenta, iddokument, forma.Controls["ldokje"].Text);
            docref.refreshDokumentGrid(forma, ((Bankom.frmChield)forma).imedokumenta, iddokument, "", "", forma.Controls["ldokje"].Text);
            Obradi = true;
            return(Obradi);
        }
        public void SortirajGrid(ref DataGridView control, string NazivKlona, string DokumentJe)
        {
            forma = Program.Parent.ActiveMdiChild;
            string    mUpit       = "";
            DataTable tg          = new DataTable();
            string    KojiSegment = control.Name.Substring(4);
            //ivana 19.8.2021.
            string sql = "Select Naziv,UlazniIzlazni as NazivDokumenta from SifarnikDokumenta  where Naziv=@param0";

            tg = db.ParamsQueryDT(sql, NazivKlona);
            if (tg.Rows.Count > 0)
            {
                NazivKlona = tg.Rows[0]["NazivDokumenta"].ToString();
            }
            clsdokumentRefresh docref = new clsdokumentRefresh();

            if (((Bankom.frmChield)forma).statusStrip1.Visible == false)
            {
                tg = (DataTable)control.DataSource; // U data source-grida su prisutni svi slogovi
            }
            else
            {
                mUpit = ((Bankom.frmChield)forma).tUpit;
                Console.WriteLine(mUpit);
                tg = db.ReturnDataTable(mUpit);    ///((Bankom.frmChield)forma).tgg;//// (DataTable)control.DataSource;
                int brrec = tg.Rows.Count;
            }

            DataTable dtOut          = null;
            string    sortExpression = string.Format("{0} {1}", Program.colname, Program.smer);

            tg.DefaultView.Sort = sortExpression;
            dtOut = tg.DefaultView.ToTable();
            Console.WriteLine(dtOut.Rows.Count);
            tg = dtOut;
            // Jovana 23.11.20 dodala da samo za Izvestaje ide u osvezavanje salda
            if (DokumentJe == "I")
            {
                sql  = "Select AlijasPolja as Polje,FormulaForme from Recnikpodataka WHERE  Dokument = @param0 AND(FormulaForme IS NOT NULL AND FormulaForme <> N'')";
                sql += " And TabelaVview='" + Program.imegrida.Substring(4) + "'";
                Console.WriteLine(sql);
                t = db.ParamsQueryDT(sql, NazivKlona);
                for (int i = 0; i < t.Rows.Count; i++)
                {
                    this.OsveziSalda(ref tg, t.Rows[i]["Polje"].ToString(), t.Rows[i]["formulaforme"].ToString());
                }
                //if (((Bankom.frmChield)forma).statusStrip1.Visible == false)
                //    this.DodajRedniBroj(ref tg, KojiSegment, DokumentJe);
                //for( int i=0;i<10;i++)
                //{
                //    Console.WriteLine(tg.Rows[i][Program.colname].ToString());
                //}

                control.DataSource = docref.ShowPage(forma, 1, tg);

                sss = "Select DISTINCT TUD from RecnikPodataka WHERE  Dokument = @param0  And TabelaVview='" + Program.imegrida.Substring(4) + "'";
                Console.WriteLine(sss);
                DataTable t1  = db.ParamsQueryDT(sss, NazivKlona);
                string    TUD = t1.Rows[0]["TUD"].ToString();

                docref.setingWidthOfColumns(NazivKlona, control, TUD);


                //if (NazivKlona == "LotStanjeRobeM")
                //    docref.colorofrows(control);
            }
            control.DataSource = tg;
            if (NazivKlona == "LotStanjeRobeM")
            {
                docref.colorofrows(control);
            }
            control.Refresh();
        }
예제 #3
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);
        }
예제 #4
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;
            }
        }
예제 #5
0
        private Boolean PopuniFormuIzvestaja()
        {
            clsObradaOsnovnihSifarnika os = new clsObradaOsnovnihSifarnika();

            vrati = true;
            string             mUpit  = "";
            string             uUpit  = "";
            string             mGroup = "";
            string             mTUD   = "";
            string             mIme   = "";
            string             iddok  = "0";
            string             rss    = "";
            int                param0 = 1;
            clsdokumentRefresh dokr   = new clsdokumentRefresh();

            string rsu = "Select * From Upiti Where  nazivdokumenta=@param0 And ime  like '%ggrr%' ORDER BY TUD";

            Console.WriteLine(rsu);
            DataTable tt = db.ParamsQueryDT(rsu, Dokument);

            for (int j = 0; j < tt.Rows.Count; j++)
            {
                res      = "";
                mGroup   = "";
                OrderBy  = "";
                mTUD     = tt.Rows[j]["TUD"].ToString();
                uUpit    = tt.Rows[j]["Upit"].ToString();
                mIme     = tt.Rows[j]["Ime"].ToString();
                KojiView = mIme.Replace("GgRr", "");
                if (uUpit.ToUpper().Contains("GROUP") == true)
                {
                    mGroup = uUpit.Substring(uUpit.ToUpper().IndexOf("GROUP"), uUpit.Length - uUpit.ToUpper().IndexOf("GROUP"));
                    mUpit  = uUpit.Substring(0, uUpit.ToUpper().IndexOf("GROUP") - 1);
                }
                else
                {
                    //tamara
                    //Jovana 17.05.21 umrtvila
                    //param0 = 0;
                    mGroup = "";
                    mUpit  = uUpit;
                }
                if (Convert.ToInt32(mTUD) > 0)
                {
                    res = os.DodajRestrikcije(Dokument, mTUD);
                    if (WWhere.Trim() != "")
                    {
                        if (res.Trim() != "")
                        {
                            res = " AND " + res;
                        }
                    }
                    else
                    {
                        if (res.Trim() != "")
                        {
                            res = " WHERE " + res;
                        }
                    }
                    DodajOrder(mTUD);
                    mUpit += WWhere + res + mGroup + OrderBy;
                    //tamara 12.5.2021.
                    //// string upit = mUpit.Split('>', mUpit.IndexOf('>') + 1);
                    ////String s = "Thundering Blow I";
                    //int k = mUpit.IndexOf(">"/*, mUpit.IndexOf("W") + 1*/);
                    //int m = k + 3;
                    //string upit = mUpit.Substring(0, m);
                    //Jovana 17.05.21 umrtvila
                    //mUpit += "@param0";

                    //ovde se generise upit kao sto nama treba za obracun kamate 20.7.21.
                    Console.WriteLine(mUpit);
                    DataTable t = new DataTable();
                    //if(param0==0)
                    t = db.ParamsQueryDT(mUpit, param0);
                    // Jovana 03.08.21
                    dokr.refreshDokumentGrid(forma, Dokument, "1", mUpit, mTUD, "I");

                    if (t.Rows.Count == 0 && Dokument != "KalkulacijaIzlazaSaTroskovima")
                    {
                        // zajedno 20.7.21.
                        //ivana 18.8.2021. otkomentarisala sam zbog zurnala knjizenja, ako nemamo nijedan rezultat da nas obavesti o tome
                        MessageBox.Show("Ne postoje podaci za zadate parametre!");
                        //ivana 18.3.2021. nije se osvezavao grid, ako je prethodno bio popunjen
                        // Jovana 17.05.2021 umrtvila ako je prazan grid sto da se refresh-uje?
                        // tamara 20.7.21. zato sto npr u finansijskoj kartici kada nema podataka logicno je da se grid isprazni
                        //dokr.refreshDokumentGrid(forma, Dokument, "1", mUpit, mTUD, "I");
                        //PrikaziZbirove(0);

                        //vrati = false;
                        //return vrati;
                    }
                }
                else
                {
                    Console.WriteLine(mUpit);
                    // Jovana 17.05.2021
                    //ivana 30.6.2021. zakomentarisala sam zbog POPPdv, jer je nakon OK popunjavao mesec sa 12 i godinu sa 2019
                    // Jovana 02.07.21 ne popunjava vrednosti u zaglavlju kod izvestaja Kalkulacija izlaza sa troskovima i pozivanja robne kartice iz stanja
                    dokr.refreshDokumentBody(forma, Dokument, iddok, "I");//BORKA DA LI NAM OVO TREBA 29.11.20
                }
            }
            PrikaziZbirove(0);
            return(vrati);
        }