2

This is just for clarification, know exactly what a qpointer is but today in a meeting the concept of a dpointer was raised. Anyone know what a "D" pointer refers to? Never ever heard this term before.

ScaryMinds
  • 335
  • 3
  • 11

1 Answers1

3

This is a nice question because it helped me put together a couple of pieces I had rolling around in my head, so thanks for that!

D's are dictionary items that refer to a logical location in the the data array and you have probably seen them a million times in the DICT of any given file.

A D Item in the VOC servers the same purpose and is valid with any query. Lots of shops have some generics (F1, F2, F3, F4, F5, F6..etc) set up so you don't have to remember the dictionary name if you know what filed you want. I think the precedence for dictionary items is DICT File -> VOC but I could be wrong on that.

As an example to illiterate this I went into HS.SALES and took one of the DICT items in the CUSTOMER table and wrote it to VOC after removing the conversion in field 3. I chose BUY_DATE because it had a conversion

SORT CUSTOMER BUY_DATE 06:51:04am  10 Oct 2017  PAGE    1
CUSTOMER..    Date Purchased

1                   01/07/91
10                  01/28/91
                    01/29/91
                    01/30/91

Remove the conversion and save into the VOC.

>ED DICT CUSTOMER BUY_DATE
10 lines long.

0001: D Date of purchase
0002: 14
0003: D2/
0004: Date Purchased
0005: 8R
0006: M
0007: ORDERS
0008: INTEGER
0009:
0010:
----: 3
0003: D2/
----: R
0003:
----: SAVE VOC F14NOCON
"F14NOCON" filed in file "VOC".
----: Q

Now sort with new D type. Values are before the Y-1995 era when pick date were still 4 digits!

SORT CUSTOMER F14NOCON 06:45:25am  10 Oct 2017  PAGE    1
CUSTOMER..    Date Purchased

1                       8408
10                      8429
                        8430
                        8431

Good Luck!

Van Amburg
  • 1,207
  • 9
  • 15
  • Van, you're right about the precedence, but you can force the issue by doing a command like "LIST CUSTOMER F1 F2 F3 USING DICT VOC". Unidata at least will not look in DICT CUSTOMER and then fall back to VOC or DICT VOC, it will only use one DICT. But you can tell it which one with the USING directive. – Ian McGowan Oct 18 '17 at 03:33