// refresh the grid
        // links:
        //  docLink: http://sql2x.org/documentationLink/a90065e7-8ace-4de7-9367-d4653a7c637f
        public void RefreshCrudeFlightScheduleSegmentRule()
        {
            var flightScheduleSegmentRule = new CrudeFlightScheduleSegmentRuleServiceClient();

            try {
                var bindingSource = new BindingSource();
                bindingSource.DataSource = flightScheduleSegmentRule.FetchWithFilter(
                    Guid.Empty
                    , Guid.Empty
                    , flightScheduleSegmentRuleRefCombo.Text
                    , Guid.Empty
                    , DateTime.MinValue
                    );
                dataGridViewCrudeFlightScheduleSegmentRule.AutoGenerateColumns = false;
                dataGridViewCrudeFlightScheduleSegmentRule.DataSource          = bindingSource;
                dataGridViewCrudeFlightScheduleSegmentRule.AutoResizeColumns();
                dataGridViewCrudeFlightScheduleSegmentRule.Refresh();
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            } finally {
                flightScheduleSegmentRule.Close();
            }
        }
        // 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();
            }
        }
        // saves the form
        // links:
        //  docLink: http://sql2x.org/documentationLink/c9522930-91f8-4468-a936-8030bb2a6482
        private void buttonSave_Click(object sender, EventArgs e)
        {
            var service = new CrudeFlightScheduleSegmentRuleServiceClient();

            try {
                _contract.FlightScheduleSegmentRuleRcd = flightScheduleSegmentRuleRefCombo.Text;
                _contract.UserId = (Guid)userPicker.SelectedValue;

                if (_isNew)
                {
                    service.Insert(_contract);
                }
                else
                {
                    service.Update(_contract);
                }
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            } finally {
                service.Close();
            }

            Close();
        }
        public ActionResult CrudeFlightScheduleSegmentRuleEdit(
            System.Guid flightScheduleSegmentRuleId
            )
        {
            CrudeFlightScheduleSegmentRuleContract contract = new CrudeFlightScheduleSegmentRuleServiceClient().FetchByFlightScheduleSegmentRuleId(flightScheduleSegmentRuleId);

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

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


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