private void GuardarTablaCronograma(long anioAntiguo) { _dgvCronograma.EndEdit(); if (OraDalCronogramaDeInversionMgr.Instancia.ExisteCronogramaConAnioRef(_datoEconomico.AnioRefInformacion.ToString(), _datoEconomico.PkDatoEconomico)) { OraDalCronogramaDeInversionMgr.Instancia.EliminarCronogramaInv(_datoEconomico.AnioRefInformacion.ToString(), _datoEconomico.PkDatoEconomico); OraDalCronogramaDeInversionMgr.Instancia.CambiarRegistrosAEstadoAHistorico(_datoEconomico.PkDatoEconomico); } else { OraDalCronogramaDeInversionMgr.Instancia.CambiarEstadoAHistorico(_datoEconomico.PkDatoEconomico, anioAntiguo); } if (_dgvCronograma.Rows.Count - 1 > 0) { for (int i = 0; i < _dgvCronograma.Rows.Count - 1; i++) { DataRow row = ((DataRowView)_dgvCronograma.Rows[i].DataBoundItem).Row; _cronogramaInv = new CronogramaDeInversion(); _cronogramaInv.EsNuevo = true; _cronogramaInv.Anio = row[1].ToString(); _cronogramaInv.Monto = double.Parse(row[2].ToString()); _cronogramaInv.FkDatoEconomico = _datoEconomico.PkDatoEconomico; _cronogramaInv.AnioRef = _datoEconomico.AnioRefInformacion; OraDalCronogramaDeInversionMgr.Instancia.Guardar(_cronogramaInv); } CargarHistoricoCronograma(); } SumarMontosCronograma(); }
private void _dgvCronograma_SelectionChanged(object sender, EventArgs e) { _cronogramaInv = null; _idxCronograma = -1; if (_dgvCronograma.SelectedCells.Count > 0) { _idxCronograma = _dgvCronograma.SelectedCells[0].RowIndex; } }
private void GuardarPrivado(CronogramaDeInversion cronogramaInv) { OracleCommand cmd = null; string sql = string.Empty; if (cronogramaInv.EsNuevo) { Pista p = PistaMgr.Instance.Info("DALProyectos", cronogramaInv.GetEstadoString()); cronogramaInv.SecLog = (long)p.PK_SecLog; cronogramaInv.PkCronogramaInversion = GetIdAutoNum("SQ_F_PR_CRONOGRAMA_INVERSION"); sql = "INSERT INTO {0} ({1},{2},{3},{4},{5},{6},{7})" + "VALUES(:{1},:{2},:{3},:{4},:{5},:{6},:{7})"; } else { sql = "UPDATE {0} SET " + "{2}=:{2} ," + "{3}=:{3} ," + "{4}=:{4} ," + "{5}=:{5} ," + "{6}=:{6} ," + "{7}=:{7} WHERE {1}=:{1}"; } sql = string.Format(sql, CronogramaDeInversion.NOMBRE_TABLA, CronogramaDeInversion.C_PK_CRONOGRAMA_INVERSION, CronogramaDeInversion.C_FK_DATO_ECONOMICO, CronogramaDeInversion.C_ANIO, CronogramaDeInversion.C_MONTO, CronogramaDeInversion.C_SEC_LOG, CronogramaDeInversion.C_ANIO_REF, CronogramaDeInversion.C_HISTORICO); cmd = CrearCommand(); cmd.CommandText = sql; cmd.BindByName = true; cmd.Parameters.Add(CronogramaDeInversion.C_PK_CRONOGRAMA_INVERSION, OracleDbType.Int64, cronogramaInv.PkCronogramaInversion, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_FK_DATO_ECONOMICO, OracleDbType.Int64, cronogramaInv.FkDatoEconomico, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_ANIO, OracleDbType.Varchar2, cronogramaInv.Anio, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_MONTO, OracleDbType.Double, cronogramaInv.Monto, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_SEC_LOG, OracleDbType.Int64, cronogramaInv.SecLog, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_ANIO_REF, OracleDbType.Int64, cronogramaInv.AnioRef, System.Data.ParameterDirection.Input); cmd.Parameters.Add(CronogramaDeInversion.C_HISTORICO, OracleDbType.Int16, cronogramaInv.Historico, System.Data.ParameterDirection.Input); if (Actualizar(cmd)) { cronogramaInv.EsNuevo = false; } }
public void Guardar(CronogramaDeInversion cronogramaInv) { // if (!cronogramaInv.EsNuevo) // { // string sql = // @"UPDATE F_PR_CRONOGRAMA_INVERSION // SET historico=1 // WHERE PK_CRONOGRAMA_INVERSION=" + cronogramaInv.PkCronogramaInversion; // OracleCommand cmd = CrearCommand(); // cmd.CommandText = sql; // Actualizar(cmd); // cronogramaInv.EsNuevo = true; // } GuardarPrivado(cronogramaInv); }
public List <CronogramaDeInversion> GetTodoElCronogramaPorPkDatoEconomico(long pkDatoEconomico) { string sql = "SELECT * FROM {0} WHERE {1}={2} order by {3}"; sql = string.Format(sql, CronogramaDeInversion.NOMBRE_TABLA, CronogramaDeInversion.C_FK_DATO_ECONOMICO, pkDatoEconomico, CronogramaDeInversion.C_PK_CRONOGRAMA_INVERSION); DataTable tabla = EjecutarSql(sql); List <CronogramaDeInversion> resultado = new List <CronogramaDeInversion>(); CronogramaDeInversion vol; if (tabla.Rows.Count > 0) { foreach (DataRow row in tabla.Rows) { vol = new CronogramaDeInversion(row); resultado.Add(vol); } } return(resultado); }