小编San*_*nik的帖子

使用SAS BASE从JSON中的变量中解析具有unicode字符的表

我在使用vars中的unicode char解析JSON时遇到了问题.所以,我有下一个JSON(例子):

 {  
   "SASJSONExport":"1.0",
   "SASTableData+TEST":[  
      {  
         "\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f":2,
         "\u0421\u0440\u0435\u0434\u043d\u0435\u0435":4,
         "\u0421\u0442\u0440\u043e\u043a\u0430":"\u0427\u0442\u043e\u002d\u0442\u043e\u0031"
      },
      {  
         "\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f":2,
         "\u0421\u0440\u0435\u0434\u043d\u0435\u0435":2,
         "\u0421\u0442\u0440\u043e\u043a\u0430":"\u0427\u0442\u043e\u002d\u0442\u043e\u0032"
      },
      {  
         "\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f":1,
         "\u0421\u0440\u0435\u0434\u043d\u0435\u0435":42,
         "\u0421\u0442\u0440\u043e\u043a\u0430":"\u0427\u0442\u043e\u002d\u0442\u043e\u0033"
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

要从JSON解析表,我使用SAS引擎:

libname jsonfl JSON fileref=injson ;
Run Code Online (Sandbox Code Playgroud)

代码更高解码单元格中的字符,但vars的名称看起来像缺少的val:

+--------------+---------------------------+------------+---------+---------+
| ordinal_root | ordinal_SASTableData_TEST | __________ | _______ | ______  |
+--------------+---------------------------+------------+---------+---------+
|            1 |                         1 |          2 |       4 | ???-??1 |
|            1 |                         2 |          2 |       2 | ???-??2 |
|            1 |                         3 |          1 |      42 | ???-??3 |
+--------------+---------------------------+------------+---------+---------+
Run Code Online (Sandbox Code Playgroud)

标题必须如下所示:

+--------------+---------------------------+------------+---------+---------+
| ordinal_root …
Run Code Online (Sandbox Code Playgroud)

regex parsing json sas

14
推荐指数
1
解决办法
533
查看次数

通过基于SAS的程序在SAS Metadata Server中创建内部帐户

我正在尝试使用来以编程方式创建内部帐户proc metadata。下面的代码部分使用外部登录创建人。

put"<Person Name=%str(%')&&PersonName&i.%str(%')>";
   put"<Logins>";
      put"<Login Name=%str(%')Login.&&PersonName&i.%str(%')  Password=%str(%')&&word&i.%str(%')/>";
   put"</Logins>";
put"</Person>";
Run Code Online (Sandbox Code Playgroud)

要创建ExternalLogin,我们可以设置attribute Password,并且在SAS Metadata中将对其进行自动加密。但是要创建对象的InternalLogin类型,必须使密码和salt哈希值成为可能。我知道标准的加密方法,但是在使用情况下如何获得salt的值?sas002proc pwencode

是否可以使用SAS Base创建InternalLogin?

谢谢

metadata sas sas-metadata

6
推荐指数
0
解决办法
548
查看次数

如何从SAS Base javaobj语句创建对象的Java数组?

我在从SAS声明Java对象时遇到麻烦。无法设置Java对象的参数数组或创建数组的对象。

data _NULL_;
/*With primitive types work well     */
  declare javaobj jArr("java.util.Arrays");
  array primeNum{3} (15, 2, 3);
  jArr_rc1=jArr.callStaticVoidMethod("sort", primeNum);

/* For example, try to create array from some javaobjs   */
  declare javaobj num1("java.lang.Integer","15");
  declare javaobj num2("java.lang.Integer","2");
  declare javaobj num3("java.lang.Integer","3");
  array Num{3} (num1,num2,num3);
/* ERROR: Cannot create an array of objects. */
/* ERROR: DATA STEP Component Object failure.  Aborted during the COMPILATION phase. */

/*In my project I've tried different ways:   */
/*     ...callStaticVoidMethod("FuncFromStandartClass",[num1,num2,num3]); */
/*     ...callStaticVoidMethod("FuncFromStandartClass",{num1,num2,num3}); */

/* This …
Run Code Online (Sandbox Code Playgroud)

sas

5
推荐指数
0
解决办法
89
查看次数

标签 统计

sas ×3

json ×1

metadata ×1

parsing ×1

regex ×1

sas-metadata ×1