temporary data placed in ^tmp

advertisement
TEMPORARY DATA PLACED IN ^TMP
DDSREFT = ^TMP("DDS", $J, +DDS)
DDSDA
= DA,DA(1),...DA(n) (the IENS)
____________________________________________________________________________________________
@DDSREFT@(pg, bk)
pg, bk, DDSDA)
= current DDSDA (could be "0,")
= undefined : data never loaded, load
1
: don't need to reload data (set in DDS1, DDS4)
pg, bk, DDSDA, "GL") = global root
____________________________________________________________________________________________
@DDSREFT@(Ffile#, DDSDA, field#, "D") = current internal value (for mults = rec#)
"F") = undefined : never changed
1
: file, don't reload
3:
: triggered or default, file, don't reload
"M") = 0^subfile root^subfile# (for wp)
1^subfile root^subfile# (for mult)
"O") = original value (form-only fields)
also, if a field has a new-style index, set to old value
in DDS4.
"X") = external form of "D"
"K") = uniqueness index ien (if the field is a key field with a
field-level uniqueness index)^…
"A") = req^dup^right justify^disable editing^disallow LAYGO
(set by UNED or REQ^DDSUTL)
Form only fields: Ffile# = F0
field# = DDO,bk
Record selection page: DDSDA = "0,"
Word processing fields: "D", 0) = header
"D", 1) = line 1
"D", 2) = line 2
...
"D", n) = line n
____________________________________________________________________________________________
@DDSREFT@("XCAP", pg, caption, bk,DDO) = $Y^$X^req^cap only
(for jumping to executable captions)
(set by DDSR)
____________________________________________________________________________________________
@DDSREFT@("ADD")
= # elements in array
"ADD", 1) = DDSDA^DIE
(sub)records added between saves.
These need to be deleted on Quit.
3/7/2016 @ 3:30 PM
1
c:\docs\sm&se\sm_tmp.doc
...
3/7/2016 @ 3:30 PM
2
c:\docs\sm&se\sm_tmp.doc
@DDSREFT@(pg, bk)
= current parent DDSDA
(or, for backward pointers, DDSDA of record pointed to)
pg, bk, parent DDSDA) = load flag^
parent DDSDA^
seq # of top line^
current line #^
current seq #^
# reps^
parent DDP^
mult field #^
selection field^
index
[1]* (parent DDSDA = DDS6DA)
[2]
[3]
[4]
[5]
[6] (for back ptrs, the DDP of pointedto file)
[7] (for back ptrs, null)
[8]
[9]
*these pieces are put into DDSREP
pg, bk, parent DDSDA, seq #1) = DDSDA of subrecord on line 1
...
seq #n) = DDSDA of subrecord on line n
"B", DDSDA) = seq #
...
pg, bk, parent DDSDA, "GL") = global root of multiple
e.g. ^DIZ(file#, DA, "S",
For backward pointers:
the global root of pointing file
3/7/2016 @ 3:30 PM
3
c:\docs\sm&se\sm_tmp.doc
THE "AY" INDEX IN ^DIST
DDSREFS = ^DIST(.403, +DDS, "AY")
@DDSREFS@(pg, bk) = bk $Y [1]^ bk $X [2] ^ DDP [3]^ DDSDN [4]^ DDSTP [5]
^ [6] ^ replication # [7]^ DDSPTB (flag=1) [8]
^ first editable field on block [9] ^ selection field [10]
pg, bk, DDO, "D") = data $Y [1] ^ data $X [2] ^ data $L [3] ^ field # [4]
^ xec cap $Y [5] ^ xec cap $X [6] ^ colon [7]
^ required [8] ^ computed field [9] ^ right justified [10]
pg, bk, DDO, "N") = undefined (possible for non-wp, non mults)
: uneditable because
1. no coordinates
2. computed field
3. whole block is display only
up [1]^ down [2]^ right [3]^ left [4]^ next [5]
up [6]^ down [7]^ right [8]^ left [9]^ next [10]
^1 (for wp or mult) [11]
(Pieces 6 through 10 are for repeating blocks. Each of these
pieces can be DDO or DDO,bk if different block. For the first
editable field in repeating block, pieces 3 and 5 are next block or
the Command Line -- used if current DA is 0.
pg, 0, 0, "N")
= Same as above for Command Line
pg, bk, "PTB")
= List of fields used to determine DA
file,field[;J] ^ ... or
0,DDO,bk[;J] ^ ...
"PTB",1)
2)
...
pg, "FIRST")
3/7/2016 @ 3:30 PM
= code
= code
...
GDA^DDS10 loops through these nodes
to determine DA
= DDO, bk
First field on page
4
c:\docs\sm&se\sm_tmp.doc
@DDSREFS@("ASUB", pg, bk, DDO) = pg
This field is
this subpage
the parent of
"COMP", file #, field #, pg, bk, DDO) = ""
This file/field is used in this computed field. -- For repainting
Form only fields: file # = 0, field # = "DDO,bk"
"COMPE", bk, DDO)
= computed expression using DDSE(n)
DDO, 1) = code that sets DDSE(1)
| DDSCOMP loops
...
| through these nodes to
DDO, n) = code that sets DDSE(n)
| set the DDSE(n) array.
"CAP, caption, pg group, pg, bk, DDO) = ""
This caption belongs to this page group and is this pg, bk, DDO.
Used for ^-jumping.
pg group is of the form 1^2^3 and is the list of pages connected via the next and
previous page links.
Ffile#, field#, "L", pg, bk, DDO) = ""
Where on form is this field located. Used for repainting triggered fields on the
current page.
For form-only fields: Ffile# = "F0", field# = DDO,bk
"PT", file#, field#, pg, bk) = ""
This file/field points to this page/block. Used for repainting pointed-to block.
For form only fields: file# = 0, field# = DDO,bk
"X", pg, $Y, $X)
= captions on this line
, "A") = $X1;$X2;U ^ $X1;$X2;U
The "A" node indicates the columns where the caption has special attributes. $X1
is the start $X where attribute U (underline) begins, and $X2 is the $X where the
attribute ends
3/7/2016 @ 3:30 PM
5
c:\docs\sm&se\sm_tmp.doc
Download