Пример #1
0
 //Constructor, se crea la raíz con las ocho cuentas principales en el árbol
 public NodoRaiz(string pNombreEmpresa)
 {
     this.nombreEmpresa = pNombreEmpresa;
     this.activos = new NodoCuenta("1", "Activos", false);
     this.pasivos = new NodoCuenta("2", "Pasivos", false);
     this.patrimonio = new NodoCuenta("3", "Patrimonio", false);
     this.ingresos = new NodoCuenta("4", "Ingresos", false);
     this.costos = new NodoCuenta("5", "Costos", false);
     this.gastos = new NodoCuenta("6", "Gastos", false);
     this.otrosIngresos = new NodoCuenta("7", "Otros Ingresos", false);
     this.otrosGastos = new NodoCuenta("8", "Otros Gastos", false);
 }
Пример #2
0
 /*
  * Constructor, crea la cuenta con el código, el nombre y estado de la cuenta como parámetros,
  * lo demás se inicializa por default
  */
 public NodoCuenta(string pCodigo, string pNombre, bool pEstadoCuenta)
 {
     this.codigo = pCodigo;
     this.nombre = pNombre;
     this.cuentaActiva = pEstadoCuenta;
     this.moneda = "USD";
     this.saldoEnLocal = 0;
     this.saldoEnSistema = 0;
     this.listaCuentasHijas = null;
     this.sigCuenta = null;
     this.antCuenta = null;
     this.cuentaPadre = null;
 }
Пример #3
0
        //procedimiento para insertar una nueva cuenta en el arbolCuentas
        public void insertarNuevaCuenta(Cuenta pCuenta)
        {
            //busca la cuenta padre
            NodoCuenta cuentaPadre = buscarCuenta(pCuenta.CodigoCuentaPadre);
            //crea la instancia de la nueva cuenta
            NodoCuenta nuevaCuenta = new NodoCuenta(pCuenta.Codigo, pCuenta.Nombre, true);
            nuevaCuenta.moneda = pCuenta._Moneda.Nombre;
            nuevaCuenta.cuentaPadre = cuentaPadre;
            //la cuenta padre para a estar desactivada para movimientos
            cuentaPadre.cuentaActiva = false;

            //si la cuentaPadre no posee hijos
            if (cuentaPadre.listaCuentasHijas == null)
                //se le asigna el primer hijo
                cuentaPadre.listaCuentasHijas = nuevaCuenta;
            else
            {
                //se inserta la cuenta nueva cuenta en la lista simple de cuentas hijas
                cuentaPadre.listaCuentasHijas.antCuenta = nuevaCuenta;
                nuevaCuenta.sigCuenta = cuentaPadre.listaCuentasHijas;
                cuentaPadre.listaCuentasHijas = nuevaCuenta;
            }
        }