//************************************************************************** /// <Description> /// This method uses to update data to ITM_Category /// </Description> /// <Inputs> /// ITM_CategoryVO /// </Inputs> /// <Outputs> /// /// </Outputs> /// <Returns> /// /// </Returns> /// <Authors> /// HungLa /// </Authors> /// <History> /// 09-Dec-2004 /// </History> /// <Notes> /// </Notes> //************************************************************************** public void Update(object pobjObjecVO) { const string METHOD_NAME = THIS + ".Update()"; ITM_CategoryVO objObject = (ITM_CategoryVO)pobjObjecVO; //prepare value for parameters OleDbConnection oconPCS = null; OleDbCommand ocmdPCS = null; try { string strSqlRoot = string.Empty, strSqlNode = string.Empty; Utils utils = new Utils(); oconPCS = new OleDbConnection(Utils.Instance.OleDbConnectionString); ocmdPCS = new OleDbCommand(strSqlRoot, oconPCS); strSqlRoot = "UPDATE ITM_Category SET " + ITM_CategoryTable.CODE_FLD + "= ?" + "," + ITM_CategoryTable.NAME_FLD + "= ?" + "," + ITM_CategoryTable.CATALOGNAME_FLD + "= ?" + "," + ITM_CategoryTable.DESCRIPTION_FLD + "= ?" + "," + ITM_CategoryTable.PICTURE_FLD + "= ?" + " WHERE " + ITM_CategoryTable.CATEGORYID_FLD + "= ?"; ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.CODE_FLD, OleDbType.VarWChar)); ocmdPCS.Parameters[ITM_CategoryTable.CODE_FLD].Value = objObject.Code; ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.NAME_FLD, OleDbType.VarWChar)); ocmdPCS.Parameters[ITM_CategoryTable.NAME_FLD].Value = objObject.Name; ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.CATALOGNAME_FLD, OleDbType.VarWChar)); ocmdPCS.Parameters[ITM_CategoryTable.CATALOGNAME_FLD].Value = objObject.CatalogNameVN; ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.DESCRIPTION_FLD, OleDbType.VarWChar)); ocmdPCS.Parameters[ITM_CategoryTable.DESCRIPTION_FLD].Value = objObject.Description; ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.PICTURE_FLD, OleDbType.Binary)); if (objObject.Picture != null) { // convert bitmap to byte array in order to store to db Bitmap image = objObject.Picture; MemoryStream stream = new MemoryStream(); image.Save(stream, ImageFormat.Bmp); byte[] bytContent = stream.ToArray(); ocmdPCS.Parameters[ITM_CategoryTable.PICTURE_FLD].Value = bytContent; ocmdPCS.Parameters[ITM_CategoryTable.PICTURE_FLD].Size = bytContent.Length; } else { ocmdPCS.Parameters[ITM_CategoryTable.PICTURE_FLD].Value = DBNull.Value; } ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.CATEGORYID_FLD, OleDbType.Integer)); ocmdPCS.Parameters[ITM_CategoryTable.CATEGORYID_FLD].Value = objObject.CategoryID; ocmdPCS.CommandText = strSqlRoot; ocmdPCS.Connection.Open(); ocmdPCS.ExecuteNonQuery(); } catch (OleDbException ex) { if (ex.Errors.Count > 1) { if (ex.Errors[1].NativeError == ErrorCode.SQLDUPLICATE_KEYCODE) { throw new PCSDBException(ErrorCode.DUPLICATE_KEY, METHOD_NAME, ex); } else { throw new PCSDBException(ErrorCode.ERROR_DB, METHOD_NAME, ex); } } else { throw new PCSDBException(ErrorCode.ERROR_DB, METHOD_NAME, ex); } } catch (InvalidOperationException ex) { throw new PCSDBException(ErrorCode.ERROR_DB, METHOD_NAME, ex); } catch (Exception ex) { throw new PCSDBException(ErrorCode.OTHER_ERROR, METHOD_NAME, ex); } finally { if (oconPCS != null) { if (oconPCS.State != ConnectionState.Closed) { oconPCS.Close(); } } } }
//************************************************************************** /// <Description> /// This method uses to get data from ITM_Category /// </Description> /// <Inputs> /// pstrProductCode /// </Inputs> /// <Outputs> /// ITM_CategoryVO /// </Outputs> /// <Returns> /// ITM_CategoryVO /// </Returns> /// <Authors> /// HungLa /// </Authors> /// <History> /// Thursday, January 20, 2005 /// </History> /// <Notes> /// </Notes> //************************************************************************** public object GetObjectVO(string pstrProductCode) { const string METHOD_NAME = THIS + ".GetObjectVO()"; OleDbDataReader odrPCS = null; OleDbConnection oconPCS = null; OleDbCommand ocmdPCS = null; try { string strSql = String.Empty; strSql = "SELECT " + ITM_CategoryTable.CATEGORYID_FLD + "," + ITM_CategoryTable.CODE_FLD + "," + ITM_CategoryTable.NAME_FLD + "," + ITM_CategoryTable.CATALOGNAME_FLD + "," + ITM_CategoryTable.DESCRIPTION_FLD + "," + ITM_CategoryTable.PICTURE_FLD + "," + ITM_CategoryTable.PARENTCATEGORYID_FLD + " FROM " + ITM_CategoryTable.TABLE_NAME + " WHERE " + ITM_CategoryTable.CODE_FLD + "=?"; Utils utils = new Utils(); oconPCS = new OleDbConnection(Utils.Instance.OleDbConnectionString); ocmdPCS = new OleDbCommand(strSql, oconPCS); ocmdPCS.Parameters.Add(new OleDbParameter(ITM_CategoryTable.CODE_FLD, OleDbType.VarWChar)); ocmdPCS.Parameters[ITM_CategoryTable.CODE_FLD].Value = pstrProductCode; ocmdPCS.Connection.Open(); odrPCS = ocmdPCS.ExecuteReader(); ITM_CategoryVO objObject = new ITM_CategoryVO(); while (odrPCS.Read()) { objObject.CategoryID = int.Parse(odrPCS[ITM_CategoryTable.CATEGORYID_FLD].ToString().Trim()); objObject.Code = odrPCS[ITM_CategoryTable.CODE_FLD].ToString().Trim(); objObject.CatalogNameVN = odrPCS[ITM_CategoryTable.CATALOGNAME_FLD].ToString().Trim(); objObject.Name = odrPCS[ITM_CategoryTable.NAME_FLD].ToString().Trim(); objObject.Description = odrPCS[ITM_CategoryTable.DESCRIPTION_FLD].ToString().Trim(); try { objObject.ParentCategoryId = int.Parse(odrPCS[ITM_CategoryTable.PARENTCATEGORYID_FLD].ToString().Trim()); } catch {} try { // convert byte array to bitmap byte[] content = (byte[])odrPCS[ITM_CategoryTable.PICTURE_FLD]; MemoryStream stream = new MemoryStream(content); objObject.Picture = new Bitmap(stream);; } catch {} } return(objObject); } catch (OleDbException ex) { throw new PCSDBException(ErrorCode.ERROR_DB, METHOD_NAME, ex); } catch (Exception ex) { throw new PCSDBException(ErrorCode.OTHER_ERROR, METHOD_NAME, ex); } finally { if (oconPCS != null) { if (oconPCS.State != ConnectionState.Closed) { oconPCS.Close(); } } } }