View difference between Paste ID: U7K8XgsU and GPtMEMv3
SHOW: | | - or go back to the newest paste.
1-
'Spacchi
1+
'Stipiti
2
3
Function DEFINE_QCSP(ByVal COD_SPC As String, ByVal NND As Integer, ByVal H As Double)
4
DEFINE_QCSP = 0
5
6
If COD_SPC = "0" Then Exit Function
7
8
HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
9
M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
10
M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
11
M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
12
TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
13
If HSP = 0 Or HSP = -1 Then Exit Function
14
15
Select Case COD_SPC
16
Case "1420", "1430", "1432", "1450", "9140"
17
18
If InStr(1, TYS, "A") > 0 Then
19
DEFINE_QCSP = HSP
20
End If
21
If InStr(1, TYS, "B") > 0 Then
22
DEFINE_QCSP = HSP + M2
23
End If
24
If InStr(1, TYS, "C") > 0 Then
25
DEFINE_QCSP = HSP + (M2 * 2)
26
End If
27
28
Case "9150"
29
If InStr(1, TYS, "A") > 0 Then
30
DEFINE_QCSP = HSP
31
End If
32
If InStr(1, TYS, "B") > 0 Then
33
DEFINE_QCSP = HSP + M4
34
End If
35
If InStr(1, TYS, "C") > 0 Then
36
DEFINE_QCSP = HSP + M3
37
End If
38
39
Case "1800", "1810", "1820", "9180"
40
If InStr(1, TYS, "A") > 0 Then
41
DEFINE_QCSP = HSP + 17
42
End If
43
If InStr(1, TYS, "B") > 0 Then
44
DEFINE_QCSP = HSP + 17 + 54
45
End If
46
If InStr(1, TYS, "C") > 0 Then
47
DEFINE_QCSP = HSP + 17 + 54 * 2
48
End If
49
If InStr(1, TYS, "D") > 0 Then
50
DEFINE_QCSP = HSP + 17 + 54 * 3
51
End If
52
53
Case "2000", "2002", "9200"
54
If InStr(1, TYS, "A") > 0 Then
55
DEFINE_QCSP = HSP + 42
56
End If
57
If InStr(1, TYS, "B") > 0 Then
58
DEFINE_QCSP = HSP + 755 + 75.25
59
End If
60
61
Case Else
62
DEFINE_QCSP = HSP + (M2 / 2)
63
End Select
64
65
DEFINE_QCSP = H - DEFINE_QCSP
66
67
68
End Function
69
70
Function SPCp_CODIFY(ByVal NND As Integer, ByVal COD_SPC As String, ByVal FL_AP As Double, ByVal H As Double, ByVal L As Double, ByVal MRR As Byte, ByVal SB As Double) As String
71
' PROGRESSIVO PEZZO, CODICE SPACCO, FILO APERTURA, LUNGHEZZA, ALTEZZA, SPECCHIATURA, SB\SF
72
73
If COD_SPC = "50518" Or COD_SPC = "50543" Then COD_SPC = "2382"
74
If COD_SPC = "50519" Then COD_SPC = "2900"
75
If COD_SPC = "50520" Then COD_SPC = "3000"
76
If COD_SPC = "50521" Then COD_SPC = "3100"
77
78
If COD_SPC = "50522" Then COD_SPC = "3200"
79
If COD_SPC = "50523" Then COD_SPC = "3300"
80
If COD_SPC = "50524" Then COD_SPC = "3400"
81
82
M1 = INPUT_NUM(NND, "M1_SPC", M1_SPC, ACT_MOD)
83
If COD_SPC = "9932" Or COD_SPC = "9933" Or COD_SPC = "9934" Then GoTo SALTA_SPC_CCD 'WITTUR ZOO
84
If M1 = 0 Or M1 = -1 Then Exit Function
85
86
SALTA_SPC_CCD:
87
HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
88
M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
89
M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
90
M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
91
M5 = INPUT_NUM(NND, "M5_SPC", M5_SPC, ACT_MOD)
92
M6 = INPUT_NUM(NND, "M6_SPC", M6_SPC, ACT_MOD)
93
M7 = INPUT_NUM(NND, "M7_SPC", M7_SPC, ACT_MOD)
94
M8 = INPUT_NUM(NND, "M8_SPC", M8_SPC, ACT_MOD)
95
M9 = INPUT_NUM(NND, "M9_SPC", M9_SPC, ACT_MOD)
96
M10 = INPUT_NUM(NND, "M10_SPC", M10_SPC, ACT_MOD)
97
M11 = INPUT_NUM(NND, "M11_SPC", M11_SPC, ACT_MOD)
98
M12 = INPUT_NUM(NND, "M12_SPC", M12_SPC, ACT_MOD)
99
M13 = INPUT_NUM(NND, "M13_SPC", M13_SPC, ACT_MOD)
100
M14 = INPUT_NUM(NND, "M14_SPC", M14_SPC, ACT_MOD)
101
M15 = INPUT_NUM(NND, "M15_SPC", M15_SPC, ACT_MOD)
102
M16 = INPUT_NUM(NND, "M16_SPC", M16_SPC, ACT_MOD)
103
M17 = INPUT_NUM(NND, "M17_SPC", M17_SPC, ACT_MOD)
104
M18 = INPUT_NUM(NND, "M18_SPC", M18_SPC, ACT_MOD)
105
sf = INPUT_NUM(NND, "SF", sf, ACT_MOD)
106
QCSP = DEFINE_QCSP(COD_SPC, NND, H)
107
108
RS1 = ""
109
RS2 = ""
110
RS3 = ""
111
RS4 = ""
112
RS5 = ""
113
RS6 = ""
114
RS7 = ""
115
SPCp_CODIFY = ""
116
117
118
FA = FL_AP
119
HSP = HSP '+ 2.5 ' I RIVESTIMENTI VANNO SOTTO LA SOGLIA DI 2.5 mm --> FINELINE FILO PAVIMENTO
120
121
If Len(COD_SPC) < 4 Then COD_SPC = "0" & COD_SPC
122
123
Select Case COD_SPC
124
Case "9020"
125
'Y = MR_Y(FA + M5, L, MRR)
126
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
127
'RS2 = T_RECT2(H - HSP - M4 - M3 / 2, Y, M3, M1)
128
'SPCp_CODIFY = RS1 & RS2
129
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
130
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
131
132
Case "0300", "90300", "0306", "0308", "0304", "0338", "0342", "0344", "0348", "0352", "0356", "0374", "0378", "0384", "2312", "2320", "2322", "2326", "2330", "2332", "2334", "2336", "2342", "2344", "2346", "92346", "2350", "2354", "2360", "2364", "2372", "2380", "2382", "9030"
133
If M3 = 0 Then
134
If SB > 300 Then M3 = 60 Else M3 = SB / 2
135
End If
136
137
Y = MR_Y(FA + M3, L, MRR)
138
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
139
SPCp_CODIFY = RS1
140
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
141
142
Case "0440", "9040"
143
If M6 = 0 Then
144
If SB > 300 Then M6 = 60 Else M6 = SB / 2
145
End If
146
147
Y = MR_Y(FA + M6, L, MRR)
148
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
149
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5)
150
RS3 = T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5)
151
SPCp_CODIFY = RS1 & RS2 & RS3
152
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
153
154
Case "0514", "0518", "0526", "0530", "0540", "0542", "0560", "0570", "0580", "90580", "0592", "0594", "9050", "90540", "90526"
155
If M5 = 0 Then
156
If SB > 300 Then M5 = 60 Else M5 = SB / 2
157
End If
158
159
If M4 = 3.2 Then M4 = 3.3 'AGGIUNTA GALLONI 09-04-2019
160
If M4 = 2.1 Then M4 = 2 'AGGIUNTA GALLONI 14-10-2019
161
If M4 = 4.4 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
162
If M4 = 4 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
163
If M4 = 4.5 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
164
165
Y = MR_Y(FA + M5, L, MRR)
166
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
167
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M4)
168
SPCp_CODIFY = RS1 & RS2
169
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
170
171
Case "9240"
172
Y = MR_Y(FA + M6, L, MRR)
173
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
174
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M5)
175
If MRR = 1 Then
176
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4, M5)
177
Else
178
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4, M5)
179
End If
180
SPCp_CODIFY = RS1 & RS2 & RS3
181
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
182
183
Case "9060"
184
'Y = MR_Y(FA + M4, L, MRR)
185
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
186
'RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M8) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M8)
187
'RS3 = T_RECT2(H - HSP - M6 - M5 / 2, Y, M5, M1)
188
'RS4 = T_CIRC(H - HSP - M6 - M5 / 2 - M7 / 2, Y, M8) & T_CIRC(H - HSP - M6 - M5 / 2 + M7 / 2, Y, M8)
189
'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
190
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
191
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
192
193
Case "9070"
194
Y = MR_Y(FA + M5, L, MRR)
195
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
196
197
If MRR = 1 Then
198
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - 3, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + 3, M4)
199
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - (M1 / 2 - 6.5), 13) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + (M1 / 2 - 6.5), 13)
200
RS4 = T_RECT1(H - HSP - M2 / 2 - M3 / 2 + (M3 - M2) / 2, H - HSP - M2 / 2 - M3 / 2, Y - (M1 / 2 - 6.5) - 6.5, Y - (M1 / 2 - 6.5) + 6.5)
201
RS5 = T_RECT1(H - HSP - M2 / 2 + M3 / 2 - (M3 - M2) / 2, H - HSP - M2 / 2 + M3 / 2, Y + (M1 / 2 - 6.5) - 6.5, Y + (M1 / 2 - 6.5) + 6.5)
202
Else
203
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + 3, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - 3, M4)
204
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + (M1 / 2 - 6.5), 13) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - (M1 / 2 - 6.5), 13)
205
RS4 = T_RECT1(H - HSP - M2 / 2 - M3 / 2 + (M3 - M2) / 2, H - HSP - M2 / 2 - M3 / 2, Y + (M1 / 2 - 6.5) - 6.5, Y + (M1 / 2 - 6.5) + 6.5)
206
RS5 = T_RECT1(H - HSP - M2 / 2 + M3 / 2 - (M3 - M2) / 2, H - HSP - M2 / 2 + M3 / 2, Y - (M1 / 2 - 6.5) - 6.5, Y - (M1 / 2 - 6.5) + 6.5)
207
End If
208
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
209
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
210
211
Case "9090"
212
Y = MR_Y(FA + M7, L, MRR)
213
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
214
RS2 = T_CIRC(H - HSP + M4, Y - M5 / 2, M6) & T_CIRC(H - HSP + M4, Y + M5 / 2, M6)
215
RS3 = T_CIRC(H - HSP + M4 - M3, Y - M5 / 2, M6) & T_CIRC(H - HSP + M4 - M3, Y + M5 / 2, M6)
216
SPCp_CODIFY = RS1 & RS2 & RS3
217
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
218
219
Case "1050", "9100"
220
If M5 = 0 Then
221
If SB > 300 Then M5 = 60 Else M5 = SB / 2
222
End If
223
224
Y = MR_Y(FA + M5, L, MRR)
225
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
226
RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
227
RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
228
SPCp_CODIFY = RS1 & RS2 & RS3
229
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
230
231
Case "9110"
232
'Y = MR_Y(FA + M9, L, MRR)
233
'RS1 = T_RECT2(H - HSP - M5 / 2, Y, M5, M4)
234
'RS2 = T_RECT2(H - HSP - M3 - M2 / 2, Y, M2, M1)
235
'RS3A = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y, M7)
236
'RS3B = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y + M8 / 2, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y + M8 / 2, M7)
237
'RS3C = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y - M8 / 2, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y - M8 / 2, M7)
238
'RS3 = RS3A & RS3B & RS3C
239
'RS4A = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y, M7)
240
'RS4B = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y + M8 / 2, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y + M8 / 2, M7)
241
'RS4C = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y - M8 / 2, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y - M8 / 2, M7)
242
'RS4 = RS4A & RS4B & RS4C
243
'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
244
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
245
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
246
247
Case "9160", "1600"
248
If M5 = 0 Then
249
If SB > 300 Then M5 = 60 Else M5 = SB / 2
250
End If
251
252
Y = MR_Y(FA + M5, L, MRR)
253
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
254
RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
255
RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
256
RS4 = T_CIRC(H - HSP - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M2 / 2 - M6 / 2, Y, M7)
257
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
258
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
259
260
Case "1900", "9190"
261
'If M5 = 0 Then
262
'If SB > 300 Then M5 = 60 Else M5 = SB / 2
263
'End If
264
'
265
'Y = MR_Y(FA + M5, L, MRR)
266
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
267
'RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
268
'RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
269
'RS4 = T_CIRC(H - HSP - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M2 / 2 - M6 / 2, Y, M7)
270
'
271
'RS5 = T_RECT2(H - HSP - M2 - M8 - M9 / 2, Y, M9, M12)
272
'RS6 = T_CIRC(H - HSP - M2 - M8 - M9 / 2 + M10 / 2, Y + M11 / 2, M13) & T_CIRC(H - HSP - M2 - M8 - M9 / 2 - M10 / 2, Y + M11 / 2, M13)
273
'RS7 = T_CIRC(H - HSP - M2 - M8 - M9 / 2 + M10 / 2, Y - M11 / 2, M13) & T_CIRC(H - HSP - M2 - M8 - M9 / 2 - M10 / 2, Y - M11 / 2, M13)
274
'
275
'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7
276
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
277
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
278
279
Case "9120"
280
Y = MR_Y(FA + M8, L, MRR)
281
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M3)
282
RS2 = T_CIRC(H - HSP - M2 / 2 - M4 / 2, Y, M7)
283
RS3 = T_CIRC(H - HSP - M2 / 2 + M4 / 2, Y, M7)
284
RS4 = T_RECT2(H - HSP - M5 - M6 / 2, Y, M6, M1)
285
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
286
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
287
288
Case "9130"
289
Y = MR_Y(FA + M7, L, MRR)
290
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
291
RS2 = T_CIRC(H - HSP - M2 / 2 - M4 / 2, Y, M6) & T_CIRC(H - HSP - M2 / 2 + M4 / 2, Y, M6)
292
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M5 / 2, M6) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M5 / 2, M6)
293
RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M5 / 2, M6) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M5 / 2, M6)
294
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
295
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
296
297
Case "1420", "1430", "1432", "1450", "9140"
298
TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
299
300
If InStr(1, TYS, "AB") > 0 And InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "CD") > 0 Then
301
302
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
303
304
Else
305
If M4 = 0 Then
306
If SB > 300 Then M4 = 60 Else M4 = SB / 2
307
End If
308
309
Y = MR_Y(FA + M4, L, MRR)
310
If InStr(1, TYS, "A") > 0 Then
311
RS1 = T_CIRC(H - HSP, Y, M1)
312
Else
313
RS1 = ""
314
End If
315
If InStr(1, TYS, "B") > 0 Then
316
RS2 = T_CIRC(H - HSP - M2, Y, M1)
317
Else
318
RS2 = ""
319
End If
320
If InStr(1, TYS, "C") > 0 Then
321
RS3 = T_CIRC(H - HSP - 2 * M2, Y, M1)
322
Else
323
RS3 = ""
324
End If
325
SPCp_CODIFY = RS1 & RS2 & RS3
326
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
327
End If
328
329
330
Case "9150"
331
TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
332
333
334
If InStr(1, TYS, "AB") > 0 Or InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "AC") > 0 Then
335
336
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
337
338
Else
339
Y = MR_Y(FA + M7, L, MRR)
340
If InStr(1, TYS, "A") > 0 Then
341
RS1 = T_RECT2(H - HSP, Y, M5, M6)
342
Else
343
RS1 = ""
344
End If
345
If InStr(1, TYS, "B") > 0 Then
346
RS2 = T_RECT2(H - HSP - M4, Y, M2, M1)
347
Else
348
RS2 = ""
349
End If
350
If InStr(1, TYS, "C") > 0 Then
351
RS3 = T_RECT2(H - HSP - M4 - M3, Y, M2, M1)
352
Else
353
RS3 = ""
354
End If
355
SPCp_CODIFY = RS1 & RS2 & RS3
356
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
357
End If
358
359
360
Case "1800", "1810", "1820", "9180"
361
TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
362
363
364
If InStr(1, TYS, "AB") > 0 Or InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "CD") > 0 Or InStr(1, TYS, "AC") > 0 Or InStr(1, TYS, "AD") > 0 Then
365
366
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
367
368
Else
369
370
If M1 = 0 Then
371
If SB > 300 Then M1 = 60 Else M1 = SB / 2
372
End If
373
374
Y = MR_Y(FA + M1, L, MRR)
375
If InStr(1, TYS, "A") > 0 Then
376
RS1A = T_RECT2(H - HSP - 17, Y, 34, 29)
377
RS1B = T_CIRC(H - HSP - 2.5, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5, Y - 17 + 2.5, 5)
378
RS1C = T_CIRC(H - HSP - 34 + 2.5, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5, Y - 17 + 2.5, 5)
379
RS1D = T_RECT2(H - HSP - 17, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17, Y - 17 + 5, 34 - 5, 10)
380
RS1 = RS1A & RS1B & RS1C & RS1D
381
Else
382
RS1 = ""
383
End If
384
385
If InStr(1, TYS, "B") > 0 Then
386
RS2A = T_RECT2(H - HSP - 17 - 54, Y, 34, 29)
387
RS2B = T_CIRC(H - HSP - 2.5 - 54, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 54, Y - 17 + 2.5, 5)
388
RS2C = T_CIRC(H - HSP - 34 + 2.5 - 54, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 54, Y - 17 + 2.5, 5)
389
RS2D = T_RECT2(H - HSP - 17 - 54, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 54, Y - 17 + 5, 34 - 5, 10)
390
RS2 = RS2A & RS2B & RS2C & RS2D
391
Else
392
RS2 = ""
393
End If
394
395
If InStr(1, TYS, "C") > 0 Then
396
RS3A = T_RECT2(H - HSP - 17 - 108, Y, 34, 29)
397
RS3B = T_CIRC(H - HSP - 2.5 - 108, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 108, Y - 17 + 2.5, 5)
398
RS3C = T_CIRC(H - HSP - 34 + 2.5 - 108, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 108, Y - 17 + 2.5, 5)
399
RS3D = T_RECT2(H - HSP - 17 - 108, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 108, Y - 17 + 5, 34 - 5, 10)
400
RS3 = RS3A & RS3B & RS3C & RS3D
401
Else
402
RS3 = ""
403
End If
404
405
If InStr(1, TYS, "D") > 0 Then
406
RS4A = T_RECT2(H - HSP - 17 - 162, Y, 34, 29)
407
RS4B = T_CIRC(H - HSP - 2.5 - 162, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 162, Y - 17 + 2.5, 5)
408
RS4C = T_CIRC(H - HSP - 34 + 2.5 - 162, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 162, Y - 17 + 2.5, 5)
409
RS4D = T_RECT2(H - HSP - 17 - 162, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 162, Y - 17 + 5, 34 - 5, 10)
410
RS4 = RS4A & RS4B & RS4C & RS4D
411
Else
412
RS4 = ""
413
End If
414
415
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
416
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
417
End If
418
419
420
Case "2000", "2002", "9200"
421
TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
422
423
If InStr(1, TYS, "AB") > 0 Then
424
425
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
426
427
Else
428
429
If M1 = 0 Then
430
If SB > 300 Then M1 = 60 Else M1 = SB / 2
431
End If
432
433
Y = MR_Y(FA + M1, L, MRR)
434
435
If InStr(1, TYS, "A") > 0 Then
436
RS1A = T_RECT2(H - HSP - 84 / 2, Y, 84, 47)
437
RS1B = T_CIRC(H - HSP + 3, Y, 5) & T_RECT2(H - HSP + 3 - 2.5, Y, 5, 5)
438
RS1C = T_CIRC(H - HSP - 90 + 3, Y, 5) & T_RECT2(H - HSP + 3 - 90 + 2.5, Y, 5, 5)
439
RS1 = RS1A & RS1B & RS1C
440
Else
441
RS1 = ""
442
End If
443
444
If InStr(1, TYS, "B") > 0 Then
445
RS2 = T_RECT2(H - HSP - 755 - 150.5 / 2, Y, 150.5, 50)
446
Else
447
RS2 = ""
448
End If
449
450
SPCp_CODIFY = RS1 & RS2
451
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
452
End If
453
454
455
456
Case "2200", "2210", "2220", "9220"
457
458
If M4 = 0 Then
459
If SB > 300 Then M4 = 60 Else M4 = SB / 2
460
End If
461
462
If M1 < 20 Or M2 < 20 Then MsgBox ("ATTENZIONE POSSIBILE SPACCO " & COD_SPC & " ERRATO SU CODICE " & ACT_MOD)
463
Y = MR_Y(FA + M4, L, MRR)
464
'If M3 = 6 Then M3 = 6.125 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
465
'If M3 = 3.6 Then M3 = 3.55 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
466
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1 - M3 * 2)
467
RS2 = T_CIRC(H - HSP - M3, Y + M1 / 2 - M3, M3 * 2) & T_CIRC(H - HSP - M3, Y - M1 / 2 + M3, M3 * 2)
468
RS3 = T_CIRC(H - HSP - M2 + M3, Y + M1 / 2 - M3, M3 * 2) & T_CIRC(H - HSP - M2 + M3, Y - M1 / 2 + M3, M3 * 2)
469
RS4 = T_RECT2(H - HSP - M2 / 2, Y + M1 / 2 - 5, M2 - M3 * 2, 10) & T_RECT2(H - HSP - M2 / 2, Y - M1 / 2 + 5, M2 - M3 * 2, 10)
470
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
471
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
472
473
474
Case "2800", "9280"
475
'If M10 = 0 Then
476
'If SB <= 300 Then M10 = 50 Else M10 = 60
477
'End If
478
'
479
'Y = MR_Y(FA + M10, L, MRR)
480
'If M6 = 3.5 Then M6 = 3.3 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
481
'RS1 = T_RECT2(H - HSP - M7 / 2, Y, M7, M1)
482
'RS2 = T_CIRC(H - HSP - M7 / 2 + M8 / 2, Y, M9) & T_CIRC(H - HSP - M7 / 2 - M8 / 2, Y, M9)
483
'
484
'RS3 = T_RECT2(H - HSP - M2 / 2 - 350, Y, M2, M1)
485
'RS4 = T_CIRC(H - HSP - 350 + M4, Y - M5 / 2, M6) & T_CIRC(H - HSP - 350 + M4, Y + M5 / 2, M6)
486
'RS5 = T_CIRC(H - HSP - 350 + M4 - M3, Y - M5 / 2, M6) & T_CIRC(H - HSP - 350 + M4 - M3, Y + M5 / 2, M6)
487
'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
488
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
489
490
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
491
492
Case "0102", "0130", "0142", "0152", "0170", "0180", "0196", "9010"
493
'If M3 = 0 Then
494
'If SB > 300 Then M3 = 60 Else M3 = SB / 2
495
'End If
496
'
497
'Y = MR_Y(FA + M3, L, MRR)
498
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
499
'SPCp_CODIFY = RS1
500
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
501
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
502
503
Case "9080"
504
'Y = MR_Y(FA + M4, L, MRR)
505
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
506
'SPCp_CODIFY = RS1
507
'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
508
509
MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
510
511
Case "2900", "9290"
512
Y = MR_Y(FA + M5, L, MRR)
513
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
514
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
515
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
516
SPCp_CODIFY = RS1 & RS2
517
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
518
519
Case "3000", "9300"
520
Y = MR_Y(FA + M5, L, MRR)
521
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
522
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
523
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
524
RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
525
SPCp_CODIFY = RS1 & RS2 & RS3
526
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
527
528
Case "3100", "9310"
529
Y = MR_Y(FA + M5, L, MRR)
530
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
531
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
532
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
533
RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
534
RS4 = T_RECT1(H - HSP + M6 + M7 + M8 + M9, H - HSP + M6 + M7 + M8, Y - M1 / 2, Y + M1 / 2)
535
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
536
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
537
538
Case "3200", "9320"
539
Y = MR_Y(FA + M5, L, MRR)
540
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
541
RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
542
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
543
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
544
SPCp_CODIFY = RS1 & RS2 & RS3
545
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
546
547
Case "3300"
548
Y = MR_Y(FA + M5, L, MRR)
549
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
550
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
551
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
552
RS3 = T_RECT1(H - M10, H - M10 - M8, Y - M9 / 2, Y + M9 / 2)
553
RS4 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
554
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
555
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
556
557
Case "9330"
558
Y = MR_Y(FA + M10, L, MRR)
559
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
560
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
561
'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
562
RS3 = T_RECT1(H - HSP - M9, H - HSP - M9 - M6, Y - M5 / 2, Y + M5 / 2)
563
'RS4 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
564
RS2 = T_CIRC(H - HSP + ((M3 - M2) / 2), Y, M4) & T_CIRC(H - HSP - M2 - ((M3 - M2) / 2), Y, M4) & T_CIRC(H - HSP - M9 - M6 - ((M7 - M6) / 2), Y, M8) & T_CIRC(H - HSP - M9 + ((M7 - M6) / 2), Y, M8)
565
SPCp_CODIFY = RS1 & RS3 & RS2
566
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
567
568
569
Case "3400", "9340"
570
Y = MR_Y(FA + M5, L, MRR)
571
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
572
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
573
RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
574
RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
575
RS4 = T_RECT1(H - HSP + M6 + M7 + M8 + M9, H - HSP + M6 + M7 + M8, Y - M1 / 2, Y + M1 / 2)
576
RS5 = T_RECT1(H - M12, H - M12 - M10, Y - M11 / 2, Y + M11 / 2)
577
578
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
579
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
580
581
'START NUOVI SPACCHI OTIS 03/11/2022
582
Case "50948", "50949", "50974"
583
Y = MR_Y(FA + sf / 2, L, MRR)
584
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
585
'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
586
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
587
'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
588
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
589
SPCp_CODIFY = RS1 & RS2 '& RS3
590
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
591
592
Case "50952", "50953", "51001", "50956", "50957"
593
Y = MR_Y(FA + sf / 2, L, MRR)
594
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1)
595
'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
596
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
597
'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
598
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
599
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
600
SPCp_CODIFY = RS1 & RS2 & RS3
601
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
602
603
Case "50960", "51005", "50964", "50965"
604
Y = MR_Y(FA + sf / 2, L, MRR)
605
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1)
606
'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
607
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
608
'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
609
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
610
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
611
RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y + M4 / 2, M5)
612
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
613
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
614
615
Case "50968", "51007"
616
Y = MR_Y(FA + sf / 2, L, MRR)
617
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7 - M8, Y, M2, M1)
618
'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
619
'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
620
'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
621
RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
622
RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
623
RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y + M4 / 2, M5)
624
RS4 = RS4 & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7 - M8, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7 - M8, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7 - M8, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7 - M8, Y + M4 / 2, M5)
625
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
626
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
627
628
629
Case "50950", "50951", "50975" 'A
630
Y = MR_Y(FA + sf / 2, L, MRR)
631
'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7 - M8, Y, M2, M1)
632
RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90)
633
634
RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) 'T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
635
636
SPCp_CODIFY = RS1 & RS2
637
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
638
639
640
Case "50954", "51004", "50958", "50959", "51000" 'A+B
641
Y = MR_Y(FA + sf / 2, L, MRR)
642
643
RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90)
644
645
RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7)
646
647
SPCp_CODIFY = RS1 & RS2
648
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
649
650
651
Case "50962", "51006", "50967" 'A+B+C
652
Y = MR_Y(FA + sf / 2, L, MRR)
653
654
RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5, Y, 18, 6.5, 90)
655
656
RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5, Y + M2 / 2, M7)
657
658
SPCp_CODIFY = RS1 & RS2
659
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
660
661
662
Case "50970", "51008" 'A+B+C+D
663
Y = MR_Y(FA + sf / 2, L, MRR)
664
665
RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5 - M6, Y, 18, 6.5, 90)
666
667
RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5 - M6, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5 - M6, Y + M2 / 2, M7)
668
669
SPCp_CODIFY = RS1 & RS2
670
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
671
672
673
Case "50972", "50973"
674
Y = MR_Y(FA + sf / 2, L, MRR)
675
676
RS1 = T_SLOT(H - HSP - M1 + M2, Y, 18, 6.5, 90)
677
678
RS2 = T_CIRC(H - HSP, Y, M4) & T_CIRC(H - HSP - M1, Y - M3 / 2, M4) & T_CIRC(H - HSP - M1, Y + M3 / 2, M4)
679
680
SPCp_CODIFY = RS1 & RS2
681
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
682
683
684
Case "50981", "50982"
685
Y = MR_Y(FA + sf / 2, L, MRR)
686
687
RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
688
689
RS2 = T_CIRC(H - HSP - ((M2 - M3) / 2), Y - M4 / 2, M5) & T_CIRC(H - HSP - ((M2 - M3) / 2), Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 + ((M2 - M3) / 2), Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 + ((M2 - M3) / 2), Y + M4 / 2, M5)
690
691
SPCp_CODIFY = RS1 & RS2
692
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
693
694
Case "50983"
695
Y = MR_Y(FA + sf / 2, L, MRR)
696
697
RS1 = T_RECT2(H - HSP - M6 - M2 / 2, Y, M2, M1)
698
699
RS2 = T_SLOT(H - HSP - M3 - M8 + M9, Y, 18, 6.5, 90)
700
701
RS3 = T_CIRC(H - HSP, Y - M12, M11) & T_CIRC(H - HSP, Y + M5 / 2, M11) & T_CIRC(H - HSP - M3, Y - M4 / 2, M11) & T_CIRC(H - HSP - M3, Y + M4 / 2, M11) & T_CIRC(H - HSP - M3 - M7, Y, M11) & T_CIRC(H - HSP - M3 - M7 - M8, Y - M10 / 2, M11) & T_CIRC(H - HSP - M3 - M7 - M8, Y + M10 / 2, M11)
702
703
SPCp_CODIFY = RS1 & RS2 & RS3
704
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
705
706
Case "50991", "50992"
707
Y = MR_Y(FA + sf / 2, L, MRR)
708
709
710
RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90)
711
712
RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M4) & T_CIRC(H - HSP, Y + M2 / 2, M4)
713
714
RS3 = T_SLOT(H - HSP - M1 - M5 - M6 + M7, Y, 18, 6.5, 90)
715
716
RS4 = T_CIRC(H - HSP - M1 - M5 - M6, Y - M8 / 2, M9) & T_CIRC(H - HSP - M1 - M5 - M6, Y + M8 / 2, M9) & T_CIRC(H - HSP - M1 - M5, Y, M9)
717
718
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
719
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
720
721
Case "50984"
722
Y = MR_Y(FA + sf / 2, L, MRR)
723
724
RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1)
725
726
RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
727
728
RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
729
730
SPCp_CODIFY = RS1 & RS2
731
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
732
733
Case "50986", "50988"
734
Y = MR_Y(FA + sf / 2, L, MRR)
735
736
RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1)
737
738
RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
739
RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
740
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
741
742
SPCp_CODIFY = RS1 & RS2
743
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
744
745
Case "50990", "50996"
746
Y = MR_Y(FA + sf / 2, L, MRR)
747
748
RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M2 / 2, Y, M2, M1)
749
750
RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
751
RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
752
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
753
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
754
755
SPCp_CODIFY = RS1 & RS2
756
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
757
758
Case "50998"
759
Y = MR_Y(FA + sf / 2, L, MRR)
760
761
RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M14 - M2 / 2, Y, M2, M1)
762
763
RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
764
RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
765
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
766
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
767
RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
768
769
SPCp_CODIFY = RS1 & RS2
770
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
771
772
Case "50985"
773
Y = MR_Y(FA + sf / 2, L, MRR)
774
775
RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
776
777
RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90)
778
779
RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
780
781
SPCp_CODIFY = RS1 & RS2 & RS3
782
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
783
784
Case "50987", "50989"
785
Y = MR_Y(FA + sf / 2, L, MRR)
786
787
RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
788
789
RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90)
790
791
RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
792
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
793
794
SPCp_CODIFY = RS1 & RS2 & RS3
795
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
796
797
Case "50995", "50997"
798
Y = MR_Y(FA + sf / 2, L, MRR)
799
800
RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
801
802
RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M1, Y, 18, 6.5, 90)
803
804
RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
805
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
806
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5, Y + M2 / 2, M7)
807
808
SPCp_CODIFY = RS1 & RS2 & RS3
809
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
810
811
Case "50999"
812
Y = MR_Y(FA + sf / 2, L, MRR)
813
814
RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
815
816
RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M6 - M1, Y, 18, 6.5, 90)
817
818
RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
819
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
820
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5, Y + M2 / 2, M7)
821
RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5 - M6, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5 - M6, Y + M2 / 2, M7)
822
823
SPCp_CODIFY = RS1 & RS2 & RS3
824
MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
825
826
'END NUOVI SPACCHI OTIS
827
828
829
Case "9932", "9933", "9934"     'SPACCO WITTUR ZOO
830
831
832
'DS = 14
833
'Y = MR_Y(L - (FA + DS), L, MRR)
834
835
If MRR = 2 Then Y = 70.2 'LEFT
836
If MRR = 1 Then Y = 74.2 'RIGHT
837
838
RS1 = T_CIRC(H - 950 - 2.5, Y + 0.5, 3) & T_CIRC(H - 950, Y + 0.5 + 27.5, 3) & T_CIRC(H - 950 - 2.5, Y + 0.5 + 55, 3)
839
RS2 = T_CIRC(H - 950 + 2.5 - 230, Y + 0.5, 3) & T_CIRC(H - 950 - 230, Y + 0.5 + 27.5, 3) & T_CIRC(H - 950 + 2.5 - 230, Y + 0.5 + 55, 3)
840
841
RS3 = T_RECT1(H - 950 - 230 + 115 - 8, H - 950 - 230 + 115 + 8, Y + 56 - 3, Y + 3)
842
RS4 = T_RECT1(H - 950 - 230 + 115, H - 950 - 230 + 115 + 20, Y + 10.5 + 3, Y + 10.5 + 35 - 3)
843
RS5 = T_CIRC(H - 950 - 230 + 115 - 5, Y + 56 - 3, 6) & T_CIRC(H - 950 - 230 + 115 + 5, Y + 56 - 3, 6) & T_CIRC(H - 950 - 230 + 115 - 5, Y + 3, 6) & T_CIRC(H - 950 - 230 + 115 + 5, Y + 3, 6)
844
RS6 = T_CIRC(H - 950 - 230 + 115 - 8 + 28 - 3, Y + 10.5 + 3, 6) & T_CIRC(H - 950 - 230 + 115 - 8 + 28 - 3, Y + 56 - 10.5 - 3, 6)
845
RS7 = T_RECT1(H - 950 - 230 + 115 - 5, H - 950 - 230 + 115 + 5, Y, Y + 10) & T_RECT1(H - 950 - 230 + 115 - 5, H - 950 - 230 + 115 + 5, Y + 56, Y + 56 - 10)
846
RS8 = T_RECT1(H - 950 - 230 + 115 + 17, H - 950 - 230 + 115 + 7, Y + 10.5, Y + 10.5 + 10) & T_RECT1(H - 950 - 230 + 115 + 17, H - 950 - 230 + 115 + 7, Y + 10.5 + 35, Y + 10.5 + 35 - 10)
847
RS9 = T_RAD(H - 950 - 230 + 115 + 8, Y + 10.5, 2) & T_RAD(H - 950 - 230 + 115 + 8, Y + 10.5 + 35, 3)
848
If COD_SPC = "9933" Then
849
If MRR = 1 Then Y2 = 25 + 40 + 45 - 4.8 'LEFT
850
If MRR = 2 Then Y2 = 15 + 40 + 45 - 4.8 'RIGHT
851
RS10 = T_CIRC(H - 150, Y2, 19)
852
Else
853
RS10 = ""
854
End If
855
If COD_SPC = "9934" Then
856
If MRR = 1 Then Y2 = 25 + 40 + 45 - 4.8 'LEFT
857
If MRR = 2 Then Y2 = 15 + 40 + 45 - 4.8 'RIGHT
858
RS10 = T_CIRC(H - 150, Y2, 19) & T_CIRC(H - 230, Y2, 19)
859
Else
860
RS10 = ""
861
End If
862
863
SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7 & RS8 & RS9 & RS10
864
QCSP = H - (950 + 230 / 2)
865
866
Case "9999"
867
SPCp_CODIFY = ""
868
869
Case Else
870
MsgBox ("CODICE SPACCO " & COD_SPC & " NON CODIFICATO SU " & ACT_MOD)
871
End Select
872
873
874
875
876
End Function
877
878
879
Function SPCi_CODIFY(ByVal NND As Integer, ByVal CD_IN As String, ByVal FA As Double, ByVal H As Double, ByVal L As Double, ByVal HTRV As Double) As String
880
881
882
883
If CD_IN = "50033" Then CD_IN = "2704"
884
If CD_IN = "50102" Then CD_IN = "2706"
885
886
887
M1 = INPUT_NUM(NND, "M1_SPC", M1_SPC, ACT_MOD)
888
If M1 = 0 Or M1 = -1 Then Exit Function
889
HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
890
M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
891
M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
892
M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
893
M5 = INPUT_NUM(NND, "M5_SPC", M5_SPC, ACT_MOD)
894
M6 = INPUT_NUM(NND, "M6_SPC", M6_SPC, ACT_MOD)
895
M7 = INPUT_NUM(NND, "M7_SPC", M7_SPC, ACT_MOD)
896
897
RT1 = ""
898
RT2 = ""
899
RT3 = ""
900
RT4 = ""
901
SPCi_CODIFY = ""
902
903
904
'If LSX <> LDX Then MsgBox "ATTENZIONE ALLA CENTRATURA DELLO SPACCO SU TRAVERSA"
905
XX = H / 2 '- (LSX - LDX) / 2
906
907
908
Select Case CD_IN
909
Case "1702", "1750", "2700", "2702", "2704", "2706", "9270"
910
RT1 = T_RECT2(XX, FA - M4 - M2 / 2, M1, M2)
911
If M3 > 0 Then
912
RT2 = T_RECT1(XX - M5 / 2, XX + M5 / 2, FA - M4 - 10, FA - M4 + M3)
913
Else
914
RT2 = ""
915
End If
916
SPCi_CODIFY = RT1 & RT2
917
MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
918
919
Case "2500", "2560", "9250"
920
RT1 = T_RECT2(XX, FA - M4 - M2 / 2, M1, M2)
921
RT2 = T_CIRC(XX - M3 / 2, FA - M4 - M2 / 2, M5) & T_CIRC(XX + M3 / 2, FA - M4 - M2 / 2, M5)
922
If M6 > 0 Then
923
RT3 = T_CIRC(XX - M3 / 2, FA - M4 + M6 - M2 / 2, M5) & T_CIRC(XX + M3 / 2, FA - M4 + M6 - M2 / 2, M5)
924
Else
925
RT3 = ""
926
End If
927
SPCi_CODIFY = RT1 & RT2 & RT3
928
MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
929
930
Case "2600", "9260"
931
RT1 = T_RECT2(XX, FA - M5, M1, M2)
932
RT2 = T_RECT1(XX - M3 / 2, XX - M3 / 2 + ((M3 - M1) / 2), FA - M5 - M4 / 2, FA - M5 + M4 / 2)
933
RT3 = T_RECT1(XX + M3 / 2 - ((M3 - M1) / 2), XX + M3 / 2, FA - M5 - M4 / 2, FA - M5 + M4 / 2)
934
SPCi_CODIFY = RT1 & RT2 & RT3
935
MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
936
937
Case "2100", "9210"
938
RT1 = T_RECT2(XX, FA - M5, M1, M2)
939
RT2 = T_RECT1(XX - M3 / 2, XX - M3 / 2 + ((M3 - M1) / 2), FA - M5 - M4 / 2, FA - M5 + M4 / 2)
940
RT3 = T_RECT1(XX + M3 / 2 - ((M3 - M1) / 2), XX + M3 / 2, FA - M5 - M4 / 2, FA - M5 + M4 / 2)
941
RT4 = T_CIRC(XX - M6 / 2, FA - M5, M7) & T_CIRC(XX + M6 / 2, FA - M5, M7)
942
SPCi_CODIFY = RT1 & RT2 & RT3 & RT4
943
MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
944
945
Case "9999"
946
SPCi_CODIFY = ""
947
948
Case Else
949
MsgBox ("CODICE SPACCO INDICATORE " & CD_IN & " NON CODIFICATO SU " & ACT_MOD)
950
End Select
951
952
953
954
End Function
955
956
957
958
959
Function SPC_PULS(ByVal CMM As String, ByVal COD_SP As Single, ByVal FA As Double, ByVal H As Double, ByVal SVIL As Double, ByVal SDX As Byte, ByVal LM As Double, ByVal OFST As Single) As String
960
961
If OFST <> 0 Then MsgBox ("ATTENZIONE OFFSET SULLO SPACCO SBAGLIATO SUL CODICE " & ACT_MOD)
962
'*********************************************************
963
SPC_PULS = SPCp_CODIFY(CMM, COD_SP, FA, H, SVIL, SDX, LM)
964
If SPC_PULS <> "" Then Exit Function
965
'*********************************************************
966
967
968
969
QCSP = 0
970
SPC_PULS = Empty
971
Spclist = FILELIST(SPC_FOLD, True, "*")
972
973
SPC_FOUND = 0
974
TYCK = ""
975
For i = 1 To UBound(Spclist)
976
977
CDCK = Right(Spclist(i), InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare) - 1)
978
CDCK = Left(CDCK, InStr(1, CDCK, ".", vbBinaryCompare) - 1)
979
980
If CDCK = COD_SP Then
981
Select Case SPC_FOUND
982
Case 0
983
SPC_FOUND = 1
984
NF_SP = Spclist(i)
985
TYCK = Left(Spclist(i), Len(Spclist(i)) - InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare))
986
TYCK = Right(TYCK, InStr(1, StrReverse(TYCK), "\", vbBinaryCompare) - 1)
987
Case 1
988
MsgBox "ERRORE SU MODULO SPACCHI"
989
Case Else
990
MsgBox "ERRORE SU MODULO SPACCHI"
991
End Select
992
End If
993
Next i
994
995
996
If SPC_FOUND = 0 And COD_SP <> "9999" Then MsgBox "SPACCO " & COD_SP & " NON TROVATO", vbExclamation
997
998
Select Case TYCK
999
1000
Case "T01"                 'SPACCO RETTANGOLARE SINGOLO O MULTIPLO
1001
NFDATA = FreeFile
1002
Open NF_SP For Input As #NFDATA
1003
Line Input #NFDATA, ST_COD
1004
Line Input #NFDATA, VOID_ROW
1005
Line Input #NFDATA, lS
1006
MLTSPC:
1007
Line Input #NFDATA, HS
1008
Line Input #NFDATA, QS
1009
lS = Val(lS)
1010
HS = Val(HS)
1011
QS = Val(QS) + OFST
1012
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1013
Y = MR_Y(FA + RCC, SVIL, SDX)
1014
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1015
SPC_PULS = SPC_PULS & RS1
1016
lS = ""
1017
If QCSP = 0 Then QCSP = H - QS - HS / 2
1018
If Not EOF(NFDATA) Then Line Input #NFDATA, lS
1019
If lS <> "" Then
1020
SPC_PULS = SPC_PULS
1021
GoTo MLTSPC
1022
End If
1023
Close #NFDATA
1024
GoTo END_SPC
1025
1026
1027
Case "T02"
1028
NFDATA = FreeFile
1029
Open NF_SP For Input As #NFDATA
1030
Line Input #NFDATA, ST_COD
1031
Line Input #NFDATA, VOID_ROW
1032
Line Input #NFDATA, lS
1033
Line Input #NFDATA, HS
1034
Line Input #NFDATA, QS
1035
Line Input #NFDATA, DIAM
1036
Line Input #NFDATA, DISTF
1037
Close #NFDATA
1038
lS = Val(lS)
1039
HS = Val(HS)
1040
QS = Val(QS) + OFST
1041
DIAM = Val(DIAM)
1042
DISTF = Val(DISTF)
1043
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1044
Y = MR_Y(FA + RCC, SVIL, SDX)
1045
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1046
RS2 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y, DIAM)
1047
RS3 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y, DIAM)
1048
SPC_PULS = RS1 & RS2 & RS3
1049
QCSP = H - QS - HS / 2
1050
GoTo END_SPC
1051
1052
1053
1054
Case "T03"
1055
NFDATA = FreeFile
1056
Open NF_SP For Input As #NFDATA
1057
Line Input #NFDATA, ST_COD
1058
Line Input #NFDATA, VOID_ROW
1059
Line Input #NFDATA, lS
1060
Line Input #NFDATA, HS
1061
Line Input #NFDATA, QS
1062
Line Input #NFDATA, AI
1063
Line Input #NFDATA, LI
1064
Close #NFDATA
1065
lS = Val(lS)
1066
HS = Val(HS)
1067
QS = Val(QS) + OFST
1068
AI = Val(AI)
1069
LI = Val(LI)
1070
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1071
Y = MR_Y(FA + RCC, SVIL, SDX)
1072
SVP = 4 'SOVRAPPOSIZIONE SPACCHI LATERALI
1073
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1074
RS2 = T_RECT2(H - QS + (AI - SVP) / 2, Y, AI + SVP, LI)
1075
RS3 = T_RECT2(H - QS - HS - (AI - SVP) / 2, Y, AI + SVP, LI)
1076
SPC_PULS = RS1 & RS2 & RS3
1077
QCSP = H - QS - HS / 2
1078
GoTo END_SPC
1079
1080
1081
Case "T04"
1082
NFDATA = FreeFile
1083
Open NF_SP For Input As #NFDATA
1084
Line Input #NFDATA, ST_COD
1085
Line Input #NFDATA, VOID_ROW
1086
Line Input #NFDATA, QS
1087
Line Input #NFDATA, DIAM
1088
Close #NFDATA
1089
QS = Val(QS) + OFST
1090
DIAM = Val(DIAM)
1091
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1092
Y = MR_Y(FA + RCC, SVIL, SDX)
1093
RS1 = T_CIRC(H - QS, Y, DIAM)
1094
SPC_PULS = RS1
1095
QCSP = H - QS
1096
GoTo END_SPC
1097
1098
1099
1100
Case "T05"
1101
NFDATA = FreeFile
1102
Open NF_SP For Input As #NFDATA
1103
Line Input #NFDATA, ST_COD
1104
Line Input #NFDATA, VOID_ROW
1105
Line Input #NFDATA, NS   'NUMERO SPACCHI
1106
NS = Val(NS)
1107
For KT = 1 To NS
1108
Line Input #NFDATA, lS
1109
Line Input #NFDATA, HS
1110
Line Input #NFDATA, RR
1111
Line Input #NFDATA, QS
1112
lS = Val(lS)
1113
HS = Val(HS)
1114
RR = Val(RR)
1115
QS = Val(QS) + OFST
1116
If LM > 300 Then DS = 60 - lS / 2 Else DS = LM / 2 - lS / 2
1117
DD = RR * 2
1118
LSR = lS - DD
1119
HSR = HS - DD
1120
LL = HSR
1121
HH = lS
1122
LUT = 10
1123
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1124
RS1 = T_RECT2(H - QS - HS / 2, Y, HSR, lS)
1125
RS2 = T_RECT2(H - QS - LUT / 2, Y, LUT, LSR)
1126
RS3 = T_RECT2(H - QS - HS + LUT / 2, Y, LUT, LSR)
1127
RS4 = T_CIRC(H - QS - RR, Y + lS / 2 - RR, DD)
1128
RS5 = T_CIRC(H - QS - RR, Y - lS / 2 + RR, DD)
1129
RS6 = T_CIRC(H - QS - HS + RR, Y + lS / 2 - RR, DD)
1130
RS7 = T_CIRC(H - QS - HS + RR, Y - lS / 2 + RR, DD)
1131
SPC_PULS = SPC_PULS & RS2 & RS3 & RS1 & RS4 & RS5 & RS6 & RS7
1132
If QCSP = 0 Then QCSP = H - QS - HS / 2
1133
Next KT
1134
Close #NFDATA
1135
GoTo END_SPC
1136
1137
1138
Case "T06"                     'SPACCHI OTIS
1139
NFDATA = FreeFile
1140
Open NF_SP For Input As #NFDATA
1141
Line Input #NFDATA, ST_COD
1142
Line Input #NFDATA, VOID_ROW
1143
Line Input #NFDATA, NS   'NUMERO SPACCHI
1144
Line Input #NFDATA, TPS  'TIPO SPACCHI
1145
NS = Val(NS)
1146
For KT = 1 To NS
1147
Line Input #NFDATA, lS
1148
Line Input #NFDATA, HS
1149
Line Input #NFDATA, DMF  'DIAMETRO FORI
1150
Line Input #NFDATA, IX   'INTERASSE ORIZZONTALE FRA LA COPPIA DI FORI INF
1151
Line Input #NFDATA, QS   'QUOTA CENTRO SPACCO RETTANGOLARE
1152
Line Input #NFDATA, DYI  'DISTANZA VERTICALE DA CENTRO SPACCO RETTANGOLARE A COPPIA FORI INFERIORI
1153
Line Input #NFDATA, DYS  'DISTANZA VERTICALE DA CENTRO SPACCO RETTANGOLARE FORO SUPERIORE
1154
lS = Val(lS)
1155
HS = Val(HS)
1156
IX = Val(IX)
1157
QS = Val(QS) + OFST
1158
DYI = Val(DYI)
1159
DYS = Val(DYS)
1160
DMF = Val(DMF)
1161
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1162
Y = MR_Y(FA + RCC, SVIL, SDX)
1163
'RS1 = T_RECT2(H - QS, Y, HS, lS)
1164
RS1 = T_SLOT(H - QS, Y, lS, HS, 90)
1165
RS2 = T_CIRC(H - QS + DYI, Y - IX / 2, DMF)
1166
RS3 = T_CIRC(H - QS + DYI, Y + IX / 2, DMF)
1167
RS4 = T_CIRC(H - QS - DYS, Y, DMF)
1168
SPC_PULS = SPC_PULS & RS1 & RS2 & RS3 & RS4
1169
QCSP = H - QS - HS
1170
Next KT
1171
GoTo END_SPC
1172
1173
1174
1175
Case "T07"                       'SPACCO RETTANGOLO CON 3+3 FORI SIMM. DIAM4.5
1176
NFDATA = FreeFile
1177
Open NF_SP For Input As #NFDATA
1178
Line Input #NFDATA, ST_COD
1179
Line Input #NFDATA, VOID_ROW
1180
Line Input #NFDATA, lS
1181
Line Input #NFDATA, HS
1182
Line Input #NFDATA, QS
1183
Line Input #NFDATA, M4
1184
Line Input #NFDATA, DISTF
1185
Close #NFDATA
1186
DIAM = 4.5
1187
lS = Val(lS)
1188
HS = Val(HS)
1189
QS = Val(QS) + OFST
1190
DIAM = Val(DIAM)
1191
DISTF = Val(DISTF)
1192
If LM > 300 Then RCC = 60 Else RCC = LM / 2
1193
Y = MR_Y(FA + RCC, SVIL, SDX)
1194
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1195
RS2 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y, DIAM)
1196
RS3 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y + M4 / 2, DIAM)
1197
RS4 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y - M4 / 2, DIAM)
1198
RS5 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y, DIAM)
1199
RS6 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y + M4 / 2, DIAM)
1200
RS7 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y - M4 / 2, DIAM)
1201
SPC_PULS = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7
1202
QCSP = H - QS - HS / 2
1203
GoTo END_SPC
1204
1205
1206
Case "T08"                       'SPACCO SPAGNA OTIS COPPIA FORI + ASOLA + FORO SINGOLO
1207
NFDATA = FreeFile
1208
Open NF_SP For Input As #NFDATA
1209
Line Input #NFDATA, ST_COD
1210
MsgBox "CONTROLLARE SPACCO " & ST_COD
1211
If COD_SP <> "50390" Then MsgBox "ATTENZIONE POSSIBILE CHE IL PEZZO CON SPACCO " & COD_SP & " DEBBA PASSARE PCA, CONTROLLARE!"
1212
Line Input #NFDATA, VOID_ROW
1213
Line Input #NFDATA, NS   'NUMERO SPACCHI
1214
NS = Val(NS)
1215
For KT = 1 To NS
1216
Line Input #NFDATA, Q_AS
1217
Line Input #NFDATA, LAR_AS
1218
Line Input #NFDATA, ALT_AS
1219
Line Input #NFDATA, q_cf
1220
Line Input #NFDATA, INT_FOR
1221
Line Input #NFDATA, DIM_FORI
1222
Line Input #NFDATA, q_f
1223
Line Input #NFDATA, DIM_FORO
1224
1225
Q_AS = Val(Q_AS)
1226
LAR_AS = Val(LAR_AS)
1227
ALT_AS = Val(ALT_AS)
1228
q_cf = Val(q_cf)
1229
DIM_FORI = Val(DIM_FORI)
1230
q_f = Val(q_f)
1231
DIM_FORO = Val(DIM_FORO)
1232
1233
Y = MR_Y(FA + LM / 2, SVIL, SDX)
1234
RS1 = T_CIRC(H - q_f, Y, DIM_FORO)
1235
RS2 = T_CIRC(H - Q_AS, Y - LAR_AS / 2 + 3.5, ALT_AS)
1236
RS3 = T_CIRC(H - Q_AS, Y + LAR_AS / 2 - 3.5, ALT_AS)
1237
RS4 = T_RECT2(H - Q_AS, Y, ALT_AS, LAR_AS - ALT_AS)
1238
RS5 = T_CIRC(H - q_cf, Y - INT_FOR / 2, DIM_FORI)
1239
If KT = NS Then RS6 = T_CIRC(H - q_cf, Y + INT_FOR / 2, DIM_FORI) Else RS6 = T_CIRC(H - q_cf, Y + INT_FOR / 2, DIM_FORI)
1240
SPC_PULS = SPC_PULS & RS1 & RS2 & RS3 & RS4 & RS5 & RS6
1241
QCSP = H - (q_cf + (q_f - q_cf) / 2)
1242
1243
Next KT
1244
Close #NFDATA
1245
GoTo END_SPC
1246
1247
1248
1249
1250
End Select
1251
1252
1253
SPC_INSERT:
1254
1255
'******************************************************
1256
If InStr(1, COD_SP, "999") > 0 And SPC_R_OLD <> "" Then 'RIPETERE LO SPACCO PRECEDENTE
1257
SPC_OLD = MsgBox("VUOI INSERIRE LO SPACCO PRECEDENTE?", vbYesNo)
1258
If SPC_OLD = vbYes Then
1259
SPC_R = SPC_R_OLD
1260
QCSP = QCSP_OLD
1261
SPC_PULS = SPC_R
1262
GoTo END_SPC
1263
End If
1264
End If
1265
'******************************************************
1266
1267
CUR_COM = CMM
1268
UserForm2.Show
1269
1270
If PULS_TYPE = 0 Then Exit Function
1271
CNTR = Empty
1272
RSN = MsgBox("SPACCO CENTRATO SU MONTANTE?", vbYesNo)
1273
Select Case RSN
1274
Case vbYes
1275
CNTR = 1
1276
Case vbNo
1277
CNTR = 0
1278
End Select
1279
1280
1281
1282
'*****************************************PER REPORT SPACCHI
1283
RP = RP + 1
1284
RPT_SPC(RP, 1, 1) = INFO_DAT(CMM, 0, 2)
1285
RPT_SPC(RP, 1, 2) = "COMMESSA"
1286
If CNTR = 1 Then RPT_SPC(RP, 2, 1) = "SI" Else RPT_SPC(RP, 2, 1) = "NO"
1287
RPT_SPC(RP, 2, 2) = "SPACCO CENTRATO SU MONTANTE?"
1288
RP2 = 2
1289
'***********************************************************
1290
1291
1292
1293
1294
Select Case PULS_TYPE
1295
1296
Case 1       'SPACCO RETTANGOLARE SINGOLO
1297
QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
1298
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1299
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1300
Select Case CNTR
1301
Case 0
1302
DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
1303
Case 1
1304
DS = (LM - lS) / 2
1305
Case Else
1306
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1307
Exit Function
1308
End Select
1309
1310
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1311
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1312
SPC_R = RS1
1313
QCSP = H - QS - HS / 2
1314
1315
Case 2      'SPACCO RETTANGOLARE SINGOLO CON COPPIA DI FORI CENTRATI
1316
QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
1317
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1318
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1319
1320
Select Case CNTR
1321
Case 0
1322
DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
1323
Case 1
1324
DS = (LM - lS) / 2
1325
Case Else
1326
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1327
Exit Function
1328
End Select
1329
1330
1331
KF = INPUT_VAL(1, "INTERASSE VERTICALE FORI", KF, "")
1332
DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
1333
1334
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1335
1336
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1337
RS2 = T_CIRC(H - QS - HS / 2 - KF / 2, Y, DF)
1338
RS3 = T_CIRC(H - QS - HS / 2 + KF / 2, Y, DF)
1339
SPC_R = RS1 & RS2 & RS3
1340
QCSP = H - QS - HS / 2
1341
1342
Case 3
1343
QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
1344
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1345
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1346
LI = INPUT_VAL(1, "LARGHEZZA INCAVO", LI, "")
1347
1348
Select Case CNTR
1349
Case 0
1350
DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
1351
Case 1
1352
DS = (LM - lS) / 2
1353
Case Else
1354
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1355
Exit Function
1356
End Select
1357
1358
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1359
RS1 = T_RECT2(H - QS - HS - 1, Y, 10, LI)
1360
RS2 = T_RECT2(H - QS + 1, Y, 10, LI)
1361
RS3 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1362
SPC_R = RS1 & RS2 & RS3
1363
QCSP = H - QS - HS / 2
1364
1365
1366
Case 4      'SPACCO RETTANGOLO RACCORDATO
1367
QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
1368
HS = INPUT_VAL(1, "ALTEZZA SPACCO", lS, "")
1369
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1370
1371
Select Case CNTR
1372
Case 0
1373
DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
1374
Case 1
1375
DS = (LM - lS) / 2
1376
Case Else
1377
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1378
Exit Function
1379
End Select
1380
1381
RR = INPUT_VAL(1, "RAGGIO RACCORDI", RR, "")
1382
1383
DD = 2 * RR
1384
LSR = lS - DD
1385
HSR = HS - DD
1386
1387
Select Case HSR - LSR
1388
Case Is > 0
1389
LL = HS
1390
HH = LSR
1391
Case Is <= 0
1392
LL = HSR
1393
HH = lS
1394
End Select
1395
1396
RS1 = T_RECT2(H - QS - HS / 2, MR_Y(FA + DS + lS / 2, SVIL, SDX), HH, LL)
1397
LUT = 10
1398
1399
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1400
Select Case HSR - LSR
1401
1402
Case Is > 0
1403
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, LSR)
1404
RS2 = T_RECT2(H - QS - HS / 2, Y + lS / 2 - LUT / 2, HSR, LUT)
1405
RS3 = T_RECT2(H - QS - HS / 2, Y - lS / 2 + LUT / 2, HSR, LUT)
1406
Case Is <= 0
1407
RS1 = T_RECT2(H - QS - HS / 2, Y, HSR, lS)
1408
RS2 = T_RECT2(H - QS - LUT / 2, Y, LUT, LSR)
1409
RS3 = T_RECT2(H - QS - HS + LUT / 2, Y, LUT, LSR)
1410
End Select
1411
1412
RS4 = T_CIRC(H - QS - RR, Y + lS / 2 - RR, DD)
1413
RS5 = T_CIRC(H - QS - RR, Y - lS / 2 + RR, DD)
1414
RS6 = T_CIRC(H - QS - HS + RR, Y + lS / 2 - RR, DD)
1415
RS7 = T_CIRC(H - QS - HS + RR, Y - lS / 2 + RR, DD)
1416
SPC_R = RS4 & RS5 & RS6 & RS7 & RS1 & RS2 & RS3
1417
QCSP = H - QS - HS / 2
1418
1419
SSPP = MsgBox("VUOI INSERIRE TONDI IN ALTO E IN BASSO?", vbYesNo)
1420
If SSPP = 6 Then
1421
DDM = INPUT_VAL(1, "DISTANZA FORO DA CENTRO SPACCO", DDM, "")
1422
DDM2 = INPUT_VAL(1, "DIAMTERO FORI", DDM2, "")
1423
1424
RS8 = T_CIRC(H - QS - HS / 2 + DDM, Y, DDM2)
1425
RS9 = T_CIRC(H - QS - HS / 2 - DDM, Y, DDM2)
1426
SPC_R = SPC_R & RS8 & RS9
1427
1428
End If
1429
1430
Case 5      'SPACCO STAR 30_5
1431
1432
QS = 1000
1433
QS = Val(INPUT_VAL(1, "QUOTA CENTRO SPACCO DA TERRA", QS, "")) + OFST
1434
DD = InputBox("DIAMETRO FORO")
1435
DD = Val(DD)
1436
'**********************REPORT SPACCHI
1437
RP2 = RP2 + 1
1438
RPT_SPC(RP, RP2, 1) = DD
1439
RPT_SPC(RP, RP2, 2) = "DIAMETRO FORO"
1440
'************************************
1441
Select Case CNTR
1442
Case 0
1443
dc = INPUT_VAL(1, "DISTANZA CENTRO SPACCO DA APERTURA", dc, "")
1444
Case 1
1445
dc = LM / 2
1446
Case Else
1447
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1448
Exit Function
1449
End Select
1450
1451
X = H - QS
1452
Y = MR_Y(FA + dc, SVIL, SDX)
1453
1454
'SPC_R = T_CIRC(X, Y, DD)
1455
SSPP = MsgBox("VUOI LE SPIZZE SULLO SPACCO TONDO?", vbYesNo)
1456
If SSPP = 6 Then
1457
'MsgBox ("CONTROLLARE SPACCO STAR")
1458
SPC1 = T_CIRC(X, Y, DD)
1459
RDR = DD / 2 - 4 + 1.9 - 0.5
1460
SPC2 = T_SPECIAL(X + RDR, Y, "RAG-3", 0) & T_SPECIAL(X - RDR, Y, "RAG-3", 0) & T_SPECIAL(X, Y + RDR, "RAG-3", 0) & T_SPECIAL(X, Y - RDR, "RAG-3", 0)
1461
SPC_R = SPC1 & SPC2
1462
Else
1463
SPC_R = T_CIRC(X, Y, DD)
1464
End If
1465
1466
QCSP = X
1467
1468
1469
Case 6      'SPACCO RETTANGOLARE SINGOLO CON 2 COPPIE DI FORI SIMMETRICI
1470
QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
1471
QS = QS '+ 2.5
1472
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1473
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1474
1475
Select Case CNTR
1476
Case 0
1477
DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
1478
Case 1
1479
DS = (LM - lS) / 2
1480
Case Else
1481
MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
1482
Exit Function
1483
End Select
1484
1485
KF = INPUT_VAL(1, "INTERASSE VERTICALE FORI", KF, "")
1486
ORF = INPUT_VAL(1, "INTERASSE ORIZZONTALE FORI", ORF, "")
1487
DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
1488
1489
Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
1490
YOR1 = Y - ORF / 2
1491
YOR2 = Y + ORF / 2
1492
1493
RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
1494
RS2 = T_CIRC(H - QS - HS / 2 - KF / 2, YOR1, DF)
1495
RS3 = T_CIRC(H - QS - HS / 2 - KF / 2, YOR2, DF)
1496
RS4 = T_CIRC(H - QS - HS / 2 + KF / 2, YOR1, DF)
1497
RS5 = T_CIRC(H - QS - HS / 2 + KF / 2, YOR2, DF)
1498
SPC_R = RS1 & RS2 & RS3 & RS4 & RS5
1499
QCSP = H - QS - HS / 2
1500
MsgBox ("CONTROLLARE SPACCO RETTANGOLARE SINGOLO CON 2 COPPIE DI FORI SIMMETRICI")
1501
1502
1503
Case Else
1504
MsgBox "ERRORE SU DATI SPACCO, NESSUNO SPACCO SARA' LAVORATO SUL PEZZO", vbCritical
1505
SPC_R = ""
1506
End Select
1507
1508
SPC_PULS = SPC_PULS & SPC_R
1509
1510
RSN = MsgBox("INSERIRE ALTRO SPACCO?", vbYesNo Or vbDefaultButton2)
1511
Select Case RSN
1512
Case vbYes
1513
SPC_PULS = SPC_PULS
1514
GoTo SPC_INSERT
1515
Case vbNo
1516
End Select
1517
END_SPC:
1518
PULS_TYPE = Empty
1519
1520
1521
'***********************************
1522
If InStr(1, COD_SP, "999") > 0 Then  'RIPETERE LO SPACCO PRECEDENTE
1523
SPC_R_OLD = SPC_R
1524
QCSP_OLD = QCSP
1525
End If
1526
'***********************************
1527
1528
1529
If QCSP <> 0 Then
1530
MsgBox QCSP
1531
Else
1532
MsgBox "ATTENZIONE QUOTA CENTRO SPACCO NON DEFINITA", vbCritical
1533
End If
1534
1535
End Function
1536
1537
Function SPC_INDIC(ByVal CMM As String, ByVal CD_IN As Single, ByVal FA As Double, ByVal H As Double, ByVal SVIL As Double, ByVal HT As Double) As String
1538
1539
1540
'**************************************************************
1541
SPC_INDIC = SPCi_CODIFY(CMM, CD_IN, FA, H, SVIL, HT)
1542
If SPC_INDIC <> "" Then Exit Function
1543
'**************************************************************
1544
1545
1546
1547
SPC_INDIC = Empty
1548
Spclist = FILELIST(SPC_FOLD, True, "*")
1549
1550
IND_FOUND = 0
1551
TYCK = ""
1552
For i = 1 To UBound(Spclist)
1553
CDCK = Right(Spclist(i), InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare) - 1)
1554
CDCK = Left(CDCK, InStr(1, CDCK, ".", vbBinaryCompare) - 1)
1555
1556
If CDCK = CD_IN Then
1557
1558
Select Case IND_FOUND
1559
Case 0
1560
IND_FOUND = 1
1561
NF_IN = Spclist(i)
1562
TYCK = Left(Spclist(i), Len(Spclist(i)) - InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare))
1563
TYCK = Right(TYCK, InStr(1, StrReverse(TYCK), "\", vbBinaryCompare) - 1)
1564
1565
Case 1
1566
MsgBox "ERRORE SU MODULO INDICATORE"
1567
Case Else
1568
MsgBox "ERRORE SU MODULO INDICATORE"
1569
End Select
1570
End If
1571
Next i
1572
1573
1574
If IND_FOUND = 0 And CD_IN <> "9999" Then MsgBox "SPACCO " & CD_IN & " NON TROVATO", vbExclamation
1575
1576
Select Case TYCK
1577
1578
Case "I02"
1579
NFDATA = FreeFile
1580
Open NF_IN For Input As #NFDATA
1581
Line Input #NFDATA, ST_COD
1582
Line Input #NFDATA, VOID_ROW
1583
Line Input #NFDATA, lS
1584
Line Input #NFDATA, HS
1585
Line Input #NFDATA, QS
1586
Line Input #NFDATA, DIAM
1587
Line Input #NFDATA, DISTF
1588
Close #NFDATA
1589
1590
If QS = "C" Then QS = HT / 2 - Val(HS) / 2
1591
1592
lS = Val(lS)
1593
HS = Val(HS)
1594
QS = Val(QS)
1595
DIAM = Val(DIAM)
1596
DISTF = Val(DISTF)
1597
1598
Y = FA + QS + HS / 2
1599
1600
RS1 = T_RECT2(Y, H / 2, HS, lS)
1601
RS2 = T_CIRC(Y, H / 2 + DISTF / 2, DIAM)
1602
RS3 = T_CIRC(Y, H / 2 - DISTF / 2, DIAM)
1603
SPC_R = RS1 & RS2 & RS3
1604
1605
GoTo END_IND
1606
1607
1608
1609
1610
Case "I03"
1611
NFDATA = FreeFile
1612
Open NF_IN For Input As #NFDATA
1613
Line Input #NFDATA, ST_COD
1614
Line Input #NFDATA, VOID_ROW
1615
Line Input #NFDATA, lS
1616
Line Input #NFDATA, HS
1617
Line Input #NFDATA, QS
1618
Line Input #NFDATA, LS2
1619
Line Input #NFDATA, HS2
1620
Close #NFDATA
1621
1622
If QS = "C" Then QS = HT / 2 - Val(HS) / 2
1623
1624
lS = Val(lS)
1625
HS = Val(HS)
1626
QS = Val(QS)
1627
DIAM = Val(DIAM)
1628
DISTF = Val(DISTF)
1629
1630
Y = FA + QS + HS / 2
1631
Y2 = FA + QS - HS2 + (HS2 + 5.5) / 2
1632
HS3 = HS2 + 5.5
1633
1634
RS1 = T_RECT2(Y, H / 2, HS, lS)
1635
If LS2 * HS2 > 0 Then RS2 = T_RECT2(Y, H / 2, HS3, LS2) Else RS2 = ""
1636
1637
SPC_R = RS1 & RS2
1638
1639
GoTo END_IND
1640
1641
1642
End Select
1643
1644
1645
SPC_INDIC = Empty
1646
CUR_COM = CMM
1647
UserForm3.Show
1648
1649
If INDIC_TYPE = 0 Then Exit Function
1650
1651
1652
1653
'*****************************************PER REPORT SPACHI
1654
RP = RP + 1
1655
RPT_SPC(RP, 1, 1) = INFO_DAT(CMM, 0, 2)
1656
RPT_SPC(RP, 1, 2) = "COMMESSA"
1657
RP2 = 1
1658
'**********************************************************
1659
1660
1661
1662
Select Case INDIC_TYPE
1663
1664
1665
Case 1       'SPACCO RETTANGOLARE SINGOLO
1666
QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
1667
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1668
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1669
1670
Y = FA + QS + HS / 2
1671
RS1 = T_RECT2(Y, H / 2, HS, lS)
1672
SPC_R = RS1
1673
1674
1675
Case 2      'SPACCO RETTANGOLARE SINGOLO CON COPPIA DI FORI CENTRATI
1676
QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
1677
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1678
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1679
KF = INPUT_VAL(1, "INTERASSE ORIZZONTALE FORI", KF, "")
1680
DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
1681
Y = FA + QS + HS / 2
1682
RS1 = T_RECT2(Y, H / 2, HS, lS)
1683
RS2 = T_CIRC(Y, H / 2 - KF / 2, DF)
1684
RS3 = T_CIRC(Y, H / 2 + KF / 2, DF)
1685
SPC_R = RS1 & RS2 & RS3
1686
1687
1688
Case 3      'SPACCO STAR 30_5
1689
QS = INPUT_VAL(1, "QUOTA CENTRO SPACCO DA FILO LUCE", QS, "")
1690
DF = INPUT_VAL(1, "DIAMETRO FORO: 9,10.5,32.5,6.5,5.5,25,20.2,3.3,4.2,5,7.2,8.5,14,10", DF, "")
1691
'Y = FA - QS
1692
Y = FA + QS
1693
'DIAM = 30
1694
'LAT = 5
1695
'R = DIAM / 2 - 2.5
1696
'X1 = XX + R
1697
'Y1 = Y
1698
'X2 = XX
1699
'Y2 = Y - R
1700
'X3 = XX - R
1701
'Y3 = Y
1702
'X4 = XX
1703
'Y4 = Y + R
1704
1705
'G901 = "G90/X" & X1 & "/Y" & Y1 & "/T339/>"
1706
'G902 = "G90/X" & X2 & "/Y" & Y2 & "/T339/>"
1707
'G903 = "G90/X" & X3 & "/Y" & Y3 & "/T339/>"
1708
'G904 = "G90/X" & X4 & "/Y" & Y4 & "/T339/>"
1709
'SPC_R = G901 & G902 & G903 & G904 & G900
1710
1711
'SPC_R = T_CIRC(H / 2, Y, DF)
1712
SSPP = MsgBox("VUOI LE SPIZZE SULLO SPACCO TONDO?", vbYesNo)
1713
MsgBox ("CONTROLLARE SPACCO STAR")
1714
If SSPP = 6 Then
1715
SPC1 = T_CIRC(Y, H / 2, DF)
1716
RDR = DF / 2 - 4 + 1.9
1717
SPC2 = T_SPECIAL(Y + RDR, H / 2, "RAG-3", 0) & T_SPECIAL(Y - RDR, H / 2, "RAG-3", 0) & T_SPECIAL(Y, H / 2 + RDR, "RAG-3", 0) & T_SPECIAL(Y, H / 2 - RDR, "RAG-3", 0)
1718
SPC_R = SPC1 & SPC2
1719
Else
1720
SPC_R = T_CIRC(Y, H / 2, DF)
1721
End If
1722
1723
1724
Case 4       'SPACCO RETTANGOLARE SINGOLO CON INCAVI
1725
QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
1726
HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
1727
lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
1728
AI = INPUT_VAL(1, "ALTEZZA INCAVO", LI, "")
1729
LI = INPUT_VAL(1, "LARGHEZZA INCAVO", LI, "")
1730
Y = FA + QS + HS / 2
1731
SVP = 4 'SOVRAPPOSIZIONE SPACCHI LATERALI
1732
RS1 = T_RECT2(Y, H / 2, HS, lS)
1733
RS2 = T_RECT2(Y, H / 2 - lS / 2 - LI / 2 + SVP / 2, AI, LI + SVP)
1734
RS3 = T_RECT2(Y, H / 2 + lS / 2 + LI / 2 - SVP / 2, AI, LI + SVP)
1735
SPC_R = RS1 & RS2 & RS3
1736
1737
End Select
1738
1739
END_IND:
1740
1741
PULS_TYPE = Empty
1742
SPC_INDIC = SPC_R
1743
1744
End Function
1745