/// <summary>kiszedi az első _Limit eredményt, meghívja rájuk a NyomtatOklevelVersenyVersenyzo fgv-t </summary> static public void NyomtatOklevelVerseny(string _VEAZON, Oklevel _Oklevel, int _Limit) { List <OKLEVELVERSENYZO> versenyzok = new List <OKLEVELVERSENYZO>( ); EREDMENYLAPVERSENYTELJES Data = new EREDMENYLAPVERSENYTELJES(_VEAZON); Verseny verseny = Program.database.Verseny(_VEAZON).Value; Versenysorozat?versenysorozat = Program.database.Versenysorozat(verseny.VersenySorozat); if (versenysorozat == null) { versenysorozat = new Versenysorozat( ); } string versenydatum = Program.database.Verseny(_VEAZON).Value.Datum; foreach (var test in Data.Ijtipusok) { foreach (var korosztaly in test.Korosztalyok) { if (korosztaly.Egyben == true) { //var indtest = korosztaly.Indulok.Egyben.Take(_Limit).ToList(); //NOTE(mate): nem kell orderby a EREDMENYLAPVERSENYTELJES megcsinálja List <OKLEVELVERSENYZO> ind = (from indulo in korosztaly.Indulok.Egyben select new OKLEVELVERSENYZO { Verseny = verseny.Megnevezes, VersenySorozat = versenysorozat.Value.megnevezés, Helyezes = 0, Indulo = indulo.Nev, Egyesulet = indulo.Egyesulet, Ijtipus = test.Megnevezes, Korosztaly = korosztaly.Megnevezes, InduloNeme = indulo.Nem, Datum = versenydatum }).Take(_Limit).ToList( ); var q = ind.ToArray( ); for (int i = 0; i < q.Count( ); ++i) { q[i].Helyezes = i + 1; } versenyzok.AddRange(q.ToList( )); } else { List <OKLEVELVERSENYZO> ind = (from indulo in korosztaly.Indulok.Nok select new OKLEVELVERSENYZO { Verseny = verseny.Megnevezes, VersenySorozat = versenysorozat.Value.megnevezés, Helyezes = 0, Indulo = indulo.Nev, Egyesulet = indulo.Egyesulet, Ijtipus = test.Megnevezes, Korosztaly = korosztaly.Megnevezes, InduloNeme = indulo.Nem, Datum = versenydatum }).Take(_Limit).ToList( ); var q = ind.ToArray( ); for (int i = 0; i < q.Count( ); ++i) { q[i].Helyezes = i + 1; } versenyzok.AddRange(q.ToList( )); ind = null; ind = (from indulo in korosztaly.Indulok.Ferfiak select new OKLEVELVERSENYZO { Verseny = verseny.Megnevezes, VersenySorozat = versenysorozat.Value.megnevezés, Helyezes = 0, Indulo = indulo.Nev, Egyesulet = indulo.Egyesulet, Ijtipus = test.Megnevezes, Korosztaly = korosztaly.Megnevezes, InduloNeme = indulo.Nem, Datum = versenydatum }).Take(_Limit).ToList( ); q = ind.ToArray( ); for (int i = 0; i < q.Count( ); ++i) { q[i].Helyezes = i + 1; } versenyzok.AddRange(q.ToList( )); } } } string path = Data.VersenyAdatok.VSAZON != null ? Data.VersenyAdatok.VSAZON + "/" + Data.VersenyAdatok.VEAZON + "/" + "Oklevelek" : Data.VersenyAdatok.VEAZON + "/" + "Oklevelek"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } foreach (var oklevelversenyzo in versenyzok) { NyomtatOklevelVersenyVersenyzo(_Oklevel, oklevelversenyzo, path); } }
NyomtatEredmenylapVersenyTeljes(string _VEAZON) { string filename = null; EREDMENYLAPVERSENYTELJES Data = new EREDMENYLAPVERSENYTELJES(_VEAZON); #region alap stringek string headline = "EREDMÉNYLAP"; string típus = "***TELJES***"; string st_vazon_vnev = "Verseny azonosítója, neve: "; string st_ido = "Verseny ideje: "; string st_vosszp = "Verseny összpontszáma: "; string st_insz = "Indulók száma: "; string st_vsorazon = "Versenysorozat azonosítója, neve: "; #endregion if (Data.VersenyAdatok.VSAZON != null) { filename = Data.VersenyAdatok.VSAZON + "\\" + _VEAZON + "\\" + "ERLAPVETELJ.docx"; } else { filename = _VEAZON + "\\" + "ERLAPVETELJ.docx"; } var document = DocX.Create(filename); document.AddHeaders( ); document.MarginBottom = 10; PageNumber(document); #region header var titleFormat = new Formatting(); titleFormat.Size = 14D; titleFormat.Position = 1; titleFormat.Spacing = 5; titleFormat.Bold = true; Header header = document.Headers.odd; Paragraph title = header.InsertParagraph(); title.Append(headline); title.AppendLine(típus); title.Alignment = Alignment.center; titleFormat.Size = 10D; title.AppendLine(Program.Tulajdonos_Megnevezés); title.Bold( ); titleFormat.Position = 12; #endregion var titleFormat2 = new Formatting(); titleFormat2.Size = 10D; titleFormat2.Position = 1; Paragraph paragraph_1 = header.InsertParagraph(); paragraph_1.AppendLine(st_vazon_vnev); paragraph_1.Append(_VEAZON + "," + Data.VersenyAdatok.VEMEGN); paragraph_1.Bold( ); titleFormat2.Bold = false; paragraph_1.Append("\n" + st_ido); paragraph_1.Append(Data.VersenyAdatok.VEDATU); paragraph_1.Bold( ); paragraph_1.Append("\t" + st_vosszp); paragraph_1.Append((Data.VersenyAdatok.VEOSPO * 10).ToString( )); paragraph_1.Bold( ); paragraph_1.Append("\t" + st_insz); paragraph_1.Append(Data.VersenyAdatok.VEINSZ.ToString( )); paragraph_1.Bold( ); paragraph_1.Append("\n" + st_vsorazon); paragraph_1.Append(Data.VersenyAdatok.VSAZON + "," + Data.VersenyAdatok.VSMEGN); paragraph_1.Bold( ); paragraph_1.AppendLine( ); for (int i = 0; i < Data.Ijtipusok.Count; i++) { Table table = null; for (int j = 0; j < Data.Ijtipusok[i].Korosztalyok.Count; j++) { if (Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak.Count != 0 || Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok.Count != 0 || Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben.Count != 0) { Paragraph adatok = document.InsertParagraph( ); adatok.Append("Ijtipusok: "); adatok.Append(Data.Ijtipusok[i].Megnevezes); adatok.Bold( ); adatok.AppendLine(" Korosztály: "); adatok.Append(Data.Ijtipusok[i].Korosztalyok[j].Megnevezes); adatok.Bold( ); if (Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok.Count != 0) { Paragraph np = document.InsertParagraph( ); np.Append(" Nők: "); np.Bold( ); } for (int k = 0; k < Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok.Count; k++) { table = document.AddTable(1, 7); table.Rows[0].Cells[1].Paragraphs[0].Append((k + 1) + "."); table.Rows[0].Cells[2].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok[k].Sorszam.ToString( )); table.Rows[0].Cells[3].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok[k].Nev); table.Rows[0].Cells[4].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok[k].Egyesulet); table.Rows[0].Cells[5].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok[k].OsszPont.ToString( ) + " pont"); table.Rows[0].Cells[6].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Nok[k].Szazalek.ToString( ) + " %"); EredmenyLapVersenyTablazatFormazas(table); document.InsertTable(table); } if (Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak.Count != 0) { Paragraph fp = document.InsertParagraph( ); fp.Append(" Férfiak: "); fp.Bold( ); } for (int k = 0; k < Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak.Count; k++) { table = document.AddTable(1, 7); table.Rows[0].Cells[1].Paragraphs[0].Append((k + 1) + "."); table.Rows[0].Cells[2].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak[k].Sorszam.ToString( )); table.Rows[0].Cells[3].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak[k].Nev); table.Rows[0].Cells[4].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak[k].Egyesulet); table.Rows[0].Cells[5].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak[k].OsszPont.ToString( ) + " pont"); table.Rows[0].Cells[6].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Ferfiak[k].Szazalek.ToString( ) + " %"); EredmenyLapVersenyTablazatFormazas(table); document.InsertTable(table); } if (Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben.Count != 0) { Paragraph fp = document.InsertParagraph( ); fp.Append(" Egyben: "); fp.Bold( ); } for (int k = 0; k < Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben.Count; k++) { table = document.AddTable(1, 7); table.Rows[0].Cells[1].Paragraphs[0].Append((k + 1) + "."); table.Rows[0].Cells[2].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben[k].Sorszam.ToString( )); table.Rows[0].Cells[3].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben[k].Nev); table.Rows[0].Cells[4].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben[k].Egyesulet); table.Rows[0].Cells[5].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben[k].OsszPont.ToString( ) + " pont"); table.Rows[0].Cells[6].Paragraphs[0].Append(Data.Ijtipusok[i].Korosztalyok[j].Indulok.Egyben[k].Szazalek.ToString( ) + " %"); EredmenyLapVersenyTablazatFormazas(table); document.InsertTable(table); } } } } try { document.Save( ); } catch (System.Exception) { MessageBox.Show("A dokumentum meg van nyitva!", "ERLAPVETELJ.DOCX", MessageBoxButtons.OK, MessageBoxIcon.Error); } return(filename); }