--单据自定义后台更新T_BillControl中的FDataBindif exists(select 1 from sysobjects where name = 'UP_BillControl_UpdateDataBind' and xtype = 'P') drop proc UP_BillControl_UpdateDataBindGOCreate proc UP_BillControl_UpdateDataBind @FBillName varchar(30), --单据英文名称,例如:FeeCharge @FCtrlName varchar(50) = null, --需要修改控件DataBind对应的控件名称,例如:datagridview1column3 @FCtrlText varchar(50) = null, --需要修改控件DataBind对应的文本名称,例如:合同号 @FDataBind varchar(200) = null, --新的FDataBind内容 @FDataType int = -1, --新的FDataType内容 @FDataFrom varchar(8000) = null --新的FDataFrom内容 as declare @sql varchar(7000) if((@FCtrlName is not null or @FCtrlText is not null) and (@FDataFrom is not null or @FDataBind is not null)) begin set @sql = 'update T_BillControl set ' if(@FDataFrom is not null) set @sql = @sql + 'FDataFrom = ''' + @FDataFrom +''',' if(@FDataType > -1) set @sql = @sql + 'FDataType = ' + @FDataType +',' if(@FDataBind is not null) set @sql = @sql + 'FDataBind = ''' + @FDataBind +''',' set @sql = substring(@sql,0,len(@sql)) + ' where FControlID =(' +'select FControlID from T_BillControl a join T_BillType b on b.FBillTypeID = a.FBillTypeID where b.FName = ''' +@FBillName+''' and ' if(@FCtrlName is not null) set @sql = @sql + ' a.FName = ''' + @FCtrlName + '''' else if(@FCtrlText is not null) set @sql = @sql + ' a.FText like ''%' + @FCtrlText + '%''' set @sql = @sql + ')' --select @sql exec(@sql) END GO --0003176: 费用报销单:"合同号"绑定不正确,录入合同号时,程序错误提示为"请先选择服务代码"。exec UP_BillControl_UpdateDataBind 'FeeCharge','datagridview1column3',null,'T_ChargeDetail.FContractID'--"外出服务单"的合同金额数据绑定为空,导致打开时,程序提示需要绑定。exec UP_BillControl_UpdateDataBind 'WCServiceBill',null,'合同余款','T_OutServiceBill.FContractBalance'