Exemplo n.º 1
0
        private void CbxSeleccionServicio_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (CbxSeleccionServicio.SelectedItem.Equals("Servicio"))
            {
                var servicios = new FrmServicios(perfil)
                {
                    BtnAgregar = { Visible = true }, BtnGuardar = { Visible = false }, BtnModificar = { Visible = false }, BtnCancelarSer = { Visible = true }
                };                                                                                                                                                                                      //oculto y hago visibles los botones que necesito
                servicios.ShowDialog();
                try
                {
                    if (servicios.TablaSeleccionada.Rows.Count != 0)
                    {
                        // para que me acomode los datos que vienen de la otra tabla
                        foreach (DataRow Dato in servicios.TablaSeleccionada.Rows)
                        {
                            var dr = DTDatos.NewRow();
                            dr["Codigo"]     = Dato["Codigo"].ToString();
                            dr["Nombre"]     = Dato["Nombre"].ToString();
                            dr["VrUnitario"] = Dato["VrUnitario"].ToString();
                            dr["Cantidad"]   = Dato["Cantidad"].ToString();
                            dr["Subtotal"]   = Dato["Subtotal"].ToString();
                            this.DTDatos.Rows.Add(dr);
                            GridViewRemision.DataSource = DTDatos;
                            GridViewRemision.ClearSelection();
                            int indiceUltimaFila = GridViewRemision.Rows.Count - 1;
                            GridViewRemision.Rows[indiceUltimaFila].Selected = true;
                            GridViewRemision.Refresh();


                            foreach (DataGridViewRow dts in GridViewRemision.Rows)
                            {
                                var  Codigo = dts.Cells[0].Value;
                                bool exist  = GridViewRemision.Rows.Cast <DataGridViewRow>().Any(row => Convert.ToString(Codigo) == dr["Codigo"].ToString());

                                if (exist)
                                {
                                    if (dts.Index == indiceUltimaFila)
                                    {
                                    }
                                    else
                                    {
                                        GridViewRemision.Rows.RemoveAt(indiceUltimaFila);   //eliminar la última fila
                                        MessageBox.Show("El Servicio ya existe", "SmartPrint", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                        break;
                                    }
                                }
                                else
                                {
                                }
                            }
                            InhabilitarGriv();                                //Metodo para que no me permita editar, ni borrar datos del griv.
                            GridViewRemision.AllowUserToOrderColumns = false; //Esto para que no me permita mover las columnas
                            Calcular();
                        }
                    }
                }
                catch (Exception)
                {
                    _objUtilidades.Mensajes("Error", "No Selecciono un Servicio ");
                }
            }
            else
            {
                var otrosServicios = new FrmOtrosServicios(perfil)
                {
                    BtnAgregar = { Visible = true }, BtnGuardar = { Visible = false }, BtnModificar = { Visible = false }, BtnCancelarSer = { Visible = true }
                };
                otrosServicios.ShowDialog();

                if (otrosServicios.TablaSeleccionada.Rows.Count != 0)
                {
                    foreach (DataRow Dato in otrosServicios.TablaSeleccionada.Rows)
                    {
                        var dr = DTDatos.NewRow();
                        dr["Codigo"]     = Dato["Codigo"].ToString();
                        dr["Nombre"]     = Dato["Nombre"].ToString();
                        dr["VrUnitario"] = Dato["VrUnitario"].ToString();
                        dr["Cantidad"]   = Dato["Cantidad"].ToString();
                        dr["Subtotal"]   = Dato["Subtotal"].ToString();
                        this.DTDatos.Rows.Add(dr);
                        GridViewRemision.DataSource = DTDatos;
                        GridViewRemision.ClearSelection();
                        int indiceUltimaFila = GridViewRemision.Rows.Count - 1;
                        GridViewRemision.Rows[indiceUltimaFila].Selected = true;
                        foreach (DataGridViewRow dts in GridViewRemision.Rows)
                        {
                            var  Codigo = dts.Cells[0].Value;
                            bool exist  = GridViewRemision.Rows.Cast <DataGridViewRow>().Any(row => Convert.ToString(Codigo) == dr["Codigo"].ToString());

                            if (exist)
                            {
                                if (dts.Index == indiceUltimaFila)
                                {
                                }
                                else
                                {
                                    GridViewRemision.Rows.RemoveAt(indiceUltimaFila);   //Para eliminar la fila
                                    MessageBox.Show("El Servicio ya existe", "SmartPrint", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    break;
                                }
                            }
                            else
                            {
                            }
                        }
                    }

                    InhabilitarGriv();                                //Metodo para que no me permita editar, ni borrar datos del griv.
                    GridViewRemision.AllowUserToOrderColumns = false; //Esto para que no me permita mover las columnas
                    Calcular();
                }
            }
        }
Exemplo n.º 2
0
        //Boton otros servicio
        private void BtnOtros_Click(object sender, EventArgs e)
        {
            FrmOtrosServicios FrmInicio = new FrmOtrosServicios(perfil);

            FrmInicio.ShowDialog();
        }