Predmet:Re: Server i Access baza
  
  
  Evo slozi polja u TblsHema ovako:
id
Kaegorija
IdStroja
Index
IdDijela
KomStr
Ovo zadnje nadam se da je broj komada
Procedura:
PreuzmiIzvorni kôd (Visual Basic):Function PrenesiPod(Kategorija As Integer, IdStroja As String)
 
'Ulaz kategorija= 1 i idstroja=0008239
 
Dim Db As Database
 
Dim Rs1 As Recordset
 
Dim Rs2 As Recordset
 
Dim Rs3 As Recordset
 
Dim SQL As String
 
Dim Dio As String
 
Dim I As Integer
 
Dim BrojKolona As Integer
 
 
 
 
 
Set Db = CurrentDb 'set baze
 
SQL = "SELECT * FROM tblShemaMontaze " _
 
    & "WHERE kategorija=" & Kategorija & "  AND IDstroja='" & IdStroja & "'"
 
' gdje je kategorija=1 i idstroja=0008239 iz tabele  tblShemaMontaze
 
Set Rs1 = Db.OpenRecordset(SQL) 'Podigni Rs1 sa gore navedenim SQL-om
 
Set Rs3 = Db.OpenRecordset("tblShema")'POdigni u Rs3 tabelu tblShema
 
BrojKolona = Rs1.Fields.Count 'Prebroj polja u Tabeli  tblShemaMontaze
 
Do While Not Rs1.EOF 'Pocetak petlje sa rs1
 
Dio = Rs1!IdDijela ' upisi u mem. dio iz polja IdDijela
 
Rs3.AddNew ' Novi upis u tabelu tblshema
 
        For I = 1 To BrojKolona ' broj od 1 do broja polja u tabeli  tblShemaMontaze
 
        Rs3.Fields(I) = Rs1.Fields(I - 1) ' prepisi polje iz tabele  tblShemaMontaze u tabelu tblShema
 
'Posto ova tabela ima jednu kolonu vise onda zapisujem kolonu nula iz  tblShemaMontaze u kolonu 1
 
'Prva je autonumber
 
        Next I
 
Rs3.Update 'zapisi
 
SQL = "SELECT * FROM tblShemaMontaze " _
 
     & "WHERE IDstroja='" & Dio & "' AND kategorija>" & Kategorija
 
'selktuj iz tabele  tblShemaMontaze sve koji imaju u polju Idstroja vrijednost koju ima rs1 u polju 'IDDijela i da je kategorija veca od 1
 
Set Rs2 = Db.OpenRecordset(SQL) podigni rs2 sa gornjim sql-om
 
Do While Not Rs2.EOF ' petlja druga
 
        Rs3.AddNew
 
        For I = 1 To BrojKolona
 
        Rs3.Fields(I) = Rs2.Fields(I - 1) ' ovo je sve isto kao i gore
 
'Predpostavljam da ovdje treba mozda upisati u polje idstroja zadani idstroja a ne postojeci
 
        Next I
 
Rs3.Update' zapisi
 
Rs2.MoveNext 'pomakni za jedan red rs2
 
Loop 'Kraj druge petlje
 
Rs2.Close  zatvori rs2 koji se motao u drugoj petlji
 
Rs1.MoveNext 'pomakni rs1 za jedan red
 
Loop 'kraj prve petlje
 
Rs1.Close
 
Rs3.Close
 
Set Db = Nothing
 
End Function
 
 
Evo ova ti procedura radi ono sto si na slici pokazao a i opisao sam ti svaki korak.
Jedino sto pretpostavljam da se prepisuje zadani idstroja gdje nadje da je id dijela jednak idstroja.
Ako si ti u svom query da ovaj isti uslov onda ti nije dobar query jer imas viska podataka u njemu.
Imas 27 podataka koji zadovoljavaju uslov po ulaznim parametrima
i imas jos 57 onih koji imaju iz ovih 27 iddijela upisan u idstroja
to je ukupno 84.        
            Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.