× 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 did, I figured it out and the question I asked was, 'this is all so very very complex why on earth would IBM have supplied this stuff?'. Why would you use any of this in preference to compiled DDS? I have no idea why, perhaps ask IBM."

Well I can answer the question as far as DSM is concerned since I was involved in reviewing the design documents.

Simply put, DSM was intended to provide an option for ISVs porting C-based applications to the platform. At one time there were hopes that an X-term interface could be developed for the system** but when that scheme fell apart for a number of reasons, DSM was proposed as a better alternative than forcing them to try and convert to DDS - a task which was all but impossible.

** Before anyone else points it out ... yes an X-term interface was "developed" but was not "productized". Subsequently there was an X-Term product marketed by a Rochester-based company. Don't know what happened to it. X-term via PASE would be the way to go these days I guess.


Jon P

On Aug 18, 2022, at 8:00 PM, Frank Kolmann <Frank.Kolmann@xxxxxxxxx> wrote:

Sure,

The purpose of DSPINFO was how to do RPG code to drive the QDFRTVFD API.
So now you can recover DDS source or get DDS source from the compiled object.

Someone used DSPINFO in a case of a package that did not supply DDS source , to scan the DDS for certain keywords, forget which.

Having written DSPINFO I was thinking how to use the retrieved information.
There existed some REXX code that printed DDS layouts, btw the REXX code had a major flaw, so I decided I can show the DDS on a screen.
I decided to use DSM to disply the DDS. So I wrote DSMFD. It is based on work by Scott Klements.
DSMFD has NO F specs but can show any DDS screen. DSMFD works somewhat like SDA in showing DDS but it does if from the object not source.
DSMFD has a secondary purpose, being how to code using DSM Dynamic Screen Manager.

One can ask what is the point of all this, well,
Have you ever wondered what UDDS (User Defined Data Streams) was and how to use it?
Have you ever wondered what DSM (Dynamic Screen Manager) was and how to use it?
Have you ever wondered what the QDFRTCVD API did and how to use it?

I did, I figured it out and the question I asked was, 'this is all so very very complex why on earth would IBM have supplied this stuff?'.
Why would you use any of this in preference to compiled DDS? I have no idea why, perhaps ask IBM.
Its a bit like asking why would you code in assembler when you had compilers.

It is not a solution to a problem. I did this code as a learning exercise. I also learnt C and have a C version of DSPINFO.
Its on midrange.com https://wiki.midrange.com/index.php/CQDFRTVFD.
(fwiw The midrange.com link to the RPG version is broken and I cant fix it, I did try to put on a new page but my logon to midrange.com is broken and I cant reset it.)
( I did send a message to support@xxxxxxxxxxxxxxxxxxxx but I got no reply, I think midrange has a email address for me that I discontinued.)

hth

Frank



On 19/08/2022 9:10 am, Don Brown via RPG400-L wrote:
Giday Frank,

Just curious if you would share a few use cases of your utility ?

I can see a lot of great work but I am not having the light bulb moment as
to the problem the solution provides.

Cheers

Don



From: "Frank Kolmann" <Frank.Kolmann@xxxxxxxxx>
To: rpg400-l@xxxxxxxxxxxxxxxxxx
Date: 18/08/2022 09:54 AM
Subject: DSM example (was Using a timeout with display files)
Sent by: "RPG400-L" <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx>



Hi Patrik

DSM example program. DSMFD.

I have this code on GITHUB. (Is it just me or is GITHUB so very very
difficult to use?)
https://github.com/FrankKolmann/FranksRPG

It is a program that shows on a screen what a DDS file looks like using
the compiled object.
It uses DSM to show. Also there is a progam that uses the QDFDRTVFD api
to get the DDS info.

Regards
Frank



On 16/08/2022 7:07 pm, Patrik Schindler wrote:
Hello Javier,

Am 16.08.2021 um 00:04 schrieb Javier Sanchez
<javiersanchezbarquero@xxxxxxxxx>:
I've been dealing with the DSM documentation, but this is barely the
API prototypes and the several data structures and constant values that
these use. There are no significant examples and what I've found on the
Web is also poor material.
So it's not just me. :-) Good to know!

I'll have to wrap up my sleeves and try.
I'd love to see some DSM examples somewhen, if you're willing to share
your insights!
Since the input buffer is still there, that's the right moment to
invoke the *QsnReadImm* API which is a non-AID-generating read input from
the screen, and that should probably bring me the data that I'm expecting:
the one the user may have typed in.
This proves (in a twisted way) my guts feeling of "there must be a
possibility to do this". You know, the OS can set the message waiting
indicator on a terminal at any time, without intervention from the
currently running application. This made me think there *must* be an
asynchronous way to obtain data from the terminal without any read or
write in the usual way.
:wq! PoC




--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.

Help support midrange.com by shopping at amazon.com with our affiliate link: https://amazon.midrange.com


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.