public ChartsOfItem getItem(int ItemID, SqlConnection con)
        {
            DataTable    dt      = new DataTable();
            ChartsOfItem objItem = null;

            try
            {
                SqlDataAdapter da = new SqlDataAdapter("select * from T_Item where (ItemID=@ItemID)", con);
                da.SelectCommand.Parameters.Add("@ItemID", SqlDbType.Int).Value = ItemID;
                da.Fill(dt);
                da.Dispose();
                if (dt.Rows.Count == 0)
                {
                    return(null);
                }

                objItem                 = new ChartsOfItem();
                objItem.ItemID          = dt.Rows[0].Field <int>("ItemID");
                objItem.ItemCode        = dt.Rows[0].Field <string>("ItemCode");
                objItem.HSCode          = dt.Rows[0].Field <string>("HSCode");
                objItem.ItemName        = dt.Rows[0].Field <string>("ItemName");
                objItem.ItemDescription = dt.Rows[0].Field <string>("ItemDescription");
                objItem.ItemPurpose     = dt.Rows[0].Field <string>("ItemPurpose");
                objItem.GroupID         = dt.Rows[0].Field <int>("ItemGroupID");
                objItem.ItemCatagory    = dt.Rows[0].Field <string>("ItemCategory");
                objItem.UnitID          = dt.Rows[0].Field <int>("UnitID");
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(objItem);
        }
        public int SaveOrUpdateItem(ChartsOfItem obj, SqlConnection con)
        {
            SqlCommand     com   = null;
            SqlTransaction trans = null;

            try
            {
                com             = new SqlCommand();
                trans           = con.BeginTransaction();
                com.Connection  = con;
                com.Transaction = trans;
                com.CommandText = "spInsertOrUpdateItem";
                com.CommandType = CommandType.StoredProcedure;
                com.Parameters.Add("@ItemCode", SqlDbType.VarChar, 50).Value         = obj.ItemCode;
                com.Parameters.Add("@HSCode", SqlDbType.VarChar, 50).Value           = obj.HSCode;
                com.Parameters.Add("@ItemName", SqlDbType.VarChar, 50).Value         = obj.ItemName;
                com.Parameters.Add("@ItemDescription", SqlDbType.VarChar, 100).Value = obj.ItemDescription;
                com.Parameters.Add("@ItemPurpose", SqlDbType.VarChar, 100).Value     = obj.ItemPurpose;
                com.Parameters.Add("@ItemGroupID", SqlDbType.Int).Value          = obj.GroupID;
                com.Parameters.Add("@ItemCatagory", SqlDbType.VarChar, 50).Value = obj.ItemCatagory;
                if (obj.SizeID == 0)
                {
                    com.Parameters.Add("@SizeID", SqlDbType.Int).Value = DBNull.Value;
                }
                else
                {
                    com.Parameters.Add("@SizeID", SqlDbType.Int).Value = obj.SizeID;
                }
                com.Parameters.Add("@ItemID", SqlDbType.Int).Value = obj.ItemID;
                if (obj.ColorID == 0)
                {
                    com.Parameters.Add("@ColorID", SqlDbType.Int).Value = DBNull.Value;
                }
                else
                {
                    com.Parameters.Add("@ColorID", SqlDbType.Int).Value = obj.ColorID;
                }
                if (obj.ShadeID == 0)
                {
                    com.Parameters.Add("@ShadeID", SqlDbType.Int).Value = DBNull.Value;
                }
                else
                {
                    com.Parameters.Add("@ShadeID", SqlDbType.Int).Value = obj.ShadeID;
                }
                if (obj.CountID == 0)
                {
                    com.Parameters.Add("@CountID", SqlDbType.Int).Value = DBNull.Value;
                }
                else
                {
                    com.Parameters.Add("@CountID", SqlDbType.Int).Value = obj.CountID;
                }
                com.Parameters.Add("@UnitID", SqlDbType.Int).Value             = obj.UnitID;
                com.Parameters.Add("@OpeningQty", SqlDbType.Int).Value         = obj.OpeningQty;
                com.Parameters.Add("@OpeningValue", SqlDbType.Money).Value     = obj.OpeningValue;
                com.Parameters.Add("@ItemStatus", SqlDbType.VarChar, 50).Value = obj.ItemStatus;
                com.Parameters.Add("@MinQty", SqlDbType.Int).Value             = obj.MinQty;
                com.Parameters.Add("@UnitPrice", SqlDbType.Money).Value        = obj.UnitPrice;
                com.Parameters.Add("@Picture", SqlDbType.Image).Value          = GlobalFunctions.GetNullValue(obj.Picture);
                com.Parameters.Add("@CompanyID", SqlDbType.Int).Value          = LogInInfo.CompanyID;
                com.Parameters.Add("@UserID", SqlDbType.Int).Value             = LogInInfo.UserID;
                com.ExecuteNonQuery();
                trans.Commit();
            }
            catch (Exception ex)
            {
                trans.Rollback();
                throw ex;
            }
            return(obj.ItemID);
        }