protected void btnAdd_Click(object sender, EventArgs e) { Workflow_FieldDictEntity _FieldDictEntity = DbHelper.GetInstance().GetWorkflow_FieldDictEntityByKeyCol(ddlFieldIDTo.SelectedValue); string[] RuleDetail = GetRuleDetail(); if (_FieldDictEntity.HTMLTypeID != 8 && rblAddInOperationType.SelectedValue == "1") { try { DbHelper.GetInstance().ExecSqlText(string.Format(" select {0} from Workflow_Form where RequestID=0", RuleDetail[0])); } catch { BindGridView(); ScriptManager.RegisterStartupScript(btnAdd, this.GetType(), "add", "alert('赋值表达式不正确,无法添加');", true); return; } } DataTable dtComputeRouteOperation = (DataTable)ViewState["dtComputeRouteOperation"]; DataTable dtComputeRouteOperation2; Workflow_NodeAddInOperation_Type0Entity _Type0Entity = new Workflow_NodeAddInOperation_Type0Entity(); _Type0Entity.AddInOPID = txtAddInOPID.Value != "" ? Convert.ToInt32(txtAddInOPID.Value) : 0; _Type0Entity.NodeID = DNTRequest.GetInt("id", 0); _Type0Entity.OPTime = DNTRequest.GetInt("t", 0); _Type0Entity.TargetFieldID = Int32.Parse(ddlFieldIDTo.SelectedValue); if (_FieldDictEntity.HTMLTypeID == 8) { dtComputeRouteOperation2 = dtComputeRouteOperation.Clone(); _Type0Entity.CaculateType = 2; _Type0Entity.CaculateValue = txtBrowseValue.Value; } else { dtComputeRouteOperation2 = dtComputeRouteOperation; _Type0Entity.CaculateType = Int32.Parse(rblAddInOperationType.SelectedValue); _Type0Entity.CaculateValue = RuleDetail[0]; } _Type0Entity.DataSetID = txtDataSetID.Value != "" ? Int32.Parse(txtDataSetID.Value) : 0; _Type0Entity.ValueField = ddlValueColumn.SelectedValue; _Type0Entity.DataSourceID = txtDataSourceID.Value != "" ? Int32.Parse(txtDataSourceID.Value) : 0; _Type0Entity.StorageProcedure = ddlStorageProcedure.SelectedValue; _Type0Entity.OutputParameter = ddlOutputParameter.SelectedValue; _Type0Entity.OPCondition = "(1=1)"; _Type0Entity.CreateSID = userEntity.UserSerialID; _Type0Entity.CreateDate = DateTime.Now; string AddInOPID = DbHelper.GetInstance().AddWorkflow_NodeAddInOperation_Type0(_Type0Entity, dtComputeRouteOperation2); dtComputeRouteOperation.Rows.Clear(); lblExpression.Text = ""; if (rblAddInOperationType.SelectedValue == "4") { DataTable dtSpParameter = DbHelper.GetInstance().GetAllStoredProcedureParameters(_Type0Entity.DataSourceID, _Type0Entity.StorageProcedure); for (int i = 0; i < dtSpParameter.Rows.Count; i++) { if ("ReturnValue" == dtSpParameter.Rows[i]["ParameterDirection"].ToString()) { continue; } Workflow_NodeAddInOperation_Type0_SpParameterEntity _Type0_SpParameterEntity = new Workflow_NodeAddInOperation_Type0_SpParameterEntity(); _Type0_SpParameterEntity.AddInOPID = Int32.Parse(AddInOPID); _Type0_SpParameterEntity.SpParameter = dtSpParameter.Rows[i]["ParameterName"].ToString(); _Type0_SpParameterEntity.ParameterType = dtSpParameter.Rows[i]["ParameterType"].ToString(); _Type0_SpParameterEntity.ParameterSize = Convert.ToInt32(dtSpParameter.Rows[i]["ParameterSize"]); _Type0_SpParameterEntity.ParameterDirection = dtSpParameter.Rows[i]["ParameterDirection"].ToString(); _Type0_SpParameterEntity.TartgetValue = ""; DbHelper.GetInstance().AddWorkflow_NodeAddInOperation_Type0_SpParameter(_Type0_SpParameterEntity); } } BindGridView(); System.Web.UI.ScriptManager.RegisterStartupScript(btnAdd, this.GetType(), "ButtonHideScript", strButtonHideScript, false); }
/// <summary> /// 新增信息 /// </summary> /// <param name="_Type0Entity"></param> /// <param name="dtComputeRouteOperation"></param> /// <returns></returns> public string AddWorkflow_NodeAddInOperation_Type0(Workflow_NodeAddInOperation_Type0Entity _Type0Entity, DataTable dtComputeRouteOperation) { DbParameter[] pramsInsert = { MakeInParam("@NodeID",(DbType)SqlDbType.Int,4,_Type0Entity.NodeID ), MakeInParam("@TargetFieldID",(DbType)SqlDbType.Int,4,_Type0Entity.TargetFieldID ), MakeInParam("@CaculateType",(DbType)SqlDbType.Int,4,_Type0Entity.CaculateType ), MakeInParam("@CaculateValue",(DbType)SqlDbType.VarChar,2000,_Type0Entity.CaculateValue ), MakeInParam("@DataSetID",(DbType)SqlDbType.Int,4,_Type0Entity.DataSetID ), MakeInParam("@ValueField",(DbType)SqlDbType.VarChar,50,_Type0Entity.ValueField ), MakeInParam("@DataSourceID",(DbType)SqlDbType.Int,4,_Type0Entity.DataSourceID ), MakeInParam("@StorageProcedure",(DbType)SqlDbType.VarChar,100,_Type0Entity.StorageProcedure ), MakeInParam("@OutputParameter",(DbType)SqlDbType.VarChar,50,_Type0Entity.OutputParameter ), MakeInParam("@OPTime",(DbType)SqlDbType.Int,4,_Type0Entity.OPTime ), MakeInParam("@OPCondition",(DbType)SqlDbType.VarChar,2000,_Type0Entity.OPCondition ), MakeInParam("@CreateDate",(DbType)SqlDbType.DateTime,16,_Type0Entity.CreateDate ), MakeInParam("@CreateSID",(DbType)SqlDbType.Int,4,_Type0Entity.CreateSID ), }; StringBuilder sb = new StringBuilder(); sb.Append("INSERT INTO [dbo].[Workflow_NodeAddInOperation_Type0]"); sb.Append("("); sb.Append(" [NodeID]"); sb.Append(",[TargetFieldID]"); sb.Append(",[CaculateType]"); sb.Append(",[CaculateValue]"); sb.Append(",[DataSetID]"); sb.Append(",[ValueField]"); sb.Append(",[DataSourceID]"); sb.Append(",[StorageProcedure]"); sb.Append(",[OutputParameter]"); sb.Append(",[OPTime]"); sb.Append(",[OPCondition]"); sb.Append(",[CreateDate]"); sb.Append(",[CreateSID]"); sb.Append(") "); sb.Append(" VALUES ("); sb.Append("@NodeID,"); sb.Append("@TargetFieldID,"); sb.Append("@CaculateType,"); sb.Append("@CaculateValue,"); sb.Append("@DataSetID,"); sb.Append("@ValueField,"); sb.Append("@DataSourceID,"); sb.Append("@StorageProcedure,"); sb.Append("@OutputParameter,"); sb.Append("@OPTime,"); sb.Append("@OPCondition,"); sb.Append("@CreateDate,"); sb.Append("@CreateSID )"); sb.Append("select @@identity;"); string AddInOPID = ExecuteScalar(CommandType.Text, sb.ToString(), pramsInsert).ToString(); for (int i = 0; i < dtComputeRouteOperation.Rows.Count; i++) { DbParameter[] pramsRouteInsert = { MakeInParam("@AddInOPID",(DbType)SqlDbType.Int,4,AddInOPID ), MakeInParam("@ComputeType",(DbType)SqlDbType.Int,4,dtComputeRouteOperation.Rows[i]["ComputeType"] ), MakeInParam("@RouteValue",(DbType)SqlDbType.VarChar,50,dtComputeRouteOperation.Rows[i]["RouteValue"] ), MakeInParam("@RouteOrder",(DbType)SqlDbType.Int,4,dtComputeRouteOperation.Rows[i]["RouteOrder"] ), }; string sqlInsert = @" insert into Workflow_ComputeRouteOperation(AddInOPID,ComputeType,RouteValue,RouteOrder)values(@AddInOPID,@ComputeType,@RouteValue,@RouteOrder) "; ExecuteScalar(CommandType.Text, sqlInsert, pramsRouteInsert); } ExecuteNonQuery(CommandType.Text, @" insert into Workflow_NodeAddInOperation_Type0_DataSetParameter(AddInOPID,DSParameter,TartgetValue) select a.AddInOPID,b.ParameterName,b.ParameterValue from Workflow_NodeAddInOperation_Type0 a left join Workflow_DataSetParameter b on a.DataSetID=b.DataSetID left join Workflow_NodeAddInOperation_Type0_DataSetParameter c on a.AddInOPID=c.AddInOPID where a.CaculateType=3 and c.AddInOPID is null "); return AddInOPID; }