// shows the form in edit modus
        // links:
        //  docLink: http://sql2x.org/documentationLink/49afd26c-4f21-4992-967b-be190eacef77
        public void ShowAsEdit(System.Guid flightScheduleSegmentRuleId)
        {
            var service = new CrudeFlightScheduleSegmentRuleServiceClient();

            _isNew = false;
            try {
                _contract = service.FetchByFlightScheduleSegmentRuleId(flightScheduleSegmentRuleId);
                flightScheduleSegmentRuleRefCombo.Text = _contract.FlightScheduleSegmentRuleRcd != null ? _contract.FlightScheduleSegmentRuleRcd : String.Empty;
                userPicker.SelectedValue    = _contract.UserId;
                _contract.DateTime          = DateTime.UtcNow;
                dateTimePickerDateTime.Text = _contract.DateTime.ToString();

                Show();
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            } finally {
                service.Close();
            }
        }
        public ActionResult CrudeFlightScheduleSegmentRuleCreate([Bind()] CrudeFlightScheduleSegmentRuleContract contract)
        {
            if (ModelState.IsValid)
            {
                new CrudeFlightScheduleSegmentRuleServiceClient().Insert(contract);

                return(RedirectToAction("CrudeFlightScheduleSegmentRuleIndex"));
            }

            return(View(
                       "~/Views/Crude/Flight/CrudeFlightScheduleSegmentRule/CrudeFlightScheduleSegmentRuleCreate.cshtml",
                       contract
                       ));
        }
        public ActionResult CrudeFlightScheduleSegmentRuleEdit([Bind()] CrudeFlightScheduleSegmentRuleContract contract)
        {
            if (ModelState.IsValid)
            {
                contract.DateTime = DateTime.UtcNow;

                new CrudeFlightScheduleSegmentRuleServiceClient().Update(contract);

                return(RedirectToAction("CrudeFlightScheduleSegmentRuleIndex"));
            }

            return(View(
                       "~/Views/Crude/Flight/CrudeFlightScheduleSegmentRule/CrudeFlightScheduleSegmentRuleEdit.cshtml",
                       contract
                       ));
        }
 // shows the form with default values for comboboxes and pickers
 // links:
 //  docLink: http://sql2x.org/documentationLink/e04d0806-55ef-41cc-8669-acf0ddd850c7
 public void ShowAsAdd()
 {
     try {
         _contract  = new CrudeFlightScheduleSegmentRuleContract();
         _isNew     = true;
         this.Text += " - Not Savable (FlightScheduleSegment Missing)";
         Show();
     } catch (Exception ex) {
         if (ex == null)
         {
         }
         else
         {
             System.Diagnostics.Debugger.Break();
         }
     }
 }
        // shows by foreign keys
        // links:
        //  docLink: http://sql2x.org/documentationLink/f21e72c1-2d57-44c1-a9c1-1b80bad6a391
        public void ShowAsAddByFlightScheduleSegment(System.Guid flightScheduleSegmentId)
        {
            try {
                _contract                         = new CrudeFlightScheduleSegmentRuleContract();
                _isNew                            = true;
                _contract.DateTime                = DateTime.UtcNow;
                dateTimePickerDateTime.Text       = _contract.DateTime.ToString();
                _contract.FlightScheduleSegmentId = flightScheduleSegmentId;

                Show();
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            }
        }
        // shows by foreign keys
        // links:
        //  docLink: http://sql2x.org/documentationLink/f21e72c1-2d57-44c1-a9c1-1b80bad6a391
        public void ShowAsAddByFlightScheduleSegmentRule(string flightScheduleSegmentRuleRcd)
        {
            try {
                _contract                              = new CrudeFlightScheduleSegmentRuleContract();
                _isNew                                 = true;
                _contract.DateTime                     = DateTime.UtcNow;
                dateTimePickerDateTime.Text            = _contract.DateTime.ToString();
                _contract.FlightScheduleSegmentRuleRcd = flightScheduleSegmentRuleRcd;
                flightScheduleSegmentRuleRefCombo.Text = _contract.FlightScheduleSegmentRuleRcd != null ? _contract.FlightScheduleSegmentRuleRcd : String.Empty;

                Show();
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            }
        }
        public ActionResult CrudeFlightScheduleSegmentRuleCreate(System.Guid?flightScheduleSegmentId, System.Guid?userId)
        {
            var contract = new CrudeFlightScheduleSegmentRuleContract();

            if (flightScheduleSegmentId != null)
            {
                contract.FlightScheduleSegmentId = (System.Guid)flightScheduleSegmentId;
            }
            if (userId != null)
            {
                contract.UserId = (System.Guid)userId;
            }

            ViewBag.FlightScheduleSegmentRuleRcd =
                new SelectList(new CrudeFlightScheduleSegmentRuleRefServiceClient().FetchAll(),
                               "FlightScheduleSegmentRuleRcd",
                               "FlightScheduleSegmentRuleName",
                               contract.FlightScheduleSegmentRuleRcd
                               );

            if (userId == null)
            {
                contract.UserId = new System.Guid("{FFFFFFFF-5555-5555-5555-FFFFFFFFFFFF}");
            }

            ViewBag.DefaultUserName =
                new CrudeDefaultUserServiceClient().FetchByDefaultUserId(contract.UserId).DefaultUserName;

            contract.DateTime = DateTime.UtcNow;


            return(View(
                       "~/Views/Crude/Flight/CrudeFlightScheduleSegmentRule/CrudeFlightScheduleSegmentRuleCreate.cshtml",
                       contract
                       ));
        }