示例#1
0
        public override bool ACDeInit(bool deleteACClassTask = false)
        {
            // Detach references
            if (_InOrderManager != null)
            {
                InOrderManager.DetachACRefFromServiceInstance(this, _InOrderManager);
            }
            _InOrderManager = null;
            if (_InOrderManagerNet != null)
            {
                InOrderManager.DetachACRefFromServiceInstance(this, _InOrderManagerNet);
            }
            _InOrderManagerNet = null;

            this._CurrentInOrderPos  = null;
            this._SelectedInOrderPos = null;
            if (_AccessPrimary != null)
            {
                _AccessPrimary.NavSearchExecuting -= _AccessPrimary_NavSearchExecuting;
            }

            bool result = base.ACDeInit(deleteACClassTask);

            if (_AccessPrimary != null)
            {
                _AccessPrimary.ACDeInit(false);
                _AccessPrimary = null;
            }
            return(result);
        }
        /// (B) If you use InOrderManager as a local service object
        public static ACRef <InOrderManager> ACRefToServiceInstance(ACComponent requester)
        {
            InOrderManager serviceInstance = GetServiceInstance(requester);

            if (serviceInstance != null)
            {
                return(new ACRef <InOrderManager>(serviceInstance, requester));
            }
            return(null);
        }
示例#3
0
 public override bool ACInit(Global.ACStartTypes startChildMode = Global.ACStartTypes.Automatic)
 {
     if (!base.ACInit(startChildMode))
     {
         return(false);
     }
     // If you use InOrderManager as a local service object:
     _InOrderManager = InOrderManager.ACRefToServiceInstance(this);
     // If you use InOrderManager as a network service, than you have to retrieve a instance as ACComponent instead of InOrderManager,
     // because on client side you have only a proxy object (ACComponentProxy):
     _InOrderManagerNet = InOrderManager.ACRefToServiceInstanceNet(this);
     Search();
     return(true);
 }
示例#4
0
        public void DisplaySum()
        {
            if (InOrderManager != null)
            {
                // Usage if InOrderManager is configured as local service object
                double sum = InOrderManager.SumLines(this.DatabaseApp, this.CurrentInOrder);
                Messages.Info(this, String.Format("Local invocation: Sum is {0}", sum), true);
            }

            if (InOrderManagerNet != null)
            {
                // Usage if InOrderManager is a network service
                object netResult = InOrderManagerNet.ACUrlCommand("!SumLinesByID", this.CurrentInOrder.InOrderID);
                if (netResult != null)
                {
                    Messages.Info(this, String.Format("Remote invocation: Sum is {0}", (double)netResult), true);
                }
            }
        }