Skip to content

_SASPROGRAMFILE variable in VS Code #1419

@sbxans

Description

@sbxans

Describe the bug

I have created a program "test_SASPROGRAMFILE.sas" containing the statement: '%put &_SASPROGRAMFILE;'.
In the SAS Studio Explorer view, it appears in
xyz/Files/general/biostat/test/test_SASPROGRAMFILE.sas;
in VScode Explorer view, it appears in
SAS Server/Home/xyz/general/bioatat/test/test_SASPROGRAMFILE.sas.

When I run the program in SAS Studio, the value printed in the log is:
/xyz/general/biostat/test/test_SASPROGRAMFILE.sas

When I run the program in VScode, it is:
\test_SASPROGRAMFILE.sas

Why does the output differ in both environments (especially the absence of a meaningful path in VScode)? Can that be changed?

Steps to reproduce

  1. Statements on log lines 9-13 (below) seem to be prepended by the submitting client (the SAS extension for VS Code), and in this case it doesn't seem to resolve the SAS Server path when constructing the %let statement on log line 13. Non-SAS-Server (aka "local" aka "client-side") paths seem to all resolve as expected.

9 /** LOG_START_INDICATOR **/
10 title;footnote;ods all close;
11 ods graphics on;
12 ods html5(id=vscode) style=Illuminate options(bitmap_mode='inline' svg_mode='inline');
NOTE: Writing HTML5(VSCODE) Body file: sashtml1.htm
13 %let _SASPROGRAMFILE = %nrquote(%nrstr(\test_SASPROGRAMFILE.sas));
14 %put &_SASPROGRAMFILE;
\test_SASPROGRAMFILE.sas
2.

SAS code (if applicable)

Expected behavior

No response

Screenshots

No response

Client OS

No response

Extension version

v1.13.0

SAS version

Viya 2024.12

Additional context

No response

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions