Reputation: 67
I wanted to pass a parameterized query in ado.net source and i rea don this post that only way to do this is to use expressions.
So here is my expression
"SELECT
LEDGER_YR_MO,
LOCATION,
FDR_FND_NO,
FDR_INVST_POOL_CD,
FISCAL_YR_BEG,
FISCAL_YR_END,
POST_DATE,
FDR_FND_TTL,
FDR_FND_TYPE_CD,
FDR_FND_PURP_CD,
FDR_CR_ELIG_FL,
FDR_ANN_CR_RATE,
FDR_MTH_CR_RATE,
FDR_CR_AMT,
FDR_TR_ELIG_FL,
FDR_ANN_TR_RATE,
FDR_MTH_TR_RATE,
FDR_60MTH_AVG_SHARE_PRC,
FDR_TR_AMT,
FDR_PROJ_GEP_INCM_AMT,
FDR_TR_AUGMENTATION_AMT,
FDR_GEP_NET_PAYOUT_AMT
FROM
FS0TST.UCOP_FDR_TR_CR where
LEDGER_YR_MO = '"+ (DT_WSTR,30) @[User::END_LEDGER_YR] +"' "
but when I click evaluate the expression , I see blank instead of variable ..does anyone know the possible issue: Here is the evaluate expression looks like
SELECT
LEDGER_YR_MO,
LOCATION,
FDR_FND_NO,
FDR_INVST_POOL_CD,
FISCAL_YR_BEG,
FISCAL_YR_END,
POST_DATE,
FDR_FND_TTL,
FDR_FND_TYPE_CD,
FDR_FND_PURP_CD,
FDR_CR_ELIG_FL,
FDR_ANN_CR_RATE,
FDR_MTH_CR_RATE,
FDR_CR_AMT,
FDR_TR_ELIG_FL,
FDR_ANN_TR_RATE,
FDR_MTH_TR_RATE,
FDR_60MTH_AVG_SHARE_PRC,
FDR_TR_AMT,
FDR_PROJ_GEP_INCM_AMT,
FDR_TR_AUGMENTATION_AMT,
FDR_GEP_NET_PAYOUT_AMT
FROM
FS0TST.UCOP_FDR_TR_CR where
LEDGER_YR_MO = ''
Upvotes: 0
Views: 607
Reputation: 31775
When you click the Evaluate Expression button, no code actually gets executed, so the only thing SSIS can look at is the static default value you gave your variable.
If you want to see a value instead of a blank in the Evaluate Expression, you have to give your variable a default value, even if you don't intend to use that value. When the SSIS package is executed, whatever code you use to populate the variable will overwrite the default value, so having a default value is harmless.
Upvotes: 1