Primero que todo: Creo que estás mal interpretando la instrucción OVERLOAD. Overload no quiere decir que una rutina acepta cualquier tipo de dato. Overload significa que pueden haber un polimorfismo de una rutina.
Segundo: En la declaración de Validate indicas que esperas un dato de tipo TDocumentoNovo. Pero en la implementación indicas que es de IDocument. Sin embargo algo está faltando aquí, pues antes que todo el compilador te debería indicar que hay una diferencia entre la declaración e implementación de la unidad al ser distinto el tipo de dato de **Documento**.
Podrías empezar declarando otra forma de Validate, una que trabaje con IDocument, si es que aún no la tienes.
Saludos,
Chris
|