getSelectValue is used to retrieve valid values for a given recordRef field where the referenced record type is not yet exposed in the Web services API or when the logged in role does not have permission to the instances of the record type.
GetSelectValue Overview:
-----------------------------------------------------
The following figure shows the UI equivalent of a RecordRef field and a list of select values for this field. You can use getSelectValue to return the entire list of values or just a subset of values.
Running getSelectValue against records that are created from other records may result in an INSUFFICIENT_PERMISSION error. For example, item fulfillment records are created from sales orders, so to avoid this error, you may need to run getSelectValue against the related sales order or item record instead of the item fulfillment itself.
Following java sample code shows how get select values for the Item field that appears on the Item sublist of a Sales Order record.
GetSelectFilterByFieldValueList myFilterByList = new GetSelectFilterByFieldValueList(new
GetSelectFilterByFieldValue[]{new GetSelectFilterByFieldValue(null,"entity","8")});
GetSelectValueFieldDescription myGSVField = new GetSelectValueFieldDescription(RecordType.salesOrder,
null, "itemList", "item", null, null, myFilterByList);
BaseRef[] br = c.getSelectValue(myGSVField);
