| 1 | QACI2E ; OAKOIFO/TKW - DATA MIGRATION - BUILD LEGACY DATA TO BE MIGRATED (CONT.) ;7/27/05  14:15 | 
|---|
| 2 | ;;2.0;Patient Representative;**19**;07/25/1995;Build 55 | 
|---|
| 3 | ; | 
|---|
| 4 | UPDCNT(PATSCNT) ; Update counts of data migrated on XTMP global | 
|---|
| 5 | F TYPE="ROC","HL","USER","PT","CC","EMPINV","FSOS" D | 
|---|
| 6 | . S ^XTMP("QACMIGR",TYPE,"U")=PATSCNT(TYPE) | 
|---|
| 7 | . Q | 
|---|
| 8 | Q | 
|---|
| 9 | ; | 
|---|
| 10 | UPDERRCT ; Update counts of errors generated. | 
|---|
| 11 | N CNT,I,TYPE | 
|---|
| 12 | F TYPE="HL","USER","PT","CC","EMPINV","FSOS" D | 
|---|
| 13 | . S CNT=0 | 
|---|
| 14 | . F I=0:0 S I=$O(^XTMP("QACMIGR",TYPE,"E",I)) Q:'I  S CNT=CNT+1 | 
|---|
| 15 | . S ^XTMP("QACMIGR",TYPE,"E")=CNT Q | 
|---|
| 16 | S CNT=0,I="" | 
|---|
| 17 | F  S I=$O(^XTMP("QACMIGR","ROC","E",I)) Q:I=""  S CNT=CNT+1 | 
|---|
| 18 | S ^XTMP("QACMIGR","ROC","E")=CNT | 
|---|
| 19 | Q | 
|---|
| 20 | ; | 
|---|
| 21 | ERRPT(QACI0) ; Print all errors found during data migration | 
|---|
| 22 | N PATSFROM | 
|---|
| 23 | S PATSFROM=$S(QACI0:"Data Cleanup",1:"Move to Staging Area") | 
|---|
| 24 | ENERRPT ; Entry point to print all error reports found during any step of data migration. | 
|---|
| 25 | N PATSTYPE,PATSHDR,PATSERR | 
|---|
| 26 | S PATSERR=0 | 
|---|
| 27 | F PATSTYPE="HL","USER","PT","CC","EMPINV","FSOS" D  Q:PATSERR | 
|---|
| 28 | . I $O(^XTMP("QACMIGR",PATSTYPE,"E",0))]"" S PATSERR=1 | 
|---|
| 29 | . Q | 
|---|
| 30 | I 'PATSERR W !!,"No Reference Table Errors were found",! | 
|---|
| 31 | E  D | 
|---|
| 32 | . I $G(REPRINT),'$$ASK("Ref Table") Q | 
|---|
| 33 | . W !!,"Printing report of Reference Table Errors",! | 
|---|
| 34 | . S PATSHDR=PATSFROM_" - Ref Table Data Errors" | 
|---|
| 35 | . N ZTSAVE S ZTSAVE("PATSHDR")="" | 
|---|
| 36 | . D EN^XUTMDEVQ("DQRPT^QACI2E","Report - "_PATSHDR,.ZTSAVE) | 
|---|
| 37 | . Q | 
|---|
| 38 | I $O(^XTMP("QACMIGR","ROC","E",0))="" D  Q | 
|---|
| 39 | . W !!,"No Report of Contact (ROC) Errors were found",! | 
|---|
| 40 | . Q | 
|---|
| 41 | I $G(REPRINT),'$$ASK("ROC") Q | 
|---|
| 42 | W !!,"Printing report of Report of Contact (ROC) Errors",! | 
|---|
| 43 | S PATSTYPE="ROC" | 
|---|
| 44 | S PATSHDR=PATSFROM_" - ROC Errors",PATSHDR(1)=" ROC Number    Error" | 
|---|
| 45 | K ZTSAVE S ZTSAVE("PATSTYPE")="",ZTSAVE("PATSHDR")="" | 
|---|
| 46 | D EN^XUTMDEVQ("DQRPT^QACI1A","Report - "_PATSHDR,.ZTSAVE) | 
|---|
| 47 | Q | 
|---|
| 48 | ; | 
|---|
| 49 | ENRPT2 ; Print list of ROCs with data changed during migration | 
|---|
| 50 | I $O(^XTMP("QACMIGR","ROC","C",""))="" D  Q | 
|---|
| 51 | . I $G(^XTMP("QACMIGR","ROC","U"))!($G(^("D"))) W !!,"No ROC data was changed when data was moved to staging area!",!! Q | 
|---|
| 52 | . W !!,"ROC changes occur when data is moved to the staging area!" | 
|---|
| 53 | . Q | 
|---|
| 54 | W !!,"Ready to print the list of ROCs with data changed",! | 
|---|
| 55 | N PATSHDR | 
|---|
| 56 | S PATSHDR="ROCs With Data Changed for Migration",PATSHDR(1)=" ROC Number     Data Changed" | 
|---|
| 57 | N ZTSAVE S ZTSAVE("PATSHDR")="" | 
|---|
| 58 | D EN^XUTMDEVQ("DQRPT3^QACI2E","Report of ROC Data Changed for Migration",.ZTSAVE) | 
|---|
| 59 | Q | 
|---|
| 60 | ; | 
|---|
| 61 | DQRPT ; Report errors found in reference table data | 
|---|
| 62 | N PAGENO,LNCNT,LASTIEN,IEN,TYPE,ERRMSG,HDDATE,%,%H,%I | 
|---|
| 63 | S PAGENO=1,LNCNT=0 | 
|---|
| 64 | D NOW^%DTC S HDDATE=$$FMTE^XLFDT(%) | 
|---|
| 65 | U IO D HDR^QACI1A | 
|---|
| 66 | S (LASTIEN,IEN)="" | 
|---|
| 67 | F TYPE="HL","USER","PT","CC","EMPINV","FSOS" D | 
|---|
| 68 | . Q:$O(^XTMP("QACMIGR",TYPE,"E",0))']"" | 
|---|
| 69 | . W !,$S(TYPE="HL":"Hospital Location",TYPE="USER":"User",TYPE="PT":"Patient",TYPE="CC":"Congressional Contact",TYPE="EMPINV":"Employee Involved",TYPE="FSOS":"Service/Discipline (Facility Service or Section)","":"*Unknown*") | 
|---|
| 70 | . F IEN=0:0 S IEN=$O(^XTMP("QACMIGR",TYPE,"E",IEN)) Q:'IEN  D | 
|---|
| 71 | .. I LASTIEN'=IEN D | 
|---|
| 72 | ... D:LNCNT>56 HDR^QACI1A | 
|---|
| 73 | ... W !,"IEN: "_IEN | 
|---|
| 74 | ... S LASTIEN=IEN,LNCNT=LNCNT+1 | 
|---|
| 75 | ... Q | 
|---|
| 76 | .. F I=0:0 S I=$O(^XTMP("QACMIGR",TYPE,"E",IEN,I)) Q:'I  S ERRMSG=^(I) D | 
|---|
| 77 | ... D:LNCNT>58 HDR^QACI1A | 
|---|
| 78 | ... W ?20,ERRMSG,! | 
|---|
| 79 | ... S LNCNT=LNCNT+1 Q | 
|---|
| 80 | .. Q | 
|---|
| 81 | . Q | 
|---|
| 82 | D ^%ZISC Q | 
|---|
| 83 | ; | 
|---|
| 84 | DQRPT3 ; Print report of ROC data changed for migration | 
|---|
| 85 | N PAGENO,LNCNT,ROCNO,PATSCHG,HDDATE,%,%H,%I,I | 
|---|
| 86 | S PAGENO=1,LNCNT=0 | 
|---|
| 87 | D NOW^%DTC S HDDATE=$$FMTE^XLFDT(%) | 
|---|
| 88 | U IO D HDR^QACI1A | 
|---|
| 89 | S ROCNO="" | 
|---|
| 90 | F  S ROCNO=$O(^XTMP("QACMIGR","ROC","C",ROCNO)) Q:ROCNO=""  S PATSCHG=^(ROCNO) D | 
|---|
| 91 | . D:LNCNT>56 HDR^QACI1A | 
|---|
| 92 | . W !," "_ROCNO S I=16 | 
|---|
| 93 | . I $P(PATSCHG,"^")=1 W ?I,"Info Taken By" S I=I+16 | 
|---|
| 94 | . I $P(PATSCHG,"^",2)=1 W ?I,"Edited By" S I=I+16 | 
|---|
| 95 | . I $P(PATSCHG,"^",3)=1 W ?I,"Division" S I=I+16 | 
|---|
| 96 | . I $P(PATSCHG,"^",4)=1 W ?I,"Issue Text" S I=I+16 | 
|---|
| 97 | . I $P(PATSCHG,"^",5)=1 W ?I,"Issue Text Overflow" | 
|---|
| 98 | . W ! S LNCNT=LNCNT+1 | 
|---|
| 99 | . Q | 
|---|
| 100 | D ^%ZISC | 
|---|
| 101 | Q | 
|---|
| 102 | ; | 
|---|
| 103 | ENREPRNT ; Reprint data error reports - menu entry point | 
|---|
| 104 | N PATSFROM,CNT,REPRINT | 
|---|
| 105 | S CNT=0,REPRINT=1 | 
|---|
| 106 | F PATSTYPE="ROC","HL","USER","PT","CC","EMPINV","FSOS" D  Q:CNT | 
|---|
| 107 | . I $O(^XTMP("QACMIGR",PATSTYPE,"U",0))]"" S CNT=1 Q | 
|---|
| 108 | . I $O(^XTMP("QACMIGR",PATSTYPE,"D",0))]"" S CNT=1 | 
|---|
| 109 | . Q | 
|---|
| 110 | S PATSFROM=$S(CNT=1:"Data Cleanup",1:"Move to Staging Area") | 
|---|
| 111 | D ENERRPT | 
|---|
| 112 | Q | 
|---|
| 113 | ; | 
|---|
| 114 | ASK(TYPE) ; Ask whether users want to reprint error reports | 
|---|
| 115 | N DIR,X,Y | 
|---|
| 116 | S DIR("A")="Reprint the "_TYPE_" error report" | 
|---|
| 117 | S DIR(0)="YO",DIR("B")="YES" | 
|---|
| 118 | D ^DIR | 
|---|
| 119 | Q Y | 
|---|
| 120 | ; | 
|---|
| 121 | ; | 
|---|