I have a requirement for a quick extract from an MV field set in a file. The
itype I built proved weirder than I anticipated.
Here's the scenario. There's a set of mv fields on FILEA that contain a
category code and description. In basic I would do a LOCATE and retrieve the
associated element.
Just to avoid the obvious question, you have tried using the LOCATE and
INSERT commands? If not this is an easy to use construct.
No, I have to admit that I haven't .. In order to use LOCATE, I have to
transpose my data:
REC1 = A]W]1]5]15
REC2 = B]X]2]6]25
REC3 = C]Y]3]7]100
REC4 = D]Z]4]8]11
Chuck,
I agree with Stuart - using a work file would speed things up.
Here's a quick code outline to help (I use UniData, and haven't
tried to run this, so YMMV):
OPEN MYFILE TO F.MYFILE ELSE STOP
OPEN WORKFILE TO F.WORK ELSE STOP
EXECUTE CLEARFILE DATA WORKFILE
READ REC FROM F.MYFILE,MYREC ELSE
Try this for an easy sorted list assuming field 6 is the field to sort on:
0001: PA
0002: SELECT MYFILE SAVING EVAL @RECORD6:'|':@ID
0003: SAVE.LIST MYLIST
0004: SH -c 'sort SAVEDLISTS/MYLIST SAVEDLISTS/MYLIST.OUT'
You can then do a REANEXT and FIELD the key in a program after executing
Another simple solution may be to use REFORMAT. Read HELP REFORMAT if
you're not familiar with it. Here is an example:
REFORMAT MYFILE BY EVAL @RECORD6:'|':@ID SEQ EVAL @RECORD6 @ID
@RECORD 6 : | : @ID
@RECORD 6
File Name =WORKFILE
SEQ is an I-Descriptor in the VOC that can be used by any
We couldn't make it reliable enough to depend on. We experienced about .5%
loss of data and IBM wasn't able to help us get to the source of the problem
before the customer decided to pull the plug due to the excessive cost of
solving the last bit.
Maybe someone with a lot of deep internals
I am getting a message from Objectcall on our test environment Unidata 5.2.26 Tru64
5.1 ( have not tested the Objectcall on this for quite a while )
which says 'ERROR ON CLIENT in UniOpenPos: Client and server product identifiers don't
match:b+c and Authentication
database use not init '
Works
To limit dictionary items in Query Builder
Create a record in WIN.PROGS called SERVICESUB which contains the name
of a subroutine you can write . The examples are WIN.SSUB and WIN.SSUB1 in the
WIN.PROGS file.
The wIntegrate host documentation sort of explains it.
u2-users mailing list
[EMAIL