/// <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(); } }
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() + "'"; } } } }
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; } } } }
/// <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; } } }
/// <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; }
/// <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); }
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; }
/// <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); }
/// <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 = ""; }
/// <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); } }
/// <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; }
/// <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); } }
/// <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; }
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; }
/// <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; }
/// <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; }
/// <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"); } }
/// <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); }
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(); } }
/// <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(); } }
public virtual Base SetAktivControl(TablainfoTag tabinfotag,Vezerloinfo vezerloinfo) { return null; }
/// <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); }