// 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 CrudeProductGatherKeyServiceClient();

            try {
                _contract.ProductGatherKeyValue = textBoxProductGatherKeyValue.Text;

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

            Close();
        }
        // refresh the grid
        // links:
        //  docLink: http://sql2x.org/documentationLink/a90065e7-8ace-4de7-9367-d4653a7c637f
        public void RefreshCrudeProductGatherKey()
        {
            var productGatherKey = new CrudeProductGatherKeyServiceClient();

            try {
                var bindingSource = new BindingSource();
                bindingSource.DataSource = productGatherKey.FetchWithFilter(
                    Guid.Empty
                    , textBoxProductGatherKeyValue.Text
                    , Guid.Empty
                    , Guid.Empty
                    , DateTime.MinValue
                    );
                dataGridViewCrudeProductGatherKey.AutoGenerateColumns = false;
                dataGridViewCrudeProductGatherKey.DataSource          = bindingSource;
                dataGridViewCrudeProductGatherKey.AutoResizeColumns();
                dataGridViewCrudeProductGatherKey.Refresh();
            } catch (Exception ex) {
                if (ex == null)
                {
                }
                else
                {
                    System.Diagnostics.Debugger.Break();
                }
            } finally {
                productGatherKey.Close();
            }
        }
        // shows the form in edit modus
        // links:
        //  docLink: http://sql2x.org/documentationLink/49afd26c-4f21-4992-967b-be190eacef77
        public void ShowAsEdit(System.Guid productGatherKeyId)
        {
            var service = new CrudeProductGatherKeyServiceClient();

            _isNew = false;
            try {
                _contract = service.FetchByProductGatherKeyId(productGatherKeyId);
                textBoxProductGatherKeyValue.Text = _contract.ProductGatherKeyValue;
                _contract.DateTime          = DateTime.UtcNow;
                dateTimePickerDateTime.Text = _contract.DateTime.ToString();

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