Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Linkovanje tabela iz dvije baze u jednu aplikaciju

[es] :: Access :: Linkovanje tabela iz dvije baze u jednu aplikaciju

[ Pregleda: 8414 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Linkovanje tabela iz dvije baze u jednu aplikaciju05.07.2010. u 08:08 - pre 168 meseci
Ovako imam funkciju koja mi trenutno radi link tabela iz jedne baze,znači kad hoću da se spojim na stare godine,iz combo boxa izaberem 2009_Robno_Baza i on se spoji.Sad mi treba da u aplikaciji linkujem nekoliko tabela iz drugih access baza.E sada ako neko ima ideju kako u ovoj funkciji to ugraditi.Ovu funkciju koristim:
Code:
Sub AktivnaBaza()
On Error GoTo greska
   ' Dim dbsCurrent As Database
   ' Dim tdfLinked As TableDef
    Dim strPom As String
    
   ' Set dbsCurrent = CurrentDb
   ' Set tdfLinked = dbsCurrent.TableDefs("NALOZI")
   ' strPom = Parsiraj(Mid$(tdfLinked.Connect, InStr(1, tdfLinked.Connect, "knjiga_steta_baza")))
    'Me.txtAktivnaBaza = strPom
    
strPom = CurrentDb.TableDefs("GRUPE").Connect
strPutBaz = DLookup("PUTBAZ", "PUTANJA")
If Right(strPutBaz, 1) = "\" Then
    strPutBaz = Left(strPutBaz, Len(strPutBaz) - 1) ' uklanja eventualno "\" iz naziva direktorija
End If
a = Len(strPutBaz)
b = Len(strPom)
'Me.txtAktivnaBaza = Mid$(strPom, a + 17, b - a - 15)
Me.txtAktivnaBaza = Right$(strPom, 19)

'Me.txtAktivnaBaza = strPom

Exit Sub
greska:
MsgBox "greška: " & Err.Number & "," & Err.Description

End Sub
Public Function osvjezi(txtBaza As String, txtZaporka As Variant) As Boolean
On Error GoTo osvjezi_error
    Dim dbsCurrent As Database
    Dim tdfLinked As TableDef
    Dim Ok As Variant
    Set dbsCurrent = CurrentDb
    Dim strPutBaz As String

    strPutBaz = DLookup("PUTBAZ", "PUTANJA")
    If Right(strPutBaz, 1) = "\" Then
    strPutBaz = Left(strPutBaz, Len(strPutBaz) - 1) ' uklanja eventualno "\" iz naziva direktorija
    End If

            DoCmd.Hourglass True
    For Each tdfLinked In dbsCurrent.TableDefs
        If tdfLinked.Attributes = dbAttachedTable Then
           Ok = SysCmd(acSysCmdSetStatus, "Povezujem tablicu: " & tdfLinked.Name)

            If IsNull(txtZaporka) Or txtZaporka = "" Then
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza
            Else
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza & ";PWD=" & txtZaporka
            End If
            tdfLinked.RefreshLink
        End If
    Next tdfLinked
    Ok = SysCmd(acSysCmdSetStatus, "                                          ")
    osvjezi = True
    DoCmd.Hourglass False
osvjezi_exit:

Exit Function

osvjezi_error:
    DoCmd.Hourglass False
    Ok = SysCmd(acSysCmdSetStatus, "                                             ")
    MsgBox "GREŠKA:" & Str(Err) & Chr$(13) & Err.Description, vbCritical, "OOPS!"
    osvjezi = False
 Resume osvjezi_exit
End Function

miro
 
Odgovor na temu

Zoran.Eremija
Zoran Eremija
SYSTEM ANALYST
Freelancer
Beograd

Član broj: 251342
Poruke: 855
109.106.225.*

Sajt: zoraneremija.wix.com/erem..


+47 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju05.07.2010. u 11:09 - pre 168 meseci
Ovako ja to radim da sada ne ulazim u bit Vaseg koda

Dim Baza As DAO.Database
Dim i As Integer
Dim BrojTabela As Integer
Dim NazivTabele As String
Dim Server As String
Dim Putanja As String
Dim cfgFajla As String
Dim NazivFajle As String
Dim Tabela As TableDef

Set Baza = CurrentDB

' Brisanje postojecih linkova

With Baza
BrojTabela = .TableDefs.Count - 1
For i = BrojTabela To 0 Step -1
NazivTabele = .TableDefs(i).Name
If .TableDefs(i).Connect <> "" Then
.TableDefs.Delete NazivTabele
End If
Next i
End With

' Povezivanje druge konfiguracione mdb baze

Putanja = CurrentProject.Path
NazivFajle = Right(Putanja, 3)
cfgFajla = Putanja & "\" & NazivFajle & ".mdb"

DoCmd.TransferDatabase acLink, "Microsoft Access", cfgFajla, acTable, "System", "System"

' Povezivanje sa Front-end bazom

Server = Application.CurrentProject.Path + "\" & Trim(DLookup("[Server]", "System"))

Set Baza = OpenDatabase(Server)

For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = Tabela.Name
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

Set Baza = Nothing

 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju05.07.2010. u 12:26 - pre 168 meseci
Ako mi možeš kratko objasnit da li ovo linkovanje može i u koji dio koda trebam unijeti svoje tabele koje su iz druge baze.Znači imam 10 tabela iz baze Robno a 3 tabele iz baze financijsko.Koliko mi se čini ova tvoja funkcija odnosno njen prvi dio linkuje tabele iz prve baze a ovaj dio služi da se upišu tabele koje nisu u osnovnoj bazi:
Code:
For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = Tabela.Name
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

miro
 
Odgovor na temu

Zoran.Eremija
Zoran Eremija
SYSTEM ANALYST
Freelancer
Beograd

Član broj: 251342
Poruke: 855
109.106.225.*

Sajt: zoraneremija.wix.com/erem..


+47 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju05.07.2010. u 12:39 - pre 168 meseci
Ako cete da linkujete sve tabele iz Baza1.mdb i sve tabele iz Baza2.mdb onda moze ovako

Dim Baza As DAO.Database
Dim i As Integer
Dim BrojTabela As Integer
Dim NazivTabele As String
Dim Server As String
Dim Putanja As String
Dim NazivFajle As String
Dim Tabela As TableDef

' Povezivanje sa Baza1.mdb

Server = Application.CurrentProject.Path + "\Baza1.mdb"))

Set Baza = OpenDatabase(Server)

For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = Tabela.Name
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

Set Baza = Nothing

' Povezivanje sa Baza2.mdb

Server = Application.CurrentProject.Path + "\Baza2.mdb"))

Set Baza = OpenDatabase(Server)

For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = Tabela.Name
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

Set Baza = Nothing

 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju05.07.2010. u 14:51 - pre 168 meseci
Probaću pa javim ja mislim da je to to
miro
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju06.07.2010. u 07:53 - pre 168 meseci
Ovo je dobro samo što bi trebalo da kad izaberem bazu iz combo boxa neku drugu koja nije navedena u codu da se na nju ulinkuje a da ovu drugu bazu ostavi kakva je.
Code:
Private Sub Command0_Click()
Dim Baza As DAO.Database
Dim i As Integer
Dim BrojTabela As Integer
Dim NazivTabele As String
Dim Server As String
Dim Putanja As String
Dim NazivFajle As String
Dim Tabela As TableDef

' Povezivanje sa Baza1.mdb

Server = Application.CurrentProject.Path + "\Robno_Baza.mdb"

Set Baza = OpenDatabase(Server)

For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = KIF
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

Set Baza = Nothing

' Povezivanje sa Baza2.mdb

Server = Application.CurrentProject.Path + "\BAZA_KASA.mdb"

Set Baza = OpenDatabase(Server)

For Each Tabela In Baza.TableDefs
If Tabela.Attributes = 0 Then
NazivTabele = GLSTAVKEMP
DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False
End If
Next

Set Baza = Nothing
End Sub
Ova prva baza se zove Robno_Baza.mdb i sad nju mjenjam,kad izaberem iz combo boxa recimo 2008_Robno_Baza.mdb onda da ovu tabelu ulinkuje na nju a da ove ostale ne dira.
miro
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju06.07.2010. u 15:03 - pre 168 meseci
Miro, mozes da razbijes tvoj kod na dve funkcije. Prva povezuje na bazu 1, a druga na Bazu 2. Onda ih treca funkcija pozove. Funkcijama saljes path kao parametar, pa ne moras da imas nista hard-kodirano.

Stavis ovo

DoCmd.TransferDatabase acLink, "Microsoft Access", Server, acTable, NazivTabele, NazivTabele, False

u zasebnu funkciju koja prima paranmetre (Server, acTable, NazivTabele, NazivTabele, False). Onda tu funkciju pozivas iz koda.

U stvari, cele stvar se moze odraditi ovako:

Imas unbound formu sa dva combo boxa ili dva dugmeta za FielOpen dialog box.
Imas i dva text boxa gde ce se upisati path za BAza 1 i BAza 2
Korsitsi Combo ili FileOpen da dobijes path za bazu1 i bazu2, pa to upises u text boxKliknes dugme 'Povesi TAbele'
Treba ti i dugme 'Povezi tabele'
Dugem 'Povezi tabele' uradi ovo:

proveri da si nesto izabrao za Baza 1 i Baza 2
proveri da nisi izabrao isti fajl za Baza 1 i Baza 2
proveri sta jos mislis da treba da se proveri
ako je sve provereneo
pozovi funkciju LinkNABazu1
pozovi funkciju LinkNABazu2

NAravno da imas ERROR handling, za slucaj da nesto podje naopako.

Ovo sve kad napravis, imas neku vrstu wizarda koju mozes da selis iz aplikacije u aplikaciju.

Ovo sve radi pod pretpostavkom da BAza1 i baza2 sadrze tacno onoliko tabela koliko ti linkuje, (iz svake baze se linkuju SVE tabele)

Akui ti treba da linkujes samo neke tabele iz pojedinih baza, onda treba da imas lokalnu tabelu TabeleZaLinkovanje(OZnakaBAze, OriginalnoIme, ImeUMojojAplikaciji). Krozz set-up popunis imena tabela i oznaku baze. Onda sa FielOpen pokazes path za svaku oznaku baze i primenis tvoj kod -onu funkciju za linkovanje sa pocetka.

Nemam vremena da sastavim zgodan primer, ako me podsetite pocetkom sledece nedelje, okacicu primer.

 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 07:46 - pre 168 meseci
To je dobra ideja ali ja trebam linkat tabele koje su već linkovane,znači već postojeće linkove treba osvježiti na drugu bazu.Ovo se dešava:Tabela tblArtikli je povezana na RobnoBaza.mdb a GLSTAVKE je povezana na BAZAKASA.mdb.E sada kad bi bile te dvije funkcije, jedna za jednu bazu druga za drugu,onda kad bi došlo do pokretanja prve funkcije da osvježi prvi link onda bi javio grešku zato što bi naišao na tabelu iz druge baze ili ne bi? Možda da napravim primjer?
miro
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 11:52 - pre 168 meseci
Raspakuj ovo u folder PK na svom disku i isprobaj formu "Izbor klijenata". Nadam se da nisam prevideo neki .dll ili ocx. i da će ti ovo pomoći.
Prikačeni fajlovi
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 13:39 - pre 168 meseci
Hvala ti na trudu,ja baš imam skoro isti kao tvoj kod i to mi radi.Sad ti vraćam ovo tvoje što si mi poslo skupa sa svojom bazom gdje su tabele koja se zove BAZA_KASA.mdb . Ja sam iz te baze ulinkovo jednu tabelu u tvoju aplikaciju,a putanja je u direktoriju C:\PK. I sada ako možeš na ovaj postojeći kod koji imaš u svojoj aplikaciji za linkanje tabela ugradiš da može ulinkovati tabelu iz ove baze koju sam ja postavio,naravno skupa sa tvojim tabelama ,jer sad javlja grešku kad sam ja ovu svoju jednu tabelu ulinkovo,a bez nje sve radi u tvom programu.Nadam se da me razumješ.
Hvala
miro
Prikačeni fajlovi
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 14:08 - pre 168 meseci
Miro, svaku tabelu koja ima različito ime od postojećih tabela u Pogonsko knjigovodstvo.mdb, moraš da ulinkuješ prvi put ručno. Nakon toga u tabeli AS_KLIJENTI dodaj zapis broj 6 i u koloni putanja upiši \PK\BAZA_KASA.mdb.

Naravno da ovaj program nije podešen da radi sa tvojim tabelama pa neće biti nikakvog efekta u aplikaciji ali će redovno da uradi automatski RefreshLink.

Da bi radio uspešan automatski RefreshLink i linkao se sa baze na bazu, potrebno je da one imaju identične tabele. Access "trči" kroz sve tabele u tekućoj .mdb (front end) i linkuje takve iste sa zadate putanje na kojoj se nalazi back end.

Ukoliko imaš baze sa različitim nazivima tabela onda ćeš morati da primeniš VBA kod koji ti je dao Zoran u svom prvom postu jer će ti trebati brisanje postojećih tabela pre linkovanja.

RefreshLink samo osvežava linkove sa putanje koja mu je data.

[Ovu poruku je menjao Getsbi dana 07.07.2010. u 16:12 GMT+1]
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 17:53 - pre 168 meseci
Evo da zakacim i ja za sada dva moguca resenja, mozda nekome bude koristilo

Prvo resenje linkuje tabele iz jedne baze. Linkuju se (osvezavaju) samo one tabele koje su vec zakcene za aplikaciju. Ako fajl sa podaciam ima 10 tabela, a u aplikaciju su linkovane tri tabele, onda ce se uvek osveziti samo te tri, ostale program ni ne vidi dok se ne povezu rucno. Znaci, table koje aplikacija vec vidi mogu se pozvati iz nekog drugok fajla.

Drugo resenje pretpostavlja da je aplikacija povezana za vise od jednog back end fajla. Iz svakog back end fajla linkovana je poneka tabela, i back endovi imaju i drugih tabela, za koje nasa aplikacija niti zna niti je briga. Zakacio sam fajl sa jednom formom, dva modula, jednim kverijem i jednom lokalnom tabelaom. To resenje dozvoljava da se kacis za razlicite back endove.

Ako ista od ovoga sto sam zakacio koristi, samo uvezite sve objekte (osim linkovanih tabela, tabele cete linkovati odakle vam trebaju i koje vam trebaju) i sve bi trebalo da radi. Oba resenja pretpostavljaju da cete za prvi put rukom povezati tabele. Onda samo birate gde vam se nalazi fajl sa podacima (ili vise fajlova)


Ima i treca opcija, da ce cuva konfiguracija linkovanja u lokalnoj tabeli ali to zahteva dosta rada, ne na linkovanju, nego na alatima za odrzavanje konfiguracione tabele i formi za set-up. Mi smo profesionalci pa nam to nije tesko ;-)

Prikačeni fajlovi
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju07.07.2010. u 19:50 - pre 168 meseci
Proverio sam i ovo drugo rešenje radi verovatno upravo ono što Miroslavu treba.
Nakon ručnog linkovanja fajl treba obavezno zatvoriti, pa pri sledećem otvaranju uraditi relink sa bilo koje već programu poznate lokacije.
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju09.07.2010. u 10:14 - pre 167 meseci
U pravu si evo sad sam vidio još će mi trebat vremena da kod sebe primjenim,pa ako nije problem da ako mi ne bude jasno da vas još malo gnjavim.
miro
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju10.07.2010. u 09:35 - pre 167 meseci
Imam pitanje:Sve mi radi imam dvije baze back End i one su linkovane i ova funkcija radi,e sad kad hoću da se povežem na staru godinu recimo 2009_Robno_Baza.mdb onda mi javi ovu grešku iz funkcije:
Code:
RelinkTables_Error:
  Select Case Err.Number
Case 3021
    MsgBox "Access ne prepoznaje ime MDB fajla koji zelite da povezete." _
    & vbCrLf & "Ovaj program zahteva da ime fajla bude onako kako je pokazano u list boxu.", vbExclamation
  Case Else
    flgError = True
    MsgBox "Error " & Err & " " & Error$ & " in RefreshMDBLinks!"
  End Select
  
  Resume RelinkTables_Exit

A inače trenutna godina mi je Robno_Baza.mdb znači bez one godine ispred.Kad bi se moglo tu nešto popravit onda bi imao cjelokupno rješenje problema.Ja sad imam to rješenje sa jednom bazom,znači povezujem se na Robno i na stare godine robno,ali nemam rješenje da se povezujem na robno i financijsko i na stare godine robno i financijsko istovremeno.
miro
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju10.07.2010. u 09:54 - pre 167 meseci
Ako si povezao prvi put ručno tabele iz 2009_Robno_Baza.mdb, izašao iz programa i ponovo pokrenuo "LinkFromMultipleFiles.mdb" moći ćeš da automatski linkuješ. Kod mene to funkcioniše. Pitanje je samo šta si i kako si to ugradio u svoj program. Proveri da li si pokupio sve elemente (funkcije i procedure) iz date aplikacije. Svaka nova baza mora da se prvi put ulinkuje ručno.
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju10.07.2010. u 10:55 - pre 167 meseci
To i kod mene radi kad ručno povežem robno2009, ali ako je moguće da ne moram ručno povezivati.Znači kad izaberem samo robno da poveže i isto tako robno2009.
miro
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2831



+45 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju10.07.2010. u 11:53 - pre 167 meseci
Ukoliko baza1 i baza2 imaju različite skupove tabela (broj i naziv) i pri tom su još na različitim lokacijama, normalno je da mora prvi put da se ulinkuju ručno. Neznam koliko ti je jasan koncept Relink-a.
 
Odgovor na temu

Miro35
Miroslav Čondrić
BiH

Član broj: 63672
Poruke: 122
*.tel.net.ba.

Sajt: Tel.net.ba


+3 Profil

icon Re: Linkovanje tabela iz dvije baze u jednu aplikaciju12.07.2010. u 07:42 - pre 167 meseci
Izgleda da se nisno razumjeli.Ovo je moja funkcija koja se zove "osvjezi":
Code:
Public Function osvjezi(txtBaza As String, txtZaporka As Variant) As Boolean
On Error GoTo osvjezi_error
    Dim dbsCurrent As Database
    Dim tdfLinked As TableDef
    Dim Ok As Variant
    Set dbsCurrent = CurrentDb
    Dim strPutBaz As String
    

    strPutBaz = DLookup("PUTBAZ", "PUTANJA")
    If Right(strPutBaz, 1) = "\" Then
    strPutBaz = Left(strPutBaz, Len(strPutBaz) - 1) ' uklanja eventualno "\" iz naziva direktorija
    End If

            DoCmd.Hourglass True
    For Each tdfLinked In dbsCurrent.TableDefs
        If tdfLinked.Attributes = dbAttachedTable Then
           Ok = SysCmd(acSysCmdSetStatus, "Povezujem tablicu: " & tdfLinked.Name)

            If IsNull(txtZaporka) Or txtZaporka = "" Then
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza
            Else
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza & ";PWD=" & txtZaporka
            End If
            tdfLinked.RefreshLink
           
        End If
    Next tdfLinked
    Ok = SysCmd(acSysCmdSetStatus, "                                          ")
    osvjezi = True
    DoCmd.Hourglass False
osvjezi_exit:

Exit Functionosvjezi_error:
    DoCmd.Hourglass False
    Ok = SysCmd(acSysCmdSetStatus, "                                             ")
    MsgBox "GREŠKA:" & Str(Err) & Chr$(13) & Err.Description, vbCritical, "OOPS!"
    osvjezi = False
 Resume osvjezi_exit
End Function

Ovaj dio koda je važan:
Code:
DoCmd.Hourglass True
    For Each tdfLinked In dbsCurrent.TableDefs
        If tdfLinked.Attributes = dbAttachedTable Then
           Ok = SysCmd(acSysCmdSetStatus, "Povezujem tablicu: " & tdfLinked.Name)

            If IsNull(txtZaporka) Or txtZaporka = "" Then
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza
            Else
                tdfLinked.Connect = ";DATABASE=" & strPutBaz & "\" & txtBaza & ";PWD=" & txtZaporka
            End If
            tdfLinked.RefreshLink
           
        End If
    Next tdfLinked
    Ok = SysCmd(acSysCmdSetStatus, "                                          ")
    osvjezi = True
    DoCmd.Hourglass False

Ovde bi trebao neku petlju stavit ili tako nešto,znači ako funkcija naiđe na tabelu koja je ulinkovana iz neke druge baze
odnosno ne postoji u ovoj bazi koju sam izabro iz kombo boxa i koju linkujem,treba da je preskoči a ne da mi javi ovu grešku koja se nalazi u funkciji.To je ovaj dio koda:
Code:
osvjezi_error:
    DoCmd.Hourglass False
    Ok = SysCmd(acSysCmdSetStatus, "                                             ")
    MsgBox "GREŠKA:" & Str(Err) & Chr$(13) & Err.Description, vbCritical, "[red]OOPS[/red]!"
    osvjezi = False
 Resume osvjezi_exit
End Function


miro
 
Odgovor na temu

[es] :: Access :: Linkovanje tabela iz dvije baze u jednu aplikaciju

[ Pregleda: 8414 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.