возможно проблема в
X++:
reqTransBuf.data(_reqTrans);
В этом случае возможно перезаписывается RecId в курсоре, что убивает его связку с выбранным для записи курсором ?!
edit: Т.е. common.data перезаписывает все поля рекорды, попробуйте не использовать метод .data(), а проинициализировать только нужные поля