SAS MACRO Debugging option

本文介绍了SAS MACRO的调试选项,包括symbolgen、mprint和mlogic,通过实例展示了它们如何帮助理解宏变量的取值、宏的执行流程以及错误检查。通过对这些选项的使用,可以更有效地调试和优化SAS宏代码。
摘要由CSDN通过智能技术生成

入职时间长了,自己写code的能力还是弱弱弱。除了在网上到处借(抄)鉴(抄)。有以下两个感想:

一.如果代码不具有很好地共享性,那就是辣鸡。。。。。

二.如果你觉得代码没有很好的共享性,那么就是自己菜。。。。

最近的任务很多度需要对某一个东西按不同分组进行相同操作,为了美观可读性等等(因为懒)。所以宏就是宝贝了。

而关于宏,sas log并不会像data step 过程给你提供编译的细节,以及报错。宏是个高傲的家伙,很多时候,它不开心(错了:语法,逻辑等),它不会主动和你讲,让你猜猜。如果你不主动点,那么你的结果就是打工仔(error error error等log issue)。

所以,对于宏过程的调试,就很重要。(唔该广大同学仔,抢光了我回家的票,让我困于宿舍,学习。。。。。。。。。)。

下面是宏调试的san个比较常用,而且实用的·options.

***********************SAS Macro learning******************;

*********One:Debugging ***symbolgen****mlogic***mprint*****mfile*****;

*********symbolgen********;
option symbolgen;
%MACRO test(prt = dog , type = fat fuzzy,row = 2 , col = 2);
  %do i = 1 %to &row;
     %do j =1 %to &col;
         %let allpets = %scan(&type,&i) %scan(&prt,&j);
         %put &allpets;
     %end;
  %end;
%mend test;
%test;

symbolgen就是宏编译过程的保姆,给你解析宏变量以及宏变量的具体取值;

LOG:

MLOGIC(TEST): 准备开始执行。
MLOGIC(TEST)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值