RE: [Hardhats-members] Fileman drop-out on pointer update

2005-05-16 Thread Cameron Schlehuber









The requirements have just been posted and
announced to be on the CMS web site for the Physician Focused Quality
Initiative page at http://www.cms.hhs.gov/quality/pfqi.asp#Vista-Office%20EHR.
Browse under the VistA-Office EHR section to the Version 1.0 Requirements at http://www.cms.hhs.gov/quality/EHRRequirements.pdf.



-Original Message-
From:
[EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Greg Kreis
Sent: Monday, April 04, 2005 10:18
AM
To:
hardhats-members@lists.sourceforge.net
Subject: Re: [Hardhats-members]
Fileman drop-out on pointer update



Does anyone know details on how the VistA-Office EHR
is being created? It would be interesting to see the requirements, both
functional and technical, that are driving the process.

Maury Pepper wrote: 



VistA in the news:











www.ama-assn.org/amednews/2005/04/11/bisa0411.htm
















RE: [Hardhats-members] Fileman drop-out on pointer update

2005-05-16 Thread Kevin Toppenberg
Maybe this should be posted with a different subject
line.  :-)

Kevin

--- Cameron Schlehuber [EMAIL PROTECTED]
wrote:

 The requirements have just been posted and announced
 to be on the CMS web
 site for the Physician Focused Quality Initiative
 page at

http://www.cms.hhs.gov/quality/pfqi.asp#Vista-Office%20EHR.
  Browse under
 the VistA-Office EHR section to the Version 1.0
 Requirements at
 http://www.cms.hhs.gov/quality/EHRRequirements.pdf.
 
  
 
 -Original Message-
 From: [EMAIL PROTECTED]

[mailto:[EMAIL PROTECTED]
 On Behalf Of Greg
 Kreis
 Sent: Monday, April 04, 2005 10:18 AM
 To: hardhats-members@lists.sourceforge.net
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
  
 
 Does anyone know details on how the VistA-Office EHR
 is being created?  It
 would be interesting to see the requirements, both
 functional and technical,
 that are driving the process.
 
 Maury Pepper wrote: 
 
 VistA in the news:
 
  
 
 www.ama-assn.org/amednews/2005/04/11/bisa0411.htm
 
  
 
 




Yahoo! Mail
Stay connected, organized, and protected. Take the tour:
http://tour.mail.yahoo.com/mailtour.html



---
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7412alloc_id=16344op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread James Gray



I am not in a situation where I can look at the 
DD's for file 2 and file 901 so I am not sure about the nodes that are 
causing the problem. I do not see how not having the $G is what could have 
caused the situation of not having the ^DPT entry. I would like to see how 
having the $G would have allowed the data to update correctly.In 
principlethere are better ways of writing code than to allow Merrors 
to detect corrupt data, but merely preventing the M error may also allow the 
code to do things that will further corrupt the data as well. Either way 
is a risk.

The VA uses a X-ref on the SSN field to keep files 
2 and 901 in synch. Normally it works well. It does assume that 
the SSN field is required. You can get into trouble if you make the SSN 
field optional. IHS keeps the two files in synch via code in the special 
Fileman lookup routine on file 2. That way they get around the problem of 
SSN being not a required field.

Jim Gray

  - Original Message - 
  From: 
  Marianne 
  Susaanti Follingstad 
  To: hardhats-members@lists.sourceforge.net 
  
  Sent: Monday, April 04, 2005 12:45 
  PM
  Subject: Re: [Hardhats-members] Fileman 
  drop-out on pointer update
  What then do you suggest? In this case, NOT having 
  the $G is what created the situation of NOT having a ^DPT entry that is 
  pointed to. In other words, if the $G had been there, the data would 
  have updated correctly and avoided the data integrity problem that now 
  exists. There has to be better ways to detect missing or corrupt data 
  than having an application crash, which risks further corruption of more 
  data. 
  I'm curious as to what the VA does for duplicate records; anyone 
  know? If there is a merge capability or deletion and repointing of 
  duplicates and it uses the standard FileMan functionality, then it too could 
  have the same issue. 
  In this instance, the file on which things blew was an IHS Patient 
  file, so maybe the VA avoided such pitfalls. It is interesting to note 
  that the SCR node (which is meant to screen entries) is also being used here 
  to display info, which does not seem like a great idea; however, there could 
  still be valid reasons to need to look at info in a pointed to file during a 
  screening. 
  Marianne 
  James Gray wrote: 
  

One could argue that it is not fine to put 
the $G there. There should never be a case in a good database that 
^AUPNPAT(Y,0) exists and ^DPT(Y,0) does not exist. If that happens 
something is wrong in your database and it needs to be cleaned up. I 
have seen ^AUPNPAT(Y,0) nodes exist when the corresponding ^DPT(Y,0) nodes 
did not exist on a system running Cache just for the record. If you 
put the $G in you may never know that you have a bad node and who knows what 
else that bad node may do? I would suggest not putting in the 
$G.Jim 
Gray 

  - Original Message -
  From: 
  Marianne Susaanti 
Follingstad
  To: hardhats-members@lists.sourceforge.net
  Sent: Saturday, April 02, 2005 11:08 
  AM
  Subject: Re: [Hardhats-members] 
  Fileman drop-out on pointer updateIt should be fine to put 
  the $G in there. There can't be any unforeseen consequences to 
  having it there. In fact, as you found, there are unforeseen 
  consequences to NOT having it there. As I mentioned, it would be 
  good to have someone review these SCR nodes to see if there are any other 
  potential problems. 
  Marianne Follingstad 301 251 0139 
  Kevin Toppenberg wrote: 
  Marianne, 
Thanks for your help. 
Following your instructions: GTMzwr ^AUPNPAT(0) 
^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510" 
GTMzwr ^DD(901,0,"SCR") ^DD(901,0,"SCR")="X ""I 
'$P(^DPT(Y,0),U,19)"" W $E(^AUPNPAT(Y,0),0)"  
So you are right. This is the source of the line that 
caused the drop-out. 
I had suggested: It looks like the "^DPT(Y,0)" ought to be 
"$G(^DPT(Y,0))" 
So I could put that change here. But I'm note sure if that 
would have other unforseen consequenses. 
Is this really a 'bug'? Or is it one of those funny 
database-needs-to-be-rundown type situations? 
Thanks Kevin 
--- Marianne Susaanti Follingstad [EMAIL PROTECTED] 
wrote: 
 A quick look at the DI* routines I have (which are  
old), leads me to suggest that  you look at the DD for the file 
defining ^AUPNPAT.  Look at ^AUPNPAT(0) to find the  
file number and then look at ^DD(file  number,0,"SCR") and I'm 
guessing you'll find  the culprit there as "I 
'$P(^DPT(Y,0),U,19)". If  that is the problem then someone 
 should review the "SCR" nodes to ensure there are no  
similar problems lurkin

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread Kevin Toppenberg
Well, the long and the short of it is that I should
NOT have tried to kill one of the two duplicate
records.  Thus I am doing something not supported, so
a crash is not technically a bug/problem.  (You put
your fingers into the spinning gears, you have to put
up with getting pinched!)

So I am going to read up (all 200 pages in the manual)
on how to merge patients.

I sure hope that as I blunder my way to a better
understanding that I don't do something really bad

Kevin


--- James Gray [EMAIL PROTECTED] wrote:

 I am not in a situation where I can look at the DD's
 for file 2 and file 901 so I am not sure about
 the nodes that are causing the problem.  I do not
 see how not having the $G is what could have caused
 the situation of not having the ^DPT entry.  I would
 like to see how having the $G would have allowed the
 data to update correctly.  In principle there are
 better ways of writing code than to allow M errors
 to detect corrupt data, but merely preventing the M
 error may also allow the code to do things that will
 further corrupt the data as well.  Either way is a
 risk.
 
 The VA uses a X-ref on the SSN field to keep files 2
 and 901 in synch.  Normally it works well.  It
 does assume that the SSN field is required.  You can
 get into trouble if you make the SSN field optional.
  IHS keeps the two files in synch via code in the
 special Fileman lookup routine on file 2.  That way
 they get around the problem of SSN being not a
 required field.
 
 Jim Gray
   - Original Message - 
   From: Marianne Susaanti Follingstad 
   To: hardhats-members@lists.sourceforge.net 
   Sent: Monday, April 04, 2005 12:45 PM
   Subject: Re: [Hardhats-members] Fileman drop-out
 on pointer update
 
 
   What then do you suggest?  In this case, NOT
 having the $G is what created the situation of NOT
 having a ^DPT entry that is pointed to.  In other
 words, if the $G had been there, the data would have
 updated correctly and avoided the data integrity
 problem that now exists.  There has to be better
 ways to detect missing or corrupt data than having
 an application crash, which risks further corruption
 of more data. 
   I'm curious as to what the VA does for duplicate
 records; anyone know?  If there is a merge
 capability or deletion and repointing of duplicates
 and it uses the standard FileMan functionality, then
 it too could have the same issue. 
 
   In this instance, the file on which things blew
 was an IHS Patient file, so maybe the VA avoided
 such pitfalls.  It is interesting to note that the
 SCR node (which is meant to screen entries) is also
 being used here to display info, which does not seem
 like a great idea; however, there could still be
 valid reasons to need to look at info in a pointed
 to file during a screening. 
 
   Marianne 
 
   James Gray wrote: 
 
 One could argue that it is not fine to put the
 $G there.  There should never be a case in a good
 database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
 does not exist.  If that happens something is wrong
 in your database and it needs to be cleaned up.  I
 have seen ^AUPNPAT(Y,0) nodes exist when the
 corresponding ^DPT(Y,0) nodes did not exist on a
 system running Cache just for the record.  If you
 put the $G in you may never know that you have a bad
 node and who knows what else that bad node may do? 
 I would suggest not putting in the $G. Jim Gray  
   - Original Message -
   From: Marianne Susaanti Follingstad
   To: hardhats-members@lists.sourceforge.net
   Sent: Saturday, April 02, 2005 11:08 AM
   Subject: Re: [Hardhats-members] Fileman
 drop-out on pointer update
It should be fine to put the $G in there. 
 There can't be any unforeseen consequences to having
 it there.  In fact, as you found, there are
 unforeseen consequences to NOT having it there.  As
 I mentioned, it would be good to have someone review
 these SCR nodes to see if there are any other
 potential problems. 
   Marianne Follingstad 
   301 251 0139 
 
   Kevin Toppenberg wrote: 
 
 Marianne, 
 Thanks for your help. 
 
 Following your instructions: 
 GTMzwr ^AUPNPAT(0) 

 ^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510 
 
 GTMzwr ^DD(901,0,SCR) 
 ^DD(901,0,SCR)=X I
 '$P(^DPT(Y,0),U,19) W 
 $E(^AUPNPAT(Y,0),0) 
   
 
 So you are right.  This is the source of the
 line that 
 caused the drop-out. 
 
 I had suggested: It looks like the
 ^DPT(Y,0) ought 
 to be $G(^DPT(Y,0)) 
 
 So I could put that change here.  But I'm
 note sure if 
 that would have other unforseen
 consequenses. 
 
 Is this really a 'bug'?  Or is it one of
 those funny 
 database-needs-to-be-rundown type
 situations? 
 
 Thanks 
 Kevin 
 
 --- Marianne Susaanti Follingstad 
 [EMAIL PROTECTED] wrote: 
 
  A quick look at the DI* routines I have

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread James Gray
When I worked in both the VA and in IHS we did not try to delete bad patient 
records that showed up in the database.  Instead we ZZ'd them by putting the 
letters ZZ at the beginning of the name.  It is an ugly kludge, but it 
prevents big problems.
Jim Gray

- Original Message - 
From: Kevin Toppenberg [EMAIL PROTECTED]
To: hardhats-members@lists.sourceforge.net
Sent: Tuesday, April 05, 2005 10:34 AM
Subject: Re: [Hardhats-members] Fileman drop-out on pointer update


Well, the long and the short of it is that I should
NOT have tried to kill one of the two duplicate
records.  Thus I am doing something not supported, so
a crash is not technically a bug/problem.  (You put
your fingers into the spinning gears, you have to put
up with getting pinched!)
So I am going to read up (all 200 pages in the manual)
on how to merge patients.
I sure hope that as I blunder my way to a better
understanding that I don't do something really bad
Kevin
--- James Gray [EMAIL PROTECTED] wrote:
I am not in a situation where I can look at the DD's
for file 2 and file 901 so I am not sure about
the nodes that are causing the problem.  I do not
see how not having the $G is what could have caused
the situation of not having the ^DPT entry.  I would
like to see how having the $G would have allowed the
data to update correctly.  In principle there are
better ways of writing code than to allow M errors
to detect corrupt data, but merely preventing the M
error may also allow the code to do things that will
further corrupt the data as well.  Either way is a
risk.
The VA uses a X-ref on the SSN field to keep files 2
and 901 in synch.  Normally it works well.  It
does assume that the SSN field is required.  You can
get into trouble if you make the SSN field optional.
 IHS keeps the two files in synch via code in the
special Fileman lookup routine on file 2.  That way
they get around the problem of SSN being not a
required field.
Jim Gray
  - Original Message - 
  From: Marianne Susaanti Follingstad
  To: hardhats-members@lists.sourceforge.net
  Sent: Monday, April 04, 2005 12:45 PM
  Subject: Re: [Hardhats-members] Fileman drop-out
on pointer update

  What then do you suggest?  In this case, NOT
having the $G is what created the situation of NOT
having a ^DPT entry that is pointed to.  In other
words, if the $G had been there, the data would have
updated correctly and avoided the data integrity
problem that now exists.  There has to be better
ways to detect missing or corrupt data than having
an application crash, which risks further corruption
of more data.
  I'm curious as to what the VA does for duplicate
records; anyone know?  If there is a merge
capability or deletion and repointing of duplicates
and it uses the standard FileMan functionality, then
it too could have the same issue.
  In this instance, the file on which things blew
was an IHS Patient file, so maybe the VA avoided
such pitfalls.  It is interesting to note that the
SCR node (which is meant to screen entries) is also
being used here to display info, which does not seem
like a great idea; however, there could still be
valid reasons to need to look at info in a pointed
to file during a screening.
  Marianne
  James Gray wrote:
One could argue that it is not fine to put the
$G there.  There should never be a case in a good
database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
does not exist.  If that happens something is wrong
in your database and it needs to be cleaned up.  I
have seen ^AUPNPAT(Y,0) nodes exist when the
corresponding ^DPT(Y,0) nodes did not exist on a
system running Cache just for the record.  If you
put the $G in you may never know that you have a bad
node and who knows what else that bad node may do?
I would suggest not putting in the $G. Jim Gray
  - Original Message -
  From: Marianne Susaanti Follingstad
  To: hardhats-members@lists.sourceforge.net
  Sent: Saturday, April 02, 2005 11:08 AM
  Subject: Re: [Hardhats-members] Fileman
drop-out on pointer update
   It should be fine to put the $G in there.
There can't be any unforeseen consequences to having
it there.  In fact, as you found, there are
unforeseen consequences to NOT having it there.  As
I mentioned, it would be good to have someone review
these SCR nodes to see if there are any other
potential problems.
  Marianne Follingstad
  301 251 0139
  Kevin Toppenberg wrote:
Marianne,
Thanks for your help.
Following your instructions:
GTMzwr ^AUPNPAT(0)
^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510
GTMzwr ^DD(901,0,SCR)
^DD(901,0,SCR)=X I
'$P(^DPT(Y,0),U,19) W
$E(^AUPNPAT(Y,0),0)
So you are right.  This is the source of the
line that
caused the drop-out.
I had suggested: It looks like the
^DPT(Y,0) ought
to be $G(^DPT(Y,0))
So I could put that change here.  But I'm
note sure if
that would have other unforseen

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread Kevin Toppenberg
That is what we have had to do with our old system. 
And it is an ugly kludge.  I was hoping to not have to
do that.

As programmers, can't we overcome such a thing.

I don't know yet if vista will show the stub entry
that is left behind.  I hope not.

Kevin


--- James Gray [EMAIL PROTECTED] wrote:

 When I worked in both the VA and in IHS we did not
 try to delete bad patient 
 records that showed up in the database.  Instead we
 ZZ'd them by putting the 
 letters ZZ at the beginning of the name.  It is an
 ugly kludge, but it 
 prevents big problems.
 Jim Gray
 
 - Original Message - 
 From: Kevin Toppenberg [EMAIL PROTECTED]
 To: hardhats-members@lists.sourceforge.net
 Sent: Tuesday, April 05, 2005 10:34 AM
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
 
  Well, the long and the short of it is that I
 should
  NOT have tried to kill one of the two duplicate
  records.  Thus I am doing something not supported,
 so
  a crash is not technically a bug/problem.  (You
 put
  your fingers into the spinning gears, you have to
 put
  up with getting pinched!)
 
  So I am going to read up (all 200 pages in the
 manual)
  on how to merge patients.
 
  I sure hope that as I blunder my way to a better
  understanding that I don't do something really
 bad
 
  Kevin
 
 
  --- James Gray [EMAIL PROTECTED] wrote:
 
  I am not in a situation where I can look at the
 DD's
  for file 2 and file 901 so I am not sure
 about
  the nodes that are causing the problem.  I do not
  see how not having the $G is what could have
 caused
  the situation of not having the ^DPT entry.  I
 would
  like to see how having the $G would have allowed
 the
  data to update correctly.  In principle there are
  better ways of writing code than to allow M
 errors
  to detect corrupt data, but merely preventing the
 M
  error may also allow the code to do things that
 will
  further corrupt the data as well.  Either way is
 a
  risk.
 
  The VA uses a X-ref on the SSN field to keep
 files 2
  and 901 in synch.  Normally it works well. 
 It
  does assume that the SSN field is required.  You
 can
  get into trouble if you make the SSN field
 optional.
   IHS keeps the two files in synch via code in the
  special Fileman lookup routine on file 2.  That
 way
  they get around the problem of SSN being not a
  required field.
 
  Jim Gray
- Original Message - 
From: Marianne Susaanti Follingstad
To: hardhats-members@lists.sourceforge.net
Sent: Monday, April 04, 2005 12:45 PM
Subject: Re: [Hardhats-members] Fileman
 drop-out
  on pointer update
 
 
What then do you suggest?  In this case, NOT
  having the $G is what created the situation of
 NOT
  having a ^DPT entry that is pointed to.  In other
  words, if the $G had been there, the data would
 have
  updated correctly and avoided the data integrity
  problem that now exists.  There has to be better
  ways to detect missing or corrupt data than
 having
  an application crash, which risks further
 corruption
  of more data.
I'm curious as to what the VA does for
 duplicate
  records; anyone know?  If there is a merge
  capability or deletion and repointing of
 duplicates
  and it uses the standard FileMan functionality,
 then
  it too could have the same issue.
 
In this instance, the file on which things blew
  was an IHS Patient file, so maybe the VA avoided
  such pitfalls.  It is interesting to note that
 the
  SCR node (which is meant to screen entries) is
 also
  being used here to display info, which does not
 seem
  like a great idea; however, there could still be
  valid reasons to need to look at info in a
 pointed
  to file during a screening.
 
Marianne
 
James Gray wrote:
 
  One could argue that it is not fine to put
 the
  $G there.  There should never be a case in a good
  database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
  does not exist.  If that happens something is
 wrong
  in your database and it needs to be cleaned up. 
 I
  have seen ^AUPNPAT(Y,0) nodes exist when the
  corresponding ^DPT(Y,0) nodes did not exist on a
  system running Cache just for the record.  If you
  put the $G in you may never know that you have a
 bad
  node and who knows what else that bad node may
 do?
  I would suggest not putting in the $G. Jim Gray
- Original Message -
From: Marianne Susaanti Follingstad
To: hardhats-members@lists.sourceforge.net
Sent: Saturday, April 02, 2005 11:08 AM
Subject: Re: [Hardhats-members] Fileman
  drop-out on pointer update
 It should be fine to put the $G in there.
  There can't be any unforeseen consequences to
 having
  it there.  In fact, as you found, there are
  unforeseen consequences to NOT having it there. 
 As
  I mentioned, it would be good to have someone
 review
  these SCR nodes to see if there are any other
  potential problems.
Marianne Follingstad
301 251 0139
 
Kevin Toppenberg

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread Greg Woodhouse
Here's a thought (not necessarily a good one): Delete the existing B
cross-reference and replace it with a new style cross-reference with a
set condition so that stub entries will not be indexed.

--- Kevin Toppenberg [EMAIL PROTECTED] wrote:

 That is what we have had to do with our old system. 
 And it is an ugly kludge.  I was hoping to not have to
 do that.
 
 As programmers, can't we overcome such a thing.
 
 I don't know yet if vista will show the stub entry
 that is left behind.  I hope not.
 
 Kevin
 
 
 --- James Gray [EMAIL PROTECTED] wrote:
 
  When I worked in both the VA and in IHS we did not
  try to delete bad patient 
  records that showed up in the database.  Instead we
  ZZ'd them by putting the 
  letters ZZ at the beginning of the name.  It is an
  ugly kludge, but it 
  prevents big problems.
  Jim Gray
  
  - Original Message - 
  From: Kevin Toppenberg [EMAIL PROTECTED]
  To: hardhats-members@lists.sourceforge.net
  Sent: Tuesday, April 05, 2005 10:34 AM
  Subject: Re: [Hardhats-members] Fileman drop-out on
  pointer update
  
  
   Well, the long and the short of it is that I
  should
   NOT have tried to kill one of the two duplicate
   records.  Thus I am doing something not supported,
  so
   a crash is not technically a bug/problem.  (You
  put
   your fingers into the spinning gears, you have to
  put
   up with getting pinched!)
  
   So I am going to read up (all 200 pages in the
  manual)
   on how to merge patients.
  
   I sure hope that as I blunder my way to a better
   understanding that I don't do something really
  bad
  
   Kevin
  
  
   --- James Gray [EMAIL PROTECTED] wrote:
  
   I am not in a situation where I can look at the
  DD's
   for file 2 and file 901 so I am not sure
  about
   the nodes that are causing the problem.  I do not
   see how not having the $G is what could have
  caused
   the situation of not having the ^DPT entry.  I
  would
   like to see how having the $G would have allowed
  the
   data to update correctly.  In principle there are
   better ways of writing code than to allow M
  errors
   to detect corrupt data, but merely preventing the
  M
   error may also allow the code to do things that
  will
   further corrupt the data as well.  Either way is
  a
   risk.
  
   The VA uses a X-ref on the SSN field to keep
  files 2
   and 901 in synch.  Normally it works well. 
  It
   does assume that the SSN field is required.  You
  can
   get into trouble if you make the SSN field
  optional.
IHS keeps the two files in synch via code in the
   special Fileman lookup routine on file 2.  That
  way
   they get around the problem of SSN being not a
   required field.
  
   Jim Gray
 - Original Message - 
 From: Marianne Susaanti Follingstad
 To: hardhats-members@lists.sourceforge.net
 Sent: Monday, April 04, 2005 12:45 PM
 Subject: Re: [Hardhats-members] Fileman
  drop-out
   on pointer update
  
  
 What then do you suggest?  In this case, NOT
   having the $G is what created the situation of
  NOT
   having a ^DPT entry that is pointed to.  In other
   words, if the $G had been there, the data would
  have
   updated correctly and avoided the data integrity
   problem that now exists.  There has to be better
   ways to detect missing or corrupt data than
  having
   an application crash, which risks further
  corruption
   of more data.
 I'm curious as to what the VA does for
  duplicate
   records; anyone know?  If there is a merge
   capability or deletion and repointing of
  duplicates
   and it uses the standard FileMan functionality,
  then
   it too could have the same issue.
  
 In this instance, the file on which things blew
   was an IHS Patient file, so maybe the VA avoided
   such pitfalls.  It is interesting to note that
  the
   SCR node (which is meant to screen entries) is
  also
   being used here to display info, which does not
  seem
   like a great idea; however, there could still be
   valid reasons to need to look at info in a
  pointed
   to file during a screening.
  
 Marianne
  
 James Gray wrote:
  
   One could argue that it is not fine to put
  the
   $G there.  There should never be a case in a good
   database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
   does not exist.  If that happens something is
  wrong
   in your database and it needs to be cleaned up. 
  I
   have seen ^AUPNPAT(Y,0) nodes exist when the
   corresponding ^DPT(Y,0) nodes did not exist on a
   system running Cache just for the record.  If you
   put the $G in you may never know that you have a
  bad
   node and who knows what else that bad node may
  do?
   I would suggest not putting in the $G. Jim Gray
 - Original Message -
 From: Marianne Susaanti Follingstad
 To: hardhats-members@lists.sourceforge.net
 Sent: Saturday, April 02, 2005 11:08 AM
 Subject: Re: [Hardhats-members] Fileman
   drop-out on pointer update

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread steven mcphelan
There may not be such a need.  I would have to check to verify this.  But I
believe that ^DIC may check for the archive flag and filter out those
records automatically.  I have not actually looked at all of this routine to
see if that indeed is what it is doing.  But on the surface, it appears to
be:

DIC3+2  ;Per VHA Directive 10-93-142, this routine should not be
modified.
MN+6I
D=B,'DZ,'$D(DO(SCR)),$L(DIX)30,'$D(DIC(S)),'$D(@(DIC_Y,-9)
)),'$G(DINDEX(OLDSUB)) D ADDKEY I 1 Q
S+1 I $D(@(DIC_Y,0))),'$D(^(-9)) S DIY=$P(^(0),U)

- Original Message - 
From: Greg Woodhouse [EMAIL PROTECTED]
To: hardhats-members@lists.sourceforge.net
Sent: Tuesday, April 05, 2005 3:42 PM
Subject: Re: [Hardhats-members] Fileman drop-out on pointer update


 Here's a thought (not necessarily a good one): Delete the existing B
 cross-reference and replace it with a new style cross-reference with a
 set condition so that stub entries will not be indexed.

 --- Kevin Toppenberg [EMAIL PROTECTED] wrote:

  That is what we have had to do with our old system.
  And it is an ugly kludge.  I was hoping to not have to
  do that.
 
  As programmers, can't we overcome such a thing.
 
  I don't know yet if vista will show the stub entry
  that is left behind.  I hope not.
 
  Kevin
 
 
  --- James Gray [EMAIL PROTECTED] wrote:
 
   When I worked in both the VA and in IHS we did not
   try to delete bad patient
   records that showed up in the database.  Instead we
   ZZ'd them by putting the
   letters ZZ at the beginning of the name.  It is an
   ugly kludge, but it
   prevents big problems.
   Jim Gray
  
   - Original Message - 
   From: Kevin Toppenberg [EMAIL PROTECTED]
   To: hardhats-members@lists.sourceforge.net
   Sent: Tuesday, April 05, 2005 10:34 AM
   Subject: Re: [Hardhats-members] Fileman drop-out on
   pointer update
  
  
Well, the long and the short of it is that I
   should
NOT have tried to kill one of the two duplicate
records.  Thus I am doing something not supported,
   so
a crash is not technically a bug/problem.  (You
   put
your fingers into the spinning gears, you have to
   put
up with getting pinched!)
   
So I am going to read up (all 200 pages in the
   manual)
on how to merge patients.
   
I sure hope that as I blunder my way to a better
understanding that I don't do something really
   bad
   
Kevin
   
   
--- James Gray [EMAIL PROTECTED] wrote:
   
I am not in a situation where I can look at the
   DD's
for file 2 and file 901 so I am not sure
   about
the nodes that are causing the problem.  I do not
see how not having the $G is what could have
   caused
the situation of not having the ^DPT entry.  I
   would
like to see how having the $G would have allowed
   the
data to update correctly.  In principle there are
better ways of writing code than to allow M
   errors
to detect corrupt data, but merely preventing the
   M
error may also allow the code to do things that
   will
further corrupt the data as well.  Either way is
   a
risk.
   
The VA uses a X-ref on the SSN field to keep
   files 2
and 901 in synch.  Normally it works well.
   It
does assume that the SSN field is required.  You
   can
get into trouble if you make the SSN field
   optional.
 IHS keeps the two files in synch via code in the
special Fileman lookup routine on file 2.  That
   way
they get around the problem of SSN being not a
required field.
   
Jim Gray
  - Original Message - 
  From: Marianne Susaanti Follingstad
  To: hardhats-members@lists.sourceforge.net
  Sent: Monday, April 04, 2005 12:45 PM
  Subject: Re: [Hardhats-members] Fileman
   drop-out
on pointer update
   
   
  What then do you suggest?  In this case, NOT
having the $G is what created the situation of
   NOT
having a ^DPT entry that is pointed to.  In other
words, if the $G had been there, the data would
   have
updated correctly and avoided the data integrity
problem that now exists.  There has to be better
ways to detect missing or corrupt data than
   having
an application crash, which risks further
   corruption
of more data.
  I'm curious as to what the VA does for
   duplicate
records; anyone know?  If there is a merge
capability or deletion and repointing of
   duplicates
and it uses the standard FileMan functionality,
   then
it too could have the same issue.
   
  In this instance, the file on which things blew
was an IHS Patient file, so maybe the VA avoided
such pitfalls.  It is interesting to note that
   the
SCR node (which is meant to screen entries) is
   also
being used here to display info, which does not
   seem
like a great idea; however, there could still be
valid reasons to need to look at info in a
   pointed
to file during a screening

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread Marianne Susaanti Follingstad


Did you kill it or have FileMan kill it? If FileMan did it, then
I don't think you did anything 'not supported'.
Anyway, I just looked at this more closely and there is another
issue we haven't addressed yet. I still maintain that the $G is the
correct way to go (and checked out that it would not abend with that in
there in this situation) for most situations. Unfortunately, there
is another wrinkle here, since these are files that are being kept in sync
with the IEN being the same for the ^DPT and ^AUPNPAT. In that case,
repointing won't be appropriate and FileMan didn't notice that for some
reason. I'm guessing that the DD(901,.01,0) for the ^AUPNPAT
file has code that sets DINUM or it is set by software. I just tried
a similar exercise (with a $G in place) and FileMan beeped at the attempt
to change the pointer, thus there was a dangling pointer left in place,
which is also not desireable. Neither a crash nor this is optimal,
so I hope the merge software deals with things more throughly and deals
with such insync files. [So easy to be a Tuesday night quarterback
;-)]
Meanwhile, I am somewhat puzzled by the seeming lack of the SCR
node I set up to have any effect during lookups (only during repointing),
and yes, I did add "s" to the 0 node of the file. Sigh...
Marianne
Kevin Toppenberg wrote:
Well, the long and the short of it is that I should
NOT have tried to kill one of the two duplicate
records. Thus I am doing something not supported, so
a crash is not technically a bug/problem. ("You put
your fingers into the spinning gears, you have to put
up with getting pinched!")
So I am going to read up (all 200 pages in the manual)
on how to merge patients.
I sure hope that as I blunder my way to a better
understanding that I don't do something really bad
Kevin
--- James Gray [EMAIL PROTECTED]> wrote:
> I am not in a situation where I can look at the DD's
> for file 2 and file 901 so I am not sure about
> the nodes that are causing the problem. I do not
> see how not having the $G is what could have caused
> the situation of not having the ^DPT entry. I would
> like to see how having the $G would have allowed the
> data to update correctly. In principle there are
> better ways of writing code than to allow M errors
> to detect corrupt data, but merely preventing the M
> error may also allow the code to do things that will
> further corrupt the data as well. Either way is a
> risk.
>
> The VA uses a X-ref on the SSN field to keep files 2
> and 901 in synch. Normally it works well. It
> does assume that the SSN field is required. You can
> get into trouble if you make the SSN field optional.
> IHS keeps the two files in synch via code in the
> special Fileman lookup routine on file 2. That way
> they get around the problem of SSN being not a
> required field.
>
> Jim Gray
> - Original Message -
> From: Marianne Susaanti Follingstad
> To: hardhats-members@lists.sourceforge.net
> Sent: Monday, April 04, 2005 12:45 PM
> Subject: Re: [Hardhats-members] Fileman drop-out
> on pointer update
>
>
> What then do you suggest? In this case, NOT
> having the $G is what created the situation of NOT
> having a ^DPT entry that is pointed to. In other
> words, if the $G had been there, the data would have
> updated correctly and avoided the data integrity
> problem that now exists. There has to be better
> ways to detect missing or corrupt data than having
> an application crash, which risks further corruption
> of more data.
> I'm curious as to what the VA does for duplicate
> records; anyone know? If there is a merge
> capability or deletion and repointing of duplicates
> and it uses the standard FileMan functionality, then
> it too could have the same issue.
>
> In this instance, the file on which things blew
> was an IHS Patient file, so maybe the VA avoided
> such pitfalls. It is interesting to note that the
> SCR node (which is meant to screen entries) is also
> being used here to display info, which does not seem
> like a great idea; however, there could still be
> valid reasons to need to look at info in a pointed
> to file during a screening.
>
> Marianne
>
> James Gray wrote:
>
> One could argue that it is not fine to put
the
> $G there. There should never be a case in a good
> database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
> does not exist. If that happens something is wrong
> in your database and it needs to be cleaned up. I
> have seen ^AUPNPAT(Y,0) nodes exist when the
> corresponding ^DPT(Y,0) nodes did not exist on a
> system running Cache just for the record. If you
> put the $G in you may never know that you have a bad
> node and who knows what else that bad node may do?
> I would suggest not putting in the $G. Jim Gray
> - Original Message

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread James Gray



The code that keeps the two files in synch in IHS 
code is in a cross reference on the SSN field. The code that keeps the two 
files in synch in IHS code is in the special fileman lookup routine on file 
2. In IHS code that is in the ^AUPNLK* routines.

Jim Gray


  - Original Message - 
  From: 
  Marianne 
  Susaanti Follingstad 
  To: hardhats-members@lists.sourceforge.net 
  
  Sent: Tuesday, April 05, 2005 4:35 
  PM
  Subject: Re: [Hardhats-members] Fileman 
  drop-out on pointer update
  Did you kill it or have FileMan kill it? If FileMan 
  did it, then I don't think you did anything 'not supported'. 
  Anyway, I just looked at this more closely and there is another issue 
  we haven't addressed yet. I still maintain that the $G is the correct 
  way to go (and checked out that it would not abend with that in there in this 
  situation) for most situations. Unfortunately, there is another wrinkle 
  here, since these are files that are being kept in sync with the IEN being the 
  same for the ^DPT and ^AUPNPAT. In that case, repointing won't be 
  appropriate and FileMan didn't notice that for some reason. I'm guessing 
  that the DD(901,.01,0) for the ^AUPNPAT file has code that sets DINUM or 
  it is set by software. I just tried a similar exercise (with a $G in 
  place) and FileMan beeped at the attempt to change the pointer, thus there was 
  a dangling pointer left in place, which is also not desireable. Neither 
  a crash nor this is optimal, so I hope the merge software deals with things 
  more throughly and deals with such insync files. [So easy to be a 
  Tuesday night quarterback ;-)] 
  Meanwhile, I am somewhat puzzled by the seeming lack of the SCR node I 
  set up to have any effect during lookups (only during repointing), and yes, I 
  did add "s" to the 0 node of the file. Sigh... 
  Marianne 
  Kevin Toppenberg wrote: 
  Well, the long and the short of it is that I should 
NOT have tried to kill one of the two duplicate records. Thus 
I am doing something not supported, so a crash is not technically a 
bug/problem. ("You put your fingers into the spinning gears, you 
have to put up with getting pinched!") 
So I am going to read up (all 200 pages in the manual) on how to 
merge patients. 
I sure hope that as I blunder my way to a better understanding that I 
don't do something really bad 
Kevin 
--- James Gray [EMAIL PROTECTED] wrote: 
 I am not in a situation where I can look at the DD's  for 
file 2 and file 901 so I am not sure about  the nodes that are 
causing the problem. I do not  see how not having the $G is 
what could have caused  the situation of not having the ^DPT 
entry. I would  like to see how having the $G would have 
allowed the  data to update correctly. In principle there are 
 better ways of writing code than to allow M errors  to 
detect corrupt data, but merely preventing the M  error may also 
allow the code to do things that will  further corrupt the data as 
well. Either way is a  risk.   The VA uses a 
X-ref on the SSN field to keep files 2  and 901 in synch. 
Normally it works well. It  does assume that the SSN field is 
required. You can  get into trouble if you make the SSN field 
optional.  IHS keeps the two files in synch via code in the 
 special Fileman lookup routine on file 2. That way  
they get around the problem of SSN being not a  required field. 
  Jim Gray  - Original Message - 
 From: Marianne Susaanti Follingstad 
 To: hardhats-members@lists.sourceforge.net 
 Sent: Monday, April 04, 2005 12:45 PM 
 Subject: Re: [Hardhats-members] Fileman drop-out 
     on pointer updateWhat then 
do you suggest? In this case, NOT  having the $G is what 
created the situation of NOT  having a ^DPT entry that is pointed 
to. In other  words, if the $G had been there, the data would 
have  updated correctly and avoided the data integrity  
problem that now exists. There has to be better  ways to 
detect missing or corrupt data than having  an application crash, 
which risks further corruption  of more data.  
I'm curious as to what the VA does for duplicate  records; anyone 
know? If there is a merge  capability or deletion and 
repointing of duplicates  and it uses the standard FileMan 
functionality, then  it too could have the same issue.  
 In this instance, the file on which things blew 
 was an IHS Patient file, so maybe the VA avoided  such 
pitfalls. It is interesting to note that the  SCR node (which 
is meant to screen entries) is also  being used here to display 
info, which does not seem  like a great idea; however, there could 
still be  valid reasons to need to look at info in a pointed 
 to file during a screening.   Marianne 
  James Gray wrote:  
 One could argue that it is not fine

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-05 Thread James Gray
It could be overcome, but it would not be easy.  If it was easy, I doubt the 
VA would have been doing the Kludge for 20 years.

Jim Gray
- Original Message - 
From: Kevin Toppenberg [EMAIL PROTECTED]
To: hardhats-members@lists.sourceforge.net
Sent: Tuesday, April 05, 2005 11:26 AM
Subject: Re: [Hardhats-members] Fileman drop-out on pointer update


That is what we have had to do with our old system.
And it is an ugly kludge.  I was hoping to not have to
do that.
As programmers, can't we overcome such a thing.
I don't know yet if vista will show the stub entry
that is left behind.  I hope not.
Kevin
--- James Gray [EMAIL PROTECTED] wrote:
When I worked in both the VA and in IHS we did not
try to delete bad patient
records that showed up in the database.  Instead we
ZZ'd them by putting the
letters ZZ at the beginning of the name.  It is an
ugly kludge, but it
prevents big problems.
Jim Gray
- Original Message - 
From: Kevin Toppenberg [EMAIL PROTECTED]
To: hardhats-members@lists.sourceforge.net
Sent: Tuesday, April 05, 2005 10:34 AM
Subject: Re: [Hardhats-members] Fileman drop-out on
pointer update

 Well, the long and the short of it is that I
should
 NOT have tried to kill one of the two duplicate
 records.  Thus I am doing something not supported,
so
 a crash is not technically a bug/problem.  (You
put
 your fingers into the spinning gears, you have to
put
 up with getting pinched!)

 So I am going to read up (all 200 pages in the
manual)
 on how to merge patients.

 I sure hope that as I blunder my way to a better
 understanding that I don't do something really
bad

 Kevin


 --- James Gray [EMAIL PROTECTED] wrote:

 I am not in a situation where I can look at the
DD's
 for file 2 and file 901 so I am not sure
about
 the nodes that are causing the problem.  I do not
 see how not having the $G is what could have
caused
 the situation of not having the ^DPT entry.  I
would
 like to see how having the $G would have allowed
the
 data to update correctly.  In principle there are
 better ways of writing code than to allow M
errors
 to detect corrupt data, but merely preventing the
M
 error may also allow the code to do things that
will
 further corrupt the data as well.  Either way is
a
 risk.

 The VA uses a X-ref on the SSN field to keep
files 2
 and 901 in synch.  Normally it works well.
It
 does assume that the SSN field is required.  You
can
 get into trouble if you make the SSN field
optional.
  IHS keeps the two files in synch via code in the
 special Fileman lookup routine on file 2.  That
way
 they get around the problem of SSN being not a
 required field.

 Jim Gray
   - Original Message - 
   From: Marianne Susaanti Follingstad
   To: hardhats-members@lists.sourceforge.net
   Sent: Monday, April 04, 2005 12:45 PM
   Subject: Re: [Hardhats-members] Fileman
drop-out
 on pointer update


   What then do you suggest?  In this case, NOT
 having the $G is what created the situation of
NOT
 having a ^DPT entry that is pointed to.  In other
 words, if the $G had been there, the data would
have
 updated correctly and avoided the data integrity
 problem that now exists.  There has to be better
 ways to detect missing or corrupt data than
having
 an application crash, which risks further
corruption
 of more data.
   I'm curious as to what the VA does for
duplicate
 records; anyone know?  If there is a merge
 capability or deletion and repointing of
duplicates
 and it uses the standard FileMan functionality,
then
 it too could have the same issue.

   In this instance, the file on which things blew
 was an IHS Patient file, so maybe the VA avoided
 such pitfalls.  It is interesting to note that
the
 SCR node (which is meant to screen entries) is
also
 being used here to display info, which does not
seem
 like a great idea; however, there could still be
 valid reasons to need to look at info in a
pointed
 to file during a screening.

   Marianne

   James Gray wrote:

 One could argue that it is not fine to put
the
 $G there.  There should never be a case in a good
 database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
 does not exist.  If that happens something is
wrong
 in your database and it needs to be cleaned up.
I
 have seen ^AUPNPAT(Y,0) nodes exist when the
 corresponding ^DPT(Y,0) nodes did not exist on a
 system running Cache just for the record.  If you
 put the $G in you may never know that you have a
bad
 node and who knows what else that bad node may
do?
 I would suggest not putting in the $G. Jim Gray
   - Original Message -
   From: Marianne Susaanti Follingstad
   To: hardhats-members@lists.sourceforge.net
   Sent: Saturday, April 02, 2005 11:08 AM
   Subject: Re: [Hardhats-members] Fileman
 drop-out on pointer update
It should be fine to put the $G in there.
 There can't be any unforeseen consequences to
having
 it there.  In fact, as you found, there are
 unforeseen consequences to NOT having it there.
As
 I mentioned

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-04 Thread James Gray



One could argue that it is not fine to put the $G 
there. There should never be a case in a good database that ^AUPNPAT(Y,0) 
exists and ^DPT(Y,0) does not exist. If that happens something is wrong in 
your database and it needs to be cleaned up. I have seen ^AUPNPAT(Y,0) 
nodes exist when the corresponding ^DPT(Y,0) nodes did not exist on a system 
running Cache just for the record. If you put the $G in you may never know 
that you have a bad node and who knows what else that bad node may do? I 
would suggest not putting in the $G.

Jim Gray


  - Original Message - 
  From: 
  Marianne 
  Susaanti Follingstad 
  To: hardhats-members@lists.sourceforge.net 
  
  Sent: Saturday, April 02, 2005 11:08 
  AM
  Subject: Re: [Hardhats-members] Fileman 
  drop-out on pointer update
  It should be fine to put the $G in there. There can't 
  be any unforeseen consequences to having it there. In fact, as you 
  found, there are unforeseen consequences to NOT having it there. As I 
  mentioned, it would be good to have someone review these SCR nodes to see if 
  there are any other potential problems. 
  Marianne Follingstad 301 251 0139 
  Kevin Toppenberg wrote: 
  Marianne, 
Thanks for your help. 
Following your instructions: GTMzwr ^AUPNPAT(0) 
^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510" 
GTMzwr ^DD(901,0,"SCR") ^DD(901,0,"SCR")="X ""I 
'$P(^DPT(Y,0),U,19)"" W $E(^AUPNPAT(Y,0),0)"  
So you are right. This is the source of the line that caused 
the drop-out. 
I had suggested: It looks like the "^DPT(Y,0)" ought to be 
"$G(^DPT(Y,0))" 
So I could put that change here. But I'm note sure if that 
would have other unforseen consequenses. 
Is this really a 'bug'? Or is it one of those funny 
database-needs-to-be-rundown type situations? 
Thanks Kevin 
--- Marianne Susaanti Follingstad [EMAIL PROTECTED] 
wrote: 
 A quick look at the DI* routines I have (which are  old), 
leads me to suggest that  you look at the DD for the file defining 
^AUPNPAT.  Look at ^AUPNPAT(0) to find the  file number and 
then look at ^DD(file  number,0,"SCR") and I'm guessing you'll find 
 the culprit there as "I '$P(^DPT(Y,0),U,19)". If  
that is the problem then someone  should review the "SCR" nodes to 
ensure there are no  similar problems lurking...   
Of course the other problem is how to restart the  process, and 
unfortunately I don't  have any suggestions on that issue.  
 Marianne Follingstad  301 251 0139   Kevin 
Toppenberg wrote:I had two patients that were 
duplicates--i.e. the  same   person, but with two 
different married names. So I deleted one, and 
told fileman to change all   pointers from the former to the 
later. (I had to take off a guard to do this) 
It then scans through all the appropriate places 
 and   changes the pointers. 
But then it drops out after about 20-30 files. I   never 
knew what was happening before, but I have   recently studied a 
bit on GTM debugging  techniques,   and here is what I 
have come up with: Screen log:   
  ROES ELIGIBILITY CONFIRMATION entries whose  'PATIENT' 
  pointers have been changed  
 
MAR   29,2005 20:12 PAGE 1   
 
 
   
 *** NO 
RECORDS TO PRINT ***   GTMw 
$ECODE 
 notice  drop-out   ,M7,Z150372994,  
 GTMw $ZSTATUS   150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, 
Global  variable   undefined: ^DPT(75002,0)  
 GTMzprint SCR+1^DIO2  
 X DIS(0) Q:'$T G 
PASS:'$D(DIS(1)) GTMw DIS(0)   S 
Y=D0 I $D(^AUPNPAT(Y,0)) X "I  '$P(^DPT(Y,0),U,19)" W   
$E(^AUPNPAT(Y,0),0)   GTMw Y   75002  
 GTM It looks like the "^DPT(Y,0)" ought 
to be   "$G(^DPT(Y,0))" Kevin 

__   Do You 
Yahoo!?   Tired of spam? Yahoo! Mail has the best spam 
 protection around   http://mail.yahoo.com   
   
---   SF 
email is sponsored by - The IT Product Guide   Read honest  
candid reviews on hundreds of IT  Products from real users.  
 Discover which products truly live up to the hype.  Start 
reading now.http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click 
  ___   
Hardhats-members mailing list   
Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members 
  
__ Do you Yahoo!? Yahoo! 
Personals - Better first dates. More second dates. http://personals.yahoo.com 
--- SF e

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-04 Thread Marianne Susaanti Follingstad



What then do you suggest? In this case, NOT having the $G is
what created the situation of NOT having a ^DPT entry that is pointed to.
In other words, if the $G had been there, the data would have updated correctly
and avoided the data integrity problem that now exists. There has
to be better ways to detect missing or corrupt data than having an application
crash, which risks further corruption of more data.
I'm curious as to what the VA does for duplicate records; anyone
know? If there is a merge capability or deletion and repointing of
duplicates and it uses the standard FileMan functionality, then it too
could have the same issue.
In this instance, the file on which things blew was an IHS Patient
file, so maybe the VA avoided such pitfalls. It is interesting to
note that the SCR node (which is meant to screen entries) is also being
used here to display info, which does not seem like a great idea; however,
there could still be valid reasons to need to look at info in a pointed
to file during a screening.
Marianne
James Gray wrote:

One
could argue that it is not fine to put the $G there. There should
never be a case in a good database that ^AUPNPAT(Y,0) exists and ^DPT(Y,0)
does not exist. If that happens something is wrong in your database
and it needs to be cleaned up. I have seen ^AUPNPAT(Y,0) nodes exist
when the corresponding ^DPT(Y,0) nodes did not exist on a system running
Cache just for the record. If you put the $G in you may never know
that you have a bad node and who knows what else that bad node may do?
I would suggest not putting in the $G.Jim
Gray

- Original Message -

From:
Marianne
Susaanti Follingstad

To: hardhats-members@lists.sourceforge.net

Sent: Saturday, April 02, 2005 11:08
AM

Subject: Re: [Hardhats-members] Fileman
drop-out on pointer update
It should be fine to put the $G in there. There can't be
any unforeseen consequences to having it there. In fact, as you found,
there are unforeseen consequences to NOT having it there. As I mentioned,
it would be good to have someone review these SCR nodes to see if there
are any other potential problems.
Marianne Follingstad
301 251 0139
Kevin Toppenberg wrote:
Marianne,
Thanks for your help.
Following your instructions:
GTM>zwr ^AUPNPAT(0)
^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510"
GTM>zwr ^DD(901,0,"SCR")
^DD(901,0,"SCR")="X ""I '$P(^DPT(Y,0),U,19)"" W
$E(^AUPNPAT(Y,0),0)"

So you are right. This is the source of the line that
caused the drop-out.
I had suggested: It looks like the "^DPT(Y,0)" ought
to be "$G(^DPT(Y,0))"
So I could put that change here. But I'm note sure if
that would have other unforseen consequenses.
Is this really a 'bug'? Or is it one of those funny
database-needs-to-be-rundown type situations?
Thanks
Kevin
--- Marianne Susaanti Follingstad
[EMAIL PROTECTED]> wrote:
> A quick look at the DI* routines I have (which are
> old), leads me to suggest that
> you look at the DD for the file defining ^AUPNPAT.
> Look at ^AUPNPAT(0) to find the
> file number and then look at ^DD(file
> number,0,"SCR") and I'm guessing you'll find
> the culprit there as "I '$P(^DPT(Y,0),U,19)". If
> that is the problem then someone
> should review the "SCR" nodes to ensure there are no
> similar problems lurking...
>
> Of course the other problem is how to restart the
> process, and unfortunately I don't
> have any suggestions on that issue.
>
> Marianne Follingstad
> 301 251 0139
>
> Kevin Toppenberg wrote:
>
> > I had two patients that were duplicates--i.e. the
> same
> > person, but with two different married names.
> >
> > So I deleted one, and told fileman to change all
> > pointers from the former to the later.
> >
> > (I had to take off a guard to do this)
> >
> > It then scans through all the appropriate places
> and
> > changes the pointers.
> >
> > But then it drops out after about 20-30 files. I
> > never knew what was happening before, but I have
> > recently studied a bit on GTM debugging
> techniques,
> > and here is what I have come up with:
> >
> > Screen log:
> >
> > ROES ELIGIBILITY CONFIRMATION entries whose
> 'PATIENT'
> > pointers have been changed
> >
MAR
> > 29,2005 20:12 PAGE 1
> >
>

> >
> > ***
NO RECORDS TO PRINT ***
> > GTM>w $ECODE
 notice
> drop-out
> > ,M7,Z150372994,
> > GTM>w $ZSTATUS
> > 150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global
> variable
> > undefined: ^DPT(75002,0)
> > GTM>zprint SCR+1^DIO2
> > X DIS(0) Q:'$T
G PASS:'$D(DIS(1))
> >
> > GTM>w DIS(0)
> > S Y=D0 I $D(^AUPNPAT(Y,0)

RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-04 Thread Cameron Schlehuber









After a merge of patient
data, a stub is left behind.



-Original Message-
From:
[EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Marianne Susaanti Follingstad
Sent: Monday, April 04, 2005 11:46
AM
To: hardhats-members@lists.sourceforge.net
Subject: Re: [Hardhats-members]
Fileman drop-out on pointer update



What then do you suggest? In this case, NOT having the $G is what
created the situation of NOT having a ^DPT entry that is pointed to. In
other words, if the $G had been there, the data would have updated correctly
and avoided the data integrity problem that now exists. There has to be
better ways to detect missing or corrupt data than having an application crash,
which risks further corruption of more data. 

I'm
curious as to what the VA does for duplicate records; anyone know? If there
is a merge capability or deletion and repointing of duplicates and it uses the
standard FileMan functionality, then it too could have the same issue.


In this
instance, the file on which things blew was an IHS Patient file, so maybe the
VA avoided such pitfalls. It is interesting to note that the SCR node
(which is meant to screen entries) is also being used here to display info,
which does not seem like a great idea; however, there could still be valid
reasons to need to look at info in a pointed to file during a screening.


Marianne


James
Gray wrote: 



One could argue that it is not fine to put the $G
there. There should never be a case in a good database that ^AUPNPAT(Y,0)
exists and ^DPT(Y,0) does not exist. If that happens something is wrong
in your database and it needs to be cleaned up. I have seen ^AUPNPAT(Y,0)
nodes exist when the corresponding ^DPT(Y,0) nodes did not exist on a system
running Cache just for the record. If you put the $G in you may never
know that you have a bad node and who knows what else that bad node may
do? I would suggest not putting in the $G.Jim Gray




- Original Message -





From: Marianne
Susaanti Follingstad





To: hardhats-members@lists.sourceforge.net





Sent: Saturday, April
02, 2005 11:08 AM





Subject: Re:
[Hardhats-members] Fileman drop-out on pointer update



It should be fine to put the $G in there. There
can't be any unforeseen consequences to having it there. In fact, as you
found, there are unforeseen consequences to NOT having it there. As I
mentioned, it would be good to have someone review these SCR nodes to see if
there are any other potential problems. 

Marianne
Follingstad 
301 251 0139


Kevin
Toppenberg wrote: 



Marianne, 

Thanks
for your help. 

Following
your instructions: 
GTMzwr ^AUPNPAT(0) 
^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510 

GTMzwr
^DD(901,0,SCR) 
^DD(901,0,SCR)=X I
'$P(^DPT(Y,0),U,19) W 
$E(^AUPNPAT(Y,0),0) 
 

So you
are right. This is the source of the line that 
caused the drop-out. 

I had
suggested: It looks like the ^DPT(Y,0) ought 
to be $G(^DPT(Y,0)) 

So I
could put that change here. But I'm note sure if 
that would have other unforseen consequenses. 

Is this
really a 'bug'? Or is it one of those funny 
database-needs-to-be-rundown type situations? 

Thanks 
Kevin 

---
Marianne Susaanti Follingstad 
[EMAIL PROTECTED] wrote: 

 A
quick look at the DI* routines I have (which are 
 old), leads me to suggest that 
 you look at the DD for the file defining ^AUPNPAT. 
 Look at ^AUPNPAT(0) to find the 
 file number and then look at ^DD(file 
 number,0,SCR) and I'm guessing you'll find 
 the culprit there as I '$P(^DPT(Y,0),U,19). If 
 that is the problem then someone 
 should review the SCR nodes to ensure there are no 
 similar problems lurking... 
 
 Of course the other problem is how to restart the 
 process, and unfortunately I don't 
 have any suggestions on that issue. 
 
 Marianne Follingstad 
 301 251 0139 
 
 Kevin Toppenberg wrote: 
 
  I had two patients that were duplicates--i.e. the 
 same 
  person, but with two different married names. 
  
  So I deleted one, and told fileman to change all 
  pointers from the former to the later. 
  
  (I had to take off a guard to do this) 
  
  It then scans through all the appropriate places 
 and 
  changes the pointers. 
  
  But then it drops out after about 20-30 files. I 
  never knew what was happening before, but I have 
  recently studied a bit on GTM debugging 
 techniques, 
  and here is what I have come up with: 
  
  Screen log: 
  
  ROES ELIGIBILITY CONFIRMATION entries whose 
 'PATIENT' 
  pointers have been changed 


MAR 
  29,2005 20:12 PAGE 1 
  
 


  
  *** NO
RECORDS TO PRINT *** 
  GTMw
$ECODE
 notice 
 drop-out 
  ,M7,Z150372994, 
  GTMw $ZSTATUS 
  150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global 
 variable 
  undefined: ^DPT(75002,0) 
  GTMzprint SCR+1^DIO2 
  X DIS(0) Q:'$T
G PASS:'$D(DIS(1)) 
  
  GTMw DIS(0) 
  S Y=D0 I $D(^AUPNPAT(Y,0)) X I 
 '$P(^DPT(Y,0),U,19) W 
  $E(^AUPNPAT(Y,0),0) 
  GTMw Y 
  75002 
  GTM

RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-04 Thread Kevin Toppenberg
What data should such a stub contain?

Kevin


--- Cameron Schlehuber [EMAIL PROTECTED]
wrote:

 After a merge of patient data, a stub is left
 behind.
 
  
 
 -Original Message-
 From: [EMAIL PROTECTED]

[mailto:[EMAIL PROTECTED]
 On Behalf Of Marianne
 Susaanti Follingstad
 Sent: Monday, April 04, 2005 11:46 AM
 To: hardhats-members@lists.sourceforge.net
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
  
 
 What then do you suggest?  In this case, NOT having
 the $G is what created
 the situation of NOT having a ^DPT entry that is
 pointed to.  In other
 words, if the $G had been there, the data would have
 updated correctly and
 avoided the data integrity problem that now exists. 
 There has to be better
 ways to detect missing or corrupt data than having
 an application crash,
 which risks further corruption of more data. 
 
 I'm curious as to what the VA does for duplicate
 records; anyone know?  If
 there is a merge capability or deletion and
 repointing of duplicates and it
 uses the standard FileMan functionality, then it too
 could have the same
 issue. 
 
 In this instance, the file on which things blew was
 an IHS Patient file, so
 maybe the VA avoided such pitfalls.  It is
 interesting to note that the SCR
 node (which is meant to screen entries) is also
 being used here to display
 info, which does not seem like a great idea;
 however, there could still be
 valid reasons to need to look at info in a pointed
 to file during a
 screening. 
 
 Marianne 
 
 James Gray wrote: 
 
 One could argue that it is not fine to put the $G
 there.  There should never
 be a case in a good database that ^AUPNPAT(Y,0)
 exists and ^DPT(Y,0) does
 not exist.  If that happens something is wrong in
 your database and it needs
 to be cleaned up.  I have seen ^AUPNPAT(Y,0) nodes
 exist when the
 corresponding ^DPT(Y,0) nodes did not exist on a
 system running Cache just
 for the record.  If you put the $G in you may never
 know that you have a bad
 node and who knows what else that bad node may do? 
 I would suggest not
 putting in the $G. Jim Gray  
 
 - Original Message -
 
 From: Marianne mailto:[EMAIL PROTECTED] 
 Susaanti Follingstad
 
 To: hardhats-members@lists.sourceforge.net
 
 Sent: Saturday, April 02, 2005 11:08 AM
 
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
  It should be fine to put the $G in there.  There
 can't be any unforeseen
 consequences to having it there.  In fact, as you
 found, there are
 unforeseen consequences to NOT having it there.  As
 I mentioned, it would be
 good to have someone review these SCR nodes to see
 if there are any other
 potential problems. 
 
 Marianne Follingstad 
 301 251 0139 
 
 Kevin Toppenberg wrote: 
 
 Marianne, 
 
 Thanks for your help. 
 
 Following your instructions: 
 GTMzwr ^AUPNPAT(0) 
 ^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510 
 
 GTMzwr ^DD(901,0,SCR) 
 ^DD(901,0,SCR)=X I '$P(^DPT(Y,0),U,19) W 
 $E(^AUPNPAT(Y,0),0) 
   
 
 So you are right.  This is the source of the line
 that 
 caused the drop-out. 
 
 I had suggested: It looks like the ^DPT(Y,0) ought
 
 to be $G(^DPT(Y,0)) 
 
 So I could put that change here.  But I'm note sure
 if 
 that would have other unforseen consequenses. 
 
 Is this really a 'bug'?  Or is it one of those funny
 
 database-needs-to-be-rundown type situations? 
 
 Thanks 
 Kevin 
 
 --- Marianne Susaanti Follingstad 
 [EMAIL PROTECTED] wrote: 
 
  A quick look at the DI* routines I have (which are
 
  old), leads me to suggest that 
  you look at the DD for the file defining ^AUPNPAT.
 
  Look at ^AUPNPAT(0) to find the 
  file number and then look at ^DD(file 
  number,0,SCR) and I'm guessing you'll find 
  the culprit there as I '$P(^DPT(Y,0),U,19).  If 
  that is the problem then someone 
  should review the SCR nodes to ensure there are
 no 
  similar problems lurking... 
  
  Of course the other problem is how to restart the 
  process, and unfortunately I don't 
  have any suggestions on that issue. 
  
  Marianne Follingstad 
  301 251 0139 
  
  Kevin Toppenberg wrote: 
  
   I had two patients that were duplicates--i.e.
 the 
  same 
person, but with two different married names. 
   
   So I deleted one, and told fileman to change all
 
   pointers from the former to the later. 
   
   (I had to take off a guard to do this) 
   
   It then scans through all the appropriate places
 
  and 
   changes the pointers. 
   
   But then it drops out after about 20-30 files. 
 I 
   never knew what was happening before, but I have
 
   recently studied a bit on GTM debugging 
  techniques, 
   and here is what I have come up with: 
   
   Screen log: 
   
   ROES ELIGIBILITY CONFIRMATION entries whose 
  'PATIENT' 
   pointers have been changed 
 
 MAR 
   29,2005  20:12PAGE 1

RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-04 Thread Cameron Schlehuber
From page 78 at
www.va.gov/vdl/VistA_Lib/Infrastructure/Dupl_Rec_Merge/xt_73_p23_um.doc 

After the merge completes the FROM record is deleted.  A stub record
containing only the .01 field and a -9 node is then inserted in the PATIENT
file (#2).  The -9 node has a value equal to the internal entry number of
the TO entry.  If anyone tries to access the FROM entry while the merge is
in progress, or any time after that, the expected value will be returned
without an undefined error.  Additionally, the Name and the Social Security
Number fields originally contained in the FROM record are moved into the
ALIAS subfile in the TO record.

(The PDF version of the user manual seems to be corrupted.)

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Kevin
Toppenberg
Sent: Monday, April 04, 2005 12:32 PM
To: hardhats-members@lists.sourceforge.net
Subject: RE: [Hardhats-members] Fileman drop-out on pointer update

What data should such a stub contain?

Kevin


--- Cameron Schlehuber [EMAIL PROTECTED]
wrote:

 After a merge of patient data, a stub is left
 behind.
 
  
 
 -Original Message-
 From: [EMAIL PROTECTED]

[mailto:[EMAIL PROTECTED]
 On Behalf Of Marianne
 Susaanti Follingstad
 Sent: Monday, April 04, 2005 11:46 AM
 To: hardhats-members@lists.sourceforge.net
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
  
 
 What then do you suggest?  In this case, NOT having
 the $G is what created
 the situation of NOT having a ^DPT entry that is
 pointed to.  In other
 words, if the $G had been there, the data would have
 updated correctly and
 avoided the data integrity problem that now exists. 
 There has to be better
 ways to detect missing or corrupt data than having
 an application crash,
 which risks further corruption of more data. 
 
 I'm curious as to what the VA does for duplicate
 records; anyone know?  If
 there is a merge capability or deletion and
 repointing of duplicates and it
 uses the standard FileMan functionality, then it too
 could have the same
 issue. 
 
 In this instance, the file on which things blew was
 an IHS Patient file, so
 maybe the VA avoided such pitfalls.  It is
 interesting to note that the SCR
 node (which is meant to screen entries) is also
 being used here to display
 info, which does not seem like a great idea;
 however, there could still be
 valid reasons to need to look at info in a pointed
 to file during a
 screening. 
 
 Marianne 
 
 James Gray wrote: 
 
 One could argue that it is not fine to put the $G
 there.  There should never
 be a case in a good database that ^AUPNPAT(Y,0)
 exists and ^DPT(Y,0) does
 not exist.  If that happens something is wrong in
 your database and it needs
 to be cleaned up.  I have seen ^AUPNPAT(Y,0) nodes
 exist when the
 corresponding ^DPT(Y,0) nodes did not exist on a
 system running Cache just
 for the record.  If you put the $G in you may never
 know that you have a bad
 node and who knows what else that bad node may do? 
 I would suggest not
 putting in the $G. Jim Gray  
 
 - Original Message -
 
 From: Marianne mailto:[EMAIL PROTECTED] 
 Susaanti Follingstad
 
 To: hardhats-members@lists.sourceforge.net
 
 Sent: Saturday, April 02, 2005 11:08 AM
 
 Subject: Re: [Hardhats-members] Fileman drop-out on
 pointer update
 
  It should be fine to put the $G in there.  There
 can't be any unforeseen
 consequences to having it there.  In fact, as you
 found, there are
 unforeseen consequences to NOT having it there.  As
 I mentioned, it would be
 good to have someone review these SCR nodes to see
 if there are any other
 potential problems. 
 
 Marianne Follingstad 
 301 251 0139 
 
 Kevin Toppenberg wrote: 
 
 Marianne, 
 
 Thanks for your help. 
 
 Following your instructions: 
 GTMzwr ^AUPNPAT(0) 
 ^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510 
 
 GTMzwr ^DD(901,0,SCR) 
 ^DD(901,0,SCR)=X I '$P(^DPT(Y,0),U,19) W 
 $E(^AUPNPAT(Y,0),0) 
   
 
 So you are right.  This is the source of the line
 that 
 caused the drop-out. 
 
 I had suggested: It looks like the ^DPT(Y,0) ought
 
 to be $G(^DPT(Y,0)) 
 
 So I could put that change here.  But I'm note sure
 if 
 that would have other unforseen consequenses. 
 
 Is this really a 'bug'?  Or is it one of those funny
 
 database-needs-to-be-rundown type situations? 
 
 Thanks 
 Kevin 
 
 --- Marianne Susaanti Follingstad 
 [EMAIL PROTECTED] wrote: 
 
  A quick look at the DI* routines I have (which are
 
  old), leads me to suggest that 
  you look at the DD for the file defining ^AUPNPAT.
 
  Look at ^AUPNPAT(0) to find the 
  file number and then look at ^DD(file 
  number,0,SCR) and I'm guessing you'll find 
  the culprit there as I '$P(^DPT(Y,0),U,19).  If 
  that is the problem then someone 
  should review the SCR nodes to ensure there are
 no 
  similar problems lurking... 
  
  Of course the other problem is how to restart the 
  process, and unfortunately I don't 
  have any suggestions on that issue

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-03 Thread Marianne Susaanti Follingstad


This one entry isn't quite the same situation, since 3.5 is the file
found at ^%ZIS(1, so I don't believe that it would be necessary to change
the node. FileMan is definitely smart enough to know not to try to
access the file entry it had just deleted. The one that caused you
problems was in a file referenced by the entry you were deleting which
in turn was going back to try to use the original entry that was just deleted.
I'm impressed that you were so prompt in reviewing the "SCR" nodes...
Marianne
Kevin Toppenberg wrote:
Marianne,
I wrote this short code to show all the "SCR" nodes
ShowSCR
 new I
 set I=$order(^DD(""))
 for do quit:(I="")
 . if $data(^DD(I,0,"SCR"))
zwr ^DD(I,0,"SCR")
 . set I=$order(^DD(I))
I then looked at them all, and they all seemed ok
except for this one:
^DD(3.5,0,"SCR")="I 1 Q:$G(D)'=""LSYN""
Q:'$D(^%ZOSF(""VOL"")) I
$P(^%ZIS(1,Y,0),U,9)=^%ZOSF(""VOL"")!($P(^%ZIS(1,Y,0),U,9)=)"
It looks like that ^%ZIS ought to be in a $G().
Think I should change it?
Kevin
--- Marianne Susaanti Follingstad
[EMAIL PROTECTED]> wrote:
> It should be fine to put the $G in there. There
> can't be any unforeseen
> consequences to having it there. In fact, as you
> found, there are unforeseen
> consequences to NOT having it there. As I
> mentioned, it would be good to have
> someone review these SCR nodes to see if there are
> any other potential problems.
>
> Marianne Follingstad
> 301 251 0139
>
> Kevin Toppenberg wrote:
>
> > Marianne,
> >
> > Thanks for your help.
> >
> > Following your instructions:
> > GTM>zwr ^AUPNPAT(0)
> > ^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510"
> >
> > GTM>zwr ^DD(901,0,"SCR")
> > ^DD(901,0,"SCR")="X ""I '$P(^DPT(Y,0),U,19)""
> W
> > $E(^AUPNPAT(Y,0),0)"
> >
> >
> > So you are right. This is the source of the line
> that
> > caused the drop-out.
> >
> > I had suggested: It looks like the "^DPT(Y,0)"
> ought
> > to be "$G(^DPT(Y,0))"
> >
> > So I could put that change here. But I'm note
> sure if
> > that would have other unforseen consequenses.
> >
> > Is this really a 'bug'? Or is it one of those
> funny
> > database-needs-to-be-rundown type situations?
> >
> > Thanks
> > Kevin
> >
> > --- Marianne Susaanti Follingstad
> > [EMAIL PROTECTED]> wrote:
> >
> > > A quick look at the DI* routines I have (which
> are
> > > old), leads me to suggest that
> > > you look at the DD for the file defining
> ^AUPNPAT.
> > > Look at ^AUPNPAT(0) to find the
> > > file number and then look at ^DD(file
> > > number,0,"SCR") and I'm guessing you'll find
> > > the culprit there as "I '$P(^DPT(Y,0),U,19)".
> If
> > > that is the problem then someone
> > > should review the "SCR" nodes to ensure there
> are no
> > > similar problems lurking...
> > >
> > > Of course the other problem is how to restart
> the
> > > process, and unfortunately I don't
> > > have any suggestions on that issue.
> > >
> > > Marianne Follingstad
> > > 301 251 0139
> > >
> > > Kevin Toppenberg wrote:
> > >
> > > > I had two patients that were duplicates--i.e.
> the
> > > same
> > > > person, but with two different married names.
> > > >
> > > > So I deleted one, and told fileman to change
> all
> > > > pointers from the former to the later.
> > > >
> > > > (I had to take off a guard to do this)
> > > >
> > > > It then scans through all the appropriate
> places
> > > and
> > > > changes the pointers.
> > > >
> > > > But then it drops out after about 20-30 files.
> I
> > > > never knew what was happening before, but I
> have
> > > > recently studied a bit on GTM debugging
> > > techniques,
> > > > and here is what I have come up with:
> > > >
> > > > Screen log:
> > > >
> > > > ROES ELIGIBILITY CONFIRMATION entries whose
> > > 'PATIENT'
> > > > pointers have been changed
> > > >
> MAR
> > > > 29,2005 20:12 PAGE 1
> > > >
> > >
> >
>

> > > >
> > > >
*** NO RECORDS TO PRINT ***
> > > > GTM>w $ECODE
 notice
> > > drop-out
> > > > ,M7,Z150372994,
> > > > GTM>w $ZSTATUS
> > > > 150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global
> > > variable
> > > > undefined: ^DPT(75002,0)
> > > > GTM>zprint SCR+1^DIO2
> > > > X DIS(0) Q:'$T
G PASS:'$D(DIS(1))
> > > >
> > > > GTM>w DIS(0)
> > > > S Y=D0 I $D(^AUPNPAT(Y,0)) X "I
> > > '$P(^DPT(Y,0),U,19)" W
> > > > $E(^AUPNPAT(Y,0),0)
> > > > GTM>w Y
> > > > 75002
> > > > GTM>
> > > >
> > > > It looks like the "^DPT(Y,0)" ought to be
> > > > "$G(^DPT(Y,0))"
> > > >
> > > > Kevin
> > > >
> > > >
> __
> > > > Do You Yahoo!?
> > > > Tired of spam? Yahoo! Mail has the best spam
> > > protection around
> > > > http://mail.yahoo.com
> > > >
> > > >
> > >
> >
>
---
> > > > SF email is sponsored by - The IT Product
> Guide
> > > > Read honest  candid reviews on hundreds of IT
> > > Products from real users.
> > > > Discover which products truly live up to the
> hype.
> > > Start reading now.
> > > >
> > >

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-03 Thread Kevin Toppenberg
Thanks,

But don't be too impressed.  I don't have a clue what
SCR nodes do.  I was just looking for code that
referenced globals without a $get() or $data() guard.

Kevin

--- Marianne Susaanti Follingstad
[EMAIL PROTECTED] wrote:

 This one entry isn't quite the same situation, since
 3.5 is the file found at
 ^%ZIS(1, so I don't believe that it would be
 necessary to change the node.  FileMan
 is definitely smart enough to know not to try to
 access the file entry it had just
 deleted.  The one that caused you problems was in a
 file referenced by the entry you
 were deleting which in turn was going back to try to
 use the original entry that was
 just deleted.
 
 I'm impressed that you were so prompt in reviewing
 the SCR nodes...
 
 Marianne
 
 Kevin Toppenberg wrote:
 
  Marianne,
 
  I wrote this short code to show all the SCR
 nodes
 
  ShowSCR
  new I
  set I=$order(^DD())
  for  do  quit:(I=)
  . if $data(^DD(I,0,SCR)) zwr
 ^DD(I,0,SCR)
  . set I=$order(^DD(I))
 
  I then looked at them all, and they all seemed ok
  except for this one:
 
  ^DD(3.5,0,SCR)=I 1 Q:$G(D)'=LSYN
  Q:'$D(^%ZOSF(VOL))  I
 

$P(^%ZIS(1,Y,0),U,9)=^%ZOSF(VOL)!($P(^%ZIS(1,Y,0),U,9)=)
 
  It looks like that ^%ZIS ought to be in a $G().
 
  Think I should change it?
 
  Kevin
 
  --- Marianne Susaanti Follingstad
  [EMAIL PROTECTED] wrote:
 
   It should be fine to put the $G in there.  There
   can't be any unforeseen
   consequences to having it there.  In fact, as
 you
   found, there are unforeseen
   consequences to NOT having it there.  As I
   mentioned, it would be good to have
   someone review these SCR nodes to see if there
 are
   any other potential problems.
  
   Marianne Follingstad
   301 251 0139
  
   Kevin Toppenberg wrote:
  
Marianne,
   
Thanks for your help.
   
Following your instructions:
GTMzwr ^AUPNPAT(0)
   
 ^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510
   
GTMzwr ^DD(901,0,SCR)
^DD(901,0,SCR)=X I
 '$P(^DPT(Y,0),U,19)
   W
$E(^AUPNPAT(Y,0),0)
   
   
So you are right.  This is the source of the
 line
   that
caused the drop-out.
   
I had suggested: It looks like the ^DPT(Y,0)
   ought
to be $G(^DPT(Y,0))
   
So I could put that change here.  But I'm note
   sure if
that would have other unforseen consequenses.
   
Is this really a 'bug'?  Or is it one of those
   funny
database-needs-to-be-rundown type situations?
   
Thanks
Kevin
   
--- Marianne Susaanti Follingstad
[EMAIL PROTECTED] wrote:
   
 A quick look at the DI* routines I have
 (which
   are
 old), leads me to suggest that
 you look at the DD for the file defining
   ^AUPNPAT.
 Look at ^AUPNPAT(0) to find the
 file number and then look at ^DD(file
 number,0,SCR) and I'm guessing you'll find
 the culprit there as I
 '$P(^DPT(Y,0),U,19).
   If
 that is the problem then someone
 should review the SCR nodes to ensure
 there
   are no
 similar problems lurking...

 Of course the other problem is how to
 restart
   the
 process, and unfortunately I don't
 have any suggestions on that issue.

 Marianne Follingstad
 301 251 0139

 Kevin Toppenberg wrote:

  I had two patients that were
 duplicates--i.e.
   the
 same
   person, but with two different married
 names.
 
  So I deleted one, and told fileman to
 change
   all
  pointers from the former to the later.
 
  (I had to take off a guard to do this)
 
  It then scans through all the appropriate
   places
 and
  changes the pointers.
 
  But then it drops out after about 20-30
 files.
I
  never knew what was happening before, but
 I
   have
  recently studied a bit on GTM debugging
 techniques,
  and here is what I have come up with:
 
  Screen log:
 
  ROES ELIGIBILITY CONFIRMATION entries
 whose
 'PATIENT'
  pointers have been changed
 
   MAR
  29,2005  20:12PAGE 1
 

   
  
 


 
*** NO RECORDS TO PRINT ***
  GTMw $ECODE   notice
 drop-out
  ,M7,Z150372994,
  GTMw $ZSTATUS
  150372994,SCR+1^DIO2,%GTM-E-GVUNDEF,
 Global
 variable
  undefined: ^DPT(75002,0)
  GTMzprint SCR+1^DIO2
  X DIS(0) Q:'$T  G PASS:'$D(DIS(1))
 
  GTMw DIS(0)
  S Y=D0 I $D(^AUPNPAT(Y,0)) X I
 '$P(^DPT(Y,0),U,19) W
  $E(^AUPNPAT(Y,0),0)
  GTMw Y
  75002
  GTM
 
  It looks like the ^DPT(Y,0) ought to be
  $G(^DPT(Y,0))
 
 
=== message truncated ===




__ 
Yahoo! Messenger 
Show us what our next emoticon should look like. Join the fun. 
http://www.advision.webevents.yahoo.com/emoticontest


---

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Kevin Toppenberg
Marianne,

Thanks for your help.

Following your instructions:
GTMzwr ^AUPNPAT(0)
^AUPNPAT(0)=PATIENT/IHS^901sIP^14861^1510
 
GTMzwr ^DD(901,0,SCR)
^DD(901,0,SCR)=X I '$P(^DPT(Y,0),U,19) W
$E(^AUPNPAT(Y,0),0)
 

So you are right.  This is the source of the line that
caused the drop-out.

I had suggested: It looks like the ^DPT(Y,0) ought
to be $G(^DPT(Y,0))

So I could put that change here.  But I'm note sure if
that would have other unforseen consequenses.

Is this really a 'bug'?  Or is it one of those funny
database-needs-to-be-rundown type situations?

Thanks
Kevin



--- Marianne Susaanti Follingstad
[EMAIL PROTECTED] wrote:

 A quick look at the DI* routines I have (which are
 old), leads me to suggest that
 you look at the DD for the file defining ^AUPNPAT. 
 Look at ^AUPNPAT(0) to find the
 file number and then look at ^DD(file
 number,0,SCR) and I'm guessing you'll find
 the culprit there as I '$P(^DPT(Y,0),U,19).  If
 that is the problem then someone
 should review the SCR nodes to ensure there are no
 similar problems lurking...
 
 Of course the other problem is how to restart the
 process, and unfortunately I don't
 have any suggestions on that issue.
 
 Marianne Follingstad
 301 251 0139
 
 Kevin Toppenberg wrote:
 
  I had two patients that were duplicates--i.e. the
 same
   person, but with two different married names.
 
  So I deleted one, and told fileman to change all
  pointers from the former to the later.
 
  (I had to take off a guard to do this)
 
  It then scans through all the appropriate places
 and
  changes the pointers.
 
  But then it drops out after about 20-30 files.  I
  never knew what was happening before, but I have
  recently studied a bit on GTM debugging
 techniques,
  and here is what I have come up with:
 
  Screen log:
 
  ROES ELIGIBILITY CONFIRMATION entries whose
 'PATIENT'
  pointers have been changed
 MAR
  29,2005  20:12PAGE 1
 


 
*** NO RECORDS TO PRINT ***
  GTMw $ECODE   notice
 drop-out
  ,M7,Z150372994,
  GTMw $ZSTATUS
  150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global
 variable
  undefined: ^DPT(75002,0)
  GTMzprint SCR+1^DIO2
  X DIS(0) Q:'$T  G PASS:'$D(DIS(1))
 
  GTMw DIS(0)
  S Y=D0 I $D(^AUPNPAT(Y,0)) X I
 '$P(^DPT(Y,0),U,19) W
  $E(^AUPNPAT(Y,0),0)
  GTMw Y
  75002
  GTM
 
  It looks like the ^DPT(Y,0) ought to be
  $G(^DPT(Y,0))
 
  Kevin
 
  __
  Do You Yahoo!?
  Tired of spam?  Yahoo! Mail has the best spam
 protection around
  http://mail.yahoo.com
 
 

---
  SF email is sponsored by - The IT Product Guide
  Read honest  candid reviews on hundreds of IT
 Products from real users.
  Discover which products truly live up to the hype.
 Start reading now.
 

http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
  ___
  Hardhats-members mailing list
  Hardhats-members@lists.sourceforge.net
 

https://lists.sourceforge.net/lists/listinfo/hardhats-members
 




__ 
Do you Yahoo!? 
Yahoo! Personals - Better first dates. More second dates. 
http://personals.yahoo.com



---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Marianne Susaanti Follingstad


It should be fine to put the $G in there. There can't be any
unforeseen consequences to having it there. In fact, as you found,
there are unforeseen consequences to NOT having it there. As I mentioned,
it would be good to have someone review these SCR nodes to see if there
are any other potential problems.
Marianne Follingstad
301 251 0139
Kevin Toppenberg wrote:
Marianne,
Thanks for your help.
Following your instructions:
GTM>zwr ^AUPNPAT(0)
^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510"
GTM>zwr ^DD(901,0,"SCR")
^DD(901,0,"SCR")="X ""I '$P(^DPT(Y,0),U,19)"" W
$E(^AUPNPAT(Y,0),0)"

So you are right. This is the source of the line that
caused the drop-out.
I had suggested: It looks like the "^DPT(Y,0)" ought
to be "$G(^DPT(Y,0))"
So I could put that change here. But I'm note sure if
that would have other unforseen consequenses.
Is this really a 'bug'? Or is it one of those funny
database-needs-to-be-rundown type situations?
Thanks
Kevin
--- Marianne Susaanti Follingstad
[EMAIL PROTECTED]> wrote:
> A quick look at the DI* routines I have (which are
> old), leads me to suggest that
> you look at the DD for the file defining ^AUPNPAT.
> Look at ^AUPNPAT(0) to find the
> file number and then look at ^DD(file
> number,0,"SCR") and I'm guessing you'll find
> the culprit there as "I '$P(^DPT(Y,0),U,19)". If
> that is the problem then someone
> should review the "SCR" nodes to ensure there are no
> similar problems lurking...
>
> Of course the other problem is how to restart the
> process, and unfortunately I don't
> have any suggestions on that issue.
>
> Marianne Follingstad
> 301 251 0139
>
> Kevin Toppenberg wrote:
>
> > I had two patients that were duplicates--i.e. the
> same
> > person, but with two different married names.
> >
> > So I deleted one, and told fileman to change all
> > pointers from the former to the later.
> >
> > (I had to take off a guard to do this)
> >
> > It then scans through all the appropriate places
> and
> > changes the pointers.
> >
> > But then it drops out after about 20-30 files. I
> > never knew what was happening before, but I have
> > recently studied a bit on GTM debugging
> techniques,
> > and here is what I have come up with:
> >
> > Screen log:
> >
> > ROES ELIGIBILITY CONFIRMATION entries whose
> 'PATIENT'
> > pointers have been changed
> >
MAR
> > 29,2005 20:12 PAGE 1
> >
>

> >
> > ***
NO RECORDS TO PRINT ***
> > GTM>w $ECODE
 notice
> drop-out
> > ,M7,Z150372994,
> > GTM>w $ZSTATUS
> > 150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global
> variable
> > undefined: ^DPT(75002,0)
> > GTM>zprint SCR+1^DIO2
> > X DIS(0) Q:'$T
G PASS:'$D(DIS(1))
> >
> > GTM>w DIS(0)
> > S Y=D0 I $D(^AUPNPAT(Y,0)) X "I
> '$P(^DPT(Y,0),U,19)" W
> > $E(^AUPNPAT(Y,0),0)
> > GTM>w Y
> > 75002
> > GTM>
> >
> > It looks like the "^DPT(Y,0)" ought to be
> > "$G(^DPT(Y,0))"
> >
> > Kevin
> >
> > __
> > Do You Yahoo!?
> > Tired of spam? Yahoo! Mail has the best spam
> protection around
> > http://mail.yahoo.com
> >
> >
>
---
> > SF email is sponsored by - The IT Product Guide
> > Read honest  candid reviews on hundreds of IT
> Products from real users.
> > Discover which products truly live up to the hype.
> Start reading now.
> >
>
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
> > ___
> > Hardhats-members mailing list
> > Hardhats-members@lists.sourceforge.net
> >
>
https://lists.sourceforge.net/lists/listinfo/hardhats-members
>

__
Do you Yahoo!?
Yahoo! Personals - Better first dates. More second dates.
http://personals.yahoo.com
---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real
users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members



RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Kevin Toppenberg
Yeah, but it is the nature of the weak minded to look
for answers in superstition.  LOL.

Actually, my production system rarely needs to be
rundown.  But that is probably because I am now quite
careful with it.  But when I am configuring a new
system, I often have crashes that lead to the funny
behavior that I hinted at.

Kevin




--- Bhaskar, KS [EMAIL PROTECTED] wrote:

 Comment below.
 
 -- Bhaskar
 
 -Original Message-
 From: [EMAIL PROTECTED]
 on behalf of Kevin Toppenberg
 Sent: Fri 4/1/2005 12:59 PM
 To:   hardhats-members@lists.sourceforge.net
 Cc:   
 Subject:  Re: [Hardhats-members] Fileman drop-out on
 pointer update
 Marianne,
 
 [KSB] ...snip...
 
 Is this really a 'bug'?  Or is it one of those funny
 database-needs-to-be-rundown type situations?
 
 [KSB] Kevin, you are invoking rundown as if it is a
 lucky rabbit's foot to be kept in the pocket and
 touched for good luck.  Unless something is
 fundamentally flawed in how you operate GT.M, you
 should not need rundown.  Fortunately, it's harmless
 (the only time not to try it is when you are
 bringing up the computer after a crash like a power
 failure and you are about to do a mupip journal
 -recover -backward, and even there it's usually
 harmless).  The only time you would need it is when
 you are bringing up a database when something has
 gone wrong - like a system crash, and you didn't
 have journaling turned on, or when the last process
 accessing a database terminated abnormally (e.g.,
 someone issued a kill -9 on it).  It's also a quick
 way to see whether anyone is in the database, when
 you are powering down the system, or replacing one
 GT.M version with another.  At other times, it is no
 more than that rabbit's foot.
 
 -- Bhaskar
 




__ 
Yahoo! Messenger 
Show us what our next emoticon should look like. Join the fun. 
http://www.advision.webevents.yahoo.com/emoticontest


---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Bhaskar, KS



-Original Message-
From:   [EMAIL PROTECTED] on behalf of Kevin Toppenberg
Sent:   Sat 4/2/2005 3:46 PM
To: hardhats-members@lists.sourceforge.net
Cc: 
Subject:RE: [Hardhats-members] Fileman drop-out on pointer update
Yeah, but it is the nature of the weak minded to look
for answers in superstition.  LOL.

Actually, my production system rarely needs to be
rundown.  But that is probably because I am now quite
careful with it.  But when I am configuring a new
system, I often have crashes that lead to the funny
behavior that I hinted at.

Kevin

[KSB] OK, if there are system crashes, and you are not running journaling, then 
rundown makes sense.  Remember to run a mupip integ periodically, because the 
database can be structurally damaged by a crash.

-- Bhaskar
winmail.dat

Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Nancy Anthracite
When Rick was helping to port the VA Demo to GTM, I noticed he did a rundown 
on the database every time he shut it down and since then, I have done that 
as well.   True that at the time he was tinkering with its innards, but I 
figured I ought to take a hint and do the same.

On Saturday 02 April 2005 04:10 pm, Bhaskar, KS wrote:
 -Original Message-
 From: [EMAIL PROTECTED] on behalf of Kevin
 Toppenberg Sent: Sat 4/2/2005 3:46 PM
 To: hardhats-members@lists.sourceforge.net
 Cc:
 Subject: RE: [Hardhats-members] Fileman drop-out on pointer update
 Yeah, but it is the nature of the weak minded to look
 for answers in superstition.  LOL.

 Actually, my production system rarely needs to be
 rundown.  But that is probably because I am now quite
 careful with it.  But when I am configuring a new
 system, I often have crashes that lead to the funny
 behavior that I hinted at.

 Kevin

 [KSB] OK, if there are system crashes, and you are not running journaling,
 then rundown makes sense.  Remember to run a mupip integ periodically,
 because the database can be structurally damaged by a crash.

 -- Bhaskar

-- 
Nancy Anthracite


---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Chris Richardson
Nancy;

   He was only tickling the VistA innards which is an abstraction from the
MUMPS environment.   There is no magic really, but if one is shutting down,
it is best to do the rundown first (especially if you are the only user).

   Best wishes;   Chris

- Original Message -
From: Nancy Anthracite [EMAIL PROTECTED]
To: hardhats-members@lists.sourceforge.net
Sent: Saturday, April 02, 2005 1:20 PM
Subject: Re: [Hardhats-members] Fileman drop-out on pointer update


 When Rick was helping to port the VA Demo to GTM, I noticed he did a
rundown
 on the database every time he shut it down and since then, I have done
that
 as well.   True that at the time he was tinkering with its innards, but I
 figured I ought to take a hint and do the same.

 On Saturday 02 April 2005 04:10 pm, Bhaskar, KS wrote:
  -Original Message-
  From: [EMAIL PROTECTED] on behalf of Kevin
  Toppenberg Sent: Sat 4/2/2005 3:46 PM
  To: hardhats-members@lists.sourceforge.net
  Cc:
  Subject: RE: [Hardhats-members] Fileman drop-out on pointer update
  Yeah, but it is the nature of the weak minded to look
  for answers in superstition.  LOL.
 
  Actually, my production system rarely needs to be
  rundown.  But that is probably because I am now quite
  careful with it.  But when I am configuring a new
  system, I often have crashes that lead to the funny
  behavior that I hinted at.
 
  Kevin
 
  [KSB] OK, if there are system crashes, and you are not running
journaling,
  then rundown makes sense.  Remember to run a mupip integ periodically,
  because the database can be structurally damaged by a crash.
 
  -- Bhaskar

 --
 Nancy Anthracite


 ---
 SF email is sponsored by - The IT Product Guide
 Read honest  candid reviews on hundreds of IT Products from real users.
 Discover which products truly live up to the hype. Start reading now.
 http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
 ___
 Hardhats-members mailing list
 Hardhats-members@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/hardhats-members






---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


RE: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Greg Woodhouse
In a former life I did QA for the Kernel team. At the time, I ran MSM
on my workstation (a 486, if that tells you anything) and I did
inegrity checks as part of my testing process. I think I found an
integrity problem -- once.

This error is due to a dangling pointer (no patient exists with a DFN
of Y) and I hav to agree that dangling pointers are much more likely to
be due to something going wrong at the VistA level than in the
underlying MUMPS system. Yes, it's possible that one or more global
nodes could be lost, but I have to agree that we're looking a little
too reflexively for GTM errors.

--- Bhaskar, KS [EMAIL PROTECTED] wrote:
 
 
 
 -Original Message-
 From: [EMAIL PROTECTED] on behalf of Kevin
 Toppenberg
 Sent: Sat 4/2/2005 3:46 PM
 To:   hardhats-members@lists.sourceforge.net
 Cc:   
 Subject:  RE: [Hardhats-members] Fileman drop-out on pointer update
 Yeah, but it is the nature of the weak minded to look
 for answers in superstition.  LOL.
 
 Actually, my production system rarely needs to be
 rundown.  But that is probably because I am now quite
 careful with it.  But when I am configuring a new
 system, I often have crashes that lead to the funny
 behavior that I hinted at.
 
 Kevin
 
 [KSB] OK, if there are system crashes, and you are not running
 journaling, then rundown makes sense.  Remember to run a mupip integ
 periodically, because the database can be structurally damaged by a
 crash.
 
 -- Bhaskar
 

A practical man is a man who practices the errors of his forefathers. 
--Benjamin Disraeli

Greg Woodhouse 
[EMAIL PROTECTED] 
[EMAIL PROTECTED] 





---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members


Re: [Hardhats-members] Fileman drop-out on pointer update

2005-04-02 Thread Greg Kreis




All you will do is postpone the inevitable. The zero node of a record
is essential and shouldn't be missing. It is a sign that something is
wrong. (I can think of one case in the 3.9 file where I believe the
zero node's non-existence is a 'sign' that the record is being built
and not ready yet, but I am only inferring this reading.)

Kevin Toppenberg wrote:

  Marianne,

I wrote this short code to show all the "SCR" nodes

ShowSCR
new I
set I=$order(^DD(""))
for  do  quit:(I="")
. if $data(^DD(I,0,"SCR")) zwr ^DD(I,0,"SCR")
. set I=$order(^DD(I))

I then looked at them all, and they all seemed ok
except for this one:
 
^DD(3.5,0,"SCR")="I 1 Q:$G(D)'=""LSYN"" 
Q:'$D(^%ZOSF(""VOL""))  I
$P(^%ZIS(1,Y,0),U,9)=^%ZOSF(""VOL"")!($P(^%ZIS(1,Y,0),U,9)=)"


It looks like that ^%ZIS ought to be in a $G().

Think I should change it?

Kevin


--- Marianne Susaanti Follingstad
[EMAIL PROTECTED] wrote:

  
  
It should be fine to put the $G in there.  There
can't be any unforeseen
consequences to having it there.  In fact, as you
found, there are unforeseen
consequences to NOT having it there.  As I
mentioned, it would be good to have
someone review these SCR nodes to see if there are
any other potential problems.

Marianne Follingstad
301 251 0139

Kevin Toppenberg wrote:



  Marianne,

Thanks for your help.

Following your instructions:
GTMzwr ^AUPNPAT(0)
^AUPNPAT(0)="PATIENT/IHS^901sIP^14861^1510"

GTMzwr ^DD(901,0,"SCR")
^DD(901,0,"SCR")="X ""I '$P(^DPT(Y,0),U,19)""
  

W


  $E(^AUPNPAT(Y,0),0)"


So you are right.  This is the source of the line
  

that


  caused the drop-out.

I had suggested: It looks like the "^DPT(Y,0)"
  

ought


  to be "$G(^DPT(Y,0))"

So I could put that change here.  But I'm note
  

sure if


  that would have other unforseen consequenses.

Is this really a 'bug'?  Or is it one of those
  

funny


  database-needs-to-be-rundown type situations?

Thanks
Kevin

--- Marianne Susaanti Follingstad
[EMAIL PROTECTED] wrote:

  
  
A quick look at the DI* routines I have (which

  

are


  
old), leads me to suggest that
you look at the DD for the file defining

  

^AUPNPAT.


  
Look at ^AUPNPAT(0) to find the
file number and then look at ^DD(file
number,0,"SCR") and I'm guessing you'll find
the culprit there as "I '$P(^DPT(Y,0),U,19)". 

  

If


  
that is the problem then someone
should review the "SCR" nodes to ensure there

  

are no


  
similar problems lurking...

Of course the other problem is how to restart

  

the


  
process, and unfortunately I don't
have any suggestions on that issue.

Marianne Follingstad
301 251 0139

Kevin Toppenberg wrote:



  I had two patients that were duplicates--i.e.
  

  

the


  
same


   person, but with two different married names.

So I deleted one, and told fileman to change
  

  

all


  

  pointers from the former to the later.

(I had to take off a guard to do this)

It then scans through all the appropriate
  

  

places


  
and


  changes the pointers.

But then it drops out after about 20-30 files.
  

  

 I


  

  never knew what was happening before, but I
  

  

have


  

  recently studied a bit on GTM debugging
  

techniques,


  and here is what I have come up with:

Screen log:

ROES ELIGIBILITY CONFIRMATION entries whose
  

'PATIENT'


  pointers have been changed
  
  

  

MAR


  

  29,2005  20:12PAGE 1

  

  

  
  
  
  

  

*** NO RECORDS TO PRINT ***
GTMw $ECODE   notice
  

drop-out


  ,M7,Z150372994,
GTMw $ZSTATUS
150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global
  

variable


  undefined: ^DPT(75002,0)
GTMzprint SCR+1^DIO2
X DIS(0) Q:'$T  G PASS:'$D(DIS(1))

GTMw DIS(0)
S Y=D0 I $D(^AUPNPAT(Y,0)) X "I
  

'$P(^DPT(Y,0),U,19)" W


  $E(^AUPNPAT(Y,0),0)
GTMw Y
75002

[Hardhats-members] Fileman drop-out on pointer update

2005-03-29 Thread Kevin Toppenberg
I had two patients that were duplicates--i.e. the same
 person, but with two different married names.

So I deleted one, and told fileman to change all
pointers from the former to the later.

(I had to take off a guard to do this)

It then scans through all the appropriate places and
changes the pointers. 

But then it drops out after about 20-30 files.  I
never knew what was happening before, but I have
recently studied a bit on GTM debugging techniques,
and here is what I have come up with:

Screen log:

ROES ELIGIBILITY CONFIRMATION entries whose 'PATIENT'
pointers have been changed
   MAR
29,2005  20:12PAGE 1






  *** NO RECORDS TO PRINT ***
GTMw $ECODE   notice drop-out
,M7,Z150372994,
GTMw $ZSTATUS
150372994,SCR+1^DIO2,%GTM-E-GVUNDEF, Global variable
undefined: ^DPT(75002,0)
GTMzprint SCR+1^DIO2
X DIS(0) Q:'$T  G PASS:'$D(DIS(1))

GTMw DIS(0)
S Y=D0 I $D(^AUPNPAT(Y,0)) X I '$P(^DPT(Y,0),U,19) W
$E(^AUPNPAT(Y,0),0)
GTMw Y
75002
GTM


It looks like the ^DPT(Y,0) ought to be
$G(^DPT(Y,0))
  
Kevin


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click
___
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hardhats-members