Recording finishes is all about not making mistakes and not trying to do more than is necessary.
Writing down the last two (possibly three) digits of the sail # is almost always enough to uniquely identify the boat. Trying to write down 5 or 6 digit sail numbers leads to mistakes. It is fine to fill in the rest of the number but only when there is a pause in the finishes.
Record in a list the sail # of each boat as it approaches and crosses the line regardless of class and even if they were OCS, missed a mark, or for some other reason you feel the boat will be disqualified. That is an issue to be settled later.
It a boat crosses more than once you probably should write its number down more than once, because it may have touched a finish mark and its the second finish that counts. Again, which is the correct finish can be settled later.
Don't try to make separate lists by class. And never never write down finish positions next to sail numbers -- always sail numbers in a list as they cross.
Sail #s of DNS and DNF boats can be recorded at the beginning or end of the list. It doesn't matter. Just indicate DNS or DNF next to them.
When there are close finishes, the line sighter should say something like inside, outside and the recorder should write that down I then O. Then determine the sail #s of the inside and outside boats.
For important regattas, it is worthwhile to have two people recording finishes and they can compare their results and and resolve discrepancies among each other.