在我的 Co-Op 中,我的经理要求我获取我收集的 SAS 输出表,然后执行一个存储过程,该过程将上传和更新任何已更改为在线 KPI(关键绩效指标)excel 表的数据。
显然,我的老板甚至不太清楚如何做到这一点,而且他已经编程了很长时间。
用外行的话来说,这就是我需要做的:
创建收集的 KPI 表(完成)
将表发送到存储过程(我不想在 SAS 9.3 中使用 ProcSQL,因为我会在太多字段中进行硬编码)
将存储过程读入在线数据表(完成)
如果 KPI 已更改,则替换它们(完成)
这是我想出的 ProcSQL: 为保持匿名而给出了模棱两可的名称:
%let id = 'HorseRaddish';
%let pwd = 'ABC321';
proc sql;
connect to odbc (dsn='JerrySeinfeld' uid=&id pwd=&pwd);
execute (spKPIInsertUpdateKPIData '411', '7.2', '8808', 'M', 'NANANA', 'WorkStation', 'Testing1212', '1', '8/3/2013 10:42AM') by odbc;
disconnect from odbc;
quit;
run;
上面的代码工作正常,但就像我说的那样,在数百个字段的 KPI 计算中硬编码是很痛苦的。