IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Au Pied Levé - À Main Levée

I-3.1.5. Ex&Co Shells

Noter ce billet
par , 01/04/2020 à 11h10 (257 Affichages)
APL-AML est une monographie fragmentée en plusieurs billets pour des raisons de volume.
Un billet SYNOPSIS et un billet SOMMAIRE agrègent tous les billets du blog via des liens hypertextes.

■ ■ ■ SOMMAIRE DU BILLET ■ ■ ■

  • Anonymat
Anonymat

Exemple de shell invoqué via un item du menu ou depuis le prompt.

L’affichage du shell pour les gestionnaires ne se fait que sur 73 caractères sur les 80 possibles car la commande d’affichage d’une ligne prend 7 caractères : « echo "" ». Afficher une ligne de 80 caractères pour les gestionnaires pénaliserait le développement en affichant chaque ligne de 80 + 7 caractères sur deux lignes… Trop compliqué à gérer.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
# anonymat

# Ce shell est activé :
#
# - soit via un item du menu qui exporte auparavant le code complet du concours 
#   ex : AFFECTATION DES N° D'ANONYMAT 
#        P=AA-1C_CE_07; export P; ../shell_1/anonymat
#	
# - soit en ligne de commande, par le développeur, 
#   qui doit donc renseigner les code-type-session du concours 

clear

LENGTH=`expr "$P" : '.*'`
if test "$LENGTH" -eq 11
then 
     P_1=`expr "$P" : '\(.*\)......'`
     P_2=`expr "$P" : '......\(.*\)...'`
     P_3=`expr "$P" : '.........\(.*\)'`
fi
if test "$LENGTH" -eq 10
then
     P_1=`expr "$P" : '\(.*\)......'`
     P_2=`expr "$P" : '.....\(.*\)...'`
     P_3=`expr "$P" : '........\(.*\)'`
fi
if test "$LENGTH" -eq 9
then
     P_1=`expr "$P" : '\(.*\)......'`
     P_2=`expr "$P" : '....\(.*\)...'`
     P_3=`expr "$P" : '.......\(.*\)'`
fi
if test "$LENGTH" -eq 8
then
     P_1=`expr "$P" : '\(.*\)......'`
     P_2=`expr "$P" : '...\(.*\)...'`
     P_3=`expr "$P" : '......\(.*\)'`
fi
if test "$LENGTH" -eq 7
then
     P_1=`expr "$P" : '\(.*\)......'`
     P_2=`expr "$P" : '..\(.*\)...'`
     P_3=`expr "$P" : '.....\(.*\)'`
fi

echo "                              " $P_1 $P_2 $P_3
echo ""
echo "┌AFFECTATION DES N° D'ANONYMAT──────────────────────────────────────────┐"
echo "│                                                                       │"
echo "│ATTENTION : Ce traitement exécute au préalable un désistement global   │"
echo "│            suivi d'une suppression des pré-inscriptions désistées ou  │"
echo "│            refusées et seuls les présents sont pris en considération !│"
echo "├───────────────────────────────────────────────────────────────────────┤"
echo "│- 3 possibilités d'anonymer :                                          │"
echo "│                                                                       │"
echo "│1. soit en ordre croissant selon l'ordre alphabétique                  │"
echo "│   mais en décalant les N° de façon circulaire depuis un N° de place   │"
echo "│2. soit en affectant le N° de candidature seul connu d'INFORMIX        │"
echo "│3. soit en affectant le N° de place de l'admissibilité                 │"
echo "├───────────────────────────────────────────────────────────────────────┤"
echo "│ANONYMAT    :       [ <──┘ ]=[1], [2], [3]                             │"
echo "├───────────────────────────────────────────────────────────────────────┤"
echo "│N° DE PLACE :       [ <──┘ ]=[1], N° de départ (présent) du décalage   │"
echo "│N° ANONYMAT :       [ <──┘ ]=[1], N° d'anonymat pour ce N° de place    │"
echo "└───────────────────────────────────────────────────────────────────────┘"
echo ""

cd ../shell_1

SMSO=`tput smso`
RMSO=`tput rmso`

if [ "$LENGTH" = 0 ]
then

     tput cup 0 0
     echo " CONCOURS : "
     tput cup 0 12
     echo $SMSO"     "$RMSO
     tput cup 0 12
     read P_1
     if [ "$P_1" = "" ]
     then P_1=0
     fi

     tput cup 0 0
     echo "                              " $P_1 $P_2 $P_3
     tput cup 0 0
     echo " TYPE     : "
     tput cup 0 12
     echo $SMSO"  "$RMSO
     tput cup 0 12
     read P_2
     if [ "$P_2" = "" ]
     then P_2=0
     fi
     echo ""

     tput cup 0 0
     echo "                              " $P_1 $P_2 $P_3
     tput cup 0 0
     echo " SESSION  : "
     tput cup 0 12
     echo $SMSO"  "$RMSO
     tput cup 0 12
     read P_3
     if [ "$P_3" = "" ]
     then P_3=0
     fi
     echo ""

     tput cup 0 0
     echo "                              " $P_1 $P_2 $P_3
     tput cup 1 0
     echo "                              "
fi

# CHOIX D'ANONYMAT
  tput cup 15 15
  echo $SMSO" "$RMSO
  tput cup 15 15
  read P_4
  tput cup 15 15
  echo " "
  if [ "$P_4" = "" ]
  then P_4=1
  fi
  if [ "$P_4" != "1" -a "$P_4" != "2" -a "$P_4" != "3" ]
  then P_4=1
  fi
  tput cup 15 15
  echo $P_4

# N° DE PLACE
  if [ "$P_4" = "1" ]
  then tput cup 17 15
       echo $SMSO"     "$RMSO
       tput cup 17 15
       read P_5
       tput cup 17 15
       echo "     "
       if [ "$P_5" = "" ]
       then P_5=1
       fi
       tput cup 17 15
       echo $P_5
  else P_5=0
  fi

# N° ANONYMAT
  if [ "$P_4" = "1" ]
  then tput cup 18 15
       echo $SMSO"     "$RMSO
       tput cup 18 15
       read P_6
       tput cup 18 15
       echo "     "
       if [ "$P_6" = "" ]
       then P_6=1
       fi
       tput cup 18 15
       echo $P_6
  else P_6=0
  fi

tput cup 20 0
echo " Traitement en cours... \c"

cp ../sql_1/1_global.sed ${LOGNAME}.sql

ed - "${LOGNAME}.sql" << !
,s/PROCESS/$$/g
,s/C_EC/$P_1/g
,s/T_EC/$P_2/g
,s/S_EC/$P_3/g
,s/GLOBAL/D/g
w
q
!

if [ "$DBLANG" = "" ]
then isql -s concours -qcre ${LOGNAME} > /dev/null
else isql -s concours -lceq ${LOGNAME} > /dev/null
fi

cp ../sql_1/supprime.sed ${LOGNAME}.sql

ed - "${LOGNAME}.sql" << !
,s/C_EC/$P_1/g
,s/T_EC/$P_2/g
,s/S_EC/$P_3/g
w
q
!

if [ "$DBLANG" = "" ]
then isql -s concours -qcre ${LOGNAME} > /dev/null
else isql -s concours -lceq ${LOGNAME} > /dev/null
fi

sacego -q ../ace_1/anonymat $P_1 $P_2 $P_3 $P_4 $P_5 $P_6 $LOGNAME

cp ../sql_1/anonymat.sed ${LOGNAME}.sql

ed - "${LOGNAME}.sql" << !
,s/LOGNAME/$LOGNAME/g
,s/C_EC/$P_1/g
,s/T_EC/$P_2/g
,s/S_EC/$P_3/g
w
q
!

if [ "$DBLANG" = "" ]
then isql -s concours -qcre ${LOGNAME} > /dev/null
else isql -s concours -lceq ${LOGNAME} > /dev/null
fi

echo "TERMINE !"

# {
# cec_global.sed
# }
# {
# lock table cec in exclusive mode;
# }
# unload to "C_EC.T_EC.PROCESS"
# select   cec.*
# from     cec
# where    cec.c_ec        = "C_EC"
# and      cec.t_ec        = "T_EC"
# and      cec.s_ec        = "S_EC"
# and     (cec.c_decision is null or cec.c_decision  = " ")
# order by cec.n_pec,
#          cec.n_cec;
#
# update   cec
# set      cec.c_decision  = "GLOBAL"
# where    cec.c_ec        = "C_EC"
# and      cec.t_ec        = "T_EC"
# and      cec.s_ec        = "S_EC"
# and     (cec.c_decision is null or cec.c_decision = " ");
# {
# unlock table cec;
# }

# {
# supprime.sed
# }
# 
# lock table cec in exclusive mode;
# 
# delete
# from  cec
# where cec.c_ec        = "C_EC"
# and   cec.t_ec        = "T_EC"
# and   cec.s_ec        = "S_EC"
# and   cec.c_decision is not null
# and   cec.c_decision  = "D";
# 
# unlock table cec;

# {
# anonymat.sed
# }
# 
# lock table tmp in exclusive mode;
# 
# delete from tmp where tmp.n_cec is not null;
# load from "LOGNAME.out" insert into tmp;
# 
# update cec
# set   (cec.anonymat,
#        cec.admis_1)
#    = ((select tmp.place,
#               tmp.admis_1
#        from   tmp
#        where  cec.n_cec = tmp.n_cec))
# where  cec.c_ec = "C_EC"
# and    cec.t_ec = "T_EC"
# and    cec.s_ec = "S_EC";
# 
# unlock table tmp;

I-3. Annexes

▲ I-3.1.4. Ex&Co États
► I-3.1.5. Ex&Co Shells
▼ I-3.1.6. Ex&Co Sql CREATE_BDD

Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Viadeo Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Twitter Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Google Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Facebook Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Digg Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Delicious Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog MySpace Envoyer le billet « I-3.1.5. Ex&Co Shells » dans le blog Yahoo

Mis à jour 24/02/2024 à 05h52 par APL-AML

Catégories
■ APL-AML , I- L’ART , I-3. Annexes , I-3.1. BDD Examens-Concours