Пример #1
0
        /// <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);
        }
Пример #2
0
        /// <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);
        }