1
我有宏观传递猪宏观参数
define chop_massive (my, maxev) returns grouped, massive {
gr = foreach (group $my by id) generate group as id, $my;
split gr into
massive if COUNT($my) > $maxev,
grouped otherwise;
$grouped = grouped;
$massive = foreach massive generate id, COUNT($my) as $my;
};
一头猪我的问题是通过maxev
参数。 当我使用一个常量文字(例如,100L
)一切都很好。然而,我想在命令行上使用-param
指定的$MAX_EVENTS
。
我试图
A, massive = chop_massive(A, $MAX_EVENTS);
,并得到
mismatched input '100L' expecting set null
我试图
A, massive = chop_massive(A, ($MAX_EVENTS));
,并得到
mismatched input '(' expecting set null
我试图
A, massive = chop_massive(A, '$MAX_EVENTS');
,并得到
Macro doesn't support user defined schema that contains name that conflicts with alias name: A
我试图
massive if COUNT($my) > $MAX_EVENTS,
宏观内,得到了
Macro inline failed for macro 'chop_massive'. Reason: Undefined parameter : MAX_EVENTS
(这个错误至少是明确和合理的) 。
那我该怎么办?
nope,也不起作用(请参阅编辑) – sds
我相信刚刚得到的错误与参数替换无关 - 这是因为您在宏返回和其他位置都使用了'A'作为别名。剧本。尝试改变它到别的东西。 –