Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: DBTSROLL

DBTSROLL.m

Go to the documentation of this file.
DBTSROLL ;BAO/DMH roll back the patient log to where it   [ 02/05/1999  11:13 AM ]
 ;        was prior to the beginning of the load
 ;
 ;
 ;     is called from the DBTS ADD PATIENT ROLLBACK remote proc.
 ;     if error was encountered in the middle of the SQL load this 
 ;     procedure is called to reset the log to where is was before
 ;     the load was started
 ;  
 ;
START ;
 ;
ROL(DBTSRET,DBTSP)          ;dbtsret is return value, dbtsp input value of patient ien
 ;
 ;
TEST ;
 S ARRAY=0
 ;S DBTSP=12016  ;uncomment if want to test with call to TEST directly
 ;
 S DBTSRET(1)="-1"  ;just incase stops prematurely
 D ^XBKVAR
 I DUZ(2)=4526 S DUZ(2)=2348
 S DBTS("LOC")=$P($G(^AUTTLOC(DUZ(2),0)),"^",10)
 I DBTS("LOC")="" S DBTSRET(1)="-1" Q
 S DBTS("ID")=DBTS("LOC")_"|1419200ROL|"_DBTSP
 ;
 ;                      if nothing in tmp returns -1
 ;
 ;I '$D(^DBTS("TMP",DBTSP)) S DBTSRET(1)="-1" Q
 ;  put the temp patient log information back to dbts patient file
 S DA=DBTSP,DIK="^DBTSPAT(" D ^DIK
 S NODE=""
 F  S NODE=$O(^DBTS("TMP",DBTSP,NODE)) Q:NODE=""  D
 .S ^DBTSPAT(DBTSP,NODE)=^DBTS("TMP",DBTSP,NODE)
 .Q
 S DBTSRET(1)=DBTS("ID")_U_DBTS("LOC")_U_DBTSP_U_"ROLLBACK"
 K ^DBTS("TMP",DBTSP)
 Q