mirror of
https://github.com/sasjs/core.git
synced 2026-01-12 11:00:05 +00:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
40d694eec8 | ||
|
|
6af1423666 | ||
|
|
23a01347f1 | ||
|
|
7c86d6163a | ||
|
|
d7233208f1 |
80
all.sas
80
all.sas
@@ -2194,7 +2194,7 @@ Usage:
|
|||||||
%end;
|
%end;
|
||||||
|
|
||||||
/* Stored Process Server web app context */
|
/* Stored Process Server web app context */
|
||||||
%if %symexist(_metaport)
|
%if %symexist(_METAFOLDER)
|
||||||
or "&SYSPROCESSNAME "="Compute Server "
|
or "&SYSPROCESSNAME "="Compute Server "
|
||||||
or &mode=INCLUDE
|
or &mode=INCLUDE
|
||||||
%then %do;
|
%then %do;
|
||||||
@@ -2270,12 +2270,14 @@ Usage:
|
|||||||
/* send response in SASjs JSON format */
|
/* send response in SASjs JSON format */
|
||||||
data _null_;
|
data _null_;
|
||||||
file _webout mod lrecl=32000 encoding='utf-8';
|
file _webout mod lrecl=32000 encoding='utf-8';
|
||||||
length msg $32767 ;
|
length msg syswarningtext syserrortext $32767 ;
|
||||||
sasdatetime=datetime();
|
sasdatetime=datetime();
|
||||||
msg=symget('msg');
|
msg=symget('msg');
|
||||||
%if &logline>0 %then %do;
|
%if &logline>0 %then %do;
|
||||||
msg=cats(msg,'\n\nLog Extract:\n',symget('logmsg'));
|
msg=cats(msg,'\n\nLog Extract:\n',symget('logmsg'));
|
||||||
%end;
|
%end;
|
||||||
|
/* escape the escapes */
|
||||||
|
msg=tranwrd(msg,'\','\\');
|
||||||
/* escape the quotes */
|
/* escape the quotes */
|
||||||
msg=tranwrd(msg,'"','\"');
|
msg=tranwrd(msg,'"','\"');
|
||||||
/* ditch the CRLFs as chrome complains */
|
/* ditch the CRLFs as chrome complains */
|
||||||
@@ -8415,8 +8417,15 @@ options
|
|||||||
prxchange('s/'!!'0A'x!!'/\n/',-1,
|
prxchange('s/'!!'0A'x!!'/\n/',-1,
|
||||||
prxchange('s/'!!'0D'x!!'/\r/',-1,
|
prxchange('s/'!!'0D'x!!'/\r/',-1,
|
||||||
prxchange('s/'!!'09'x!!'/\t/',-1,
|
prxchange('s/'!!'09'x!!'/\t/',-1,
|
||||||
|
prxchange('s/'!!'00'x!!'/\\u0000/',-1, /* NUL */
|
||||||
|
prxchange('s/'!!'0E'x!!'/\\u000E/',-1, /* SS */
|
||||||
|
prxchange('s/'!!'0F'x!!'/\\u000F/',-1, /* SF */
|
||||||
|
prxchange('s/'!!'01'x!!'/\\u0001/',-1, /* SOH */
|
||||||
|
prxchange('s/'!!'02'x!!'/\\u0002/',-1, /* STX */
|
||||||
|
prxchange('s/'!!'02'x!!'/\\u0010/',-1, /* DLE */
|
||||||
|
prxchange('s/'!!'11'x!!'/\\u0011/',-1, /* DC1 */
|
||||||
prxchange('s/\\/\\\\/',-1,&&name&i)
|
prxchange('s/\\/\\\\/',-1,&&name&i)
|
||||||
)))))!!'"';
|
))))))))))))!!'"';
|
||||||
%end;
|
%end;
|
||||||
%end;
|
%end;
|
||||||
run;
|
run;
|
||||||
@@ -13358,8 +13367,8 @@ run;
|
|||||||
<h4> SAS Macros </h4>
|
<h4> SAS Macros </h4>
|
||||||
@li mp_abort.sas
|
@li mp_abort.sas
|
||||||
|
|
||||||
@param libref the libref (not name) of the metadata library
|
@param [in] libref The libref (not name) of the metadata library
|
||||||
@param mAbort= If not assigned, HARD will call %mp_abort(), SOFT will
|
@param [in] mAbort= If not assigned, HARD will call %mp_abort(), SOFT will
|
||||||
silently return
|
silently return
|
||||||
|
|
||||||
@returns libname statement
|
@returns libname statement
|
||||||
@@ -13373,11 +13382,11 @@ run;
|
|||||||
libref
|
libref
|
||||||
,mAbort=HARD
|
,mAbort=HARD
|
||||||
)/*/STORE SOURCE*/;
|
)/*/STORE SOURCE*/;
|
||||||
|
%local mp_abort msg;
|
||||||
|
%let mp_abort=0;
|
||||||
%if %sysfunc(libref(&libref)) %then %do;
|
%if %sysfunc(libref(&libref)) %then %do;
|
||||||
%local mp_abort msg; %let mp_abort=0;
|
|
||||||
data _null_;
|
data _null_;
|
||||||
length liburi LibName $200;
|
length liburi LibName msg $200;
|
||||||
call missing(of _all_);
|
call missing(of _all_);
|
||||||
nobj=metadata_getnobj("omsobj:SASLibrary?@Libref='&libref'",1,liburi);
|
nobj=metadata_getnobj("omsobj:SASLibrary?@Libref='&libref'",1,liburi);
|
||||||
if nobj=1 then do;
|
if nobj=1 then do;
|
||||||
@@ -13391,7 +13400,24 @@ run;
|
|||||||
* not always helpful though. One example, previously received:
|
* not always helpful though. One example, previously received:
|
||||||
* NOTE: Libref XX refers to the same library metadata as libref XX.
|
* NOTE: Libref XX refers to the same library metadata as libref XX.
|
||||||
*/
|
*/
|
||||||
call symputx('msg',sysmsg(),'l');
|
msg=sysmsg();
|
||||||
|
if msg=:'ERROR: Libref SAVE is not assigned.' then do;
|
||||||
|
msg=catx(" ",
|
||||||
|
"Could not assign %upcase(&libref).",
|
||||||
|
"Please check metadata permissions! Libname:",libname,
|
||||||
|
"Liburi:",liburi
|
||||||
|
);
|
||||||
|
end;
|
||||||
|
else if msg="ERROR: User does not have appropriate authorization "!!
|
||||||
|
"level for library SAVE."
|
||||||
|
then do;
|
||||||
|
msg=catx(" ",
|
||||||
|
"ERROR: User does not have appropriate authorization level",
|
||||||
|
"for library %upcase(&libref), libname:",libname,
|
||||||
|
"Liburi:",liburi
|
||||||
|
);
|
||||||
|
end;
|
||||||
|
call symputx('msg',msg,'l');
|
||||||
if "&mabort"='HARD' then call symputx('mp_abort',1,'l');
|
if "&mabort"='HARD' then call symputx('mp_abort',1,'l');
|
||||||
end;
|
end;
|
||||||
else do;
|
else do;
|
||||||
@@ -13410,22 +13436,18 @@ run;
|
|||||||
end;
|
end;
|
||||||
run;
|
run;
|
||||||
|
|
||||||
%if &mp_abort=1 %then %do;
|
%put NOTE: &msg;
|
||||||
%mp_abort(iftrue= (&mp_abort=1)
|
|
||||||
,mac=mm_assignlib.sas
|
|
||||||
,msg=&msg
|
|
||||||
)
|
|
||||||
%return;
|
|
||||||
%end;
|
|
||||||
%else %if %length(&msg)>2 %then %do;
|
|
||||||
%put NOTE: &msg;
|
|
||||||
%return;
|
|
||||||
%end;
|
|
||||||
|
|
||||||
%end;
|
%end;
|
||||||
%else %do;
|
%else %do;
|
||||||
%put NOTE: Library &libref is already assigned;
|
%put NOTE: Library &libref is already assigned;
|
||||||
%end;
|
%end;
|
||||||
|
|
||||||
|
%mp_abort(iftrue= (&mp_abort=1)
|
||||||
|
,mac=mm_assignlib.sas
|
||||||
|
,msg=%superq(msg)
|
||||||
|
)
|
||||||
|
|
||||||
%mend mm_assignlib;
|
%mend mm_assignlib;
|
||||||
/**
|
/**
|
||||||
@file
|
@file
|
||||||
@@ -14912,8 +14934,15 @@ data _null_;
|
|||||||
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
||||||
|
put ' prxchange(''s/''!!''00''x!!''/\\u0000/'',-1, /* NUL */ ';
|
||||||
|
put ' prxchange(''s/''!!''0E''x!!''/\\u000E/'',-1, /* SS */ ';
|
||||||
|
put ' prxchange(''s/''!!''0F''x!!''/\\u000F/'',-1, /* SF */ ';
|
||||||
|
put ' prxchange(''s/''!!''01''x!!''/\\u0001/'',-1, /* SOH */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0002/'',-1, /* STX */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0010/'',-1, /* DLE */ ';
|
||||||
|
put ' prxchange(''s/''!!''11''x!!''/\\u0011/'',-1, /* DC1 */ ';
|
||||||
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
||||||
put ' )))))!!''"''; ';
|
put ' ))))))))))))!!''"''; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' run; ';
|
put ' run; ';
|
||||||
@@ -20373,8 +20402,15 @@ data _null_;
|
|||||||
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
||||||
|
put ' prxchange(''s/''!!''00''x!!''/\\u0000/'',-1, /* NUL */ ';
|
||||||
|
put ' prxchange(''s/''!!''0E''x!!''/\\u000E/'',-1, /* SS */ ';
|
||||||
|
put ' prxchange(''s/''!!''0F''x!!''/\\u000F/'',-1, /* SF */ ';
|
||||||
|
put ' prxchange(''s/''!!''01''x!!''/\\u0001/'',-1, /* SOH */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0002/'',-1, /* STX */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0010/'',-1, /* DLE */ ';
|
||||||
|
put ' prxchange(''s/''!!''11''x!!''/\\u0011/'',-1, /* DC1 */ ';
|
||||||
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
||||||
put ' )))))!!''"''; ';
|
put ' ))))))))))))!!''"''; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' run; ';
|
put ' run; ';
|
||||||
|
|||||||
@@ -85,7 +85,7 @@
|
|||||||
%end;
|
%end;
|
||||||
|
|
||||||
/* Stored Process Server web app context */
|
/* Stored Process Server web app context */
|
||||||
%if %symexist(_metaport)
|
%if %symexist(_METAFOLDER)
|
||||||
or "&SYSPROCESSNAME "="Compute Server "
|
or "&SYSPROCESSNAME "="Compute Server "
|
||||||
or &mode=INCLUDE
|
or &mode=INCLUDE
|
||||||
%then %do;
|
%then %do;
|
||||||
@@ -161,12 +161,14 @@
|
|||||||
/* send response in SASjs JSON format */
|
/* send response in SASjs JSON format */
|
||||||
data _null_;
|
data _null_;
|
||||||
file _webout mod lrecl=32000 encoding='utf-8';
|
file _webout mod lrecl=32000 encoding='utf-8';
|
||||||
length msg $32767 ;
|
length msg syswarningtext syserrortext $32767 ;
|
||||||
sasdatetime=datetime();
|
sasdatetime=datetime();
|
||||||
msg=symget('msg');
|
msg=symget('msg');
|
||||||
%if &logline>0 %then %do;
|
%if &logline>0 %then %do;
|
||||||
msg=cats(msg,'\n\nLog Extract:\n',symget('logmsg'));
|
msg=cats(msg,'\n\nLog Extract:\n',symget('logmsg'));
|
||||||
%end;
|
%end;
|
||||||
|
/* escape the escapes */
|
||||||
|
msg=tranwrd(msg,'\','\\');
|
||||||
/* escape the quotes */
|
/* escape the quotes */
|
||||||
msg=tranwrd(msg,'"','\"');
|
msg=tranwrd(msg,'"','\"');
|
||||||
/* ditch the CRLFs as chrome complains */
|
/* ditch the CRLFs as chrome complains */
|
||||||
|
|||||||
@@ -203,8 +203,15 @@
|
|||||||
prxchange('s/'!!'0A'x!!'/\n/',-1,
|
prxchange('s/'!!'0A'x!!'/\n/',-1,
|
||||||
prxchange('s/'!!'0D'x!!'/\r/',-1,
|
prxchange('s/'!!'0D'x!!'/\r/',-1,
|
||||||
prxchange('s/'!!'09'x!!'/\t/',-1,
|
prxchange('s/'!!'09'x!!'/\t/',-1,
|
||||||
|
prxchange('s/'!!'00'x!!'/\\u0000/',-1, /* NUL */
|
||||||
|
prxchange('s/'!!'0E'x!!'/\\u000E/',-1, /* SS */
|
||||||
|
prxchange('s/'!!'0F'x!!'/\\u000F/',-1, /* SF */
|
||||||
|
prxchange('s/'!!'01'x!!'/\\u0001/',-1, /* SOH */
|
||||||
|
prxchange('s/'!!'02'x!!'/\\u0002/',-1, /* STX */
|
||||||
|
prxchange('s/'!!'02'x!!'/\\u0010/',-1, /* DLE */
|
||||||
|
prxchange('s/'!!'11'x!!'/\\u0011/',-1, /* DC1 */
|
||||||
prxchange('s/\\/\\\\/',-1,&&name&i)
|
prxchange('s/\\/\\\\/',-1,&&name&i)
|
||||||
)))))!!'"';
|
))))))))))))!!'"';
|
||||||
%end;
|
%end;
|
||||||
%end;
|
%end;
|
||||||
run;
|
run;
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<h4> SAS Macros </h4>
|
<h4> SAS Macros </h4>
|
||||||
@li mp_abort.sas
|
@li mp_abort.sas
|
||||||
|
|
||||||
@param libref the libref (not name) of the metadata library
|
@param [in] libref The libref (not name) of the metadata library
|
||||||
@param mAbort= If not assigned, HARD will call %mp_abort(), SOFT will
|
@param [in] mAbort= If not assigned, HARD will call %mp_abort(), SOFT will
|
||||||
silently return
|
silently return
|
||||||
|
|
||||||
@returns libname statement
|
@returns libname statement
|
||||||
@@ -28,11 +28,11 @@
|
|||||||
libref
|
libref
|
||||||
,mAbort=HARD
|
,mAbort=HARD
|
||||||
)/*/STORE SOURCE*/;
|
)/*/STORE SOURCE*/;
|
||||||
|
%local mp_abort msg;
|
||||||
|
%let mp_abort=0;
|
||||||
%if %sysfunc(libref(&libref)) %then %do;
|
%if %sysfunc(libref(&libref)) %then %do;
|
||||||
%local mp_abort msg; %let mp_abort=0;
|
|
||||||
data _null_;
|
data _null_;
|
||||||
length liburi LibName $200;
|
length liburi LibName msg $200;
|
||||||
call missing(of _all_);
|
call missing(of _all_);
|
||||||
nobj=metadata_getnobj("omsobj:SASLibrary?@Libref='&libref'",1,liburi);
|
nobj=metadata_getnobj("omsobj:SASLibrary?@Libref='&libref'",1,liburi);
|
||||||
if nobj=1 then do;
|
if nobj=1 then do;
|
||||||
@@ -46,7 +46,24 @@
|
|||||||
* not always helpful though. One example, previously received:
|
* not always helpful though. One example, previously received:
|
||||||
* NOTE: Libref XX refers to the same library metadata as libref XX.
|
* NOTE: Libref XX refers to the same library metadata as libref XX.
|
||||||
*/
|
*/
|
||||||
call symputx('msg',sysmsg(),'l');
|
msg=sysmsg();
|
||||||
|
if msg=:'ERROR: Libref SAVE is not assigned.' then do;
|
||||||
|
msg=catx(" ",
|
||||||
|
"Could not assign %upcase(&libref).",
|
||||||
|
"Please check metadata permissions! Libname:",libname,
|
||||||
|
"Liburi:",liburi
|
||||||
|
);
|
||||||
|
end;
|
||||||
|
else if msg="ERROR: User does not have appropriate authorization "!!
|
||||||
|
"level for library SAVE."
|
||||||
|
then do;
|
||||||
|
msg=catx(" ",
|
||||||
|
"ERROR: User does not have appropriate authorization level",
|
||||||
|
"for library %upcase(&libref), libname:",libname,
|
||||||
|
"Liburi:",liburi
|
||||||
|
);
|
||||||
|
end;
|
||||||
|
call symputx('msg',msg,'l');
|
||||||
if "&mabort"='HARD' then call symputx('mp_abort',1,'l');
|
if "&mabort"='HARD' then call symputx('mp_abort',1,'l');
|
||||||
end;
|
end;
|
||||||
else do;
|
else do;
|
||||||
@@ -65,20 +82,16 @@
|
|||||||
end;
|
end;
|
||||||
run;
|
run;
|
||||||
|
|
||||||
%if &mp_abort=1 %then %do;
|
%put NOTE: &msg;
|
||||||
%mp_abort(iftrue= (&mp_abort=1)
|
|
||||||
,mac=mm_assignlib.sas
|
|
||||||
,msg=&msg
|
|
||||||
)
|
|
||||||
%return;
|
|
||||||
%end;
|
|
||||||
%else %if %length(&msg)>2 %then %do;
|
|
||||||
%put NOTE: &msg;
|
|
||||||
%return;
|
|
||||||
%end;
|
|
||||||
|
|
||||||
%end;
|
%end;
|
||||||
%else %do;
|
%else %do;
|
||||||
%put NOTE: Library &libref is already assigned;
|
%put NOTE: Library &libref is already assigned;
|
||||||
%end;
|
%end;
|
||||||
|
|
||||||
|
%mp_abort(iftrue= (&mp_abort=1)
|
||||||
|
,mac=mm_assignlib.sas
|
||||||
|
,msg=%superq(msg)
|
||||||
|
)
|
||||||
|
|
||||||
%mend mm_assignlib;
|
%mend mm_assignlib;
|
||||||
|
|||||||
@@ -236,8 +236,15 @@ data _null_;
|
|||||||
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
||||||
|
put ' prxchange(''s/''!!''00''x!!''/\\u0000/'',-1, /* NUL */ ';
|
||||||
|
put ' prxchange(''s/''!!''0E''x!!''/\\u000E/'',-1, /* SS */ ';
|
||||||
|
put ' prxchange(''s/''!!''0F''x!!''/\\u000F/'',-1, /* SF */ ';
|
||||||
|
put ' prxchange(''s/''!!''01''x!!''/\\u0001/'',-1, /* SOH */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0002/'',-1, /* STX */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0010/'',-1, /* DLE */ ';
|
||||||
|
put ' prxchange(''s/''!!''11''x!!''/\\u0011/'',-1, /* DC1 */ ';
|
||||||
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
||||||
put ' )))))!!''"''; ';
|
put ' ))))))))))))!!''"''; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' run; ';
|
put ' run; ';
|
||||||
|
|||||||
@@ -4,11 +4,8 @@
|
|||||||
"base",
|
"base",
|
||||||
"ddl",
|
"ddl",
|
||||||
"fcmp",
|
"fcmp",
|
||||||
"meta",
|
|
||||||
"metax",
|
|
||||||
"server",
|
|
||||||
"viya",
|
|
||||||
"lua",
|
"lua",
|
||||||
|
"server",
|
||||||
"tests/crossplatform",
|
"tests/crossplatform",
|
||||||
"tests/ddl"
|
"tests/ddl"
|
||||||
],
|
],
|
||||||
@@ -39,6 +36,7 @@
|
|||||||
},
|
},
|
||||||
"appLoc": "/Public/temp/macrocore",
|
"appLoc": "/Public/temp/macrocore",
|
||||||
"macroFolders": [
|
"macroFolders": [
|
||||||
|
"viya",
|
||||||
"tests/viyaonly"
|
"tests/viyaonly"
|
||||||
],
|
],
|
||||||
"programFolders": [],
|
"programFolders": [],
|
||||||
@@ -58,6 +56,8 @@
|
|||||||
},
|
},
|
||||||
"appLoc": "/Shared Data/temp/macrocore",
|
"appLoc": "/Shared Data/temp/macrocore",
|
||||||
"macroFolders": [
|
"macroFolders": [
|
||||||
|
"meta",
|
||||||
|
"metax",
|
||||||
"tests/sas9only"
|
"tests/sas9only"
|
||||||
],
|
],
|
||||||
"programFolders": [],
|
"programFolders": [],
|
||||||
@@ -78,6 +78,7 @@
|
|||||||
},
|
},
|
||||||
"appLoc": "/sasjs/core",
|
"appLoc": "/sasjs/core",
|
||||||
"macroFolders": [
|
"macroFolders": [
|
||||||
|
"server",
|
||||||
"tests/serveronly"
|
"tests/serveronly"
|
||||||
],
|
],
|
||||||
"programFolders": [],
|
"programFolders": [],
|
||||||
@@ -92,6 +93,10 @@
|
|||||||
"serverType": "SAS9",
|
"serverType": "SAS9",
|
||||||
"appLoc": "dummy",
|
"appLoc": "dummy",
|
||||||
"macroFolders": [
|
"macroFolders": [
|
||||||
|
"meta",
|
||||||
|
"metax",
|
||||||
|
"server",
|
||||||
|
"viya",
|
||||||
"tests/sas9only",
|
"tests/sas9only",
|
||||||
"tests/viyaonly"
|
"tests/viyaonly"
|
||||||
]
|
]
|
||||||
@@ -102,6 +107,7 @@
|
|||||||
"serverType": "SASVIYA",
|
"serverType": "SASVIYA",
|
||||||
"appLoc": "/Public/temp/macrocore",
|
"appLoc": "/Public/temp/macrocore",
|
||||||
"macroFolders": [
|
"macroFolders": [
|
||||||
|
"viya",
|
||||||
"tests/viyaonly"
|
"tests/viyaonly"
|
||||||
],
|
],
|
||||||
"deployConfig": {
|
"deployConfig": {
|
||||||
|
|||||||
@@ -380,8 +380,15 @@ data _null_;
|
|||||||
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
put ' prxchange(''s/''!!''0A''x!!''/\n/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
put ' prxchange(''s/''!!''0D''x!!''/\r/'',-1, ';
|
||||||
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
put ' prxchange(''s/''!!''09''x!!''/\t/'',-1, ';
|
||||||
|
put ' prxchange(''s/''!!''00''x!!''/\\u0000/'',-1, /* NUL */ ';
|
||||||
|
put ' prxchange(''s/''!!''0E''x!!''/\\u000E/'',-1, /* SS */ ';
|
||||||
|
put ' prxchange(''s/''!!''0F''x!!''/\\u000F/'',-1, /* SF */ ';
|
||||||
|
put ' prxchange(''s/''!!''01''x!!''/\\u0001/'',-1, /* SOH */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0002/'',-1, /* STX */ ';
|
||||||
|
put ' prxchange(''s/''!!''02''x!!''/\\u0010/'',-1, /* DLE */ ';
|
||||||
|
put ' prxchange(''s/''!!''11''x!!''/\\u0011/'',-1, /* DC1 */ ';
|
||||||
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
put ' prxchange(''s/\\/\\\\/'',-1,&&name&i) ';
|
||||||
put ' )))))!!''"''; ';
|
put ' ))))))))))))!!''"''; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' %end; ';
|
put ' %end; ';
|
||||||
put ' run; ';
|
put ' run; ';
|
||||||
|
|||||||
Reference in New Issue
Block a user