Ejemplo n.º 1
0
        private void OpenMovePartEntryScreen()
        {
            if (!ActivePermission.Edit)
            {
                return;
            }

            MovePartUIDM uidm = new MovePartUIDM();

            uidm.CUSTOMER_CD       = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.CUSTOMER_CD));
            uidm.CUSTOMER_NAME     = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.CUSTOMER_NAME));
            uidm.FROM_PROCESS      = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.FROM_PROCESS));
            uidm.FROM_PROCESS_NAME = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.FROM_PROCESS_NAME));
            uidm.LOT_NO            = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.LOT_NO));
            uidm.MASTER_NO         = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.MASTER_NO));
            uidm.MOVE_DATE         = new NZDateTime(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.MOVE_DATE));
            uidm.MOVE_NO           = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.MOVE_NO));
            uidm.MOVE_QTY          = new NZDecimal(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.MOVE_QTY));
            uidm.PART_NO           = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.PART_NO));
            uidm.REASON            = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.REASON));
            uidm.REASON_NAME       = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.REASON_NAME));
            uidm.REMARK            = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.REMARK));
            uidm.SHIFT_CLS         = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.SHIFT_CLS));
            uidm.SHIFT_CLS_NAME    = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.SHIFT_CLS_NAME));
            uidm.TO_PROCESS        = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.TO_PROCESS));
            uidm.TO_PROCESS_NAME   = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.TO_PROCESS_NAME));
            uidm.TRANS_ID_FROM     = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.TRANS_ID_FROM));
            uidm.TRANS_ID_TO       = new NZString(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.TRANS_ID_TO));
            uidm.WEIGHT            = new NZDecimal(null, shtMovePartList.GetValue(shtMovePartList.ActiveRowIndex, (int)eColView.WEIGHT));

            TRN300_MovePartEntry dialog = new TRN300_MovePartEntry(uidm);

            if (dialog.ShowDialog(this) == DialogResult.OK)
            {
                LoadData(dtPeriodBegin.NZValue, dtPeriodEnd.NZValue);
            }
        }
Ejemplo n.º 2
0
        internal void SaveNewMovePart(MovePartUIDM model)
        {
            #region Validate
            ItemValidator itemValidator = new ItemValidator();

            BusinessException businessException = itemValidator.CheckItemNotExist(model.MASTER_NO);
            if (businessException != null)
            {
                ValidateException.ThrowErrorItem(businessException.Error);
            }
            #endregion

            InventoryBIZ         bizInv        = new InventoryBIZ();
            DealingConstraintBIZ bizConstraint = new DealingConstraintBIZ();

            InventoryTransactionDTO dtoInvTrnsFrom = new InventoryTransactionDTO();
            InventoryTransactionDTO dtoInvTrnsTo   = new InventoryTransactionDTO();

            #region From
            dtoInvTrnsFrom.CRT_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoInvTrnsFrom.CRT_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
            dtoInvTrnsFrom.UPD_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoInvTrnsFrom.UPD_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
            //dtoInvTrnsListFrom.TRANS_ID =
            dtoInvTrnsFrom.ITEM_CD = model.MASTER_NO;
            dtoInvTrnsFrom.LOC_CD  = model.FROM_PROCESS;
            //dtoInvTrnsFrom.LOT_NO = model.LOT_NO;
            //dtoInvTrnsListFrom.PACK_NO = string.Empty;
            dtoInvTrnsFrom.TRANS_DATE = model.MOVE_DATE;
            dtoInvTrnsFrom.TRANS_CLS  = DataDefine.Convert2ClassCode(DataDefine.eTRANS_TYPE.MovePart).ToNZString();
            dtoInvTrnsFrom.IN_OUT_CLS = DataDefine.Convert2ClassCode(DataDefine.eIN_OUT_CLASS.Out).ToNZString();
            dtoInvTrnsFrom.QTY        = model.MOVE_QTY;
            //dtoInvTrnsListFrom.OBJ_ITEM_CD =
            //dtoInvTrnsListFrom.OBJ_ORDER_QTY =
            //dtoInvTrnsListFrom.REF_NO =
            //dtoInvTrnsListFrom.REF_SLIP_NO =
            //dtoInvTrnsListFrom.REF_SLIP_CLS =
            //dtoInvTrnsListFrom.OTHER_DL_NO =
            //dtoInvTrnsListFrom.SLIP_NO =
            dtoInvTrnsFrom.REMARK = model.REMARK;
            //dtoInvTrnsListFrom.DEALING_NO =
            //dtoInvTrnsListFrom.EXTERNAL_LOT_NO =
            //dtoInvTrnsListFrom.PRICE =
            //dtoInvTrnsListFrom.FOR_CUSTOMER =
            //dtoInvTrnsListFrom.FOR_MACHINE =
            dtoInvTrnsFrom.SHIFT_CLS = model.SHIFT_CLS;
            //dtoInvTrnsListFrom.REF_SLIP_NO2 =
            //dtoInvTrnsListFrom.NG_QTY =
            dtoInvTrnsFrom.TRAN_SUB_CLS = model.REASON;
            dtoInvTrnsFrom.SCREEN_TYPE  = DataDefine.ScreenType.MovePartEntry.ToNZString();
            //dtoInvTrnsListFrom.GROUP_TRANS_ID =
            //dtoInvTrnsListFrom.RESERVE_QTY =
            //dtoInvTrnsListFrom.NG_REASON =
            dtoInvTrnsFrom.EFFECT_STOCK = new NZInt(null, (int)DataDefine.eEFFECT_STOCK.Out);
            dtoInvTrnsFrom.LOT_REMARK   = model.LOT_NO;
            dtoInvTrnsFrom.OLD_DATA     = new NZInt(null, 0);
            dtoInvTrnsFrom.WEIGHT       = model.WEIGHT;

            #endregion

            #region To

            dtoInvTrnsTo.CRT_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoInvTrnsTo.CRT_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
            dtoInvTrnsTo.UPD_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
            dtoInvTrnsTo.UPD_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
            //dtoInvTrnsListFrom.TRANS_ID =
            dtoInvTrnsTo.ITEM_CD = model.MASTER_NO;
            dtoInvTrnsTo.LOC_CD  = model.TO_PROCESS;
            //dtoInvTrnsTo.LOT_NO = model.LOT_NO;
            //dtoInvTrnsListFrom.PACK_NO = string.Empty;
            dtoInvTrnsTo.TRANS_DATE = model.MOVE_DATE;
            dtoInvTrnsTo.TRANS_CLS  = DataDefine.Convert2ClassCode(DataDefine.eTRANS_TYPE.MovePart).ToNZString();
            dtoInvTrnsTo.IN_OUT_CLS = DataDefine.Convert2ClassCode(DataDefine.eIN_OUT_CLASS.In).ToNZString();
            dtoInvTrnsTo.QTY        = model.MOVE_QTY;
            //dtoInvTrnsListFrom.OBJ_ITEM_CD =
            //dtoInvTrnsListFrom.OBJ_ORDER_QTY =
            //dtoInvTrnsListFrom.REF_NO =
            //dtoInvTrnsListFrom.REF_SLIP_NO =
            //dtoInvTrnsListFrom.REF_SLIP_CLS =
            //dtoInvTrnsListFrom.OTHER_DL_NO =
            //dtoInvTrnsListFrom.SLIP_NO =
            dtoInvTrnsTo.REMARK = model.REMARK;
            //dtoInvTrnsListFrom.DEALING_NO =
            //dtoInvTrnsListFrom.EXTERNAL_LOT_NO =
            //dtoInvTrnsListFrom.PRICE =
            //dtoInvTrnsListFrom.FOR_CUSTOMER =
            //dtoInvTrnsListFrom.FOR_MACHINE =
            dtoInvTrnsTo.SHIFT_CLS = model.SHIFT_CLS;
            //dtoInvTrnsListFrom.REF_SLIP_NO2 =
            //dtoInvTrnsListFrom.NG_QTY =
            dtoInvTrnsTo.TRAN_SUB_CLS = model.REASON;
            dtoInvTrnsTo.SCREEN_TYPE  = DataDefine.ScreenType.MovePartEntry.ToNZString();
            //dtoInvTrnsListFrom.GROUP_TRANS_ID =
            //dtoInvTrnsListFrom.RESERVE_QTY =
            //dtoInvTrnsListFrom.NG_REASON =
            dtoInvTrnsTo.EFFECT_STOCK = new NZInt(null, (int)DataDefine.eEFFECT_STOCK.In);
            dtoInvTrnsTo.LOT_REMARK   = model.LOT_NO;
            dtoInvTrnsTo.OLD_DATA     = new NZInt(null, 0);
            dtoInvTrnsTo.WEIGHT       = model.WEIGHT;

            #endregion

            #region Consumption

            List <InventoryTransactionDTO> listComponent = new List <InventoryTransactionDTO>();
            DealingConstraintDTO           dtoConstraint = bizConstraint.LoadDealingConstraint(model.FROM_PROCESS);
            if (dtoConstraint != null && dtoConstraint.COMPONENT_ITEM_USAGE.StrongValue == 1)
            {
                //get component usage
                BOMBIZ bizBOM = new BOMBIZ();
                List <ComponentUsageDTO> components = bizBOM.LoadComponentUsage(model.MASTER_NO, model.MOVE_QTY);
                if (components != null)
                {
                    foreach (ComponentUsageDTO component in components)
                    {
                        InventoryTransactionDTO dtoComponent = new InventoryTransactionDTO();
                        dtoComponent.CRT_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
                        dtoComponent.CRT_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
                        dtoComponent.UPD_BY      = CommonLib.Common.CurrentUserInfomation.UserCD;
                        dtoComponent.UPD_MACHINE = CommonLib.Common.CurrentUserInfomation.Machine;
                        //dtoComponent.TRANS_ID =
                        dtoComponent.ITEM_CD = component.LOWER_ITEM_CD;
                        dtoComponent.LOC_CD  = model.FROM_PROCESS;
                        //dtoComponent.LOT_NO = model.LOT_NO;
                        //dtoComponent.PACK_NO = string.Empty;
                        dtoComponent.TRANS_DATE = model.MOVE_DATE;
                        dtoComponent.TRANS_CLS  = DataDefine.Convert2ClassCode(DataDefine.eTRANS_TYPE.MoveConsumption).ToNZString();
                        dtoComponent.IN_OUT_CLS = DataDefine.Convert2ClassCode(DataDefine.eIN_OUT_CLASS.Out).ToNZString();
                        dtoComponent.QTY        = component.USAGE_QTY;
                        //dtoComponent.OBJ_ITEM_CD =
                        //dtoComponent.OBJ_ORDER_QTY =
                        //dtoComponent.REF_NO =
                        //dtoComponent.REF_SLIP_NO =
                        //dtoComponent.REF_SLIP_CLS =
                        //dtoComponent.OTHER_DL_NO =
                        //dtoComponent.SLIP_NO =
                        dtoComponent.REMARK = model.REMARK;
                        //dtoComponent.DEALING_NO =
                        //dtoComponent.EXTERNAL_LOT_NO =
                        //dtoComponent.PRICE =
                        //dtoComponent.FOR_CUSTOMER =
                        //dtoComponent.FOR_MACHINE =
                        dtoComponent.SHIFT_CLS = model.SHIFT_CLS;
                        //dtoComponent.REF_SLIP_NO2 =
                        //dtoComponent.NG_QTY =
                        dtoComponent.TRAN_SUB_CLS = model.REASON;
                        dtoComponent.SCREEN_TYPE  = DataDefine.ScreenType.MovePartEntry.ToNZString();
                        //dtoComponent.GROUP_TRANS_ID =
                        //dtoComponent.RESERVE_QTY =
                        //dtoComponent.NG_REASON =
                        dtoComponent.EFFECT_STOCK = new NZInt(null, (int)DataDefine.eEFFECT_STOCK.Out);
                        dtoComponent.LOT_REMARK   = model.LOT_NO;
                        dtoComponent.OLD_DATA     = new NZInt(null, 0);
                        //dtoComponent.WEIGHT = model.WEIGHT;
                        listComponent.Add(dtoComponent);
                    }
                }

                #endregion
            }

            bizInv.AddMovePart(dtoInvTrnsFrom, dtoInvTrnsTo, listComponent);
        }