public List<GenericItem> GetItemAll()
        {
            StringBuilder oSQL = new StringBuilder();
            oSQL.Append("SELECT ItemCode, ItemName FROM OITM T0 ");

            DbCommand dbCommand = this.dataBase.GetSqlStringCommand(oSQL.ToString());

            List<GenericItem> items = new List<GenericItem>();

            using (this.reader = this.dataBase.ExecuteReader(dbCommand))
            {
                while (this.reader.Read())
                {
                    GenericItem item = new GenericItem();
                    item.ItemCode = this.reader.IsDBNull(0) ? "" : this.reader.GetValue(0).ToString();
                    item.ItemName = this.reader.IsDBNull(1) ? "" : this.reader.GetValue(1).ToString();

                    items.Add(item);
                }
            }
            return items;
        }
        public List<GenericItem> GetItemList(Warehouse warehouse)
        {
            StringBuilder oSQL = new StringBuilder();
            oSQL.Append("SELECT T0.ItemCode, T0.ItemName ");
            oSQL.Append("FROM OITM T0 ");
            oSQL.Append("INNER JOIN OITW T1 ");
            oSQL.Append("ON T0.ItemCode = T1.ItemCode ");
            oSQL.Append("AND T1.WhsCode = @warehouse");

            DbCommand dbCommand = this.dataBase.GetSqlStringCommand(oSQL.ToString());
            this.dataBase.AddInParameter(dbCommand, "warehouse", DbType.String, warehouse.WhsCode);

            List<GenericItem> items = new List<GenericItem>();

            using (this.reader = this.dataBase.ExecuteReader(dbCommand))
            {
                while (this.reader.Read())
                {
                    GenericItem item = new GenericItem();
                    item.ItemCode = this.reader.IsDBNull(0) ? "" : this.reader.GetValue(0).ToString();
                    item.ItemName = this.reader.IsDBNull(1) ? "" : this.reader.GetValue(1).ToString();

                    items.Add(item);
                }
            }
            return items;
        }