Hi All,
We have a requirement to make a custom function generic which was filled with hard coded values as of now,
Here it looks like this
IF($LV_VAR1 LIKE 'A%' AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE') AND
($LV_VAR4 != '006219' AND $LV_VAR4 != '006404' AND $LV_VAR4 != '006198' AND $LV_VAR4 != '300629' AND $LV_VAR4 != '008019' AND $LV_VAR4 != '007371') AND
($LV_VAR5 != '006211' AND $LV_VAR5 != '312345' AND $LV_VAR5 != '876344' AND $LV_VAR5 = '246853' AND $LV_VAR5 != '006783' AND $LV_VAR5 != '947321' ) )
BEGIN
$LV_VAR6 = 'XYZ';
end
ELSE IF ($LV_VAR1 IN ('520','625') AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE') AND
($LV_VAR4 != '006219' AND $LV_VAR4 != '006404' AND $LV_VAR4 != '006198' AND $LV_VAR4 != '300629' AND $LV_VAR4 != '008019' AND $LV_VAR4 != '007371') AND
($LV_VAR5 != '006211' AND $LV_VAR5 != '312345' AND $LV_VAR5 != '876344' AND $LV_VAR5 = '246853' AND $LV_VAR5 != '006783' AND $LV_VAR5 != '947321' ) )
BEGIN
$LV_VAR6 = 'ABC';
end
ELSE IF ($LV_VAR1 IN ('300','510','725') AND ($LV_VAR7 != 'EE' AND $LV_VAR1 != 'XX') AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE') AND
($LV_VAR4 != '006219' AND $LV_VAR4 != '006404' AND $LV_VAR4 != '006198' AND $LV_VAR4 != '300629' AND $LV_VAR4 != '008019' AND $LV_VAR4 != '007371') AND
($LV_VAR5 != '006211' AND $LV_VAR5 != '312345' AND $LV_VAR5 != '876344' AND $LV_VAR5 = '246853' AND $LV_VAR5 != '006783' AND $LV_VAR5 != '947321' ) )
BEGIN
$LV_VAR6 = 'DEF';
end
ELSE IF ($LV_VAR1 LIKE 'B%' AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE'))
BEGIN
$LV_VAR6 = 'ABC';
END
ELSE IF ($LV_VAR1 IN ('300','510','725') AND $LV_VAR7 != 'EE' AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE'))
BEGIN
$LV_VAR6 = 'XYZ';
END
ELSE IF ($LV_VAR1 IN ('300','510','725') AND $LV_VAR7 != 'XX' AND $LV_VAR2 >.002 AND $LV_VAR3 IN ('AA','BB','CC','DD','EE'))
BEGIN
$LV_VAR6 = 'ABC';
END
ELSE
BEGIN
$LV_VAR6 ='NULL';
END
Return $LV_VAR6;
I tried entering all the variable values into one staging table and flattened that table with reverse pivot transform and used the SQL function to make it generic by pulling all the values from that staging table,
it works fine for me but it is hitting the performance, there are 12m rows in the source table.
Can i get some clues, how to make it generic , is there any simple way to do this…
Thanks,
Sushma
sushma.bommidala (BOB member since 2008-05-02)