I have a query related to the 999 ack file being created when an 820 EDI message gets processed in one of the BizTalk applications in my org.
The generated 999 file does contain a code R for the AK9 segment which means the file has been rejected. However it does not contain the IK3 and IK4 segments which would have given more details about the reasons for the rejection of the file.
Have you experienced this scenario? If yes could you please share your understanding?
BizTalk will definitely not generate IK3 or IK4 segments if there's a terminal error with the file, such as an error in the functional group (GS/GE) or sometimes even an error in the ST/SE pair(s).
The TR3 specifies that IK3 and IK4 should be sent "if the sender knows" what segments/elements were in error. So even if there are no errors at the functional or transaction set enveloping levels, it's possible that the errors are just not trackable properly by the EDI Disassembler and it doesn't report them.
If you'd like to add these in for certain scenarios where your partner expects them (despite what the TR3 says), you'd have to do some custom work to capture the 999 and modify it.