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); } } } } } }