Update...
Manual payments are running fine - just EFT payments.

So I got some time on this and looked at the scripts and the error seems to be around GenerateNextEFTNumber
The Next EFT payment number field for that chequebook was empty, but that seemed reasonable as it was selected to use chequebook numbers instead. However I put a number into that field and set it to "Use EFT Numbers". This then allowed me to "Print Checks" and as you can see from screen shot it has advanced the number.
I now wonder if I turn it back to "Use Cheque Numbers", will it behave as expected? - next experiment.
However in the meantime I've got a way to pay suppliers via EFT, but using its own numbers. The checque numbers are not used by anyone afaik, so this may be a solution.
Also gonna run check links and reconcile payables tonight and see if that raises anything...
For information, follows is the Script log when trying to "Print Checks" follows...
'GenerateNextEFTNumber of form PM_Print_Computer_Checks', table 'CM_Checkbook_MSTR', "0000000000000001012343295", 0
'PM_Number_Inc_Dec', "", 1
... lots of stuff then...
'[481] on form [-46]', script '[22095]', 0, 0
'SaveCurrentFormTrigger', 2567, 0, "SY_Error_Message"
'IsWebClient()', 0
'ProductNameSubstitution()', "", "A unique document number could not be found. Please check setup."
'SY_Error_Message WIN PRE on form SY_Error_Message'
'SuppressException', 0, 0, 2, 0, 240, 1, -9, 2, 2504, 7, ""
'IsServiceMode()', 0
'PM_Unmark_Checks of form PM_Print_Computer_Checks', "4901", "XPM_Cchecks", "0000000000001636234322", 0
'Warning_Dialog', 7, "", "", "", 0, ""
'IsServiceMode()', 0
'ProductNameSubstitution()', "", "An error occurred. Contact your system administrator to verify data."
'PM_Print_Computer_Checks l_Dummy Print ResetCheckNum_CHG on form PM_Print_Computer_Checks'
'ResetNextEFTNumber of form PM_Print_Computer_Checks', "Bankdedacted", "0000000000000001012343295", 1
'PM_Number_Inc_Dec', "0000000000000001redacted", 1