Subversion Repositories wimsdev

Rev

Rev 15772 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 15772 Rev 15774
Line 20... Line 20...
20
  !reset tc_abandon,tc_value,tc_name,tc_set,stechvar
20
  !reset tc_abandon,tc_value,tc_name,tc_set,stechvar
21
  job=listvar
21
  job=listvar
22
  !changeto $job.proc
22
  !changeto $job.proc
23
  !exit
23
  !exit
24
!endif
24
!endif
-
 
25
 
-
 
26
!! -------- makelist of variable can be deleted (not in use in the structure by any participant
-
 
27
!if / isin $wims_class
-
 
28
  cls=$wims_superclass
-
 
29
!else
-
 
30
  cls=$wims_class
-
 
31
!endif
-
 
32
code=!item $stechvar of $tv_listlocalcode
-
 
33
nbol=!itemcnt $ol_value
-
 
34
flags=!values 0 for v=1 to $nbol
-
 
35
u=1
-
 
36
nbu=!recordcnt wimshome/log/classes/$cls/.userlist
-
 
37
flagcnt=0
-
 
38
!while $u<=$nbu and $flagcnt<$nbol
-
 
39
  l=!record $u of wimshome/log/classes/$cls/.userlist
-
 
40
  l=!item 3 of $l
-
 
41
  tmp=!defof user_techvar_$code in wimshome/log/classes/$cls/.users/$l
-
 
42
  !if $tmp!=$empty
-
 
43
    p=!positionof item $tmp in $ol_value
-
 
44
    !if $(flags[$p])=0
-
 
45
      flags=!replace item number $p by 1 in $flags
-
 
46
      !increase flagcnt
-
 
47
    !endif
-
 
48
  !endif
-
 
49
  !increase u
-
 
50
!endwhile
-
 
51
!reset del_values
-
 
52
!for k=1 to $nbol
-
 
53
  !if $(flags[$k])=0
-
 
54
    del_values=!append item $(ol_value[$k]) to $del_values
-
 
55
  !endif
-
 
56
!next k
25
 
57
 
26
!if $tc_set!=$empty
58
!if $tc_set!=$empty
27
  !! check name validity
59
  !! check name validity
28
  tc_name=!text select 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ in $tc_name
60
  tc_name=!text select 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ in $tc_name
29
  tc_name=!nospace $tc_name
61
  tc_name=!nospace $tc_name
30
  tc_name=!lower $tc_name
62
  tc_name=!lower $tc_name
31
  n=!charcnt $tc_name
63
  n=!charcnt $tc_name
32
  !if $n>$MAXcharname or $n<1
64
  !if $n>$MAXcharname or $n<1
33
    error=badnamelen
65
    error=badnamelen
34
    !reset tc_set
66
    !reset tc_set
35
    !exit
67
    !exit
36
  !endif
68
  !endif
37
 
69
 
38
  !! check list of name already in use
70
  !! check list of name already in use
39
  !if $tc_name isitemof $tv_listallname and $tc_name!=$ol_name
71
  !if $tc_name isitemof $tv_listallname and $tc_name!=$ol_name
40
    error=namealreadyuse
72
    error=namealreadyuse
41
    !reset tc_set
73
    !reset tc_set
42
    !exit
74
    !exit
43
  !endif
75
  !endif
44
 
76
 
45
  !! check list of value
77
  !! check list of value
46
  tc_value=!listuniq $tc_value
78
  tc_value=!listuniq $tc_value
47
  tc_value=!listcomplement _EMPTY_,EMPTY,EMPTY_,_EMPTY in $tc_value
79
  tc_value=!listcomplement _EMPTY_,EMPTY,EMPTY_,_EMPTY in $tc_value
48
  n=!itemcnt $tc_value
80
  n=!itemcnt $tc_value
49
  !if $n<1 or $n>$MAXnbvalue
81
  !if $n<1 or $n>$MAXnbvalue
50
    error=badvaluenb
82
    error=badvaluenb
51
    !reset tc_set
83
    !reset tc_set
52
    !exit
84
    !exit
53
  !endif
85
  !endif
-
 
86
 
54
  !! old list must be include (or delete value not in use in the class TODO).
87
  !! old list must be include (or delete value not in use in the class TODO).
55
  !! il y a une amélioration à faire pour poster un message et effacer les valeurs qui ne sont plus disponibles.
88
  !! il y a une amélioration à faire pour poster un message et effacer les valeurs qui ne sont plus disponibles.
56
  li=!listcomplement $tc_value in $ol_value
89
  li=!listcomplement $tc_value in $ol_value
-
 
90
  li=!listcomplement $del_values in $li
57
  !if $li!=$empty
91
  !if $li!=$empty
58
    error=valuedisappear
92
    error=valuedisappear
59
    tc_value=$ol_value
93
    tc_value=$ol_value
60
    !reset tc_set
94
    !reset tc_set
61
    !exit
95
    !exit
62
  !endif
96
  !endif
-
 
97
 
63
  !! --------- save new data
98
!! --------- save new data
64
  donnees=$empty
99
  donnees=$empty
65
  !for k=1 to $nblocalvar
100
  !for k=1 to $nblocalvar
66
    !if $k=$stechvar
101
    !if $k=$stechvar
67
      donnees=!append line :$tc_name\
102
      donnees=!append line :$tc_name\
68
$tc_value to $donnees
103
$tc_value to $donnees