Solo si tu plan de cuentas esta agrupada de a dos cifras es decir con 12 digitos 1.01.01.01.001 te doy otra idea: cambia el orden de tus cuentas cuando la recorras es decir empieza por el final
101030101002 CLIENTE 2
101030101001 CLIENTE 1
101030101 ** CLIENTES SECCION REPUESTOS **
1010301 ** CLIENTES CASA CENTRAL **
10103 ** CREDITOS **
10102 ** INVERSIONES TEMPORARIAS **
1010104 ** OTROS VALORES **
101010301001 BANCO XXX CTA 00
101010301 ** BANCOS CASA CENTRAL **
1010103 ** BANCOS **
101010101003 CAJA MONEDAS EXTRANJERAS
101010101002 RECAUDACIONES A DEPOSITAR
101010101001 CAJA MONEDA NACIONAL
101010101 ** CAJAS CASA CENTRAL **
1010101 ** CAJAS **
10101 ** DISPONIBILIDADES **
101 ** ACTIVO CORRIENTE **
1 ** ACTIVO **
** Las cuentas que empiezan por asterisco, son de solo titulo, no imputable, cta integradora y no se que otros nombres se le da.
Con dos bucles anidados podrias sumar los importes de las cuentas hijas
DO WHILE !EOF()
_cuenta=CUENTA &&cuenta en la que comienza
_level =LEN(ALLTRIM(CUENTA))
* suma todas las cuentas que tengan el mismo nivel
DO WHILE !EOF() AND LEN(ALLTRIM(CUENTA))==_level
...
SKIP +1
ENDDO
grabas el monto en la cuenta titular y pasas al siguiente segmento de cuenta
ENDDO
etc.
Ten en cuenta este q tipo de situaciones te puede dar un error o sea que no exista una cuenta integradora para un grupo de cuentas (falta la integradora 101010301 ** BANCOS CASA CENTRAL **), este caso debes tratar de mostrar un error o algo asi.
101010301001 BANCO XXX CTA 00
1010103 ** BANCOS **
Ojala superes el problema!!