/// Nombre: Actualizar_Contador_Accesos_Estacionamiento /// /// Descripción: Método que actualiza el contador de accesos de carros y camionetas /// al estacionamiento. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 20 Noviembre 2013. /// Usuario Modifico: /// Fecha Modifico: /// </summary> private void Actualizar_Contador_Accesos_Estacionamiento() { Cls_Ope_Estacionamiento_Negocio Obj_Estacionamiento = new Cls_Ope_Estacionamiento_Negocio();//Variable de negocios que nos sirve para realizar peticiones al aclase de datos. DataTable Dt_Servicios = null; DataTable Dt_Accesos = null; try { Dt_Servicios = Obj_Estacionamiento.Consultar_Servicios_Estacionamiento(); // validar que la tabla contenga valores if (Dt_Servicios != null && Dt_Servicios.Rows.Count > 0) { var Clave_Camioneta = Dt_Servicios.AsEnumerable() .OrderByDescending(valor => valor.Field <decimal>(Cat_Productos.Campo_Costo)) .Select(item => new { producto_id = item.Field <string>(Cat_Productos.Campo_Producto_Id) }).First(); var Clave_Carro = Dt_Servicios.AsEnumerable() .OrderBy(valor => valor.Field <decimal>(Cat_Productos.Campo_Costo)) .Select(item => new { producto_id = item.Field <string>(Cat_Productos.Campo_Producto_Id) }).First(); Obj_Estacionamiento.P_Estatus = "PENDIENTE"; Dt_Accesos = Obj_Estacionamiento.Consultar_Estacionamiento(); var cont_carros = Dt_Accesos.AsEnumerable() .Where(carro => carro.Field <string>(Ope_Estacionamiento.Campo_Producto_ID).Equals(Clave_Carro.producto_id)) .Select(carro => carro).Count(); var cont_camionetas = Dt_Accesos.AsEnumerable() .Where(carro => carro.Field <string>(Ope_Estacionamiento.Campo_Producto_ID).Equals(Clave_Camioneta.producto_id)) .Select(carro => carro).Count(); Txt_Carros.Text = cont_carros.ToString(); Txt_Camionetas.Text = cont_camionetas.ToString(); } } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Actualizar_Contador_Accesos_Estacionamiento]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Nombre: Imprimir_Acceso_Estacionamiento /// /// Descripción: Método que comienza el proceso de impresión del ticket del estacionamiento y /// que realiza el alta del registro de acceso al mismo. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 15 Noviembre 2013. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Imprimir_Acceso_Estacionamiento(object sender, EventArgs e) { Cls_Ope_Estacionamiento_Negocio Obj_Estacionamiento = new Cls_Ope_Estacionamiento_Negocio(); //Variable de negocios para realizar peticiones a la capa de datos. DataTable Dt_Estacionamiento = null; //Variable para almacenar el resulatdo de la búsqueda. try { do { //Proceso para obtener el codigo de barras del acceso al estacionamiento. //Si el código generado ya existe, se ignora y se vuelve a generar otro código. Obj_Estacionamiento.P_Codigo = Generar_Cadena_Proteccion(10); Dt_Estacionamiento = Obj_Estacionamiento.Consultar_Estacionamiento(); } while (Dt_Estacionamiento.Rows.Count > 0); //Establecemos algunos datos que se mostraran en el ticket que se enviara a impresión. Datos_Ticket = new Cls_Ope_Estacionamiento_Negocio(); Datos_Ticket.P_Fecha_Hora_Ingreso = DateTime.Now; Datos_Ticket.P_Codigo = Obj_Estacionamiento.P_Codigo; Datos_Ticket.Tipo_Servicio = ((JButton)sender).Text + " por hora o fracción"; //Se realiza la petición al proceso de configuración e impresión del ticket. Imprimir_Ticket(); //Establecemos algunos datos que se almacenaran como registro del acceso al estacionamiento. Obj_Estacionamiento.P_Producto_ID = ((JButton)sender).Tag.ToString(); Obj_Estacionamiento.P_Fecha_Hora_Ingreso = Datos_Ticket.P_Fecha_Hora_Ingreso; Obj_Estacionamiento.P_Estatus = "PENDIENTE"; Obj_Estacionamiento.Alta_Estacionamiento(); this.ActiveControl = Txt_Codigo_Barras; Txt_Codigo_Barras.Focus(); Actualizar_Contador_Accesos_Estacionamiento(); } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Imprimir_Acceso_Estacionamiento]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Nombre: Consultar_Servicios_Estacionamiento /// /// Descripción: Método que realiza la consulta de los servicios de tipo estacionamiento /// y los carga en el panel de servicios. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 15 Noviembre 2013. /// Usuario Modifico: /// Fecha Modifico: /// </summary> private void Consultar_Servicios_Estacionamiento() { Cls_Ope_Estacionamiento_Negocio Obj_Estacionamiento = new Cls_Ope_Estacionamiento_Negocio(); //Variable de negocios para realizar peticiones a la clase de datos. DataTable Dt_Servicios = null; //Variable que almacenara los servicios de tipo estacionamiento. Image Img_Productos = null; //Variable para almacenar la imagen del producto. try { //Realizar la consulta de servicios de tipo estacionamiento. Dt_Servicios = Obj_Estacionamiento.Consultar_Servicios_Estacionamiento(); Array.ForEach(Dt_Servicios.Rows.OfType <DataRow>().ToArray(), fila => { if (!string.IsNullOrEmpty(fila.Field <string>(Cat_Productos.Campo_Ruta_Imagen)) && File.Exists(fila.Field <string>(Cat_Productos.Campo_Ruta_Imagen))) { Img_Productos = Image.FromFile(fila.Field <string>(Cat_Productos.Campo_Ruta_Imagen)); } else { Img_Productos = global::ERP_BASE.Properties.Resources.img_no_disponible; } JButton Btn_Aux = new JButton(Img_Productos, new Size(228, 218), new Size(170, 145), new Point(19, 20), "", true); Btn_Aux.Text = "\n" + fila.Field <string>(Cat_Productos.Campo_Nombre) + " $" + Convert.ToDecimal(fila.Field <decimal>(Cat_Productos.Campo_Costo)).ToString("#,##0.00"); Btn_Aux.TextAlign = ContentAlignment.BottomCenter; Btn_Aux.BackColor = Color.WhiteSmoke; Btn_Aux.Font = new System.Drawing.Font("Consolas", 11, FontStyle.Bold); Btn_Aux.Tag = fila.Field <string>(Cat_Productos.Campo_Producto_Id); Btn_Aux.Click += new EventHandler(this.Imprimir_Acceso_Estacionamiento); Pnl_Servicios_Estacionamiento.Controls.Add(Btn_Aux); }); } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Alta_Registro_Estacionamiento]", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Nombre: Consultar_Servicios_Estacionamiento /// /// Descripción: Método que devuelve los resultados encontrados con los filtros establecidos para realizar la búsqueda. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 13 Noviembre 2013 19:29 Hrs. /// Usuario Modifico: /// Fecha Modifco: /// </summary> /// <returns>Tabla con los registros de estacionamiento</returns> public static DataTable Consultar_Servicios_Estacionamiento(Cls_Ope_Estacionamiento_Negocio Datos) { StringBuilder Mi_SQL = new StringBuilder(); //Variable para almacenar la consulta hacía la base de datos. DataTable Dt_Servicios = null; //Variable de tipo estructura para almacenar los registros encontrados. Boolean Transaccion_Activa = false; //Variable que almacena la variable que mantiene el estatus de la transacción. //Iniciar Transacción Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); //Crear la consulta. Mi_SQL.Append(" select "); Mi_SQL.Append(" servicio.* "); Mi_SQL.Append(" from "); Mi_SQL.Append(Cat_Productos.Tabla_Cat_Productos + " servicio "); Mi_SQL.Append(" where "); Mi_SQL.Append(Cat_Productos.Campo_Tipo + "='Servicio' "); Mi_SQL.Append(" and "); Mi_SQL.Append(Cat_Productos.Campo_Tipo_Servicio + "='ESTACIONAMIENTO' "); if (!string.IsNullOrEmpty(Datos.P_Producto_ID)) { Mi_SQL.Append(" and servicio." + Cat_Productos.Campo_Producto_Id + "='" + Datos.P_Producto_ID + "'"); } Mi_SQL.Append(" order by servicio." + Cat_Productos.Campo_Nombre + " desc "); Dt_Servicios = Conexion.HelperGenerico.Obtener_Data_Table(Mi_SQL.ToString()); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al consultar los servicios de estacionamiento, Metodo: [Consultar_Servicios_Estacionamiento]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Dt_Servicios); }
/// <summary> /// Nombre: Alta_Estacionamiento /// /// Descripción: Método que realiza el alta del estacionamiento. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 13 Noviembre 2013 19:06 Hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="Datos">Variable que se utilizara para transportar los datos de la capa de usuario a la de datos</param> /// <returns>Devuelve verdadero si la operacion se termino de forma correcta y falso en caso contrario</returns> public static bool Alta_Estacionamiento(Cls_Ope_Estacionamiento_Negocio Datos) { bool Operacion_Completa = false; //Variable que mantiene el estatus de la operación. StringBuilder Mi_SQL = new StringBuilder(); //Variable para crear el query que se ejecutara en la bd. String Consecutivo = ""; //Variable para almacenar el consecutivo de la tabla de Ope_Estacionamiento Boolean Transaccion_Activa = false; //Variable para mantener el estatus de la transacción. //Abrir la conexión Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); Consecutivo = Cls_Metodos_Generales.Obtener_ID_Consecutivo(Ope_Estacionamiento.Tabla_Ope_Estacionamiento, Ope_Estacionamiento.Campo_No_Estacionamiento, "", 10); //Creamos la consulta Mi_SQL.Append("insert into "); Mi_SQL.Append(Ope_Estacionamiento.Tabla_Ope_Estacionamiento); Mi_SQL.Append(" ("); Mi_SQL.Append(Ope_Estacionamiento.Campo_No_Estacionamiento); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Fecha_Hora_Ingreso); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Fecha_Hora_Salida); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Horas); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Codigo); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Estatus); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Importe); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Producto_ID); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Usuario_Creo); Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Fecha_Creo); Mi_SQL.Append(") values("); Mi_SQL.Append("'" + Consecutivo + "'"); Mi_SQL.Append(", " + ((Datos.P_Fecha_Hora_Ingreso.Year != 1) ? Cls_Ayudante_Sintaxis.Insertar_Fecha_Hora(Datos.P_Fecha_Hora_Ingreso) : " null ")); Mi_SQL.Append(", " + ((Datos.P_Fecha_Hora_Salida.Year != 1) ? Cls_Ayudante_Sintaxis.Insertar_Fecha_Hora(Datos.P_Fecha_Hora_Salida) : " null ")); Mi_SQL.Append(", " + ((Datos.P_Horas > 0) ? Datos.P_Horas.ToString() : " null ")); Mi_SQL.Append(", " + ((!string.IsNullOrEmpty(Datos.P_Codigo)) ? "'" + Datos.P_Codigo + "'" : " null ")); Mi_SQL.Append(", " + ((!string.IsNullOrEmpty(Datos.P_Estatus)) ? "'" + Datos.P_Estatus + "'" : " null ")); Mi_SQL.Append(", " + ((Datos.P_Importe > 0) ? Datos.P_Importe.ToString() : " null ")); Mi_SQL.Append(", " + ((!string.IsNullOrEmpty(Datos.P_Producto_ID)) ? "'" + Datos.P_Producto_ID + "'" : " null ")); Mi_SQL.Append(", '" + MDI_Frm_Apl_Principal.Nombre_Usuario + "'"); Mi_SQL.Append(", " + Cls_Ayudante_Sintaxis.Fecha()); Mi_SQL.Append(")"); Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString()); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } Operacion_Completa = true; } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al realizar al registrar el estacionamiento, Método: [Alta_Estacionamiento]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Operacion_Completa); }
/// <summary> /// Nombre: Cancelar_Estacionamiento /// /// Descripción: Método que realiza la cancelación del registro de estacionamiento. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 13 Noviembre 2013 19:20 Hrs. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="Datos">Variable que se utilizara para transportar los datos de la capa de usuario a la de datos</param> /// <returns>Devuelve verdadero si la operacion se termino de forma correcta y falso en caso contrario</returns> public static bool Cancelar_Estacionamiento(Cls_Ope_Estacionamiento_Negocio Datos) { StringBuilder Mi_SQL = new StringBuilder(); //Variable para crear el query que se ejecutara en la bd. bool Operacion_Completa = false; //Variable que mantiene el estatus de la operación. Boolean Transaccion_Activa = false; //Variable para mantener el estatus de la transacción. //Abrir la conexión Conexion.Iniciar_Helper(); if (!Conexion.HelperGenerico.Estatus_Transaccion()) { Conexion.HelperGenerico.Conexion_y_Apertura(); } else { Transaccion_Activa = true; } try { Conexion.HelperGenerico.Iniciar_Transaccion(); //Creamos la consulta. Mi_SQL.Append("update "); Mi_SQL.Append(Ope_Estacionamiento.Tabla_Ope_Estacionamiento); Mi_SQL.Append(" set "); #region (Datos Actualizar) if (!string.IsNullOrEmpty(Datos.P_Estatus)) { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Estatus + "='" + Datos.P_Estatus + "'"); } else { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Estatus + "= null "); } if (!string.IsNullOrEmpty(MDI_Frm_Apl_Principal.Nombre_Usuario)) { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Usuario_Modifico + "='" + MDI_Frm_Apl_Principal.Nombre_Usuario + "'"); } else { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Usuario_Modifico + "= null "); } if (!string.IsNullOrEmpty(Cls_Ayudante_Sintaxis.Fecha())) { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Fecha_Modifico + "=" + Cls_Ayudante_Sintaxis.Fecha()); } else { Mi_SQL.Append(", " + Ope_Estacionamiento.Campo_Fecha_Modifico + "= null "); } #endregion Mi_SQL.Append(" where "); Mi_SQL.Append(Ope_Estacionamiento.Campo_No_Estacionamiento + "='" + Datos.P_No_Estacionamiento + "'"); Conexion.HelperGenerico.Ejecutar_NonQuery(Mi_SQL.ToString()); if (!Transaccion_Activa) { Conexion.HelperGenerico.Terminar_Transaccion(); } Operacion_Completa = true; } catch (Exception Ex) { Conexion.HelperGenerico.Abortar_Transaccion(); throw new Exception("Error al cancelar el registro de estacionamiento, Método: [Cancelar_Estacionamiento]. Error: [" + Ex.Message + "]"); } finally { if (!Transaccion_Activa) { Conexion.HelperGenerico.Cerrar_Conexion(); } } return(Operacion_Completa); }
/// <summary> /// Nombre: Txt_Codigo_Barras_KeyUp /// /// Descripción: Método que se ejecuta al presionar una tecla en la caja de código de barras. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 15 Noviembre 2013. /// Usuario Modifico: Roberto González Oseguera /// Fecha Modifico: 21-feb-2014 /// Causa modificación: Se cambia <DateTime?> por <MySql.Data.Types.MySqlDateTime?> para recibir /// un campo fecha al utilizar una base de datos MySQL /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Txt_Codigo_Barras_KeyUp(object sender, KeyEventArgs e) { // entrar solamente con la tecla enter if (e.KeyCode == Keys.Return && Txt_Codigo_Barras.Text.Length > 0) { Cls_Ope_Estacionamiento_Negocio Obj_Estacionamiento; DataTable Dt_Datos_Acceso_Estacionamiento = null; DataTable Dt_Datos_Pago = null; string Producto_ID = string.Empty; string No_Estacionamiento = string.Empty; string Estatus = string.Empty; MySql.Data.Types.MySqlDateTime?Fecha_Hora_Ingreso = null; double Horas = 0; try { Obj_Estacionamiento = new Cls_Ope_Estacionamiento_Negocio(); Obj_Estacionamiento.P_Codigo = Txt_Codigo_Barras.Text.Trim(); Dt_Datos_Acceso_Estacionamiento = Obj_Estacionamiento.Consultar_Estacionamiento(); // validar que la consulta haya regresado resultados if (Dt_Datos_Acceso_Estacionamiento != null && Dt_Datos_Acceso_Estacionamiento.Rows.Count > 0) { Array.ForEach(Dt_Datos_Acceso_Estacionamiento.Rows.OfType <DataRow>().ToArray(), fila => { Producto_ID = fila.IsNull(Ope_Estacionamiento.Campo_Producto_ID) ? string.Empty : fila.Field <string>(Ope_Estacionamiento.Campo_Producto_ID); Fecha_Hora_Ingreso = fila.IsNull(Ope_Estacionamiento.Campo_Fecha_Hora_Ingreso) ? null : fila.Field <MySql.Data.Types.MySqlDateTime?>(Ope_Estacionamiento.Campo_Fecha_Hora_Ingreso); No_Estacionamiento = fila.IsNull(Ope_Estacionamiento.Campo_No_Estacionamiento) ? string.Empty : fila.Field <string>(Ope_Estacionamiento.Campo_No_Estacionamiento); Estatus = fila.IsNull(Ope_Estacionamiento.Campo_Estatus) ? string.Empty : fila.Field <string>(Ope_Estacionamiento.Campo_Estatus); }); // si el estatus del acceso es PENDIENTE, entrar al pago if (Estatus.Equals("PENDIENTE")) { // se ocupa .GetDateTime() cuando es un tipo MySqlDateTime Horas = Math.Ceiling(DateTime.Now.Subtract(Fecha_Hora_Ingreso.Value.GetDateTime()).Duration().TotalHours); Obj_Estacionamiento.P_Estatus = "PAGADO"; Obj_Estacionamiento.P_Fecha_Hora_Salida = DateTime.Now; Obj_Estacionamiento.P_Horas = Convert.ToInt32(Horas); Obj_Estacionamiento.P_No_Estacionamiento = No_Estacionamiento; Dt_Datos_Pago = Crear_Datos_Pago(Producto_ID, Convert.ToDecimal(Horas), ref Obj_Estacionamiento); Frm_Ope_Pago Frm_Pago = new Frm_Ope_Pago(); Frm_Pago.P_Obj_Estacionamiento = Obj_Estacionamiento; Frm_Pago.Es_Pago_Estacionamiento = true; Frm_Pago.MdiParent = this.ParentForm; Frm_Pago.Set_Dt_Detalles_Venta(Dt_Datos_Pago); Frm_Pago.Set_Frm_Estacionamiento(this); this.Hide(); Frm_Pago.Show(); } else { Txt_Codigo_Barras.Text = string.Empty; MessageBox.Show(this, "El acceso al estacionamiento tiene un estatus de " + Estatus, "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { Txt_Codigo_Barras.Text = string.Empty; MessageBox.Show(this, "No se encontró el código de acceso ingresado.", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Txt_Codigo_Barras_KeyPress]", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
/// <summary> /// Nombre: Crear_Datos_Pago /// /// Descripción: Método que crea y carga una tabla con los datos para enviar a la pantalla de pagos. /// /// Usuario Creo: Juan Alberto Hernández Negrete. /// Fecha Creo: 19 Noviembre 2013. /// Usuario Modifico: /// Fecha Modifico: /// </summary> /// <param name="Servicio_Estacionamiento_ID"></param> /// <returns></returns> private DataTable Crear_Datos_Pago(string Servicio_Estacionamiento_ID, decimal Horas, ref Cls_Ope_Estacionamiento_Negocio _Obj_Estacionamiento) { Cls_Ope_Estacionamiento_Negocio Obj_Estacionamiento = new Cls_Ope_Estacionamiento_Negocio(); ///Variable de negocios para realizar peticiones a la capa de datos. DataTable Dt_Servicios = null; //Variable para guardar el resultado de la consulta de servicios. DataTable Dt_Pedidos = new DataTable(); //Variable para almacenar los datos del pago. decimal Costo; try { Obj_Estacionamiento.P_Producto_ID = Servicio_Estacionamiento_ID; Dt_Servicios = Obj_Estacionamiento.Consultar_Servicios_Estacionamiento(); Dt_Pedidos.Columns.Add("CANTIDAD", typeof(decimal)); Dt_Pedidos.Columns.Add("PRODUCTO", typeof(String)); Dt_Pedidos.Columns.Add("TOTAL", typeof(decimal)); Dt_Pedidos.Columns.Add("PRODUCTO_ID", typeof(String)); Dt_Pedidos.Columns.Add("COSTO", typeof(decimal)); Dt_Pedidos.Columns.Add("TIPO", typeof(String)); Dt_Pedidos.Columns.Add("IMPRIMIR", typeof(String)); if (Dt_Servicios != null) { if (Dt_Servicios.Rows.Count > 0) { foreach (DataRow fila in Dt_Servicios.Rows) { DataRow Dr_Servicio = Dt_Pedidos.NewRow(); decimal.TryParse(fila[Cat_Productos.Campo_Costo].ToString(), out Costo); Dr_Servicio["CANTIDAD"] = 1; if (!string.IsNullOrEmpty(fila[Cat_Productos.Campo_Nombre].ToString())) { Dr_Servicio["PRODUCTO"] = fila[Cat_Productos.Campo_Nombre].ToString(); } else { Dr_Servicio["PRODUCTO"] = string.Empty; } if (!string.IsNullOrEmpty(fila[Cat_Productos.Campo_Costo].ToString())) { Dr_Servicio["TOTAL"] = Costo * Horas; _Obj_Estacionamiento.P_Importe = Costo * Horas; } else { Dr_Servicio["TOTAL"] = 0; } if (!string.IsNullOrEmpty(fila[Cat_Productos.Campo_Producto_Id].ToString())) { Dr_Servicio["PRODUCTO_ID"] = fila[Cat_Productos.Campo_Producto_Id].ToString(); } else { Dr_Servicio["PRODUCTO_ID"] = string.Empty; } Dr_Servicio["COSTO"] = Costo; if (!string.IsNullOrEmpty(fila[Cat_Productos.Campo_Tipo].ToString())) { Dr_Servicio["TIPO"] = fila[Cat_Productos.Campo_Tipo].ToString(); } else { Dr_Servicio["TIPO"] = string.Empty; } Dr_Servicio["IMPRIMIR"] = string.Empty; Dt_Pedidos.Rows.Add(Dr_Servicio); } } } } catch (Exception Ex) { MessageBox.Show(this, Ex.Message, "Error - Método: [Crear_Datos_Pago]", MessageBoxButtons.OK, MessageBoxIcon.Error); } return(Dt_Pedidos); }