//******************************************************************************* //NOMBRE DE LA FUNCIÓN:Consultar_Informacion //DESCRIPCIÓN: Metodo que permite llenar el Grid con la informacion de la consulta //PARAMETROS: //CREO : Hugo Enrique Ramírez Aguilera //FECHA_CREO : 07/Abril/2016 //MODIFICO: //FECHA_MODIFICO: //CAUSA_MODIFICACIÓN: //******************************************************************************* public void Consultar_Informacion() { Cls_Rpt_Plan_Volumenes_Negocio Rs_Consulta = new Cls_Rpt_Plan_Volumenes_Negocio(); DataTable Dt_Consulta = new DataTable(); DataTable Dt_Tarifas = new DataTable(); DataTable Dt_Reporte = new DataTable(); DataTable Dt_Auxiliar = new DataTable(); DataTable Dt_Resumen = new DataTable(); DataRow Dr_Nuevo_Elemento; String Str_Nombre_Mes = ""; Dictionary <Int32, String> Dic_Meses; Double Db_Total = 0; Decimal Dc_Total = 0; DataTable Dt_Existencia = new DataTable(); try { Dic_Meses = Cls_Metodos_Generales.Crear_Diccionario_Meses(); Rs_Consulta.P_Anio = DateTime.Now.Year; Rs_Consulta.P_Mes = DateTime.Now.Month; Dt_Tarifas = Rs_Consulta.Consultar_Tarifas_Giro(); Dt_Reporte = Crear_Tabla_Reporte(); //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Se ingresan los encabezados para las tomas foreach (DataRow Registro in Dt_Tarifas.Rows) { Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = 1; Dr_Nuevo_Elemento["Concepto"] = "Volumen facturado medido a " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); } // se consultan las tomas que se realizaron en el año de consulta Rs_Consulta.P_Estimado = "NO"; Dt_Consulta = Rs_Consulta.Consultar_Volumenes(); foreach (DataRow Registro in Dt_Reporte.Rows) { Registro.BeginEdit(); Db_Total = 0; for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { Str_Nombre_Mes = ""; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario Dc_Total = (from ord in Dt_Consulta.AsEnumerable() where ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For && ord.Field <Int32>("anio") == Rs_Consulta.P_Anio select ord.Field <Decimal>("Consumo") ).Sum(); Registro[Str_Nombre_Mes] = Convert.ToDouble(Dc_Total); Db_Total = Db_Total + Convert.ToDouble(Dc_Total); } Registro["Total"] = Db_Total; Db_Total = 0; Registro.EndEdit(); Registro.AcceptChanges(); } // se borraran las tarifas id, ya que comenzara con el tercer proceso foreach (DataRow Registro_Reporte in Dt_Reporte.Rows) { Registro_Reporte.BeginEdit(); Registro_Reporte["Tarifa_Id"] = ""; Registro_Reporte.EndEdit(); Registro_Reporte.AcceptChanges(); } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Se ingresan los encabezados para las tomas foreach (DataRow Registro in Dt_Tarifas.Rows) { Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = 2; Dr_Nuevo_Elemento["Concepto"] = "Volumen facturado estimado " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); } // se consultan las tomas que se realizaron en el año de consulta Rs_Consulta.P_Estimado = "SI"; Dt_Consulta = Rs_Consulta.Consultar_Volumenes(); foreach (DataRow Registro in Dt_Reporte.Rows) { if (!String.IsNullOrEmpty(Registro["tarifa_Id"].ToString())) { Registro.BeginEdit(); Db_Total = 0; for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { Str_Nombre_Mes = ""; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario Dc_Total = (from ord in Dt_Consulta.AsEnumerable() where ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For && ord.Field <Int32>("anio") == Rs_Consulta.P_Anio select ord.Field <Decimal>("Consumo") ).Sum(); Registro[Str_Nombre_Mes] = Convert.ToDouble(Dc_Total); Db_Total = Db_Total + Convert.ToDouble(Dc_Total); } Registro["Total"] = Db_Total; Db_Total = 0; Registro.EndEdit(); Registro.AcceptChanges(); } } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Volumen de agua distribuido en pipas******************************************************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = "X"; Dr_Nuevo_Elemento["Id"] = "PIPA"; Dr_Nuevo_Elemento["Concepto"] = "Volumen de agua distribuido en pipas"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); Dt_Consulta.Clear(); //Dt_Consulta = Rs_Consulta.Consultar_Volumenes_Pipa(); foreach (DataRow Registro in Dt_Reporte.Rows) { if (Registro["tarifa_id"] == "X") { Registro.BeginEdit(); Db_Total = 0; Registro[Str_Nombre_Mes] = Convert.ToDouble(Dc_Total); Db_Total = Db_Total + Convert.ToDouble(Dc_Total); // se recorreran los meses del año que se busca for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { Str_Nombre_Mes = ""; Dc_Total = 0; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario Dc_Total = (from ord in Dt_Consulta.AsEnumerable() where ord.Field <Int32>("mes") == Cont_For select ord.Field <Decimal>("M3") ).Sum(); Db_Total = Db_Total + Convert.ToDouble(Dc_Total); Registro[Str_Nombre_Mes] = Dc_Total; } Registro["Total"] = Db_Total; Registro.EndEdit(); Registro.AcceptChanges(); } } // se borraran las tarifas id, ya que comenzara con el tercer proceso foreach (DataRow Registro_Reporte in Dt_Reporte.Rows) { Registro_Reporte.BeginEdit(); Registro_Reporte["Tarifa_Id"] = ""; Registro_Reporte.EndEdit(); Registro_Reporte.AcceptChanges(); } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Volumen de agua distribuido en bebedero 1******************************************************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = "X"; Dr_Nuevo_Elemento["Id"] = "BEB1"; Dr_Nuevo_Elemento["Concepto"] = "Volumen de agua distribuido en bebedero 1"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = "X"; Dr_Nuevo_Elemento["Id"] = "BEB2"; Dr_Nuevo_Elemento["Concepto"] = "Volumen de agua distribuido en bebedero 2"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = "X"; Dr_Nuevo_Elemento["Id"] = "BEB3"; Dr_Nuevo_Elemento["Concepto"] = "Volumen de agua distribuido en bebedero 3"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // llenan los espacios vacion con cero 0******************************************************************************************************************** foreach (DataRow Registro_Reporte in Dt_Reporte.Rows) { Registro_Reporte.BeginEdit(); Registro_Reporte["Tarifa_Id"] = ""; for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { Str_Nombre_Mes = ""; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario if (String.IsNullOrEmpty(Registro_Reporte[Str_Nombre_Mes].ToString())) { Registro_Reporte[Str_Nombre_Mes] = 0; } } if (String.IsNullOrEmpty(Registro_Reporte["Total"].ToString())) { Registro_Reporte["Total"] = 0; } Registro_Reporte.EndEdit(); Registro_Reporte.AcceptChanges(); } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // se ingresara la informacion // se realizara la insercion de la informacion foreach (DataRow Registro in Dt_Reporte.Rows) { Dt_Existencia.Clear(); Str_Nombre_Mes = ""; Str_Nombre_Mes = Dic_Meses[DateTime.Now.Month]; Rs_Consulta.P_Str_Nombre_Mes = Str_Nombre_Mes; Rs_Consulta.P_Giro_Id = Registro["id"].ToString(); Rs_Consulta.P_Anio = DateTime.Now.Year; Rs_Consulta.P_Dr_Registro = Registro; Rs_Consulta.P_Str_Usuario = "Servicio"; if (!String.IsNullOrEmpty(Registro["Accion"].ToString())) { Rs_Consulta.P_Str_Accion = Registro["Accion"].ToString(); } else { Rs_Consulta.P_Str_Accion = ""; } Dt_Existencia = Rs_Consulta.Consultar_Si_Existe_Registro_Volumen(); // validacion de la consulta if (Dt_Existencia != null && Dt_Existencia.Rows.Count > 0) { // actualizacion Rs_Consulta.P_Id = Dt_Existencia.Rows[0]["ID"].ToString(); Rs_Consulta.Actualizar_Registro_Volumenes(); }// fin del if else { // insercion Rs_Consulta.Insertar_Registro_Volumenes(); } // fin el else } // fin foreach } catch (Exception Ex) { MessageBox.Show("Eror: " + Ex.Message, "Mensaje", MessageBoxButtons.OK); } }// fin
//******************************************************************************* //NOMBRE DE LA FUNCIÓN:Consultar_Informacion //DESCRIPCIÓN: Metodo que permite llenar el Grid con la informacion de la consulta //PARAMETROS: //CREO : Hugo Enrique Ramírez Aguilera //FECHA_CREO : 07/Abril/2016 //MODIFICO: //FECHA_MODIFICO: //CAUSA_MODIFICACIÓN: //******************************************************************************* public void Consultar_Informacion() { Cls_Cat_Cor_Parametros_Negocio Rs_Parametros = new Cls_Cat_Cor_Parametros_Negocio(); Cls_Rpt_Plan_Montos_Negocio Rs_Consulta = new Cls_Rpt_Plan_Montos_Negocio(); DataTable Dt_Consulta_Facturacion_Estimado_No = new DataTable(); DataTable Dt_Consulta_Facturacion_Estimado_Si = new DataTable(); DataTable Dt_Consulta_Pagos = new DataTable(); DataTable Dt_Tarifas = new DataTable(); DataTable Dt_Reporte = new DataTable(); DataTable Dt_Reporte_Pagos = new DataTable(); DataTable Dt_Auxiliar = new DataTable(); DataTable Dt_Resumen = new DataTable(); DataTable Dt_Parametros = new DataTable(); DataRow Dr_Nuevo_Elemento; Int32 Int_Mes = 0; String Str_Nombre_Mes = ""; Dictionary <Int32, String> Dic_Meses; int Cont_Encabezao = 0; Double Db_Total = 0; Double Db_Total_Concepto = 0; String Str_Concepto_Agua_Id = ""; String Str_Concepto_Agua_Comercial_Id = ""; String Str_Concepto_Drenaje_Id = ""; String Str_Concepto_Saneamiento_Id = ""; Decimal Dc_Total_Facturado_Estimado_No = 0; Decimal Dc_Total_Facturado_Estimado_Si = 0; Decimal Dc_Total_Pagado = 0; DataTable Dt_Existencia = new DataTable(); try { // se consultan los parametros Dt_Parametros = Rs_Parametros.Consulta_Parametros(); // se obtienen los id de los parametros foreach (DataRow Registro in Dt_Parametros.Rows) { Str_Concepto_Agua_Id = Registro["CONCEPTO_AGUA"].ToString(); Str_Concepto_Agua_Comercial_Id = Registro["Concepto_Agua_Comercial"].ToString(); Str_Concepto_Drenaje_Id = Registro["CONCEPTO_DRENAJE"].ToString(); Str_Concepto_Saneamiento_Id = Registro["CONCEPTO_SANAMIENTO"].ToString(); } // se consultan los valeres a reportar Dic_Meses = Cls_Metodos_Generales.Crear_Diccionario_Meses(); Rs_Consulta.P_Anio = DateTime.Now.Year; Rs_Consulta.P_Mes = DateTime.Now.Month; Dt_Tarifas = Rs_Consulta.Consultar_Tarifas_Giro(); Dt_Reporte = Crear_Tabla_Reporte(); Dt_Reporte_Pagos = Crear_Tabla_Reporte(); Dt_Consulta_Facturacion_Estimado_No = Rs_Consulta.Consultar_Facturacion_Planeacion(); Dt_Consulta_Facturacion_Estimado_Si = Rs_Consulta.Consultar_Facturacion_Planeacion_Estimado_Si(); Dt_Consulta_Pagos = Rs_Consulta.Consultar_Pagos_A_Facturacion_Planeacion(); //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Se ingresan los encabezados para la facturacion foreach (DataRow Registro in Dt_Tarifas.Rows) { Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "0"; Dr_Nuevo_Elemento["Concepto"] = "Monto facturado por el servicio de agua de las tomas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); //******************************************************************************** //******************************************************************************** //******************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "1"; Dr_Nuevo_Elemento["Concepto"] = "Monto facturado por el servicio de drenaje de las descargas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); //******************************************************************************** //******************************************************************************** //******************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "2"; Dr_Nuevo_Elemento["Concepto"] = "Monto facturado por el servicio de tratemiento de las descargas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte.Rows.Add(Dr_Nuevo_Elemento); } int cont_x = 0; //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Facturacion******************************************************************************************************************** foreach (DataRow Registro in Dt_Reporte.Rows) { Registro.BeginEdit(); Db_Total = 0; for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { //Dt_Auxiliar = Dt_Consulta_Facturacion.Copy(); //Dt_Auxiliar.DefaultView.RowFilter = "giro_id = '" + Registro["tarifa_id"].ToString() + "' and bimestre = '" + Cont_For.ToString() + "'"; //Dt_Auxiliar = Dt_Auxiliar.DefaultView.ToTable(); Str_Nombre_Mes = ""; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario Db_Total_Concepto = 0; //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> if (Registro["Accion"].ToString() == "0")// Agua ó Agua_comercial { //foreach (DataColumn Columna in Dt_Consulta_Facturacion_Estimado_Si.Columns) //{ // Type Tipo_Dato = Columna.DataType; //} // 1 ******************************************************************************** Dc_Total_Facturado_Estimado_No = (from ord in Dt_Consulta_Facturacion_Estimado_No.AsEnumerable() where (ord.Field <String>("Concepto_id") == Str_Concepto_Agua_Id || ord.Field <String>("Concepto_id") == Str_Concepto_Agua_Comercial_Id) && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For select ord.Field <Decimal>("Total_Facturado")) .Sum(); cont_x++; //if (cont_x == 28) //{ // String X = ""; //} // 1 ******************************************************************************** Dc_Total_Facturado_Estimado_Si = (from ord in Dt_Consulta_Facturacion_Estimado_Si.AsEnumerable() where (ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For) select ord.Field <Decimal>("Agua")) .Sum(); } //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> else if (Registro["Accion"].ToString() == "1")// DRENAJE { // 2 ******************************************************************************** Dc_Total_Facturado_Estimado_No = (from ord in Dt_Consulta_Facturacion_Estimado_No.AsEnumerable() where ord.Field <String>("Concepto_id") == Str_Concepto_Drenaje_Id && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For select ord.Field <Decimal>("Total_Facturado")) .Sum(); // 2 ******************************************************************************** Dc_Total_Facturado_Estimado_Si = (from ord in Dt_Consulta_Facturacion_Estimado_Si.AsEnumerable() where (ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For) select ord.Field <Decimal>("drenaje")) .Sum(); } //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> else if (Registro["Accion"].ToString() == "2")// SANEAMIENTO { // 3 ******************************************************************************** Dc_Total_Facturado_Estimado_No = (from ord in Dt_Consulta_Facturacion_Estimado_No.AsEnumerable() where ord.Field <String>("Concepto_id") == Str_Concepto_Saneamiento_Id && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For select ord.Field <Decimal>("Total_Facturado")) .Sum(); // 3 ******************************************************************************** Dc_Total_Facturado_Estimado_Si = (from ord in Dt_Consulta_Facturacion_Estimado_Si.AsEnumerable() where (ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("bimestre") == Cont_For) select ord.Field <Decimal>("saneamiento")) .Sum(); } //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> // se agrega el concepto al mes correspondiente Registro[Str_Nombre_Mes] = Dc_Total_Facturado_Estimado_No + Dc_Total_Facturado_Estimado_Si; Db_Total = Db_Total + Convert.ToDouble(Dc_Total_Facturado_Estimado_No) + Convert.ToDouble(Dc_Total_Facturado_Estimado_Si); } Registro["Total"] = Db_Total; Db_Total = 0; Registro.EndEdit(); Registro.AcceptChanges(); } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // Se ingresan los encabezados para los pagos foreach (DataRow Registro in Dt_Tarifas.Rows) { Dr_Nuevo_Elemento = Dt_Reporte_Pagos.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "0"; Dr_Nuevo_Elemento["Concepto"] = "Monto ingresados por el servicio de agua de las tomas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte_Pagos.Rows.Add(Dr_Nuevo_Elemento); //******************************************************************************** //******************************************************************************** //******************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte_Pagos.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "1"; Dr_Nuevo_Elemento["Concepto"] = "Monto ingresados por el servicio de drenaje de las descargas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte_Pagos.Rows.Add(Dr_Nuevo_Elemento); //******************************************************************************** //******************************************************************************** //******************************************************************************** Dr_Nuevo_Elemento = Dt_Reporte_Pagos.NewRow(); Dr_Nuevo_Elemento["tarifa_Id"] = Registro["giro_id"].ToString(); Dr_Nuevo_Elemento["Accion"] = "2"; Dr_Nuevo_Elemento["Concepto"] = "Monto ingresados por el servicio de tratemiento de las descargas " + Registro["Nombre_Giro"].ToString() + " (" + Registro["Clave"].ToString() + ")"; Dt_Reporte_Pagos.Rows.Add(Dr_Nuevo_Elemento); } //******************************************************************************************************************** //******************************************************************************************************************** //******************************************************************************************************************** // pagos******************************************************************************************************************** foreach (DataRow Registro in Dt_Reporte_Pagos.Rows) { Registro.BeginEdit(); Db_Total = 0; for (int Cont_For = 1; Cont_For <= 12; Cont_For++) { //if (Cont_For == 5) //{ // string x = ""; //} Dt_Auxiliar = Dt_Consulta_Pagos.Copy(); Dt_Auxiliar.DefaultView.RowFilter = "giro_id = '" + Registro["tarifa_id"].ToString() + "' and mes = '" + Cont_For.ToString() + "'"; Dt_Auxiliar = Dt_Auxiliar.DefaultView.ToTable(); Str_Nombre_Mes = ""; if (Dic_Meses.ContainsKey(Cont_For) == true) { Str_Nombre_Mes = Dic_Meses[Cont_For]; }// fin de la validacion del diccionario Dc_Total_Pagado = 0; if (Registro["Accion"].ToString() == "0")// Agua ó Agua_comercial { //foreach (DataColumn Columna in Dt_Consulta_Pagos.Columns) //{ // Type Tipo_Dato = Columna.DataType; //} // 1 ******************************************************************************** Dc_Total_Pagado = (from ord in Dt_Consulta_Pagos.AsEnumerable() where (ord.Field <String>("Concepto_id") == Str_Concepto_Agua_Id || ord.Field <String>("Concepto_id") == Str_Concepto_Agua_Comercial_Id) && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("Mes") == Cont_For select ord.Field <Decimal>("Pagado")) .Sum(); } else if (Registro["Accion"].ToString() == "1")// DRENAJE { // 2 ******************************************************************************** Dc_Total_Pagado = (from ord in Dt_Consulta_Pagos.AsEnumerable() where ord.Field <String>("Concepto_id") == Str_Concepto_Drenaje_Id && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("Mes") == Cont_For select ord.Field <Decimal>("Pagado")) .Sum(); } else if (Registro["Accion"].ToString() == "2")// SANEAMIENTO { // 3 ******************************************************************************** Dc_Total_Pagado = (from ord in Dt_Consulta_Pagos.AsEnumerable() where ord.Field <String>("Concepto_id") == Str_Concepto_Saneamiento_Id && ord.Field <String>("giro_id") == Registro["tarifa_id"].ToString() && ord.Field <Int32>("Mes") == Cont_For select ord.Field <Decimal>("Pagado")) .Sum(); } // se agrega el concepto al mes correspondiente Registro[Str_Nombre_Mes] = Dc_Total_Pagado; Db_Total = Db_Total + Convert.ToDouble(Dc_Total_Pagado); } Registro["Total"] = Db_Total; Db_Total = 0; Registro.EndEdit(); Registro.AcceptChanges(); } Rs_Consulta.P_Str_Usuario = "Servicio"; // se realizara la insercion de la informacion foreach (DataRow Registro in Dt_Reporte.Rows) { Dt_Existencia.Clear(); Str_Nombre_Mes = ""; Str_Nombre_Mes = Dic_Meses[DateTime.Now.Month]; Rs_Consulta.P_Str_Nombre_Mes = Str_Nombre_Mes; Rs_Consulta.P_Int_Servicio = Convert.ToInt32(Registro["Accion"].ToString()); Rs_Consulta.P_Giro_Id = Registro["tarifa_id"].ToString(); Rs_Consulta.P_Anio = DateTime.Now.Year; Rs_Consulta.P_Mes_Insercion = DateTime.Now.Month; Rs_Consulta.P_Dr_Registro = Registro; Dt_Existencia = Rs_Consulta.Consultar_Si_Existe_Registro_Facturacion(); // validacion de la consulta if (Dt_Existencia != null && Dt_Existencia.Rows.Count > 0) { // actualizacion Rs_Consulta.P_Id = Dt_Existencia.Rows[0]["ID"].ToString(); Rs_Consulta.Actualizar_Registro_Facturacion(); }// fin del if else { // insercion Rs_Consulta.Insertar_Registro_Facturacion(); } // fin el else } // fin foreach // se realizara la insercion de la informacion foreach (DataRow Registro in Dt_Reporte_Pagos.Rows) { Dt_Existencia.Clear(); Str_Nombre_Mes = ""; Str_Nombre_Mes = Dic_Meses[DateTime.Now.Month]; Rs_Consulta.P_Str_Nombre_Mes = Str_Nombre_Mes; Rs_Consulta.P_Int_Servicio = Convert.ToInt32(Registro["Accion"].ToString()); Rs_Consulta.P_Giro_Id = Registro["tarifa_id"].ToString(); Rs_Consulta.P_Anio = Convert.ToInt32(DateTime.Now.Year); Rs_Consulta.P_Mes_Insercion = DateTime.Now.Month; Rs_Consulta.P_Dr_Registro = Registro; Dt_Existencia = Rs_Consulta.Consultar_Si_Existe_Registro_Pago(); // validacion de la consulta if (Dt_Existencia != null && Dt_Existencia.Rows.Count > 0) { // actualizacion Rs_Consulta.P_Id = Dt_Existencia.Rows[0]["ID"].ToString(); Rs_Consulta.Actualizar_Registro_Pago(); }// fin del if else { // insercion Rs_Consulta.Insertar_Registro_Pago(); } // fin el else } // fin foreach MessageBox.Show("Proceso exitoso", "Aviso"); } catch (Exception Ex) { //Mostrar_Informacion(1, "Error: (Consultar_Notificaciones)" + Ex.ToString()); MessageBox.Show("Error: (Consultar_Notificaciones)" + Ex.ToString(), "Aviso"); } }
private void botonActualizar_Click(object sender, System.EventArgs e) { DataSet Ejecucion = EjecucionObrasBD.EjecucionObras("2005", Fecha.Text); DataColumn Columna; Columna = new DataColumn(); Columna.DataType = Ejecucion.Tables[0].Columns["Asignado"].DataType; Columna.ColumnName = "Acordado"; Columna.AutoIncrement = false; Columna.Caption = "Acordado"; Ejecucion.Tables[0].Columns.Add(Columna); Columna = new DataColumn(); Columna.DataType = Ejecucion.Tables[0].Columns["Asignado"].DataType; Columna.ColumnName = "Disponible"; Columna.AutoIncrement = false; Columna.Caption = "Disponible"; Ejecucion.Tables[0].Columns.Add(Columna); Columna = new DataColumn(); Columna.DataType = Ejecucion.Tables[0].Columns["Asignado"].DataType; Columna.ColumnName = "Deuda"; Columna.AutoIncrement = false; Columna.Caption = "Deuda"; Ejecucion.Tables[0].Columns.Add(Columna); string Partida = Ejecucion.Tables[0].Rows[0]["Nro_Det"].ToString(); foreach (DataRow Registro in Ejecucion.Tables[0].Rows) { Registro.BeginEdit(); string Modificado = Registro["Modificado"].ToString(); if ((Modificado == null) || (Modificado == "")) { Registro["Modificado"] = 0; } string Reintegro = Registro["Reintegro"].ToString(); if ((Reintegro == null) || (Reintegro == "")) { Registro["Reintegro"] = 0; } string Comprometido = Registro["Comprometido"].ToString(); if ((Comprometido == null) || (Comprometido == "")) { Registro["Comprometido"] = 0; } string Causado = Registro["Causado"].ToString(); if ((Causado == null) || (Causado == "")) { Registro["Causado"] = 0; } string Pagado = Registro["Pagado"].ToString(); if ((Pagado == null) || (Pagado == "")) { Registro["Pagado"] = 0; } Registro["Acordado"] = Convert.ToDouble(Registro["Asignado"]) + Convert.ToDouble(Registro["Modificado"]); Registro["Disponible"] = (Convert.ToDouble(Registro["Asignado"]) + Convert.ToDouble(Registro["Modificado"])) - Convert.ToDouble(Registro["Comprometido"]) + Convert.ToDouble(Registro["Reintegro"]); Registro["Deuda"] = Convert.ToDouble(Registro["Causado"]) - Convert.ToDouble(Registro["Pagado"]); Registro.AcceptChanges(); } Datos.DataSource = Ejecucion; Datos.DataBind(); }