In Power BI, when you have tables that are not directly related, you can still perform lookups manually using the LOOKUPVALUE function. This DAX function allows you to retrieve a value from another table based on a specific condition, enabling you to create a calculated column without needing an explicit relationship between the tables.

Here’s how you can do it:

  1. Suppose you have:
  • Table1 with the column ServiceLocationID.
  • ServiceLocations with the columns ServiceLocationID and OPSDIF.
  1. To create a calculated column in Table1, use the following DAX formula:
OPSDIF_NewColumn = LOOKUPVALUE(ServiceLocations[OPSDIF], ServiceLocations[ServiceLocationID], Table1[ServiceLocationID])

Explanation:

  • LOOKUPVALUE: This function searches for a value in another table based on matching conditions.
  • ServiceLocations[OPSDIF]: The column you want to retrieve (in this case, OPSDIF).
  • ServiceLocations[ServiceLocationID]: The reference column in the ServiceLocations table.
  • Table1[ServiceLocationID]: The reference column in the current table (Table1) used to match with ServiceLocations[ServiceLocationID].

How It Works:

The LOOKUPVALUE function searches the ServiceLocations table for the value in the OPSDIF column where ServiceLocationID matches the ServiceLocationID from Table1. This will generate a new column in Table1 with the corresponding OPSDIF value.

Key Considerations:

  • Ensure that the ServiceLocationID values in the ServiceLocations table are unique. If there are duplicates, the LOOKUPVALUE function may return errors.
  • If you need to apply additional conditions or make modifications, you can adjust the DAX formula accordingly.

This approach gives you flexibility when working with non-related tables in Power BI, allowing you to link data across multiple sources without the need for complex relationships. Let me know if you have any further questions!