OK, so this is what I went with:-
1. Extended the "Document Attachment" table and page, to add a Boolean field called 'Include'.
2. On clicking the Action, display the extended "Document Attachment" page (via Page.RunModal). This allows the user to multi-select the checkboxes represented by new Boolean field 'Include'.
3. When user clicks the [Close button], filter the table on fields 'No.' and 'Include' and iterate through result actioning each attachment in users selection.
Good plan Huh? However, in step 2, I am so far unable to force a filter before displaying to the user, so they're seeing all attachments. It can be manually filtered using the BC Menus, but I need to be able to programmatically force the filter. See code below. Any help would be greatly appreciated?
local procedure PresentAttachments(InvNum: Code[20])
var
DocAttPage: Page "Document Attachment Details";
lobjAttachedDoc: Record "Document Attachment";
AttachmentRecref: RecordRef;
InvNumFieldRef: FieldRef;
begin
lobjAttachedDoc.SetFilter("No.", InvNum);
DocAttPage.SetSelectionFilter(lobjAttachedDoc);
DocAttPage.RunModal();
end;