Is it Constructs that uses Immagepoint 0 if there is no ImagePoint 1 or something I did wrong ?
Yes, if an image point doesn't exist, then the origin point (0) will be used.
Also, if you want to change Objects animation frame only for an instance which is close to any of the Documents, you need to pick Object instances. When you use "System Evaluate expression", it doesn't pick instances, and it only checks the first instance of Objets and the first instance of Documents.
So the correct usage should be something like this:
Every tick: Objets: Set animation frame to 0
System for each Documents
System Pick Objets by evaluate: distance(Objets.X,Objets.Y,Documents.ImagePointX(1),Documents.ImagePointY(1)) < 100
-> Objets: Set animation frame to 1