Пример #1
0
        /// <summary>
        /// Gestione evento per elaborazione comandi esterni da CLIENTS
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void _MesManager_ProcessExternalCommand(object sender, ExternalCommandsExecutionEventArgs e)
        {
            var paramList = e.Parameters != null
                                ? e.Parameters.ToList()
                                : new List <ExternalCommandValue>();

            if (e.CommandCode == COMMAND_CODE &&
                paramList.Count == 3)
            {
                var resourceName = paramList[0].GetConvertedValueToType <string>();
                var orderValue   = paramList[1].GetConvertedValueToType <string>();
                var qtyValue     = paramList[2].GetConvertedValueToType <int>();

                var resource = this._MesManager.ResourcesHandler.GetResource(resourceName);
                if (resource == null)
                {
                    this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "WorkPlanBuilderExtension",
                                                        "Risorsa non trovata " + COMMAND_CODE);
                    return;
                }

                this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "WorkPlanBuilderExtension",
                                                    "EXTERNAL COMMAND " + COMMAND_CODE);


                this.WriteValuesOnPowerDevice(resource, orderValue, qtyValue);
            }
        }
Пример #2
0
        /// <summary>
        /// Gestione evento per elaborazione comandi esterni da CLIENTS
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void Manager_ProcessExternalCommand(object sender, ExternalCommandsExecutionEventArgs e)
        {
            var paramList = e.Parameters != null
                                ? e.Parameters.ToList()
                                : new List <ExternalCommandValue>();

            if (e.CommandCode == LocalConstants.EXTCMD_CHECKPROD &&
                paramList.Count == 1)
            {
                var resourceName = paramList[0].GetConvertedValueToType <string>();

                var resource = this._MesManager.ResourcesHandler.GetResource(resourceName);
                if (resource == null)
                {
                    this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "MyDbMonitor",
                                                        "Risorsa non trovata (" + LocalConstants.EXTCMD_CHECKPROD + ")");
                    return;
                }

                this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "MyDbMonitor",
                                                    "EXTERNAL COMMAND (" + LocalConstants.EXTCMD_CHECKPROD + ")");

                this.CheckMachineProduction(resource);
            }
        }
        /// <summary>
        /// Gestione evento per elaborazione comandi esterni da CLIENTS
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void _MesManager_ProcessExternalCommand(object sender, ExternalCommandsExecutionEventArgs e)
        {
            var paramList = e.Parameters != null
                                ? e.Parameters.ToList()
                                : new List <ExternalCommandValue>();

            // attenzione CommandCode deve essere univoco a livello di applicazione
            if (e.CommandCode == "PIANO_LAVORO" &&
                paramList.Count == 1)
            {
                var resourceName = paramList[0].GetConvertedValueToType <string>();

                var resource = this._MesManager.ResourcesHandler.GetResource(resourceName);
                if (resource == null)
                {
                    this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "WorkPlanBuilderExtension",
                                                        "Risorsa non trovata (PIANO_LAVORO)");
                    return;
                }

                this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "WorkPlanBuilderExtension",
                                                    "EXTERNAL COMMAND (PIANO_LAVORO)");


                var enabledAttribute = resource.Settings
                                       .ResourceAttributes
                                       .FirstOrDefault(a => !a.Disabled &&
                                                       a.Name == "CORSO" &&
                                                       a.Type == ValueContainerType.Boolean);

                var enabled = enabledAttribute != null && enabledAttribute.GetConvertedValueToType <bool>();

                if (!enabled)
                {
                    return;
                }


                //TODO esecuzione azione
                //this._MesManager.AppendMessageToLog(MessageLevel.Diagnostics, "WorkPlanBuilderExtension", "I AM HERE");
                this._Logger.WriteMessage(MessageLevel.Warning, true, LOGGERSOURCE, "I AM HERE");
            }
        }