vandude2023
New member
- Local time
- Today, 12:10
- Joined
- Mar 31, 2023
- Messages
- 1
Have the existing nested if statement and it works fine:
SELECT TimeStart.EmpNo, TimeStart.Name, TimeStart.UN, TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary, TimeStart.HomeBU, TimeStart.PBDA, TimeStart.DistPay, TimeStart.GrossPay, TimeStart.Subledger, TimeStart.SubledgerType, TimeStart.Batch, IIf([Object]="51036" Or [Object]="51050" Or [Object]="51051" Or [Object]="51052" Or [Object]="51053" Or [Object]="51054" Or [Object]="51056" Or [Object]="51073" Or [Object]="51075",[BU] & "." & [Object] & ".100000",
-- START
IIf([BU]="1",[HomeBU] & ".50075.100000",
-- END
IIf(Len(Trim([Subledger]))="0",[BU] & ".50075.100000","\" & [Subledger] & ".50075"))) AS PostAcct, tblRetroRatesByUnion.RetroFactor, Round([GrossPay]*[RetroFactor],2) AS LDRetro
FROM TimeStart INNER JOIN tblRetroRatesByUnion ON TimeStart.UN = tblRetroRatesByUnion.UnionCode
ORDER BY TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary;
There's a requirement to have those [BU]="1" AND TimeStart.PBDA in (501.503) AND TimeStart.UN = '0' to be "135.51075.100000" (see START END above).
Tried the following changes but didn't seem to work:
SELECT TimeStart.EmpNo, TimeStart.Name, TimeStart.UN, TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary, TimeStart.HomeBU, TimeStart.PBDA, TimeStart.DistPay, TimeStart.GrossPay, TimeStart.Subledger, TimeStart.SubledgerType, TimeStart.Batch, IIf([Object]="51036" Or [Object]="51050" Or [Object]="51051" Or [Object]="51052" Or [Object]="51053" Or [Object]="51054" Or [Object]="51056" Or [Object]="51073" Or [Object]="51075",[BU] & "." & [Object] & ".100000",
-- START
IIf([BU]="1",[HomeBU] & ".50075.100000",
IIf([PBDA]="501" or [PBDA]="503",
IIf([UN]="0", "135.51075.100000",
-- END
IIf(Len(Trim([Subledger]))="0",[BU] & ".50075.100000","\" & [Subledger] & ".50075"))))) AS PostAcct, tblRetroRatesByUnion.RetroFactor, Round([GrossPay]*[RetroFactor],2) AS LDRetro
FROM TimeStart INNER JOIN tblRetroRatesByUnion ON TimeStart.UN = tblRetroRatesByUnion.UnionCode
ORDER BY TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary;
Please let me know how to fix the syntax.
Any guidance would be greatly appreciated!
SELECT TimeStart.EmpNo, TimeStart.Name, TimeStart.UN, TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary, TimeStart.HomeBU, TimeStart.PBDA, TimeStart.DistPay, TimeStart.GrossPay, TimeStart.Subledger, TimeStart.SubledgerType, TimeStart.Batch, IIf([Object]="51036" Or [Object]="51050" Or [Object]="51051" Or [Object]="51052" Or [Object]="51053" Or [Object]="51054" Or [Object]="51056" Or [Object]="51073" Or [Object]="51075",[BU] & "." & [Object] & ".100000",
-- START
IIf([BU]="1",[HomeBU] & ".50075.100000",
-- END
IIf(Len(Trim([Subledger]))="0",[BU] & ".50075.100000","\" & [Subledger] & ".50075"))) AS PostAcct, tblRetroRatesByUnion.RetroFactor, Round([GrossPay]*[RetroFactor],2) AS LDRetro
FROM TimeStart INNER JOIN tblRetroRatesByUnion ON TimeStart.UN = tblRetroRatesByUnion.UnionCode
ORDER BY TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary;
There's a requirement to have those [BU]="1" AND TimeStart.PBDA in (501.503) AND TimeStart.UN = '0' to be "135.51075.100000" (see START END above).
Tried the following changes but didn't seem to work:
SELECT TimeStart.EmpNo, TimeStart.Name, TimeStart.UN, TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary, TimeStart.HomeBU, TimeStart.PBDA, TimeStart.DistPay, TimeStart.GrossPay, TimeStart.Subledger, TimeStart.SubledgerType, TimeStart.Batch, IIf([Object]="51036" Or [Object]="51050" Or [Object]="51051" Or [Object]="51052" Or [Object]="51053" Or [Object]="51054" Or [Object]="51056" Or [Object]="51073" Or [Object]="51075",[BU] & "." & [Object] & ".100000",
-- START
IIf([BU]="1",[HomeBU] & ".50075.100000",
IIf([PBDA]="501" or [PBDA]="503",
IIf([UN]="0", "135.51075.100000",
-- END
IIf(Len(Trim([Subledger]))="0",[BU] & ".50075.100000","\" & [Subledger] & ".50075"))))) AS PostAcct, tblRetroRatesByUnion.RetroFactor, Round([GrossPay]*[RetroFactor],2) AS LDRetro
FROM TimeStart INNER JOIN tblRetroRatesByUnion ON TimeStart.UN = tblRetroRatesByUnion.UnionCode
ORDER BY TimeStart.BU, TimeStart.Object, TimeStart.Subsidiary;
Please let me know how to fix the syntax.
Any guidance would be greatly appreciated!