Gracias Ernesto por tu respuesta, el aumentar el valor de MAXFILEHANDLES si me ha resuelto el problema, pero creo que en realidad estoy omitiendo algo por ahi en mi codigo.
la situacion es la siguiente: tengo un objeto "producto", y al crear una lista de objetos "producto", cada "producto" esta direccionado a una misma variable global de tipo "DMProducto" hacia una tabla de paradox, segun yo, el "DMProducto" abre la tabla una sola vez en la seccion "initialization" de mi unidad, y la cierro en la seccion "finalization" de la misma, por lo tanto creo que solo una vez es abierta la tabla.
cada que creo un objeto "producto" lo direcciono al mismo "DMProducto", pero al parecer cada que se crea un objeto "Producto" se abre de nuevo la tabla.
espero no haberte enredado, de cualquier manera gracias por tu ayuda, creo que tengo que revisar bien mi codigo.