BookmarkSubscribeRSS Feed
ckx
Quartz | Level 8 ckx
Quartz | Level 8

I would like to be able to start EG with a different set of options for LAN use versus remote use. I've found the EG startup options using "<path>SEGuide.exe /?" in a command window. The "/listoptions" option produces a long list of option settings that can be used as startup options. For example:

SEGuide.exe /option:autoDisplayGenDataOrResults=TRUE /option:graphDevice=ActiveX

Apparently, each option has to be set as a separate "/option" specification, I wasn't able to list several options separted by ";". Also, 1 or 0 didn't work as booleans, it has to be true of false.

However, the startup option I'm really interested in is the following:

/option:@AlternateOptionFileName - Specific an alternative options configuration file for use. Format: @"/Path/Name".

(It should be "specify" but this is what was reported in the startup options)

Unfortunately, I can't get the configuration file to work. I've placed some startup options in a text file and started EG with

SEGuide.exe" /option:@"\\<server>\private\jhendrickx\SASEG.profile"

This has no impact on the settings but did create a file SASEG.profile.xml. This file had the same contents as %appdata%\SAS\EnterpriseGuide\4.3\profile.xml. I tried modifying this file and using it as startup file but that had no impact.

So, has anyone else figured out how to get the startup file to work? There's no documentation I can find anywhere.

I'm using EG 4.3 with SAS 9.2 under WinXP.

10 REPLIES 10
ChrisHemedinger
Community Manager

You're correct - this process for command-line options is not documented.  It was added mainly to allow users to override certain options at startup, primarily for the use case of creating different shortcuts to the SEGuide.exe command for different purposes.  The syntax and "doc" is a bit "programmer-y", and so it's not a publicly supported feature.

If you want to give it a try, create a copy of the EGOptions.xml file WITH an XML file extension.  Change a simple option value in the file and launch the process like this:

SEGuide.exe /option:@"C:\temp\EGOptions.xml"

EG will read the options from the file, but it will might also overwrite the file (if it can) when you close EG (with any options that you change in the UI).

Here is another command-line option that you might also be interested in:

Using SAS Enterprise Guide with different SAS environments - The SAS Dummy

Chris

It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.
ckx
Quartz | Level 8 ckx
Quartz | Level 8

Well, I gave it a try but it doesn't work for me. The settings are not read at EG startup but are written at EG shutdown. Either manually editing (in my case) C:\etc\EGOptions.xml or changing the settings with the GUI in EG makes no difference. If I change options in a session without using /option:@ then those setting will be used next time I start EG with /option:@ and those settings will be written to C:\etc\EGOptions.xml. Does this option work as intended for anyone else?

marilyn934
Calcite | Level 5

I wish I could use this to connect directly to our netezza server when I open it like it does when I use base SAS Smiley Sad  All the data I use is there and I would like to be able to just select the table I want instead of pointing it to netezza each time...

ChrisHemedinger
Community Manager

Marilyn,

For that scenario, you might find the Autoexec process flow helpful.

You asked for it: the Autoexec process flow - The SAS Dummy

Or the Tools->Options->SAS Program->Submit SAS code when server is connected option.

Chris

It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.
SDV
Obsidian | Level 7 SDV
Obsidian | Level 7

Thanks Chris.  This works for me.  I was able to make changes in a different EGOptions.xml file, specify it on the command line as described, and I checked the options via EG once it started to see that the different options I set where there. The changes surfaced in EG.

I could see creating a different shortcut for EG to start with the different options.

ChrisHemedinger
Community Manager

Great! Glad this helped.

It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.
KeithAdamsAtSAS
SAS Employee

Chris, you say:

 

If you want to give it a try, create a copy of the EGOptions.xml file WITH an XML file extension.  Change a simple option value in the file and launch the process like this:

 

I'm using EG 7.15 and maybe they did away with the EGOPTION.xml file. Also, I'm mildly confused when you say "create a copy of the EGOptions.xml file WITH an XML file extension" - doesn't it already have an xml file extension.

 

Anyway, the basic problem is I want to change a startup system option for EG 7.15 - are there any instructions for that?

 

Thanks! Keith

SASKiwi
PROC Star

If the SAS startup option you want to apply can only be done when SAS is started then it needs to be added to the SAS server AUTOEXEC or CONFIG  EG is connecting to.

aaaaaaa1
Calcite | Level 5

Chris,

I am the SAS admin and I'd like to create a new macro variable from the value of _CLIENTMACHINE.  So, when my users first open up EG this new macro is created.  We are running the Grid in Linux.  I have over 800 users that log into 4 Windows jump servers to connect to EG.  Therefore, EG is not on each client machine.  It's obviously shared across these 4 jump servers. So, putting this code in all 800 users startup autoexec profile is not very feasible.  

 

I put my code to create this macro variable in the appserver_autoexec.usermods.sas however I've been informed the _CLIENTMACHINE is not set when EG first starts up.  What this does is creates a warning message in every users SAS log which means every job on the User Activity report shows as failed.

 

I've been informed that I can use the xmloptions.xml file, however I can't seem to get that to work either.  I've been informed to put a %include statement in the strOnServerConnectSASCode section where the %include program has my code to create my new macro.  when I do this I get nothing.

 

Any insight or help would be greatly appreciated!!

 

Marc

 

 

CaseySmith
SAS Employee

Hi Marc,

 

The _CLIENTMACHINE macro variable is defined in the EG initialization code that is submitted by EG when a connection is first made to a workspace server.  Therefore, you can use that macro variable in the "Submit SAS code when server is connected" option (in Tools->Options->SAS Programs), including to define your own macro variable that uses it.  For example, I added this code to the "Submit SAS code when server is connected" option:

%let myMacroVar=client machine: &_CLIENTMACHINE;

 

Then, when I submit "%put &myMacroVar;" in a new EG session (which causes a new workspace connection), the new macro is resolved.

 

That option is stored in the EGOptions.xml file stored in each user's appdata location (ex. %appdata%\SAS\EnterpriseGuide\8).  Yes, it is stored in the xml element named "strOnServerConnectSASCode" in each user's EGOptions.xml file.  (So, you'd have to edit all the user's EGOptions.xml file to add -- you'd probably want a script.)  Yes, you could include code in that option to %include your .sas file to define your macro var.  To see the server initialization log, where this code executes, right-click the server in the Servers pane (after you've connected to the server), select Properties, Software, then View Initialization Log.

 

Casey


Register today and join us virtually on June 16!
sasglobalforum.com | #SASGF

View now: on-demand content for SAS users

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

SAS Enterprise Guide vs. SAS Studio

What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 10 replies
  • 10299 views
  • 4 likes
  • 8 in conversation