[613] | 1 | EASEZFM ;ALB/jap - Filing 1010EZ Data to Patient Database ;10/12/00 13:08
|
---|
| 2 | ;;1.0;ENROLLMENT APPLICATION SYSTEM;;Mar 15, 2001
|
---|
| 3 | ;
|
---|
| 4 | QUE ;entry point from queued background job
|
---|
| 5 | ;
|
---|
| 6 | ;check signature verification before continuing
|
---|
| 7 | Q:'$G(EASAPP)
|
---|
| 8 | Q:'$D(^EAS(712,EASAPP,0))
|
---|
| 9 | S EASEZNEW=$P(^EAS(712,EASAPP,0),U,11)
|
---|
| 10 | S X=$G(^EAS(712,EASAPP,1))
|
---|
| 11 | ;recheck signature status
|
---|
| 12 | I ('$P(X,U,1))&('$P(X,U,2)) D Q
|
---|
| 13 | .;remove filing date if can't continue
|
---|
| 14 | .S FDT=$P(^EAS(712,EASAPP,2),U,5),$P(^EAS(712,EASAPP,2),U,5)="",$P(^EAS(712,EASAPP,2),U,6)="",$P(^EAS(712,EASAPP,2),U,11)=""
|
---|
| 15 | .I FDT K ^EAS(712,"FIL",FDT,EASAPP)
|
---|
| 16 | .D APPINDEX^EASEZU2(EASAPP)
|
---|
| 17 | ;
|
---|
| 18 | L +^EAS(712,EASAPP)
|
---|
| 19 | ;check incoming data
|
---|
| 20 | D CHECK
|
---|
| 21 | ;
|
---|
| 22 | ;get EZ1010 data into ^TMP("EZDATA" array
|
---|
| 23 | D EN^EASEZC1(EASAPP,.EASDFN)
|
---|
| 24 | ;
|
---|
| 25 | ;store file #2 data
|
---|
| 26 | D F2^EASEZF1(EASDFN)
|
---|
| 27 | ;
|
---|
| 28 | ;store file #408.12, #408.13, #408.21, #408.22 data
|
---|
| 29 | D F408^EASEZF2(EASAPP,EASDFN)
|
---|
| 30 | ;
|
---|
| 31 | ;store file #355.33 data;
|
---|
| 32 | ;call IB API to file health insurance and Medicare data
|
---|
| 33 | D IBINS^EASEZF5(EASAPP,EASDFN)
|
---|
| 34 | ;
|
---|
| 35 | ;update 'new patient' remark
|
---|
| 36 | I EASEZNEW D
|
---|
| 37 | .S REM="New Patient record added by ELECTRONIC 10-10EZ."
|
---|
| 38 | .S DA=EASDFN,DIE="^DPT(",DR=".091///^S X=REM"
|
---|
| 39 | .D ^DIE
|
---|
| 40 | ;update processing status if not already done
|
---|
| 41 | I $P($G(^EAS(712,EASAPP,2)),U,5)="" D SETDATE^EASEZU2(EASAPP,"FIL")
|
---|
| 42 | ;remove the task id
|
---|
| 43 | S $P(^EAS(712,EASAPP,2),U,11)=""
|
---|
| 44 | L -^EAS(712,EASAPP)
|
---|
| 45 | Q
|
---|
| 46 | ;
|
---|
| 47 | CHECK ;check data
|
---|
| 48 | ;returns '0' if any invalid data found; otherwise '1'
|
---|
| 49 | N SUBIEN,X,CHK,DIK,DA
|
---|
| 50 | ;remove any 'noise' from incoming data
|
---|
| 51 | S SUBIEN=0 F S SUBIEN=$O(^EAS(712,EASAPP,10,SUBIEN)) Q:+SUBIEN=0 D
|
---|
| 52 | .S CHK=$P($G(^EAS(712,EASAPP,10,SUBIEN,1)),U,1)
|
---|
| 53 | .I (CHK="/")!(CHK="//")!(CHK="-")!(CHK="--")!(CHK=" ")!(CHK="") D
|
---|
| 54 | ..S DA=SUBIEN,DA(1)=EASAPP,DIK="^EAS(712,"_DA(1)_",10,"
|
---|
| 55 | ..D ^DIK
|
---|
| 56 | Q
|
---|
| 57 | ;
|
---|
| 58 | CLEAN ; cleanup
|
---|
| 59 | K ^TMP("EZDATA",$J),^TMP("EZINDEX",$J),^TMP("EZTEMP",$J),^TMP("EZDISP",$J)
|
---|
| 60 | Q
|
---|