示例#1
0
        } // restore()

        /// <summary>
        /// Makes a new batch operation instance in the database
        /// </summary>
        public static CswNbtObjClassBatchOp makeNew(CswNbtResources CswNbtResources,
                                                    CswEnumNbtBatchOpName BatchOpName,
                                                    string BatchData,
                                                    CswPrimaryKey UserId = null,
                                                    Double Priority      = Double.NaN)
        {
            CswNbtObjClassBatchOp     BatchNode = null;
            CswNbtMetaDataObjectClass BatchOpOC = CswNbtResources.MetaData.getObjectClass(CswEnumNbtObjectClass.BatchOpClass);

            if (BatchOpOC != null)
            {
                CswNbtMetaDataNodeType BatchOpNT = BatchOpOC.getNodeTypes().First();
                if (BatchOpNT != null)
                {
                    CswNbtNode Node = CswNbtResources.Nodes.makeNodeFromNodeTypeId(BatchOpNT.NodeTypeId);
                    BatchNode = Node;

                    BatchNode.BatchData.Text            = BatchData;
                    BatchNode.CreatedDate.DateTimeValue = DateTime.Now;
                    BatchNode.OpName.Text = BatchOpName.ToString();
                    if (false == Double.IsNaN(Priority))
                    {
                        BatchNode.Priority.Value = Priority;
                    }
                    BatchNode.Status.Value       = CswEnumNbtBatchOpStatus.Pending.ToString();
                    BatchNode.User.RelatedNodeId = UserId ?? CswNbtResources.CurrentNbtUser.UserId;

                    BatchNode.postChanges(true);
                }
            }
            return(BatchNode);
        } // makeNew()
示例#2
0
        } // makeNew()

        public static void runNextBatchOp(CswNbtResources CswNbtResources)
        {
            ICswNbtTree BatchOpTree = _getPendingBatchOpsTree(CswNbtResources);

            if (BatchOpTree.getChildNodeCount() > 0)
            {
                BatchOpTree.goToNthChild(0);
                CswNbtNode            Node      = BatchOpTree.getNodeForCurrentPosition();
                CswNbtObjClassBatchOp BatchNode = Node;

                CswEnumNbtBatchOpName OpName = BatchNode.OpNameValue;
                ICswNbtBatchOp        op     = null;
                if (OpName == CswEnumNbtBatchOpName.BulkEdit)
                {
                    op = new CswNbtBatchOpBulkEdit(CswNbtResources);
                }
                if (OpName == CswEnumNbtBatchOpName.FutureNodes)
                {
                    op = new CswNbtBatchOpFutureNodes(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.MultiEdit)
                {
                    op = new CswNbtBatchOpMultiEdit(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.MultiButtonClick)
                {
                    op = new CswNbtBatchOpMultiButtonClick(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.InventoryLevel)
                {
                    op = new CswNbtBatchOpInventoryLevels(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.MultiDelete)
                {
                    op = new CswNbtBatchOpMultiDelete(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.SyncLocation)
                {
                    op = new CswNbtBatchOpSyncLocation(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.MobileMultiOpUpdates)
                {
                    op = new CswNbtBatchOpMobileMultiOpUpdates(CswNbtResources);
                }
                else if (OpName == CswEnumNbtBatchOpName.Receiving)
                {
                    op = new CswNbtBatchOpReceiving(CswNbtResources);
                }

                // New batch ops go here
                // else if( OpName == NbtBatchOpName.NEWNAME )
                if (null != op)
                {
                    CswNbtNode UserNode = CswNbtResources.Nodes[BatchNode.User.RelatedNodeId];
                    if (null != UserNode)
                    {
                        CswNbtObjClassUser UserOC = UserNode;
                        if (null != UserOC)
                        {
                            CswNbtResources.AuditContext   = "Batch Op: " + BatchNode.OpNameValue;
                            CswNbtResources.AuditFirstName = UserOC.FirstName;
                            CswNbtResources.AuditLastName  = UserOC.LastName;
                            CswNbtResources.AuditUsername  = UserOC.Username;
                        }
                    }

                    op.runBatchOp(BatchNode);
                }
            }
        }