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

Parents
  • 0
    Certified Lead Developer

    Just pasting the view code and expecting us to reverse engineer its purpose will probably not work.

    I suggest to first get a clear understanding of what you want to achieve with that view. Then think about whether you even need that in Appian and how to make best use of related records.

    E.g. that cast in line 4 is something you will not need in Appian.

    And then

Reply
  • 0
    Certified Lead Developer

    Just pasting the view code and expecting us to reverse engineer its purpose will probably not work.

    I suggest to first get a clear understanding of what you want to achieve with that view. Then think about whether you even need that in Appian and how to make best use of related records.

    E.g. that cast in line 4 is something you will not need in Appian.

    And then

Children
No Data