예제 #1
0
        private void buttonDepartureDocAddDb_Click(object sender, EventArgs e)
        {
            DepartureDoc dd = new DepartureDoc
            {
                DepartureDocName      = textBoxDepartureDocNameDb.Text,
                DepartureDocSender    = textBoxDepartureDocSenderDb.Text,
                DepartureDocRecipient = textBoxDepartureDocRecipentDb.Text,
                DepartureDocDate      = dateTimePickerDepartureDocDb.Value,
            };

            db.DepartureDocs.Add(dd);
            db.SaveChanges();
            this.Close();
            MainForm form = new MainForm();

            form.MainForm_Load(sender, e);
        }
        private string HandleMessageType(MSG_SEND message_send)
        {
            string error = "";
            string Url   = message_send.URL;

            try
            {
                Tracing.TraceEvent(TraceEventType.Verbose, 0, String.Format(" use Url = {0}", Url));

                if (String.IsNullOrEmpty(Url))
                {
                    return("unknown url for communication partner/channel " + message_send.COMM_PARTNER_ID + " / " + message_send.CHANNEL_ID + " - " + message_send.MSG_ID);
                }

                sender.Url = Url;

                switch (message_send.MSG_ID)
                {
                case "DEP":     // -- Departure Message
                {
                    DepartureSelect handler = new DepartureSelect(this.db);
                    DepartureDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.Departure(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "DEP_NODE":      // -- Departure Node Message
                {
                    DepartureNodeSelect handler = new DepartureNodeSelect(this.db);
                    DepartureNodeDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.DepartureNode(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "DEP_TRP":      // -- Departure Transport Type
                {
                    DepartureTransportTypeSelect handler = new DepartureTransportTypeSelect(this.db);
                    DepartureTransportTypeDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.DepartureTransportType(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "DEP_LOAD":      // -- Departure Load
                {
                    DepartureLoadSelect handler = new DepartureLoadSelect(this.db);
                    DepartureLoadDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.DepartureLoad(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "MOD_DEP_LOAD":      // -- Modify Departure Load
                {
                    ModifyDepartureLoadSelect handler = new ModifyDepartureLoadSelect(this.db);
                    ModifyDepartureLoadDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.ModifyDepartureLoad(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "REM_DEP":      // -- Remove Departure
                {
                    RemoveDepartureSelect handler = new RemoveDepartureSelect(this.db);
                    RemoveDepartureDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.RemoveDeparture(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "REM_DEP_NODE":      // -- Remove Departure Node
                {
                    RemoveDepartureNodeSelect handler = new RemoveDepartureNodeSelect(this.db);
                    RemoveDepartureNodeDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.RemoveDepartureNode(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "REM_DEP_TRP":      // -- Remove Departure Transport Type
                {
                    RemoveDepartureTransportTypeSelect handler = new RemoveDepartureTransportTypeSelect(this.db);
                    RemoveDepartureTransportTypeDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.RemoveDepartureTransportType(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }

                case "CONFIRM":      // -- Confirmation Message
                {
                    ConfirmSelect handler = new ConfirmSelect(this.db);
                    ConfirmDoc    message = handler.Process(message_send.MSG_OUT_ID);

                    if (message == null)
                    {
                        error = string.Format("{0} obj missing.", message_send.MSG_ID);
                    }
                    else
                    {
                        sender.Confirm(message_send.COMM_PARTNER_ID, message_send.MSG_SEND_ID, message);
                    }

                    break;
                }


                default:

                    error = string.Format("message type {0} not found", message_send.MSG_ID);
                    break;
                }  // switch (message_send.MSG_ID)
            }
            catch (UriFormatException e)
            {
                error = "The format of the URI is invalid. URL: " + Url + ", MSG_SEND_ID: " + message_send.MSG_SEND_ID + Environment.NewLine +
                        e.Message + Environment.NewLine +
                        e.StackTrace;
            }
            catch (InvalidOperationException e)
            {
                error = "Failed to reach " + sender.Url + " for " + message_send.MSG_ID + ". MSG_SEND_ID: " + message_send.MSG_SEND_ID + Environment.NewLine +
                        e.Message + Environment.NewLine +
                        e.StackTrace;
            }
            catch (System.Web.Services.Protocols.SoapException e)
            {
                error = "Interface mismatch. URL: " + sender.Url + ", MSG_ID: " + message_send.MSG_ID + ", MSG_SEND_ID: " + message_send.MSG_SEND_ID + Environment.NewLine +
                        e.Message + Environment.NewLine +
                        e.StackTrace;
            }
            catch (Exception e)
            {
                error = "Unexpected error. URL: " + sender.Url + ", MSG_ID: " + message_send.MSG_ID + ", MSG_SEND_ID: " + message_send.MSG_SEND_ID + Environment.NewLine +
                        e.Message + Environment.NewLine +
                        e.StackTrace;
            }

            return(error);
        }
예제 #3
0
        public void Departure(string ChannelId, string ChannelRef, string TransactionId, DepartureDoc aDepartureDoc)
        {
            // transform external object to packaged object understandable by BizTalk
            Departure part = new Departure();

            part.ChannelId     = ChannelId;
            part.ChannelRef    = ChannelRef;
            part.TransactionId = TransactionId;
            part.aDepartureDoc = aDepartureDoc;

            ArrayList inHeaders            = null;
            ArrayList inoutHeaders         = null;
            ArrayList inoutHeaderResponses = null;
            ArrayList outHeaderResponses   = null;

            SoapUnknownHeader[] unknownHeaderResponses = null;

            // Parameter information
            object[]    invokeParams  = new object[] { part };
            ParamInfo[] inParamInfos  = new ParamInfo[] { new ParamInfo(typeof(Departure), "part") };
            ParamInfo[] outParamInfos = null;

            // Define the assembly (port)
            // NOTE! This line is only a sample, it needs to be modified to match your orchestration
            // at least regarding your project name and the public access token
            string bodyTypeAssemblyQualifiedName = "YOUR_ORCHESTRATION_PROJECT.FromWMSschema+Departure, YOUR_ORCHESTRATION_PROJECT, Version=1.0.0.0, Culture=neutral, PublicKeyToken=" +
                                                   "92267163d02e63da";

            // BizTalk invocation
            // NOTE! This line is only a sample, it needs to be modified to match your orchestration
            // regarding the operation to call
            this.Invoke("Operation_1", invokeParams, inParamInfos, outParamInfos, 0, bodyTypeAssemblyQualifiedName, inHeaders, inoutHeaders, out inoutHeaderResponses, out outHeaderResponses, null, null, null, out unknownHeaderResponses, true, false);
        }