@echo off
setlocal EnableDelayedExpansion
for /l %%i in (01, 01, 31) do (
SET lday=%%i
SET month=01
SET year=2025
IF !lday! EQU 08 (
SET /a lday=010
)
IF !month! EQU 08 (
SET /a month=010
)
IF !lday! EQU 09 (
SET /a lday=011
)
IF !month! EQU 09 (
SET /a month=011
)
set /A lday=!lday!-1
set /A month=!month!-0
IF !lday! LSS 1 IF !month! EQU 1 (
SET lday=31
SET /A month=!month!-1+12
SET /A year=!year!-1
)
IF !lday! LSS 1 IF !month! EQU 2 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 3 (
SET lday=28
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 4 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 5 (
SET lday=30
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 6 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 7 (
SET lday=30
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 8 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 9 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 10 (
SET lday=30
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 11 (
SET lday=31
SET /A month=!month!-1
)
IF !lday! LSS 1 IF !month! EQU 12 (
SET lday=30
SET /A month=!month!-1
)
IF !lday! LEQ 9 (
SET lday=0!lday!
) else (
SET lday=!lday!
)
IF !month! LEQ 9 (
SET month=0!month!
) else (
SET month=!month!
)
echo !year!!month!!lday!
pause
)
endlocal
Tableau Calcuation/LOD & Parameter with IF condition
Use this calculated field as a filter (set to TRUE)
{
FIXED [year], [month]:
SUM(
IF [year] =
RIGHT(STR(YEAR([DATEPARA])), 4)
AND [month] =
IF MONTH([DATEPARA])
< 10
THEN
"0" + STR(MONTH([DATEPARA]))
ELSE STR(MONTH([DATEPARA]))
END
THEN [TotalEXPEN]
ELSE 0
END
)
}
Using Parameters (Selection In Tableau)
For a dynamic approach, create two parameters:
- Year
Parameter (List of years, e.g., 2023, 2024)
- Month
Parameter (List of months, e.g., January, February)
Then modify the LOD:
tableau
{FIXED [year], [month]:
SUM(
IF [year] IN
([Year Parameter]) AND
[month] IN
([Month Parameter])
THEN [user]
END
)
}
{
FIXED [year],[month]: SUM( IF STR([year])=LEFT(STR([STARTDATEPARA]),
4) AND STR([month])= MID(STR([STARTDATEPARA]), 7,1) THEN [DimComFrmParaCAL] END
)
}
//NOTE STR("01/03/2024") becomes
"2024-03-01" (or "2024-01-03" depending on your locale) in Tableau
//sum(IF STR([year])=LEFT(STR([STARTDATEPARA]), 4) THEN [CustCtr]
END)
//sum(IF STR([month])= MID(STR([STARTDATEPARA]), 7,1) THEN [CustCtr]
END)
//{FIXED [year], [month]: SUM(IF [year] = 2024 AND [month]
=3 THEN [CustCtr] END)}
No comments:
Post a Comment