Foros Club Delphi

Foros Club Delphi (http://www.clubdelphi.com/foros/index.php)
-   Varios (http://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Plan de Cuentas en Treeview (http://www.clubdelphi.com/foros/showthread.php?t=92679)

osmardj 28-12-2017 23:01:19

Plan de Cuentas en Treeview
 
1 Archivos Adjunto(s)
Un saludo a todos

Quiero que me ayuden con el treeview quiero realizar un plan de cuentas para un sistema contable como la imagen siguiente
Archivo Adjunto 3639

son 5 niveles

estoy con delphi berlin y BD Access

Casimiro Notevi 28-12-2017 23:42:29

¿Y en qué parte en concreto quieres ayuda?

osmardj 28-12-2017 23:53:35

Cita:

Empezado por Casimiro Notevi (Mensaje 523790)
¿Y en qué parte en concreto quieres ayuda?

muchas gracias por responder

como cargar al treview la verdad no se como

duilioisola 29-12-2017 09:05:14

Código Delphi [-]
procedure RellenaCuentas;
var
  Nodo : TTreeNode;
begin
  // Nodo primer nivel
  Nodo := TreeViewCuentas.Items.Add(nil, 'Cuentas');
  RellenaCuentasNivel(Nodo);
end;

procedure RellenaCuentasNivel(Nodo: TTreeNode; Nivel: integer = 1);
var
  aNodo : TTreeNode;
  Codigo, Cuenta : string;
begin
  /// Recorro cuentas del [Nivel] y las agrego al [Nodo].
  
  // Creo ADOQuery de Cuentas del nivel
  with ADOQuery.Create(nil) do
  begin
    try
      // Filtrar cuentas del nivel
      // SELECT CODIGO, CUENTA FROM CUENTAS WHERE NIVEL = :NIVEL ORDER BY CODIGO

      // Recorro las cuentas
      while not EOF do
      begin
        Codigo := FieldByName['CODIGO'].AsString;
        Cuenta := FieldByName['CUENTA'].AsString];
        aNodo := TreeViewCuentas.Items.AddChild(Nodo, Codigo + ' ' + Cuenta);

        // Llamada recursiva para el siguiente nivel
        RellenaCuentas(aNodo, Nivel + 1);

        Next;
      end;
      Close;
    finally
      Free;
    end;
  end;
end;

osmardj 29-12-2017 18:10:01

hice la prueba en código pero nada me sale error

too many actual parameters

mi tabla tiene

código cuenta nivel
1 activo 1
1.1 activo corriente 2
1.1.1 activo disponible 3
1.1.1.1 caja 4
1.1.1.1.01 caja moneda nacional 5

la inserción de las cuentas solo es hasta el nivel 5 con los que se trabaja para realizar los asientos contables

duilioisola 29-12-2017 18:55:18

"Too many actual parameters" se refiere a que tienes un procedimiento o una función a la que le pasas parámetros de más.

No veo tu código y tampoco dices en qué línea (en que instrucción) te da el error.
No podré ayudarte asi...

El código de ejemplo que publiqué está basado en uno que utilizo para mostrar una estructura de producción de máquinas.
Puede ser que me haya faltado algo (o sobrado).

Tendrás que debugar tu código.

Repeat
  1. Busca la línea en que te da el error.
  2. Lee el mensaje de error. (Too many actual parameters)
  3. Busca la definición del procedimiento/función que da error. (fuentes, help, San Google)
  4. corrige el error. (Quita los parámetros que sobren)
Until NOT HayErrores;

Feliz Año Nuevo y Happy Debugging! :D


La franja horaria es GMT +2. Ahora son las 14:51:39.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi