[Robelle-l] RE: Backward chain reads
Neil Armstrong
neil@robelle.com
Tue, 27 Jan 2004 19:03:58 -0500
This is a multi-part message in MIME format.
------=_NextPart_000_0004_01C3E508.51668C40
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
Hi,
I didn't see Eric's reply to the list, so I assume it was private. I hope
you don't mind me using it
as an example. I see what you are doing which is quite nice, but their is a
way to do this in one pass.
GET MEMBER-SPAN { or CHAIN for a specific set of MEMBER#s }
IF VOID=" "
SORT MEMBER#
SORT YMDEFF DESC
DUP NONE KEYS 1 {note the 1 means the level at which Suprtool compares
the keys}
OUT MS1,TEMP,LINK
XEQ
As you can see the data is sorted in the proper order, but then you instruct
the dup command
to only compare on the MEMBER#. I added this feature quite some time ago, I
think around
Suprtool 4.3 or so.
Hope this helps.
Neil Armstrong
-----Original Message-----
From: robelle-l-admin@robelle.com [mailto:robelle-l-admin@robelle.com]On
Behalf Of Eben Yong
Sent: Tuesday, January 27, 2004 3:55 PM
To: ROBELLE-L@ROBELLE.COM
Subject: [Robelle-l] RE: Backward chain reads
Hi Ric! Yes, this technique works very well, thanks. I was really just
asking out of curiousity.
To Answer Neil's question more precisely:
We have a COBOL program that reads the MEMBER-SPAN dataset using a
backward chain because it wants to find the most current record. The
MEMBER-SPAN dataset contains health insurance information for members, and
the chronology is based on YMDEFF (in CCYYMMDD format). Thus, the most
current span is the first record in the backward-chained read. This is
really just a question of curiousity. There are ways around the problem;
and besides that, we are not averse to COBOL programming, either.
Database: HEALTH.DATA.AIH TPI: Omnidex 3.07.59
MEMBER-SPAN Detail Set# 176
Entry: Offset
MEMBER# X12 1 (!MEMBER-A(YMDEFF))
AFF# X16 13
AFF-AREA X2 29
AFF-STATUS X2 31
BENEFIT-PKG X2 33
BENEFIT-STATUS X2 35
BUSINESS-UNIT X2 37
CAP-CODE X2 39
CAP-CYCLE X2 41
CAPTYPE X4 43
CARRIER X2 47
CLAIM-TYPE X2 49
CLASS X2 51
CONTRACTYPE X2 53
DIVISION# X10 55
EMPLSTAT X2 65
ENROLL-SOURCE X2 67
GROUP# X6 69
GROUP-CAT X2 75
HAT-CODE X2 77
HEALTHSTAT X2 79
INSURANCE X2 81
MARITALSTAT X2 83
MEDICARE-PLAN X2 85
MEM-OV-FLAGS X4 87
OP# X4 91
PRE-EXIST X2 95
PRIME-SECOND X2 97
PROG# X2 99
REASON X4 101
REGION X2 105
RISKPOP X2 107
STATUS X2 109
TRANSCODE X2 111
VOID X2 113
YMDEFF X8 115
YMDEND X8 123
YMDFIRSTCAP X8 131
YMDLASTCAP X8 139
YMDPREX X8 147
YMDPREXEND X8 155
YMDTRANS X8 163
-----Original Message-----
From: WmEGreen@aol.com [mailto:WmEGreen@aol.com]
Sent: Tuesday, January 27, 2004 11:17 AM
To: Eben Yong
Subject: Backward chain reads
Hi Eben -
Here's something I use quite a bit in Amisys -
GET MEMBER-SPAN { or CHAIN for a specific set of MEMBER#s }
IF VOID=" "
SORT MEMBER#
SORT YMDEFF DESC
OUT MS1,TEMP,LINK
XEQ
IN MS1
SORT MEMBER#
DUP NONE KEYS
OUT MS2,TEMP,LINK
XEQ
The file MS2 now contains the first non-voided MEMBER-SPAN as if it were
read on a backward chain.
Wm Eric (Ric) Green
(240) 446-1840 - cell#
CONFIDENTIALITY NOTICE: This e-mail, including attachments, is for the
sole use of the individual(s) to whom it is addressed, and may contain
confidential and privileged information. Any unauthorized review, use,
disclosure, distribution, or reproduction is prohibited. If you have
received this e-mail in error, please notify the sender by reply e-mail
and destroy this message and its attachments. Thank you for your
cooperation.
------=_NextPart_000_0004_01C3E508.51668C40
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns:eXclaimer =3D "http://www.exclaimer.co.uk"><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<META content=3D"MSHTML 6.00.2800.1106" name=3DGENERATOR>
<STYLE>@font-face {
font-family: Tahoma;
}
@font-face {
font-family: r_ansi;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
COLOR: purple; TEXT-DECORATION: underline
}
SPAN.EmailStyle17 {
COLOR: navy; FONT-FAMILY: Arial
}
DIV.Section1 {
page: Section1
}
</STYLE>
</HEAD>
<BODY lang=3DEN-US vLink=3Dpurple link=3Dblue bgColor=3Dwhite>
<DIV><SPAN class=3D750175623-27012004><FONT face=3DArial color=3D#0000ff =
size=3D2>Hi,</FONT></SPAN></DIV>
<DIV><SPAN class=3D750175623-27012004><FONT face=3DArial color=3D#0000ff =
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D750175623-27012004><FONT face=3DArial color=3D#0000ff =
size=3D2>I=20
didn't see Eric's reply to the list, so I assume it was private. I hope =
you=20
don't mind me using it</FONT></SPAN></DIV>
<DIV><SPAN class=3D750175623-27012004><FONT face=3DArial color=3D#0000ff =
size=3D2>as an=20
example. I see what you are doing which is quite nice, but their is a =
way to do=20
this in one pass.</FONT></SPAN></DIV>
<DIV><SPAN class=3D750175623-27012004><FONT face=3DArial color=3D#0000ff =
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D750175623-27012004>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">GET MEMBER-SPAN { or CHAIN =
for a=20
specific set of MEMBER#s }</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">IF VOID=3D" =
"</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SORT =
MEMBER#</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SORT YMDEFF=20
DESC</SPAN></FONT></P><SPAN style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial">
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">DUP NONE KEYS <SPAN=20
class=3D750175623-27012004>1 {note the 1 means =
the level=20
at which Suprtool compares the keys}</SPAN></SPAN></P></SPAN></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">OUT MS1,TEMP,LINK=20
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial">XEQ</SPAN></FONT></P></DIV>
<DIV></SPAN><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004><FONT=20
face=3DArial color=3D#0000ff> </FONT></SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004>As you can=20
see the data is sorted in the proper order, but then you instruct the =
dup=20
command</SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004>to only=20
compare on the MEMBER#. I added this feature quite some time ago, I =
think around=20
</SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004>Suprtool 4.3=20
or so.</SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN=20
class=3D750175623-27012004></SPAN></FONT></FONT> </DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004>Hope this=20
helps.</SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN=20
class=3D750175623-27012004></SPAN></FONT></FONT> </DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN =
class=3D750175623-27012004>Neil=20
Armstrong</SPAN></FONT></FONT></DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN=20
class=3D750175623-27012004></SPAN></FONT></FONT> </DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN=20
class=3D750175623-27012004></SPAN></FONT></FONT> </DIV>
<DIV><FONT face=3DTahoma><FONT size=3D2><SPAN=20
class=3D750175623-27012004> </SPAN>-----Original =
Message-----<BR><B>From:</B>=20
robelle-l-admin@robelle.com [mailto:robelle-l-admin@robelle.com]<B>On =
Behalf Of=20
</B>Eben Yong<BR><B>Sent:</B> Tuesday, January 27, 2004 3:55 =
PM<BR><B>To:</B>=20
ROBELLE-L@ROBELLE.COM<BR><B>Subject:</B> [Robelle-l] RE: Backward chain=20
reads<BR><BR></DIV></FONT></FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px =
solid; MARGIN-RIGHT: 0px">
<DIV>
<DIV class=3DSection1>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Hi =
Ric! Yes,=20
this technique works very well, thanks. I was really just asking =
out of=20
curiousity.</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"></SPAN></FONT> </P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">To Answer =
Neil’s=20
question more precisely:</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"></SPAN></FONT> </P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">We have a =
COBOL=20
program that reads the MEMBER-SPAN dataset using a backward chain =
because it=20
wants to find the most current record. The MEMBER-SPAN dataset =
contains=20
health insurance information for members, and the chronology is based =
on=20
YMDEFF (in CCYYMMDD format). Thus, the most current span is the =
first=20
record in the backward-chained read. This is really just a =
question of=20
curiousity. There are ways around the problem; and besides that, =
we are=20
not averse to COBOL programming, either.</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"></SPAN></FONT> </P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: r_ansi">Database: =
HEALTH.DATA.AIH =20
TPI: Omnidex 3.07.59</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"></SPAN></FONT> </P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: r_ansi"> =20
MEMBER-SPAN =20
=
Detail &=
nbsp; =20
Set# 176</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
Entry: &=
nbsp; =20
Offset</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
MEMBER# =
=20
X12 1 =
(!MEMBER-A(YMDEFF))</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
AFF# &nb=
sp; =20
X16 13</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
AFF-AREA  =
; =20
X2 29</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
AFF-STATUS =
X2 31</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
BENEFIT-PKG =20
X2 33</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
BENEFIT-STATUS =
X2 =20
35</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
BUSINESS-UNIT =20
X2 37</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
CAP-CODE  =
; =20
X2 39</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
CAP-CYCLE &nbs=
p;=20
X2 41</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
CAPTYPE =
=20
X4 43</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
CARRIER =
=20
X2 47</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
CLAIM-TYPE =
X2 49</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
CLASS &n=
bsp; =20
X2 51</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
CONTRACTYPE =20
X2 53</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
DIVISION# &nbs=
p;=20
X10 55</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
EMPLSTAT  =
; =20
X2 65</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
ENROLL-SOURCE =20
X2 67</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
GROUP# &=
nbsp; =20
X6 69</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
GROUP-CAT &nbs=
p;=20
X2 75</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
HAT-CODE  =
; =20
X2 77</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
HEALTHSTAT =
X2 79</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
INSURANCE &nbs=
p;=20
X2 81</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
MARITALSTAT =20
X2 83</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
MEDICARE-PLAN =20
X2 85</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
MEM-OV-FLAGS =20
X4 87</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
OP# &nbs=
p; =20
X4 91</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
PRE-EXIST=20
=
X2 =
; =20
95</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
PRIME-SECOND =20
X2 97</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
PROG# &n=
bsp; =20
X2 99</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
REASON &=
nbsp; =20
X4 101</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
REGION &=
nbsp; =20
X2 105</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
RISKPOP =
=20
X2 107</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
STATUS &=
nbsp; =20
X2 109</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
TRANSCODE &nbs=
p;=20
X2 111</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
VOID &nb=
sp; =20
X2 113</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
YMDEFF &=
nbsp; =20
X8 115</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
YMDEND &=
nbsp; =20
X8 123</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
YMDFIRSTCAP =20
X8 131</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
YMDLASTCAP =
X8 139</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
YMDPREX =
=20
X8 147</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
YMDPREXEND =
X8 155</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3Dr_ansi size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
r_ansi"> =20
=
YMDTRANS  =
; =20
X8 163</SPAN></FONT></P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"></SPAN></FONT> </P>
<P class=3DMsoNormal><FONT face=3DArial color=3Dnavy size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: =
Arial"></SPAN></FONT> </P>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DTahoma =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">-----Original=20
Message-----<BR><B><SPAN style=3D"FONT-WEIGHT: bold">From:</SPAN></B>=20
WmEGreen@aol.com [mailto:WmEGreen@aol.com] <BR><B><SPAN=20
style=3D"FONT-WEIGHT: bold">Sent:</SPAN></B> Tuesday, January 27, 2004 =
11:17=20
AM<BR><B><SPAN style=3D"FONT-WEIGHT: bold">To:</SPAN></B> Eben =
Yong<BR><B><SPAN=20
style=3D"FONT-WEIGHT: bold">Subject:</SPAN></B> Backward chain=20
reads</SPAN></FONT></P>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3D"Times =
New Roman"=20
size=3D3><SPAN style=3D"FONT-SIZE: 12pt"></SPAN></FONT> </P>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Hi Eben - =
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">Here's something I use =
quite a bit=20
in Amisys - </SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">GET MEMBER-SPAN { or =
CHAIN for a=20
specific set of MEMBER#s }</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">IF VOID=3D"=20
"</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SORT=20
MEMBER#</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SORT YMDEFF=20
DESC</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">OUT MS1,TEMP,LINK=20
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial">XEQ</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">IN =
MS1</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">SORT=20
MEMBER#</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">DUP NONE KEYS=20
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">OUT MS2,TEMP,LINK=20
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial">XEQ</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: Arial">The file MS2 now =
contains the=20
first non-voided MEMBER-SPAN as if it were read on a backward chain.=20
</SPAN></FONT></P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><FONT face=3DArial =
size=3D2><SPAN=20
style=3D"FONT-SIZE: 10pt; FONT-FAMILY: =
Arial"></SPAN></FONT> </P></DIV>
<DIV>
<P class=3DMsoNormal style=3D"MARGIN-LEFT: 0.5in"><B><FONT =
face=3DArial size=3D2=20
PTSIZE=3D"10" FAMILY=3D"SANSSERIF"><SPAN=20
style=3D"FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial">Wm =
Eric (Ric)=20
Green<BR>(240) 446-1840 - cell# =
</SPAN></FONT></B></P></DIV></DIV></DIV>
<DIV></DIV>
<DIV>
<DIV><FONT size=3D2>CONFIDENTIALITY NOTICE: This e-mail, including =
attachments,=20
is for the</FONT><BR><FONT size=3D2>sole use of the individual(s) to =
whom it is=20
addressed, and may contain</FONT><BR><FONT size=3D2>confidential and =
privileged=20
information. Any unauthorized review, use,</FONT><BR><FONT =
size=3D2>disclosure,=20
distribution, or reproduction is prohibited. If you =
have</FONT><BR><FONT=20
size=3D2>received this e-mail in error, please notify the sender by =
reply=20
e-mail</FONT><BR><FONT size=3D2>and destroy this message and its =
attachments.=20
Thank you for your</FONT><BR><FONT size=3D2>cooperation.=20
</FONT></DIV></DIV></BLOCKQUOTE></BODY></HTML>
------=_NextPart_000_0004_01C3E508.51668C40--