Annotation of freem_fileman/DIFROMSB.m, revision 1.1.1.1

1.1       snw         1: DIFROMSB       ;SCISC/DCL-SILENT DIFROM/INSTALL BLOCKS;08:35 AM  22 Nov 1994;
                      2:        ;;21.0;VA FileMan;;Dec 28, 1994
                      3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
                      4:        Q
                      5: BLKSIN(DIFRNAME,DIFRFLG,DIFRSA,DIFRMSGR)       ;
                      6:        ;PACKAGE_NAME,FLAGS,SOURCE_ROOT,MSG_ROOT
                      7:        ;*
                      8:        ;PACKAGE_NAME=Package Name
                      9:        ;    (Required if Source Root is not passed) - Identifies the
                     10:        ;                 unique key subscript in the transport structure.
                     11:        ;*
                     12:        ;FLAGS=O
                     13:        ;    (Optional) - "O"=use Old calls (DIC)
                     14:        ;*
                     15:        ;SOURCE_ROOT=Source Array Root
                     16:        ;    (Optional) - Closed array reference which contain all the
                     17:        ;                 Blocks that are to be installed.
                     18:        ;    (Note) - Required if Package_Name is not passed.
                     19:        ;*
                     20:        ;MSG_ROOT=Closed Root for Error Messages
                     21:        ;    (Optional) - Array where messages such as errors will be
                     22:        ;                 returned.  If not passed, decendents of the ^TMP
                     23:        ;                 will be used.
                     24:        ;*
                     25:        I $G(DIFRNAME)=""&($G(DIFRSA))="" D ERR("PACKAGE NAME/SOUCE ROOT") Q
                     26:        N DIFRFILE,DIFRDA,DIFROLD,DIFRX,DIFRY,DIC,DA,DLAYGO,X,Y
                     27:        S DIFRFILE=.404,DIFRDA=0
                     28:        I $G(DIFRSA)="" S DIFRSA=$NA(^XTMP("XPDI",DIFRNAME,"KRN"))
                     29:        S DIFROLD=$G(DIFRFLG)["O"
                     30:        I DIFROLD S DLAYGO=DIFRFILE,DIC="^DIST(.404,",DIC(0)="LX" D  Q
                     31:        .F  S DIFRDA=$O(@DIFRSA@(.404,DIFRDA)) Q:DIFRDA'>0  S DIFRX=^(DIFRDA,0) D
                     32:        ..S X=$P(DIFRX,"^"),DIFRFL=$P(DIFRX,"^",2)
                     33:        ..K DA
                     34:        ..D ^DIC
                     35:        ..I Y>0 S DIFRY=Y D DELADD Q
                     36:        ..N DIFRERR S DIFRERR(1)=$P(DIFRX,"^")
                     37:        ..D BLD^DIALOG(9517,.DIFRERR)
                     38:        ..Q
                     39:        ; CODE FOR NEW CALLS                                           <<<***
                     40:        G EXIT
                     41:        Q
                     42: DELADD ;
                     43:        K ^DIST(.404,+DIFRY),DA,DIK
                     44:        M ^DIST(.404,+DIFRY)=@DIFRSA@(.404,DIFRDA)
                     45:        S DIK="^DIST(.404,",DA=+DIFRY
                     46:        D IX1^DIK
                     47:        I '$D(DD(+DIFRFL)) D
                     48:        .N DIFRERR S DIFRERR(1)=$P(DIFRX,"^"),DIFRERR(2)=DIFRFL
                     49:        .D BLD^DIALOG(9518,.DIFRERR)
                     50:        .Q
                     51:        Q
                     52:        ;
                     53: ERR(X) S X(1)=X D BLD^DIALOG(202,.X)
                     54:        Q
                     55: EXIT   I $G(DIFRMSGR)]"" D CALLOUT^DIEFU(DIFRMSGR)
                     56:        Q

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>