//重写保存功能 public override void DoSave(IButtonInfo sender) { UpdateLastControl(); //更新最后一个输入控件的数据 if (!ValidatingData()) { return; //检查输入完整性 } //调用UpdateEx扩展方法提交数据,由后台生成主键并返回到客户端。 SaveResultEx ret = _BLL.UpdateEx(_UpdateType);//调用业务逻辑层的Update方法提交数据 if (ret.Success) { _BLL.DataBinder.Rows[0]["ID"] = ret.PrimaryKey; //生成的主键 this.UpdateSummaryRow(_BLL.DataBinder.Rows[0]); //刷新表格内的数据. this._UpdateType = UpdateType.None; this.SetViewMode(); this.ShowDetailPage(false); this.ButtonStateChanged(_UpdateType); Msg.ShowInformation("保存成功!"); } else { Msg.Warning("保存失败!"); } }
/// <summary> /// 数据字典:手动控制事务及自动生成流水号 /// </summary> /// <param name="data">用户提交的数据</param> /// <returns></returns> public override SaveResultEx UpdateEx(DataSet data) { SaveResultEx result = new SaveResultEx((int)ResultID.SUCCESS, ""); try { this.BeginTransaction(); //启动事务 DataTable summary = data.Tables[tb_CommonDataDict.__TableName]; //取出主表数据 string dataType = ConvertEx.ToString(summary.Rows[0][tb_CommonDataDict.DataType]); //取数据类型 string dataCode = DocNoTool.GetDataSN(_CurrentTrans, dataType, true); //在同一事务内取流水号 summary.Rows[0][tb_CommonDataDict.DataCode] = dataCode; result = base.UpdateEx(data); //提交数据 result.PrimaryKey = dataCode; //返回自动生成的主键 this.CommitTransaction(); //提交事务 } catch { this.RollbackTransaction();//回滚 } return(result); }
public byte[] UpdateEx(byte[] loginTicket, byte[] bs, string ORM_TypeName) { try { Loginer loginer = WebServiceSecurity.ValidateLoginer(loginTicket); DataSet data = ZipTools.DecompressionDataSet(bs); dalBaseDataDict dict = dalBaseDataDict.CreateDalByORM(loginer, ORM_TypeName); SaveResultEx result = dict.UpdateEx(data); //保存数据 return(ZipTools.CompressionObject(result)); //序列化返回对象 } catch (Exception ex) { throw new FaultException(ex.Message); } }
//重写保存功能 public override void DoSave(IButtonInfo sender) { UpdateLastControl(); //更新最后一个输入控件的数据 string sDesc = ""; if (!ValidatingData()) { return; //检查输入完整性 } //调用UpdateEx扩展方法提交数据,由后台生成主键并返回到客户端。 SaveResultEx ret = _BLL.UpdateEx(_UpdateType);//调用业务逻辑层的Update方法提交数据 if (_UpdateType == UpdateType.Add) { sDesc = "新增数据字典"; } else { sDesc = "修改数据字典"; } if (ret.Success) { _BLL.DataBinder.Rows[0][tb_t_CommonDataDict.FDataCode] = ret.PrimaryKey; //生成的主键 this.UpdateSummaryRow(_BLL.DataBinder.Rows[0]); //刷新表格内的数据. this._UpdateType = UpdateType.None; this.SetViewMode(); this.ShowDetailPage(false); this.ButtonStateChanged(_UpdateType); bllComDataBaseTool.WriteLogOp(_FunctionID, "0", sDesc + _BLL.DataBinder.Rows[0][tb_t_CommonDataDict.FNativeName].ToString() + "(" + _BLL.DataBinder.Rows[0][tb_t_CommonDataDict.FDataCode].ToString() + ")"); DataDictCache.RefreshCache(); gcSummary.DataSource = DataDictCache.Cache.CommonDataDict; Msg.ShowInformation("保存成功!"); } else { Msg.Warning("保存失败!"); } }
/// <summary> /// 保存基础资料名称 /// </summary> private void DoSaveClass(IButtonInfo sender) { UpdateLastControl(); //更新最后一个输入控件的数据 string sDesc = ""; if (!ValidatingDataClass()) { return; //检查输入完整性 } //调用UpdateEx扩展方法提交数据,由后台生成主键并返回到客户端。 SaveResultEx ret = _BLL.UpdateClassEx(_UpdateType);//调用业务逻辑层的Update方法提交数据 if (_UpdateType == UpdateType.Add) { sDesc = "新增基础数据"; } else { sDesc = "修改基础数据"; } if (ret.Success) { this.UpdateClassSummaryRow(_BLL._ClassDataBinder.Rows[0]); //刷新表格内的数据. this._UpdateType = UpdateType.None; this.SetViewMode(); this.ShowDetailPageClass(false); this.ButtonStateChanged(_UpdateType); bllComDataBaseTool.WriteLogOp(_FunctionID, "0", sDesc + _BLL._ClassDataBinder.Rows[0][tb_t_ItemClass.FName].ToString() + "(" + _BLL._ClassDataBinder.Rows[0][tb_t_ItemClass.FNumber].ToString() + ")"); DataDictCache.RefreshCache(); gcProfileClass.DataSource = DataDictCache.Cache.ItemClass; //_BLL.ClassSummaryTable = DataDictCache.Cache.ItemClass; Msg.ShowInformation("保存成功!"); } else { Msg.Warning("保存失败!"); } }