Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Other silly questions.

218 views
Skip to first unread message

Shiva

unread,
Oct 22, 2014, 7:58:08 AM10/22/14
to
Hi everyone,

I have a few queries this time. I will try to keep my questions simple this time.

1) Most important question, first up. I'm running out of ideas to write TACL MACROs for. So as an exercise, can you people put up a list here for all the reasons you wrote macros for? If you could state the reasons (or situations which compelled you to develop some macros, I would try them as an exercise myself. Thanks a lot in advance for this one.

2) How do I use reference modifier with a variable in the WHERE clause of an Enform? Tried looking at the manual, ended up in vain, was unable to locate that.

3) Like Hercules for Mainframes, is there some mimic for the Tandem Guardian OS that I can use along with my Mac to learn TACL at home?

Now this is less technical, but I thought I'd give it a go.

4) Will recruiters consider your skills rather than experience if insisted? May be for a one year, two year experienced - a candidate might have strived to learn so much in that time; but he might not even be considered because of the lack of experience. (Asking for a friend, ;) )

5) I was told about the Indian NonStop group - but it seems to be very inactive - still my membership itself was not considered. And anyways, I'd love to join some active group in real life which would meet, discuss and think HP NS.

6) I'd also love to learn TACL from HP itself, I was told that HP conducts trainings for that? Would they happen to do so in India? If so, how would I know?

As always, thanks for your replies and comments. Much appreciated. :)

Keith Dick

unread,
Oct 22, 2014, 5:07:49 PM10/22/14
to
I can only answer one of your questions -- see below.

Shiva wrote:
> Hi everyone,
>
> I have a few queries this time. I will try to keep my questions simple this time.
>
> 1) Most important question, first up. I'm running out of ideas to write TACL MACROs for. So as an exercise, can you people put up a list here for all the reasons you wrote macros for? If you could state the reasons (or situations which compelled you to develop some macros, I would try them as an exercise myself. Thanks a lot in advance for this one.
>
> 2) How do I use reference modifier with a variable in the WHERE clause of an Enform? Tried looking at the manual, ended up in vain, was unable to locate that.

I'm not sure what you mean when you say "reference modifier". I probably could answer if I understood what you are asking.

The only guess I have, and I think it probably is wrong, is that you are asking about qualifying a field name by a group name or record name. You do that either of two ways:

record-name.field-name
group-name.field-name
or
field-name of record-name
field-name of group-name

But, as I said, I imagine this is not what you are asking about. Explain a little more about what you want to know, and I probably can answer.

Shiva

unread,
Oct 23, 2014, 2:05:48 AM10/23/14
to
Reference modifier is a mainframe COBOl term. Sorry to have been blunt, it is just like this.

A equals "string"

Now, A (2:3) gives you "tri". Meaning the string A from 2nd position to 3 characters length.

This is reference modifier.

wbreidbach

unread,
Oct 23, 2014, 4:07:19 AM10/23/14
to
In PL/I this is called substring, search for substring within the TACL Programming Guide.

Keith Dick

unread,
Oct 23, 2014, 7:41:29 AM10/23/14
to
Ah, now I understand what you are asking about.

ENFORM does not have exactly that. There is a way to test a portion of a character field using a pattern match in a logical expression:

field-name = [1 "tri" - ]

would be true if characters 2, 3, and 4 of field-name contained "tri" and false otherwise. Such an expression can appear in the WHERE clause, in the logical-expression of an IF/THEN/ELSE in the target item list or print item list, and maybe as a target item by itself, though I don't know for sure that is valid. This only allows for testing a substring of a field, not displaying it. For a complete description of a pattern, see chapter 3, section titled "Logical Expressions" of the Enform Plus Reference manual.

Another thing that ENFORM allows is to give a subscript ranch in a table reference:

field-name[2:4]

If field-name is the name of a field declared in the DDL as a table, something like:

03 field-name pic x occurs 20.

then

LIST field-name[2:4];

is equivalent to

LIST field-name[2], field-name[3], field-name[4];

The individual characters would be displayed with two spaces between each one, so that probably is not exactly what you would want. You could use @SPACE to set the horizontal spacing to 0:

SET @SPACE TO 0;
LIST field1, space 2, field2[2:4], space 2 field3;

Setting @SPACE to 0 makes the default spacing between columns be 0, and the explicit SPACE 2 between the other items makes the spacing betwwen them normal.

A 20-character field normally would be declared as:

03 field-name pic x(20).

You could use renames or redefines to overlay this with a declaration containing OCCURS and reference the alternate description of the field when you want to list a substring of the field. This is a bit awkward, of course.

So ENFORM does not have exactly what you ask about. You can get similar results, though not as simply as if substrings were included. SQL/MP snd SQL/MX have functions named SUBSTRING that allow the kind of references you are asking about almost as easily as the example you gave. But not in ENFORM.

Shiva

unread,
Oct 24, 2014, 1:44:19 AM10/24/14
to
Understood, thanks Keith for that explanation. Something told me that Enform would have been handicapped that way. Because no matter how I tried, I was unable to find ways to do it But your alternatives give me a round about way to achieve it. Great. :)

@Wolfgang: I never thought to look for it, in TACL. But that's a good place to start. But anyways there are other #CHARDEL et al functions that help us read the required position off a string of characters. Thanks btw :)

Anybody else willing to answer my other questions? :D

Hemanth

unread,
Oct 29, 2014, 5:39:56 AM10/29/14
to
1) Most important question, first up. I'm running out of ideas to write TACL MACROs for. So as an exercise, can you people put up a list here for all the reasons you wrote macros for? If you could state the reasons (or situations which compelled you to develop some macros, I would try them as an exercise myself. Thanks a lot in advance for this one.

Every shop has different requirements, so its purely based on your need, for example earlier we did tried to search a particular string in all programs(source code ) and written a macro, another macro which help me to change the server configuration without the need of Pathcom, Another macro which can compile irrespective of the language (basically inside the macro we identify the language)

4) Will recruiters consider your skills rather than experience if insisted? May be for a one year, two year experienced - a candidate might have strived to learn so much in that time; but he might not even be considered because of the lack of experience. (Asking for a friend, ;) )

Well, i would say its tough as in India we hardly have people who can assess your skills rather than your experience

5) I was told about the Indian NonStop group - but it seems to be very inactive - still my membership itself was not considered. And anyways, I'd love to join some active group in real life which would meet, discuss and think HP NS.

Indian NonStop User group is not active as other User groups, but hp India conducts business summits once in a year (not sure about present situation, they did couple of years back)


6) I'd also love to learn TACL from HP itself, I was told that HP conducts trainings for that? Would they happen to do so in India? If so, how would I know?

There is nothing better to learn anything by yourself, TIM is bible for Tandem , you can actually read the manual and do the stuff by yourself on your local shop

Keith Dick

unread,
Oct 30, 2014, 4:45:10 AM10/30/14
to
Sorry, I have to disagree with your last answer. For most people and most topics, nothing is better than a well-designed classroom training run by an instructor who is both a skilled instructor and one who understands the subject being taught. When I say nothing is better, I mean that nothing gives a good basic understanding of the subject faster with less effort on the part of the student and gives fewer incorrect ideas to the student. There are a few people who can learn from a manual better than they can from a well-organized and well-run class, but those people are few.

It certainly is possible for many, maybe most, people to learn from the manual entirely on their own, but it is not easy, and often they pick up incorrect ideas about how things work because they have no one to explain to them how to think about aspects of the product. More commonly, a student learns by a combination of getting tips from people in person at their office or in forums like this one and figuring things out on their own by reading the manual. That usually is better than having only the manual to draw on, but not as good as having a live instructor for a complete class.

Shiva

unread,
Nov 12, 2014, 2:11:46 PM11/12/14
to
Again, perfectly framed - Keith! I'm doing exactly what Hemanth says - but it kills me every time to consume so much hours to get very few facts. But that's the only way for me and I gracefully accept it for even that was invisible to me for sometime.

Then again, you work with the resources you get. And I'm thankful to have found this group in that regard. :)

And, thanks Hemanth for your answers. All those macros are already in place here too. Just going through the code to see how they work. Looks a bit easy to read code rather than attempt it!

Raj Vanjara

unread,
Nov 14, 2014, 6:12:01 AM11/14/14
to
1) Most important question, first up. I'm running out of ideas to write TACL MACROs for. So as an exercise, can you people put up a list here for all the reasons you wrote macros for? If you could state the reasons (or situations which compelled you to develop some macros, I would try them as an exercise myself. Thanks a lot in advance for this one.

Write some macro which can check volume free space and everytime if volume free space is less than 90% then your macro to check which are bigger file in given volumes, find their user and trigger an email to these user, stating this volume is about to FULL.

Write some utility which will access MEASCOM and when executed will generate some report for programs and will give some suggestions on the program performance.

If you have good coding practices, then use write some TACL which will verify if the underlined program follows all the standard coding practices.
0 new messages