mirror of
https://github.com/sasjs/core.git
synced 2025-12-18 17:24:36 +00:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b66c59dc0 | ||
| 96be5c65dc | |||
| 8f6ef569e1 | |||
| ff45c5a8b8 | |||
| fb5f1c820a |
3
.gitpod.yml
Normal file
3
.gitpod.yml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
vscode:
|
||||||
|
extensions:
|
||||||
|
- sasjs.sasjs-for-vscode@1.2.6:AJmar85B1uSEapxRaRQGrQ==
|
||||||
79
all.sas
79
all.sas
@@ -10301,16 +10301,15 @@ run;
|
|||||||
%end;
|
%end;
|
||||||
|
|
||||||
%mend;/**
|
%mend;/**
|
||||||
@file mm_updatestpservertype.sas
|
@file
|
||||||
@brief Updates a type 2 stored process to run on STP or WKS context
|
@brief Updates a type 2 stored process to run on STP or WKS context
|
||||||
@details Only works on Type 2 (9.3 compatible) STPs
|
@details Only works on Type 2 (9.3 compatible) STPs
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
%mm_updatestpservertype(target=/some/meta/path/myStoredProcess
|
%mm_updatestpservertype(target=/some/meta/path/myStoredProcess
|
||||||
,type=WKS)
|
,type=WKS)
|
||||||
|
|
||||||
<h4> SAS Macros </h4>
|
|
||||||
|
|
||||||
@param target= full path to the STP being deleted
|
@param target= full path to the STP being deleted
|
||||||
@param type= Either WKS or STP depending on whether Workspace or Stored Process
|
@param type= Either WKS or STP depending on whether Workspace or Stored Process
|
||||||
@@ -10375,31 +10374,40 @@ run;
|
|||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
%mm_updatestpsourcecode(stp=/my/metadata/path/mystpname
|
%mm_updatestpsourcecode(stp=/my/metadata/path/mystpname
|
||||||
,stpcode="/file/system/source.sas")
|
,stpcode="/file/system/source.sas")
|
||||||
|
|
||||||
|
@param [in] stp= the BIP Tree folder path plus Stored Process Name
|
||||||
@param stp= the BIP Tree folder path plus Stored Process Name
|
@param [in] stpcode= the source file (or fileref) containing the SAS code to load
|
||||||
@param stpcode= the source file (or fileref) containing the SAS code to load
|
|
||||||
into the stp. For multiple files, they should simply be concatenated first.
|
into the stp. For multiple files, they should simply be concatenated first.
|
||||||
@param minify= set to YES in order to strip comments, blank lines, and CRLFs.
|
@param [in] minify= set to YES in order to strip comments, blank lines, and CRLFs.
|
||||||
|
|
||||||
@param frefin= change default inref if it clashes with an existing one
|
@param frefin= deprecated - a unique fileref is now always used
|
||||||
@param frefout= change default outref if it clashes with an existing one
|
@param frefout= deprecated - a unique fileref is now always used
|
||||||
@param mDebug= set to 1 to show debug messages in the log
|
@param mDebug= set to 1 to show debug messages in the log
|
||||||
|
|
||||||
@version 9.3
|
@version 9.3
|
||||||
@author Allan Bowe
|
@author Allan Bowe
|
||||||
|
|
||||||
|
<h4> SAS Macros </h4>
|
||||||
|
@li mf_getuniquefileref.sas
|
||||||
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
%macro mm_updatestpsourcecode(stp=
|
%macro mm_updatestpsourcecode(stp=
|
||||||
,stpcode=
|
,stpcode=
|
||||||
,minify=NO
|
,minify=NO
|
||||||
|
,mdebug=0
|
||||||
|
/* deprecated */
|
||||||
,frefin=inmeta
|
,frefin=inmeta
|
||||||
,frefout=outmeta
|
,frefout=outmeta
|
||||||
,mdebug=0
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
%if &frefin ne inmeta or &frefout ne outmeta %then %do;
|
||||||
|
%put %str(WARN)ING: the frefin and frefout parameters will be deprecated in
|
||||||
|
an upcoming release.;
|
||||||
|
%end;
|
||||||
|
|
||||||
/* first, check if STP exists */
|
/* first, check if STP exists */
|
||||||
%local tsuri;
|
%local tsuri;
|
||||||
%let tsuri=stopifempty ;
|
%let tsuri=stopifempty ;
|
||||||
@@ -10437,7 +10445,9 @@ run;
|
|||||||
%return;
|
%return;
|
||||||
%end;
|
%end;
|
||||||
|
|
||||||
filename &frefin temp lrecl=32767;
|
%local frefin frefout;
|
||||||
|
%let frefin=%mf_getuniquefileref();
|
||||||
|
%let frefout=%mf_getuniquefileref();
|
||||||
|
|
||||||
/* write header XML */
|
/* write header XML */
|
||||||
data _null_;
|
data _null_;
|
||||||
@@ -10450,7 +10460,7 @@ run;
|
|||||||
/* write contents */
|
/* write contents */
|
||||||
%if %length(&stpcode)>2 %then %do;
|
%if %length(&stpcode)>2 %then %do;
|
||||||
data _null_;
|
data _null_;
|
||||||
file &frefin mod;
|
file &frefin lrecl=32767 mod;
|
||||||
infile &stpcode lrecl=32767;
|
infile &stpcode lrecl=32767;
|
||||||
length outstr $32767;
|
length outstr $32767;
|
||||||
input outstr ;
|
input outstr ;
|
||||||
@@ -10479,9 +10489,6 @@ data _null_;
|
|||||||
</UpdateMetadata>";
|
</UpdateMetadata>";
|
||||||
run;
|
run;
|
||||||
|
|
||||||
|
|
||||||
filename &frefout temp;
|
|
||||||
|
|
||||||
proc metadata in= &frefin out=&frefout;
|
proc metadata in= &frefin out=&frefout;
|
||||||
run;
|
run;
|
||||||
|
|
||||||
@@ -10493,6 +10500,10 @@ run;
|
|||||||
put _infile_;
|
put _infile_;
|
||||||
run;
|
run;
|
||||||
%end;
|
%end;
|
||||||
|
%else %do;
|
||||||
|
filename &frefin clear;
|
||||||
|
filename &frefout clear;
|
||||||
|
%end;
|
||||||
|
|
||||||
%mend;/**
|
%mend;/**
|
||||||
@file mm_webout.sas
|
@file mm_webout.sas
|
||||||
@@ -11153,23 +11164,23 @@ run;
|
|||||||
rec = "20"x;
|
rec = "20"x;
|
||||||
do while(fread(filein)=0);
|
do while(fread(filein)=0);
|
||||||
rc = fget(filein,rec,1);
|
rc = fget(filein,rec,1);
|
||||||
if rec='"' then do;
|
if rec='"' then do; /* DOUBLE QUOTE */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'"');rc =fwrite(fileid);
|
rc =fput(fileid,'"');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='0A'x then do;
|
else if rec='0A'x then do; /* LF */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
|
||||||
rc =fput(fileid,'r');rc =fwrite(fileid);
|
|
||||||
end;
|
|
||||||
else if rec='0D'x then do;
|
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'n');rc =fwrite(fileid);
|
rc =fput(fileid,'n');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='09'x then do;
|
else if rec='0D'x then do; /* CR */
|
||||||
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
|
rc =fput(fileid,'r');rc =fwrite(fileid);
|
||||||
|
end;
|
||||||
|
else if rec='09'x then do; /* TAB */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'t');rc =fwrite(fileid);
|
rc =fput(fileid,'t');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='5C'x then do;
|
else if rec='5C'x then do; /* BACKSLASH */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
@@ -11809,23 +11820,23 @@ run;
|
|||||||
rec = "20"x;
|
rec = "20"x;
|
||||||
do while(fread(filein)=0);
|
do while(fread(filein)=0);
|
||||||
rc = fget(filein,rec,1);
|
rc = fget(filein,rec,1);
|
||||||
if rec='"' then do;
|
if rec='"' then do; /* DOUBLE QUOTE */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'"');rc =fwrite(fileid);
|
rc =fput(fileid,'"');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='0A'x then do;
|
else if rec='0A'x then do; /* LF */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
|
||||||
rc =fput(fileid,'r');rc =fwrite(fileid);
|
|
||||||
end;
|
|
||||||
else if rec='0D'x then do;
|
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'n');rc =fwrite(fileid);
|
rc =fput(fileid,'n');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='09'x then do;
|
else if rec='0D'x then do; /* CR */
|
||||||
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
|
rc =fput(fileid,'r');rc =fwrite(fileid);
|
||||||
|
end;
|
||||||
|
else if rec='09'x then do; /* TAB */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'t');rc =fwrite(fileid);
|
rc =fput(fileid,'t');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='5C'x then do;
|
else if rec='5C'x then do; /* BACKSLASH */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
/**
|
/**
|
||||||
@file mm_updatestpservertype.sas
|
@file
|
||||||
@brief Updates a type 2 stored process to run on STP or WKS context
|
@brief Updates a type 2 stored process to run on STP or WKS context
|
||||||
@details Only works on Type 2 (9.3 compatible) STPs
|
@details Only works on Type 2 (9.3 compatible) STPs
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
%mm_updatestpservertype(target=/some/meta/path/myStoredProcess
|
%mm_updatestpservertype(target=/some/meta/path/myStoredProcess
|
||||||
,type=WKS)
|
,type=WKS)
|
||||||
|
|
||||||
<h4> SAS Macros </h4>
|
|
||||||
|
|
||||||
@param target= full path to the STP being deleted
|
@param target= full path to the STP being deleted
|
||||||
@param type= Either WKS or STP depending on whether Workspace or Stored Process
|
@param type= Either WKS or STP depending on whether Workspace or Stored Process
|
||||||
|
|||||||
@@ -6,31 +6,40 @@
|
|||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
%mm_updatestpsourcecode(stp=/my/metadata/path/mystpname
|
%mm_updatestpsourcecode(stp=/my/metadata/path/mystpname
|
||||||
,stpcode="/file/system/source.sas")
|
,stpcode="/file/system/source.sas")
|
||||||
|
|
||||||
|
@param [in] stp= the BIP Tree folder path plus Stored Process Name
|
||||||
@param stp= the BIP Tree folder path plus Stored Process Name
|
@param [in] stpcode= the source file (or fileref) containing the SAS code to load
|
||||||
@param stpcode= the source file (or fileref) containing the SAS code to load
|
|
||||||
into the stp. For multiple files, they should simply be concatenated first.
|
into the stp. For multiple files, they should simply be concatenated first.
|
||||||
@param minify= set to YES in order to strip comments, blank lines, and CRLFs.
|
@param [in] minify= set to YES in order to strip comments, blank lines, and CRLFs.
|
||||||
|
|
||||||
@param frefin= change default inref if it clashes with an existing one
|
@param frefin= deprecated - a unique fileref is now always used
|
||||||
@param frefout= change default outref if it clashes with an existing one
|
@param frefout= deprecated - a unique fileref is now always used
|
||||||
@param mDebug= set to 1 to show debug messages in the log
|
@param mDebug= set to 1 to show debug messages in the log
|
||||||
|
|
||||||
@version 9.3
|
@version 9.3
|
||||||
@author Allan Bowe
|
@author Allan Bowe
|
||||||
|
|
||||||
|
<h4> SAS Macros </h4>
|
||||||
|
@li mf_getuniquefileref.sas
|
||||||
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
%macro mm_updatestpsourcecode(stp=
|
%macro mm_updatestpsourcecode(stp=
|
||||||
,stpcode=
|
,stpcode=
|
||||||
,minify=NO
|
,minify=NO
|
||||||
|
,mdebug=0
|
||||||
|
/* deprecated */
|
||||||
,frefin=inmeta
|
,frefin=inmeta
|
||||||
,frefout=outmeta
|
,frefout=outmeta
|
||||||
,mdebug=0
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
%if &frefin ne inmeta or &frefout ne outmeta %then %do;
|
||||||
|
%put %str(WARN)ING: the frefin and frefout parameters will be deprecated in
|
||||||
|
an upcoming release.;
|
||||||
|
%end;
|
||||||
|
|
||||||
/* first, check if STP exists */
|
/* first, check if STP exists */
|
||||||
%local tsuri;
|
%local tsuri;
|
||||||
%let tsuri=stopifempty ;
|
%let tsuri=stopifempty ;
|
||||||
@@ -68,7 +77,9 @@ run;
|
|||||||
%return;
|
%return;
|
||||||
%end;
|
%end;
|
||||||
|
|
||||||
filename &frefin temp lrecl=32767;
|
%local frefin frefout;
|
||||||
|
%let frefin=%mf_getuniquefileref();
|
||||||
|
%let frefout=%mf_getuniquefileref();
|
||||||
|
|
||||||
/* write header XML */
|
/* write header XML */
|
||||||
data _null_;
|
data _null_;
|
||||||
@@ -81,7 +92,7 @@ run;
|
|||||||
/* write contents */
|
/* write contents */
|
||||||
%if %length(&stpcode)>2 %then %do;
|
%if %length(&stpcode)>2 %then %do;
|
||||||
data _null_;
|
data _null_;
|
||||||
file &frefin mod;
|
file &frefin lrecl=32767 mod;
|
||||||
infile &stpcode lrecl=32767;
|
infile &stpcode lrecl=32767;
|
||||||
length outstr $32767;
|
length outstr $32767;
|
||||||
input outstr ;
|
input outstr ;
|
||||||
@@ -110,9 +121,6 @@ data _null_;
|
|||||||
</UpdateMetadata>";
|
</UpdateMetadata>";
|
||||||
run;
|
run;
|
||||||
|
|
||||||
|
|
||||||
filename &frefout temp;
|
|
||||||
|
|
||||||
proc metadata in= &frefin out=&frefout;
|
proc metadata in= &frefin out=&frefout;
|
||||||
run;
|
run;
|
||||||
|
|
||||||
@@ -124,5 +132,9 @@ run;
|
|||||||
put _infile_;
|
put _infile_;
|
||||||
run;
|
run;
|
||||||
%end;
|
%end;
|
||||||
|
%else %do;
|
||||||
|
filename &frefin clear;
|
||||||
|
filename &frefout clear;
|
||||||
|
%end;
|
||||||
|
|
||||||
%mend;
|
%mend;
|
||||||
3408
package-lock.json
generated
3408
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -28,9 +28,6 @@
|
|||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "echo \"Error: no test specified\" && exit 1",
|
"test": "echo \"Error: no test specified\" && exit 1",
|
||||||
"docs": "./sasjs/utils/build.sh"
|
"docs": "sasjs doc && ./sasjs/utils/build.sh"
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@sasjs/cli": "^2.4.0"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8" />
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=9" />
|
<meta http-equiv="X-UA-Compatible" content="IE=9" />
|
||||||
|
<meta property="og:type" content="website">
|
||||||
|
<meta name="author" content="Allan Bowe">
|
||||||
<meta name="generator" content="Doxygen $doxygenversion" />
|
<meta name="generator" content="Doxygen $doxygenversion" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<!--BEGIN PROJECT_NAME-->
|
<!--BEGIN PROJECT_NAME-->
|
||||||
|
|||||||
@@ -1,12 +1,9 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
####################################################################
|
####################################################################
|
||||||
# PROJECT: Macro Core Docs Build #
|
# PROJECT: Macro Core Docs Build #
|
||||||
|
# To execute, use the npm command (npm run docs) #
|
||||||
####################################################################
|
####################################################################
|
||||||
|
|
||||||
cd ../..
|
|
||||||
|
|
||||||
sasjs doc
|
|
||||||
|
|
||||||
# refresh github pages site
|
# refresh github pages site
|
||||||
rm -rf sasjsbuild/docsite
|
rm -rf sasjsbuild/docsite
|
||||||
git clone git@github.com:sasjs/core.github.io.git sasjsbuild/docsite
|
git clone git@github.com:sasjs/core.github.io.git sasjsbuild/docsite
|
||||||
|
|||||||
@@ -217,23 +217,23 @@ run;
|
|||||||
rec = "20"x;
|
rec = "20"x;
|
||||||
do while(fread(filein)=0);
|
do while(fread(filein)=0);
|
||||||
rc = fget(filein,rec,1);
|
rc = fget(filein,rec,1);
|
||||||
if rec='"' then do;
|
if rec='"' then do; /* DOUBLE QUOTE */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'"');rc =fwrite(fileid);
|
rc =fput(fileid,'"');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='0A'x then do;
|
else if rec='0A'x then do; /* LF */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
|
||||||
rc =fput(fileid,'r');rc =fwrite(fileid);
|
|
||||||
end;
|
|
||||||
else if rec='0D'x then do;
|
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'n');rc =fwrite(fileid);
|
rc =fput(fileid,'n');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='09'x then do;
|
else if rec='0D'x then do; /* CR */
|
||||||
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
|
rc =fput(fileid,'r');rc =fwrite(fileid);
|
||||||
|
end;
|
||||||
|
else if rec='09'x then do; /* TAB */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'t');rc =fwrite(fileid);
|
rc =fput(fileid,'t');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='5C'x then do;
|
else if rec='5C'x then do; /* BACKSLASH */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
|
|||||||
@@ -566,23 +566,23 @@ run;
|
|||||||
rec = "20"x;
|
rec = "20"x;
|
||||||
do while(fread(filein)=0);
|
do while(fread(filein)=0);
|
||||||
rc = fget(filein,rec,1);
|
rc = fget(filein,rec,1);
|
||||||
if rec='"' then do;
|
if rec='"' then do; /* DOUBLE QUOTE */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'"');rc =fwrite(fileid);
|
rc =fput(fileid,'"');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='0A'x then do;
|
else if rec='0A'x then do; /* LF */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
|
||||||
rc =fput(fileid,'r');rc =fwrite(fileid);
|
|
||||||
end;
|
|
||||||
else if rec='0D'x then do;
|
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'n');rc =fwrite(fileid);
|
rc =fput(fileid,'n');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='09'x then do;
|
else if rec='0D'x then do; /* CR */
|
||||||
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
|
rc =fput(fileid,'r');rc =fwrite(fileid);
|
||||||
|
end;
|
||||||
|
else if rec='09'x then do; /* TAB */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'t');rc =fwrite(fileid);
|
rc =fput(fileid,'t');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
else if rec='5C'x then do;
|
else if rec='5C'x then do; /* BACKSLASH */
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
rc =fput(fileid,'\');rc =fwrite(fileid);
|
rc =fput(fileid,'\');rc =fwrite(fileid);
|
||||||
end;
|
end;
|
||||||
|
|||||||
Reference in New Issue
Block a user