Some comments to your post:
When you don't have a SIM card inserted, you get the "ResultCode not OK" error. In most system files I'm not sure how to reliably detect that the error is caused by a missing SIM card and not by some other problem, so you get the general error message. I'm not happy with that because it hits me so often when I want to make tests with one of my several phones. Maybe I'll try to fix that some day...
The 3 different Qualcomm versions are not easy to explain. They are basically caused by different interfaces in the Qualcomm software (II and III) and by the fact that the initialisation of the Qualcomm library done by the RIL demon sometimes does not allow SIM access (I and II). Even on my small set of phones I had examples where only one of the variants worked, while on others more than one variant succeeded. Start with Mk.III and if this doesn't work continue with Mk.II and finally Mk.I. After all it doesn't (shouldn't) make a difference: SIM access is SIM access. Either it works or it doesn't. Don't expect additional features.
Not all Qualcomm phones are affected by the QMI_ERR_ACCESS_DENIED error. Phones with native rSAP support obviously don't have that problem (e.g. Nexus 5X), other phones have the problem with one firmware version, but don't have it with another (Nexus 6). Sadly still some phones have the problem without a possibility to fix it (e.g. OnePlus 2 and 3).
About the phonebook transfer: This is completely independet from rSAP (well, except the SIM contacts...), so it depends on the combination of phone and car. If the bugs in both sides sum up to cause problems, the phonebook app may help.