To answer part of my own question:

Only 'WHEN' is affected by the association, not with. If you turn on
UDT.OPTIONS 94 and do

LIST MyFile WHEN LETTER = "A" AND FRUIT="Apple" COMBO

when using my D-Type definition of LETTER, I get

LIST MyFile WHEN  LETTER = "A" AND FRUIT="Apple" LETTER FRUIT 16:06:42
26 FEB 2010 1
MyFile.... LETTER.............. FRUIT...............

RECORD     A                    Apple
1 record listed
Which is what one would expect.

To use the WHEN clause you need to be in ECLTYPE U, not P. It would be
helpful if this was clearer in manuals, but I eventually found it.

I still haven't worked out @NS or @NV though.

Cheers,
Dan

-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Dan McGrath
Sent: Friday, 26 February 2010 2:14 PM
To: U2 Users List
Subject: [U2] How do associations, @NS and @NV work in UniData
Dictionaries?

Does anyone have a quick example of how Associations, @NS and @NV work
in UniData?

 

I'm trying to work out associations in dictionary items but cannot get
them to do anything.

 

For example, in a record

 

<1,1> = A

<1,2> = B

<2,1> = Apple

<2,2> = Banana

 

I created 3 dictionary items. LETTER and FRUIT, COMBO as follows

 

LETTER:

<1> = D

<2> = 1

<3> = 

<3> = Letter

<4> = 6L

<5> = M

<6> = COMBO

 

FRUIT:

<1> = D

<2> = 1

<3> = 

<3> = Letter

<4> = 6L

<5> = M

<6> = COMBO

 

COMBO:

<1> = PH

<2> = LETTER FRUIT

 

Doing a 'LIST LETTER FRUIT' or 'LIST COMBO' has no difference to when
LETTER and FRUIT do not have an association declared in 6.

 

At this point I thought it might group multivalues together when
SELECTing so I created another record as such:

 

<1,1> = A

<1,2> = B

<2,1> = Banana

<2,2> = Apple

 

Doing 'SELECT MyFile WITH LETTER = "A" and FRUIT = "Apple"' selects both
records, so that cannot be it either.

 

I then tried changing LETTER to be:

 

<1> = I

<2> = EXTRACT(@RECORD,1,@NV,1);EXTRACT(FRUIT,1,@NV,1);@1:" (":@2:")" :
@NS

<3> = 

<3> = Letter

<4> = 6L

<5> = M

<6> = COMBO

 

Hoping it that a `LIST MyFile LETTER` would bring back all the different
letters with their associated fruit in parentheses. That didn't work
either as now LETTER only ever displayed the first Multivalue instead of
all of them. For Eg:

 

LIST MyFile LETTER 14:05:22 26 FEB 2010 1

MyFile.... LETTER..............

 

RECORD2    A (Banana)1

RECORD     A (Apple)1

2 records listed

 

 

The manuals don't go any further then saying the word "association". Is
anyone able to clarify this for me?

 

Thanks!

Dan

 

 

PS: The question is also posted here:
http://stackoverflow.com/questions/2339276/how-do-associations-ns-and-nv
-work-in-unidata-dictionaries


########################################################################
###################
The information transmitted in this message and attachments (if any) is
intended only
for the person or entity to which it is addressed. The message may
contain confidential
and/or privileged material.  Any review, retransmission, dissemination
or other use of
or taking of any action in reliance upon this information by persons or
entities other
than the intended recipient is prohibited.  If you received this in
error, please
contact the sender and delete the material from any computer.

The intended recipient of this e-mail may only use, reproduce, disclose
or distribute
the information contained in this e-mail and any attached files with the
permission of IMB.
########################################################################
###################
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________
###########################################################################################
The information transmitted in this message and attachments (if any) is 
intended only
for the person or entity to which it is addressed. The message may contain 
confidential
and/or privileged material.  Any review, retransmission, dissemination or other 
use of
or taking of any action in reliance upon this information by persons or 
entities other
than the intended recipient is prohibited.  If you received this in error, 
please
contact the sender and delete the material from any computer.

The intended recipient of this e-mail may only use, reproduce, disclose or 
distribute
the information contained in this e-mail and any attached files with the 
permission of IMB.
###########################################################################################
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to