-
Notifications
You must be signed in to change notification settings - Fork 1
/
frmSR.frm
575 lines (519 loc) · 16.1 KB
/
frmSR.frm
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
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
VERSION 5.00
Object = "{41AFDA5A-831B-4895-865A-7FB6994EB548}#6.0#0"; "rsp-zip-compress150.ocx"
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Begin VB.Form frmSR
BorderStyle = 3 'Fixed Dialog
Caption = "Íàä³ñëàòè çâ³òè"
ClientHeight = 6615
ClientLeft = 6765
ClientTop = 4110
ClientWidth = 6345
Icon = "frmSR.frx":0000
LinkTopic = "Form2"
MaxButton = 0 'False
MDIChild = -1 'True
MinButton = 0 'False
ScaleHeight = 6596.154
ScaleMode = 0 'User
ScaleWidth = 6500
ShowInTaskbar = 0 'False
Begin VB.CommandButton cmdArhiv
Caption = "Íàä³ñëàòè"
BeginProperty Font
Name = "Tahoma"
Size = 9.75
Charset = 204
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 375
Left = 3480
MousePointer = 1 'Arrow
Style = 1 'Graphical
TabIndex = 8
ToolTipText = "Íàä³ñëàòè çâ³òè"
Top = 5715
Width = 2400
End
Begin VB.ComboBox cmbNameArh
Height = 315
Left = 360
TabIndex = 7
ToolTipText = "Âêàæ³òü íàçâó àðõ³âà. Ìîæíà ðåäàãóâàòè"
Top = 5760
Width = 2520
End
Begin VB.Frame Frame1
Caption = " Îáåð³òü ðàéîí äëÿ â³äïðàâêè"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 204
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00FF0000&
Height = 1335
Left = 360
TabIndex = 0
Top = 360
Width = 5535
Begin VB.ComboBox cmbRaj
Height = 315
ItemData = "frmSR.frx":08CA
Left = 1440
List = "frmSR.frx":08CC
Sorted = -1 'True
TabIndex = 1
ToolTipText = "Êîä ðàéîíó"
Top = 480
Width = 2175
End
End
Begin RSPZipCompress150.RSPZip RSPZip1
Left = 5400
Top = 1800
_ExtentX = 979
_ExtentY = 979
End
Begin MSComctlLib.ListView List1
Height = 2175
Left = 360
TabIndex = 6
Top = 2520
Width = 5535
_ExtentX = 9763
_ExtentY = 3836
View = 3
LabelEdit = 1
LabelWrap = -1 'True
HideSelection = -1 'True
AllowReorder = -1 'True
FullRowSelect = -1 'True
GridLines = -1 'True
_Version = 393217
ForeColor = -2147483640
BackColor = -2147483643
BorderStyle = 1
Appearance = 1
NumItems = 3
BeginProperty ColumnHeader(1) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Text = "Íàçâà"
Object.Width = 2646
EndProperty
BeginProperty ColumnHeader(2) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 1
SubItemIndex = 1
Text = "Ðîçì³ð"
Object.Width = 2117
EndProperty
BeginProperty ColumnHeader(3) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Alignment = 1
SubItemIndex = 2
Text = "Äàòà"
Object.Width = 3175
EndProperty
End
Begin MSComctlLib.ProgressBar ProgressBar1
Align = 2 'Align Bottom
Height = 255
Left = 0
TabIndex = 9
Top = 6360
Width = 6345
_ExtentX = 11192
_ExtentY = 450
_Version = 393216
Appearance = 1
End
Begin VB.Label Label2
Alignment = 2 'Center
AutoSize = -1 'True
Caption = "Íàçâà àðõ³âó"
Height = 195
Left = 480
TabIndex = 11
Top = 5520
Width = 1005
End
Begin VB.Label Label1
BorderStyle = 1 'Fixed Single
Caption = " Îáåð³òü ðàéîí."
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 204
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00000080&
Height = 495
Left = 360
TabIndex = 10
ToolTipText = "Ñòðîêà ñòàíó ïðîãðàìè"
Top = 4920
Width = 5535
End
Begin VB.Label Label3
AutoSize = -1 'True
Caption = "Êàòàëîã äëÿ ïîøóêó çâ³ò³â - "
Height = 195
Left = 360
TabIndex = 5
Top = 1920
Width = 2175
End
Begin VB.Label Label4
AutoSize = -1 'True
Caption = "Ïîøòîâèé êàòàëîã -"
Height = 195
Left = 840
TabIndex = 4
Top = 2160
Width = 1530
End
Begin VB.Label lblKatalog
AutoSize = -1 'True
Caption = "Íå âèçíà÷åíî"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 204
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00000080&
Height = 195
Left = 2760
TabIndex = 3
Top = 1920
Width = 2145
End
Begin VB.Label LblKatalogS
AutoSize = -1 'True
Caption = "Íå âèçíà÷åíî"
BeginProperty Font
Name = "Tahoma"
Size = 8.25
Charset = 204
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00000080&
Height = 195
Left = 2760
TabIndex = 2
Top = 2160
Width = 2145
End
End
Attribute VB_Name = "frmSR"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Public myFrmMain As frmMain
Dim fso As New FileSystemObject, _
fld As Folder, _
MI As Integer, _
PriznZV, _
NomerFl As Integer, _
NameArhSend As String, _
GOD As Integer
Const sRepNAR As String = "RepNar", _
sRepMAS As String = "RepMas", _
sF2A As String = "F2a", _
sFssN As String = "Fssn", _
sTabl As String = "TabL"
Private cCombo As New clsAutoCombo
Private Sub cmbNameArh_Click()
Dim tmpSql
PriznZV = Split(cmbNameArh, "_")
PriznZV = Left(PriznZV(0), (InStr(1, PriznZV(0), "6")) - 1)
ConnectToDataBase
tmpSql = "SELECT * FROM Send WHERE Sr_Raj = " & cmbRaj & _
" and Sr_NameZv = '" & PriznZV & _
"' and Sr_Month = " & MI & _
" and Sr_Year = " & Right(Year(Date), 2)
myRS.Open tmpSql, myADO, adOpenStatic, adLockReadOnly
NomerFl = myRS.RecordCount
End Sub
Private Sub cmbRaj_Click()
Dim kol As Integer, Ves As Currency
List1.ListItems.Clear
Katalogs (True) ' ïèøå êàòàëîãè êóäà ³ çâ³äêè
Ves = FindFile(lblKatalog, "*.rpr", kol)
If kol > 0 Then
Label1.Caption = "Â " & Val(Right(cmbRaj, 2)) & "-ìó ðàéîí³ çíàéäåíî " & _
kol & " ôàéë³â (" & Razmer(Ves) & ")" & " äëÿ â³äïðàâêè."
Label1.ForeColor = &H8000&
CreateNameArh ' ôîðìóº íàçâè àðõ³â³â â ñïèêó
cmdArhiv.Enabled = True
Else
Label1.Caption = " " & Val(Right(cmbRaj, 2)) & "-ìó ðàéîí³ Íå çíàéäåíî ôàéë³â." & _
vbCrLf & "³äïðàâêà íå ìîæëèâà."
Label1.ForeColor = &H80&
cmbNameArh.Enabled = False
cmdArhiv.Enabled = False
End If
ProgressBar1.Value = 0
End Sub
Private Sub cmbRaj_KeyPress(KeyAscii As Integer)
KeyAscii = cCombo.AutoFind(cmbRaj, KeyAscii, True)
End Sub
Private Sub cmdArhiv_Click()
Dim comando As String, _
tmpSql As String
If NomerFl = 0 Then
NameArhSend = cmbNameArh
Else
NameArhSend = cmbNameArh & "_" & NomerFl + 1
End If
comando = "<set-zip-temp-path=c:\>" _
& "<include-system-and-hidden-files>" _
& "<zip-compression-mode=add-to-zipfile>" _
& "<compression-level=9>" _
& "<directory-with-the-files-to-compress=" & lblKatalog & "\>" _
& "<destination-directory=" & lblKatalog & "\>" _
& "<destination-zipfile=" & NameArhSend & ".zip>" _
& "<files-selection=*.rpr>"
ConnectToDataBase
tmpSql = "INSERT INTO Send (Sr_Raj, Sr_NameZv, Sr_Month, Sr_Year, Sr_nomFl, Sr_Date, Sr_Ins, Sr_PathFl) " & _
"Values (" & cmbRaj & ",'" & _
PriznZV & "'," & _
MI & "," & _
Right(GOD, 2) & "," & _
NomerFl + 1 & ",'" & _
Date & " " & Time & "'," & _
ReadINI("viezd", "ID", PathFileIni) & ",'" & _
lblKatalog & "\" & NameArhSend & ".zip' );"
RSPZip1.RSPZipCompress (comando)
myRS.Open tmpSql, myADO, adOpenDynamic
End Sub
Private Sub Command1_Click()
Kill (lblKatalog & "\*.rpr")
End Sub
Private Sub Form_Load()
Dim tmpOper1, _
tmpOper2, _
tmpOper3, _
tmpOper4, _
tmpSql, _
tmpSQL1, _
All
Me.Width = 6500
Me.Height = 7500
If ReadINI("SendReport", "Oper1", PathFileIni) <> 0 Then _
tmpOper1 = 1
All = tmpOper1
If ReadINI("SendReport", "Oper2", PathFileIni) <> 0 Then
tmpOper2 = 2
If All <> "" Then
All = All & " OR oper_nom=" & tmpOper2
Else
All = tmpOper2
End If
End If
If ReadINI("SendReport", "Oper3", PathFileIni) <> 0 Then
tmpOper3 = 3
If All <> "" Then
All = All & " OR oper_nom=" & tmpOper3
Else
All = tmpOper3
End If
End If
If ReadINI("SendReport", "Oper4", PathFileIni) <> 0 Then
tmpOper4 = 4
If All <> "" Then
All = All & " OR oper_nom=" & tmpOper4
Else
All = tmpOper4
End If
End If
tmpSQL1 = "WHERE oper_nom = " & All & ";"
cmbNameArh.Enabled = False
cmdArhiv.Enabled = False
cmbRaj.Clear
ConnectToDataBase
tmpSql = "SELECT oper_raj FROM oper " & tmpSQL1
myRS.Open tmpSql, myADO, adOpenDynamic
cmbRaj.Clear
Do While Not myRS.EOF
cmbRaj.AddItem myRS("oper_raj").Value
myRS.MoveNext
Loop
myRS.close
End Sub
Private Sub Form_Unload(Cancel As Integer)
myFrmMain.RepSend.Enabled = True
End Sub
Private Function FindFile(ByVal sFol As String, sFile As String, _
nFiles As Integer) As Currency
Dim tFld As Folder, _
tFil As File, _
FileName As String, _
item As ListItem, _
File1 As String
On Error GoTo Catch 'end function
Set fld = fso.GetFolder(sFol)
FileName = Dir(fso.BuildPath(fld.Path, sFile), vbNormal Or vbHidden Or vbSystem Or vbReadOnly)
While Len(FileName) <> 0
File1 = fso.BuildPath(fld.Path, FileName)
FindFile = FindFile + FileLen(File1) '(FSO.BuildPath(fld.Path, FileName))
nFiles = nFiles + 1
Set item = List1.ListItems.Add(, , FileName) ' Load ListBox
item.SubItems(1) = Razmer(FileLen(File1))
item.SubItems(2) = FileDateTime(File1)
FileName = Dir() ' Get next file
DoEvents
'File1 = ""
Label1.Caption = "Çà÷åêàéòå. Éäå ïîáóäîâà ñïèñêó ôàéë³â."
Wend
Exit Function
Catch: Set item = List1.ListItems.Add(, , "Íåìຠäîñòóïó") ' Load ListBox
item.SubItems(1) = "äî êàòàëîãà"
item.SubItems(2) = sFol
'Resume Next
End Function
Private Sub List1_ColumnClick(ByVal ColumnHeader As ColumnHeader)
SortListView List1, ColumnHeader
End Sub
Private Sub RSPZip1_Finished(ReturnCode As Long, ReturnDescription As String)
Dim k As Folder, FL As String
'Set k = fso.GetFolder(Folder_DB_Raj & "BASE" & cmbRaj & "\POST_RAJ\")
If File_Exists(lblKatalog & "\*.rpr") = True Then
FL = Dir(lblKatalog & "\*.rpr", vbNormal)
While Len(FL) <> 0
Label1.Caption = "Âèäàëåííÿ ôàéëó " & FL
Kill (lblKatalog & "\" & FL)
DoEvents
FL = Dir()
Sleep 80
Wend
End If
With Label1
.Caption = "Àðõ³âóâàííÿ çàâåðøåíî" 'ReturnCode & ": " & ReturnDescription
Select Case ReturnCode
Case 0
.Caption = .Caption & " ÓÑϲØÍÎ."
Case 606
.Caption = .Caption & " íåâäà÷åþ. :-(" & vbCrLf & "Íå ìຠäîñòóïó äî êàòàëîãó çâ³ò³â"
.ForeColor = &H80&
Case 12
.Caption = .Caption & " íåâäà÷åþ. :-(" & vbCrLf & "Íå çíàéäåíî ôàéë³â äëÿ àðõ³âàö³¿"
.ForeColor = &H80&
End Select
.Caption = .Caption & " Çà÷åêàéòå." & vbCrLf & "Êîï³þâàííÿ " & NameArhSend & _
".zip => " & Folder_Post & cmbRaj
'ReturnCode & ": " & ReturnDescription
End With
DoEvents
FileCopy lblKatalog & "\" & NameArhSend & ".zip", _
LblKatalogS & "\" & NameArhSend & ".zip"
DoEvents
Label1.Caption = "Êîï³þâàííÿ çàâåðøåíî."
If File_Exists(LblKatalogS & "\" & NameArhSend & ".zip") = True Then
MsgBox "Ôàéë " & LblKatalogS & "\" & NameArhSend & ".zip" & vbCrLf & _
"ïîñòàâëåíî äî ÷åðãè â³äïðàâëåííÿ.", vbInformation, Me.Caption
Else
MsgBox "Ïîìèëêà íåâ³äîìîãî õàðàêòåðó", vbCritical
End If
List1.ListItems.Clear
ProgressBar1.Value = 0
End Sub
Private Sub RSPZip1_Progress(Progress As Long)
ProgressBar1.Value = Progress
End Sub
Private Sub RSPZip1_Status(Value As Long)
With Label1
If Value = 0 Then
.Caption = "Çàâåðøåíî."
End If
If (Value = 1) Then
.Caption = "Ïîáóäîâà ñïèñêó ôàéë³â..."
End If
If (Value = 2) Then
.Caption = "Çà÷åêàéòå éäå àðõ³âàö³ÿ çâ³ò³â..."
End If
End With
End Sub
Public Sub CreateNameArh()
Dim Konec
MI = Month(Date)
GOD = Year(Date)
If Day(Date) >= 23 Then MI = MI + 1
If MI > 12 Then
MI = 1
GOD = Val(GOD) + 1
End If
If Len(CStr(MI)) = 1 Then
Konec = cmbRaj & "_" & "0" & MI & "." & GOD
Else
Konec = cmbRaj & "_" & MI & "." & GOD
End If
With cmbNameArh
.Enabled = True
.Clear
.AddItem sRepNAR & Konec
.AddItem sRepMAS & Konec
.AddItem sF2A & Konec
.AddItem sFssN & Konec
.AddItem sTabl & Konec
End With
End Sub
Private Function Katalogs(prizn As Boolean)
If prizn = False Then
With lblKatalog
.Caption = "Íå âèçíà÷åíî"
.ForeColor = &H80& ' òåìíî-÷åðâîíèé
End With
With LblKatalogS
.Caption = "Íå âèçíà÷åíî"
.ForeColor = &H80& ' òåìíî-÷åðâîíèé
End With
Else
With lblKatalog
.Caption = Folder_DB_Raj & "BASE" & cmbRaj & "\POST_RAJ"
.ForeColor = &H8000& ' çåëåíèé
End With
With LblKatalogS
.ForeColor = &H8000& ' çåëåíèé
If cmbRaj = 6820 Then
.Caption = Folder_Post & 6825
Else
.Caption = Folder_Post & cmbRaj
End If
End With
End If
End Function
Public Sub SortListView(ByVal lvw As ListView, _
ByVal colHdr As ColumnHeader)
With lvw
' óñòàíîâêà ðåæèìà ñîðòèðîâêè äëÿ óêàçàííîé êîëîíêè
.SortKey = colHdr.Index - 1
.Sorted = True
' èçìåíåíèå ñîðòèðîâêè ìåíÿåòñÿ ìåæäó
' "ïî âîçðàñòàíèþ" è "ïî óìåíüøåíèþ"
.SortOrder = 1 Xor .SortOrder
End With
End Sub
Private Function Razmer(a)
If a < 1000 Then
Razmer = a
ElseIf a >= 1000 And a < 1000000 Then
Razmer = Round(a / 1024, 2) & " Êá"
ElseIf a >= 1000000 Then
Razmer = Round(a / 1048576, 2) & " Ìá"
End If
End Function