private void tsbFilterByMonth_Click(object sender, EventArgs e) { using (fMonth formaMenuo = new fMonth()) { if (formaMenuo.ShowDialog() == DialogResult.OK) { if (Program.firstDate != DateTime.MinValue) { try { filterElements.Add(string.Format("aktas_data>={0}", DbHelper.FormatDateValue(Program.firstDate))); } catch { Msg.ErrorMsg(Messages.DbErrorMsg); return; } } if (Program.lastDate != DateTime.MinValue) { try { filterElements.Add(string.Format("aktas_data<={0}", DbHelper.FormatDateValue(Program.lastDate))); } catch { Msg.ErrorMsg(Messages.DbErrorMsg); return; } } doFilter(); } } }
private void tsbFilterThisYear_Click(object sender, EventArgs e) { DateTime firstDayOfThisYear = new DateTime(DateTime.Now.Year, 1, 1); string filterThisYear = string.Format("aktas_data>={0}", DbHelper.FormatDateValue(firstDayOfThisYear)); bool wasFiltered = false; int i = 0; int filterElementsCount = filterElements.Count; while (i < filterElementsCount) { if (filterElements[i] == filterThisYear) { filterElements.RemoveRange(i, 1); filterElementsCount--; wasFiltered = true; } i++; } if (!wasFiltered) { filterElements.Add(filterThisYear); } doFilter(); }
private string makeFilterString(string parameterName, object cellValue, ColumnType type) { if (cellValue == null) // || string.IsNullOrEmpty(cellValue.ToString()) { return(string.Format("{0} IS NULL", parameterName)); } switch (type) { case ColumnType.intg: return(string.Format("{0}={1}", parameterName, cellValue.ToString())); case ColumnType.date: return(string.Format("{0}={1}", parameterName, DbHelper.FormatDateValue(cellValue))); case ColumnType.text: return(string.Format("{0}={1}", parameterName, string.Format("'{0}'", sanit(cellValue)))); case ColumnType.booln: return(string.Format("{0}={1}", parameterName, cellValue.ToString())); default: return(string.Empty); } }
//private string cmbStringValue(ComboBox cmb) //{ // // jeigu būtų toks cmb, kurio valuemember tipas būtų string // if (cmb.SelectedIndex > -1 && cmb.SelectedValue != null && !DBNull.Value.Equals(cmb.SelectedValue)) // { // return string.Format("'{0}'", sanit(cmb.SelectedValue.ToString())); // } // else // { // return "NULL"; // } //} private string dtpValue(DateTimePicker dtp) { if (dtp.Checked) { return(DbHelper.FormatDateValue(dtp.Value)); } else { return("NULL"); } }
private List <AtaskaitosEilute> darytiAtaskaita(DateTime bottomDate, DateTime topDate) { DataTable suvirinimaiTable; string where = string.Empty; if (bottomDate == null && topDate != null) { where = string.Format("WHERE Aktai.aktas_data <= {0} ", DbHelper.FormatDateValue(topDate)); } else if (bottomDate != null && topDate == null) { where = string.Format("WHERE Aktai.aktas_data >= {0} ", DbHelper.FormatDateValue(bottomDate)); } else if (bottomDate != null && topDate != null) { if (bottomDate <= topDate) { where = string.Format("WHERE Aktai.aktas_data >= {0} AND Aktai.aktas_data <= {1} ", DbHelper.FormatDateValue(bottomDate), DbHelper.FormatDateValue(topDate)); } else { where = string.Format("WHERE Aktai.aktas_data >= {0} OR Aktai.aktas_data <= {1} ", DbHelper.FormatDateValue(bottomDate), DbHelper.FormatDateValue(topDate)); } } List <List <Suvirinimas> > sarasai = new List <List <Suvirinimas> >(); StringBuilder sb = new StringBuilder("SELECT "); // sb.Append("Aktai.*, Suvirintojai.*, Operatoriai.*, PadaliniaiSuvirintoju.*, PadaliniaiKelininku.*, Vadovai.*, BegiuTipai.* "); sb.Append("Aktai.aktas_data, Aktai.aktas_padalinysId, "); sb.Append("Aktai.k11, Aktai.k12, Aktai.k21, Aktai.k22, Aktai.k23, Aktai.k24, Aktai.k31, Aktai.k32, Aktai.k41, Aktai.k42, Aktai.k51, "); sb.Append("Aktai.id, Aktai.aktas_Nr, Aktai.salyg_begioTemp, Aktai.begis_protarpisMm, "); sb.Append("PadaliniaiSuvirintoju.pavadinimas AS suvirintojo_įmonė, Suvirintojai.vardas AS suvirintojo_vardas, Suvirintojai.pazymNr AS suvirintojo_kodas, "); sb.Append("Operatoriai.vardas AS operatoriaus_vardas, Operatoriai.id AS operatoriaus_kodas, "); sb.Append("KMFilialo.vardas AS kelio_meistro_vardas, KMFilialo.meistrija AS kelio_meistro_meistrija, "); sb.Append("BegiuTipai.pavadinimas AS bėgio_tipas "); sb.Append("FROM "); sb.Append("((((Aktai LEFT JOIN PadaliniaiSuvirintoju ON Aktai.suvirint_padalinysId=PadaliniaiSuvirintoju.id) "); sb.Append("LEFT JOIN Suvirintojai ON Aktai.suvirint_suvirintojasId=Suvirintojai.id) "); sb.Append("LEFT JOIN Operatoriai ON Aktai.tikrin_operatoriusId=Operatoriai.id) "); sb.Append("LEFT JOIN KMFilialo ON Aktai.aktas_pasiraseKMId=KMFilialo.id) "); sb.Append("LEFT JOIN BegiuTipai ON Aktai.begis_tipasId=BegiuTipai.id "); sb.Append("{0}"); sb.Append("ORDER BY Aktai.aktas_data, Aktai.aktas_padalinysId, Aktai.k11, Aktai.k12, Aktai.k21, Aktai.k22, Aktai.k23, Aktai.k24, Aktai.k31, Aktai.k32, Aktai.k41, Aktai.k42, Aktai.k51;"); string suvirinimaiSql = sb.ToString(); suvirinimaiTable = new DataTable(); try { suvirinimaiTable = DbHelper.FillDataTable(string.Format(suvirinimaiSql, where)); } catch (DbException e) { Msg.ErrorMsg(Messages.DbErrorMsg); throw e; } List <AtaskaitosEilute> ataskaita = new List <AtaskaitosEilute>(); if (suvirinimaiTable.Rows.Count == 0) { return(ataskaita); } // Kartojasi veiksmas - kaskart, kai gaminama nauja ataskaita. // Bet taip pat tai leidžia pakeisti lgif.xml failą neuždarius programos. LGIF.loadData(obtainLgifxmlFileName()); // Imama pirmoji iš DB partempta eilutė, ji tampa cmpRow // ir lyginama su toliau einančiomis. // Kiek laukų lyginti, nustatoma pagal k21 reikšmę: // jeigu k21 yra 9, lyginama 10 laukų, t.y. vietos kodas imamas iki k32 imtinai, // jeigu k21 nėra 9, lyginami 8 laukai, t.y. vietos kodas imamas iki k42 imtinai. // Panašios eilutės grupuojamos į grupeSuvirinimu. // Kada randama nebetinkama eilutė, grupeSuvirinimu įrašoma į sarasai, // pradedama nauja grupeSuvirinimu, paskutinioji (netikusi) eilutė tampa ta, su kuria // lyginamos visos toliau einančios, t.y. cmpRow, // ir ji lyginama su toliau einančiomis. // Resultatas - List sarasai, kuris sudarytas iš List<suvirinimaiTable.Row> DataRow cmpRow = suvirinimaiTable.Rows[0]; int kiekLyginti = kiek(cmpRow); List <Suvirinimas> grupeSuvirinimu = new List <Suvirinimas>(); grupeSuvirinimu.Add(new Suvirinimas(suvirinimaiTable.Rows[0])); // suvirinimai suskirstomi į grupes pagal [data + kas virino + vieta] for (int r = 1; r < suvirinimaiTable.Rows.Count; r++) { if (lygiosEilutės(cmpRow, suvirinimaiTable.Rows[r], kiekLyginti)) { grupeSuvirinimu.Add(new Suvirinimas(suvirinimaiTable.Rows[r])); } else { sarasai.Add(grupeSuvirinimu); grupeSuvirinimu = new List <Suvirinimas>(); grupeSuvirinimu.Add(new Suvirinimas(suvirinimaiTable.Rows[r])); cmpRow = suvirinimaiTable.Rows[r]; kiekLyginti = kiek(cmpRow); } } if (grupeSuvirinimu.Count != 0) { sarasai.Add(grupeSuvirinimu); } // iš kiekvienos suvirinimų grupės padaroma viena ataskaitos eilute ir pridedama prie ataskaitos foreach (List <Suvirinimas> suvirinimuGrupe in sarasai) { try { ataskaita.Add(new AtaskaitosEilute(suvirinimuGrupe)); } catch (Exception e) { List <Suvirinimas> weldingGroup = suvirinimuGrupe; Msg.ErrorMsg(e.Message); } } return(ataskaita); }