- PSSDEEA ;PBM/RMS - DRUG FILE ENTER/EDIT AUDIT ; 18 May 2018 10:55 AM
- ;;1.0;PHARMACY DATA MANAGEMENT;**227**;;Build 18
- ;------------------------------------------------------------------
- BEFORE(TAG) ;
- ; Capture the drug entry before it is edited to have to compare to
- ; after the user completes the editing. Email changes in
- ; linetag 'AFTER' (called at the end of PSSDEE).
- ; From: PSSDEE [PSS DRUG ENTER/EDIT]
- ; Output:
- ; 1. ^UTILITY(TAG,$J,DA)=Drug file entry number DA before editing
- ; 2. ZDA ; DA or IEN of Drug file #50 entry
- ; 3. ZN ; Will be equal to 1 if a new drug was entered into file
- ;
- ;ZEXCEPT: DA,Y,ZDA,ZN
- ;
- K ^UTILITY(TAG,$J,DA)
- M ^UTILITY(TAG,$J,DA)=^PSDRUG(DA)
- ;
- S ZDA=DA,ZN=$P(Y,"^",3)
- ;
- Q
- ;------------------------------------------------------------------
- AFTER(TAG) ;
- ;
- ; DOCUMENTATION AND SETUP INFORMATION
- ;
- ; Modifications:
- ;
- ; * PSSDEE calls BEFORE^PSSDEEA to create ^UTILITY("PSSDEE",$J,DA) data.
- ; ^UTILITY data holds all ^PSDRUG data for drug prior to any
- ; editing.
- ; * PSSDEE later calls AFTER^PSSDEEA to compare the value of the drug
- ; file entry after editing to the pre-snapshot values held in
- ; ^UTILITY. If changes have been made, a Mailman message is
- ; sent to members of a mail group. (See SETUP below)
- ;
- ; Note: USING the Drug Enter/Edit option is sufficient to trigger
- ; the audit email, even if a non-audited field is the only change
- ; made by the user.
- ;
- ; ZEXCEPT: PSSZMES,PSSZNOC,ANS,CHANGES,COUNT,FIELD,FLAG,LABEL,NEWVAL,OLDVAL,USER,ZDA,ZDAN,ZN,PSSZNODE,ZZJ
- EN Q:'$G(ZDA)
- N COUNT,USER S COUNT=6,USER=$P(^VA(200,DUZ,0),"^"),ZDAN=$P(^PSDRUG(ZDA,0),"^")
- D HEADER
- D COMPAR
- D SEND
- K PSSZMES,ZDA,ZDAN,LABEL,PSSZNODE,OLDVAL,NEWVAL,FIELD,CHANGES,FLAG,ZZJ,ANS,ZN,PSSZNOC
- S NEWVAL=""
- Q
- ; ZEXCEPT: PSSZMES,USER,ZDAN
- S PSSZMES(1)="Please Note: The Drug Enter/Edit option was used by "_USER_"."
- S PSSZMES(2)="The drug that was entered/edited was "_ZDAN_"."
- S PSSZMES(3)="-------------------------------------------------------------------------------"
- Q
- COMPAR ;
- ; ZEXCEPT: PSSZMES,ANS,FLAG,LABEL,NEWVAL,OLDVAL,ZDA,TAG,PSSZNOC
- N CHANGES,NEWVAL,OLDVAL,SPACES,PSSZNODE,ZZJ
- S $P(SPACES," ",80)="",PSSZNOC=0
- F PSSZNODE=0,2,3,8.5,660,660.1,"EPH","I","ND" I $G(ZDA) D
- .S:ZN=1 ^UTILITY(TAG,$J,ZDA,PSSZNODE)=""
- .Q:'$D(^PSDRUG(ZDA,PSSZNODE))&('$D(^UTILITY(TAG,$J,ZDA,PSSZNODE)))
- .I '$D(^UTILITY(TAG,$J,ZDA,PSSZNODE))&($D(^PSDRUG(ZDA,PSSZNODE))) S CHANGES(PSSZNODE)=^PSDRUG(ZDA,PSSZNODE)
- .I '$D(^PSDRUG(ZDA,PSSZNODE))&($D(^UTILITY(TAG,$J,ZDA,PSSZNODE))) S CHANGES(PSSZNODE)=^UTILITY(TAG,$J,ZDA,PSSZNODE)
- .Q:$D(CHANGES(PSSZNODE))!('$D(^PSDRUG(ZDA,PSSZNODE)))!('$D(^UTILITY(TAG,$J,ZDA,PSSZNODE)))
- .Q:^UTILITY(TAG,$J,ZDA,PSSZNODE)=^PSDRUG(ZDA,PSSZNODE)
- .S CHANGES(PSSZNODE)=""
- .F ZZJ=1:1:10 S FLAG=0,ANS="" S:$P(^PSDRUG(ZDA,PSSZNODE),"^",ZZJ)'=$P(^UTILITY(TAG,$J,ZDA,PSSZNODE),"^",ZZJ) ANS=$P(^UTILITY(TAG,$J,ZDA,PSSZNODE),"^",ZZJ),FLAG=1 S:FLAG=1&(ANS="") ANS="NULL" S CHANGES(PSSZNODE)=CHANGES(PSSZNODE)_ANS_"^"
- I '$D(CHANGES) S PSSZNOC=1,PSSZMES(4)=" *** No Audited Changes Made ***" Q
- S FLAG=0
- F PSSZNODE=0,2,3,8.5,660,660.1,"EPH","I","ND" S LABEL="SUB"_PSSZNODE I $D(CHANGES(PSSZNODE)) F ZZJ=1:1:11 Q:"^^^^^^^^^^^^^^^^^"[$P(CHANGES(PSSZNODE),"^",ZZJ,11) Q:$P(CHANGES(PSSZNODE),"^",ZZJ,11)="" D:'$D(^UTILITY(TAG,$J,ZDA)) SETLB Q:FLAG D
- .S OLDVAL=$P(CHANGES(PSSZNODE),"^",ZZJ) Q:OLDVAL="" S OLDVAL=OLDVAL_$$OLDEXT(OLDVAL,PSSZNODE,ZZJ)
- .S:$D(^PSDRUG(ZDA,PSSZNODE)) NEWVAL=$P(^PSDRUG(ZDA,PSSZNODE),"^",ZZJ)_$$NEWEXT(ZDA,PSSZNODE,ZZJ)
- .D STOR
- Q
- OLDEXT(OLDVAL,PSSZNODE,PIECE) ;COMPUTE EXTERNAL 'OLD' VALUE WHERE NECESSARY
- N FIELDNUM,FIELDTYP,PTRFILE
- S FIELDNUM=$O(^DD(50,"GL",PSSZNODE,PIECE,0))
- Q:'+FIELDNUM ""
- S FIELDTYP=$P(^DD(50,FIELDNUM,0),U,2)
- I $E(FIELDTYP)'="P" Q ""
- S PTRFILE=+$E(FIELDTYP,2,99)
- Q " ("_$$GET1^DIQ(PTRFILE,OLDVAL,.01)_")"
- NEWEXT(ZDA,PSSZNODE,PIECE) ;COMPUTE EXTERNAL 'NEW' VALUE WHERE NECESSARY
- N FIELDNUM,INTERNAL,EXTERNAL
- S FIELDNUM=$O(^DD(50,"GL",PSSZNODE,PIECE,0))
- Q:'+FIELDNUM ""
- S EXTERNAL=$$GET1^DIQ(50,ZDA,FIELDNUM)
- S INTERNAL=$$GET1^DIQ(50,ZDA,FIELDNUM,"I")
- Q:(INTERNAL=EXTERNAL) ""
- Q " ("_EXTERNAL_")"
- SEND ;
- ; ZEXCEPT: ZDA,ZDAN,PSSZNOC
- N XMDUZ,XMSUB,XMTEXT,XMY
- S XMSUB=$S(PSSZNOC:"DRUG ENTER/EDIT ACCESS (",1:"DRUG ENTER/EDIT AUDIT (")_$G(ZDA)_":"_$G(ZDAN)_")",XMDUZ=$S($G(DUZ):DUZ,1:.5)
- S XMTEXT="PSSZMES("
- S XMY("G.PSS DEE AUDIT")="",XMY(DUZ)=""
- D ^XMD
- Q
- STOR ;STORES VALUES INTO MAILMAN VARIABLES
- ; ZEXCEPT: PSSZMES,COUNT,FIELD,LABEL,NEWVAL,OLDVAL,SPACES
- S:LABEL["660.1" LABEL="SUB6601"
- S:LABEL["8.5" LABEL="SUB85"
- S FIELD=$P($T(@(LABEL)+ZZJ),";",3)
- ;S PSSZMES(COUNT)=FIELD_$E(SPACES,1,30-$L(FIELD))_OLDVAL_$E(SPACES,1,30-$L(OLDVAL))_$G(NEWVAL),COUNT=COUNT+1
- S PSSZMES(COUNT)=FIELD,COUNT=COUNT+1
- S PSSZMES(COUNT)=$E(SPACES,1,5)_"OLD: "_OLDVAL,COUNT=COUNT+1
- S PSSZMES(COUNT)=$E(SPACES,1,5)_"NEW: "_$G(NEWVAL),COUNT=COUNT+1
- S PSSZMES(COUNT)=" ",COUNT=COUNT+1
- Q
- SETLB ;SETS $TEXT LABEL
- ; ZEXCEPT: LABEL,PSSZNODE
- S LABEL=$S(PSSZNODE=0:"SUB0",PSSZNODE=2:"SUB2",PSSZNODE=3:"SUB3",PSSZNODE=8.5:"SUB85",PSSZNODE=660:"SUB660",PSSZNODE=660.1:"SUB6601",PSSZNODE="EPH":"SUBEPH",PSSZNODE="ND":"SUBND",1:"SUBI")
- Q
- SUB0 ;FIELDS FOR ^PSDRUG(ZDA,0)
- ;;GENERIC NAME
- ;;VA CLASSIFICATION
- ;;DEA, SPECIAL HDLG
- ;;MAXIMUM DOSE PER DAY
- ;;STANDARD SIG
- ;;FSN
- ;;DRUG GROUP/INTERACTION
- ;;WARNING LABEL
- ;;NON-FORMULARY
- ;;MESSAGE
- SUB2 ;FIELDS FOR ^PSDRUG(ZDA,2)
- ;;PHARMACY ORDERABLE ITEM
- ;;RESTRICTION
- ;;APPLICATION PACKAGES' USE
- ;;NDC
- ;;
- ;;*PRIMARY DRUG
- SUB3 ;FIELDS FOR ^PSDRUG(ZDA,3)
- ;;CMOP DISPENSE
- SUB85 ;
- ;;*ATC CANISTER
- ;;ATC MNEMONIC
- SUB660 ;FIELDS FOR ^PSDRUG(ZDA,660)
- ;;REORDER LEVEL
- ;;ORDER UNIT
- ;;PRICE PER ORDER UNIT
- ;;NORMAL AMOUNT TO ORDER
- ;;DISPENSE UNITS PER ORDER UNIT
- ;;PRICE PER DISPENSE UNIT
- ;;SOURCE OF SUPPLY
- ;;DISPENSE UNIT
- SUB6601 ;FIELDS FOR ^PSDRUG(ZDA,660.1)
- ;;CURRENT INVENTORY
- SUBEPH ;FIELDS FOR ^PSDRUG(ZDA,"EPH")
- ;;DAW CODE
- ;;NCPDP DISPENSE UNIT
- ;;NCPDP QUANTITY MULTIPLIER
- ;;EPHARMACY BILLABLE
- ;;EPHARMACY BILLABLE (TRICARE)
- ;;EPHARMACY BILLABLE (CHAMPVA)
- ;;SENSITIVE DIAGNOSIS DRUG
- SUBI ;FIELDS FOR ^PSDRUG(ZDA,"I")
- ;;INACTIVE DATE
- SUBND ;FIELDS FOR ^PSDRUG(ZDA,"ND")
- ;;NATIONAL DRUG FILE ENTRY
- ;;VA PRODUCT NAME
- ;;PSNDF VA PRODUCT NAME ENTRY
- ;;PACKAGE SIZE
- ;;PACKAGE TYPE
- ;;NATIONAL DRUG CLASS
- ;;
- ;;
- ;;
- ;;CMOP ID
- ;;NATIONAL FORMULARY INDICATOR
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSSDEEA 6619 printed Feb 18, 2025@23:56:48 Page 2
- PSSDEEA ;PBM/RMS - DRUG FILE ENTER/EDIT AUDIT ; 18 May 2018 10:55 AM
- +1 ;;1.0;PHARMACY DATA MANAGEMENT;**227**;;Build 18
- +2 ;------------------------------------------------------------------
- BEFORE(TAG) ;
- +1 ; Capture the drug entry before it is edited to have to compare to
- +2 ; after the user completes the editing. Email changes in
- +3 ; linetag 'AFTER' (called at the end of PSSDEE).
- +4 ; From: PSSDEE [PSS DRUG ENTER/EDIT]
- +5 ; Output:
- +6 ; 1. ^UTILITY(TAG,$J,DA)=Drug file entry number DA before editing
- +7 ; 2. ZDA ; DA or IEN of Drug file #50 entry
- +8 ; 3. ZN ; Will be equal to 1 if a new drug was entered into file
- +9 ;
- +10 ;ZEXCEPT: DA,Y,ZDA,ZN
- +11 ;
- +12 KILL ^UTILITY(TAG,$JOB,DA)
- +13 MERGE ^UTILITY(TAG,$JOB,DA)=^PSDRUG(DA)
- +14 ;
- +15 SET ZDA=DA
- SET ZN=$PIECE(Y,"^",3)
- +16 ;
- +17 QUIT
- +18 ;------------------------------------------------------------------
- AFTER(TAG) ;
- +1 ;
- +2 ; DOCUMENTATION AND SETUP INFORMATION
- +3 ;
- +4 ; Modifications:
- +5 ;
- +6 ; * PSSDEE calls BEFORE^PSSDEEA to create ^UTILITY("PSSDEE",$J,DA) data.
- +7 ; ^UTILITY data holds all ^PSDRUG data for drug prior to any
- +8 ; editing.
- +9 ; * PSSDEE later calls AFTER^PSSDEEA to compare the value of the drug
- +10 ; file entry after editing to the pre-snapshot values held in
- +11 ; ^UTILITY. If changes have been made, a Mailman message is
- +12 ; sent to members of a mail group. (See SETUP below)
- +13 ;
- +14 ; Note: USING the Drug Enter/Edit option is sufficient to trigger
- +15 ; the audit email, even if a non-audited field is the only change
- +16 ; made by the user.
- +17 ;
- +18 ; ZEXCEPT: PSSZMES,PSSZNOC,ANS,CHANGES,COUNT,FIELD,FLAG,LABEL,NEWVAL,OLDVAL,USER,ZDA,ZDAN,ZN,PSSZNODE,ZZJ
- EN if '$GET(ZDA)
- QUIT
- +1 NEW COUNT,USER
- SET COUNT=6
- SET USER=$PIECE(^VA(200,DUZ,0),"^")
- SET ZDAN=$PIECE(^PSDRUG(ZDA,0),"^")
- +2 DO HEADER
- +3 DO COMPAR
- +4 DO SEND
- +5 KILL PSSZMES,ZDA,ZDAN,LABEL,PSSZNODE,OLDVAL,NEWVAL,FIELD,CHANGES,FLAG,ZZJ,ANS,ZN,PSSZNOC
- +6 SET NEWVAL=""
- +7 QUIT
- +1 ; ZEXCEPT: PSSZMES,USER,ZDAN
- +2 SET PSSZMES(1)="Please Note: The Drug Enter/Edit option was used by "_USER_"."
- +3 SET PSSZMES(2)="The drug that was entered/edited was "_ZDAN_"."
- +4 SET PSSZMES(3)="-------------------------------------------------------------------------------"
- +5 QUIT
- COMPAR ;
- +1 ; ZEXCEPT: PSSZMES,ANS,FLAG,LABEL,NEWVAL,OLDVAL,ZDA,TAG,PSSZNOC
- +2 NEW CHANGES,NEWVAL,OLDVAL,SPACES,PSSZNODE,ZZJ
- +3 SET $PIECE(SPACES," ",80)=""
- SET PSSZNOC=0
- +4 FOR PSSZNODE=0,2,3,8.5,660,660.1,"EPH","I","ND"
- IF $GET(ZDA)
- Begin DoDot:1
- +5 if ZN=1
- SET ^UTILITY(TAG,$JOB,ZDA,PSSZNODE)=""
- +6 if '$DATA(^PSDRUG(ZDA,PSSZNODE))&('$DATA(^UTILITY(TAG,$JOB,ZDA,PSSZNODE)))
- QUIT
- +7 IF '$DATA(^UTILITY(TAG,$JOB,ZDA,PSSZNODE))&($DATA(^PSDRUG(ZDA,PSSZNODE)))
- SET CHANGES(PSSZNODE)=^PSDRUG(ZDA,PSSZNODE)
- +8 IF '$DATA(^PSDRUG(ZDA,PSSZNODE))&($DATA(^UTILITY(TAG,$JOB,ZDA,PSSZNODE)))
- SET CHANGES(PSSZNODE)=^UTILITY(TAG,$JOB,ZDA,PSSZNODE)
- +9 if $DATA(CHANGES(PSSZNODE))!('$DATA(^PSDRUG(ZDA,PSSZNODE)))!('$DATA(^UTILITY(TAG,$JOB,ZDA,PSSZNODE)))
- QUIT
- +10 if ^UTILITY(TAG,$JOB,ZDA,PSSZNODE)=^PSDRUG(ZDA,PSSZNODE)
- QUIT
- +11 SET CHANGES(PSSZNODE)=""
- +12 FOR ZZJ=1:1:10
- SET FLAG=0
- SET ANS=""
- if $PIECE(^PSDRUG(ZDA,PSSZNODE),"^",ZZJ)'=$PIECE(^UTILITY(TAG,$JOB,ZDA,PSSZNODE),"^",ZZJ)
- SET ANS=$PIECE(^UTILITY(TAG,$JOB,ZDA,PSSZNODE),"^",ZZJ)
- SET FLAG=1
- if FLAG=1&(ANS="")
- SET ANS="NULL"
- SET CHANGES(PSSZNODE)=CHANGES(PSSZNODE)_ANS_"^"
- End DoDot:1
- +13 IF '$DATA(CHANGES)
- SET PSSZNOC=1
- SET PSSZMES(4)=" *** No Audited Changes Made ***"
- QUIT
- +14 SET FLAG=0
- +15 FOR PSSZNODE=0,2,3,8.5,660,660.1,"EPH","I","ND"
- SET LABEL="SUB"_PSSZNODE
- IF $DATA(CHANGES(PSSZNODE))
- FOR ZZJ=1:1:11
- if "^^^^^^^^^^^^^^^^^"[$PIECE(CHANGES(PSSZNODE),"^",ZZJ,11)
- QUIT
- if $PIECE(CHANGES(PSSZNODE),"^",ZZJ,11)=""
- QUIT
- if '$DATA(^UTILITY(TAG,$JOB,ZDA))
- DO SETLB
- if FLAG
- QUIT
- Begin DoDot:1
- +16 SET OLDVAL=$PIECE(CHANGES(PSSZNODE),"^",ZZJ)
- if OLDVAL=""
- QUIT
- SET OLDVAL=OLDVAL_$$OLDEXT(OLDVAL,PSSZNODE,ZZJ)
- +17 if $DATA(^PSDRUG(ZDA,PSSZNODE))
- SET NEWVAL=$PIECE(^PSDRUG(ZDA,PSSZNODE),"^",ZZJ)_$$NEWEXT(ZDA,PSSZNODE,ZZJ)
- +18 DO STOR
- End DoDot:1
- +19 QUIT
- OLDEXT(OLDVAL,PSSZNODE,PIECE) ;COMPUTE EXTERNAL 'OLD' VALUE WHERE NECESSARY
- +1 NEW FIELDNUM,FIELDTYP,PTRFILE
- +2 SET FIELDNUM=$ORDER(^DD(50,"GL",PSSZNODE,PIECE,0))
- +3 if '+FIELDNUM
- QUIT ""
- +4 SET FIELDTYP=$PIECE(^DD(50,FIELDNUM,0),U,2)
- +5 IF $EXTRACT(FIELDTYP)'="P"
- QUIT ""
- +6 SET PTRFILE=+$EXTRACT(FIELDTYP,2,99)
- +7 QUIT " ("_$$GET1^DIQ(PTRFILE,OLDVAL,.01)_")"
- NEWEXT(ZDA,PSSZNODE,PIECE) ;COMPUTE EXTERNAL 'NEW' VALUE WHERE NECESSARY
- +1 NEW FIELDNUM,INTERNAL,EXTERNAL
- +2 SET FIELDNUM=$ORDER(^DD(50,"GL",PSSZNODE,PIECE,0))
- +3 if '+FIELDNUM
- QUIT ""
- +4 SET EXTERNAL=$$GET1^DIQ(50,ZDA,FIELDNUM)
- +5 SET INTERNAL=$$GET1^DIQ(50,ZDA,FIELDNUM,"I")
- +6 if (INTERNAL=EXTERNAL)
- QUIT ""
- +7 QUIT " ("_EXTERNAL_")"
- SEND ;
- +1 ; ZEXCEPT: ZDA,ZDAN,PSSZNOC
- +2 NEW XMDUZ,XMSUB,XMTEXT,XMY
- +3 SET XMSUB=$SELECT(PSSZNOC:"DRUG ENTER/EDIT ACCESS (",1:"DRUG ENTER/EDIT AUDIT (")_$GET(ZDA)_":"_$GET(ZDAN)_")"
- SET XMDUZ=$SELECT($GET(DUZ):DUZ,1:.5)
- +4 SET XMTEXT="PSSZMES("
- +5 SET XMY("G.PSS DEE AUDIT")=""
- SET XMY(DUZ)=""
- +6 DO ^XMD
- +7 QUIT
- STOR ;STORES VALUES INTO MAILMAN VARIABLES
- +1 ; ZEXCEPT: PSSZMES,COUNT,FIELD,LABEL,NEWVAL,OLDVAL,SPACES
- +2 if LABEL["660.1"
- SET LABEL="SUB6601"
- +3 if LABEL["8.5"
- SET LABEL="SUB85"
- +4 SET FIELD=$PIECE($TEXT(@(LABEL)+ZZJ),";",3)
- +5 ;S PSSZMES(COUNT)=FIELD_$E(SPACES,1,30-$L(FIELD))_OLDVAL_$E(SPACES,1,30-$L(OLDVAL))_$G(NEWVAL),COUNT=COUNT+1
- +6 SET PSSZMES(COUNT)=FIELD
- SET COUNT=COUNT+1
- +7 SET PSSZMES(COUNT)=$EXTRACT(SPACES,1,5)_"OLD: "_OLDVAL
- SET COUNT=COUNT+1
- +8 SET PSSZMES(COUNT)=$EXTRACT(SPACES,1,5)_"NEW: "_$GET(NEWVAL)
- SET COUNT=COUNT+1
- +9 SET PSSZMES(COUNT)=" "
- SET COUNT=COUNT+1
- +10 QUIT
- SETLB ;SETS $TEXT LABEL
- +1 ; ZEXCEPT: LABEL,PSSZNODE
- +2 SET LABEL=$SELECT(PSSZNODE=0:"SUB0",PSSZNODE=2:"SUB2",PSSZNODE=3:"SUB3",PSSZNODE=8.5:"SUB85",PSSZNODE=660:"SUB660",PSSZNODE=660.1:"SUB6601",PSSZNODE="EPH":"SUBEPH",PSSZNODE="ND":"SUBND",1:"SUBI")
- +3 QUIT
- SUB0 ;FIELDS FOR ^PSDRUG(ZDA,0)
- +1 ;;GENERIC NAME
- +2 ;;VA CLASSIFICATION
- +3 ;;DEA, SPECIAL HDLG
- +4 ;;MAXIMUM DOSE PER DAY
- +5 ;;STANDARD SIG
- +6 ;;FSN
- +7 ;;DRUG GROUP/INTERACTION
- +8 ;;WARNING LABEL
- +9 ;;NON-FORMULARY
- +10 ;;MESSAGE
- SUB2 ;FIELDS FOR ^PSDRUG(ZDA,2)
- +1 ;;PHARMACY ORDERABLE ITEM
- +2 ;;RESTRICTION
- +3 ;;APPLICATION PACKAGES' USE
- +4 ;;NDC
- +5 ;;
- +6 ;;*PRIMARY DRUG
- SUB3 ;FIELDS FOR ^PSDRUG(ZDA,3)
- +1 ;;CMOP DISPENSE
- SUB85 ;
- +1 ;;*ATC CANISTER
- +2 ;;ATC MNEMONIC
- SUB660 ;FIELDS FOR ^PSDRUG(ZDA,660)
- +1 ;;REORDER LEVEL
- +2 ;;ORDER UNIT
- +3 ;;PRICE PER ORDER UNIT
- +4 ;;NORMAL AMOUNT TO ORDER
- +5 ;;DISPENSE UNITS PER ORDER UNIT
- +6 ;;PRICE PER DISPENSE UNIT
- +7 ;;SOURCE OF SUPPLY
- +8 ;;DISPENSE UNIT
- SUB6601 ;FIELDS FOR ^PSDRUG(ZDA,660.1)
- +1 ;;CURRENT INVENTORY
- SUBEPH ;FIELDS FOR ^PSDRUG(ZDA,"EPH")
- +1 ;;DAW CODE
- +2 ;;NCPDP DISPENSE UNIT
- +3 ;;NCPDP QUANTITY MULTIPLIER
- +4 ;;EPHARMACY BILLABLE
- +5 ;;EPHARMACY BILLABLE (TRICARE)
- +6 ;;EPHARMACY BILLABLE (CHAMPVA)
- +7 ;;SENSITIVE DIAGNOSIS DRUG
- SUBI ;FIELDS FOR ^PSDRUG(ZDA,"I")
- +1 ;;INACTIVE DATE
- SUBND ;FIELDS FOR ^PSDRUG(ZDA,"ND")
- +1 ;;NATIONAL DRUG FILE ENTRY
- +2 ;;VA PRODUCT NAME
- +3 ;;PSNDF VA PRODUCT NAME ENTRY
- +4 ;;PACKAGE SIZE
- +5 ;;PACKAGE TYPE
- +6 ;;NATIONAL DRUG CLASS
- +7 ;;
- +8 ;;
- +9 ;;
- +10 ;;CMOP ID
- +11 ;;NATIONAL FORMULARY INDICATOR