Replacing view with record relationship

I'm currently working on a functionality that involves view with huge dataset in Appian and I am planning to replace it with record relationship. I have a situation where I'm using a left join with a table and implementing a self-join with three conditions using the AND operator.

Here's the view that I want to replace.

SELECT
`snapFrom`.`id` AS `id`,
`snapFrom`.`material` AS `material`,
CAST(
`snapFrom`.`FCFinalTotal` AS DOUBLE
) AS `FCFinalTotalFrom`,
CAST(`snapTo`.`FCFinalTotal` AS DOUBLE) AS `FCFinalTotalTo`,
`snapFrom`.`snapshot` AS `snapFrom`,
`snapTo`.`snapshot` AS `snapTo`,
`snapTo`.`FCFinalTotal` - `snapFrom`.`FCFinalTotal` AS `diffValue`,
CONCAT(
SUBSTRING_INDEX(`snapFrom`.`calWeek`, '.', -1),
'.',
SUBSTRING_INDEX(`snapFrom`.`calWeek`, '.', 1)
) AS `calWeek`,
`m`.`basecode` AS `baseCode`
FROM
(
(
`Appian`.`SOE_STAGING_FORECAST_WEEKLY` `snapFrom`
LEFT JOIN `Appian`.`SOE_STAGING_FORECAST_WEEKLY` `snapTo`
ON
(
`snapFrom`.`calWeek` = `snapTo`.`calWeek` AND `snapFrom`.`material` = `snapTo`.`material` AND `snapFrom`.`companyCode` = `snapTo`.`companyCode`
)
)
LEFT JOIN `Appian`.`SOE_MaterialMasterData` `m`
ON
(
`m`.`material` = `snapFrom`.`material` AND `m`.`companyCode` = `snapFrom`.`companyCode`
)
)
WHERE
`m`.`basecode` IS NOT NULL

I have created three records and established the relationship, but i am struggling to add join condition, can someone advice how we can add these join conditions.

  Discussion posts and replies are publicly visible