private void BAnadir_Click(object sender, EventArgs e)
        {
            try
            {
                if (fichaAbonado != null)
                {
                    FichaMantenimiento fichaMantenimiento = FichaMantenimiento.create(fichaAbonado.IId, tNumeroParte.Text, tFechaParte.Text, rtComentarios.Text);

                    ArrayList aTestZonas = new ArrayList();

                    for (int i = 0; i < dgZonas.RowCount; i++)
                    {
                        aTestZonas.Add(TestZonas.create(fichaMantenimiento.IId, Convert.ToInt32(dgZonas[3, i].Value), Convert.ToBoolean(dgZonas[4, i].Value),
                                                        Convert.ToBoolean(dgZonas[5, i].Value), Convert.ToBoolean(dgZonas[6, i].Value)));
                    }
                }
                else
                {
                    throw new Exception("Debe seleccionar una ficha de abonado.");
                }
            }catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        public CrearFichaMantenimiento(FichaMantenimiento fichaMantenimiento)
        {
            InitializeComponent();

            dgZonas.ColumnCount        = 4;
            dgZonas.Columns[0].Name    = "Zona";
            dgZonas.Columns[1].Name    = "Area";
            dgZonas.Columns[2].Name    = "Descripcion de zona";
            dgZonas.Columns[3].Name    = "id";
            dgZonas.Columns[3].Visible = false;

            dgZonas.Columns[0].ReadOnly = true;
            dgZonas.Columns[1].ReadOnly = true;
            dgZonas.Columns[2].ReadOnly = true;
            dgZonas.Columns[3].ReadOnly = true;
            dgZonas.Columns[3].ReadOnly = true;

            DataGridViewCheckBoxColumn dgSabotaje  = new DataGridViewCheckBoxColumn();
            DataGridViewCheckBoxColumn dgCobertura = new DataGridViewCheckBoxColumn();
            DataGridViewCheckBoxColumn dgBateria   = new DataGridViewCheckBoxColumn();

            dgZonas.Columns.Add(dgSabotaje);
            dgZonas.Columns[4].Name = "Test de sabotaje";
            dgZonas.Columns.Add(dgCobertura);
            dgZonas.Columns[5].Name = "Test de cobertura";
            dgZonas.Columns.Add(dgBateria);
            dgZonas.Columns[6].Name = "Estado bateria";

            dgZonas.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dgZonas.ForeColor           = Color.Black;

            this.fichaMantenimiento = fichaMantenimiento;
            this.fichaAbonado       = new FichaAbonado(fichaMantenimiento.IIdFichaAbonado);

            tNumeroParte.ReadOnly = true;
            tFechaParte.ReadOnly  = true;

            tNumeroParte.SelectedText = fichaMantenimiento.SNumero;
            tFechaParte.SelectedText  = Data.formatearFecha(fichaMantenimiento.SFecha);

            tNAbonado.ReadOnly           = true;
            tTipoPanel.ReadOnly          = true;
            tEmpresaInstaladora.ReadOnly = true;
            tNombreRazon.ReadOnly        = true;
            tDireccion.ReadOnly          = true;
            tLocalidad.ReadOnly          = true;
            tProvincia.ReadOnly          = true;
            tCOPO.ReadOnly      = true;
            tFechaAlta.ReadOnly = true;
            tEmail.ReadOnly     = true;

            tViaPrincipal.ReadOnly     = true;
            tModeloPrincipal.ReadOnly  = true;
            tFormatoPrincipal.ReadOnly = true;
            tTestPrincipal.ReadOnly    = true;

            tViaSecundaria.ReadOnly     = true;
            tModeloSecundaria.ReadOnly  = true;
            tFormatoSecundaria.ReadOnly = true;
            tTestSecundaria.ReadOnly    = true;

            tCCTVIP.ReadOnly       = true;
            tModeloCctvip.ReadOnly = true;
            tIpCliente.ReadOnly    = true;
            tPuerto.ReadOnly       = true;

            tIMEI.ReadOnly = true;

            ArrayList testZonas = FichaMantenimiento.consultar_zonas(fichaMantenimiento.IId);

            for (int i = 0; i < testZonas.Count; i++)
            {
                TestZonas tzZona = (TestZonas)testZonas[i];
                Zona      z      = new Zona(tzZona.IIdZona);

                if (tzZona != null)
                {
                    String[] row =
                    {
                        z.sZona,
                        z.Area,
                        z.Descripcion,
                        z.IId.ToString(),
                        tzZona.BSabotaje.ToString(),
                        tzZona.BCobertura.ToString(),
                        tzZona.BBateria.ToString()
                    };

                    dgZonas.Rows.Add(row);
                }
            }

            Fill();
        }