Difference between revisions of "Scheduling Issues"

From VistApedia
Jump to: navigation, search
(Added a glossary link to Action~)
 
(38 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
This will contain notes as the data structures for clinic scheduling is explored.
 
This will contain notes as the data structures for clinic scheduling is explored.
  
 +
=== DATA DICTIONARY NOTES ===
 
Outpatient clinics are stored in the HOSPITAL LOCATION FILE.
 
Outpatient clinics are stored in the HOSPITAL LOCATION FILE.
  
Line 11: Line 12:
 
  -------------------------------------------------------------
 
  -------------------------------------------------------------
 
     T;0              1920  AVAILABILITY                    <-Mult [44.002DA]
 
     T;0              1920  AVAILABILITY                    <-Mult [44.002DA]
80  -0;1              .01  -AVAILABILITY                              [MDX]
+
      -0;1              .01  -AVAILABILITY                              [MDX]
 
       -2;0                2  -SCHEDULE TIME                  <-Mult [44.004A]
 
       -2;0                2  -SCHEDULE TIME                  <-Mult [44.004A]
81    --0;1            .01    --SCHEDULE TIME                          [MFX]
+
      --0;1            .01    --SCHEDULE TIME                          [MFX]
82    --0;2              1    --NUMBER OF PATIENTS                    [NJ2,0]
+
      --0;2              1    --NUMBER OF PATIENTS                    [NJ2,0]
83  -Computed          3  -DAY OF WEEK                              [CJ15]
+
      -Computed          3  -DAY OF WEEK                              [CJ15]
84  -Computed          4  -NUMBEROFDAY                              [CJ1]
+
      -Computed          4  -NUMBEROFDAY                              [CJ1]
  
 
  Date/Time set up for clinic availability
 
  Date/Time set up for clinic availability
 
  -------------------------------------------------------------
 
  -------------------------------------------------------------
85  STT;1          1920.9  AVAILABILITY FLAG                            [D]
+
    STT;1          1920.9  AVAILABILITY FLAG                            [D]
  
 
  PATTERN subfile.  For a given date, it shows avail slots
 
  PATTERN subfile.  For a given date, it shows avail slots
 
  -------------------------------------------------------------
 
  -------------------------------------------------------------
 
     ST;0              1921  PATTERN                    W:^ <-Mult [44.005DA]
 
     ST;0              1921  PATTERN                    W:^ <-Mult [44.005DA]
86  -0;1              .01  -PATTERN DATE                              [MDX]
+
      -0;1              .01  -PATTERN DATE                              [MDX]
87  -1;E1,90            1  -CURRENT AVAILABILITY                        [F]
+
      -1;E1,90            1  -CURRENT AVAILABILITY                        [F]
88  -Computed          2  -MAINTENANCE                              [CJ8X]
+
      -Computed          2  -MAINTENANCE                              [CJ8X]
89  -9;1                3  -SPECIAL AVAILABILITY FLAG                  [DX]
+
      -9;1                3  -SPECIAL AVAILABILITY FLAG                  [DX]
  
 
     OST;0          1921.5  SPECIAL PATTERN            W:^ <-Mult [44.0002DA]
 
     OST;0          1921.5  SPECIAL PATTERN            W:^ <-Mult [44.0002DA]
90  -0;1              .01  -PATTERN DATE                              [DX]
+
      -0;1              .01  -PATTERN DATE                              [DX]
91  -1;E1,90            1  -ORIGINAL AVAILABILITY                      [F]
+
      -1;E1,90            1  -ORIGINAL AVAILABILITY                      [F]
  
 
  XDAY TEMPLATE subfile entries.   
 
  XDAY TEMPLATE subfile entries.   
Line 38: Line 39:
 
  -------------------------------------------------------------
 
  -------------------------------------------------------------
 
     T0;0              1922  SUNDAY TEMPLATE              W:^ <-Mult [44.06A]
 
     T0;0              1922  SUNDAY TEMPLATE              W:^ <-Mult [44.06A]
92  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
93  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
 
     T1;0              1923  MONDAY TEMPLATE              W:^ <-Mult [44.07A]
 
     T1;0              1923  MONDAY TEMPLATE              W:^ <-Mult [44.07A]
94  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
95  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
 
     T2;0              1924  TUESDAY TEMPLATE              W:^ <-Mult [44.08A]
 
     T2;0              1924  TUESDAY TEMPLATE              W:^ <-Mult [44.08A]
96  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
97  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
 
     T3;0              1925  WEDNESDAY TEMPLATE            W:^ <-Mult [44.09A]
 
     T3;0              1925  WEDNESDAY TEMPLATE            W:^ <-Mult [44.09A]
98  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
99  -1;1                1  -MASTER PATTERN                              [F]
+
      -1;1                1  -MASTER PATTERN                              [F]
 
     T4;0              1926  THURSDAY TEMPLATE            W:^ <-Mult [44.008A]
 
     T4;0              1926  THURSDAY TEMPLATE            W:^ <-Mult [44.008A]
100  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
101  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
 
     T5;0              1927  FRIDAY TEMPLATE              W:^ <-Mult [44.009A]
 
     T5;0              1927  FRIDAY TEMPLATE              W:^ <-Mult [44.009A]
102  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
103  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
 
     T6;0              1928  SATURDAY TEMPLATE          W:^ <-Mult [44.0001A]
 
     T6;0              1928  SATURDAY TEMPLATE          W:^ <-Mult [44.0001A]
104  -0;1              .01  -LIMIT DATE                            [NJ7,0X]
+
      -0;1              .01  -LIMIT DATE                            [NJ7,0X]
105  -1;E1,80            1  -MASTER PATTERN                              [F]
+
      -1;E1,80            1  -MASTER PATTERN                              [F]
  
  
'''Below is a dump of a sample record'''
+
APPOINTMENTS  subfile entries. 
 +
For a given LIMIT DATE, it stores actual appts.
 +
-------------------------------------------------------------
 +
 
 +
    S;0              1900  APPOINTMENT                W:^ <-Mult [44.001DA]
 +
      -0;1              .01  -APPOINTMENT DATE/TIME                    [MDX]
 +
      -1;0                2  -PATIENT                      <-Mult [44.003PA]
 +
      --0;1            .01    --PATIENT                        <-Pntr  [MP2']
 +
      --0;2              1    --LENGTH OF APP'T                      [NJ3,0]
 +
      --0;3              2    --XRAY                                      [F]
 +
      --0;4              3    --OTHER                                    [F]
 +
      --0;5              4    --WARD LOC                                  [F]
 +
      --0;6              7    --DATA ENTRY CLERK              <-Pntr  [P200']
 +
      --0;7              8    --DATE APPOINTMENT MADE                    [D]
 +
      --0;8            10    --PRIOR X-RAY RESULTS TO CLINIC?            [S]
 +
      --0;9            310    --APPOINTMENT CANCELLED?                    [S]
 +
      --0;10            30    --ELIGIBILITY OF VISIT          <-Pntr  [*P8'X]
 +
      --OB;1            9    --OVERBOOK                                  [S]
 +
      --RTR;1          200    --PARENT [[Record~|Record]] REQUEST #    <-Pntr  [*P190.1']
 +
      --C;1            309    --CHECKED-I N                              [DX]
 +
      --C;2            302    --CHECK IN USER                <-Pntr  [P200']
 +
      --C;3            303    --CHECKED OUT                              [DX]
 +
      --C;4            304    --CHECK OUT USER                <-Pntr  [P200']
 +
      --C;5            305    --CHECK IN ENTERED                          [D]
 +
      --C;6            306    --CHECK OUT ENTERED                        [D]
 +
 
 +
=== SAMPLE [[RECORD~|Record]] ===
 +
'''Below is a dump of a sample [[record~|Record]]'''
  
 
  GTM>zwr ^SC(6,*)
 
  GTM>zwr ^SC(6,*)
Line 223: Line 251:
 
  ^SC(6,"TMG")="FPG"
 
  ^SC(6,"TMG")="FPG"
  
=========================================
+
=== EXAMPLE OF INDEFINITE SLOT PATTERN ===
  
 
'''Below is a location that had just 1 day added''', specified to be used indefinitely.  (Note: I cleared out all slots prior to running ^SDB)
 
'''Below is a location that had just 1 day added''', specified to be used indefinitely.  (Note: I cleared out all slots prior to running ^SDB)
Line 233: Line 261:
 
  CLINIC MEETS AT THIS FACILITY?: YES//
 
  CLINIC MEETS AT THIS FACILITY?: YES//
 
  SERVICE: MEDICINE// ^  
 
  SERVICE: MEDICINE// ^  
+
 
  AVAILABILITY DATE: t+2  (DEC 15, 2008)
+
  AVAILABILITY DATE: t+2  (DEC 15, 2008)   MONDAY
 
                                      MONDAY
 
 
   
 
   
 
   TIME: 0830-1000  # APPTS/SLOT : 1//  2
 
   TIME: 0830-1000  # APPTS/SLOT : 1//  2
Line 281: Line 307:
  
 
Comments:  
 
Comments:  
* When adding a pattern indefinitely, it adds slots for specific days for 5 days after the given date.
+
* When adding a pattern indefinitely, it adds PATTERN slots for 5 weeks.
 +
* The "ST" node holds PATTERN entries for 5 weeks, starting at given date.
 
* The "T" node holds the 10 min interval slots, starting at the given date.
 
* The "T" node holds the 10 min interval slots, starting at the given date.
* The indefinite patter itself is stored in the Tx slot.  Because there was no prior entry, and no end date, then 9999999 ending date is used
+
* The TEMPLATE itself is stored in the T1 node.  Because there was no prior entry, and no end date, then 9999999 ending date is used
  
  
===========================================
+
=== EXAMPLE OF SLOT PATTERN FOR SET DAYS ===
  
 
'''Below is another pattern'''.  Again, I cleared the location first.
 
'''Below is another pattern'''.  Again, I cleared the location first.
Line 347: Line 374:
 
  ^SC(10,"T1",0)="^44.07A^^"
 
  ^SC(10,"T1",0)="^44.07A^^"
  
 
+
'''Comments:'''
Comments:
 
 
* When NOT adding a pattern indefinitely, it adds slots only for the days indicated by the user.
 
* When NOT adding a pattern indefinitely, it adds slots only for the days indicated by the user.
 
* The "T" node holds the 10 min interval slots, starting at the given date, no change vs. indefinite addition
 
* The "T" node holds the 10 min interval slots, starting at the given date, no change vs. indefinite addition
 +
* The "ST" node holds the PATTERN entry for each of the 2 days specified by the user
 
* There is no Tx entries.
 
* There is no Tx entries.
 
* There is are OST node (SPECIAL PATTERN) entries for the specified days.  Thus is seems that the OST node entries replace the Tx nodes.
 
* There is are OST node (SPECIAL PATTERN) entries for the specified days.  Thus is seems that the OST node entries replace the Tx nodes.
  
  
===================================================
+
=== EXAMPLE OF MULTIPLE FIXED DAYS ===
 +
 
 +
  Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
  NAME: X_TEST_OFFICE//
 +
  ABBREVIATION: ^
 +
 
 +
  AVAILABILITY DATE: t+1  (JAN 05, 2009)  MONDAY
 +
    TIME: 0830-1130  # APPTS/SLOT : 1//
 +
    TIME:
 +
  |  [1 1|1 1 1 1|1 1 1 1|1 1]
 +
  ...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
 +
  ...EXCUSE ME, LET ME THINK ABOUT THAT A MOMENT...
 +
  PATTERN FILED!
 +
 
 +
  AVAILABILITY DATE: t+2  (JAN 06, 2009)  TUESDAY
 +
    TIME: 0830-1130  # APPTS/SLOT : 1//  2
 +
    TIME:
 +
  |  [2 2|2 2 2 2|2 2 2 2|2 2]
 +
  ...PATTERN OK FOR TUESDAYS INDEFINITELY? y  (Yes)
 +
  ...EXCUSE ME, HOLD ON...
 +
  PATTERN FILED!
 +
 
 +
  AVAILABILITY DATE: t+3  (JAN 07, 2009)  WEDNESDAY
 +
    TIME: 0830-1130  # APPTS/SLOT : 1//  3
 +
    TIME:
 +
  |  [3 3|3 3 3 3|3 3 3 3|3 3]
 +
  ...PATTERN OK FOR WEDNESDAYS INDEFINITELY? y  (Yes)
 +
  ...SORRY, HOLD ON...
 +
  PATTERN FILED!
 +
 
 +
  AVAILABILITY DATE:
 +
  Select CLINIC NAME:
 +
 
 +
  GTM>zwr ^SC(10,*)
 +
  ^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
  ^SC(10,"AT")=9
 +
  ^SC(10,"OST",0)="^44.0002DA^^"
 +
  ^SC(10,"PC")=1
 +
  ^SC(10,"PR",0)="^44.1P^1^1"
 +
  ^SC(10,"PR",1,0)="73^1"
 +
  ^SC(10,"PR","B",73,1)=""
 +
  ^SC(10,"PS")=0
 +
  ^SC(10,"S",0)="^44.001DA^^"
 +
  ^SC(10,"S",3090105.09,0)=3090105.09
 +
  ^SC(10,"S",3090105.09,1,0)="^44.003PA^^"
 +
  ^SC(10,"S",3090105.09,1,1,0)="1^15^^^^73^3090104"
 +
  ...
 +
  ^SC(10,"S",3090223.083,1,0)="^44.003PA^^"
 +
  ^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"
 +
  ^SC(10,"SDP")="5^365^^365"
 +
  ^SC(10,"SL")="15^^8^^^4^5"
 +
  ^SC(10,"ST",0)="^44.005"
 +
  ^SC(10,"ST",3090105,0)=3090105
 +
  ^SC(10,"ST",3090105,1)="MO 05  |  [1 1|0 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"ST",3090106,0)=3090106
 +
  ^SC(10,"ST",3090106,1)="TU 06  |  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090107,0)=3090107
 +
  ^SC(10,"ST",3090107,1)="WE 07  |  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"ST",3090112,0)=3090112
 +
  ^SC(10,"ST",3090112,1)="MO 12  |  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"ST",3090113,0)=3090113
 +
  ^SC(10,"ST",3090113,1)="TU 13  |  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090114,0)=3090114
 +
  ^SC(10,"ST",3090114,1)="WE 14  |  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"ST",3090119,0)=3090119
 +
  ^SC(10,"ST",3090119,1)="MO 19  |  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"ST",3090120,0)=3090120
 +
  ^SC(10,"ST",3090120,1)="TU 20  |  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090121,0)=3090121
 +
  ^SC(10,"ST",3090121,1)="WE 21  |  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"ST",3090126,0)=3090126
 +
  ^SC(10,"ST",3090126,1)="MO 26  |  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"ST",3090127,0)=3090127
 +
  ^SC(10,"ST",3090127,1)="TU 27  |  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090128,0)=3090128
 +
  ^SC(10,"ST",3090128,1)="WE 28  |  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"ST",3090202,0)=3090202
 +
  ^SC(10,"ST",3090202,1)="MO 02  |  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"ST",3090203,0)=3090203
 +
  ^SC(10,"ST",3090203,1)="TU 03  |  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090204,0)=3090204
 +
  ^SC(10,"ST",3090204,1)="WE 04  |  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"ST",3090210,0)=3090210
 +
  ^SC(10,"ST",3090210,1)="TU 10  |  [2 2|1 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"ST",3090223,0)=3090223
 +
  ^SC(10,"ST",3090223,1)="MO 23  |  [0 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"T",0)="^44.002D^3090107^6"
 +
  ^SC(10,"T",3090105,0)=3090105
 +
  ^SC(10,"T",3090105,2,0)="^44.004A^12^12"
 +
  ^SC(10,"T",3090105,2,1,0)="0830^1"
 +
  ^SC(10,"T",3090105,2,2,0)="0845^1"
 +
  ^SC(10,"T",3090105,2,3,0)="0900^1"
 +
  ^SC(10,"T",3090105,2,4,0)="0915^1"
 +
  ^SC(10,"T",3090105,2,5,0)="0930^1"
 +
  ^SC(10,"T",3090105,2,6,0)="0945^1"
 +
  ^SC(10,"T",3090105,2,7,0)="1000^1"
 +
  ^SC(10,"T",3090105,2,8,0)="1015^1"
 +
  ^SC(10,"T",3090105,2,9,0)="1030^1"
 +
  ^SC(10,"T",3090105,2,10,0)="1045^1"
 +
  ^SC(10,"T",3090105,2,11,0)="1100^1"
 +
  ^SC(10,"T",3090105,2,12,0)="1115^1"
 +
  ^SC(10,"T",3090106,0)=3090106
 +
  ^SC(10,"T",3090106,2,0)="^44.004A^12^12"
 +
  ^SC(10,"T",3090106,2,1,0)="0830^2"
 +
  ^SC(10,"T",3090106,2,2,0)="0845^2"
 +
  ^SC(10,"T",3090106,2,3,0)="0900^2"
 +
  ^SC(10,"T",3090106,2,4,0)="0915^2"
 +
  ^SC(10,"T",3090106,2,5,0)="0930^2"
 +
  ^SC(10,"T",3090106,2,6,0)="0945^2"
 +
  ^SC(10,"T",3090106,2,7,0)="1000^2"
 +
  ^SC(10,"T",3090106,2,8,0)="1015^2"
 +
  ^SC(10,"T",3090106,2,9,0)="1030^2"
 +
  ^SC(10,"T",3090106,2,10,0)="1045^2"
 +
  ^SC(10,"T",3090106,2,11,0)="1100^2"
 +
  ^SC(10,"T",3090106,2,12,0)="1115^2"
 +
  ^SC(10,"T",3090107,0)=3090107
 +
  ^SC(10,"T",3090107,2,0)="^44.004A^12^12"
 +
  ^SC(10,"T",3090107,2,1,0)="0830^3"
 +
  ^SC(10,"T",3090107,2,2,0)="0845^3"
 +
  ^SC(10,"T",3090107,2,3,0)="0900^3"
 +
  ^SC(10,"T",3090107,2,4,0)="0915^3"
 +
  ^SC(10,"T",3090107,2,5,0)="0930^3"
 +
  ^SC(10,"T",3090107,2,6,0)="0945^3"
 +
  ^SC(10,"T",3090107,2,7,0)="1000^3"
 +
  ^SC(10,"T",3090107,2,8,0)="1015^3"
 +
  ^SC(10,"T",3090107,2,9,0)="1030^3"
 +
  ^SC(10,"T",3090107,2,10,0)="1045^3"
 +
  ^SC(10,"T",3090107,2,11,0)="1100^3"
 +
  ^SC(10,"T",3090107,2,12,0)="1115^3"
 +
  ^SC(10,"T0",0)="^44.06A^^"
 +
  ^SC(10,"T1",0)="^44.07A^^"
 +
  ^SC(10,"T1",9999999,0)=9999999
 +
  ^SC(10,"T1",9999999,1)="|  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"T2",0)="^44.08A^^"
 +
  ^SC(10,"T2",9999999,0)=9999999
 +
  ^SC(10,"T2",9999999,1)="|  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"T3",0)="^44.09A^^"
 +
  ^SC(10,"T3",9999999,0)=9999999
 +
  ^SC(10,"T3",9999999,1)="|  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"T6",0)="^44.0001A^^"
 +
 
 +
'''Notes:'''
 +
* The T node contains 3 different patterns, one for each of the days entered.  To determine which of these patterns applies, one would have to determine which day of the week each pattern exists on, and then find the appropriate pattern.
 +
* The ST nodes have been filled in due to browsing for making an appt (not shown here).
 +
 
 +
=== TEMP ===
 +
 
 +
A dump of trying to do the same setup as above, using custome API (still in dev).
  
Below is a pattern were I created a set pattern in the future, then attempted to create an indefinite pattern starting BEFORE this fixed period.  The result is that the pattern end dateis set to the future date.
+
  API CALL
  
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
+
  Here is Clinic array now:                                            
NAME: X_TEST_OFFICE//                                   
+
  ^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"             
ABBREVIATION:                                           
+
  ^SC(10,"AT")=9                                                       
CLINIC MEETS AT THIS FACILITY?: YES//                      
+
  ^SC(10,"OST",0)="^44.0002DA^^"                                       
SERVICE: MEDICINE// ^                                     
+
  ^SC(10,"PC")=1                                                       
 +
  ^SC(10,"PR",0)="^44.1P^1^1"                                         
 +
  ^SC(10,"PR",1,0)="73^1"                                             
 +
  ^SC(10,"PR","B",73,1)=""                                             
 +
  ^SC(10,"PS")=0                                                       
 +
  ^SC(10,"S",0)="^44.001DA^^"                                         
 +
  ^SC(10,"S",3090105.09,0)=3090105.09                                 
 +
  ^SC(10,"S",3090105.09,1,0)="^44.003PA^^"                             
 +
  ^SC(10,"S",3090105.09,1,1,0)="1^15^^^^73^3090104"                   
 +
  ^SC(10,"S",3090110.083,0)=3090110.083                               
 +
  ^SC(10,"S",3090110.083,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.083,1,1,0)="2^15^^^^73^3090104"                   
 +
  ^SC(10,"S",3090110.09,0)=3090110.09                                 
 +
  ^SC(10,"S",3090110.09,1,0)="^44.003PA^^"                             
 +
  ^SC(10,"S",3090110.09,1,1,0)="1^15^^^^73^3090104"                      
 +
  ^SC(10,"S",3090110.0915,0)=3090110.0915                             
 +
  ^SC(10,"S",3090110.0915,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.0915,1,1,0)="70695^15^^^^73^3090104"             
 +
  ^SC(10,"S",3090110.093,0)=3090110.093                               
 +
  ^SC(10,"S",3090110.093,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.093,1,1,0)="70773^15^^^^73^3090104"               
 +
  ^SC(10,"S",3090110.0945,0)=3090110.0945                             
 +
  ^SC(10,"S",3090110.0945,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.0945,1,1,0)="70774^15^^^^73^3090104"             
 +
  ^SC(10,"S",3090110.1,0)=3090110.1                                      
 +
  ^SC(10,"S",3090110.1,1,0)="^44.003PA^^"                             
 +
  ^SC(10,"S",3090110.1,1,1,0)="70774^15^^^^73^3090104"                 
 +
  ^SC(10,"S",3090110.1015,0)=3090110.1015                             
 +
  ^SC(10,"S",3090110.1015,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.1015,1,1,0)="70787^15^^^^73^3090104"             
 +
  ^SC(10,"S",3090110.103,0)=3090110.103                               
 +
  ^SC(10,"S",3090110.103,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.103,1,1,0)="70787^15^^^^73^3090104"               
 +
  ^SC(10,"S",3090110.1045,0)=3090110.1045                             
 +
  ^SC(10,"S",3090110.1045,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090110.1045,1,1,0)="74274^15^^^^73^3090104"             
 +
  ^SC(10,"S",3090210.09,0)=3090210.09                                 
 +
  ^SC(10,"S",3090210.09,1,0)="^44.003PA^^"                             
 +
  ^SC(10,"S",3090210.09,1,1,0)="70774^15^^^^73^3081213"               
 +
  ^SC(10,"S",3090214.09,0)=3090214.09                                 
 +
  ^SC(10,"S",3090214.09,1,0)="^44.003PA^^"                             
 +
  ^SC(10,"S",3090214.09,1,1,0)="70774^15^^^^73^3090104"               
 +
  ^SC(10,"S",3090214.09,1,1,"OB")="O"                                 
 +
  ^SC(10,"S",3090223.083,0)=3090223.083                               
 +
  ^SC(10,"S",3090223.083,1,0)="^44.003PA^^"                           
 +
  ^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"                   
 +
  ^SC(10,"SDP")="5^365^^365"                                           
 +
  ^SC(10,"SL")="15^^8^^^4^5"                                           
 +
  ^SC(10,"ST",0)="^44.005"                                             
 +
  ^SC(10,"ST",3090105,0)=3090105                                       
 +
  ^SC(10,"ST",3090105,1)="MO 05  |  [1 1|0 1 1 1|1 1 1 1|1 1]                                  "
 +
  ^SC(10,"ST",3090223,0)=3090223                                                                 
 +
  ^SC(10,"ST",3090223,1)="MO 23  |  [0 1|1 1 1 1|1 1 1 1|1 1]                                  "
 +
  ^SC(10,"T",0)="^44.002D^3090107^3"                                                             
 +
  ^SC(10,"T",3090105,0)=3090105                                                                 
 +
  ^SC(10,"T",3090105,2,0)="^44.004A^12^12"                                                       
 +
  ^SC(10,"T",3090105,2,1,0)="0830^1"                                                             
 +
  ^SC(10,"T",3090105,2,2,0)="0845^1"                                                             
 +
  ^SC(10,"T",3090105,2,3,0)="0900^1"                                                             
 +
  ^SC(10,"T",3090105,2,4,0)="0915^1"                                                             
 +
  ^SC(10,"T",3090105,2,5,0)="0930^1"                                                             
 +
  ^SC(10,"T",3090105,2,6,0)="0945^1"                                                             
 +
  ^SC(10,"T",3090105,2,7,0)="1000^1"                                                             
 +
  ^SC(10,"T",3090105,2,8,0)="1015^1"                                                             
 +
  ^SC(10,"T",3090105,2,9,0)="1030^1"                                                             
 +
  ^SC(10,"T",3090105,2,10,0)="1045^1"                                                           
 +
  ^SC(10,"T",3090105,2,11,0)="1100^1"                                                           
 +
  ^SC(10,"T",3090105,2,12,0)="1115^1"                                                           
 +
  ^SC(10,"T",3090106,0)=3090106                                                                 
 +
  ^SC(10,"T",3090106,2,0)="^44.004A^12^12"                                                       
 +
  ^SC(10,"T",3090106,2,1,0)="0830^2"
 +
  ^SC(10,"T",3090106,2,2,0)="0845^2"
 +
  ^SC(10,"T",3090106,2,3,0)="0900^2"
 +
  ^SC(10,"T",3090106,2,4,0)="0915^2"
 +
  ^SC(10,"T",3090106,2,5,0)="0930^2"
 +
  ^SC(10,"T",3090106,2,6,0)="0945^2"
 +
  ^SC(10,"T",3090106,2,7,0)="1000^2"
 +
  ^SC(10,"T",3090106,2,8,0)="1015^2"
 +
  ^SC(10,"T",3090106,2,9,0)="1030^2"
 +
  ^SC(10,"T",3090106,2,10,0)="1045^2"
 +
  ^SC(10,"T",3090106,2,11,0)="1100^2"
 +
  ^SC(10,"T",3090106,2,12,0)="1115^2"
 +
  ^SC(10,"T",3090107,0)=3090107
 +
  ^SC(10,"T",3090107,2,0)="^44.004A^12^12"
 +
  ^SC(10,"T",3090107,2,1,0)="0830^3"
 +
  ^SC(10,"T",3090107,2,2,0)="0845^3"
 +
  ^SC(10,"T",3090107,2,3,0)="0900^3"
 +
  ^SC(10,"T",3090107,2,4,0)="0915^3"
 +
  ^SC(10,"T",3090107,2,5,0)="0930^3"
 +
  ^SC(10,"T",3090107,2,6,0)="0945^3"
 +
  ^SC(10,"T",3090107,2,7,0)="1000^3"
 +
  ^SC(10,"T",3090107,2,8,0)="1015^3"
 +
  ^SC(10,"T",3090107,2,9,0)="1030^3"
 +
  ^SC(10,"T",3090107,2,10,0)="1045^3"
 +
  ^SC(10,"T",3090107,2,11,0)="1100^3"
 +
  ^SC(10,"T",3090107,2,12,0)="1115^3"
 +
  ^SC(10,"T0",0)="^44.06A^^"
 +
  ^SC(10,"T1",0)="^44.07A^^"
 +
  ^SC(10,"T1",9999999,0)=9999999
 +
  ^SC(10,"T1",9999999,1)="|  [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
  ^SC(10,"T2",0)="^44.08A^^"
 +
  ^SC(10,"T2",9999999,0)=9999999
 +
  ^SC(10,"T2",9999999,1)="|  [2 2|2 2 2 2|2 2 2 2|2 2] "
 +
  ^SC(10,"T3",0)="^44.09A^^"
 +
  ^SC(10,"T3",9999999,0)=9999999
 +
  ^SC(10,"T3",9999999,1)="|  [3 3|3 3 3 3|3 3 3 3|3 3] "
 +
  ^SC(10,"T4",0)="^44.08A^^"
 +
  ^SC(10,"T5",0)="^44.09A^^"
 +
  ^SC(10,"T6",0)="^44.0001A^^"
  
AVAILABILITY DATE: t+8  (DEC 21, 2008)
+
'''Notes:'''
  
                                    SUNDAY
+
=== EXAMPLE OF MIXED FIXED AND THEN INDEFINITE DAYS ===
  
 +
Below is a pattern were I created a set pattern in the future, then attempted to create an indefinite pattern starting BEFORE this fixed period.  The result is that the pattern end date is set to the future date.
  
 +
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
NAME: X_TEST_OFFICE//                                   
 +
ABBREVIATION:                                           
 +
CLINIC MEETS AT THIS FACILITY?: YES//                   
 +
SERVICE: MEDICINE// ^                                     
 +
 +
AVAILABILITY DATE: t+8  (DEC 21, 2008)  SUNDAY
 +
 
   TIME: 0800-1000  # APPTS/SLOT : 1//   
 
   TIME: 0800-1000  # APPTS/SLOT : 1//   
 +
  TIME:
 +
[1 1 1 1|1 1 1 1]
 +
...PATTERN OK FOR SUNDAYS INDEFINITELY? n  (No)
 +
...FOR DEC 21,2008? No// y  (Yes) ...OK       
 +
...FOR DEC 28,2008? No// y  (Yes) ...OK       
 +
...FOR JAN  4,2009? No// y  (Yes) ...OK       
 +
...FOR JAN 11,2009? No//  (No)               
 +
...FOR JAN 18,2009? No// ^                   
 +
 +
AVAILABILITY DATE:
 +
GTM>do ^SDB
 +
 +
 +
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
NAME: X_TEST_OFFICE//                                   
 +
ABBREVIATION:                                           
 +
CLINIC MEETS AT THIS FACILITY?: YES// ^                 
 +
 +
AVAILABILITY DATE: t+1  (DEC 14, 2008)  SUNDAY
 +
 +
  TIME: 0900-1100  # APPTS/SLOT : 1//  2
 +
  TIME:
 +
|      [2 2 2 2|2 2 2 2]
 +
...PATTERN OK FOR SUNDAYS UNTIL DEC 21,2008? y  (Yes)
 +
...EXCUSE ME, I'M WORKING AS FAST AS I CAN...       
 +
PATTERN FILED!                                     
 +
 +
AVAILABILITY DATE:
 +
 +
 +
Select CLINIC NAME:
 +
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9                                         
 +
^SC(10,"OST",0)="^44.0002DA^^"                         
 +
^SC(10,"OST",3081221,0)=3081221                       
 +
^SC(10,"OST",3081221,1)="SU 21  [1 1 1 1|1 1 1 1]
 +
^SC(10,"OST",3081228,0)=3081228
 +
^SC(10,"OST",3081228,1)="SU 28  [1 1 1 1|1 1 1 1] 
 +
^SC(10,"OST",3090104,0)=3090104 
 +
^SC(10,"OST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1]
 +
^SC(10,"PC")=1
 +
^SC(10,"PR",0)="^44.1P^1^1"
 +
^SC(10,"PR",1,0)="73^1"
 +
^SC(10,"PR","B",73,1)=""
 +
^SC(10,"PS")=0   
 +
^SC(10,"SDP")="5^365^^365" 
 +
^SC(10,"SL")="15^^8^^^4^5" 
 +
^SC(10,"ST",0)="^44.005"   
 +
^SC(10,"ST",3081214,0)=3081214 
 +
^SC(10,"ST",3081214,1)="SU 14  |      [2 2 2 2|2 2 2 2]
 +
^SC(10,"ST",3081221,0)=3081221
 +
^SC(10,"ST",3081221,1)="SU 21  [1 1 1 1|1 1 1 1] 
 +
^SC(10,"ST",3081221,9)=10
 +
^SC(10,"ST",3081228,0)=3081228
 +
^SC(10,"ST",3081228,1)="SU 28  [1 1 1 1|1 1 1 1]
 +
^SC(10,"ST",3081228,9)=10
 +
^SC(10,"ST",3090104,0)=3090104
 +
^SC(10,"ST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1]
 +
^SC(10,"ST",3090104,9)=10
 +
^SC(10,"T",0)="^44.002D^3081214^19"
 +
^SC(10,"T",3081214,0)=3081214
 +
^SC(10,"T",3081214,2,0)="^44.004A^8^8"
 +
^SC(10,"T",3081214,2,1,0)="0900^2"
 +
^SC(10,"T",3081214,2,2,0)="0915^2"
 +
^SC(10,"T",3081214,2,3,0)="0930^2"
 +
^SC(10,"T",3081214,2,4,0)="0945^2"
 +
^SC(10,"T",3081214,2,5,0)="1000^2"
 +
^SC(10,"T",3081214,2,6,0)="1015^2"
 +
^SC(10,"T",3081214,2,7,0)="1030^2"
 +
^SC(10,"T",3081214,2,8,0)="1045^2"
 +
^SC(10,"T",3081221,0)=3081221
 +
^SC(10,"T",3081221,2,0)="^44.004A^8^8"
 +
^SC(10,"T",3081221,2,1,0)="0800^1"
 +
^SC(10,"T",3081221,2,2,0)="0815^1"
 +
^SC(10,"T",3081221,2,3,0)="0830^1"
 +
^SC(10,"T",3081221,2,4,0)="0845^1"
 +
^SC(10,"T",3081221,2,5,0)="0900^1"
 +
^SC(10,"T",3081221,2,6,0)="0915^1"
 +
^SC(10,"T",3081221,2,7,0)="0930^1"
 +
^SC(10,"T",3081221,2,8,0)="0945^1"
 +
^SC(10,"T0",0)="^44.06A^^"
 +
^SC(10,"T0",3081221,0)=3081221
 +
^SC(10,"T0",3081221,1)="|      [2 2 2 2|2 2 2 2]
 +
^SC(10,"T1",0)="^44.07A^^"
 +
 +
'''Comments:'''
 +
* Because I first added a set pattern (not indefinite) at t+8, I was then not given the option to add an indefinite pattern.  Instead, I was given the option for a pattern from now until t+8.
 +
* OST nodes were made for the first fixed pattern, and then T0 node was set for PATTERN entry.
 +
* T node entries were made for each of the two sets.  There is one pattern starting at 3081214, which changes at 3081221.
 +
* ST node entries again show availability PATTERN combined from both the SPECIAL and TEMPLATE entries.
 +
* Notice presences of ^SC(IEN,"ST",FMDate,9)=IEN nodes.  This means that the pattern should be taken from the OST node of the same date, not the T0 nodes
 +
 +
=== EXAMPLE OF INDEFINITE PATTERN, AND THEN FIXED DAYS ADDED ===
 +
 +
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
NAME: X_TEST_OFFICE//
 +
ABBREVIATION:
 +
CLINIC MEETS AT THIS FACILITY?: YES// ^
 +
 +
AVAILABILITY DATE: t  (DEC 15, 2008)
 +
 +
                                      MONDAY
 +
 +
 +
  TIME: 0800-1000  # APPTS/SLOT : 1//
 +
 +
  TIME:
 +
[1 1 1 1|1 1 1 1]
 +
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
 +
...HMMM, I'M WORKING AS FAST AS I CAN...
 +
PATTERN FILED!
 +
 +
 +
AVAILABILITY DATE: t+14  (DEC 29, 2008)
 +
 +
                                      MONDAY
 +
 +
 +
  TIME: 0900-1100  # APPTS/SLOT : 1//  2
 +
 +
  TIME:
 +
|      [2 2 2 2|2 2 2 2]
 +
...PATTERN OK FOR MONDAYS INDEFINITELY? n  (No)
 +
...FOR DEC 29,2008? No// y  (Yes) ...OK
 +
...FOR JAN  5,2009? No// y  (Yes) ...OK
 +
...FOR JAN 12,2009? No// ^
 +
 +
AVAILABILITY DATE:
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9
 +
^SC(10,"OST",0)="^44.0002DA^^"
 +
^SC(10,"OST",3081229,0)=3081229
 +
^SC(10,"OST",3081229,1)="MO 29  |      [2 2 2 2|2 2 2 2] 
 +
^SC(10,"OST",3090105,0)=3090105
 +
^SC(10,"OST",3090105,1)="MO 05  |      [2 2 2 2|2 2 2 2] 
 +
^SC(10,"PC")=1
 +
^SC(10,"PR",0)="^44.1P^1^1"
 +
^SC(10,"PR",1,0)="73^1"
 +
^SC(10,"PR","B",73,1)=""
 +
^SC(10,"PS")=0
 +
^SC(10,"S",0)="^44.001DA^^"
 +
^SC(10,"S",3081215.09,0)=3081215.09
 +
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
 +
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
 +
^SC(10,"S",3090223.083,0)=3090223.083
 +
^SC(10,"S",3090223.083,1,0)="^44.003PA^^"
 +
^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"
 +
^SC(10,"SDP")="5^365^^365"
 +
^SC(10,"SL")="15^^8^^^4^5"
 +
^SC(10,"ST",0)="^44.005"
 +
^SC(10,"ST",3081215,0)=3081215
 +
^SC(10,"ST",3081215,1)="MO 15  [1 1 1 1|0 1 1 1]           
 +
^SC(10,"ST",3081222,0)=3081222
 +
^SC(10,"ST",3081222,1)="MO 22  [1 1 1 1|1 1 1 1] "
 +
^SC(10,"ST",3081229,0)=3081229
 +
^SC(10,"ST",3081229,1)="MO 29  |      [2 2 2 2|2 2 2 2]   
 +
^SC(10,"ST",3081229,9)=10
 +
^SC(10,"ST",3090105,0)=3090105
 +
^SC(10,"ST",3090105,1)="MO 05  |      [2 2 2 2|2 2 2 2]   
 +
^SC(10,"ST",3090105,9)=10
 +
^SC(10,"ST",3090112,0)=3090112
 +
^SC(10,"ST",3090112,1)="MO 12  [1 1 1 1|1 1 1 1] "
 +
^SC(10,"ST",3090223,0)=3090223
 +
^SC(10,"ST",3090223,1)="MO 23  [1 1 0 1|1 1 1 1]           
 +
^SC(10,"T",0)="^44.002D^3081229^25"
 +
^SC(10,"T",3081215,0)=3081215
 +
^SC(10,"T",3081215,2,0)="^44.004A^8^8"
 +
^SC(10,"T",3081215,2,1,0)="0800^1"
 +
^SC(10,"T",3081215,2,2,0)="0815^1"
 +
^SC(10,"T",3081215,2,3,0)="0830^1"
 +
^SC(10,"T",3081215,2,4,0)="0845^1"
 +
^SC(10,"T",3081215,2,5,0)="0900^1"
 +
^SC(10,"T",3081215,2,6,0)="0915^1"
 +
^SC(10,"T",3081215,2,7,0)="0930^1"
 +
^SC(10,"T",3081215,2,8,0)="0945^1"
 +
^SC(10,"T",3081229,0)=3081229
 +
^SC(10,"T",3081229,2,0)="^44.004A^8^8"
 +
^SC(10,"T",3081229,2,1,0)="0900^2"
 +
^SC(10,"T",3081229,2,2,0)="0915^2"
 +
^SC(10,"T",3081229,2,3,0)="0930^2"
 +
^SC(10,"T",3081229,2,4,0)="0945^2"
 +
^SC(10,"T",3081229,2,5,0)="1000^2"
 +
^SC(10,"T",3081229,2,6,0)="1015^2"
 +
^SC(10,"T",3081229,2,7,0)="1030^2"
 +
^SC(10,"T",3081229,2,8,0)="1045^2"
 +
^SC(10,"T0",0)="^44.06A^^"
 +
^SC(10,"T1",0)="^44.07A^^"
 +
^SC(10,"T1",9999999,0)=9999999
 +
^SC(10,"T1",9999999,1)="[1 1 1 1|1 1 1 1] "
 +
 +
'''Comments'''
 +
* The TEMPLATE node (T1) is not changed by the subsequent addition of fixed days.
 +
* The PATTERN node (ST) shows the mixture of the repeating template with superimposed fixed days.
 +
* The AVAILABILITY node (T) has the availability times change starting at 3081229.  This means that one can't simply look at the latest date in the T nodes and use that to determine slots.
 +
 +
=== EXAMPLE OF APPOINTMENT ADDED ===
 +
 +
Below is a [[record~|Record]] with just 1 appt was made for 12/15/08@0900
 +
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9                                         
 +
^SC(10,"OST",0)="^44.0002DA^^"
 +
^SC(10,"OST",3081215,0)=3081215
 +
^SC(10,"OST",3081215,1)="MO 15  |  [2 2|2 2 2 2] "
 +
^SC(10,"OST",3081222,0)=3081222
 +
^SC(10,"OST",3081222,1)="MO 22  |  [2 2|2 2 2 2] "
 +
^SC(10,"PC")=1
 +
^SC(10,"PR",0)="^44.1P^1^1"
 +
^SC(10,"PR",1,0)="73^1"
 +
^SC(10,"PR","B",73,1)=""
 +
^SC(10,"PS")=0
 +
^SC(10,"S",0)="^44.001DA^^"
 +
^SC(10,"S",3081215.09,0)=3081215.09
 +
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
 +
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
 +
^SC(10,"SDP")="5^365^^365"
 +
^SC(10,"SL")="15^^8^^^4^5"
 +
^SC(10,"ST",0)="^44.005"
 +
^SC(10,"ST",3081215,0)=3081215
 +
^SC(10,"ST",3081215,1)="MO 15  |  [2 2|1 2 2 2]  "
 +
^SC(10,"ST",3081215,9)=10
 +
^SC(10,"ST",3081222,0)=3081222
 +
^SC(10,"ST",3081222,1)="MO 22  |  [2 2|2 2 2  2]  "
 +
^SC(10,"ST",3081222,9)=10
 +
^SC(10,"T",0)="^44.002D^3081215^20"
 +
^SC(10,"T",3081215,0)=3081215
 +
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
 +
^SC(10,"T",3081215,2,1,0)="0830^2"
 +
^SC(10,"T",3081215,2,2,0)="0845^2"
 +
^SC(10,"T",3081215,2,3,0)="0900^2"
 +
^SC(10,"T",3081215,2,4,0)="0915^2"
 +
^SC(10,"T",3081215,2,5,0)="0930^2"
 +
^SC(10,"T",3081215,2,6,0)="0945^2"
 +
^SC(10,"T0",0)="^44.06A^^"
 +
^SC(10,"T1",0)="^44.07A^^"
 +
 +
Comments:
 +
* Notice that the PATTERN  node ("ST"), shows only 1 (not 2) spaces available at the appt time.  Thus this is where the [[record~|Record]] of CURRENT AVAILABILITY is stored.
 +
* The AVAILABILITY "T" node value of "2" patients allowd at 0900 is NOT changed.
 +
 +
 +
=== Example of DELETING appt slots ===
 +
 +
Below shows an example of deleting appts, done by redefining the available appts for the same date.
 +
 +
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
NAME: X_TEST_OFFICE//                                   
 +
ABBREVIATION:                                           
 +
CLINIC MEETS AT THIS FACILITY?: YES// ^                 
 +
 +
AVAILABILITY DATE: t+2  (DEC 15, 2008)    MONDAY
 +
 +
 +
  TIME: 0830-0840  [ TIME SPAN ENTERED NOT CONSISTENT WITH 15 MIN APPT LENGTH ]
 +
  TIME: 0830-0845  # APPTS/SLOT : 1//  2
 +
  TIME: 0900-1130  # APPTS/SLOT : 1// 
 +
  TIME: 1300-1315  # APPTS/SLOT : 1// 
 +
  TIME: 1330-1630  # APPTS/SLOT : 1// 
 +
  TIME:
 +
|  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1]
 +
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)                     
 +
...HMMM, LET ME THINK ABOUT THAT A MOMENT...                         
 +
PATTERN FILED!                                                       
  
 +
AVAILABILITY DATE:
 +
 +
 +
 +
Select CLINIC NAME:
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9                                         
 +
^SC(10,"OST",0)="^44.0002DA^^"                         
 +
^SC(10,"PC")=1                                         
 +
^SC(10,"PR",0)="^44.1P^1^1"                           
 +
^SC(10,"PR",1,0)="73^1"                               
 +
^SC(10,"PR","B",73,1)=""                               
 +
^SC(10,"PS")=0                                         
 +
^SC(10,"S",0)="^44.001DA^^"                           
 +
^SC(10,"S",3081215.09,0)=3081215.09                   
 +
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"               
 +
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213" 
 +
^SC(10,"SDP")="5^365^^365"                             
 +
^SC(10,"SL")="15^^8^^^4^5"                             
 +
^SC(10,"ST",0)="^44.005"                               
 +
^SC(10,"ST",3081215,0)=3081215                         
 +
^SC(10,"ST",3081215,1)="MO 15  |  [2] [0 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1]"
 +
^SC(10,"ST",3081222,0)=3081222
 +
^SC(10,"ST",3081222,1)="MO 22  |  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
^SC(10,"ST",3081229,0)=3081229
 +
^SC(10,"ST",3081229,1)="MO 29  |  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
^SC(10,"ST",3090105,0)=3090105
 +
^SC(10,"ST",3090105,1)="MO 05  |  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
^SC(10,"ST",3090112,0)=3090112 
 +
^SC(10,"ST",3090112,1)="MO 12  |  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
^SC(10,"T",0)="^44.002D^3081215^21"
 +
^SC(10,"T",3081215,0)=3081215
 +
^SC(10,"T",3081215,2,0)="^44.004A^24^24"
 +
^SC(10,"T",3081215,2,1,0)="0830^2"
 +
^SC(10,"T",3081215,2,2,0)="0900^1"
 +
^SC(10,"T",3081215,2,3,0)="0915^1"
 +
^SC(10,"T",3081215,2,4,0)="0930^1"
 +
^SC(10,"T",3081215,2,5,0)="0945^1"
 +
^SC(10,"T",3081215,2,6,0)="1000^1"
 +
^SC(10,"T",3081215,2,7,0)="1015^1"
 +
^SC(10,"T",3081215,2,8,0)="1030^1"
 +
^SC(10,"T",3081215,2,9,0)="1045^1"
 +
^SC(10,"T",3081215,2,10,0)="1100^1"
 +
^SC(10,"T",3081215,2,11,0)="1115^1"
 +
^SC(10,"T",3081215,2,12,0)="1300^1"
 +
^SC(10,"T",3081215,2,13,0)="1330^1"
 +
^SC(10,"T",3081215,2,14,0)="1345^1"
 +
^SC(10,"T",3081215,2,15,0)="1400^1"
 +
^SC(10,"T",3081215,2,16,0)="1415^1"
 +
^SC(10,"T",3081215,2,17,0)="1430^1"
 +
^SC(10,"T",3081215,2,18,0)="1445^1"
 +
^SC(10,"T",3081215,2,19,0)="1500^1"
 +
^SC(10,"T",3081215,2,20,0)="1515^1"
 +
^SC(10,"T",3081215,2,21,0)="1530^1"
 +
^SC(10,"T",3081215,2,22,0)="1545^1"
 +
^SC(10,"T",3081215,2,23,0)="1600^1"
 +
^SC(10,"T",3081215,2,24,0)="1615^1"
 +
^SC(10,"T0",0)="^44.06A^^" 
 +
^SC(10,"T1",0)="^44.07A^^" 
 +
^SC(10,"T1",9999999,0)=9999999 
 +
^SC(10,"T1",9999999,1)="|  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "     
 +
 +
GTM>do ^SDB
 +
 +
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
 +
NAME: X_TEST_OFFICE//                                   
 +
ABBREVIATION:                                           
 +
CLINIC MEETS AT THIS FACILITY?: YES// ^                 
 +
 +
AVAILABILITY DATE: t+2  (DEC 15, 2008) MONDAY
 +
 +
  TIME: 0830-0845  # APPTS/SLOT : 1// 
 
   TIME:  
 
   TIME:  
[1 1 1 1|1 1 1 1]
+
[1]
...PATTERN OK FOR SUNDAYS INDEFINITELY? n (No)
+
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
...FOR DEC 21,2008? No// y (Yes) ...OK       
+
...HMMM, LET ME PUT YOU ON 'HOLD' FOR A SECOND...
...FOR DEC 28,2008? No// y (Yes) ...OK       
+
PATTERN FILED!                                   
...FOR JAN 4,2009? No// y (Yes) ...OK        
+
AVAILABILITY DATE: 
...FOR JAN 11,2009? No//   (No)              
+
Select CLINIC NAME:
...FOR JAN 18,2009? No// ^                   
+
 
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9                                         
 +
^SC(10,"OST",0)="^44.0002DA^^"
 +
^SC(10,"PC")=1
 +
^SC(10,"PR",0)="^44.1P^1^1"
 +
^SC(10,"PR",1,0)="73^1"
 +
^SC(10,"PR","B",73,1)=""
 +
^SC(10,"PS")=0
 +
^SC(10,"S",0)="^44.001DA^^"
 +
^SC(10,"S",3081215.09,0)=3081215.09
 +
  ^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
 +
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
 +
^SC(10,"S",3081215.09,1,1,"OB")="O"
 +
^SC(10,"SDP")="5^365^^365"
 +
^SC(10,"SL")="15^^8^^^4^5"
 +
^SC(10,"ST",0)="^44.005"
 +
^SC(10,"ST",3081215,0)=3081215
 +
^SC(10,"ST",3081215,1)="MO 15  |  [1]  *    "
 +
^SC(10,"ST",3081222,0)=3081222
 +
^SC(10,"ST",3081222,1)="MO 22  |  [1] "
 +
^SC(10,"ST",3081229,0)=3081229
 +
^SC(10,"ST",3081229,1)="MO 29  |  [1] "
 +
^SC(10,"ST",3090105,0)=3090105
 +
^SC(10,"ST",3090105,1)="MO 05  |  [1] "
 +
^SC(10,"ST",3090112,0)=3090112
 +
^SC(10,"ST",3090112,1)="MO 12  |  [1] "
 +
  ^SC(10,"T",0)="^44.002D^3081215^22"
 +
^SC(10,"T",3081215,0)=3081215
 +
^SC(10,"T",3081215,2,0)="^44.004A^1^1"
 +
^SC(10,"T",3081215,2,1,0)="0830^1"
 +
^SC(10,"T0",0)="^44.06A^^"
 +
^SC(10,"T1",0)="^44.07A^^"
 +
^SC(10,"T1",3081215,0)=3081215
 +
^SC(10,"T1",3081215,1)="|  [2] [1 1 1 1|1 1 1 1|1 1]  |      [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
 +
^SC(10,"T1",9999999,0)=9999999
 +
^SC(10,"T1",9999999,1)="|  [1] "
 +
 
 +
Comments:
 +
* The "T" nodes are simply erased and replaced by the new pattern
 +
* The "T1" node has 2 date ranges. 1st is up to (but not including) 3081215, and the 2nd is from 3081215 onward
 +
* The "ST" node shows a * that I think indicates an appt with no slot
 +
 
 +
=== Example of Browsing into the Future ===
 +
 
 +
 
 +
GTM>zwr ^SC(10,*)
 +
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 +
^SC(10,"AT")=9                                         
 +
^SC(10,"OST",0)="^44.0002DA^^"                         
 +
^SC(10,"PC")=1                                         
 +
^SC(10,"PR",0)="^44.1P^1^1"                           
 +
^SC(10,"PR",1,0)="73^1"                               
 +
^SC(10,"PR","B",73,1)=""                               
 +
^SC(10,"PS")=0                                         
 +
  ^SC(10,"S",0)="^44.001DA^^"                           
 +
^SC(10,"S",3081215.09,0)=3081215.09                   
 +
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"               
 +
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213" 
 +
  ^SC(10,"S",3090223.083,0)=3090223.083                 
 +
  ^SC(10,"S",3090223.083,1,0)="^44.003PA^^"             
 +
^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"     
 +
^SC(10,"SDP")="5^365^^365"                             
 +
^SC(10,"SL")="15^^8^^^4^5"                             
 +
^SC(10,"ST",0)="^44.005"                               
 +
^SC(10,"ST",3081215,0)=3081215                         
 +
^SC(10,"ST",3081215,1)="MO 15  |  [1 1|0 1 1 1]        
 +
^SC(10,"ST",3081222,0)=3081222
 +
^SC(10,"ST",3081222,1)="MO 22  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3081229,0)=3081229
 +
^SC(10,"ST",3081229,1)="MO 29  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090105,0)=3090105
 +
^SC(10,"ST",3090105,1)="MO 05  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090112,0)=3090112
 +
^SC(10,"ST",3090112,1)="MO 12  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090119,0)=3090119
 +
^SC(10,"ST",3090119,1)="MO 19  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090126,0)=3090126
 +
^SC(10,"ST",3090126,1)="MO 26  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090202,0)=3090202
 +
^SC(10,"ST",3090202,1)="MO 02  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090209,0)=3090209
 +
^SC(10,"ST",3090209,1)="MO 09  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090216,0)=3090216
 +
^SC(10,"ST",3090216,1)="MO 16  |  [1 1|1 1 1 1] "
 +
^SC(10,"ST",3090223,0)=3090223
 +
^SC(10,"ST",3090223,1)="MO 23  |  [0 1|1 1 1 1] "
 +
^SC(10,"T",0)="^44.002D^3081215^23"
 +
^SC(10,"T",3081215,0)=3081215
 +
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
 +
^SC(10,"T",3081215,2,1,0)="0830^1"
 +
^SC(10,"T",3081215,2,2,0)="0845^1"
 +
^SC(10,"T",3081215,2,3,0)="0900^1"
 +
^SC(10,"T",3081215,2,4,0)="0915^1"
 +
^SC(10,"T",3081215,2,5,0)="0930^1"
 +
^SC(10,"T",3081215,2,6,0)="0945^1"
 +
^SC(10,"T0",0)="^44.06A^^"
 +
^SC(10,"T1",0)="^44.07A^^"
 +
^SC(10,"T1",9999999,0)=9999999
 +
^SC(10,"T1",9999999,1)="|  [1 1|1 1 1 1] "
 +
 +
Comments:
 +
* An inital ^SDB was used, and 5 week's worth of MONDAY's were created
 +
* Then, as I used the MAKE AN APPOINTMENT menu option, and browsed into the future, more days were automatically added to the "ST" nodes
 +
* Finally, an appt was set at 2/23/09@0800
 +
* Notee: As I have cleared this test clinic each time between tests, I have not cleared out the S nodes, which are actual existing appts.  Notice that when the current availability string is constructed for the given date, pre-existing appts are taken into account, and automatically notes (e.g. 12/15/08@0900 appt is shown.)
 +
 
 +
=== Patterns to consider ===
 +
 
 +
Below are possible scheduling patterns to consider.  I will use *** to indicated days using a TEMPLATE, and !!! indicate days that were specified as specialized patterns (i.e. fixed days). 1**** means that *** days were added first.  2***** means that these were added second, 3!!!! would be added third etc.
 +
 
 +
* 1***** 2!!! **** 3!!!
 +
* 2***** 1!!! 3********
 +
* others...
 +
 
 +
=== Cancelling Appts for Individual Patients ===
 +
 
 +
Here is an example appt for patient `70685 on 2/23/09 at 0900
  
AVAILABILITY DATE:
+
Below is data from the HOSPITAL LOCATION file, in the "S" node
GTM>do ^SDB
 
  
 +
  ^SC(10,"S",3090223.09,0)=3090223.09
 +
  ^SC(10,"S",3090223.09,1,0)="^44.003PA^^"
 +
  ^SC(10,"S",3090223.09,1,1,0)="70685^15^Bring xrays!^^^73^3090221.1335"
  
 +
Information about the appt is also stored is the PATIENT file, in the "S" node.  Below is is the same appt as above:
 +
 +
  ^DPT(70685,"S",3090223.09,0)="10^^^^^^3^^^^^^^^^9^^^3090223^^^^^0^C^0"
 +
  ^DPT(70685,"S",3090223.09,1)="3090223^1"
  
 +
The above appt was cancelled via the roll-and-scroll interface.  Below is the same appt re-dumped.  Notice that the [[record~|Record]] structure remains, but the information pointing the the patient etc are simply removed.
  
Select CLINIC NAME: x_TEST_OFFICE      TOPPENBERG,KEVIN S
+
  ^SC(10,"S",3090223.09,0)=3090223.09
NAME: X_TEST_OFFICE//                                   
+
  ^SC(10,"S",3090223.09,1,0)="^44.003PA^^"
ABBREVIATION:                                           
 
CLINIC MEETS AT THIS FACILITY?: YES// ^                  
 
  
AVAILABILITY DATE: t+1 (DEC 14, 2008)
+
Below is the appt information stored in the PATIENT file.  Notice that the appt [[record~|Record]] remains, but it is now marked as cancelled.
 +
  ^DPT(70685,"S",3090223.09,0)="10^C^^^^^3^^^^^73^^3090222.0922^13^9^^73^3090221.1335^^^^^0^C^0"
 +
  ^DPT(70685,"S",3090223.09,1)="3090223^1"
 +
  ^DPT(70685,"S",3090223.09,"R")="Testing cancellation"
  
                                    SUNDAY
+
Also, a new index entry is created:
 +
  ^DPT("ASDCN",10,3090223.09,70685)="" ;<-- 1 if patient canceled, otherwise ""
  
 +
Below is the above ^DPT entry with field names:
  
   TIME: 0900-1100  # APPTS/SLOT : 1//  2
+
   [[Record~|Record]]# 3090127.083,70685,
 +
  .001-APPOINTMENT DATE/TIME : JAN 27, 2009@08:30
 +
  .01-CLINIC : X_TEST_OFFICE
 +
    4-REAL APPOINTMENT : 1
 +
    9-PURPOSE OF VISIT : SCHEDULED VISIT
 +
  9.5-APPOINTMENT TYPE : REGULAR
 +
    20-DATE APPT. MADE : JAN 27, 2009
 +
    25-SCHEDULING REQUEST TYPE : OTHER THAN 'NEXT AVA.' (CLINICIAN REQ.)
 +
    26-NEXT AVA. APPT. INDICATOR : NOT INDICATED TO BE A 'NEXT AVA.' APPT.
 +
    27-DESIRED DATE OF APPOINTMENT : JAN 27, 2009
 +
    28-FOLLOW-UP VISIT : YES
 +
  100-CURRENT STATUS : NO [[ACTION~|Action]] TAKEN
  
  TIME:
+
For some reason, field 3 is not shown. It is a set as belowSo the C means 'Cancelled':
|      [2 2 2 2|2 2 2 2]
 
...PATTERN OK FOR SUNDAYS UNTIL DEC 21,2008? y (Yes)
 
...EXCUSE ME, I'M WORKING AS FAST AS I CAN...       
 
PATTERN FILED!                                     
 
  
 +
  N:  NO-SHOW
 +
  C:  CANCELLED BY CLINIC
 +
  NA: NO-SHOW & AUTO RE-BOOK
 +
  CA: CANCELLED BY CLINIC & AUTO RE-BOOK
 +
  I:  INPATIENT APPOINTMENT
 +
  PC: CANCELLED BY PATIENT
 +
  PCA:CANCELLED BY PATIENT & AUTO-REBOOK
 +
  NT: NO [[ACTION~|Action]] TAKEN
  
AVAILABILITY DATE:
+
                                1 2    7    12      14      15    18    19
 +
  ^DPT(70685,"S",3090223.09,0)="10^ ^^^^^3^^^^^  ^^            ^  ^9^^  ^3090223    ^^^^^0^C^0"
 +
  ^DPT(70685,"S",3090223.09,0)="10^C^^^^^3^^^^^73^^3090222.0922^13^9^^73^3090221.1335^^^^^0^C^0"
  
 +
  Notice that the fields that are changed
 +
  upon deletion of an appt are as follows:
 +
  Piece# NAME (Field Num):  Value change
 +
  ---------------------------------------
 +
  2 STATUS (#3):                    null --> C
 +
  12 NO-SHOW/CANCELLED BY (#14):    null --> 73 (a pointer)
 +
  14 NO-SHOW/CANCEL DATE/TIME (#15): null --> date
 +
  15 CANCELLATION REASON (#16):      null --> 13 ( pointer)
 +
  18 DATA ENTRY CLERK (#19):        null --? 73
 +
  19 DATE APPT. MADE (#20):          date1 --> date2
  
  
Select CLINIC NAME:
+
Below is the data dictionary for the entry in the PATIENT file
GTM>               
 
  
GTM>zwr ^SC(10,*)
+
    S;0               1900  APPOINTMENT                    W:^ <-Mult [2.98P]
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
+
      -                .001   -APPOINTMENT DATE/TIME                      [D]
^SC(10,"AT")=9                                         
+
      -0;1             .01  -CLINIC                        <-Pntr [MP44'X]
^SC(10,"OST",0)="^44.0002DA^^"                         
+
      -Computed        .02   -TELEPHONE OF CLINIC                      [CJ14]
^SC(10,"OST",3081215,0)=3081215                       
+
      -0;2                3  -STATUS                                      [S]
^SC(10,"OST",3081215,1)="MO 15  |   [2 2|2 2 2 2]                                               "
+
      -Computed          4  -REAL APPOINTMENT                          [BC]
^SC(10,"OST",3081221,0)=3081221                                                                 
+
      -0;3                5  -LAB DATE/TIME                              [D]
^SC(10,"OST",3081221,1)="SU 21 [1 1 1 1|1 1 1 1]                                               "
+
      -0;4                6  -X-RAY DATE/TIME                            [D]
^SC(10,"OST",3081222,0)=3081222                                                                 
+
      -0;5                7  -EKG DATE/TIME                              [D]
^SC(10,"OST",3081222,1)="MO 22  |   [2 2|2 2 2 2]                                               "
+
      -0;6                8   -[[ROUTING SLIP~|Routing Slip]] PRINTED                        [S]
^SC(10,"OST",3081228,0)=3081228                                                                 
+
      -0;13            8.5  -{[ROUTING SLIP~|Routing Slip]] PRINT DATE                    [D]
^SC(10,"OST",3081228,1)="SU 28  [1 1 1 1|1 1 1 1]                                               "
+
      -0;7                9  -PURPOSE OF VISIT                          [RS]
^SC(10,"OST",3090104,0)=3090104                                                                 
+
      -0;16            9.5  -APPOINTMENT TYPE              <-Pntr [P409.1']
^SC(10,"OST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1]                                               "
+
      -0;8              10   -[[SPECIAL SURVEY~|Special Survey]] DISPOSITION              [NJ1,0]
^SC(10,"PC")=1                                                                                 
+
      -0;9              11  -NUMBER OF COLLATERAL SEEN              [NJ1,0]
^SC(10,"PR",0)="^44.1P^1^1"                                                                     
+
      -0;10             12  -AUTO-REBOOKED APPT. DATE/TIME              [D]
^SC(10,"PR",1,0)="73^1"                                                                         
+
      -0;11              13  -[[COLLATERAL VISIT~|Collateral Visit]]                            [S]
^SC(10,"PR","B",73,1)=""                                                                       
+
      -0;12              14  -NO-SHOW/CANCELLED BY            <-Pntr  [P200']
^SC(10,"PS")=0                                                                                  
+
      -0;14              15  -NO-SHOW/CANCEL DATE/TIME                    [D]
^SC(10,"SDP")="5^365^^365"                                                                     
+
      -0;15              16  -CANCELLATION REASON        <-Pntr  [R*P409.2']
^SC(10,"SL")="15^^8^^^4^5"                                                                     
+
      -R;1              17  -CANCELLATION REMARKS                        [F]
^SC(10,"ST",0)="^44.005"                                                                       
+
      -0;17              18  -APPT. CANCELLED                  <-Pntr  [P44']
^SC(10,"ST",3081214,0)=3081214                                                                 
+
      -0;18              19  -DATA ENTRY CLERK                <-Pntr  [P200']
^SC(10,"ST",3081214,1)="SU 14  |       [2 2 2 2|2 2 2 2] "                                     
+
      -0;19              20  -DATE APPT. MADE                            [D]
^SC(10,"ST",3081221,0)=3081221
+
      -0;20              21  -OUTPATIENT ENCOUNTER        <-Pntr  [P409.68']
^SC(10,"ST",3081221,1)="SU 21  [1 1 1 1|1 1 1 1]                                               "
+
      -0;21              22  -ENCOUNTER FORMS PRINTED                    [S]
^SC(10,"ST",3081221,9)=10
+
      -0;22              23  -ENCOUNTER FORMS AS ADD-ONS                  [S]
^SC(10,"ST",3081228,0)=3081228
+
      -0;23            23.1   -ENCOUNTER CONVERSION STATUS                [S]
^SC(10,"ST",3081228,1)="SU 28 [1 1 1 1|1 1 1 1]                                               "
+
      -0;24              24  -APPOINTMENT TYPE SUB-CATEGORY  <-Pntr  [P35.2']
^SC(10,"ST",3081228,9)=10
+
      -0;25              25  -SCHEDULING REQUEST TYPE                    [RS]
^SC(10,"ST",3090104,0)=3090104
+
      -0;26              26  -NEXT AVA. APPT. INDICATOR                  [RS]
^SC(10,"ST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1]                                               "
+
      -1;1              27  -DESIRED DATE OF APPOINTMENT                [D]
^SC(10,"ST",3090104,9)=10
+
      -1;2              28  -FOLLOW-UP VISIT                            [S]
^SC(10,"T",0)="^44.002D^3081214^16"
+
       -Computed        100  -CURRENT STATUS                          [CJ35]
^SC(10,"T",3081214,0)=3081214
 
^SC(10,"T",3081214,2,0)="^44.004A^8^8"
 
^SC(10,"T",3081214,2,1,0)="0900^2"
 
^SC(10,"T",3081214,2,2,0)="0915^2"
 
^SC(10,"T",3081214,2,3,0)="0930^2"
 
^SC(10,"T",3081214,2,4,0)="0945^2"
 
^SC(10,"T",3081214,2,5,0)="1000^2"
 
^SC(10,"T",3081214,2,6,0)="1015^2"
 
^SC(10,"T",3081214,2,7,0)="1030^2"
 
^SC(10,"T",3081214,2,8,0)="1045^2"
 
^SC(10,"T",3081221,0)=3081221
 
^SC(10,"T",3081221,2,0)="^44.004A^8^8"
 
^SC(10,"T",3081221,2,1,0)="0800^1"
 
^SC(10,"T",3081221,2,2,0)="0815^1"
 
^SC(10,"T",3081221,2,3,0)="0830^1"
 
^SC(10,"T",3081221,2,4,0)="0845^1"
 
^SC(10,"T",3081221,2,5,0)="0900^1"
 
^SC(10,"T",3081221,2,6,0)="0915^1"
 
^SC(10,"T",3081221,2,7,0)="0930^1"
 
^SC(10,"T",3081221,2,8,0)="0945^1"
 
^SC(10,"T0",0)="^44.06A^^"
 
^SC(10,"T0",3081221,0)=3081221
 
^SC(10,"T0",3081221,1)="|       [2 2 2 2|2 2 2 2] "
 
^SC(10,"T1",0)="^44.07A^^"
 

Latest revision as of 19:58, 24 July 2012

This will contain notes as the data structures for clinic scheduling is explored.

DATA DICTIONARY NOTES

Outpatient clinics are stored in the HOSPITAL LOCATION FILE.

Appointment slots are held in the AVAILABILITY field, node "T"

Here is the relevant DD definitions:

AVAILABILITY subfile, and the SCHEDULE TIME sub-subfile.
For a given date, it specifies the number of patients allowed in each slot
-------------------------------------------------------------
   T;0               1920  AVAILABILITY                    <-Mult [44.002DA]
     -0;1              .01   -AVAILABILITY                              [MDX]
     -2;0                2   -SCHEDULE TIME                  <-Mult [44.004A]
      --0;1            .01    --SCHEDULE TIME                           [MFX]
      --0;2              1    --NUMBER OF PATIENTS                    [NJ2,0]
     -Computed           3   -DAY OF WEEK                              [CJ15]
     -Computed           4   -NUMBEROFDAY                               [CJ1]
Date/Time set up for clinic availability
-------------------------------------------------------------
    STT;1           1920.9  AVAILABILITY FLAG                             [D]
PATTERN subfile.  For a given date, it shows avail slots
-------------------------------------------------------------
    ST;0              1921  PATTERN                     W:^ <-Mult [44.005DA]
     -0;1              .01   -PATTERN DATE                              [MDX]
     -1;E1,90            1   -CURRENT AVAILABILITY                        [F]
     -Computed           2   -MAINTENANCE                              [CJ8X]
     -9;1                3   -SPECIAL AVAILABILITY FLAG                  [DX]
    OST;0           1921.5  SPECIAL PATTERN            W:^ <-Mult [44.0002DA]
     -0;1              .01   -PATTERN DATE                               [DX]
     -1;E1,90            1   -ORIGINAL AVAILABILITY                       [F]
XDAY TEMPLATE subfile entries.  
For a given LIMIT DATE, it stores a master pattern. 
-------------------------------------------------------------
   T0;0              1922  SUNDAY TEMPLATE               W:^ <-Mult [44.06A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;E1,80            1   -MASTER PATTERN                              [F]
    T1;0              1923  MONDAY TEMPLATE               W:^ <-Mult [44.07A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;E1,80            1   -MASTER PATTERN                              [F]
    T2;0              1924  TUESDAY TEMPLATE              W:^ <-Mult [44.08A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;E1,80            1   -MASTER PATTERN                              [F]
    T3;0              1925  WEDNESDAY TEMPLATE            W:^ <-Mult [44.09A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;1                1   -MASTER PATTERN                              [F]
    T4;0              1926  THURSDAY TEMPLATE            W:^ <-Mult [44.008A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;E1,80            1   -MASTER PATTERN                              [F]
    T5;0              1927  FRIDAY TEMPLATE              W:^ <-Mult [44.009A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
     -1;E1,80            1   -MASTER PATTERN                              [F]
    T6;0              1928  SATURDAY TEMPLATE           W:^ <-Mult [44.0001A]
     -0;1              .01   -LIMIT DATE                             [NJ7,0X]
      -1;E1,80            1   -MASTER PATTERN                              [F]


APPOINTMENTS  subfile entries.  
For a given LIMIT DATE, it stores actual appts.
-------------------------------------------------------------
   S;0               1900  APPOINTMENT                 W:^ <-Mult [44.001DA]
     -0;1              .01   -APPOINTMENT DATE/TIME                     [MDX]
     -1;0                2   -PATIENT                       <-Mult [44.003PA]
      --0;1            .01    --PATIENT                        <-Pntr  [MP2']
      --0;2              1    --LENGTH OF APP'T                       [NJ3,0]
      --0;3              2    --XRAY                                      [F]
      --0;4              3    --OTHER                                     [F]
      --0;5              4    --WARD LOC                                  [F]
      --0;6              7    --DATA ENTRY CLERK              <-Pntr  [P200']
      --0;7              8    --DATE APPOINTMENT MADE                     [D]
      --0;8             10    --PRIOR X-RAY RESULTS TO CLINIC?            [S]
      --0;9            310    --APPOINTMENT CANCELLED?                    [S]
      --0;10            30    --ELIGIBILITY OF VISIT          <-Pntr  [*P8'X]
      --OB;1             9    --OVERBOOK                                  [S]
      --RTR;1          200    --PARENT Record REQUEST #    <-Pntr  [*P190.1']
      --C;1            309    --CHECKED-I N                               [DX]
      --C;2            302    --CHECK IN USER                 <-Pntr  [P200']
      --C;3            303    --CHECKED OUT                              [DX]
      --C;4            304    --CHECK OUT USER                <-Pntr  [P200']
      --C;5            305    --CHECK IN ENTERED                          [D]
      --C;6            306    --CHECK OUT ENTERED                         [D]

SAMPLE Record

Below is a dump of a sample Record

GTM>zwr ^SC(6,*)
^SC(6,0)="Laughlin_Office^lo^C^69^^^295^M^^^Laughlin MOB-1^^^^1^^Y^295^Y^^0^1^^1^^^^^^0"
^SC(6,99)="423-787-7000"
^SC(6,"AT")=9
^SC(6,"HUIAUTOPRINTER")=65
^SC(6,"HUIAUTOSITE")=2
^SC(6,"LTR")=1

Below are the "OST" node entries, which hold "SPECIAL PATTERN" subfile

^SC(6,"OST",0)="^44.0002DA^^"
^SC(6,"OST",3081123,0)=3081123
^SC(6,"OST",3081123,1)="SU 23  [   |   |   |   |   |   |   |   |   |   |   |  |   |   |   ]   "
^SC(6,"OST",3081207,0)=3081207
^SC(6,"OST",3081207,1)="SU 07  [   |   |   |   |   |   |   |   |   |   |   |  |   |   |   ]   "
^SC(6,"PC")=1
^SC(6,"PR",0)="^44.1P^2^2"
^SC(6,"PR",1,0)="73^1"
^SC(6,"PR",2,0)="83^0"
^SC(6,"PR","B",73,1)=""
^SC(6,"PR","B",83,2)=""
^SC(6,"PS")=1

Below are the "S" node entries, which are actual appts.

^SC(6,"S",0)="^44.001DA^^"
^SC(6,"S",3081123.103,0)=3081123.103
^SC(6,"S",3081123.103,1,0)="^44.003PA^^"
^SC(6,"S",3081123.103,1,1,0)="1^15^^^^73^3081123^^^"
^SC(6,"S",3081123.103,1,1,"C")="3081203.15^73^3081203.15^73^3081203^3081203"
^SC(6,"S",3081123.103,1,1,"OB")="O"
...
^SC(6,"S",3081205.133,0)=3081205.133
^SC(6,"S",3081205.133,1,0)="^44.003PA^^"
^SC(6,"S",3081205.133,1,1,0)="70774^10^^^^73^3081204"
^SC(6,"S",3081215.083,0)=3081215.083
^SC(6,"S",3081215.083,1,0)="^44.003PA^^"
^SC(6,"SDP")="3^365^^30"
^SC(6,"SL")="10^^^^^6^5^Y"

Below is the PATTERN subfile. For a given date, it shows avail slots

^SC(6,"ST",0)="^44.005"
^SC(6,"ST",3081205,0)=3081205
^SC(6,"ST",3081205,1)="FR 05      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 0 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081208,0)=3081208
^SC(6,"ST",3081208,1)="MO 08      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081209,0)=3081209
^SC(6,"ST",3081209,1)="TU 09      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081212,0)=3081212
^SC(6,"ST",3081212,1)="FR 12      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081215,0)=3081215
^SC(6,"ST",3081215,1)="MO 15      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081216,0)=3081216
^SC(6,"ST",3081216,1)="TU 16      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081219,0)=3081219
^SC(6,"ST",3081219,1)="FR 19      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081222,0)=3081222
^SC(6,"ST",3081222,1)="MO 22      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081223,0)=3081223
^SC(6,"ST",3081223,1)="TU 23      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081226,0)=3081226
^SC(6,"ST",3081226,1)="FR 26      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081229,0)=3081229
^SC(6,"ST",3081229,1)="MO 29      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3081230,0)=3081230
^SC(6,"ST",3081230,1)="TU 30      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3090102,0)=3090102
^SC(6,"ST",3090102,1)="FR 02      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3090105,0)=3090105
^SC(6,"ST",3090105,1)="MO 05      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3090106,0)=3090106
^SC(6,"ST",3090106,1)="TU 06      |     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1] [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"ST",3090109,0)=3090109
^SC(6,"ST",3090109,1)="FR 09      |     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 11 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "

Below is the AVAILABILITY subfile, and the SCHEDULE TIME sub-subfile. For a given date, it specifies the number of patients allowed in each slot.

^SC(6,"T",0)="^44.002DA^3081211^32"
^SC(6,"T",3081204,0)=3081204
^SC(6,"T",3081204,2,0)="^44.004A^20^20"
^SC(6,"T",3081204,2,1,0)="0830^1"
^SC(6,"T",3081204,2,2,0)="0900^1"
...
^SC(6,"T",3081204,2,19,0)="1530^1"
^SC(6,"T",3081204,2,20,0)="1545^1"
^SC(6,"T",3081205,0)=3081205
^SC(6,"T",3081205,2,0)="^44.004A^32^32"
^SC(6,"T",3081205,2,1,0)="0830^1"
^SC(6,"T",3081205,2,2,0)="0900^1"
^SC(6,"T",3081205,2,3,0)="0910^1"
^SC(6,"T",3081205,2,4,0)="0920^1"
^SC(6,"T",3081205,2,5,0)="0930^1"
...
^SC(6,"T",3081205,2,31,0)="1610^1"
^SC(6,"T",3081205,2,32,0)="1620^1"
^SC(6,"T",3081207,0)=3081207
^SC(6,"T",3081208,0)=3081208
^SC(6,"T",3081208,2,0)="^44.004A^27^27"
^SC(6,"T",3081208,2,1,0)="0830^1"
...
^SC(6,"T",3081208,2,26,0)="1610^1"
^SC(6,"T",3081208,2,27,0)="1620^1"
^SC(6,"T",3081209,0)=3081209
^SC(6,"T",3081209,2,0)="^44.004A^27^27"
^SC(6,"T",3081209,2,1,0)="0830^1"
^SC(6,"T",3081209,2,2,0)="0900^1"
^SC(6,"T",3081209,2,3,0)="0910^1"
^SC(6,"T",3081209,2,4,0)="0920^1"
^SC(6,"T",3081209,2,5,0)="0930^1"
^SC(6,"T",3081209,2,6,0)="0940^1"
^SC(6,"T",3081209,2,7,0)="1000^1"
^SC(6,"T",3081209,2,8,0)="1010^1"
^SC(6,"T",3081209,2,9,0)="1020^1"
^SC(6,"T",3081209,2,10,0)="1030^1"
^SC(6,"T",3081209,2,11,0)="1040^1"
^SC(6,"T",3081209,2,12,0)="1300^1"
^SC(6,"T",3081209,2,13,0)="1330^1"
^SC(6,"T",3081209,2,14,0)="1340^1"
^SC(6,"T",3081209,2,15,0)="1400^1"
^SC(6,"T",3081209,2,16,0)="1410^1"
^SC(6,"T",3081209,2,17,0)="1420^1"
^SC(6,"T",3081209,2,18,0)="1430^1"
^SC(6,"T",3081209,2,19,0)="1440^1" 
^SC(6,"T",3081209,2,20,0)="1500^1"
^SC(6,"T",3081209,2,21,0)="1510^1"
^SC(6,"T",3081209,2,22,0)="1520^1"
^SC(6,"T",3081209,2,23,0)="1530^1"
^SC(6,"T",3081209,2,24,0)="1540^1"
^SC(6,"T",3081209,2,25,0)="1600^1"
^SC(6,"T",3081209,2,26,0)="1610^1"
^SC(6,"T",3081209,2,27,0)="1620^1"
^SC(6,"T",3081211,0)=3081211

Below are the ___DAY TEMPLATE subfile entries. For a given LIMIT DATE, it stores a master pattern.

Monday

^SC(6,"T1",0)="^44.07A^^"
^SC(6,"T1",9999999,0)=9999999
^SC(6,"T1",9999999,1)="|     [1]   [1 1 1 1 1] [1 1 1 1 1] |          |           [1]   [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "

Tuesday

^SC(6,"T2",0)="^44.08A^^"
^SC(6,"T2",9999999,0)=9999999
^SC(6,"T2",9999999,1)="|     [1]   [1 1 1 1 1] [1 1 1 1 1] |           |           [1]   [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "

Wednesday

^SC(6,"T3",0)="^44.09A^^"

Thursday

^SC(6,"T4",0)="^44.08A^^"

Friday

^SC(6,"T5",0)="^44.09A^^"
^SC(6,"T5",3081205,0)=3081205
^SC(6,"T5",3081205,1)="|     [1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"T5",9999999,0)=9999999
^SC(6,"T5",9999999,1)="|     [1]   [1 1 1 1 1] [1 1 1 1 1] [1 1 1]     |           [1 1 1 1 1] [1 1 1 1 1] [1 1 1 1 1] [1 1 1] "
^SC(6,"TMG")="FPG"

EXAMPLE OF INDEFINITE SLOT PATTERN

Below is a location that had just 1 day added, specified to be used indefinitely. (Note: I cleared out all slots prior to running ^SDB)


Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//
ABBREVIATION:
CLINIC MEETS AT THIS FACILITY?: YES//
SERVICE: MEDICINE// ^ 
AVAILABILITY DATE: t+2  (DEC 15, 2008)   MONDAY

  TIME: 0830-1000   # APPTS/SLOT : 1//  2
  TIME:
|   [2 2|2 2 2 2]
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
...EXCUSE ME, THIS MAY TAKE A FEW MOMENTS...
PATTERN FILED!

GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1"
^SC(10,"PR",1,0)="73^1"
^SC(10,"PR","B",73,1)=""
^SC(10,"PS")=0
^SC(10,"SDP")="5^365^^365"
^SC(10,"SL")="15^^8^^^4^5"
^SC(10,"ST",0)="^44.005"
^SC(10,"ST",3081215,0)=3081215
^SC(10,"ST",3081215,1)="MO 15  |   [2 2|2 2 2 2] "
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [2 2|2 2 2 2] "
^SC(10,"ST",3081229,0)=3081229
^SC(10,"ST",3081229,1)="MO 29  |   [2 2|2 2 2 2] "
^SC(10,"ST",3090105,0)=3090105
^SC(10,"ST",3090105,1)="MO 05  |   [2 2|2 2 2 2] "
^SC(10,"ST",3090112,0)=3090112
^SC(10,"ST",3090112,1)="MO 12  |   [2 2|2 2 2 2] "
^SC(10,"T",0)="^44.002D^3081215^11"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
^SC(10,"T",3081215,2,1,0)="0830^2"
^SC(10,"T",3081215,2,2,0)="0845^2"
^SC(10,"T",3081215,2,3,0)="0900^2"
^SC(10,"T",3081215,2,4,0)="0915^2"
^SC(10,"T",3081215,2,5,0)="0930^2"
^SC(10,"T",3081215,2,6,0)="0945^2"
^SC(10,"T1",0)="^44.07A^^"
^SC(10,"T1",9999999,0)=9999999
^SC(10,"T1",9999999,1)="|   [2 2|2 2 2 2] " 

Comments:

  • When adding a pattern indefinitely, it adds PATTERN slots for 5 weeks.
  • The "ST" node holds PATTERN entries for 5 weeks, starting at given date.
  • The "T" node holds the 10 min interval slots, starting at the given date.
  • The TEMPLATE itself is stored in the T1 node. Because there was no prior entry, and no end date, then 9999999 ending date is used


EXAMPLE OF SLOT PATTERN FOR SET DAYS

Below is another pattern. Again, I cleared the location first.

GTM>do ^SDB                                                          

Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//                                     
ABBREVIATION:                                             
CLINIC MEETS AT THIS FACILITY?: YES//                     
SERVICE: MEDICINE//                                       
NON-COUNT CLINIC? (Y OR N): NO// ^                        

AVAILABILITY DATE: t+2  (DEC 15, 2008)   MONDAY
 TIME: 0830-1000   # APPTS/SLOT : 1//  2
 TIME: 
|   [2 2|2 2 2 2] 
...PATTERN OK FOR MONDAYS INDEFINITELY? n  (No)
...FOR DEC 15,2008? No// y  (Yes) ...OK        
...FOR DEC 22,2008? No// y  (Yes) ...OK        
...FOR DEC 29,2008? No//   (No)                
...FOR JAN  5,2009? No//   (No)                
...FOR JAN 12,2009? No//   (No)                
...FOR JAN 19,2009? No//   (No)                
...FOR JAN 26,2009? No// ^

AVAILABILITY DATE:
GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9
^SC(10,"OST",0)="^44.0002DA^^"
^SC(10,"OST",3081215,0)=3081215
^SC(10,"OST",3081215,1)="MO 15  |   [2 2|2 2 2 2]                                               "
^SC(10,"OST",3081222,0)=3081222
^SC(10,"OST",3081222,1)="MO 22  |   [2 2|2 2 2 2]                                               "
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1"
^SC(10,"PR",1,0)="73^1"
^SC(10,"PR","B",73,1)=""
^SC(10,"PS")=0
^SC(10,"SDP")="5^365^^365"
^SC(10,"SL")="15^^8^^^4^5"
^SC(10,"ST",0)="^44.005"
^SC(10,"ST",3081215,0)=3081215
^SC(10,"ST",3081215,1)="MO 15  |   [2 2|2 2 2 2]                                               "
^SC(10,"ST",3081215,9)=10
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [2 2|2 2 2 2]                                               "
^SC(10,"ST",3081222,9)=10
^SC(10,"T",0)="^44.002D^3081215^13"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
^SC(10,"T",3081215,2,1,0)="0830^2"
^SC(10,"T",3081215,2,2,0)="0845^2"
^SC(10,"T",3081215,2,3,0)="0900^2"
^SC(10,"T",3081215,2,4,0)="0915^2"
^SC(10,"T",3081215,2,5,0)="0930^2"
^SC(10,"T",3081215,2,6,0)="0945^2"
^SC(10,"T1",0)="^44.07A^^"

Comments:

  • When NOT adding a pattern indefinitely, it adds slots only for the days indicated by the user.
  • The "T" node holds the 10 min interval slots, starting at the given date, no change vs. indefinite addition
  • The "ST" node holds the PATTERN entry for each of the 2 days specified by the user
  • There is no Tx entries.
  • There is are OST node (SPECIAL PATTERN) entries for the specified days. Thus is seems that the OST node entries replace the Tx nodes.


EXAMPLE OF MULTIPLE FIXED DAYS

 Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
 NAME: X_TEST_OFFICE//
 ABBREVIATION: ^
 AVAILABILITY DATE: t+1  (JAN 05, 2009)  MONDAY
   TIME: 0830-1130   # APPTS/SLOT : 1//
   TIME:
 |   [1 1|1 1 1 1|1 1 1 1|1 1]
 ...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
 ...EXCUSE ME, LET ME THINK ABOUT THAT A MOMENT...
 PATTERN FILED!
 AVAILABILITY DATE: t+2  (JAN 06, 2009)  TUESDAY
   TIME: 0830-1130   # APPTS/SLOT : 1//  2
   TIME:
 |   [2 2|2 2 2 2|2 2 2 2|2 2]
 ...PATTERN OK FOR TUESDAYS INDEFINITELY? y  (Yes)
 ...EXCUSE ME, HOLD ON...
 PATTERN FILED!
 AVAILABILITY DATE: t+3  (JAN 07, 2009)  WEDNESDAY
   TIME: 0830-1130   # APPTS/SLOT : 1//  3
   TIME:
 |   [3 3|3 3 3 3|3 3 3 3|3 3]
 ...PATTERN OK FOR WEDNESDAYS INDEFINITELY? y  (Yes)
 ...SORRY, HOLD ON...
 PATTERN FILED!
 AVAILABILITY DATE:
 Select CLINIC NAME:
 GTM>zwr ^SC(10,*)
 ^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
 ^SC(10,"AT")=9
 ^SC(10,"OST",0)="^44.0002DA^^"
 ^SC(10,"PC")=1
 ^SC(10,"PR",0)="^44.1P^1^1"
 ^SC(10,"PR",1,0)="73^1"
 ^SC(10,"PR","B",73,1)=""
 ^SC(10,"PS")=0
 ^SC(10,"S",0)="^44.001DA^^"
 ^SC(10,"S",3090105.09,0)=3090105.09
 ^SC(10,"S",3090105.09,1,0)="^44.003PA^^"
 ^SC(10,"S",3090105.09,1,1,0)="1^15^^^^73^3090104"
 ...
 ^SC(10,"S",3090223.083,1,0)="^44.003PA^^"
 ^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"
 ^SC(10,"SDP")="5^365^^365"
 ^SC(10,"SL")="15^^8^^^4^5"
 ^SC(10,"ST",0)="^44.005"
 ^SC(10,"ST",3090105,0)=3090105
 ^SC(10,"ST",3090105,1)="MO 05  |   [1 1|0 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"ST",3090106,0)=3090106
 ^SC(10,"ST",3090106,1)="TU 06  |   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090107,0)=3090107
 ^SC(10,"ST",3090107,1)="WE 07  |   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"ST",3090112,0)=3090112
 ^SC(10,"ST",3090112,1)="MO 12  |   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"ST",3090113,0)=3090113
 ^SC(10,"ST",3090113,1)="TU 13  |   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090114,0)=3090114
 ^SC(10,"ST",3090114,1)="WE 14  |   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"ST",3090119,0)=3090119
 ^SC(10,"ST",3090119,1)="MO 19  |   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"ST",3090120,0)=3090120
 ^SC(10,"ST",3090120,1)="TU 20  |   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090121,0)=3090121
 ^SC(10,"ST",3090121,1)="WE 21  |   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"ST",3090126,0)=3090126
 ^SC(10,"ST",3090126,1)="MO 26  |   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"ST",3090127,0)=3090127
 ^SC(10,"ST",3090127,1)="TU 27  |   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090128,0)=3090128
 ^SC(10,"ST",3090128,1)="WE 28  |   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"ST",3090202,0)=3090202
 ^SC(10,"ST",3090202,1)="MO 02  |   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"ST",3090203,0)=3090203
 ^SC(10,"ST",3090203,1)="TU 03  |   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090204,0)=3090204
 ^SC(10,"ST",3090204,1)="WE 04  |   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"ST",3090210,0)=3090210
 ^SC(10,"ST",3090210,1)="TU 10  |   [2 2|1 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"ST",3090223,0)=3090223
 ^SC(10,"ST",3090223,1)="MO 23  |   [0 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"T",0)="^44.002D^3090107^6"
 ^SC(10,"T",3090105,0)=3090105
 ^SC(10,"T",3090105,2,0)="^44.004A^12^12"
 ^SC(10,"T",3090105,2,1,0)="0830^1"
 ^SC(10,"T",3090105,2,2,0)="0845^1"
 ^SC(10,"T",3090105,2,3,0)="0900^1"
 ^SC(10,"T",3090105,2,4,0)="0915^1"
 ^SC(10,"T",3090105,2,5,0)="0930^1"
 ^SC(10,"T",3090105,2,6,0)="0945^1"
 ^SC(10,"T",3090105,2,7,0)="1000^1"
 ^SC(10,"T",3090105,2,8,0)="1015^1"
 ^SC(10,"T",3090105,2,9,0)="1030^1"
 ^SC(10,"T",3090105,2,10,0)="1045^1"
 ^SC(10,"T",3090105,2,11,0)="1100^1"
 ^SC(10,"T",3090105,2,12,0)="1115^1"
 ^SC(10,"T",3090106,0)=3090106
 ^SC(10,"T",3090106,2,0)="^44.004A^12^12"
 ^SC(10,"T",3090106,2,1,0)="0830^2"
 ^SC(10,"T",3090106,2,2,0)="0845^2"
 ^SC(10,"T",3090106,2,3,0)="0900^2"
 ^SC(10,"T",3090106,2,4,0)="0915^2"
 ^SC(10,"T",3090106,2,5,0)="0930^2"
 ^SC(10,"T",3090106,2,6,0)="0945^2"
 ^SC(10,"T",3090106,2,7,0)="1000^2"
 ^SC(10,"T",3090106,2,8,0)="1015^2"
 ^SC(10,"T",3090106,2,9,0)="1030^2"
 ^SC(10,"T",3090106,2,10,0)="1045^2"
 ^SC(10,"T",3090106,2,11,0)="1100^2"
 ^SC(10,"T",3090106,2,12,0)="1115^2"
 ^SC(10,"T",3090107,0)=3090107
 ^SC(10,"T",3090107,2,0)="^44.004A^12^12"
 ^SC(10,"T",3090107,2,1,0)="0830^3"
 ^SC(10,"T",3090107,2,2,0)="0845^3"
 ^SC(10,"T",3090107,2,3,0)="0900^3"
 ^SC(10,"T",3090107,2,4,0)="0915^3"
 ^SC(10,"T",3090107,2,5,0)="0930^3"
 ^SC(10,"T",3090107,2,6,0)="0945^3"
 ^SC(10,"T",3090107,2,7,0)="1000^3"
 ^SC(10,"T",3090107,2,8,0)="1015^3"
 ^SC(10,"T",3090107,2,9,0)="1030^3"
 ^SC(10,"T",3090107,2,10,0)="1045^3"
 ^SC(10,"T",3090107,2,11,0)="1100^3"
 ^SC(10,"T",3090107,2,12,0)="1115^3"
 ^SC(10,"T0",0)="^44.06A^^"
 ^SC(10,"T1",0)="^44.07A^^"
 ^SC(10,"T1",9999999,0)=9999999
 ^SC(10,"T1",9999999,1)="|   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"T2",0)="^44.08A^^"
 ^SC(10,"T2",9999999,0)=9999999
 ^SC(10,"T2",9999999,1)="|   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"T3",0)="^44.09A^^"
 ^SC(10,"T3",9999999,0)=9999999
 ^SC(10,"T3",9999999,1)="|   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"T6",0)="^44.0001A^^"
Notes: 
* The T node contains 3 different patterns, one for each of the days entered.  To determine which of these patterns applies, one would have to determine which day of the week each pattern exists on, and then find the appropriate pattern.
* The ST nodes have been filled in due to browsing for making an appt (not shown here).

TEMP

A dump of trying to do the same setup as above, using custome API (still in dev).

 API CALL
 Here is Clinic array now:                                             
 ^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"              
 ^SC(10,"AT")=9                                                        
 ^SC(10,"OST",0)="^44.0002DA^^"                                        
 ^SC(10,"PC")=1                                                        
 ^SC(10,"PR",0)="^44.1P^1^1"                                           
 ^SC(10,"PR",1,0)="73^1"                                               
 ^SC(10,"PR","B",73,1)=""                                              
 ^SC(10,"PS")=0                                                        
 ^SC(10,"S",0)="^44.001DA^^"                                           
 ^SC(10,"S",3090105.09,0)=3090105.09                                   
 ^SC(10,"S",3090105.09,1,0)="^44.003PA^^"                              
 ^SC(10,"S",3090105.09,1,1,0)="1^15^^^^73^3090104"                     
 ^SC(10,"S",3090110.083,0)=3090110.083                                 
 ^SC(10,"S",3090110.083,1,0)="^44.003PA^^"                             
 ^SC(10,"S",3090110.083,1,1,0)="2^15^^^^73^3090104"                    
 ^SC(10,"S",3090110.09,0)=3090110.09                                   
 ^SC(10,"S",3090110.09,1,0)="^44.003PA^^"                              
 ^SC(10,"S",3090110.09,1,1,0)="1^15^^^^73^3090104"                     
 ^SC(10,"S",3090110.0915,0)=3090110.0915                               
 ^SC(10,"S",3090110.0915,1,0)="^44.003PA^^"                            
 ^SC(10,"S",3090110.0915,1,1,0)="70695^15^^^^73^3090104"               
 ^SC(10,"S",3090110.093,0)=3090110.093                                 
 ^SC(10,"S",3090110.093,1,0)="^44.003PA^^"                             
 ^SC(10,"S",3090110.093,1,1,0)="70773^15^^^^73^3090104"                
 ^SC(10,"S",3090110.0945,0)=3090110.0945                               
 ^SC(10,"S",3090110.0945,1,0)="^44.003PA^^"                            
 ^SC(10,"S",3090110.0945,1,1,0)="70774^15^^^^73^3090104"               
 ^SC(10,"S",3090110.1,0)=3090110.1                                     
 ^SC(10,"S",3090110.1,1,0)="^44.003PA^^"                               
 ^SC(10,"S",3090110.1,1,1,0)="70774^15^^^^73^3090104"                  
 ^SC(10,"S",3090110.1015,0)=3090110.1015                               
 ^SC(10,"S",3090110.1015,1,0)="^44.003PA^^"                            
 ^SC(10,"S",3090110.1015,1,1,0)="70787^15^^^^73^3090104"               
 ^SC(10,"S",3090110.103,0)=3090110.103                                 
 ^SC(10,"S",3090110.103,1,0)="^44.003PA^^"                             
 ^SC(10,"S",3090110.103,1,1,0)="70787^15^^^^73^3090104"                
 ^SC(10,"S",3090110.1045,0)=3090110.1045                               
 ^SC(10,"S",3090110.1045,1,0)="^44.003PA^^"                            
 ^SC(10,"S",3090110.1045,1,1,0)="74274^15^^^^73^3090104"               
 ^SC(10,"S",3090210.09,0)=3090210.09                                   
 ^SC(10,"S",3090210.09,1,0)="^44.003PA^^"                              
 ^SC(10,"S",3090210.09,1,1,0)="70774^15^^^^73^3081213"                 
 ^SC(10,"S",3090214.09,0)=3090214.09                                   
 ^SC(10,"S",3090214.09,1,0)="^44.003PA^^"                              
 ^SC(10,"S",3090214.09,1,1,0)="70774^15^^^^73^3090104"                 
 ^SC(10,"S",3090214.09,1,1,"OB")="O"                                   
 ^SC(10,"S",3090223.083,0)=3090223.083                                 
 ^SC(10,"S",3090223.083,1,0)="^44.003PA^^"                             
 ^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"                    
 ^SC(10,"SDP")="5^365^^365"                                            
 ^SC(10,"SL")="15^^8^^^4^5"                                            
 ^SC(10,"ST",0)="^44.005"                                              
 ^SC(10,"ST",3090105,0)=3090105                                        
 ^SC(10,"ST",3090105,1)="MO 05  |   [1 1|0 1 1 1|1 1 1 1|1 1]                                   "
 ^SC(10,"ST",3090223,0)=3090223                                                                  
 ^SC(10,"ST",3090223,1)="MO 23  |   [0 1|1 1 1 1|1 1 1 1|1 1]                                   "
 ^SC(10,"T",0)="^44.002D^3090107^3"                                                              
 ^SC(10,"T",3090105,0)=3090105                                                                   
 ^SC(10,"T",3090105,2,0)="^44.004A^12^12"                                                        
 ^SC(10,"T",3090105,2,1,0)="0830^1"                                                              
 ^SC(10,"T",3090105,2,2,0)="0845^1"                                                              
 ^SC(10,"T",3090105,2,3,0)="0900^1"                                                              
 ^SC(10,"T",3090105,2,4,0)="0915^1"                                                              
 ^SC(10,"T",3090105,2,5,0)="0930^1"                                                              
 ^SC(10,"T",3090105,2,6,0)="0945^1"                                                              
 ^SC(10,"T",3090105,2,7,0)="1000^1"                                                              
 ^SC(10,"T",3090105,2,8,0)="1015^1"                                                              
 ^SC(10,"T",3090105,2,9,0)="1030^1"                                                              
 ^SC(10,"T",3090105,2,10,0)="1045^1"                                                             
 ^SC(10,"T",3090105,2,11,0)="1100^1"                                                             
 ^SC(10,"T",3090105,2,12,0)="1115^1"                                                             
 ^SC(10,"T",3090106,0)=3090106                                                                   
 ^SC(10,"T",3090106,2,0)="^44.004A^12^12"                                                        
 ^SC(10,"T",3090106,2,1,0)="0830^2"
 ^SC(10,"T",3090106,2,2,0)="0845^2"
 ^SC(10,"T",3090106,2,3,0)="0900^2"
 ^SC(10,"T",3090106,2,4,0)="0915^2"
 ^SC(10,"T",3090106,2,5,0)="0930^2"
 ^SC(10,"T",3090106,2,6,0)="0945^2"
 ^SC(10,"T",3090106,2,7,0)="1000^2"
 ^SC(10,"T",3090106,2,8,0)="1015^2"
 ^SC(10,"T",3090106,2,9,0)="1030^2"
 ^SC(10,"T",3090106,2,10,0)="1045^2"
 ^SC(10,"T",3090106,2,11,0)="1100^2"
 ^SC(10,"T",3090106,2,12,0)="1115^2"
 ^SC(10,"T",3090107,0)=3090107
 ^SC(10,"T",3090107,2,0)="^44.004A^12^12"
 ^SC(10,"T",3090107,2,1,0)="0830^3"
 ^SC(10,"T",3090107,2,2,0)="0845^3"
 ^SC(10,"T",3090107,2,3,0)="0900^3"
 ^SC(10,"T",3090107,2,4,0)="0915^3"
 ^SC(10,"T",3090107,2,5,0)="0930^3"
 ^SC(10,"T",3090107,2,6,0)="0945^3"
 ^SC(10,"T",3090107,2,7,0)="1000^3"
 ^SC(10,"T",3090107,2,8,0)="1015^3"
 ^SC(10,"T",3090107,2,9,0)="1030^3"
 ^SC(10,"T",3090107,2,10,0)="1045^3"
 ^SC(10,"T",3090107,2,11,0)="1100^3"
 ^SC(10,"T",3090107,2,12,0)="1115^3"
 ^SC(10,"T0",0)="^44.06A^^"
 ^SC(10,"T1",0)="^44.07A^^"
 ^SC(10,"T1",9999999,0)=9999999
 ^SC(10,"T1",9999999,1)="|   [1 1|1 1 1 1|1 1 1 1|1 1] "
 ^SC(10,"T2",0)="^44.08A^^"
 ^SC(10,"T2",9999999,0)=9999999
 ^SC(10,"T2",9999999,1)="|   [2 2|2 2 2 2|2 2 2 2|2 2] "
 ^SC(10,"T3",0)="^44.09A^^"
 ^SC(10,"T3",9999999,0)=9999999
 ^SC(10,"T3",9999999,1)="|   [3 3|3 3 3 3|3 3 3 3|3 3] "
 ^SC(10,"T4",0)="^44.08A^^"
 ^SC(10,"T5",0)="^44.09A^^"
 ^SC(10,"T6",0)="^44.0001A^^"

Notes:

EXAMPLE OF MIXED FIXED AND THEN INDEFINITE DAYS

Below is a pattern were I created a set pattern in the future, then attempted to create an indefinite pattern starting BEFORE this fixed period. The result is that the pattern end date is set to the future date.

Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//                                     
ABBREVIATION:                                             
CLINIC MEETS AT THIS FACILITY?: YES//                     
SERVICE: MEDICINE// ^                                      

AVAILABILITY DATE: t+8  (DEC 21, 2008)  SUNDAY

 TIME: 0800-1000   # APPTS/SLOT : 1//  
 TIME: 
[1 1 1 1|1 1 1 1] 
...PATTERN OK FOR SUNDAYS INDEFINITELY? n  (No)
...FOR DEC 21,2008? No// y  (Yes) ...OK        
...FOR DEC 28,2008? No// y  (Yes) ...OK        
...FOR JAN  4,2009? No// y  (Yes) ...OK        
...FOR JAN 11,2009? No//   (No)                
...FOR JAN 18,2009? No// ^                     

AVAILABILITY DATE: 
GTM>do ^SDB


Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//                                     
ABBREVIATION:                                             
CLINIC MEETS AT THIS FACILITY?: YES// ^                   

AVAILABILITY DATE: t+1  (DEC 14, 2008)  SUNDAY

 TIME: 0900-1100   # APPTS/SLOT : 1//  2
 TIME: 
|       [2 2 2 2|2 2 2 2] 
...PATTERN OK FOR SUNDAYS UNTIL DEC 21,2008? y  (Yes)
...EXCUSE ME, I'M WORKING AS FAST AS I CAN...        
PATTERN FILED!                                       

AVAILABILITY DATE: 


Select CLINIC NAME: 
GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9                                          
^SC(10,"OST",0)="^44.0002DA^^"                          
^SC(10,"OST",3081221,0)=3081221                         
^SC(10,"OST",3081221,1)="SU 21  [1 1 1 1|1 1 1 1]
^SC(10,"OST",3081228,0)=3081228 
^SC(10,"OST",3081228,1)="SU 28  [1 1 1 1|1 1 1 1]  
^SC(10,"OST",3090104,0)=3090104  
^SC(10,"OST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1]
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1" 
^SC(10,"PR",1,0)="73^1" 
^SC(10,"PR","B",73,1)="" 
^SC(10,"PS")=0     
^SC(10,"SDP")="5^365^^365"  
^SC(10,"SL")="15^^8^^^4^5"  
^SC(10,"ST",0)="^44.005"    
^SC(10,"ST",3081214,0)=3081214  
^SC(10,"ST",3081214,1)="SU 14  |       [2 2 2 2|2 2 2 2] 
^SC(10,"ST",3081221,0)=3081221
^SC(10,"ST",3081221,1)="SU 21  [1 1 1 1|1 1 1 1]   
^SC(10,"ST",3081221,9)=10
^SC(10,"ST",3081228,0)=3081228
^SC(10,"ST",3081228,1)="SU 28  [1 1 1 1|1 1 1 1] 
^SC(10,"ST",3081228,9)=10
^SC(10,"ST",3090104,0)=3090104
^SC(10,"ST",3090104,1)="SU 04  [1 1 1 1|1 1 1 1] 
^SC(10,"ST",3090104,9)=10
^SC(10,"T",0)="^44.002D^3081214^19"
^SC(10,"T",3081214,0)=3081214
^SC(10,"T",3081214,2,0)="^44.004A^8^8"
^SC(10,"T",3081214,2,1,0)="0900^2"
^SC(10,"T",3081214,2,2,0)="0915^2"
^SC(10,"T",3081214,2,3,0)="0930^2" 
^SC(10,"T",3081214,2,4,0)="0945^2"
^SC(10,"T",3081214,2,5,0)="1000^2"
^SC(10,"T",3081214,2,6,0)="1015^2"
^SC(10,"T",3081214,2,7,0)="1030^2"
^SC(10,"T",3081214,2,8,0)="1045^2"
^SC(10,"T",3081221,0)=3081221
^SC(10,"T",3081221,2,0)="^44.004A^8^8"
^SC(10,"T",3081221,2,1,0)="0800^1"
^SC(10,"T",3081221,2,2,0)="0815^1"
^SC(10,"T",3081221,2,3,0)="0830^1"
^SC(10,"T",3081221,2,4,0)="0845^1"
^SC(10,"T",3081221,2,5,0)="0900^1"
^SC(10,"T",3081221,2,6,0)="0915^1"
^SC(10,"T",3081221,2,7,0)="0930^1"
^SC(10,"T",3081221,2,8,0)="0945^1"
^SC(10,"T0",0)="^44.06A^^"
^SC(10,"T0",3081221,0)=3081221
^SC(10,"T0",3081221,1)="|       [2 2 2 2|2 2 2 2] 
^SC(10,"T1",0)="^44.07A^^"

Comments:

  • Because I first added a set pattern (not indefinite) at t+8, I was then not given the option to add an indefinite pattern. Instead, I was given the option for a pattern from now until t+8.
  • OST nodes were made for the first fixed pattern, and then T0 node was set for PATTERN entry.
  • T node entries were made for each of the two sets. There is one pattern starting at 3081214, which changes at 3081221.
  • ST node entries again show availability PATTERN combined from both the SPECIAL and TEMPLATE entries.
  • Notice presences of ^SC(IEN,"ST",FMDate,9)=IEN nodes. This means that the pattern should be taken from the OST node of the same date, not the T0 nodes

EXAMPLE OF INDEFINITE PATTERN, AND THEN FIXED DAYS ADDED

Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//
ABBREVIATION:
CLINIC MEETS AT THIS FACILITY?: YES// ^ 

AVAILABILITY DATE: t  (DEC 15, 2008)

                                     MONDAY


  TIME: 0800-1000   # APPTS/SLOT : 1//

  TIME:
[1 1 1 1|1 1 1 1]
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
...HMMM, I'M WORKING AS FAST AS I CAN...
PATTERN FILED!


AVAILABILITY DATE: t+14  (DEC 29, 2008)

                                     MONDAY


  TIME: 0900-1100   # APPTS/SLOT : 1//  2

  TIME:
|       [2 2 2 2|2 2 2 2]
...PATTERN OK FOR MONDAYS INDEFINITELY? n  (No)
...FOR DEC 29,2008? No// y  (Yes) ...OK
...FOR JAN  5,2009? No// y  (Yes) ...OK
...FOR JAN 12,2009? No// ^

AVAILABILITY DATE:
GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9
^SC(10,"OST",0)="^44.0002DA^^"
^SC(10,"OST",3081229,0)=3081229
^SC(10,"OST",3081229,1)="MO 29  |       [2 2 2 2|2 2 2 2]   
^SC(10,"OST",3090105,0)=3090105
^SC(10,"OST",3090105,1)="MO 05  |       [2 2 2 2|2 2 2 2]   
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1"
^SC(10,"PR",1,0)="73^1"
^SC(10,"PR","B",73,1)=""
^SC(10,"PS")=0
^SC(10,"S",0)="^44.001DA^^"
^SC(10,"S",3081215.09,0)=3081215.09
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
^SC(10,"S",3090223.083,0)=3090223.083
^SC(10,"S",3090223.083,1,0)="^44.003PA^^"
^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"
^SC(10,"SDP")="5^365^^365"
^SC(10,"SL")="15^^8^^^4^5"
^SC(10,"ST",0)="^44.005"
^SC(10,"ST",3081215,0)=3081215
^SC(10,"ST",3081215,1)="MO 15  [1 1 1 1|0 1 1 1]            
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  [1 1 1 1|1 1 1 1] "
^SC(10,"ST",3081229,0)=3081229
^SC(10,"ST",3081229,1)="MO 29  |       [2 2 2 2|2 2 2 2]    
^SC(10,"ST",3081229,9)=10
^SC(10,"ST",3090105,0)=3090105
^SC(10,"ST",3090105,1)="MO 05  |       [2 2 2 2|2 2 2 2]    
^SC(10,"ST",3090105,9)=10
^SC(10,"ST",3090112,0)=3090112
^SC(10,"ST",3090112,1)="MO 12  [1 1 1 1|1 1 1 1] "
^SC(10,"ST",3090223,0)=3090223
^SC(10,"ST",3090223,1)="MO 23  [1 1 0 1|1 1 1 1]            
^SC(10,"T",0)="^44.002D^3081229^25"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^8^8"
^SC(10,"T",3081215,2,1,0)="0800^1"
^SC(10,"T",3081215,2,2,0)="0815^1"
^SC(10,"T",3081215,2,3,0)="0830^1"
^SC(10,"T",3081215,2,4,0)="0845^1"
^SC(10,"T",3081215,2,5,0)="0900^1"
^SC(10,"T",3081215,2,6,0)="0915^1"
^SC(10,"T",3081215,2,7,0)="0930^1"
^SC(10,"T",3081215,2,8,0)="0945^1"
^SC(10,"T",3081229,0)=3081229
^SC(10,"T",3081229,2,0)="^44.004A^8^8"
^SC(10,"T",3081229,2,1,0)="0900^2"
^SC(10,"T",3081229,2,2,0)="0915^2"
^SC(10,"T",3081229,2,3,0)="0930^2"
^SC(10,"T",3081229,2,4,0)="0945^2"
^SC(10,"T",3081229,2,5,0)="1000^2"
^SC(10,"T",3081229,2,6,0)="1015^2"
^SC(10,"T",3081229,2,7,0)="1030^2"
^SC(10,"T",3081229,2,8,0)="1045^2"
^SC(10,"T0",0)="^44.06A^^"
^SC(10,"T1",0)="^44.07A^^"
^SC(10,"T1",9999999,0)=9999999
^SC(10,"T1",9999999,1)="[1 1 1 1|1 1 1 1] "

Comments

  • The TEMPLATE node (T1) is not changed by the subsequent addition of fixed days.
  • The PATTERN node (ST) shows the mixture of the repeating template with superimposed fixed days.
  • The AVAILABILITY node (T) has the availability times change starting at 3081229. This means that one can't simply look at the latest date in the T nodes and use that to determine slots.

EXAMPLE OF APPOINTMENT ADDED

Below is a Record with just 1 appt was made for 12/15/08@0900

GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9                                          
^SC(10,"OST",0)="^44.0002DA^^"
^SC(10,"OST",3081215,0)=3081215
^SC(10,"OST",3081215,1)="MO 15  |   [2 2|2 2 2 2] "
^SC(10,"OST",3081222,0)=3081222
^SC(10,"OST",3081222,1)="MO 22  |   [2 2|2 2 2 2] "
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1"
^SC(10,"PR",1,0)="73^1"
^SC(10,"PR","B",73,1)=""
^SC(10,"PS")=0
^SC(10,"S",0)="^44.001DA^^"
^SC(10,"S",3081215.09,0)=3081215.09
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
^SC(10,"SDP")="5^365^^365"
^SC(10,"SL")="15^^8^^^4^5"
^SC(10,"ST",0)="^44.005"
^SC(10,"ST",3081215,0)=3081215
^SC(10,"ST",3081215,1)="MO 15  |   [2 2|1 2 2 2]  "
^SC(10,"ST",3081215,9)=10
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [2 2|2 2 2  2]  "
^SC(10,"ST",3081222,9)=10
^SC(10,"T",0)="^44.002D^3081215^20"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
^SC(10,"T",3081215,2,1,0)="0830^2"
^SC(10,"T",3081215,2,2,0)="0845^2"
^SC(10,"T",3081215,2,3,0)="0900^2"
^SC(10,"T",3081215,2,4,0)="0915^2"
^SC(10,"T",3081215,2,5,0)="0930^2"
^SC(10,"T",3081215,2,6,0)="0945^2"
^SC(10,"T0",0)="^44.06A^^"
^SC(10,"T1",0)="^44.07A^^"

Comments:

  • Notice that the PATTERN node ("ST"), shows only 1 (not 2) spaces available at the appt time. Thus this is where the Record of CURRENT AVAILABILITY is stored.
  • The AVAILABILITY "T" node value of "2" patients allowd at 0900 is NOT changed.


Example of DELETING appt slots

Below shows an example of deleting appts, done by redefining the available appts for the same date.

Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//                                     
ABBREVIATION:                                             
CLINIC MEETS AT THIS FACILITY?: YES// ^                   

AVAILABILITY DATE: t+2  (DEC 15, 2008)    MONDAY


 TIME: 0830-0840   [ TIME SPAN ENTERED NOT CONSISTENT WITH 15 MIN APPT LENGTH ]
 TIME: 0830-0845   # APPTS/SLOT : 1//  2
 TIME: 0900-1130   # APPTS/SLOT : 1//  
 TIME: 1300-1315   # APPTS/SLOT : 1//  
 TIME: 1330-1630   # APPTS/SLOT : 1//  
 TIME: 
|   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] 
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)                      
...HMMM, LET ME THINK ABOUT THAT A MOMENT...                          
PATTERN FILED!                                                        
AVAILABILITY DATE: 


Select CLINIC NAME: 
GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9                                          
^SC(10,"OST",0)="^44.0002DA^^"                          
^SC(10,"PC")=1                                          
^SC(10,"PR",0)="^44.1P^1^1"                             
^SC(10,"PR",1,0)="73^1"                                 
^SC(10,"PR","B",73,1)=""                                
^SC(10,"PS")=0                                          
^SC(10,"S",0)="^44.001DA^^"                             
^SC(10,"S",3081215.09,0)=3081215.09                     
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"                
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"   
^SC(10,"SDP")="5^365^^365"                              
^SC(10,"SL")="15^^8^^^4^5"                              
^SC(10,"ST",0)="^44.005"                                
^SC(10,"ST",3081215,0)=3081215                          
^SC(10,"ST",3081215,1)="MO 15  |   [2] [0 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1]"
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
^SC(10,"ST",3081229,0)=3081229 
^SC(10,"ST",3081229,1)="MO 29  |   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
^SC(10,"ST",3090105,0)=3090105 
^SC(10,"ST",3090105,1)="MO 05  |   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
^SC(10,"ST",3090112,0)=3090112  
^SC(10,"ST",3090112,1)="MO 12  |   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
^SC(10,"T",0)="^44.002D^3081215^21"
^SC(10,"T",3081215,0)=3081215 
^SC(10,"T",3081215,2,0)="^44.004A^24^24" 
^SC(10,"T",3081215,2,1,0)="0830^2" 
^SC(10,"T",3081215,2,2,0)="0900^1"
^SC(10,"T",3081215,2,3,0)="0915^1"
^SC(10,"T",3081215,2,4,0)="0930^1"
^SC(10,"T",3081215,2,5,0)="0945^1"
^SC(10,"T",3081215,2,6,0)="1000^1"
^SC(10,"T",3081215,2,7,0)="1015^1"
^SC(10,"T",3081215,2,8,0)="1030^1"
^SC(10,"T",3081215,2,9,0)="1045^1"
^SC(10,"T",3081215,2,10,0)="1100^1" 
^SC(10,"T",3081215,2,11,0)="1115^1" 
^SC(10,"T",3081215,2,12,0)="1300^1" 
^SC(10,"T",3081215,2,13,0)="1330^1" 
^SC(10,"T",3081215,2,14,0)="1345^1" 
^SC(10,"T",3081215,2,15,0)="1400^1" 
^SC(10,"T",3081215,2,16,0)="1415^1" 
^SC(10,"T",3081215,2,17,0)="1430^1" 
^SC(10,"T",3081215,2,18,0)="1445^1" 
^SC(10,"T",3081215,2,19,0)="1500^1" 
^SC(10,"T",3081215,2,20,0)="1515^1" 
^SC(10,"T",3081215,2,21,0)="1530^1" 
^SC(10,"T",3081215,2,22,0)="1545^1" 
^SC(10,"T",3081215,2,23,0)="1600^1" 
^SC(10,"T",3081215,2,24,0)="1615^1" 
^SC(10,"T0",0)="^44.06A^^"  
^SC(10,"T1",0)="^44.07A^^"  
^SC(10,"T1",9999999,0)=9999999  
^SC(10,"T1",9999999,1)="|   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "       

GTM>do ^SDB

Select CLINIC NAME: x_TEST_OFFICE       TOPPENBERG,KEVIN S
NAME: X_TEST_OFFICE//                                     
ABBREVIATION:                                             
CLINIC MEETS AT THIS FACILITY?: YES// ^                   

AVAILABILITY DATE: t+2  (DEC 15, 2008) MONDAY

 TIME: 0830-0845   # APPTS/SLOT : 1//  
 TIME: 
|   [1] 
...PATTERN OK FOR MONDAYS INDEFINITELY? y  (Yes)
...HMMM, LET ME PUT YOU ON 'HOLD' FOR A SECOND...
PATTERN FILED!                                    
AVAILABILITY DATE:  
Select CLINIC NAME: 
GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9                                          
^SC(10,"OST",0)="^44.0002DA^^"
^SC(10,"PC")=1
^SC(10,"PR",0)="^44.1P^1^1"
^SC(10,"PR",1,0)="73^1"
^SC(10,"PR","B",73,1)=""
^SC(10,"PS")=0
^SC(10,"S",0)="^44.001DA^^"
^SC(10,"S",3081215.09,0)=3081215.09
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"
^SC(10,"S",3081215.09,1,1,"OB")="O"
^SC(10,"SDP")="5^365^^365"
^SC(10,"SL")="15^^8^^^4^5"
^SC(10,"ST",0)="^44.005"
^SC(10,"ST",3081215,0)=3081215
^SC(10,"ST",3081215,1)="MO 15  |   [1]  *    "
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [1] "
^SC(10,"ST",3081229,0)=3081229
^SC(10,"ST",3081229,1)="MO 29  |   [1] "
^SC(10,"ST",3090105,0)=3090105
^SC(10,"ST",3090105,1)="MO 05  |   [1] "
^SC(10,"ST",3090112,0)=3090112
^SC(10,"ST",3090112,1)="MO 12  |   [1] "
^SC(10,"T",0)="^44.002D^3081215^22"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^1^1"
^SC(10,"T",3081215,2,1,0)="0830^1"
^SC(10,"T0",0)="^44.06A^^"
^SC(10,"T1",0)="^44.07A^^"
^SC(10,"T1",3081215,0)=3081215
^SC(10,"T1",3081215,1)="|   [2] [1 1 1 1|1 1 1 1|1 1]   |       [1] [1 1|1 1 1 1|1 1 1 1|1 1] "
^SC(10,"T1",9999999,0)=9999999
^SC(10,"T1",9999999,1)="|   [1] "

Comments:

  • The "T" nodes are simply erased and replaced by the new pattern
  • The "T1" node has 2 date ranges. 1st is up to (but not including) 3081215, and the 2nd is from 3081215 onward
  • The "ST" node shows a * that I think indicates an appt with no slot

Example of Browsing into the Future

GTM>zwr ^SC(10,*)
^SC(10,0)="X_TEST_OFFICE^^C^^^^342^M^^^lo^^^^^^N^^Y^^^1"
^SC(10,"AT")=9                                          
^SC(10,"OST",0)="^44.0002DA^^"                          
^SC(10,"PC")=1                                          
^SC(10,"PR",0)="^44.1P^1^1"                             
^SC(10,"PR",1,0)="73^1"                                 
^SC(10,"PR","B",73,1)=""                                
^SC(10,"PS")=0                                          
^SC(10,"S",0)="^44.001DA^^"                             
^SC(10,"S",3081215.09,0)=3081215.09                     
^SC(10,"S",3081215.09,1,0)="^44.003PA^^"                
^SC(10,"S",3081215.09,1,1,0)="70774^15^^^^73^3081213"   
^SC(10,"S",3090223.083,0)=3090223.083                   
^SC(10,"S",3090223.083,1,0)="^44.003PA^^"               
^SC(10,"S",3090223.083,1,1,0)="1^15^^^^73^3081213"      
^SC(10,"SDP")="5^365^^365"                              
^SC(10,"SL")="15^^8^^^4^5"                              
^SC(10,"ST",0)="^44.005"                                
^SC(10,"ST",3081215,0)=3081215                          
^SC(10,"ST",3081215,1)="MO 15  |   [1 1|0 1 1 1]        
^SC(10,"ST",3081222,0)=3081222
^SC(10,"ST",3081222,1)="MO 22  |   [1 1|1 1 1 1] "
^SC(10,"ST",3081229,0)=3081229
^SC(10,"ST",3081229,1)="MO 29  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090105,0)=3090105
^SC(10,"ST",3090105,1)="MO 05  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090112,0)=3090112
^SC(10,"ST",3090112,1)="MO 12  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090119,0)=3090119
^SC(10,"ST",3090119,1)="MO 19  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090126,0)=3090126
^SC(10,"ST",3090126,1)="MO 26  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090202,0)=3090202
^SC(10,"ST",3090202,1)="MO 02  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090209,0)=3090209
^SC(10,"ST",3090209,1)="MO 09  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090216,0)=3090216
^SC(10,"ST",3090216,1)="MO 16  |   [1 1|1 1 1 1] "
^SC(10,"ST",3090223,0)=3090223
^SC(10,"ST",3090223,1)="MO 23  |   [0 1|1 1 1 1] "
^SC(10,"T",0)="^44.002D^3081215^23"
^SC(10,"T",3081215,0)=3081215
^SC(10,"T",3081215,2,0)="^44.004A^6^6"
^SC(10,"T",3081215,2,1,0)="0830^1"
^SC(10,"T",3081215,2,2,0)="0845^1"
^SC(10,"T",3081215,2,3,0)="0900^1"
^SC(10,"T",3081215,2,4,0)="0915^1"
^SC(10,"T",3081215,2,5,0)="0930^1"
^SC(10,"T",3081215,2,6,0)="0945^1"
^SC(10,"T0",0)="^44.06A^^"
^SC(10,"T1",0)="^44.07A^^"
^SC(10,"T1",9999999,0)=9999999
^SC(10,"T1",9999999,1)="|   [1 1|1 1 1 1] "

Comments:

  • An inital ^SDB was used, and 5 week's worth of MONDAY's were created
  • Then, as I used the MAKE AN APPOINTMENT menu option, and browsed into the future, more days were automatically added to the "ST" nodes
  • Finally, an appt was set at 2/23/09@0800
  • Notee: As I have cleared this test clinic each time between tests, I have not cleared out the S nodes, which are actual existing appts. Notice that when the current availability string is constructed for the given date, pre-existing appts are taken into account, and automatically notes (e.g. 12/15/08@0900 appt is shown.)

Patterns to consider

Below are possible scheduling patterns to consider. I will use *** to indicated days using a TEMPLATE, and !!! indicate days that were specified as specialized patterns (i.e. fixed days). 1**** means that *** days were added first. 2***** means that these were added second, 3!!!! would be added third etc.

  • 1***** 2!!! **** 3!!!
  • 2***** 1!!! 3********
  • others...

Cancelling Appts for Individual Patients

Here is an example appt for patient `70685 on 2/23/09 at 0900

Below is data from the HOSPITAL LOCATION file, in the "S" node

 ^SC(10,"S",3090223.09,0)=3090223.09
 ^SC(10,"S",3090223.09,1,0)="^44.003PA^^"
 ^SC(10,"S",3090223.09,1,1,0)="70685^15^Bring xrays!^^^73^3090221.1335"

Information about the appt is also stored is the PATIENT file, in the "S" node. Below is is the same appt as above:

 ^DPT(70685,"S",3090223.09,0)="10^^^^^^3^^^^^^^^^9^^^3090223^^^^^0^C^0"
 ^DPT(70685,"S",3090223.09,1)="3090223^1"

The above appt was cancelled via the roll-and-scroll interface. Below is the same appt re-dumped. Notice that the Record structure remains, but the information pointing the the patient etc are simply removed.

 ^SC(10,"S",3090223.09,0)=3090223.09
 ^SC(10,"S",3090223.09,1,0)="^44.003PA^^"

Below is the appt information stored in the PATIENT file. Notice that the appt Record remains, but it is now marked as cancelled.

 ^DPT(70685,"S",3090223.09,0)="10^C^^^^^3^^^^^73^^3090222.0922^13^9^^73^3090221.1335^^^^^0^C^0"
 ^DPT(70685,"S",3090223.09,1)="3090223^1"
 ^DPT(70685,"S",3090223.09,"R")="Testing cancellation"

Also, a new index entry is created:

 ^DPT("ASDCN",10,3090223.09,70685)="" ;<-- 1 if patient canceled, otherwise ""

Below is the above ^DPT entry with field names:

 Record# 3090127.083,70685,
 .001-APPOINTMENT DATE/TIME : JAN 27, 2009@08:30
  .01-CLINIC : X_TEST_OFFICE
    4-REAL APPOINTMENT : 1
    9-PURPOSE OF VISIT : SCHEDULED VISIT
  9.5-APPOINTMENT TYPE : REGULAR
   20-DATE APPT. MADE : JAN 27, 2009
   25-SCHEDULING REQUEST TYPE : OTHER THAN 'NEXT AVA.' (CLINICIAN REQ.)
   26-NEXT AVA. APPT. INDICATOR : NOT INDICATED TO BE A 'NEXT AVA.' APPT.
   27-DESIRED DATE OF APPOINTMENT : JAN 27, 2009
   28-FOLLOW-UP VISIT : YES
  100-CURRENT STATUS : NO Action TAKEN

For some reason, field 3 is not shown. It is a set as below. So the C means 'Cancelled':

 N:  NO-SHOW
 C:  CANCELLED BY CLINIC
 NA: NO-SHOW & AUTO RE-BOOK
 CA: CANCELLED BY CLINIC & AUTO RE-BOOK
 I:  INPATIENT APPOINTMENT
 PC: CANCELLED BY PATIENT
 PCA:CANCELLED BY PATIENT & AUTO-REBOOK
 NT: NO Action TAKEN
                                1 2     7     12      14       15    18    19
 ^DPT(70685,"S",3090223.09,0)="10^ ^^^^^3^^^^^  ^^            ^  ^9^^  ^3090223     ^^^^^0^C^0"
 ^DPT(70685,"S",3090223.09,0)="10^C^^^^^3^^^^^73^^3090222.0922^13^9^^73^3090221.1335^^^^^0^C^0"
 Notice that the fields that are changed 
 upon deletion of an appt are as follows:
 Piece# NAME (Field Num):  Value change
 ---------------------------------------
  2 STATUS (#3):                    null --> C
 12 NO-SHOW/CANCELLED BY (#14):     null --> 73 (a pointer)
 14 NO-SHOW/CANCEL DATE/TIME (#15): null --> date
 15 CANCELLATION REASON (#16):      null --> 13 ( pointer)
 18 DATA ENTRY CLERK (#19):         null --? 73
 19 DATE APPT. MADE (#20):          date1 --> date2


Below is the data dictionary for the entry in the PATIENT file

    S;0               1900  APPOINTMENT                    W:^ <-Mult [2.98P]
     -                .001   -APPOINTMENT DATE/TIME                       [D]
     -0;1              .01   -CLINIC                         <-Pntr  [MP44'X]
     -Computed         .02   -TELEPHONE OF CLINIC                      [CJ14]
      -0;2                3   -STATUS                                      [S]
     -Computed           4   -REAL APPOINTMENT                           [BC]
     -0;3                5   -LAB DATE/TIME                               [D]
     -0;4                6   -X-RAY DATE/TIME                             [D]
     -0;5                7   -EKG DATE/TIME                               [D]
     -0;6                8   -Routing Slip PRINTED                        [S]
     -0;13             8.5   -{[ROUTING SLIP~|Routing Slip]] PRINT DATE                     [D]
     -0;7                9   -PURPOSE OF VISIT                           [RS]
     -0;16             9.5   -APPOINTMENT TYPE              <-Pntr  [P409.1']
     -0;8               10   -Special Survey DISPOSITION              [NJ1,0]
     -0;9               11   -NUMBER OF COLLATERAL SEEN               [NJ1,0]
     -0;10              12   -AUTO-REBOOKED APPT. DATE/TIME               [D]
     -0;11              13   -Collateral Visit                            [S]
     -0;12              14   -NO-SHOW/CANCELLED BY            <-Pntr  [P200']
     -0;14              15   -NO-SHOW/CANCEL DATE/TIME                    [D]
     -0;15              16   -CANCELLATION REASON         <-Pntr  [R*P409.2']
     -R;1               17   -CANCELLATION REMARKS                        [F]
     -0;17              18   -APPT. CANCELLED                  <-Pntr  [P44']
     -0;18              19   -DATA ENTRY CLERK                <-Pntr  [P200']
     -0;19              20   -DATE APPT. MADE                             [D]
     -0;20              21   -OUTPATIENT ENCOUNTER         <-Pntr  [P409.68']
     -0;21              22   -ENCOUNTER FORMS PRINTED                     [S]
     -0;22              23   -ENCOUNTER FORMS AS ADD-ONS                  [S]
     -0;23            23.1   -ENCOUNTER CONVERSION STATUS                 [S]
     -0;24              24   -APPOINTMENT TYPE SUB-CATEGORY  <-Pntr  [P35.2']
     -0;25              25   -SCHEDULING REQUEST TYPE                    [RS]
     -0;26              26   -NEXT AVA. APPT. INDICATOR                  [RS]
     -1;1               27   -DESIRED DATE OF APPOINTMENT                 [D]
     -1;2               28   -FOLLOW-UP VISIT                             [S]
     -Computed         100   -CURRENT STATUS                           [CJ35]