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.
MedicationStatement
FHIR V4.0 - Clinical Data Model Mapping
Here’s how the fields defined by FHIR for medicationStatement map to the fields in Salesforce.
| Medication Statement Resource | Salesforce Field | Type | Salesforce Cardinality | Notes |
|---|---|---|---|---|
| identifier | Identifier | Object | 0.M | The identifier information for a medication statement is represented as Identifier records that reference the MedicationStatement record using their Identifier.ParentRecordId field. |
| basedOn | MedicationStatement.MedicationRequestId | Lookup: MedicationRequest | 0.1 |
While FHIR defines medicationStatement.basedOn as a zero-to-many resource, the Salesforce implementation of MedicationStatement.MedicationRequestId is zero-to-one. The Salesforce implementation doesn’t support references to care plan or service request records. |
| partOf | MedicationStatement.ParentMedicationStatementId | Lookup: MedicationStatement | 0.1 |
The Salesforce implementation of medicationRequest.partOf is flattened into three separate references. References to medication administration and medication dispense records are not supported. While FHIR defines medicationStatement.partOf as a zero-to-many resource, the Salesforce implementation is zero-to-one for each of the flattened fields. |
| MedicationStatement.ProcedureId | Lookup: PatientMedicalProcedure | 0.1 | ||
| MedicationStatement.CareObservationId | Lookup: CareObservation | 0.1 | ||
| status | MedicationStatement.Status | Picklist | 1.1 | While FHIR defines MedicationStatement.status as a code set bundle, the Salesforce implementation of MedicationStatement.Status is picklist. |
| statusReason | MedicationStatement.StatusReasonCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| category | MedicationStatement.DeliverySetting | Picklist | 0.1 | While FHIR defines MedicationStatement.category as a code set bundle, the Salesforce implementation is a picklist. |
| medication.medicationCodeableConcept | MedicationStatement.MedicationCodeId | Lookup: CodeSetBundle | 0.1 | While the individual fields MedicationStatement.MedicationCodeId and MedicationStatement.MedicationId are zero-to-one references, the set {MedicationStatement.MedicationCodeId, MedicationStatement.MedicationId} is a one-to-one resource. |
| medication.medicationReference | MedicationStatement.MedicationId | Lookup: Medication | 0.1 | |
| subject | MedicationStatement.PatientId | Master-Detail Reference: Account | 1.1 | Only references to patients are supported. |
| context | MedicationStatement.ClinicalEncounterId | Lookup: ClinicalEncounter | 0.1 | Only references to encounters are supported. |
| effective.effectiveDateTime | MedicationStatement.StartDateTime | DateTime | 0.1 | The MedicationStatement.StartDateTime field is used as both the Salesforce counterpart for medicationStatement.effective.effectiveDateTime and the start date field for medicationStatement.effective.effectivePeriod. |
| effective.effectivePeriod | MedicationStatement.StartDateTime | DateTime | 0.1 | Because Salesforce doesn’t support a native period data type, the implementation of medicationStatement.effective.effectivePeriod is flattened into a set of start and end dates. |
| MedicationStatement.EndDateTime | DateTime | 0.1 | ||
| dateAsserted | MedicationStatement.AssertionDateTime | DateTime | 0.1 | N/A |
| informationSource | MedicationStatement.StatementSourceId | Polymorphic Lookup: Account, HealthcareProvider | 0.1 | N/A |
| derivedFrom | N/A | N/A | N/A | Not supported |
| reasonCode | MedicationStatement.MedicationReasonCodeId | Lookup: CodeSetBundle | 0.1 | While FHIR defines MedicationStatement.reasonCode as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| reasonReference | MedicationStatement.MedicationReasonId | Polymorphic Lookup: HealthCondition, CareObservation | 0.1 |
While FHIR defines MedicationStatement.reasonReference as a zero-to-many resource, the Salesforce implementation is zero-to-one. Only references to condition and observation records are supported. |
| note | N/A | N/A | N/A | Not supported |
| dosage | PatientMedicationDosage | Object | 0.M | The dosage information for a medication statement is represented as PatientMedicationDosage records that reference the MedicationStatement record using their PatientMedicationDosage.ParentRecordId field. |