private void btnAddWhere_Click(object sender, EventArgs e)
        {
            UpdateFormDataDevEditorAdapter adapter = this.HostAdapter as UpdateFormDataDevEditorAdapter;

            using (FormEventDataItemDataSet formEventDataItemDataSet = new FormEventDataItemDataSet(this.HostAdapter.HostFormEntity))
            {
                formEventDataItemDataSet.DataEntityId                = adapter.ParameterPanels.Update.DataEntityId;
                formEventDataItemDataSet.AllowDataSourceType         = UpdateFormDataDev.AllowDataSourceType;
                formEventDataItemDataSet.AllowFormElementControlType = UpdateFormDataDev.AllowFormElementControlType;
                if (formEventDataItemDataSet.ShowDialog() == DialogResult.OK)
                {
                    UpdateFormDataEvent.WhereItem where = new UpdateFormDataEvent.WhereItem()
                    {
                        DataItem     = formEventDataItemDataSet.SelectedDataItemId,
                        DataItemName = formEventDataItemDataSet.SelectedDataItemName,
                        Source       = new DataSource(formEventDataItemDataSet.SelectedDataSourceString),
                        SourceName   = formEventDataItemDataSet.SelectedDataSourceVisibleString,
                        MatchType    = EnumMatchType.Equal
                    };
                    this._wheres.Add(where);
                }
            }
        }
        private void btnGetSqlRegex_Click(object sender, EventArgs e)
        {
            UpdateFormDataDevEditorAdapter adapter = this.HostAdapter as UpdateFormDataDevEditorAdapter;

            this.txtSqlRegex.Text = String.Empty;
            if (adapter.ParameterPanels.Update.Updates.Count == 0 &&
                adapter.ParameterPanels.Where.Wheres.Count == 0)
            {
                return;
            }
            string     dataEntityId = adapter.ParameterPanels.Update.DataEntityId;
            DataEntity dataEntity   = _dataEntityComponentService.GetDataEntity(dataEntityId);
            string     sqlRegex     = "UPDATE {Table} SET {Field} WHERE 1=1";
            string     tableName    = dataEntity.Code;

            sqlRegex = sqlRegex.Replace("{Table}", "[" + tableName + "]");
            string dataItemName = String.Empty;
            string valueName    = String.Empty;

            if (adapter.ParameterPanels.Update.Updates.Count > 0)
            {
                sqlRegex += Environment.NewLine;
                foreach (UpdateFormDataDev.UpdateItem update in adapter.ParameterPanels.Update.Updates)
                {
                    dataItemName = dataEntity.Items.GetEntityById(update.DataItem).Code;
                    if (update.Source.Type == EnumEventDataSource.FormElement)
                    {
                        valueName = "{FormElement." +
                                    this.HostAdapter.HostFormEntity.FindFormElementById(update.Source.Source).Code + "}";
                    }
                    else
                    {
                        valueName = "{System." +
                                    ((EnumSystemDataSource)Convert.ToInt32(update.Source.Source)).ToString() + "}";
                    }
                    sqlRegex = sqlRegex.Replace("{Field}", "[" + dataItemName + "] = " + valueName + ",{Field}");
                }
                sqlRegex = sqlRegex.Replace(",{Field}", "");
            }
            else
            {
                sqlRegex = sqlRegex.Replace("{Field}", "");
            }
            if (adapter.ParameterPanels.Where.Wheres.Count == 0)
            {
                this.txtSqlRegex.SetContent(sqlRegex.Replace("WHERE 1=1", String.Empty));
                return;
            }
            sqlRegex += Environment.NewLine;
            foreach (UpdateFormDataEvent.WhereItem where in adapter.ParameterPanels.Where.Wheres)
            {
                dataItemName = dataEntity.Items.GetEntityById(where.DataItem).Code;
                if (where.Source.Type == EnumEventDataSource.FormElement)
                {
                    valueName = "{FormElement." +
                                this.HostAdapter.HostFormEntity.FindFormElementById(where.Source.Source).Code + "}";
                }
                else
                {
                    valueName = "{System." +
                                ((EnumSystemDataSource)Convert.ToInt32(where.Source.Source)).ToString() + "}";
                }
                sqlRegex += Environment.NewLine + " AND " + CommonOperater.CombineFieldAndValue(
                    dataItemName, valueName, where.MatchType);
            }
            this.txtSqlRegex.SetContent(sqlRegex.Replace("1=1" + Environment.NewLine + Environment.NewLine + " AND ",
                                                         Environment.NewLine));
        }