public override void Commit() { _data.tsa_AgrupCuentas.Clear(); _dataJerarquias.tsa_CuentasJerarquias.Clear(); if (this.Elementos != null) { foreach (CuentaView cuenta in this.Elementos) { tsa_AgrupCuentasDataset.tsa_AgrupCuentasRow row = _data.tsa_AgrupCuentas.Newtsa_AgrupCuentasRow(); row.IdCuenta = cuenta.IdCuenta; row.Jerarquia = Jerarquia; row.FechaCreacion = mz.erp.businessrules.Sistema.DateTime.Now; row.IdConexionCreacion = Security.IdConexion; row.IdConexionUltimaModificacion = Security.IdConexion; row.IdReservado = 0; row.RowId = Guid.Empty; row.IdEmpresa = Security.IdEmpresa; _data.tsa_AgrupCuentas.Addtsa_AgrupCuentasRow(row); tsa_CuentasJerarquiasDataset.tsa_CuentasJerarquiasRow rowCJ = businessrules.tsa_CuentasJerarquias.GetByPk(cuenta.IdCuenta); if (rowCJ == null) { rowCJ = _dataJerarquias.tsa_CuentasJerarquias.Newtsa_CuentasJerarquiasRow(); rowCJ["IdCuenta"] = cuenta.IdCuenta; CuentasJerarquiaAuxiliar c = new CuentasJerarquiaAuxiliar(); ArrayList aux = mz.erp.systemframework.Util.Parse(Jerarquia, 20); string nomenclatura = c.nomenclaturaReal(Jerarquia); rowCJ[nomenclatura + "a"] = (aux.Count > 0 && aux[0] != null)? Convert.ToString(aux[0]) : string.Empty; rowCJ[nomenclatura + "b"] = (aux.Count > 1 && aux[1] != null)? Convert.ToString(aux[1]) : string.Empty; rowCJ[nomenclatura + "c"] = (aux.Count > 2 && aux[2] != null)? Convert.ToString(aux[2]) : string.Empty; rowCJ[nomenclatura + "d"] = (aux.Count > 3 && aux[3] != null)? Convert.ToString(aux[3]) : string.Empty; _dataJerarquias.tsa_CuentasJerarquias.Addtsa_CuentasJerarquiasRow(rowCJ); } else { CuentasJerarquiaAuxiliar c = new CuentasJerarquiaAuxiliar(); ArrayList aux = mz.erp.systemframework.Util.Parse(Jerarquia, 20); string nomenclatura = c.nomenclaturaReal(Jerarquia); rowCJ[nomenclatura + "a"] = (aux.Count > 0 && aux[0] != null)? Convert.ToString(aux[0]) : string.Empty; rowCJ[nomenclatura + "b"] = (aux.Count > 1 && aux[1] != null)? Convert.ToString(aux[1]) : string.Empty; rowCJ[nomenclatura + "c"] = (aux.Count > 2 && aux[2] != null)? Convert.ToString(aux[2]) : string.Empty; rowCJ[nomenclatura + "d"] = (aux.Count > 3 && aux[3] != null)? Convert.ToString(aux[3]) : string.Empty; _dataJerarquias.tsa_CuentasJerarquias.ImportRow(rowCJ); } } } }
public override void DeleteAgrupamientos(string Hierarchy) { if (this.Elementos != null) { foreach (CuentaView cv in this.Elementos) { string IdCuenta = cv.IdCuenta; tsa_AgrupCuentasDataset.tsa_AgrupCuentasRow row = businessrules.tsa_AgrupCuentas.NewRow(); row = businessrules.tsa_AgrupCuentas.GetByPk(IdCuenta, Hierarchy); if (row != null) { row.Delete(); businessrules.tsa_AgrupCuentas.Update(row); //Si hay otra agrupcuentas no hay q eliminarla solo actualizarla, si no hay otra directamente borro la de cuentas jerarquia DataSet dataset = businessrules.tsa_AgrupCuentas.GetList(IdCuenta); if (dataset.Tables[0].Rows.Count == 0) { tsa_CuentasJerarquiasDataset.tsa_CuentasJerarquiasRow rowCJ = businessrules.tsa_CuentasJerarquias.GetByPk(IdCuenta); rowCJ.Delete(); businessrules.tsa_CuentasJerarquias.Update(rowCJ); } //Else hay q actualizar la q jerarquia q corresponde = "" else { if (!Jerarquia.Equals(string.Empty)) { CuentasJerarquiaAuxiliar c = new CuentasJerarquiaAuxiliar(); string nomenclatura = c.nomenclaturaReal(Jerarquia); ArrayList aux = mz.erp.systemframework.Util.Parse(Jerarquia, 20); tsa_CuentasJerarquiasDataset.tsa_CuentasJerarquiasRow rowCJ = AddTsa_CuentasJerarquias(IdCuenta); rowCJ[nomenclatura + "a"] = string.Empty; rowCJ[nomenclatura + "b"] = string.Empty; rowCJ[nomenclatura + "c"] = string.Empty; rowCJ[nomenclatura + "d"] = string.Empty; businessrules.tsa_CuentasJerarquias.Update(rowCJ); } } } } } }
/* Fin Silvina 20111104 - Tarea 0000222 */ public tsa_CuentasExDataset Commit(tsa_CuentasExDataset data, string IdCuenta) { _data = data; if (_habilitaJerarquias) { _data.tsa_AgrupCuentas.Clear(); _data.Merge(mz.erp.dataaccess.tsa_AgrupCuentas.GetList(IdCuenta, long.MinValue).Tables[0]); foreach (DataRow rowJ in data.tsa_AgrupCuentas.Rows) { rowJ.Delete(); } _data.tsa_CuentasJerarquias.Clear(); tsa_CuentasJerarquiasDataset.tsa_CuentasJerarquiasRow _auxRow = mz.erp.dataaccess.tsa_CuentasJerarquias.GetByPk(IdCuenta); if (_auxRow != null) { _data.tsa_CuentasJerarquias.ImportRow(_auxRow); } foreach (DataRow rowCJ in _data.tsa_CuentasJerarquias.Rows) { rowCJ.Delete(); } if (ByJerarquia1) { foreach (ItemJerarquia item in this._jerarquia1) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia2) { foreach (ItemJerarquia item in this._jerarquia2) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia3) { foreach (ItemJerarquia item in this._jerarquia3) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia4) { foreach (ItemJerarquia item in this._jerarquia4) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia5) { foreach (ItemJerarquia item in this._jerarquia5) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia6) { foreach (ItemJerarquia item in this._jerarquia6) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia7) { foreach (ItemJerarquia item in this._jerarquia7) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } if (ByJerarquia8) { foreach (ItemJerarquia item in this._jerarquia8) { this.Addtsa_AgrupCuentasRow(item.NodeKeyPath, IdCuenta); } } CuentasJerarquiaAuxiliar c = new CuentasJerarquiaAuxiliar(); c.cargarJerarquias(_data.tsa_AgrupCuentas); Hashtable aux = c.CuentaJerarquia; //Para cada cuenta foreach (string idCuen in aux.Keys) { object valor = aux[idCuen]; this.AddTsa_CuentasJerarquias(idCuen, (ArrayList)valor); } } return(_data); }