Note: This release is in preview. Features described here don’t become generally available until the latest general availability date that Salesforce announces for this release. Before then, and where features are noted as beta, pilot, or developer preview, we can’t guarantee general availability within any particular time frame or at all. Make your purchase decisions only on the basis of generally available products and features.
MedicationRequest
The MedicationRequest FHIR resource maps to
the MedicationRequest object in
Salesforce.
FHIR V4.0 - Clinical Data Model Mapping
Here’s how the fields defined by FHIR for MedicationRequest map to the fields in Salesforce.
| Medication Request Resource | Salesforce Field | Type | Salesforce Cardinality | Notes |
|---|---|---|---|---|
| identifier | Identifier | Object | 0.M | The identifier information for a medication request is represented as Identifier records that reference the MedicationRequest record using their Identifier.ParentRecordId field. |
| status | MedicationRequest.Status | Picklist | 1.1 | While FHIR defines MedicationRequest.status as a code set bundle, the Salesforce implementation of MedicationRequest.Status is picklist. |
| statusReason | MedicationRequest.StatusReasonCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| intent | MedicationRequest.Type | Picklist | 1.1 | While FHIR defines MedicationRequest.intent as a code set bundle, the Salesforce implementation of MedicationRequest.Type is picklist. |
| category | MedicationRequest.MedicationAdministrationContextId | Lookup: CodeSetBundle | 0.1 | While FHIR defines MedicationRequest.category as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| priority | MedicationRequest.Priority | Picklist | 0.1 | While FHIR defines MedicationRequest.priority as a code set bundle, the Salesforce implementation of MedicationRequest.Priority is picklist. |
| doNotPerform | MedicationRequest.IsIgnored | Boolean | 0.1 | N/A |
| reported.reportedBoolean | MedicationRequest.IsSecondaryInformation | Boolean | 0.1 | N/A |
| reported.reportedReference | MedicationRequest.SecondarySourceId | Polymorphic Lookup: Account, HealthcareProvider | 0.1 | N/A |
| medication.medicationCodeableConcept | MedicationRequest.MedicationCodeId | Lookup: CodeSetBundle | 0.1 | While the individual fields MedicationRequest.MedicationCodeId and MedicationRequest.MedicationId are zero-to-one references, the set {MedicationRequest.MedicationCodeId, MedicationRequest.MedicationId} is a one-to-one resource. |
| medication.medicationReference | MedicationRequest.MedicationId | Lookup: Medication | 0.1 | |
| subject | MedicationRequest.PatientId | Master-Detail Reference: Account | 1.1 | Only references to patients are supported. |
| encounter | MedicationRequest.ClinicalEncounterId | Lookup: ClinicalEncounter | 0.1 | N/A |
| supportingInformation | N/A | N/A | N/A | Not Supported |
| authoredOn | MedicationRequest.PrescribedDate | DateTime | 0.1 | N/A |
| requester | MedicationRequest.RequesterId | Polymorphic Lookup: Account, HealthcareProvider, CareRegisteredDevice | 0.1 | N/A |
| performer | MedicationRequest.PerformerId | Polymorphic Lookup: Account, CareRegisteredDevice, and HealthcareProvider | 0.1 | Doesn’t support references to care teams. |
| performerType | MedicationRequest.PerformerTypeId | Lookup: CodeSetBundle | 0.1 | N/A |
| recorder | N/A | N/A | N/A | Not Supported |
| reasonCode | MedicationRequest.ReasonCodeId | Lookup: CodeSetBundle | 0.1 | While FHIR defines MedicationRequest.reasonCode as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| reasonReference | MedicationRequest.ReasonReferenceId | Polymorphic Lookup: HealthCondition, CareObservation | 0.1 | While FHIR defines MedicationRequest.reasonReference as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| instantiatesCanonical | N/A | N/A | N/A | Not Supported |
| instantiatesCanonical | N/A | N/A | N/A | Not Supported |
| basedOn | MedicationRequest.RelatedRequestId | Lookup: MedicationRequest | 0.1 | The medicationRequest.basedOn FHIR resource is flattened to a set of medication request and service request fields in the Salesforce implementation. |
| MedicationRequestDetail.ClinicalServiceRequestId | Lookup: ClinicalServiceRequest | 0.1 | ||
| groupIdentifier | MedicationRequest.MedicationRequestGroupId | Lookup: Identifier | 0.1 | N/A |
| courseOfTherapyType | MedicationRequest.TherapyDuration | Picklist | 0.1 | While FHIR defines MedicationRequest.courseOfTherapyType as a code set bundle, the Salesforce implementation of MedicationRequest.TherapyDuration is picklist. |
| insurance | N/A | N/A | N/A | Not supported |
| note | N/A | N/A | N/A | Not supported |
| dosageInstruction | PatientMedicationDosage | Object | 0.M | The dosage information for a medication request is represented as PatientMedicationDosage records that reference the MedicationRequest record using their PatientMedicationDosage.ParentRecordId field. |
| dispenseRequest.initialFill.quantity | MedicationRequest.InitialFillQuantity | Double | 0.1 | Because Salesforce doesn’t support a native quantity data type, the implementation of medicationRequest.dispenseRequest.initialFill.quantity is flattened into a set of quantity and unit fields. |
| MedicationRequest.FillQuantityUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| dispenseRequest.initialFill.duration | MedicationRequest.InitialFillDuration | Double | 0.1 | Because Salesforce doesn’t support a native duration data type, the implementation of medicationRequest.dispenseRequest.initialFill.duration is flattened into a set of duration and unit fields. |
| MedicationRequest.FillDurationUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| dispenseRequest.dispenseInterval | MedicationRequest.DispenseInterval | Double | 0.1 | Because Salesforce doesn’t support a native duration data type, the implementation of medicationRequest.dispenseRequest.dispenseInterval is flattened into a set of interval and unit fields. |
| MedicationRequest.DispenseIntervalUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| dispenseRequest.validityPeriod | MedicationRequest.PrescriptionPeriodStart | DateTime | 0.1 | Because Salesforce doesn’t support a native period data type, the implementation of medicationRequest.dispenseRequest.validityPeriod is flattened into a set of start and end dates. |
| MedicationRequest.PrescriptionPeriodEnd | DateTime | 0.1 | ||
| dispenseRequest.numberOfRepeatsAllowed | MedicationRequest.RefillsAllowed | Double | 0.1 | N/A |
| dispenseRequest.quantity | MedicationRequest.RefillQuantity | Double | 0.1 | Because Salesforce doesn’t support a native quantity data type, the medicationRequest.dispenseRequest.quantity is flattened into a set of quantity and unit fields. |
| MedicationRequest.FillQuantityUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| dispenseRequest.expectedSupplyDuration | MedicationRequest.RefillDuration | Double | 0.1 | Because Salesforce doesn’t support a native duration data type, the medicationRequest.dispenseRequest.expectedSupplyDuration is flattened into a set of duration and unit fields. |
| MedicationRequest.FillDurationUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| dispenseRequest.performer | MedicationRequest.DispenserId | Lookup: Account | 0.1 | N/A |
| substitution.allowed.allowedBoolean | MedicationRequest.CanSubstitute | Boolean | 0.1 | N/A |
| substitution.allowed.allowedCodeableConcept | MedicationRequest.AllowedSubstitutionTypeCodeId | Lookup: CodeSetBundle | 0.1 | 0.1 |
| substitution.reason | MedicationRequest.SubstitutionReasonCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| priorPrescription | MedicationRequest.PreviousPrescriptionId | Lookup: MedicationRequest | 0.1 | N/A |
| detectedIssue | N/A | N/A | N/A | Not supported |
| eventHistory | N/A | N/A | N/A | Not supported |