On 8/20/20, 12:23 PM, "CMSTSO Pipelines Discussion List on behalf of Alan
Altmark" <[email protected] on behalf of [email protected]>
wrote:
And I reject the "cruft" reference. The NAMEFIND command is very basic.
Not only can it look up based on the break tag, it can search based on
other values:
NAMEFIND :[email protected] :userid (BREAKTAG :dn FILE X500
I would invite you to look at the entry for NAMEFIND in the CMS Command
reference again. Anything that has a syntax diagram that goes on for a page and
a half is not basic or straightforward.
> Only NAMEFIND *knows* if an entry already exists. Humans are good at
> making claims that are untrue. "It doesn't exist" is one such.
On the contrary, if I know that I am starting with a newly created empty file
that has no entries in it, then I do know concretely an entry does not exist.
What I want to avoid is an increasing ADD time per entry if I know there is no
possibility for entries to exist or I have already done any vetting for
duplicates that needs to be done outside of the tool, I'm letting the tool know
in advance that it doesn't have to look. In the interest of KISS, I'm not
insisting on APPEND if that gets us to the point of actually coding this; it's
an advisory option to convey my intent to the process; something I would find
useful but isn't necessary.
> I'd also really like to skip using the stack now that we can manipulate
REXX
> variables directly. Just set up or return a REXX stem and be done with
it.
Done. NAMEFIND supports both.
You've just illustrated my point about cruft. NAMEFIND has a lot of old
features to deal with restrictions or scenarios in CMS that no longer exist.
You can't prune it out because it would break existing code. Useful features
are hidden in the forest of old stuff. If you only use a subset of the
functionality, then yes it's not that hard. The point is to see the trees in
the clutter of the forest of options, which is why I was suggesting a new
command instead of adding more stuff to NAMEFIND.
To bring this back to CMS Pipelines and my original question, suppose I had a
file containing the following lines:
:nick.DBOYES :userid.dboyes :node.SNAVM4 :notebook.DBOYES
:name.David Boyes
:nick.CLOWN :userid.bozo :node.sinenomine.net :notebook.FOO
:name.Bozo Clown
:nick.TEST
Since there isn't an existing Pipe stage to deal with NAMES files, what would
be the most efficient way to remove the entry for CLOWN using CMS Pipes? If I
wanted to update one of the attributes (the tags like :node.)? As long as I
obey the blank lines between an entry rule, I know I can move the tags around
within the entry in an arbitrary manner and NAMEFIND will still work properly.
Would using fromlabel/tolabel be an option? Is that the most efficient solution
or is there a better way?