Example #1
0
 /// <summary>
 /// hozzaadas AlapCombok-hoz
 /// </summary>
 /// <param name="tag">
 /// A tabla TablainfoTag-ja
 /// </param>
 public void AlapComboAdd(TablainfoTag tag)
 {
     bool megvan = false;
     foreach (Comboinfok egycomboinf in AlapCombok)
     {
         if (egycomboinf.Combotag.Azonositok.Azontip == tag.Azonositok.Azontip)
         {
             egycomboinf.Infoba(tag);
             egycomboinf.SetDefertekek();
             megvan = true;
             break;
         }
     }
     if (!megvan)
     {
         Comboinfok egycomboinf = new Comboinfok();
         egycomboinf.Infoba(tag);
         AlapCombok.Add(egycomboinf);
         egycomboinf.ComboCollection = this;
         egycomboinf.SetDefertekek();
     }
     
 }
Example #2
0
 private void TablainfoTagokEpit(TablainfoTag Tag, DataView view)
 {
     int sorindex = 0;
     string baseszoveg;
     string azon;
     TablainfoTag egytag;
     DataRow elsosor = view[0].Row;
     view.RowFilter = "[PARENT]='" + Tag.Azonositok.Nextparent.ToString() + "'";
     AdatTabla dt = (AdatTabla)view.Table;
     if (view.Count == 0)
     {
         baseszoveg = elsosor["SZOVEG"].ToString();
         azon = elsosor["AZON"].ToString();
         sorindex = view.Table.Rows.IndexOf(elsosor);
         if (KezdetiForm != null)
             KezdetiForm.Sorkesz(baseszoveg, azon);
         return;
     }
     for (int i = 0; i < view.Count; i++)
     {
         if (!_bajvan)
         {
             DataRow dr = view[i].Row;
             baseszoveg = dr["SZOVEG"].ToString();
             azon = dr["AZON"].ToString();
             sorindex = view.Table.Rows.IndexOf(dr);
             egytag = new TablainfoTag(dt, sorindex, null, null, Tag, this);
             if (KezdetiForm != null)
                 KezdetiForm.Sorkesz(baseszoveg, azon);
             if (!_bajvan)
             {
                 TablainfoTagokEpit(egytag, view);
                 if (_bajvan)
                     break;
                 view.RowFilter = "[PARENT]='" + Tag.Azonositok.Nextparent.ToString() + "'";
             }
         }
     }
 }
Example #3
0
        private void Frissites(Tablainfo tabinfo, DataRow dr)
        {
            string funkcio = dr["FUNKCIO"].ToString();
            string szint = dr["SZINT"].ToString();
            string verid = dr["VERZIO_ID"].ToString();
            if (!funkcio.Contains("VERSION"))
                ForceAdattolt(tabinfo, true);
            if (tabinfo.Tablanev.Contains("VERSION"))
            {
                string conn = tabinfo.Adattabla.Connection;
                Versiontolt(szint, conn);
                if (funkcio == "ADD" || funkcio == "TOROL")
                {
                    if (szint == "C")
                        Cegadatok(Aktintervallum);
                    else
                        Rendszeradatok(Aktintervallum, szint, funkcio == "TOROL");
                }
            }
            else
            {
                string tablanev = tabinfo.Tablanev;
                TablainfoTag tag = tabinfo.TablaTag;
                bool leiroe = tabinfo.Leiroe;
                if (funkcio.Contains("VERSION"))
                {
                    int[] verzioinfok = (int[])tabinfo.Verzioinfok.VersionIdCollection.ToArray(typeof(int));
                    if (funkcio == "DELETEVERSION")
                    {
                        tabinfo.AktVerzioId = verzioinfok[verzioinfok.Length - 2];
                        tabinfo.VerzioTerkepArray.RemoveAt(tabinfo.VerzioTerkepArray.Count - 1);
                    }
                    else
                    {
                        tabinfo.AktVerzioId = verzioinfok[verzioinfok.Length - 1];
                        tabinfo.VerzioTerkepArray.Add(tabinfo.AktVerzioId);
                    }
                    tabinfo.Adattabla.LastSel = tabinfo.SelectString + " and VERZIO_ID = " + tabinfo.AktVerzioId.ToString();
                    ForceAdattolt(tabinfo, true);
                    tabinfo.TablaTag.Azonositok.ToolTipText();
                    if (tabinfo.Osszefinfo != null)
                        tabinfo.Osszefinfo.InitKell = true;
                    return;
                }
                ForceAdattolt(tabinfo, true);
                if (tabinfo.Tablanev == "BASE" && funkcio == "TOROL")
                {
                    TablainfoTag termgyokertag = (TablainfoTag)GyokerTablainfoTagok[1];
                    foreach (TablainfoTag egytartaltag in termgyokertag.ChildTablainfoTagok)
                    {
                        if (egytartaltag.Azonositok.Szint == szint)
                            egytartaltag.Torolt = true;
                    }
                    return;
                }
                if (tabinfo.Azon == "LEIR")
                {
                    foreach (Tablainfo egyinfo in Tablainfok)
                    {
                        egyinfo.LeiroTablainfo.Beallit();
                        egyinfo.LeiroTablainfo.Combobeallit();
                    }
                    return;
                }
                if (tabinfo.Leiroe)
                {
                    if (tabinfo.TablaTag.Tablainfo.Adatfajta != "K")
                    {
                        tabinfo.Beallit();
                        tabinfo.Combobeallit();
                    }
                    else
                        KodtablakFrissitese(tabinfo);
                    Tablainfo adattablainfo = tabinfo.TablaTag.Tablainfo;
                    tabinfo.TablaTag.Tablainfo.Beallit();
                    tabinfo.TablaTag.Tablainfo.Combobeallit();
                    return;
                }
                if (tabinfo.Tablanev != "TARTAL" && tabinfo.Tablanev != "BASE")
                {
                    tabinfo.Beallit();
                    tabinfo.Combobeallit();
                    Combokupdate(tabinfo.TablaTag);
                    if (tabinfo.Osszefinfo != null)
                        tabinfo.Osszefinfo.InitKell = true;
                    return;
                }
                if (tabinfo.Tablanev == "BASE")
                {
                    string savfilt;
                    savfilt = tabinfo.DataView.RowFilter;
                    TablainfoTag newtag = null;
                    TablainfoTag newtartaltag = null;
                    tabinfo.DataView.RowFilter = "szint='" + szint + "'";
                    for (int i = 0; i < tabinfo.DataView.Count; i++)
                    {
                        DataRow dr1 = tabinfo.DataView[i].Row;
                        int rowindex = tabinfo.Adattabla.Rows.IndexOf(dr1);
                        if (funkcio == "ADD")
                        {
                            if (dr1["AZON"].ToString().Trim().Length < 4)
                                newtag = new TablainfoTag(tabinfo.Adattabla, rowindex, null, null, (TablainfoTag)GyokerTablainfoTagok[1], this);
                            else
                                newtartaltag = new TablainfoTag(tabinfo.Adattabla, rowindex, null, null, newtag, this);
                        }
                        else
                        {
                            TablainfoTag termgyokertag = (TablainfoTag)GyokerTablainfoTagok[1];
                            foreach (TablainfoTag egytartaltag in termgyokertag.ChildTablainfoTagok)
                            {
                                if (egytartaltag.Azonositok.Szint == szint)
                                {
                                    if (dr1["AZON"].ToString().Trim().Length < 4)
                                        egytartaltag.TablainfoTagUpdate(tabinfo.Adattabla, rowindex);
                                }
                            }
                        }
                    }
                    tabinfo.DataView.RowFilter = savfilt;
                }
                if (tabinfo.Tablanev == "TARTAL")
                {
                    Tablainfo egyinfo = null;
                    TablainfoTag tag1 = null;
                    DataRow dr1 = null;
                    AdatTabla adattabla = tabinfo.Adattabla;
                    int i = 0;
                    string kodtipus = dr["KODTIPUS"].ToString();
                    string azontip = dr["AZON"].ToString() + kodtipus;
                    string termszarm = azontip.Substring(0, 2).Trim();
                    if (azontip.Contains("SZRM"))
                        egyinfo = GetMezonevek(kodtipus);
                    else
                        egyinfo = Tablainfok.GetByAzontip(azontip);

                    for (i = 0; i < adattabla.Rows.Count; i++)
                    {
                        dr1 = adattabla.Rows[i];
                        if (azontip.Contains("SZRM") && dr1["KODTIPUS"].ToString() == kodtipus)
                            break;
                        if (!azontip.Contains("SZRM") && dr1["AZONTIP"].ToString() == azontip)
                            break;
                    }
                    if (egyinfo == null)
                    {
                        tag1 = new TablainfoTag(adattabla, i, null, null, tag, this);
                        tag1.LeiroTablainfo.Combobeallit();
                        tag1.Tablainfo.Combobeallit();
                        if ("CO".Contains(tag1.Azonositok.Adatfajta))
                            tag1.FordTag = new TablainfoTag(adattabla, i, tabinfo, tag1, tag, this, true);
                        if (termszarm == "T")
                            AzontipSzerintBevisz(azontip.Substring(2, 1) + egyinfo.Tablanev);
                        else
                            AzontipSzerintBevisz(azontip);
                    }
                    else
                    {
                        tag1 = egyinfo.TablaTag;
                        if (funkcio == "MODIFY")
                        {
                            if (tag1.ParentTag.ChildTablainfoTagok.IndexOf(egyinfo.Azontip) == -1)
                            {
                                tag1.SorIndex = i;
                                tag1.Torolt = false;
                            }
                            tag1.TablainfoTagUpdate(adattabla, i);
                        }
                        else
                            tag1.Torolt = true;
                    }
                }
            }
        }
Example #4
0
 /// <summary>
 /// Tabla sikeres update-je utan vegrehajtando funkciok
 /// </summary>
 /// <param name="tablainfo"></param>
 private void OkUpdateUtan(Tablainfo tablainfo)
 {
     string filter;
     string sort = "";
     string szint = "";
     if (tablainfo.Tablanev != "VALTOZASNAPLO" && tablainfo.Tablanev != "USERLOG")
     {
         string adattablanev = "";
         if (tablainfo.Leiroe)
             adattablanev = tablainfo.TablaTag.Tablainfo.Tablanev;
         ValtozasRogzit(tablainfo.NaploTablainfo, tablainfo.NaploTabla, tablainfo.Azon, tablainfo.Tablanev, adattablanev);
     }
     if (tablainfo.Tablanev == "VALTOZASNAPLO" || tablainfo.Tablanev == "USERLOG")
     {
         tablainfo.Adattabla.Rows.Clear();
         tablainfo.Modositott = false;
         tablainfo.Changed = false;
         return;
     }
     tablainfo.Rogzitett = true;
     Verzioinfok verinfo = null;
     TablainfoTag tag = tablainfo.TablaTag;
     bool leiroe = tablainfo.Leiroe;
     if (!leiroe)
     {
         if (tablainfo.Tablanev.Contains("VERSION"))
         {
             szint = tablainfo.Szint;
             string conn = tablainfo.Adattabla.Connection;
             verinfo = _verzioinfok[szint];
             int aktid = verinfo.AktVerzioId;
             Versiontolt(szint, conn);
             if (aktid != verinfo.AktVerzioId)
             {
                 if (szint == "C")
                     Cegadatok(Aktintervallum);
                 else
                     Rendszeradatok(Aktintervallum, szint, verinfo.Delete);
                 verinfo.Delete = false;
             }
         }
     }
     tablainfo.Modositott = false;
     tablainfo.Changed = false;
     filter = tablainfo.DataView.RowFilter;
     ForceAdattolt(tablainfo, true);
     if (tablainfo.Tablanev == "BASE")
         tablainfo.DataView.RowFilter = filter;
     if (tablainfo.Osszefinfo != null)
         tablainfo.Osszefinfo.InitKell = true;
     bool torolt = true;
     if (leiroe || tablainfo.Azon == "LEIR" || tablainfo.Tablanev == "BASE" || tablainfo.Tablanev == "TARTAL")
         torolt = false;
     else if (tablainfo.ParentTag.Tablainfo.ToroltTagok.Count == 0 || tablainfo.ParentTag.Tablainfo.ToroltTagok.IndexOf(tablainfo) == 0)
         torolt = false;
     if (!torolt)
     {
         if (tablainfo.Azon != "LEIR" && tablainfo.Tablanev != "BASE" && !leiroe)
             Combokupdate(tag);
         if (leiroe)
         {
             if (tablainfo.TablaTag.Tablainfo.Adatfajta != "K")
             {
                 tablainfo.Beallit();
                 tablainfo.Combobeallit();
             }
             else
                 KodtablakFrissitese(tablainfo);
             Tablainfo adattablainfo = tablainfo.TablaTag.Tablainfo;
             if (adattablainfo.Tablanev == "TARTAL" || "RU".Contains(adattablainfo.Szint) || _aktualcegconn != "")
             {
                 tablainfo.TablaTag.Tablainfo.Beallit();
                 tablainfo.TablaTag.Tablainfo.Combobeallit();
             }
         }
         if (!leiroe)
         {
             if (tablainfo.Tablanev == "BASE")
             {
                 TablainfoTag newtag = null;
                 TablainfoTag newtartaltag = null;
                 TartalomjegyzekbolTorol(tablainfo, false);
                 filter = tablainfo.DataView.RowFilter;
                 sort = tablainfo.DataView.Sort;
                 tablainfo.DataView.RowFilter = "";
                 tablainfo.DataView.Sort = "SORSZAM DESC";
                 DataRow dr = tablainfo.DataView[0].Row;
                 int rowindex = tablainfo.Adattabla.Rows.IndexOf(dr);
                 szint = dr["SZINT"].ToString();
                 string azon = dr["AZON"].ToString().Trim();
                 if (azon.Length < 4)
                 {
                     int beszursorrend = Convert.ToInt32(dr["SORREND"].ToString()) + 1;
                     DataRow newrow = tablainfo.Ujsor();
                     newrow["AZON"] = azon + "T";
                     newrow["PARENT"] = dr["SORSZAM"];
                     newrow["SZOVEG"] = "Táblázatok";
                     newrow["TABLANEV"] = "TARTAL";
                     newrow["SZINT"] = szint;
                     newrow["SORREND"] = beszursorrend;
                     UpdateTransaction(new Tablainfo[] { tablainfo });
                     newtag = new TablainfoTag(tablainfo.Adattabla, rowindex, null, null, (TablainfoTag)GyokerTablainfoTagok[1], this);
                     rowindex = tablainfo.Adattabla.Rows.IndexOf(tablainfo.DataView[0].Row);
                     newtartaltag = new TablainfoTag(tablainfo.Adattabla, rowindex, null, null, newtag, this);
                     newtartaltag.Tablainfo.Combobeallit();
                     newtartaltag.LeiroTablainfo.Combobeallit();
                 }
                 else
                 {
                     for (int j = 0; j < ((TablainfoTag)GyokerTablainfoTagok[1]).ChildTablainfoTagok.Count; j++)
                     {
                         newtag = ((TablainfoTag)GyokerTablainfoTagok[1]).ChildTablainfoTagok[j];
                         if (newtag.Azonositok.Azon == azon)
                         {
                             newtag.TablainfoTagUpdate(tablainfo.Adattabla, rowindex);
                             break;
                         }
                     }
                 }
                 tablainfo.DataView.RowFilter = filter;
                 tablainfo.DataView.Sort = sort;
             }
             if (tablainfo.Tablanev == "TARTAL")
             {
                 TartalomjegyzekbolTorol(tablainfo, true);
                 AdatTabla adattabla = tablainfo.Adattabla;
                 for (int i = 0; i < adattabla.Rows.Count; i++)
                 {
                     TablainfoTag tag1 = null;
                     string sorszint = adattabla.Rows[i]["SZINT"].ToString().Trim();
                     string azontip = adattabla.Rows[i]["AZONTIP"].ToString().Trim();
                     string adatfajta = adattabla.Rows[i]["ADATFAJTA"].ToString().Trim();
                     string kodtipus = adattabla.Rows[i]["KODTIPUS"].ToString().Trim();
                     string termszarm = adattabla.Rows[i]["TERMSZARM"].ToString().Trim();
                     string tablanev = adattabla.Rows[i]["TABLANEV"].ToString().Trim();
                     Tablainfo egyinfo = null;
                     if (azontip.Contains("SZRM"))
                     {
                         egyinfo = GetBySzintPluszTablanev(kodtipus.Substring(0, 1), kodtipus.Substring(1));
                         if (egyinfo != null)
                         {
                             egyinfo = egyinfo.LeiroTablainfo;
                             tag1 = tag.ChildTablainfoTagok[i];
                             if (tag1 == null)
                                 tag1 = new TablainfoTag(adattabla, i, null, null, tag, this);
                         }
                     }
                     else
                         egyinfo = Tablainfok.GetByAzontip(azontip);
                     if (egyinfo == null)
                     {
                         tag1 = new TablainfoTag(adattabla, i, null, null, tag, this);
                         if (azontip.Contains("SZRM"))
                             egyinfo = tag1.LeiroTablainfo;
                         else
                         {
                             egyinfo = tag1.Tablainfo;
                             if (_aktualcegconn != "")
                             {
                                 tag1.LeiroTablainfo.Combobeallit();
                                 tag1.Tablainfo.Combobeallit();
                             }
                         }
                         if ("CO".Contains(tag1.Azonositok.Adatfajta))
                             tag1.FordTag = new TablainfoTag(adattabla, i, tablainfo, tag1, tag, this, true);
                     }
                     else
                     {
                         if (!azontip.Contains("SZRM"))
                         {
                             tag1 = egyinfo.TablaTag;
                             if (tag1.ParentTag.ChildTablainfoTagok.IndexOf(egyinfo.Azontip) == -1)
                             {
                                 tag1.SorIndex = i;
                                 tag1.Torolt = false;
                             }
                         }
                         tag1.TablainfoTagUpdate(adattabla, i);
                         if (egyinfo.Osszefinfo != null)
                             egyinfo.Osszefinfo.InitKell = true;
                     }
                     if (!azontip.Contains("SZRM"))
                         AzontipSzerintBevisz(azontip);
                 }
                 if (tablainfo.Modositott)
                     UpdateTransaction(new Tablainfo[] { tablainfo });
             }
             else if (tablainfo.Azon != "LEIR" && tablainfo.Tablanev != "BASE")
             {
                 AzontipSzerintUpdate(tablainfo);
                 if (!tag.Forditott && tablainfo.Tablanev != "BASE")
                 {
                     Combokupdate(tag);
                     TablainfoTag elsotag = null;
                     if (tablainfo.Azon == "SZRM")
                     {
                         Tablainfo egytabinfo = Tablainfok.GetByAzontip("SZRM" + tablainfo.Kodtipus);
                         if (egytabinfo != null)
                             elsotag = egytabinfo.TablaTag;
                     }
                     else if (tablainfo.Azontip1 != "" && Tablainfok.GetByAzontip(tablainfo.Azontip1) != null)
                         elsotag = Tablainfok.GetByAzontip(tablainfo.Azontip1).TablaTag;
                     if (elsotag != null)
                         Combokupdate(elsotag);
                     if (tablainfo.Azontip2 != "" && Tablainfok.GetByAzontip(tablainfo.Azontip2) != null)
                     {
                         elsotag = Tablainfok.GetByAzontip(tablainfo.Azontip2).TablaTag;
                         Combokupdate(elsotag);
                     }
                 }
                 if (tablainfo.NewVersionCreated || tablainfo.LastVersionDeleted || tablainfo.VerzioTerkepArray.Count == 0)
                 {
                     if (tablainfo.Osszefinfo != null)
                         tablainfo.Osszefinfo.InitKell = true;
                     TablainfoTag fordtag = tablainfo.TablaTag.FordTag;
                     if (fordtag != null)
                         fordtag.ToolTipText();
                 }
             }
         }
         if (tablainfo.Tablanev != "BASE")
         {
             tag.ToolTipText();
             if (tag.FordTag != null)
                 tag.FordTag.ToolTipText();
             tablainfo.NewVersionCreated = false;
             tablainfo.LastVersionDeleted = false;
         }
     }
 }
Example #5
0
 /// <summary>
 /// belso hasznalatra
 /// </summary>
 /// <param name="tag"></param>
 /// <returns></returns>
 private DateTime[] Intmegallapit(TablainfoTag tag)
 {
     Verzioinfok verinf = null;
     DateTime[] interv = new DateTime[2];
     string szint = tag.Tablainfo.Szint;
     string termszarm = tag.Tablainfo.TermSzarm.Trim();
     string azon = tag.Tablainfo.Azon;
     string tablanev = tag.Tablainfo.Tablanev;
     if (azon == "LEIR" || tablanev == "LEIRO" || tablanev == "TARTAL" || szint == "R")
         verinf = _verzioinfok[0];
     else if (szint == "U")
         verinf = _verzioinfok[1];
     else
         verinf = _verzioinfok[2];
     interv[0] = verinf.AktVerzioKezd;
     interv[1] = verinf.AkVerzioVeg;
     return interv;
 }
Example #6
0
 /// <summary>
 /// mint az elozo, de a leiroe parameter tartalma szerint adattabla vagy az adattabla leirotablajanak tablainfojat
 /// hozza letre
 /// </summary>
 /// <param name="dt"></param>
 /// <param name="sorindex"></param>
 /// <param name="tag"></param>
 /// <param name="tagazon"></param>
 /// <param name="fak"></param>
 /// <param name="leiroe">
 /// true: leirotabla
 /// false: adattabla
 /// </param>
 public Tablainfo(AdatTabla dt, int sorindex, TablainfoTag tag, Azonositok tagazon, FakUserInterface fak, bool leiroe)
 {
     NewTablainfo(dt, sorindex, tag, tagazon, fak, leiroe);
 }
Example #7
0
        public override Base SetAktivControl(TablainfoTag tabinfotag,Vezerloinfo vezerles)
        {
            Base control = null;
            Tablainfo tabinfo = tabinfotag.Tablainfo;
            if (tabinfo != null && tabinfo.Tablanev == "PARTNER")
            {
                if (kulonpartner == null)
                    kulonpartner = new Partner(FakUserInterface, this, vezerles);

                control = kulonpartner;
                int contindex = vezerles.OsszesControlNev.IndexOf("Partner");
                vezerles.OsszesLetezoControl[contindex] = control;
            }
            return control;
        }
Example #8
0
 /// <summary>
 /// Forditott TablainfoTag objectum letrehozasa vagy aktualizalasa
 /// </summary>
 /// <param name="dt">
 /// Informaciot tartalmazo adattabla - BASE/TARTAL/LEIRO vagy valamelyik adattabla 
 /// </param>
 /// <param name="sorindex">
 /// az informacios sor indexe
 /// </param>
 /// <param name="tabinfo">
 /// A tablainformacio
 /// </param>
 /// <param name="eredetitag">
 /// az eredeti TablainfoTag
 /// </param>
 /// <param name="parenttag">
 /// parent tag
 /// </param>
 /// <param name="fak">
 /// Fak
 /// </param>
 /// <param name="forditott">
 /// true
 /// </param>
 public TablainfoTag(AdatTabla dt, int sorindex, Tablainfo tabinfo, TablainfoTag eredetitag, TablainfoTag parenttag, FakUserInterface fak, bool forditott)
 {
     TablainfoTagIni(dt, sorindex, tabinfo, eredetitag, parenttag, fak, forditott);
 }
Example #9
0
        /// <summary>
        /// adott osszefoglalo info beillesztese
        /// </summary>
        /// <param name="tag">
        /// osszefoglalo info
        /// </param>
        public void Infoba(TablainfoTag tag)
        {
            if (Combotag == null)
            {
                Combotag = tag;
                Fak = tag.Fak;
            }
            else
            {
                ComboFileinfo.Clear();
                ComboInfo.Clear();
                ComboId.Clear();
                KiegFileinfo.Clear();
                KiegInfo.Clear();
                KiegId.Clear();
            }
            Tablainfo tabinfo = tag.Tablainfo;
            int cfilcol = -1;
            if (tabinfo.Tablanev == "BANKOK")
            {
                cfilcol = -1;
            }
            string cfilnev = tag.Azonositok.Combofileba;
//            int cfilcol = -1;
            DataTable datt;
            DataView dv = new DataView();
            DataTable datt1 = null;
            DataView dv1 = null;
            bool kellkieg = tabinfo.AktVerzioId > 1;
            if(kellkieg)
            {
                datt1 = new DataTable(tabinfo.Tablanev);
                dv1 = new DataView();
                string elozosel  = " where verzio_id = "+ (tabinfo.AktVerzioId - 1).ToString();
                Fak.Select(datt1, Fak.AktualCegconn, tabinfo.Tablanev, elozosel, "", false);
                dv1.Table = datt1;
            }
            string[] cnevek = tag.Azonositok.Comboszovegbe;
            ArrayList cnevekar = new ArrayList(cnevek);
            int[] cnevekcol;
            Cols[] cnevekegycol;
            cnevekcol = new int[cnevek.Length];
            cnevekegycol = new Cols[cnevek.Length];
            string cfil;
            string cszov;
            string cid;
            string cidnev = tabinfo.IdentityColumnName;
            if (tabinfo.TermSzarm != "SZ" && tabinfo.Adattabla.LastSel != "" && tabinfo.Adattabla.TableName != "LEIRO")
            {
                datt = new DataTable(tabinfo.Tablanev);
                Fak.Select(datt, tabinfo.Adattabla.Connection, tabinfo.Tablanev, "", "", false);
            }
            else
                datt = tabinfo.Adattabla;
            dv.Table = datt;
            if (tabinfo.Tablanev == "BASE")
            {
                dv.RowFilter = "SUBSTRING(AZON,1,1)='T' AND SZOVEG <> 'Természetes' AND TABLANEV=''";
                cidnev = "SORREND";
            }
            dv.Sort = tabinfo.ComboSort;
            if (cfilnev == "")
                cfilcol = -1;
            else
                cfilcol = datt.Columns.IndexOf(cfilnev);
            if (cfilcol != -1)
            {
                for (int i = 0; i < cnevek.Length; i++)
                {
                    bool comboe = false;
                    string egynev = cnevek[i];
                    string combonev = egynev;
                    if (egynev.Contains("_K"))
                    {
                        comboe = true;
                        egynev = egynev.Substring(0, egynev.Length - 2);
                    }
                    Cols tabinfocol = tabinfo.TablaColumns[egynev];
                    if (comboe)
                        tabinfocol = tabinfocol.Kiegcol;
                    cnevekcol[i] = datt.Columns.IndexOf(tabinfocol.ColumnName);
                    cnevekegycol[i] = tabinfocol;
                }
            }
            Minhossz = 0;
            if (dv.Count == 0)
            {
                for (int i = 0; i < cnevek.Length; i++)
                    Maxhossz += cnevekegycol[i].InputMaxLength;
            }
            else
            {
                for (int j = 0; j < dv.Count; j++)
                {
                    cszov = "";
                    DataRow dr = dv[j].Row;
                    cfil = dr[cfilcol].ToString().Trim();
                    cid = dr[cidnev].ToString();
                    for (int k = 0; k < cnevekcol.Length; k++)
                    {
                        if (cszov != "")
                            cszov += " ";
                        string st = dr[cnevekcol[k]].ToString().Trim();
                        if (cnevekegycol[k].DataType == typeof(DateTime))
                            st = Convert.ToDateTime(dr[cnevekcol[k]].ToString()).ToShortDateString();
                        string form = cnevekegycol[k].Format;
                        if (st.Length != 0)
                        {
                            for (int i = 0; i < st.Length; i++)
                            {
                                if (form.Length > i)
                                {
                                    string egykar = form.Substring(i, 1);
                                    if (egykar != "#")
                                        st = st.Insert(i, egykar);
                                }
                            }
                        }
                        cszov += st;
                    }
                    if (cszov != "")
                    {
                        ComboFileinfo.Add(cfil);
                        ComboInfo.Add(cszov);
                        if (cszov.Length > Maxhossz)
                        {
                            Maxhossz = cszov.Length;
                            Maxszov = cszov;
                        }
                        if (Minhossz == 0 || Minhossz > cszov.Length)
                        {
                            Minhossz = cszov.Length;
                            Minszov = cszov;
                        }
                        ComboId.Add(cid);
                    }
                }
                if (kellkieg)
                {
                    for (int j = 0; j < dv1.Count; j++)
                    {
                        cszov = "";
                        DataRow dr = dv1[j].Row;
                        cfil = dr[cfilcol].ToString().Trim();
                        cid = dr[cidnev].ToString();
                        for (int k = 0; k < cnevekcol.Length; k++)
                        {
                            if (cszov != "")
                                cszov += " ";
                            string st = dr[cnevekcol[k]].ToString().Trim();
                            if (cnevekegycol[k].DataType == typeof(DateTime))
                                st = Convert.ToDateTime(dr[cnevekcol[k]].ToString()).ToShortDateString();
                            string form = cnevekegycol[k].Format;
                            if (st.Length != 0)
                            {
                                for (int i = 0; i < st.Length; i++)
                                {
                                    if (form.Length > i)
                                    {
                                        string egykar = form.Substring(i, 1);
                                        if (egykar != "#")
                                            st = st.Insert(i, egykar);
                                    }
                                }
                            }
                            cszov += st;
                        }
                        if (cszov != "")
                        {
                            KiegFileinfo.Add(cfil);
                            KiegInfo.Add(cszov);
                            if (cszov.Length > Maxhossz)
                            {
                                Maxhossz = cszov.Length;
                                Maxszov = cszov;
                            }
                            if (Minhossz == 0 || Minhossz > cszov.Length)
                            {
                                Minhossz = cszov.Length;
                                Minszov = cszov;
                            }
                            KiegId.Add(cid);
                        }
                    }
                }
            }
            if (dv.Count != 0)
                SetDefertekek();
           dv.RowFilter = "";
        }
Example #10
0
 /// <summary>
 /// Uj elem hozzaadasa, ha meg nincs meg
 /// </summary>
 /// <param name="tag">
 /// Az elem TablainfoTag-ja
 /// </param>
 public void Infoba(TablainfoTag tag)
 {
     bool megvan = false;
     foreach (TablainfoTag egytag in Tagok)
     {
         if (egytag.Azonositok.Azontip == tag.Azonositok.Azontip)
         {
             megvan = true;
             break;
         }
     }
     if (!megvan)
     {
         Tagok.Add(tag);
         string szov = tag.Azonositok.Szoveg;
         ComboInfo.Add(szov);
         if (szov.Length > Maxhossz)
             Maxhossz = szov.Length;
         ComboFileinfo.Add(tag.Azonositok.Azontip);
     }
 }
Example #11
0
 /// <summary>
 /// index megallapitas TablainfoTag alapjan
 /// </summary>
 /// <param name="tag">
 /// a TablainfoTag
 /// </param>
 /// <returns>
 /// index vagy -1
 /// </returns>
 public int Find(TablainfoTag tag)
 {
     for (int i = 0; i < Tagok.Count; i++)
     {
         if (((TablainfoTag)Tagok[i]).Azonositok.Azontip == tag.Azonositok.Azontip)
             return i;
     }
     return -1;
 }
Example #12
0
 /// <summary>
 /// objectum eloallitasa schematabla sor alapjan
 /// </summary>
 /// <param name="drow">
 /// a schematabla sora
 /// </param>
 /// <param name="tabinfo">
 /// az objectum tablainformacioja
 /// </param>
 public Cols(DataRow drow, Tablainfo tabinfo)
 {
     _tabinfo = tabinfo;
     _aktualtag = tabinfo.TablaTag;
     ColumnName = drow["ColumnName"].ToString().Trim();
     _inputmaxlength = (int)drow["ColumnSize"];
     _columnsize = _inputmaxlength;
     DataType = (System.Type)drow["DataType"];
     ReadOnly = (bool)drow["IsReadOnly"];
     _readonly = ReadOnly;
     _isidentity = (bool)drow["IsAutoIncrement"];
     _lehetures = (bool)drow["AllowDBNull"];
     _isAllowDbNull = _lehetures;
     _inputlathato = false;
     _tartalom = "";
     _origtartalom = "";
     _tizedesek = 0;
     if (!_isidentity)
     {
         if (Numeric(DataType))
         {
             if (!DataType.ToString().Contains("Int"))
                 _tizedesek = Convert.ToInt16(drow["NumericScale"].ToString());
             DefaultValue = "0";
         }
         else if (DataType.ToString() == "System.DateTime")
         {
             _inputmaxlength = 11;
             if (ColumnName == "LAST_MOD")
             {
                 _inputmaxlength = 30;
             }
         }
         else
             DefaultValue = "";
     }
     else
     {
         tabinfo.IdentityColumnName = ColumnName;
         tabinfo.IdentityColumnIndex = tabinfo.Adattabla.Columns.IndexOf(ColumnName);
     }
 }
Example #13
0
 /// <summary>
 /// objectum letrehozas
 /// </summary>
 /// <param name="colname">
 /// az oszlop neve
 /// </param>
 /// <param name="datatype">
 /// az oszlop adattipusa
 /// </param>
 /// <param name="oszlszov">
 /// oszlopos megjeleniteshez a szoveg
 /// </param>
 /// <param name="maxlength">
 /// maximalis adathossz
 /// </param>
 /// <param name="lathato">
 /// lathato?
 /// </param>
 /// <param name="tabinfo">
 /// az objectum tablainformacioja
 /// </param>
 /// <param name="tooltip">
 /// tooltip szoveg
 /// </param>
 public Cols(string colname, string datatype, string oszlszov, int maxlength,bool lathato,Tablainfo tabinfo,string tooltip)
 {
     ColumnName = colname;
     DataType = System.Type.GetType(datatype);
     Caption = oszlszov;
     ToolTip = tooltip;
     _lathato = lathato;
     _inputmaxlength = maxlength;
     int i = Caption.Length;
     if (datatype == "System.String")
     {
         if (i > maxlength)
             MaxLength = i;
         else
             MaxLength = _inputmaxlength;
     }
     if (Numeric(DataType))
         DefaultValue = "0";
     _tabinfo = tabinfo;
     _aktualtag = tabinfo.TablaTag;
 }
Example #14
0
 private void NewTablainfo(AdatTabla dt, int sorindex, TablainfoTag tag, Azonositok tagazon, FakUserInterface fak, bool leiroe)
 {
     _leiroe = leiroe;
     _fak = fak;
     _tablatag = tag;
     _parenttag = tag.ParentTag;
     _azonositok = tagazon;
     if (dt != null)
         _adattabla = dt;
 }
Example #15
0
        /// <summary>
        /// Comboinformaciok update-je
        /// </summary>
        /// <param name="tag">
        /// TablainfoTag
        /// </param>
        public void Combokupdate(TablainfoTag tag)
        {
            bool saveevent = EventTilt;
            EventTilt = true;
            bool forditott = tag.Forditott;
            Tablainfo tabinfo = tag.Tablainfo;
            string egyazontip = tabinfo.Azontip;
            string adatfajta = tabinfo.Adatfajta;
            int i = _comboinfok.ComboazontipCombok.Find(tag);
            bool lehetcombo = tag.Azonositok.Lehetcombo;
            if (!lehetcombo)
            {
                if (i != -1)
                    _comboinfok.ComboazontipCombok.Deleteinfo(i);
                Comboinfok alapcombo = _comboinfok.AlapComboFind(tag);
                if (alapcombo != null)
                {
                    i = alapcombo.Find(tabinfo);
                    if (i != -1)
                        alapcombo.Deleteinfo(i);
                }
            }
            else if (!forditott)
            {
                _comboinfok.ComboazontipCombok.Infoba(tag);
                if (tag.Azonositok.Combofileba != "" && tag.Azonositok.Comboszovegbe != null)
                {
                    _comboinfok.AlapComboAdd(tag);
                    string azontip = tag.Azonositok.Azontip;
                    foreach (Comboinfok egyinf in _comboinfok.AlapCombok)
                    {
                        if (egyinf.Combotag.Azonositok.Azontip == azontip)
                        {
                            foreach (ComboBox cb in egyinf.ComboArray)
                            {
                                if (cb.Items.Count == egyinf.ComboFileinfo.Count)
                                {
                                    for (int k = 0; k < cb.Items.Count; k++)
                                        cb.Items[k] = egyinf.ComboInfo[k].ToString();
                                }
                                else
                                {
                                    cb.Items.Clear();
                                    cb.Items.AddRange((object[])egyinf.ComboInfo.ToArray(typeof(object)));
                                }
                                if (cb.Items.Count != 0)
                                {
                                    cb.SelectedIndex = 0;
                                }
                                MezoTag mezotag = (MezoTag)cb.Tag;
                                if (mezotag != null)
                                {
                                    Cols egycol = mezotag.Egycol;
                                    if (cb.Items.Count == 0)
                                    {
                                        egycol.ComboAktFileba = "0";
                                        egycol.ComboAktSzoveg = "";
                                    }
                                    else if (egycol.Combo_Info != null)
                                    {
                                        egycol.ComboAktFileba = egycol.Combo_Info.ComboFileinfo[0].ToString();
                                        egycol.ComboAktSzoveg = egycol.Combo_Info.ComboInfo[0].ToString();
                                    }
                                }

                            }
                        }

                    }
                }
            }
            if (tag.Azonositok.Lehetosszef)
                _comboinfok.LehetOsszefCombok.Infoba(tag);
            else
            {
                i = _comboinfok.LehetOsszefCombok.Find(tag);
                if (i != -1)
                    _comboinfok.LehetOsszefCombok.Deleteinfo(i);
            }
            if (tag.Azonositok.Lehetcsoport)
                _comboinfok.LehetCsoportCombok.Infoba(tag);
            else
            {
                i = _comboinfok.LehetCsoportCombok.Find(tag);
                if (i != -1)
                    _comboinfok.LehetCsoportCombok.Deleteinfo(i);
            }
            EventTilt = saveevent;
        }
Example #16
0
 /// <summary>
 /// AlapCombok-ban tag alapjan keresi a megfelelot
 /// </summary>
 /// <param name="tag">
 /// ezt keresi
 /// </param>
 /// <returns></returns>
 public Comboinfok AlapComboFind(TablainfoTag tag)
 {
     foreach (Comboinfok egycomboinf in AlapCombok)
         for (int i = 0; i < AlapCombok.Count; i++)
         {
             if (egycomboinf.Combotag.Azonositok.Azontip == tag.Azonositok.Azontip
                 || egycomboinf.Combotag.Azonositok.Azontip == tag.Azonositok.Szrmazontip)
                 return egycomboinf;
         }
     return null;
 }
Example #17
0
        /// <summary>
        /// objectum letrehozasa, FakUserInterface hivja az ott leirt parameterekkel
        /// a teljes strukturat, ami a FakPlusz mukodesehez kell, letrehozza
        /// </summary>
        /// <param name="alkalmazas">
        /// alkalmazas neve
        /// </param>
        /// <param name="form">
        /// main form
        /// </param>
        /// <param name="kellprogress">
        /// kell progressbar?
        /// </param>
        /// <param name="connstringek">
        /// connectionstringek tombje
        /// </param>
        /// <param name="adatbazisfajta">
        /// adatbazisfajta:Sql vagy MySql
        /// </param>
        /// <param name="mainvezerles">
        /// main vezerloinfo
        /// </param>
        /// <param name="kezeloid">
        /// kezelo id-je vagy -2
        /// </param>
        private void NewFakUserInterface(string alkalmazas, Form form, bool kellprogress, string[] connstringek, string adatbazisfajta, Vezerloinfo mainvezerles, int kezeloid, bool webe)
        {
            UserSzamitasok.UserSzamitasok.Init(this);
            _alkalmazas = alkalmazas;
            _mainvezerles = mainvezerles;
            _mainform = form;
            KezeloId = kezeloid;
            Webe = webe;
            if (adatbazisfajta == "MySql")
                _mysqle = true;
            else
                _mysqle = false;
            ConnectionStringArray = new ArrayList(connstringek);
            _rendszerconn = connstringek[0];
            _userconn = connstringek[1];
            _alapconnectionstringek[0] = connstringek[0];
            _alapconnectionstringek[1] = connstringek[1];
            NaploTablak = new DataTable[connstringek.Length];
            LastUpdateDateTime = new DateTime[connstringek.Length];
            LastBackupDateTime = new DateTime[connstringek.Length];
            NaploTablak[0] = new DataTable("VALTOZASNAPLO");
            NaploTablak[1] = new DataTable("VALTOZASNAPLO");
            LastUpdateDateTime[0] = DateTime.MinValue;
            LastUpdateDateTime[1] = DateTime.MinValue;
            int maxi = connstringek.Length;
            if (alkalmazas == "TERVEZO")
            {
                maxi = 3;
                if (!_rendszerconn.Contains("GITTA") && !_rendszerconn.Contains("localhost"))
                    _enyem = false;
            }
            for (int i = 2; i < maxi; i++)
            {
                _cegconnectionok.Add(connstringek[i]);
                NaploTablak[i] = new DataTable("VALTOZASNAPLO");
                LastUpdateDateTime[i] = DateTime.MinValue;
            }
            Sqlinterface.RendszerUserConn(_rendszerconn, _userconn);
            Sqlinterface.SetCegConnectionok((string[])_cegconnectionok.ToArray(typeof(string)));
            Sqlinterface.Cegconn(_cegconnectionok[0].ToString());
            //LastBackupDateTime[0] = Sqlinterface.GetLastBackupDate(_rendszerconn);
            //LastBackupDateTime[1] = Sqlinterface.GetLastBackupDate(_userconn);
            Sqlinterface.Select(NaploTablak[0], _rendszerconn, "VALTOZASNAPLO", "", "", true);
            NaploTablak[0].Rows.Clear();
            Sqlinterface.Select(NaploTablak[1], _userconn, "VALTOZASNAPLO", "", "", true);
            NaploTablak[1].Rows.Clear();
            for (int i = 2; i < maxi; i++)
            {
                //LastBackupDateTime[i] = Sqlinterface.GetLastBackupDate(connstringek[i]);
                Sqlinterface.Select(NaploTablak[i], connstringek[i], "VALTOZASNAPLO", "", "", true);
                NaploTablak[i].Rows.Clear();
            }
            //DataTable dtcegek = new DataTable();
            DataTable dtcegalkalmazasok = new DataTable();
            Sqlinterface.Select(Alkalmazasok, _rendszerconn, "KODTAB", " where KODTIPUS='Alkalm'", "", false);
            foreach (DataRow dr in Alkalmazasok.Rows)
            {
                string sorszam = dr["SORSZAM"].ToString();
                string nev = dr["SZOVEG"].ToString();
                AlkalmazasNevek.Add(nev);
                AlkalmazasIdk.Add(sorszam);
                if (_alkalmazas != "TERVEZO" && nev == _alkalmazas)
                    _alkalmazasid = sorszam;
            }
            if (_alkalmazas != "TERVEZO" && _alkalmazasid == "")
            {
                CloseProgress();
                FakPlusz.MessageBox.Show("Nincs " + _alkalmazas + " nevü alkalmazás!");
                _bajvan = true;
                return;
            }
            //Sqlinterface.Select(dtcegek, _userconn, "CEGEK", "", "CEG_ID", false);
            string kezdevho = DateTime.Today.ToShortDateString().Substring(0, 8) + "01";
            DateTime modkezdetedatum = Convert.ToDateTime(kezdevho);
            DateTime modvegedatum = modkezdetedatum.AddMonths(1).AddDays(-1);
            string vegevho = DatumToString(modvegedatum);
            _aktintervallum = new DateTime[] { modkezdetedatum, modvegedatum };
            _shortdateintervallum = new string[] { kezdevho, vegevho };
            _verzioinfok = new VerzioinfoCollection();
            string[] szintek = new string[] { "R", "U", "C" };
            for (int i = 0; i < szintek.Length; i++)
            {
                Verzioinfok egyver = new Verzioinfok(this);
                _verzioinfok.Add(egyver, szintek[i]);
                egyver.VerzioinfoCollection = _verzioinfok;
            }
            //if (kellprogress)
            //  OpenProgress();

            SetProgressText("Alapinfok töltése");
            Rendszerversiontolt();
            ProgressRefresh();
            Userversiontolt();
            ProgressRefresh();
            AdatTabla leirotab = new AdatTabla("LEIRO");
            _leirotag = new TablainfoTag(leirotab, this);
            string[] szovegek = new string[] { "Rendszerszintû Combok", "Userszintû Combok", "Céginicializálás" };
            string[] azonok = new string[] { "RC", "UC", "CC" };
            if (!_bajvan)
            {
                _leirotablainfo = _leirotag.Tablainfo;
                _leironode = _leirotablainfo.TablaTag.Node;
                AdatTabla dt = new AdatTabla("BASE");
                Sqlinterface.Select((DataTable)dt, _rendszerconn, "BASE", "", "order by PARENT,SORREND", false);
                _basetag = new TablainfoTag(dt, this);
                _basenode = _basetag.Node;
                if (kellprogress)
                {
                    KezdetiForm.OpenKezdeti(this, szovegek, azonok);
                    //                   KezdetiForm.OpenKezdeti(this, null, null);
                    //                   _mainform.AddOwnedForm(KezdetiForm);
                }
                DataView fofaview = dt.DataView;
                fofaview.Table = (DataTable)dt;
                fofaview.Sort = "PARENT,SORREND";
                fofaview.RowFilter = "[parent] = '0'";
                SetProgressText("Rendszer információk töltése");
                TreeNode egynode;
                string baseszoveg;
                string azon;
                for (int i = 0; i < fofaview.Count; i++)
                {
                    baseszoveg = fofaview[i].Row["SZOVEG"].ToString();
                    azon = fofaview[i].Row["AZON"].ToString();
                    TablainfoTag tag = new TablainfoTag(dt, i, this);
                    if (kellprogress)
                        KezdetiForm.Sorkesz(baseszoveg, azon);
                    GyokerTablainfoTagok.Add(tag);
                    egynode = tag.Node;
                }
                foreach (TablainfoTag tag in GyokerTablainfoTagok)
                {
                    TablainfoTagokEpit(tag, fofaview);
                    if (_bajvan)
                        break;
                }
                if (kellprogress)
                {
                    //_mainform.RemoveOwnedForm(KezdetiForm);
                    //KezdetiForm.Visible = false;
                    //OpenProgress();
                }
                fofaview.Sort = "SORREND";
                if (!_bajvan)
                {
                    _leirotablainfo.Beallit();
                    _leirotablainfo.Combobeallit();
                    _basetag.LeiroTablainfo.Beallit();
                    _basetag.LeiroTablainfo.Combobeallit();
                    _basetag.Tablainfo.Beallit();
                    _basetag.Tablainfo.Combobeallit();
                    KezdetiForm.ShowProgress();
                    Combotoltes("R");
                    KezdetiForm.Sorkesz(szovegek[0], azonok[0]);
                    Combotoltes("U");
                    KezdetiForm.Sorkesz(szovegek[1], azonok[1]);
                }
            }
            string selstring = "";
            if (_bajvan)
            {
                string szov = this.BajInfo;
                if (szov == "")
                {
                    CloseProgress();
                    FakPlusz.MessageBox.Show("Programhiba!");
                }
            }
            else                                        // elso ceg adatai
            {
                for (int i = 0; i < _cegconnectionok.Count; i++)
                {
                    if (selstring == "")
                        selstring += " where ";
                    else
                        selstring += " or ";
                    selstring += "CEGCONNECTION='" + _cegconnectionok[i].ToString() + "'";
                }
                _ceginfo = Tablainfok.GetBySzintPluszTablanev("U", "CEGEK");
                int count = _ceginfo.DataView.Count;
                bool[] megvan = new bool[_cegconnectionok.Count];
                if (_ceginfo.DataView.Count < _cegconnectionok.Count)     // uj ceg(ek)
                {
                    for (int i = 0; i < _cegconnectionok.Count; i++)
                    {
                        string conn = _cegconnectionok[i].ToString();
                        for (int j = 0; j < _ceginfo.DataView.Count; j++)
                        {
                            DataRow dr = _ceginfo.DataView[j].Row;
                            if (dr["CEGCONNECTION"].ToString() == conn)
                            {
                                megvan[i] = true;
                                break;
                            }
                        }
                        if (!megvan[i])
                        {
                            DataRow dr = _ceginfo.Ujsor();
                            dr["SZOVEG"] = (count++).ToString() + ".cég";
                            dr["CEGCONNECTION"] = conn;
                        }

                    }
                }
                if (_alkalmazas != "TERVEZO")
                {
                    if (_ceginfo.Modositott)
                        UpdateTransaction(new Tablainfo[] { _ceginfo });
                    //_ceginfo.Adattabla.Rows.Clear();
                    //_ceginfo.Azonositok.Selectstring = selstring;
                    //Sqlinterface.Select(_ceginfo.Adattabla, _userconn, "CEGEK", selstring, _ceginfo.Azonositok.Orderstring, false);
                }
                if (!_bajvan)
                {
                    KezdetiForm.Sorkesz(szovegek[2], azonok[2]);
                    Cegadatok(0);
                    for (int i = 0; i < _tablainfok.Count; i++)
                    {
                        int conind = ConnectionStringArray.IndexOf(_tablainfok[i].Adattabla.Connection);
                        _tablainfok[i].NaploTablainfo = NaploTablainfok[conind];

                    }
                }

                if (!_bajvan)
                {
                    GyokerekEsGyokerChainek();
                    _comboinfok.Kiajanlinfo = _tablainfok.GetByAzontip("SZCTKIAJANL");
                    string azon = "";
                    foreach (Tablainfo info in _tablainfok)
                    {
                        if (info.KellVerzio && (info.LehetCombo || info.LehetOsszef || info.LehetCsoport))
                        {
                            string azontip = info.Azontip;
                            foreach (Tablainfo info1 in _tablainfok)
                            {
                                if (info != info1 && info1.Tablanev != "TARTAL" && info1.KellVerzio)
                                {
                                    if (info1.Tablanev != "OSSZEF")
                                    {
                                        foreach (Cols egycol in info1.ComboColumns)
                                        {
                                            if (egycol.Comboazontip == azontip)
                                            {
                                                if (info.ComboHasznalok.IndexOf(info1) == -1)
                                                {
                                                    info.ComboHasznalok.Add(info1);
                                                    if (Combohasznalok.IndexOf(info) == -1)
                                                        Combohasznalok.Add(info);
                                                }
                                            }
                                        }
                                    }
                                    else if ((info1.Azontip1 == azontip || info1.Azontip2 == azontip) && info.ComboHasznalok.IndexOf(info1) == -1)
                                    {
                                        info.ComboHasznalok.Add(info1);
                                        if (Combohasznalok.IndexOf(info) == -1)
                                            Combohasznalok.Add(info);
                                    }
                                }
                            }
                        }
                    }

                    CloseProgress();
                    KezdetiForm.CloseKezdeti();
                    //                   _mainform.RemoveOwnedForm(KezdetiForm);
                    //                   KezdetiForm.Visible = false;

                }
                else
                {
                    CloseProgress();
                    KezdetiForm.CloseKezdeti();
                    //                   _mainform.RemoveOwnedForm(KezdetiForm);
                    //                  KezdetiForm.Visible = false;
                }
                //                HelpWindow = new Helpwindow(this, Alkalmazas == "TERVEZO");
            }
        }
Example #18
0
 /// <summary>
 /// tabla vagy leirotabla azonositok objectumanak eloallitasa
 /// </summary>
 /// <param name="tag">
 /// A TablainfoTag
 /// </param>
 /// <param name="dr">
 /// Az informacios adatsor
 /// </param>
 /// <param name="sorindex">
 /// az adatsor sorindexe
 /// </param>
 /// <param name="tablanev">
 /// tabla neve
 /// </param>
 /// <param name="fak">
 /// fakuserinterface
 /// </param>
 /// <param name="leiroe">
 /// true: leirotabla
 /// </param>
 public Azonositok(TablainfoTag tag, DataRow dr, int sorindex, string tablanev, FakUserInterface fak, bool leiroe)
 {
     AzonositoInit(tag, dr, sorindex, tablanev, fak, leiroe);
 }
Example #19
0
        private void TablainfoTagIni(AdatTabla dt, int sorindex, Tablainfo tabinfo, TablainfoTag eredetitag, TablainfoTag parenttag, FakUserInterface fak, bool forditott)
        {
            termtablae = false;
            _fak = fak;
            _fak.ProgressRefresh();
            _adattabla = dt;
            _sorindex = sorindex;
            _tabinfo = tabinfo;
            _parenttag = parenttag;
            _forditott = forditott;
            if (_node == null)
                _node = new TreeNode();
            DataRow dr = null;
            if (sorindex != -1)
            {
                dr = dt.Rows[sorindex];
                if (dt.Columns.IndexOf("SORREND") != -1)
                    _sorrend = Convert.ToInt32(dr["SORREND"].ToString());
            }
            if (tabinfo == null || forditott && eredetitag._fordtag == null)
            {
                _azonositok = new Azonositok(this, dr, _sorindex, dt.TableName, fak);
                string szint = _azonositok.Szint;
                if (!"RUC".Contains(szint))
                    fak.Szintstring = szint;
                _leiroazonositok = new Azonositok(this, dr, _sorindex, dt.TableName, fak, true);
                fak.ProgressRefresh();
                switch (dt.TableName)
                {
                    case "LEIRO":
                        _azonositok.Szoveg = "Leiró tábla";
                        _leirotabinfo = new Tablainfo(dt, sorindex, this, _leiroazonositok, fak, true);
                        _leirotabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                        _leirotabinfo.NaploTabla = _fak.NaploTablak[0];
                        _leirotabinfo.Init(true);
                        _tabinfo = new Tablainfo(this, _azonositok, _fak);
                        _tabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                        _tabinfo.LeiroTablainfo = _leirotabinfo;
                        _tabinfo.Adattabla = _leirotabinfo.Adattabla;
                        _tabinfo.Adattabla.Tablainfo = _tabinfo;
                        _tabinfo.Beallit();
                        _tabinfo.LeiroVizsg();
                        if (_azonositok.Azon == "LEIR")
                            _tabinfo.Adattabla.LastSel = _azonositok.Selectstring;
                        break;
                    case "BASE":
                        if (sorindex == -1)     // BASE sajatmaga
                        {
                            _azonositok.Szoveg = "BASE tábla";
                            AdatTabla leirotabla = new AdatTabla("LEIRO");
                            _leirotabinfo = new Tablainfo(leirotabla, -1, this, _leiroazonositok, fak, true);
                            _leirotabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                            _leirotabinfo.NaploTabla = _fak.NaploTablak[0];
                            _leirotabinfo.Init(false);
                            _tabinfo = new Tablainfo(dt, sorindex, this, _azonositok, _fak, false);
                            _tabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                            _tabinfo.LeiroTablainfo = _leirotabinfo;
                            _tabinfo.Init(false);
                            _tabinfo.LeiroVizsg();
                            _fak.Combokupdate(this);
                        }
                        else if (_azonositok.Tablanev != "" && !forditott)
                        {
                            fak.ProgressRefresh();
                            AdatTabla tartaltabla = new AdatTabla("TARTAL");
                            AdatTabla leirotabla = new AdatTabla("LEIRO");
                            _leirotabinfo = new Tablainfo(leirotabla, -1, this, _leiroazonositok, fak, true);
                            _leirotabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                            _leirotabinfo.NaploTabla = _fak.NaploTablak[0];
                            _leirotabinfo.Init(true);
                            _tabinfo = new Tablainfo(tartaltabla, -1, this, _azonositok, fak);
                            _tabinfo.LeiroTablainfo = _leirotabinfo;
                            _tabinfo.Init(true);
                            _tabinfo.LeiroVizsg();
                            if (!fak.BajVan)
                            {
                                for (int i = 0; i < tartaltabla.Rows.Count; i++)
                                {
                                    fak.ProgressRefresh();
                                    DataRow dr1 = tartaltabla.Rows[i];
                                    owner = dr1["OWNER"].ToString();
                                    bool kell = false;
                                    if (fak.Alkalmazas == "TERVEZO" || owner == fak.AlkalmazasId || owner == fak.Alkalmazas)
                                        kell = true;
                                    else
                                    {
                                        char[] vesszo = new char[1];
                                        vesszo[0] = Convert.ToChar(",");
                                        string[] userek = dr1["USEREK"].ToString().Split(vesszo);
                                        if (owner == "" && userek[0] == "")
                                            kell = true;
                                        else
                                        {
                                            for (int j = 0; j < userek.Length; j++)
                                            {
                                                if (userek[j] != "" && userek[j] == fak.Alkalmazas)
                                                {
                                                    kell = true;
                                                    break;
                                                }
                                            }
                                        }
                                    }
                                    if (kell)
                                    {
                                        TablainfoTag tartaltag = new TablainfoTag(tartaltabla, i, null, null, this, fak);
                                        if ("CO".Contains(_azonositok.Adatfajta))
                                        {
                                            fak.ProgressRefresh();
                                            tartaltag.FordTag = new TablainfoTag(tartaltabla, i, _tabinfo, tartaltag, this, fak, true);
                                        }
                                    }
                                }
                            }
                        }
                        break;
                    case "TARTAL":
                        if (!forditott)
                        {
                            akttablanev = _azonositok.Tablanev;
                            string akttermszarm = _azonositok.Termszarm.Trim();
                            aktszint = _azonositok.Szint;
                            string kodtipus = _azonositok.Kodtipus;
                            termtablae = akttermszarm == "T";
                            owner = _azonositok.Ownerid;
                            user = _azonositok.User;
                            AdatTabla adattabla = new AdatTabla(akttablanev);
                            if (akttablanev == "LEIRO")
                                _leirotabinfo = fak.LeiroTag.Tablainfo;
                            else
                            {
                                if (adattabla.TableName == "KODTAB" || adattabla.TableName == "OSSZEF" || adattabla.TableName == "LISTA" || 
                                    adattabla.TableName=="STATISZTIKA" || adattabla.TableName=="ADATSZOLG" || adattabla.TableName=="NAPTARAK")
                                {
                                    _leirotabinfo = fak.SpecialisLeiroTabinfok.GetByAzontip(_leiroazonositok.Azontip);
                                    if(_leirotabinfo==null)
                                    {
                                        AdatTabla leiroadattabla = new AdatTabla("LEIRO");
                                        _leirotabinfo = new Tablainfo(leiroadattabla, -1, this, _leiroazonositok, fak, true);
                                        _leirotabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                                        _leirotabinfo.NaploTabla = _fak.NaploTablak[0];
                                        _leirotabinfo.Init(false);
                                        fak.SpecialisLeiroTabinfok.Add(_leirotabinfo);
                                    }
                                }
                                else
                                {
                                    AdatTabla leiroadattabla = new AdatTabla("LEIRO");
                                    _leirotabinfo = new Tablainfo(leiroadattabla, -1, this, _leiroazonositok, fak, true);
                                    _leirotabinfo.NaploTablainfo = _fak.NaploTablainfok[0];
                                    _leirotabinfo.NaploTabla = _fak.NaploTablak[0];
                                    _leirotabinfo.Init(false);
                                }

                            }
                            if (akttablanev == "LEIRO")
                            {
                                _tabinfo = fak.Tablainfok.GetBySzintPluszTablanev(kodtipus.Substring(0, 1), kodtipus.Substring(1));
                                if (_tabinfo != null)
                                    _tabinfo = _tabinfo.LeiroTablainfo;
                                else
                                    return;
                            }
                            else
                            {
                                _tabinfo = new Tablainfo(adattabla, -1, this, _azonositok, fak);
                                _tabinfo.LeiroTablainfo = _leirotabinfo;
                                if (_azonositok.Verzioinfok.AktualConnection != "")
                                {
                                    _tabinfo.Init(true);
                                    _tabinfo.LeiroVizsg();
                                    if (!fak.BajVan)
                                        fak.Combokupdate(this);
                                }
                            }
                        }
                        else
                        {
                            eredetitag.FordTag = this;
                            _tabinfo = eredetitag._tabinfo;
                            _leirotabinfo = eredetitag._leirotabinfo;
                        }
                        break;
                }
                if (_parenttag != null)
                {
                    Insert();
                    if (_parenttag.Azonositok.Szulotabla != "" && _parenttag.Azonositok.Szuloszint != "")
                    {
                        _azonositok.Szulotabla = _parenttag.Azonositok.Szulotabla;
                        _azonositok.Szuloszint = _parenttag.Azonositok.Szuloszint;
                    }
                    if (termtablae)
                    {
                        tartalinfo = fak.Tablainfok.GetByAzontip("SZRMTARTAL");
                        TablainfoTag parent = tartalinfo.TablaTag;
                        int sorrend;
                        if (tartalinfo.DataView.Count == 0)
                            sorrend = 100;
                        else
                            sorrend = Convert.ToInt32(tartalinfo.DataView[tartalinfo.DataView.Count - 1]["SORREND"].ToString()) + 1000;
                        string megnevezes = _azonositok.Szoveg + " tábla mezöi";
                        string kodtipus = aktszint + akttablanev;
                        string azontip = "SZRM" + aktszint + akttablanev;
                        DataRow row = tartalinfo.Find("KODTIPUS", aktszint + akttablanev);
                        if (row == null)
                        {
                            row = tartalinfo.Ujsor();
                            row["SORREND"] = sorrend;
                            sorrend = sorrend + 1000;
                        }
                        if (row["KODTIPUS"].ToString() != kodtipus)
                        {
                            tartalinfo.Modositott = true;
                            row["KODTIPUS"] = kodtipus;
                        }
                        if (row["SZOVEG"].ToString() != megnevezes)
                        {
                            tartalinfo.Modositott = true;
                            row["SZOVEG"] = megnevezes;
                        }
                        if (row["AZONTIP"].ToString() != azontip)
                        {
                            tartalinfo.Modositott = true;
                            row["AZONTIP"] = azontip;
                        }
                        if (row["OWNER"].ToString() != owner)
                        {
                            tartalinfo.Modositott = true;
                            row["OWNER"] = owner;
                        }
                        if (row["USEREK"].ToString() != user)
                        {
                            tartalinfo.Modositott = true;
                            row["USEREK"] = user;
                        }
                        row = tartalinfo.Find("KODTIPUS", aktszint + akttablanev);
                        tartalinfosorindex = tartalinfo.Rows.IndexOf(row);
                        TablainfoTag tag = tartalinfo.TablaTag.ChildTablainfoTagok[azontip];
                        if (tartalinfo.Modositott)
                        {
                            row["MODOSITOTT_M"] = 1;
                            fak.UpdateTransaction(new Tablainfo[] { tartalinfo });
                        }
                        if (tag == null) 
                        {
                            fak.ProgressRefresh();
                            tag = new TablainfoTag(tartalinfo.Adattabla, tartalinfosorindex, null, null, parent, fak);
                            fak.Combokupdate(tag);
                        }
                    }
                }
                _node.Text = _azonositok.Szoveg;
                _node.Tag = this;
                _azonositok.ToolTipText();
            }
        }
Example #20
0
 /// <summary>
 /// objectum inicializalasa
 /// </summary>
 /// <param name="tag"></param>
 /// <param name="dr"></param>
 /// <param name="sorindex"></param>
 /// <param name="tablanev"></param>
 /// <param name="fak"></param>
 /// <param name="leiroe"></param>
 public void AzonositoInit(TablainfoTag tag, DataRow dr, int sorindex, string tablanev, FakUserInterface fak, bool leiroe)
 {
     _fak = fak;
     _tablatag = tag;
     _sorindex = sorindex;
     _leiroe = leiroe;
     _adatsor = dr;
     if (dr == null && tablanev == "BASE")
     {
         _azon = "BASE";
         _verzioinfok = fak.VerzioInfok["R"];
         _kellverzio = false;
         _leiroenyem = true;
         if (!_leiroe)
         {
             _tablanev = "BASE";
             _szint = "R";
             _selectstring = "";
             _orderstring = " order by PARENT,SORSZAM";
             _beszurhat = "I";
             _modosithat = "I";
             _sorazonositomezo = "SZOVEG";
             _sort = "SORREND";
             _szovegcolname = "SZOVEG";
             _enyem = false;
             _lehetcombo = true;
             _azon = "BASE";
             _azontip = "BASEBASE";
             _combofileba = "SZINT";
             _comboszovegbe = new string[] { "SZOVEG" };
             _combosort = "SORREND";
         }
         else
         {
             _tablanev = "LEIRO";
             _szint = "R";
             _selectstring = " where AZON='" + _azon + "' and TABLANEV='BASE'";
             _orderstring = " order by VERZIO_ID,AZON,TABLANEV,ADATNEV";
             _beszurhat = "N";
             _modosithat = "I";
             _torolheto = false;
             _enyem = true;
             _sorazonositomezo = "ADATNEV";
             _sort = "ADATNEV";
             _szovegcolname = "ADATNEV";
         }
     }
     else if (dr == null || leiroe)    // leiro
     {
         if (dr == null)
         {
             _azon = "LEIR";
             _tablanev = "LEIRO";
             _enyem = true;
             _leiroenyem = true;
             _szint = "R";
             _kellverzio = false;
         }
         else
         {
             _azon = dr["AZON"].ToString();
             _tablanev = dr["TABLANEV"].ToString();
             if (dr.Table.TableName == "TARTAL")
             {
                 _enyem = _fak.SetBoolByIgenNem(dr["ENYEM"].ToString());
                 _leiroenyem = _fak.SetBoolByIgenNem(dr["LEIROENYEM"].ToString());
             }
             _szint = "R";
             _kellverzio = true;
         }
         _selectstring = " where AZON='" + _azon + "' and TABLANEV='" + _tablanev + "'";
         _orderstring = " order by VERZIO_ID,AZON,TABLANEV,ADATNEV";
         _beszurhat = "N";
         _modosithat = "I";
         _torolheto = false;
         _sorazonositomezo = "ADATNEV";
         _sort = "ADATNEV";
         _szovegcolname = "ADATNEV";
         _verzioinfok = fak.VerzioInfok["R"];
         //if (_tablanev == "TARTAL" && _fak.Alkalmazas != "TERVEZO")
         //{
         //    _ownernev = "OWNER";
         //    UpdateSelectString();
         //}
     }
     else if (dr != null)
     {
         AzonositokUpdate(dr);
         if (_tablanev == "LEIRO")
         {
             _szovegcolname = "SORSZOV";
             _enyem = true;
             _verzioinfok = fak.VerzioInfok["R"];
         }
         else if (_tablanev == "TARTAL")
         {
             string savsel = _selectstring;
             _selectstring = " where AZON='" + dr["AZON"].ToString() + "'";
             if (savsel != "")
                 _selectstring += " AND " + savsel;
             _orderstring = " order by VERZIO_ID,SORREND, AZONTIP,AZONTIP1,AZONTIP2";
             _sorazonositomezo = "AZONTIP";
             _sort = "SORREND";
             _azontip = _azon + _tablanev;
             _modosithat = "I";
             _torolheto = true;
             _enyem = false;
             _leiroenyem = true;
             if (_azon != "SZRM")
                 _beszurhat = "I";
             else
                 _beszurhat = "N";
             _kellverzio = true;
         }
         else if (_tablanev == "KODTAB" || _tablanev == "OSSZEF" || _tablanev == "ADATSZOLG" ||
             _tablanev == "LISTA" || _tablanev == "STATISZTIKA")
         {
             _leiroenyem = true;
             _selectstring = " where KODTIPUS='" + _kodtipus + "'";
             if (_tablanev == "OSSZEF")
             {
                 _beszurhat = "N";
                 _torolheto = false;
             }
         }
         else if (_tablanev == "VALTOZASNAPLO")
         {
             string tim = DateTime.Today.ToShortDateString();
             tim = tim.Replace(".", "-");
             if (tim.EndsWith("-"))
                 tim = tim.Substring(0, tim.Length - 1);
             string lastm = "{d '" + tim + "'}";
             _selectstring = " where LAST_MOD>" + lastm;
             if (_fak.Alkalmazas != "TERVEZO")
                 _selectstring += " AND (ALKALM = '' OR ALKALM = '" + _fak.Alkalmazas + "')";
         }
         else if (_tablanev == "USERLOG" ||_tablanev == "CEGKEZELOKIOSZT" || _tablanev == "CEGSZERZODES" )
         {
             if (_fak.AlkalmazasId != "")
                 _selectstring = " where ALKALMAZAS_ID='" + _fak.AlkalmazasId + "'";
         }
         if (_leiroe || _tablanev == "TARTAL")
             _verzioinfok = _fak.VerzioInfok["R"];
         else if (_szint != "" && _adatfajta != "")
         //               {
         {
             _verzioinfok = _fak.VerzioInfok[_szint];
             if (_verzioinfok == null)
                 _verzioinfok = _fak.VerzioInfok["C"];
         }
             UpdateSelectString();
     }
 }
Example #21
0
 public virtual Base SetAktivControl(TablainfoTag tabinfotag,Vezerloinfo vezerloinfo)
 {
     return null;
 }
Example #22
0
 /// <summary>
 /// A LEIRO tabla adattablainformacio letrehozasa
 /// </summary>
 /// <param name="tag">
 /// A tablainformaciot es a hozza tartozo leirotablainformaciot osszefogo objectum
 /// </param>
 /// <param name="tagazon">
 /// a tablainformacio azonositoi
 /// </param>
 /// <param name="fak">
 /// fak
 /// </param>
 public Tablainfo(TablainfoTag tag, Azonositok tagazon, FakUserInterface fak)
 {
     NewTablainfo(null, -1, tag, tagazon, fak, false);
 }