Function Slozi()
Dim Baza As Database
Dim Sl_Table1 As Recordset
Dim Sl_Table2 As Recordset
Dim Usl_Poz As String
Dim Sl_Poz As Recordset
Dim Stroj As String
Dim Sklop As String
Dim Podsklop As String
Dim Cvor As String
Dim tekuciStroj As String
Dim tekuciSklop As String
Dim tekuciPodsklop As String
Dim tekuciCvor As String
Dim stDocName As String
DoCmd.Hourglass True
tekuciStroj = " "
tekuciSklop = " "
tekuciPodsklop = " "
tekuciCvor = " "
Set Baza = CurrentDb()
Set Sl_Table2 = Baza.OpenRecordset("ShemaTransfer", dbOpenDynaset)
Set Sl_Table1 = Baza.OpenRecordset("QryShema", dbOpenDynaset)
Sl_Table1.MoveFirst
While Not Sl_Table1.EOF
Stroj = Sl_Table1![IDStr]
If Not IsNull(Sl_Table1![IDSkl]) Then
Sklop = Sl_Table1![IDSkl]
End If
If Not IsNull(Sl_Table1![IDPskl]) Then
Podsklop = Sl_Table1![IDPskl]
End If
If Not IsNull(Sl_Table1![IDCv]) Then
Cvor = Sl_Table1![IDCv]
End If
If Sl_Table1![IDStr] <> tekuciStroj Then
With Sl_Table2
.AddNew
![IDStroja] = Sl_Table1![IDKombinacija]
![Nivo] = 0
![KomStr] = Sl_Table1![KomStr]
![Index] = Sl_Table1![IndexStroj]
![IDdijela] = Sl_Table1![IDStr]
![BrKomada] = Sl_Table1![KomStr]
![BrKomadaSum] = Sl_Table1![KomStr]
.Update
End With
End If
If Sl_Table1![IDSkl] <> tekuciSklop Then
' dodaje slog za Sklop
With Sl_Table2
.AddNew
![IDStroja] = Sl_Table1![IDKombinacija]
![Nivo] = 1
![KomStr] = Sl_Table1![KomStr]
![Index] = Sl_Table1![IndexSklop]
![IDdijela] = Sl_Table1![IDSkl]
![BrKomada] = Sl_Table1![KomSkl]
![BrKomadaSum] = Sl_Table1![KomSkl] * Sl_Table1![KomStr]
.Update
End With
End If
If Not IsNull(Sl_Table1![IDPskl]) And Sl_Table1![IDPskl] <> tekuciPodsklop Then
' dodaje slog za Podsklop
With Sl_Table2
.AddNew
![IDStroja] = Sl_Table1![IDKombinacija]
![Nivo] = 2
![KomStr] = Sl_Table1![KomStr]
![Index] = Sl_Table1![IndexPodsklop]
![IDdijela] = Sl_Table1![IDPskl]
![BrKomada] = Sl_Table1![KomPskl]
![BrKomadaSum] = Sl_Table1![KomPskl] * Sl_Table1![KomSkl] * Sl_Table1![KomStr]
.Update
End With
End If
If Not IsNull(Sl_Table1![IDCv]) And Sl_Table1![IDCv] <> tekuciCvor Then
' dodaje slog za Cvor
With Sl_Table2
.AddNew
![IDStroja] = Sl_Table1![IDKombinacija]
![Nivo] = 3
![KomStr] = Sl_Table1![KomStr]
![Index] = Sl_Table1![IndexCvor]
![IDdijela] = Sl_Table1![IDCv]
![BrKomada] = Sl_Table1![KomCv]
![BrKomadaSum] = Sl_Table1![KomCv] * Sl_Table1![KomPskl] * Sl_Table1![KomSkl] * Sl_Table1![KomStr]
.Update
End With
Usl_Poz = "SELECT * FROM [QryShema] WHERE IDStr ='" & Stroj _
& "' And IDSkl ='" & Sklop _
& "' And IDPskl ='" & Podsklop _
& "' And IDcv ='" & Cvor & "'"
Set Sl_Poz = Baza.OpenRecordset(Usl_Poz, dbOpenDynaset)
If Sl_Poz.RecordCount > 0 Then
Sl_Poz.MoveFirst
While Not Sl_Poz.EOF ' dodaje slogove za Pozicije
With Sl_Table2
If Not IsNull(Sl_Table1![IDPoz]) Then
.AddNew
![IDStroja] = Sl_Table1![IDKombinacija]
![Nivo] = 4
![KomStr] = Sl_Table1![KomStr]
![Index] = Sl_Table1![IndexPoz]
![IDdijela] = Sl_Poz![IDPoz]
![BrKomada] = Sl_Poz![KomPoz]
![BrKomadaSum] = Sl_Poz![KomPoz] * Sl_Table1![KomCv] * Sl_Table1![KomPskl] * Sl_Table1![KomSkl] * Sl_Table1![KomStr]
.Update
End If
End With
Sl_Poz.MoveNext
Wend
End If
End If
tekuciStroj = Stroj
tekuciSklop = Sklop
tekuciPodsklop = Podsklop
tekuciCvor = Cvor
Sl_Table1.MoveNext
Wend
DoCmd.Hourglass False
End Function