/// <summary> /// Get a list of artikel for display purposes /// </summary> /// <param name="ident">Identity</param> /// <param name="ArtnrFilter">Artnr or part of..</param> /// <param name="ArtnamnFilter">ArtNamn or part of..</param> /// <returns></returns> // 2016-02-09 KJBO public List <ArtikelCL> getArtList(string ident, string ArtnrFilter, string ArtnamnFilter) { // Create article list List <ArtikelCL> artlist = new List <ArtikelCL>(); // Get reparator CReparator cr = new CReparator(); int identOK = cr.checkIdent(ident); if (identOK == -1) { ArtikelCL art = new ArtikelCL(); art.ErrCode = -10; art.ErrMessage = "Ogiltigt login"; artlist.Add(art); return(artlist); } // SQL string string sSql = " SELECT a.artnr, a.artnamn, a.lev_id, l.levnamn, a.anm1, a.anm2 " + " FROM artikel a " + " left outer join leverantor l on a.lev_id = l.lev_id " + " where upper(a.artnr) like upper(:artnr) " + " and upper(a.artnamn) like upper(:artnamn) " + " and a.visas = true "; // Add parameter list NxParameterCollection np = new NxParameterCollection(); np.Add("artnr", CCommonFunc.addWildCard(ArtnrFilter)); np.Add("artnamn", CCommonFunc.addWildCard(ArtnamnFilter)); // Init variable string errText = ""; DataTable dt = cdb.getData(sSql, ref errText, np); // Init varible int errCode = -100; // No rows found..... if (errText == "" && dt.Rows.Count == 0) { errText = "Det finns inga artiklar i aktuellt urval "; errCode = 0; } // No rows found or error when retrieving if (errText != "") { ArtikelCL a = new ArtikelCL(); if (errText.Length > 2000) { errText = errText.Substring(1, 2000); } a.ErrCode = errCode; a.ErrMessage = errText; artlist.Add(a); return(artlist); } // Loop rows..... foreach (DataRow dr in dt.Rows) { ArtikelCL a = new ArtikelCL(); a.Artnr = dr["artnr"].ToString(); a.Artnamn = dr["artnamn"].ToString(); a.LevID = dr["lev_id"].ToString(); a.LevNamn = dr["levnamn"].ToString(); a.Anm1 = dr["anm1"].ToString(); a.Anm2 = dr["anm2"].ToString(); artlist.Add(a); } // .. and return list return(artlist); }
/// <summary> /// Get all ventils for one customer /// </summary> /// <param name="ident"></param> /// <param name="KundID"></param> /// <returns></returns> public List <VentilCL> getVentilsForCust(string ident, string KundID, string position, string IDnr, string ventiltyp, string fabrikat, string anlaggningsnr) { List <VentilCL> vl = new List <VentilCL>(); CReparator cr = new CReparator(); int identOK = cr.checkIdent(ident); if (identOK == -1) { VentilCL v = new VentilCL(); v.ErrCode = -10; v.ErrMessage = "Ogiltigt login"; vl.Add(v); return(vl); } string sSql = " SELECT v.ventil_id, v.ventilkategori, v.kund_id, v.\"position\", v.fabrikat, v.ventiltyp, v.id_nr, v.pn, v.pn2, v.dn, v.dn2, " + " v.oppningstryck, v.stalldonstyp, v.stalldon_id_nr, v.stalldon_fabrikat, v.stalldon_artnr, v.lagesstallartyp, " + " v.lagesstall_id_nr, v.lagesstall_fabrikat, v.avdelning, v.anlaggningsnr, " + " v.forra_comment, vk.ventilkategori as ventilkategori_namn " + ", v.plan, v.rum, v.insideDiameter, v.outsideDiameter " + " FROM ventil v " + " join ventilkategori vk on v.ventilkategori = vk.ventilkat_id " + " where v.kund_id = :pKundID " + " and upper(coalesce(v.\"position\",'')) like upper(:position) " + " and upper(coalesce(v.id_nr,'')) like upper(:id_nr) " + " and upper(coalesce(v.ventiltyp,'')) like upper(:ventiltyp) " + " and upper(coalesce(v.fabrikat,'')) like upper(:fabrikat) " + " and upper(coalesce(v.anlaggningsnr,'')) like upper(:anlaggningsnr) "; NxParameterCollection np = new NxParameterCollection(); np.Add("pKundID", KundID); np.Add("position", CCommonFunc.addWildCard(position)); np.Add("ID_nr", CCommonFunc.addWildCard(IDnr)); np.Add("ventiltyp", CCommonFunc.addWildCard(ventiltyp)); np.Add("fabrikat", CCommonFunc.addWildCard(fabrikat)); np.Add("anlaggningsnr", CCommonFunc.addWildCard(anlaggningsnr)); string errText = ""; DataTable dt = cdb.getData(sSql, ref errText, np); int errCode = -100; if (errText == "" && dt.Rows.Count == 0) { errText = "Det finns inga ventiler för aktuell kund"; errCode = 0; } if (errText != "") { VentilCL v = new VentilCL(); if (errText.Length > 2000) { errText = errText.Substring(1, 2000); } v.ErrCode = errCode; v.ErrMessage = errText; vl.Add(v); return(vl); } foreach (DataRow dr in dt.Rows) { VentilCL vr = new VentilCL(); vr.VentilID = dr["ventil_id"].ToString(); vr.VentilkatID = Convert.ToInt16(dr["ventilkategori"]); vr.Ventilkategori = dr["ventilkategori_namn"].ToString(); vr.KundID = dr["kund_id"].ToString(); vr.Position = dr["position"].ToString(); vr.Fabrikat = dr["fabrikat"].ToString(); vr.Ventiltyp = dr["ventiltyp"].ToString(); vr.IdNr = dr["id_nr"].ToString(); vr.Pn = dr["pn"].ToString(); vr.Pn2 = dr["pn2"].ToString(); vr.Dn = dr["dn"].ToString(); vr.Dn2 = dr["dn2"].ToString(); if (dr["oppningstryck"] == DBNull.Value) { vr.Oppningstryck = 0; } else { vr.Oppningstryck = Convert.ToDecimal(dr["oppningstryck"]); } vr.Stalldonstyp = dr["stalldonstyp"].ToString(); vr.StalldonIDNr = dr["stalldon_id_nr"].ToString(); vr.StalldonFabrikat = dr["stalldon_fabrikat"].ToString(); vr.StalldonArtnr = dr["stalldon_artnr"].ToString(); vr.Lagesstallartyp = dr["lagesstallartyp"].ToString(); vr.LagesstallIDNr = dr["lagesstall_id_nr"].ToString(); vr.LagesstallFabrikat = dr["lagesstall_fabrikat"].ToString(); vr.Avdelning = dr["avdelning"].ToString(); vr.Anlaggningsnr = dr["anlaggningsnr"].ToString(); vr.Plan = dr["plan"].ToString(); vr.Rum = dr["rum"].ToString(); // 2017-09-25 KJBO if (dr["insideDiameter"] == DBNull.Value) { vr.insideDiameter = 0; } else { vr.insideDiameter = Convert.ToDecimal(dr["insideDiameter"]); } if (dr["outsideDiameter"] == DBNull.Value) { vr.outsideDiameter = 0; } else { vr.outsideDiameter = Convert.ToDecimal(dr["outsideDiameter"]); } vr.ErrCode = 0; vr.ErrMessage = ""; vl.Add(vr); } return(vl); }