Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays SAS逐字段检查_Arrays_Sas_Datastep - Fatal编程技术网

Arrays SAS逐字段检查

Arrays SAS逐字段检查,arrays,sas,datastep,Arrays,Sas,Datastep,我尝试构建一个小的检查过程。一个proc sql生成了一行表(和13个字段),下一步我需要检查表中所选字段的值是否为0。 下面是我的当前(未完成)代码和示例表“have”: 我需要逐个字段进行检查,因为L_与L_CUSTOMER_RETAIL签订了合同(字段2至7)。 如果此字段中的任何字段的值为0-我需要返回一些不正常的信息。 谢谢你的帮助 致意 length flag $10.; if whichn(0, of L_contract -- l_customer_retail) then fl

我尝试构建一个小的检查过程。一个
proc sql
生成了一行表(和13个字段),下一步我需要检查表中所选字段的
值是否为0
。 下面是我的当前(未完成)代码和示例表“have”:

我需要逐个字段进行检查,因为L_与L_CUSTOMER_RETAIL签订了合同(字段2至7)。 如果此字段中的任何字段的值为0-我需要返回一些不正常的信息。 谢谢你的帮助

致意

length flag $10.;
if whichn(0, of L_contract -- l_customer_retail) then flag='Not Ok';
else flag='Ok';
您可以使用
WHICHN()
函数测试一系列变量中是否有任何值为0。不需要数组声明。我不明白为什么你有一个
INPUT
语句和一个
SET
语句,但是没有
infle
或“CARDS”。这对我来说没有意义


编辑:将单破折号更改为双破折号。

嘿,里扎。谢谢你的解决方案。我不知道功能是什么。在这种情况下,该过程不起作用(SAS show me error:枚举变量(L_contract-L_customer_retail)的字母前缀不同),但我确实重建了您的代码,如:
length flag$10。;如果whichn(0,of L_u1;:),则标记为“不正常”;else flag='Ok'之前,我得到了需要检查的字段。谢谢对不起,应该是两个破折号,我责备自动更正;)O、 奇怪。我曾经加了两个破折号,但没用,现在可以用了。。大thx Reeza:)您的解决方案开启了更多新的可能性:)
length flag $10.;
if whichn(0, of L_contract -- l_customer_retail) then flag='Not Ok';
else flag='Ok';