× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I presume you mean to block existing QPADEV* virtual devices?

The fastest way is to set up workstation entries in the interactive
subsystem so the entry might look like:
ADDWSE SBSD(QINTER) WRKSTN(QPADEV*) AT(*ENTER) (change to your
subsystem name and library etc.)
Now those sessions will only start after someone does a transfer job into
that subsystem, no sign on screen will be offered.

Why not just remove all the existing ones, then they will all be new? You
don't specify a reason so I'm being a bit snarky.

You can set the ACS session manager to create devices with whatever prefix
you would like. That of course means touching all the ACS sessions, maybe
not practical

The best and most controllable way is to write a routing program that would
simply reject the session with the names you put into your control language
program.
The program must perform a couple of things but what you really want to do
is RTVJOBA JOB(&DEVICE) (Device being defined as char len(10) ) , then I
would use a case statement to decide what to do. For instance workstations
that start with ACCT* could be transferred into a subsystem just for
Accounting, At that point you can also retrieve the device description and
make decisions on those attributes. For instance, ones created prior to
today are rejected. If you don't want that session to start, simply end the
routing step.

Here is the required stuff in a routing program. : (note the
infinite loop, this is all QCMD actually does anyway) The attributes are
variables retrieved from the user profile.

IF (&TYPE *EQ '1') THEN(DO)
IF (&ATNPGM *EQ '*SYSVAL') THEN(DO)
RTVSYSVAL QATNPGM RTNVAR(&ATNPGMALL)
CHGVAR &ATNPGM VALUE(%SST(&ATNPGMALL 1 10))
CHGVAR &ATNPGMLIB VALUE(%SST(&ATNPGMALL 11 10))
ENDDO
IF (&ATNPGM *EQ '*ASSIST') THEN(DO)
CHGVAR &ATNPGM VALUE(QEZMAIN)
CHGVAR &ATNPGMLIB VALUE(QSYS)
ENDDO
IF (&ATNPGM *NE '*NONE') THEN(DO)
SETATNPGM &ATNPGMLIB/&ATNPGM
ENDDO
IF (&INLPGM *NE '*NONE') THEN(DO)
CALL &INLPGMLIB/&INLPGM
ENDDO
START: IF (&INLMNU *NE '*SIGNOFF ') THEN(DO)
GO &INLMNULIB/&INLMNU
ENDDO
IF (&INLMNU *EQ '*SIGNOFF ') THEN(DO)
SIGNOFF
ENDDO
GOTO START
ENDDO

ENDJOB JOB(&NBR/&USER/&DEVICE) OPTION(*IMMED)

NOSBSERR:
CHGVAR &MSGQ VALUE(QSYSMSG)
CHKOBJ &MSGQ OBJTYPE(*MSGQ)
MONMSG CPF9801 EXEC(CHGVAR &MSGQ VALUE(*SYSOPR))
SNDPGMMSG MSGID(CPF9898) MSGF(QCPFMSG) MSGDTA('User +
profile' *BCAT &USER *BCAT 'unable to +
connect to subsystem' *BCAT &JOBQ) +
TOMSGQ(&MSGQ)
SIGNOFF
ENDPGM


That last bit will show a "nice" screen informing the user they are not
allowed to sign on, then ends the job. if you need the entire program
example I can post it.
--
Jim Oberholtzer
Chief Technical Architect
Agile Technology Architects


On Tue, Feb 14, 2023 at 8:53 AM Justin Taylor <jtaylor.0ab@xxxxxxxxx> wrote:

Is there a way to block QPADEV* 5250 sessions but still allow new named
5250 virtual devices to be created automatically?

TIA
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.