UH! Si, esa historia es mas complicada, jeje.
Igual desaconsejo que utilices un subfile en la misma transaccion para indicar cuales van a ser las facturas a seleccionar de ese cliente. Evidentemente vas a tener que crear el subfile, pero para PRESENTAR las facturas del cliente que alguien selecciono en otra parte. Pero la seleccion en sí de las mismas no debería hacerse en el SUBFILE, sino en otro WORKPANEL, mas o menos como te dije en el comentario anterior.
No conozco bien tu modelo, pero imagino algo como esto:
CLIENTES FACTURAS
*CliNum *FacNro
CliNom CliNum
CliETC FacETC
*FacNro
FacETC
La idea seria crear un workpanel que muestre las facturas del cliente seleccionado, mostra los campos de interes y agrega una variable al final de la grilla, que se llame &aplicar (esta variable nos diria si la factura es seleccionada y pasada a la transaccion CLIENTES) y en el evento click de esta variable hace algo asi:
if &PreMar = ''
Call(PSelFAC,FacNro,'')
&Premar='X'
else
Call(PSelFAC,FacNro,'')
&Premar=''
endif
refresh
(Hay que usar procedures pues en un WP no se pueden hacer for each)
El procedimiento SELFAC deberia, si &Premar viene con una X, buscar la factura FacNro en FACTURAS y copiarla a la transaccion CLIENTES por medio de NEWs, y si &Premar viene con un '' quiere decir que debiera ir a CLIENTES y borrar esa factura del cliente.
Algo asi, burdamente, es lo que yo hice para resolver un problema similar al tuyo, cuando quise hacer una FACTURA basada en los renglones de un REMITO, seleccionaba los items del remito y de esta manera los iba pasando uno a uno a la factura.
Espero te sirva.
Saludos Pablo desde CBA