consolidator

Форк
0
/
M8_ТЭСЦ5.bas 
328 строк · 13.6 Кб
1
Attribute VB_Name = "M8_ТЭСЦ5"
2
Sub П0000_Анализ()
3
    On Error Resume Next
4
    M0_Переменные.П0001_Параметры
5

6
' "Штрипс ТЭСЦ-5" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
7
    If InStr(1, LCase(Производство), "штрип") > 0 _
8
    And InStr(1, LCase(Производство), "тэсц") > 0 _
9
    And InStr(1, LCase(Производство), "5") > 0 Then
10
        Производство = "Штрипс ТЭСЦ-5"
11
        Продукт = "ПОЛОСА"
12
        M3_Общий.П0130_Марка_стали_по_Гр_свойств
13
        П0130_Определение_ОТО
14
        Толщина_тип = Толщина
15
        П0120_Ширина_приведенная
16
        Наименование_УП = Продукт & " Ш" & Шир_тип & " " & Гр_свойств
17
        If InStr(1, Гр_свойств, "ГУ") > 0 Then
18
            Наименование_УП = Продукт & " " & Диап_толщин & " Ш" & Шир_тип & " " & "ГУ"
19
        End If
20
        M2_Промежуточный.П0900_Укрупнение
21
    End If
22

23
' "Труба нефтепроводная ТЭСЦ-5" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
24
    If InStr(1, LCase(Производство), "нефт") > 0 _
25
    And InStr(1, LCase(Производство), "тэсц") > 0 _
26
    And InStr(1, LCase(Производство), "5") > 0 Then
27
        Производство = "Труба нефтепроводная ТЭСЦ-5"
28
        Продукт = "ТРУБА Д"
29
        
30
        M3_Общий.П0110_Кл_прочности_по_марке_стали
31
        M3_Общий.П0120_Маппинг_Кл_прочности
32
        M3_Общий.П0121_Приведение_Кл_прочности
33
        M3_Общий.П0130_Марка_стали_по_Гр_свойств
34
        П0100_Диаметр_типовой_по_ближайшему
35
        Толщина_тип = Толщ_стен
36
        Доп_парам1 = Диам_тип
37
        П0110_Диап_Толщин_по_Продукт
38
        Доп_парам1 = 0
39
        П0110_Проверка_на_Продукт_Т3
40
        Наименование_УП = Продукт & Диам_тип & " " & Гр_свойств
41
        If InStr(1, Гр_свойств, "ГУ") > 0 Or InStr(1, Гр_свойств, "ГФ") > 0 Then
42
            Наименование_УП = Продукт & Диам_тип & " " & Диап_толщин & " ГУ"
43
            If Доп_парам1 <> 0 Then
44
                Наименование_УП = Продукт & Диам_тип & " " & Диап_толщин & " " & Гр_свойств
45
            End If
46
        End If
47
        If Диам_тип = 219 Then
48
            Наименование_УП = Наименование_УП & " Т5"
49
        End If
50
        M2_Промежуточный.П0900_Укрупнение
51
    End If
52

53
' "Труба обсадная ТЭСЦ-5" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
54
    If InStr(1, LCase(Производство), "обсад") > 0 _
55
    And InStr(1, LCase(Производство), "тэсц") > 0 _
56
    And InStr(1, LCase(Производство), "5") > 0 Then
57
        Производство = "Труба обсадная ТЭСЦ-5"
58
        Продукт = "ТРУБА Д"
59
        M3_Общий.П0111_Группа_по_классу_прочности_для_труб
60
        M3_Общий.П0140_Резьба_типовая
61
        П0100_Диаметр_типовой_по_ближайшему
62
        Наименование_УП = Продукт & Диам_тип & " ГО " & Гр_прочн & " " & Резьба_тип
63
        M2_Промежуточный.П0900_Укрупнение
64
    End If
65
    
66
' "Труба термообработанная ТЭСЦ-5" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
67
    If InStr(1, LCase(Производство), "терм") > 0 _
68
    And InStr(1, LCase(Производство), "тэсц") > 0 _
69
    And InStr(1, LCase(Производство), "5") > 0 Then
70
        Производство = "Труба нефтепроводная ТЭСЦ-5"
71
        Продукт = "ТРУБА Д"
72
        M3_Общий.П0111_Группа_по_классу_прочности_для_труб
73
        M3_Общий.П0140_Резьба_типовая
74
        
75
        M3_Общий.П0110_Кл_прочности_по_марке_стали
76
        M3_Общий.П0120_Маппинг_Кл_прочности
77
        M3_Общий.П0121_Приведение_Кл_прочности
78
        M3_Общий.П0130_Марка_стали_по_Гр_свойств
79
        П0100_Диаметр_типовой_по_ближайшему
80
        Толщина_тип = Толщ_стен
81
        Доп_парам1 = Диам_тип
82
        П0110_Диап_Толщин_по_Продукт
83
        Доп_парам1 = 0
84
        П0110_Проверка_на_Продукт_Т3
85
        
86
        Наименование_УП = Продукт & Диам_тип & " ГО " & Гр_прочн & " " & Резьба_тип
87
        If Гр_прочн = 0 Then
88
            Наименование_УП = Продукт & Диам_тип & " " & Гр_свойств
89
            If InStr(1, Гр_свойств, "ГУ") > 0 Or InStr(1, Гр_свойств, "ГФ") > 0 Then
90
                Наименование_УП = Продукт & Диам_тип & " " & Диап_толщин & " ГУ"
91
                If Доп_парам1 <> 0 Then
92
                    Наименование_УП = Продукт & Диам_тип & " " & Диап_толщин & " " & Гр_свойств
93
                End If
94
            End If
95
        End If
96

97
        M2_Промежуточный.П0900_Укрупнение
98
    End If
99
 
100
 ' "Муфта ТЭСЦ-5" '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
101
    If InStr(1, LCase(Производство), "муфт") > 0 _
102
    And InStr(1, LCase(Производство), "тэсц") > 0 _
103
    And InStr(1, LCase(Производство), "5") > 0 Then
104
        Производство = "Муфта ТЭСЦ-5"
105
        Продукт = "МУФТА Д"
106
        П0100_Диаметр_типовой
107
        M3_Общий.П0140_Резьба_типовая
108
        M3_Общий.П0112_Группа_по_классу_прочности_для_муфт
109
        Наименование_УП = Продукт & Диам_тип & " " & Гр_прочн & " " & Резьба_тип
110
        M2_Промежуточный.П0900_Укрупнение
111
    End If
112

113

114
End Sub
115

116
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
117
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
118
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
119
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
120
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
121
Sub П0130_Определение_ОТО()
122
    On Error Resume Next
123
    For s0 = 1 To 200
124
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Признак по НТД" Then Exit For
125
    Next
126
    For i = 4 To 500
127
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
128
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'НТД
129
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Продукт
130
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп признак
131
        
132
        If InStr(1, UCase(q0), UCase(Производство)) > 0 _
133
        And UCase(НТД_кач_прокат) = UCase(q1) _
134
        And InStr(1, UCase(Гр_свойств), UCase("ГЮ")) > 0 Then
135
            Гр_свойств = q2
136
            Exit For
137
        End If
138
    Next
139
End Sub
140

141
Sub П0100_Диаметр_типовой()
142
    On Error Resume Next
143
    If Диаметр = "" Then Диаметр = 0
144
    Диаметр = Replace(Диаметр, ".", ",")
145
    Диаметр = CSng(Диаметр)
146
    For s0 = 1 To 200
147
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-5" Then Exit For
148
    Next
149
    For i = 4 To 300
150
        If i_строк_НП = 41 Then
151
        q = q
152
        End If
153
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
154
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
155
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Диаметр
156
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Диаметр типовой
157
        q2 = Replace(q2, ".", ","): q2 = CSng(q2)
158
        q3 = Replace(q3, ".", ","): q3 = CSng(q3)
159
        
160
        If IsNumeric(q2) = True Then
161
            If UCase(q0) = UCase(Производство) _
162
            And UCase(q1) = UCase(Продукт) _
163
            And q2 = Диаметр Then
164
                Диам_тип = q3: Exit For
165
            End If
166
        End If
167
    Next
168
End Sub
169

170
Sub П0110_Проверка_на_Продукт_Т3()
171
    On Error Resume Next
172
    If Толщина_тип = "" Then Толщина_тип = 0
173
    Толщина_тип = Replace(Толщина_тип, ".", ","): Толщина_тип = CSng(Толщина_тип)
174
    For s0 = 1 To 200
175
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-3" Then Exit For
176
    Next
177
    For i = 4 To 300
178
        If i = 41 Then
179
        q = q
180
        End If
181
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
182
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
183
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
184
        q2 = Replace(q2, ".", ","): q2 = CSng(q2)
185
        
186
        If UCase(q0) = UCase(Производство) _
187
        And UCase(q1) = UCase(Продукт) _
188
        And Диам_тип = q2 Then
189
            Доп_парам1 = q2: Exit Sub
190
        End If
191
    Next
192
End Sub
193

194
Sub П0110_Диап_Толщин_по_Продукт()
195
    On Error Resume Next
196
    If Толщина_тип = "" Then Толщина_тип = 0
197
    Толщина_тип = Replace(Толщина_тип, ".", ","): Толщина_тип = CSng(Толщина_тип)
198
    For s0 = 1 To 200
199
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-5" Then Exit For
200
    Next
201
    For i = 4 To 300
202
        If i = 41 Then
203
        q = q
204
        End If
205
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
206
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
207
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
208
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
209
        q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
210
        q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
211
        q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
212
        q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
213
        
214
        q2 = Replace(q2, ".", ","): q2 = CSng(q2)
215
        q5 = Replace(q5, ".", ","): q5 = CSng(q5)
216
        q6 = Replace(q6, ".", ","): q6 = CSng(q6)
217
        
218
        т_мин = 1000
219
        т_макс = 1000
220
        If UCase(q0) = UCase(Производство) _
221
        And UCase(q1) = UCase(Продукт) _
222
        And Доп_парам1 = q2 _
223
        And q5 <= Толщина_тип And Толщина_тип <= q6 And Толщина_тип > 0 Then
224
            Диап_толщин = q7: Exit Sub
225
        End If
226
    Next
227
End Sub
228

229
Sub П0100_Диаметр_типовой_по_ближайшему()
230
    On Error Resume Next
231
    If Диаметр = "" Then Диаметр = 0
232
    Диаметр = Replace(Диаметр, ".", ",")
233
    Диаметр = CSng(Диаметр)
234
    For s0 = 1 To 200
235
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-5" Then Exit For
236
    Next
237
'    Диам_тип = 0
238
    д_мин = 5000
239
    For i = 4 To 300
240
        If i = 29 Then
241
        q = q
242
        End If
243
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
244
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
245
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Диаметр
246
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Гр свойств
247
        q2 = Replace(q2, ".", ",")
248
        q2 = CSng(q2)
249
        
250
        If IsNumeric(q2) = True Then
251
            If UCase(q0) = UCase(Производство) _
252
            And UCase(q1) = UCase(Продукт) Then
253
                д_0 = Abs(q2 - Диаметр)
254
                If д_мин > д_0 Then
255
                    д_мин = д_0
256
                    Диам_тип = q2
257
                End If
258
            End If
259

260
        End If
261
    Next
262
End Sub
263

264

265
Sub П0120_Ширина_приведенная()
266
    On Error Resume Next
267
    If Шир_штрипса = "" Then Шир_штрипса = 0
268
    Шир_штрипса = Replace(Шир_штрипса, ".", ",")
269
    Шир_штрипса = CSng(Шир_штрипса)
270
    
271
    If Толщина_тип = "" Then Толщина_тип = 0
272
    Толщина_тип = Replace(Толщина_тип, ".", ",")
273
    Толщина_тип = CSng(Толщина_тип)
274
    
275
    For s0 = 1 To 200
276
        If Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(1, s0) = "Параметры по Продукту ТЭСЦ-5" Then Exit For
277
    Next
278
    ш_мин = 5000
279
    For i = 4 To 300
280
        If i_строк_НП = 2069 Then
281
        q = q
282
        End If
283
        q0 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0) 'Производство
284
        q1 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 1) 'Продукт
285
        q2 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 2) 'Доп параметр1
286
        q3 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 3) 'Доп параметр2
287
        q4 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 4) 'Доп параметр3
288
        q5 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 5) 'минимальная толщина
289
        q6 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 6) 'максимальная толщина
290
        q7 = Workbooks(ИмяФайла_Раб).Sheets("Справочник").Cells(i, s0 + 7) 'Диапазон толщин
291
        q2 = Replace(q2, ".", ","): q2 = CSng(q2)
292
        q5 = Replace(q5, ".", ","): q5 = CSng(q5)
293
        q6 = Replace(q6, ".", ","): q6 = CSng(q6)
294
        
295
        If IsNumeric(q2) = True Then
296
            If InStr(1, UCase(q0), UCase(Производство)) > 0 _
297
            And InStr(1, UCase(q1), UCase(Продукт)) > 0 _
298
            And InStr(1, UCase(Гр_свойств), UCase(q3)) > 0 Then
299
                If (q5 <= Толщина_тип And Толщина_тип <= q6 _
300
                And InStr(1, UCase(Гр_свойств), "ГУ") > 0) _
301
                Or InStr(1, UCase(Гр_свойств), "ГУ") = 0 Then
302
                    ш_0 = Abs(q2 - Шир_штрипса)
303
                    If ш_мин > ш_0 Then
304
                        ш_мин = ш_0
305
                        Шир_тип = q2
306
                        Диап_толщин = q7
307
                    End If
308
                End If
309
            End If
310
        End If
311
        
312
'        If IsNumeric(q2) = True Then
313
'            If UCase(q0) = UCase(Производство) And UCase(q1) = UCase(Продукт) _
314
'            And InStr(1, Гр_свойств, q3) > 0 _
315
'            And (InStr(1, Гр_свойств, "ГУ") = 0 _
316
'            Or (InStr(1, Гр_свойств, "ГУ") > 0 And q5 <= Толщина_тип And Толщина_тип <= q6)) Then
317
'                ш_0 = Abs(q2 - Шир_штрипса)
318
'                If ш_мин > ш_0 Then
319
'                    ш_мин = ш_0
320
'                    Шир_тип = q2
321
'                    Диап_толщин = q7
322
'                End If
323
'            End If
324
'        End If
325
        
326
        
327
    Next
328
End Sub
329

330

331

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.