コード例 #1
0
 public bool CheckCanModifyDate(MRPDDTO dto)
 {
     //แก้ไขได้เฉพาะ order qty
     if (!dto.INCOMING_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.OUTGOING_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.REQ_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ON_HAND_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ACT_REQ_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ACT_REQ_LOT_QTY.IsNull)
     {
         return(false);
     }
     return(true);
 }
コード例 #2
0
 public bool CheckCanDelete(MRPDDTO dto)
 {
     //ถ้ามีเฉพาะ order qty สามารถลบได้
     //if (!dto.AT_DATE.IsNull)
     //    return false;
     if (!dto.INCOMING_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.OUTGOING_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.REQ_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ON_HAND_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ACT_REQ_QTY.IsNull)
     {
         return(false);
     }
     if (!dto.ACT_REQ_LOT_QTY.IsNull)
     {
         return(false);
     }
     return(true);
 }
コード例 #3
0
        /// <summary>
        /// Update record by using the table's primary key.
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data">Data which to update.</param>
        /// <param name="oldMRP_NO">Old Key #1</param>
        /// <param name="oldITEM_CD">Old Key #2</param>
        /// <param name="oldORDER_LOC_CD">Old Key #3</param>
        /// <param name="oldAT_DATE">Old Key #4</param>
        /// <returns></returns>
        public int UpdateWithPK(Database database, MRPDDTO data, String oldMRP_NO, String oldITEM_CD, String oldORDER_LOC_CD, DateTime oldAT_DATE)
        {
            Database db = UseDatabase(database);

            StringBuilder sb = new StringBuilder();

            #region SQL Statement
            sb.AppendLine(" UPDATE " + data.TableName);
            sb.AppendLine(" SET ");
            sb.AppendLine("  " + MRPDDTO.eColumns.UPD_BY + "=:UPD_BY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.UPD_DATE + "=GETDATE()");
            sb.AppendLine("  ," + MRPDDTO.eColumns.UPD_MACHINE + "=:UPD_MACHINE");
            sb.AppendLine("  ," + MRPDDTO.eColumns.IS_ACTIVE + "=:IS_ACTIVE");
            sb.AppendLine("  ," + MRPDDTO.eColumns.MRP_NO + "=:MRP_NO");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ITEM_CD + "=:ITEM_CD");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ORDER_LOC_CD + "=:ORDER_LOC_CD");
            sb.AppendLine("  ," + MRPDDTO.eColumns.AT_DATE + "=:AT_DATE");
            sb.AppendLine("  ," + MRPDDTO.eColumns.INCOMING_QTY + "=:INCOMING_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.OUTGOING_QTY + "=:OUTGOING_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.REQ_QTY + "=:REQ_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ACT_REQ_QTY + "=:ACT_REQ_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ACT_REQ_LOT_QTY + "=:ACT_REQ_LOT_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ORDER_QTY + "=:ORDER_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.ON_HAND_QTY + "=:ON_HAND_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.BAL_QTY + "=:BAL_QTY");
            sb.AppendLine("  ," + MRPDDTO.eColumns.BAL_LOT_QTY + "=:BAL_LOT_QTY");
            sb.AppendLine(" WHERE ");
            sb.AppendLine("  " + MRPDDTO.eColumns.MRP_NO + "=:oldMRP_NO");
            sb.AppendLine("  AND " + MRPDDTO.eColumns.ITEM_CD + "=:oldMRPD");
            sb.AppendLine("  AND " + MRPDDTO.eColumns.ORDER_LOC_CD + "=:oldMRPD");
            sb.AppendLine("  AND " + MRPDDTO.eColumns.AT_DATE + "=:oldMRPD");
            #endregion

            DataRequest req = new DataRequest(sb.ToString());
            #region Parameters
            req.Parameters.Add("UPD_BY", DataType.NVarChar, data.UPD_BY.Value);
            req.Parameters.Add("UPD_MACHINE", DataType.NVarChar, data.UPD_MACHINE.Value);
            req.Parameters.Add("IS_ACTIVE", DataType.Number, data.IS_ACTIVE.Value);
            req.Parameters.Add("MRP_NO", DataType.NVarChar, data.MRP_NO.Value);
            req.Parameters.Add("ITEM_CD", DataType.NVarChar, data.ITEM_CD.Value);
            req.Parameters.Add("ORDER_LOC_CD", DataType.NVarChar, data.ORDER_LOC_CD.Value);
            req.Parameters.Add("AT_DATE", DataType.DateTime, data.AT_DATE.Value);
            req.Parameters.Add("INCOMING_QTY", DataType.Number, data.INCOMING_QTY.Value);
            req.Parameters.Add("OUTGOING_QTY", DataType.Number, data.OUTGOING_QTY.Value);
            req.Parameters.Add("REQ_QTY", DataType.Number, data.REQ_QTY.Value);
            req.Parameters.Add("ACT_REQ_QTY", DataType.Number, data.ACT_REQ_QTY.Value);
            req.Parameters.Add("ACT_REQ_LOT_QTY", DataType.Number, data.ACT_REQ_LOT_QTY.Value);
            req.Parameters.Add("ORDER_QTY", DataType.Number, data.ORDER_QTY.Value);
            req.Parameters.Add("ON_HAND_QTY", DataType.Number, data.ON_HAND_QTY.Value);
            req.Parameters.Add("BAL_QTY", DataType.Number, data.BAL_QTY.Value);
            req.Parameters.Add("BAL_LOT_QTY", DataType.Number, data.BAL_LOT_QTY.Value);
            req.Parameters.Add("oldMRP_NO", DataType.NVarChar, oldMRP_NO);
            req.Parameters.Add("oldITEM_CD", DataType.NVarChar, oldITEM_CD);
            req.Parameters.Add("oldORDER_LOC_CD", DataType.NVarChar, oldORDER_LOC_CD);
            req.Parameters.Add("oldAT_DATE", DataType.DateTime, oldAT_DATE);
            #endregion

            return(db.ExecuteNonQuery(req));
        }
コード例 #4
0
        /// <summary>
        /// Check exist before manipulate data. If found record will update data. Otherwise insert new data.
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public int AddNewOrUpdate(Database database, MRPDDTO data)
        {
            Database db = UseDatabase(database);

            if (Exist(database, data.MRP_NO, data.ITEM_CD, data.ORDER_LOC_CD, data.AT_DATE))
            {
                return(UpdateWithoutPK(db, data));
            }

            return(AddNew(db, data));
        }
コード例 #5
0
        /// <summary>
        /// Insert new record into database.
        /// </summary>
        /// <param name="database"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public int AddNew(Database database, MRPDDTO data)
        {
            Database db = UseDatabase(database);

            StringBuilder sb = new StringBuilder();

            #region SQL Statement
            sb.AppendLine(" INSERT INTO " + data.TableName + "(");
            sb.AppendLine("  " + MRPDDTO.eColumns.CRT_BY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.CRT_DATE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.CRT_MACHINE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.UPD_BY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.UPD_DATE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.UPD_MACHINE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.IS_ACTIVE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.MRP_NO);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ITEM_CD);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ORDER_LOC_CD);
            sb.AppendLine("  ," + MRPDDTO.eColumns.AT_DATE);
            sb.AppendLine("  ," + MRPDDTO.eColumns.INCOMING_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.OUTGOING_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.REQ_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ACT_REQ_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ACT_REQ_LOT_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ORDER_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.ON_HAND_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.BAL_QTY);
            sb.AppendLine("  ," + MRPDDTO.eColumns.BAL_LOT_QTY);
            sb.AppendLine(") VALUES(");
            sb.AppendLine("   :CRT_BY");
            sb.AppendLine("   ,GETDATE()");
            sb.AppendLine("   ,:CRT_MACHINE");
            sb.AppendLine("   ,:UPD_BY");
            sb.AppendLine("   ,GETDATE()");
            sb.AppendLine("   ,:UPD_MACHINE");
            sb.AppendLine("   ,:IS_ACTIVE");
            sb.AppendLine("   ,:MRP_NO");
            sb.AppendLine("   ,:ITEM_CD");
            sb.AppendLine("   ,:ORDER_LOC_CD");
            sb.AppendLine("   ,:AT_DATE");
            sb.AppendLine("   ,:INCOMING_QTY");
            sb.AppendLine("   ,:OUTGOING_QTY");
            sb.AppendLine("   ,:REQ_QTY");
            sb.AppendLine("   ,:ACT_REQ_QTY");
            sb.AppendLine("   ,:ACT_REQ_LOT_QTY");
            sb.AppendLine("   ,:ORDER_QTY");
            sb.AppendLine("   ,:ON_HAND_QTY");
            sb.AppendLine("   ,:BAL_QTY");
            sb.AppendLine("   ,:BAL_LOT_QTY");
            sb.AppendLine(" )");
            #endregion

            DataRequest req = new DataRequest(sb.ToString());
            #region Parameters
            req.Parameters.Add("CRT_BY", DataType.NVarChar, data.CRT_BY.Value);
            req.Parameters.Add("CRT_MACHINE", DataType.NVarChar, data.CRT_MACHINE.Value);
            req.Parameters.Add("UPD_BY", DataType.NVarChar, data.UPD_BY.Value);
            req.Parameters.Add("UPD_MACHINE", DataType.NVarChar, data.UPD_MACHINE.Value);
            req.Parameters.Add("IS_ACTIVE", DataType.Number, data.IS_ACTIVE.Value);
            req.Parameters.Add("MRP_NO", DataType.NVarChar, data.MRP_NO.Value);
            req.Parameters.Add("ITEM_CD", DataType.NVarChar, data.ITEM_CD.Value);
            req.Parameters.Add("ORDER_LOC_CD", DataType.NVarChar, data.ORDER_LOC_CD.Value);
            req.Parameters.Add("AT_DATE", DataType.DateTime, data.AT_DATE.Value);
            req.Parameters.Add("INCOMING_QTY", DataType.Number, data.INCOMING_QTY.Value);
            req.Parameters.Add("OUTGOING_QTY", DataType.Number, data.OUTGOING_QTY.Value);
            req.Parameters.Add("REQ_QTY", DataType.Number, data.REQ_QTY.Value);
            req.Parameters.Add("ACT_REQ_QTY", DataType.Number, data.ACT_REQ_QTY.Value);
            req.Parameters.Add("ACT_REQ_LOT_QTY", DataType.Number, data.ACT_REQ_LOT_QTY.Value);
            req.Parameters.Add("ORDER_QTY", DataType.Number, data.ORDER_QTY.Value);
            req.Parameters.Add("ON_HAND_QTY", DataType.Number, data.ON_HAND_QTY.Value);
            req.Parameters.Add("BAL_QTY", DataType.Number, data.BAL_QTY.Value);
            req.Parameters.Add("BAL_LOT_QTY", DataType.Number, data.BAL_LOT_QTY.Value);
            #endregion

            return(db.ExecuteNonQuery(req));
        }