Annotation of freem_fileman/DICLIB.m, revision 1.1.1.1
1.1 snw 1: DICLIB ;SFISC/TKW - LIBRARY OF FUNCTIONS FOR ^DIC ;11/19/93 15:37
2: ;;21.0;VA FileMan;;Dec 28, 1994
3: ;Per VHA Directive 10-93-142, this routine should not be modified.
4: NXTNO(F,DA,FLAGS) ;GET NEXT RECORD NUMBER FOR FILE OR SUBFILE F (F CAN CONTAIN A GLOBAL REFERENCE TO IMPROVE EFFICIENCY)
5: ;DA=DA ARRAY (IF F IS A SUBFILE)
6: ;FLAGS (OPTIONAL) IF IT CONTAINS "U", WILL UPDATE LAST REC.# ON 0 NODE
7: N I,X,Y,DIC S X=0,I=1
8: S:'F DIC=$TR(F,")",",") S:F DIC=$$ROOT^DIQGU(F,.DA)
9: G:DIC="" QI G:'$D(@(DIC_"0)")) QI
10: INCR L @("+"_DIC_"0):10") G:'$T QL
11: I 'X S Y=@(DIC_"0)"),X=$P($P(Y,U,3),".",1)
12: F I=1:1 S X=X+1 Q:'$D(@(DIC_X_")")) I I=100 S I=0 Q
13: I 'I L @("-"_DIC_"0)") G INCR
14: I $G(FLAGS)["U" S $P(@(DIC_"0)"),U,3,4)=X_U_($P(Y,U,4)+1)
15: L @("-"_DIC_"0)")
16: Q X
17: QI D BLD^DIALOG(200) G Q0
18: QL D BLD^DIALOG(110,F)
19: Q0 Q 0
20: ;DIALOG #200 'An input variable or parameter is missing or invalid.'
21: ; #110 'The record is currently locked'
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>