private void btnCargar_Click(object sender, RoutedEventArgs e)
        {
            //Obtenemos los datos de Operaciones ingresados por el usuario
            int iIDOper;
            Decimal dMonto;

            try
            {
                iIDOper = (int)txtOperaciones.SelectedValue;
            }
            catch (Exception ex)
            {
                ex.Data.Clear();
                return;
            }

            if (iIDOper == 11 || (iIDOper == 12))
            {
                txtCuentas.Focus();
                return;
            }

            //Validamos los datos ingresados
            if (!Decimal.TryParse(txtMonto.Text,out dMonto)) {
                MessageBox.Show("Por favor ingrese un monto numerico valido","Monto no valido",MessageBoxButton.OK,MessageBoxImage.Error);
                return;
            }

            if (dMonto <= 0)
            {
                MessageBox.Show("Por favor, ingrese un monton arriba de $0", "Monto no valido", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }

            ContaGeneralDS tmpDS = new ContaGeneralDS();
            int iDebe, iHaber,iIVA;
            string sCDebe, sCHaber;

            //Hacemos primero el filtro para obtener los valores del DEBE, HABER y si tiene tratamiento IVA
            iTA.FillByIDO(tmpDS.OPERACIONES,iIDOper);
            iDebe = (int)tmpDS.OPERACIONES.Rows[0]["COD_DEBE"];
            iHaber = (int)tmpDS.OPERACIONES.Rows[0]["COD_HABER"];
            iIVA = (int)tmpDS.OPERACIONES.Rows[0]["IVA"];

            //Ahora determinamos el nombre de las Cuentas del DEBE y HABER
            ccTA.FillByIDC(tmpDS.CATALOGO_CUENTAS, iDebe);
            sCDebe = (string)tmpDS.CATALOGO_CUENTAS[0]["DESCRIPCION"];
            ccTA.FillByIDC(tmpDS.CATALOGO_CUENTAS, iHaber);
            sCHaber = (string)tmpDS.CATALOGO_CUENTAS[0]["DESCRIPCION"];

            //Como ya tenemos todos los datos necesarios cargados, ya podemos agregar a la tabla detalle de
            //transacciones con los campos incluidos
            //Tambien verificamos si la cuenta posse IVA
            decimal dMontoIVA = Math.Round(dMonto*0.13m,2);
            dMonto = Math.Round(dMonto, 2);
            tblDetalle.Clear();
            switch (iIVA)
            {
                case 0: //SIN IVA
                    tblDetalle.Rows.Add(iDebe, sCDebe, dMonto, 0);
                    tblDetalle.Rows.Add(iHaber, sCHaber, 0, dMonto);
                    break;
                case 1: //IVA en el DEBE
                    tblDetalle.Rows.Add(39, "IVA Acreditable", dMontoIVA, 0);
                    tblDetalle.Rows.Add(iDebe, sCDebe, dMonto - dMontoIVA, 0);
                    tblDetalle.Rows.Add(iHaber, sCHaber, 0, dMonto);
                    break;
                case 2: //IVA en el HABER
                    tblDetalle.Rows.Add(iDebe, sCDebe, dMonto, 0);
                    tblDetalle.Rows.Add(38, "IVA por PAGAR", 0, dMontoIVA);
                    tblDetalle.Rows.Add(iHaber, sCHaber, 0, dMonto - dMontoIVA);
                    break;
            }
            tmpDS.Dispose();
            EstablecerTotales();
            txtDescripcion.Focus();
        }