SDESBLKANDMOVE1 ;ALB/MGD/TAW - BLOCK AND MOVE CONT. ;Jan 21, 2022
Source file <SDESBLKANDMOVE1.m>
| Package | Total | Call Graph |
|---|---|---|
| Scheduling | 9 | ($$HANDLE,BEFORE,CANCEL)^SDAMEVT DELETE^SDC1 SDEC^SDCNP0 CANCEL^SDCNSLT ($$OBM1,APPSLOTS)^SDEC57 (ENCODE,ERRLOG)^SDESJSON ($$PADFMTIME,$$PADLENGTH)^SDESUTIL $$EXAE^SDOE RT^SDUTL |
| VA FileMan | 3 | ^%DT NOW^%DTC ^DIE |
| Kernel | 1 | ($$FMADD,$$FMTE)^XLFDT |
| MailMan | 1 | $$CTRL^XMXUTIL1 |
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| TOOVBCHECK(SDTOCLIEN,TODTFM,APPTARY,FN,SDECAPPTIENS,POP,SDAPPT,OVB) | ; Check if new appt will be considered an overbook
|
|
| PREBLOCK(FROMDTFM,FROMTIMESCALE,FROMRES,SDORGCLIEN,SDDATA44SL,SDSEGMENTS) | ;
; 1st call to block original slots |
|
| BLOCK(SDSTDATE,SDSTTIME,SDENDTIME,SDORGCLIEN,SDDATA44SL,TIMESCALE) | ; Logic copied from routine SDC
|
|
| SKIP | ||
| S | ||
| C | ||
| MORE | ||
| CK1 | ||
| EVT | ; -- separate tag if need to NEW vars
; -- cancel event |
|
| BUILDER | ;Convert data to JSON
|
|
| TC | ||
| HASPATRN(SDTOCLIEN,SDDOW,TODTFM) | ;find day template pattern
|
|
| IDTIMESLOT(CLIEN,MAXSLOTS,CLINID) | ;
; CLIEN = IEN of clinic ; MAXSLOTS = Maximum # of slots to check allowable |
|
| CHKAVAILABILITY(RES,CLIEN,APPTDTNET,CLINID,MOVE2DATE) | ;Check the Clinic Resource and Appt Dt for slot availability
; RES - Clinic resource of the new appointment ; CLIEN - IEN of clinic being evaluated ; APPTDTNET - Appointment date/time in external format ; CLINID - F = From clinic, T = To clinic ; MOVE2DAT - The original appt date/tm or the new appt date/tm in FM format |
| Name | Field # of Occurrence |
|---|---|
| ^%DT | TC |
| NOW^%DTC | BLOCK+7 |
| ^DIE | C+14 |
| $$HANDLE^SDAMEVT | C+7 |
| BEFORE^SDAMEVT | C+8 |
| CANCEL^SDAMEVT | EVT+3 |
| DELETE^SDC1 | C+4, C+5 |
| SDEC^SDCNP0 | C+15 |
| CANCEL^SDCNSLT | C+13 |
| $$OBM1^SDEC57 | TOOVBCHECK+9 |
| APPSLOTS^SDEC57 | CHKAVAILABILITY+12 |
| ENCODE^SDESJSON | BUILDER+3 |
| ERRLOG^SDESJSON | TOOVBCHECK+10, CHKAVAILABILITY+15, CHKAVAILABILITY+16, CHKAVAILABILITY+28, CHKAVAILABILITY+31, CHKAVAILABILITY+33, CHKAVAILABILITY+50, CHKAVAILABILITY+52 |
| $$PADFMTIME^SDESUTIL | PREBLOCK+8, CHKAVAILABILITY+30 |
| $$PADLENGTH^SDESUTIL | PREBLOCK+5, CHKAVAILABILITY+37 |
| $$EXAE^SDOE | CK1+2 |
| RT^SDUTL | MORE+4 |
| $$FMADD^XLFDT | PREBLOCK+9 |
| $$FMTE^XLFDT | TC |
| $$CTRL^XMXUTIL1 | CHKAVAILABILITY+22 |
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^DG(40.8 - [#40.8] | MORE+2 |
| ^DPT - [#2] | TOOVBCHECK+5, C+10, C+14, CK1 |
| ^DPT("ASDCN" | C+12* |
| ^DPT("ASDPSD" | MORE+2, CK1+3! |
| ^SC - [#44] | BLOCK+20*, BLOCK+21*, SKIP*, SKIP+1, SKIP+2*, SKIP+3, SKIP+6*, S*, C, C+3 , C+4, C+5, C+6, C+7, C+9*, MORE+2, HASPATRN+3, HASPATRN+4, HASPATRN+7 |
| ^SC("AAS" | CK1+1 |
| ^SC("ARAD" | MORE |
| ^SCE - [#409.68] | CK1+2 |
| ^SDEC(409.84 - [#409.84] | CHKAVAILABILITY+39, CHKAVAILABILITY+41, CHKAVAILABILITY+43 |
| ^TMP("SDEC57" | CHKAVAILABILITY+11!, CHKAVAILABILITY+13, CHKAVAILABILITY+20, CHKAVAILABILITY+21 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| % | BLOCK+1~, BLOCK+5*, BLOCK+6, BLOCK+7*, BLOCK+14, SKIP+3, SKIP+4, TC+1*, TC+2 |
| %DT | TC~* |
| A | BLOCK+1~, BLOCK+21* |
| APPTARY | TOOVBCHECK~ |
| APPTARY( | TOOVBCHECK+3, TOOVBCHECK+4 |
| APPTDTNET | CHKAVAILABILITY~, CHKAVAILABILITY+12 |
| APPTEND | CHKAVAILABILITY+7~, CHKAVAILABILITY+48*, CHKAVAILABILITY+52 |
| >> APPTIEN | CHKAVAILABILITY+42 |
| APPTSTRT | CHKAVAILABILITY+7~, CHKAVAILABILITY+47*, CHKAVAILABILITY+50 |
| CANREM | BLOCK+1~, BLOCK+8*, C+13, C+15 |
| CLIEN | IDTIMESLOT~, IDTIMESLOT+5, IDTIMESLOT+6, IDTIMESLOT+7, IDTIMESLOT+8, CHKAVAILABILITY~, CHKAVAILABILITY+9, CHKAVAILABILITY+10 |
| CLINID | IDTIMESLOT~, IDTIMESLOT+5, IDTIMESLOT+6, IDTIMESLOT+7, IDTIMESLOT+8, CHKAVAILABILITY~, CHKAVAILABILITY+9, CHKAVAILABILITY+10, CHKAVAILABILITY+16, CHKAVAILABILITY+27 , CHKAVAILABILITY+32 |
| CNT | CHKAVAILABILITY+7~, CHKAVAILABILITY+8* |
| DA | BLOCK+1~, C+14* |
| DATA | CHKAVAILABILITY+7~, CHKAVAILABILITY+21*, CHKAVAILABILITY+22*, CHKAVAILABILITY+23, CHKAVAILABILITY+24, CHKAVAILABILITY+25, CHKAVAILABILITY+30 |
| DFN | BLOCK+1~, C+7*, C+8, C+10, C+12, C+14, C+15, MORE, MORE+2, CK1 , CK1+1, CK1+2, CK1+3, EVT+3 |
| DH | BLOCK+1~, SKIP+4*, SKIP+6*, C+13*, C+14*, MORE+4, MORE+5*, EVT+2~ |
| DIE | C+1~, C+14* |
| DR | C+1~, C+14* |
| DUZ | C+14, C+15 |
| EAPPTDATA | CHKAVAILABILITY+7~, CHKAVAILABILITY+43*, CHKAVAILABILITY+44, CHKAVAILABILITY+46, CHKAVAILABILITY+47, CHKAVAILABILITY+48 |
| EVALSTOP | PREBLOCK+2~, PREBLOCK+4*, PREBLOCK+8, CHKAVAILABILITY+7~, CHKAVAILABILITY+10*, CHKAVAILABILITY+24, CHKAVAILABILITY+37, CHKAVAILABILITY+52 |
| EVALSTRT | PREBLOCK+2~, PREBLOCK+3*, PREBLOCK+5*, PREBLOCK+7, CHKAVAILABILITY+7~, CHKAVAILABILITY+9*, CHKAVAILABILITY+23, CHKAVAILABILITY+50, CHKAVAILABILITY+52 |
| FN | TOOVBCHECK~, TOOVBCHECK+3, TOOVBCHECK+4 |
| FR | BLOCK+1~, BLOCK+14*, BLOCK+19, BLOCK+20, BLOCK+21, SKIP, SKIP+1, SKIP+2, SKIP+6*, C* , C+3, C+4, C+5, C+6, C+7, C+8, C+9, C+10, C+12, C+13 , C+14, C+15, MORE, MORE+2, MORE+4, CK1, CK1+1, CK1+2, CK1+3, EVT+2~ |
| FROMDTFM | PREBLOCK~, PREBLOCK+7, CHKAVAILABILITY+30 |
| FROMRES | PREBLOCK~ |
| FROMTIMESCALE | PREBLOCK~, PREBLOCK+9, PREBLOCK+10 |
| I | BLOCK+1~, BLOCK+8*, SKIP+2, SKIP+3*, SKIP+4*, SKIP+5*, SKIP+6, EVT+2~, CHKAVAILABILITY+7~, CHKAVAILABILITY+19* , CHKAVAILABILITY+20*, CHKAVAILABILITY+21 |
| I5 | SKIP+5*! |
| IEN | CHKAVAILABILITY+36~, CHKAVAILABILITY+40*, CHKAVAILABILITY+41*, CHKAVAILABILITY+42, CHKAVAILABILITY+43 |
| J | C+4*!, C+5*! |
| J2 | C+4*!, C+5*! |
| JSONERR | BUILDER+1~, BUILDER+2*, BUILDER+3 |
| MAXSLOTS | IDTIMESLOT~, IDTIMESLOT+8 |
| MOVE2DATE | CHKAVAILABILITY~, CHKAVAILABILITY+38, CHKAVAILABILITY+39 |
| MOVINGSTRT | PREBLOCK+2~, PREBLOCK+7*, PREBLOCK+8, PREBLOCK+9, PREBLOCK+10, PREBLOCK+11* |
| NOAP | BLOCK+1~, SKIP+1* |
| NODE | C+1~, C+10*, C+11 |
| OBM | TOOVBCHECK+1~, TOOVBCHECK+9*, TOOVBCHECK+10, TOOVBCHECK+12 |
| OVB | TOOVBCHECK~, TOOVBCHECK+12* |
| P | BLOCK+1~, SKIP+4* |
| POP | TOOVBCHECK~, TOOVBCHECK+10*, IDTIMESLOT+3~, IDTIMESLOT+4*, IDTIMESLOT+7, IDTIMESLOT+8*, IDTIMESLOT+9, CHKAVAILABILITY+15*, CHKAVAILABILITY+16*, CHKAVAILABILITY+20 , CHKAVAILABILITY+28*, CHKAVAILABILITY+31*, CHKAVAILABILITY+32, CHKAVAILABILITY+33*, CHKAVAILABILITY+35, CHKAVAILABILITY+39, CHKAVAILABILITY+41, CHKAVAILABILITY+50*, CHKAVAILABILITY+52* |
| RES | CHKAVAILABILITY~, CHKAVAILABILITY+12, CHKAVAILABILITY+39, CHKAVAILABILITY+41 |
| RET | CHKAVAILABILITY+7~, CHKAVAILABILITY+12 |
| >> RETURN | BUILDER+3 |
| SC | BLOCK+2*, BLOCK+20, BLOCK+21, SKIP, SKIP+1, SKIP+2, SKIP+3, SKIP+6, S, C , C+3, C+4, C+5, C+6, C+7, C+8, C+9, C+11, C+12, C+13 , C+15, MORE, MORE+2, MORE+4, EVT+2~ |
| SD | BLOCK+1~, BLOCK+9*, SKIP+3, SKIP+6, S, TC |
| SD1 | MORE+6!, CK1*, CK1+1* |
| SDAPPT | TOOVBCHECK~, TOOVBCHECK+10, BUILDER+3, CHKAVAILABILITY+15, CHKAVAILABILITY+16, CHKAVAILABILITY+28, CHKAVAILABILITY+31, CHKAVAILABILITY+33, CHKAVAILABILITY+50, CHKAVAILABILITY+52 |
| SDATA | C+8, EVT+3! |
| SDCNHDL | C+7*, C+8, EVT+3! |
| SDCNT | BLOCK+1~, BLOCK+21* |
| SDDATA0 | BLOCK+1~ |
| SDDATA44SL | PREBLOCK~, PREBLOCK+10, BLOCK~, BLOCK+7 |
| SDDFN | TOOVBCHECK+1~, TOOVBCHECK+4*, TOOVBCHECK+5 |
| SDDFR | BLOCK+1~, BLOCK+19*, SKIP+3 |
| SDDOW | HASPATRN~, HASPATRN+4, HASPATRN+7 |
| SDE | HASPATRN+1~, HASPATRN+4*, HASPATRN+6*, HASPATRN+7 |
| SDECAPPTIENS | TOOVBCHECK~, TOOVBCHECK+3, TOOVBCHECK+4 |
| SDECATID | TOOVBCHECK+1~, TOOVBCHECK+3*, TOOVBCHECK+5*, TOOVBCHECK+6*, TOOVBCHECK+7 |
| SDECEND | PREBLOCK+2~, PREBLOCK+9*, PREBLOCK+10, PREBLOCK+11 |
| SDECWKIN | TOOVBCHECK+1~, TOOVBCHECK+2*, TOOVBCHECK+7*, TOOVBCHECK+9 |
| SDENDTIME | BLOCK~, BLOCK+16*, BLOCK+17*, BLOCK+18 |
| SDH | MORE+4*, MORE+5! |
| SDHTO | BLOCK+1~, BLOCK+19*, SKIP |
| SDI | C+1~, C+3*, C+4, C+5, C+6, C+7, C+8, C+9, C+13, MORE+4 |
| SDINDX | PREBLOCK+2~, IDTIMESLOT+3~, IDTIMESLOT+5*, IDTIMESLOT+7*, IDTIMESLOT+8 |
| SDINDXEND | IDTIMESLOT+3~, IDTIMESLOT+6*, IDTIMESLOT+7 |
| SDIV | MORE+2*, MORE+6!, CK1+3 |
| SDORGCLIEN | PREBLOCK~, PREBLOCK+3, PREBLOCK+4, PREBLOCK+10, BLOCK~, BLOCK+2 |
| SDPL | C+13*, MORE+4*, MORE+6!, EVT+3 |
| SDRT | MORE+4*, MORE+6! |
| SDSC | C+13*, MORE+4*, MORE+6!, EVT+3 |
| SDSEGMENTS | PREBLOCK~ |
| SDSEGMENTS( | PREBLOCK+3, PREBLOCK+4, IDTIMESLOT+5, IDTIMESLOT+6, IDTIMESLOT+7, IDTIMESLOT+8, CHKAVAILABILITY+9, CHKAVAILABILITY+10 |
| SDSTDATE | BLOCK~, BLOCK+9 |
| SDSTTIME | BLOCK~, BLOCK+11*, BLOCK+12*, BLOCK+13 |
| SDTIME | BLOCK+7*, C+14, C+15, EVT+2~ |
| SDTOCLIEN | TOOVBCHECK~, TOOVBCHECK+9, HASPATRN~, HASPATRN+3, HASPATRN+4, HASPATRN+7 |
| SDTP | HASPATRN+1~, HASPATRN+2*, HASPATRN+3*, HASPATRN+7*, HASPATRN+8 |
| SDTTM | C+13*, MORE+4*, MORE+6!, EVT+3 |
| SDV1 | MORE+1~, MORE+2* |
| SDX | C!, MORE+6!, CK1*, CK1+1*, CK1+2*, CK1+3 |
| SI | BLOCK+1~, BLOCK+6*, SKIP+4, TC+1 |
| SLOTS | PREBLOCK+2~, PREBLOCK+8*, CHKAVAILABILITY+7~, CHKAVAILABILITY+8*, CHKAVAILABILITY+25*, CHKAVAILABILITY+26, CHKAVAILABILITY+28, CHKAVAILABILITY+31, CHKAVAILABILITY+33 |
| ST | BLOCK+1~, BLOCK+14*, SKIP+4 |
| STARTDAY | BLOCK+1~, BLOCK+7*, TC+1 |
| TDH | C+1~, C+13*, C+14* |
| TEXT | CHKAVAILABILITY+7~, CHKAVAILABILITY+13*, CHKAVAILABILITY+14, CHKAVAILABILITY+15, CHKAVAILABILITY+16 |
| TIME | CHKAVAILABILITY+36~, CHKAVAILABILITY+37*, CHKAVAILABILITY+38*, CHKAVAILABILITY+39*, CHKAVAILABILITY+41 |
| TIMESCALE | BLOCK~, BLOCK+5 |
| TMPD | C+1~, C+13* |
| TO | BLOCK+1~, BLOCK+19*, SKIP+1, C |
| TODTFM | TOOVBCHECK~, TOOVBCHECK+5, TOOVBCHECK+9, HASPATRN~, HASPATRN+3, HASPATRN+4 |
| U | TOOVBCHECK+5, PREBLOCK+3, PREBLOCK+4, BLOCK+7, C+11, IDTIMESLOT+5, IDTIMESLOT+6, IDTIMESLOT+8, CHKAVAILABILITY+10, CHKAVAILABILITY+30 , CHKAVAILABILITY+46 |
| X | BLOCK+1~, BLOCK+13*, BLOCK+18*, BLOCK+19, SKIP+2, SKIP+4*, TC*, TC+1* |
| Y | BLOCK+1~, BLOCK+14, BLOCK+19, SKIP+3*, SKIP+4*, TC, TC+1*, TC+2* |