Bosna i Hercegovina



#76 23.07.2013-10:28
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Windows Xp Professional v.2002, Service Pack 3
Pozdrav
↑  ↓

#77 23.07.2013-13:07
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Riješeno! ZXZ puno hvala na pomoći
Pozdrav
↑  ↓

#78 23.07.2013-17:06
Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,528


Subject: Re: Spajanje arhiviranih baza
i sta je bilo nisam skontao ?
↑  ↓

#79 23.07.2013-18:56
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
U ovom dijelu koda trebalo je staviti ImeFajla = Dir sa početka petlje na kraj ispred Loop
DownloadIzvorni kod (vb.net):
  1. ImeFajla = Dir(DirPutanja, vbDirectory)
  2.         Do While Len(ImeFajla) > 0
  3.                         [b] ' ImeFajla = Dir **** Ovo je iz nekog razloga pravilo problem[/b]
  4.              If Right(ImeFajla, 3) = "Mdb" Then
  5.                 ImeBaze = DirPutanja & ImeFajla
  6.                 Prefiks = Mid(ImeBaze, (Len(ImeBaze) - 8), 2)
  7.                
  8.                      SQL(0) = "INSERT INTO tblTransakcije (IDTransakcije, Datum, Skladiste, IDdokumenta, BrDokumenta, " _
  9.                     & "PartnerID, RadniNalog, OperID, StatusTR, DatumU, Brisanje )IN '" & ImeTmpBaze _
  10.                     & "' SELECT " & Prefiks & "& [IDTransakcije] AS ID, Datum, Skladiste,IDdokumenta, " _
  11.                     & "BrDokumenta,PartnerID, RadniNalog, OperID, StatusTR,DatumU, Brisanje " _
  12.                     & "FROM tblTransakcije IN '" & ImeBaze & "'"
  13.                     DoCmd.RunSQL (SQL(0))
  14.                     SQL(1) = "INSERT INTO tblUlazIzlaz ( IDTransakcije, Sifra, Ulaz, Izlaz, Status, DatumU )IN '" & ImeTmpBaze _
  15.                         & "' SELECT " & Prefiks & " & [IDTransakcije] AS ID, Sifra, Ulaz, Izlaz, Status, DatumU " _
  16.                         & "FROM tblUlazIzlaz IN '" & ImeBaze & "'"
  17.                     DoCmd.RunSQL (SQL(1))
  18.                      
  19.              End If
  20. ImeFajla = Dir
  21.         Loop

Pozdrav
↑  ↓

#80 18.11.2014-14:08
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Svojevremeno smo radili na ovom problemu i to koristi i radi OK.
Međutim htio sam u Temp.mdb dodati još dvije tablice
tblProdaja i tblProdajaStavke
to sam dodao u kodu i to radi. Međutim kod upida podataka u tblProdaja javi se greška
Run-time error '9':
Subscript out of range-

U kod iz predhodnog posta dodao sam SQL(2)

DownloadIzvorni kod (vb.net):
  1. ImeFajla = Dir(DirPutanja, vbDirectory)
  2.         Do While Len(ImeFajla) > 0
  3.                         ' ImeFajla = Dir **** Ovo je iz nekog razloga pravilo problem
  4.              If Right(ImeFajla, 3) = "Mdb" Then
  5.                 ImeBaze = DirPutanja & ImeFajla
  6.                 Prefiks = Mid(ImeBaze, (Len(ImeBaze) - 8), 2)
  7.                
  8.                      SQL(0) = "INSERT INTO tblTransakcije (IDTransakcije, Datum, Skladiste, IDdokumenta, BrDokumenta, " _
  9.                     & "PartnerID, RadniNalog, OperID, StatusTR, DatumU, Brisanje )IN '" & ImeTmpBaze _
  10.                     & "' SELECT " & Prefiks & "& [IDTransakcije] AS ID, Datum, Skladiste,IDdokumenta, " _
  11.                     & "BrDokumenta,PartnerID, RadniNalog, OperID, StatusTR,DatumU, Brisanje " _
  12.                     & "FROM tblTransakcije IN '" & ImeBaze & "'"
  13.                     DoCmd.RunSQL (SQL(0))
  14.                     SQL(1) = "INSERT INTO tblUlazIzlaz ( IDTransakcije, Sifra, Ulaz, Izlaz, Status, DatumU )IN '" & ImeTmpBaze _
  15.                         & "' SELECT " & Prefiks & " & [IDTransakcije] AS ID, Sifra, Ulaz, Izlaz, Status, DatumU " _
  16.                         & "FROM tblUlazIzlaz IN '" & ImeBaze & "'"
  17.                     DoCmd.RunSQL (SQL(1))
  18.                      
  19.                         SQL(2) = "INSERT INTO tblProdaja (OrderID, Skladiste, FiskalniBroj, PartnerID, StovaristeID, " _
  20.                     & "SifraKup, Datum, DatumIsporuke, NacinPlacanjaID, RokPlacanjaID, RokPlacanja, " _
  21.                     & "DVO, Valuta, Dostava, Rabat, PDV, ZKI, JIR, Opaska, Opaska2, PurchaseOrderNumber, " _
  22.                     & "ShipName, ShipAddress, ShipCity, ShipPostalCode,ShipCountry, ShipPhoneNumber, " _
  23.                     & "ShipDate, ShippingMerhodID, PonudaID, Proknjizeno, KorisnikID, Stornirano, Komp )IN '" & ImeTmpBaze _
  24.                     & "' SELECT " & Prefiks & " & [IDTransakcije] AS ID, Skladiste, FiskalniBroj, PartnerID, StovaristeID, " _
  25.                     & "SifraKup, Datum, DatumIsporuke, NacinPlacanjaID, RokPlacanjaID, RokPlacanja, " _
  26.                     & "DVO, Valuta, Dostava, Rabat, PDV, ZKI, JIR, Opaska, Opaska2, PurchaseOrderNumber, " _
  27.                     & "ShipName, ShipAddress, ShipCity, ShipPostalCode,ShipCountry, ShipPhoneNumber, " _
  28.                     & "ShipDate, ShippingMerhodID, PonudaID, Proknjizeno, KorisnikID, Stornirano, Komp " _
  29.                     & "FROM tblProdaja IN '" & ImeBaze & "'"
  30.                     DoCmd.RunSQL (SQL(2))
  31.              End If
  32. ImeFajla = Dir
  33.         Loop

zapravo nije mi jasno ovo SQL(0), SQL(1), a ja sam dodao SQL(2). dali tu griješim?

Ikona prilozene slike:
Image1.jpg
Tip fajla: Informacije o fajlu: jpg jpg
Preuzimanja: 59
Veličina: 210.89 KB
Veličina slike: 907 x 407 Pixels


Pozdrav
↑  ↓

#81 18.11.2014-14:42
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,762


Subject: Re: Spajanje arhiviranih baza
Treba provjeriti variable:
ImeBaze
ImeTmpBaze
Prefiks

dali su u njima dobri podaci i ako jesu onda moze biti samo u neskladu polja jedne tabele i druge.
Pozdrav
↑  ↓

#82 18.11.2014-14:52
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
To bi trebalo biti u redu jer mi SQL(0) i SQL(1) odradi kako treba. Baza i temBaza su iste.

Nije mi jasno u funkciji imama demenzionirano

Dim SQL(1) As String

a onada imam

SQL (0) =
SQL (1) =

dali dalje ide

SQL (2)
SQL (3) to treba posebno dimenzionirati na početku funkcije?
Pozdrav
↑  ↓

#83 18.11.2014-16:26
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,762


Subject: Re: Spajanje arhiviranih baza
Hehe pa to i jeste greska sad treba:
Dim SQL(2) As String
Tri memorijske za 3 sql-a
Pozdrav
↑  ↓

#84 18.11.2014-17:00
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Citat od zxz:
Hehe pa to i jeste greska sad treba:
Dim SQL(2) As String
Tri memorijske za 3 sql-a
Pa baš to mi nije jasno. Zagrada iza SQL i u njoj neki broj (1). Molim te da mi to objasniš.
Guglao sam, ali nisam uspio ništa naći.
Pozdrav
↑  ↓

#85 18.11.2014-17:59
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,762


Subject: Re: Spajanje arhiviranih baza
Pa to je u svim programskim jezicima isto.
Dimenzionise se var. kao niz.
U zagradi se stavlja broj elemenata niza.
Kod nas je to 3
Broji se i nula uvijek.
U c++ je samo srednja zagrada
Napr.
sting ImeNiza[brojElemenata];
Java isto
Delphi isto
Pozdrav
↑  ↓

#86 18.11.2014-18:37
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Ti sa mnom razgovaraš kao da sam ja na tvom nivou poznavanja programskih jezika.
Ja jedino nešto skromno poznajem MS Access VBA, a ništa od ostalog nisam radio. Možda nekad davno kada sami imao Comodore 64 radio sam nešto malo u Basicu

U ovom konkretnom slučaju me zanima slijedeće:
u ovoj temi u postu #46 imamo

Function KreirajTemp()
...
...
Dim ImeFajla As String, SQL(1) As String

i onda dalje u funkciji

SQL(0) = "INSERT INTO tblTransakcije (IDTransakcije, Datum,...itd
DoCmd.RunSQL (SQL(0))

SQL(1) = "INSERT INTO tblUlazIzlaz ( IDTransakcije, Sifra,...itd
DoCmd.RunSQL (SQL(1))

i ovo sve radi OK

U istoj funkciji imamo dio koji mi kreira dvije tablice tblTransakcije i tblUlazIzlaz.
Tu sam dodao dio koda koji mi pravi još dvije tablice tblProdaja i tblProdaja stavke. I to radi OK.

Problem mi se javlja kada pokušavam popuniti prvu od tih tablica

SQL(2) = "INSERT INTO tblProdaja (OrderID, Skladiste, FiskalniBroj,...ITD

Nije mi jasno koji broj treba biti unutar zagrade iza SQL. Zapravo koja je relacija između
Dim SQL(1) AS String i dalje u kodu

SQL(0) = nešto
SQL(1) = nešto
Pozdrav
↑  ↓

#87 18.11.2014-22:06
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,762


Ocjena: Ocjena:100 Subject: Re: Spajanje arhiviranih baza
Moras na vrhu gdje dimenzionise ovu variablu SQL niz prosiriti za 1.
Znaci bit ce
Dim SQL(2) as integer
I sada imas od 0 do 2 3 elementa niza i to:
SQL(0), SQL(1) i SQL(2)

To je bilo u Vb Skoli.
Ukoliko stoji na vrho Option explicit u modulu onda sve variable moramo dimenzionisati.
Var. SQL je dimenzionisana kao niz od 3 elementa i to kao string.
Pozdrav
↑  ↓

#88 19.11.2014-08:42
pmiroslav Offline
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,371


Subject: Re: Spajanje arhiviranih baza
Davno je bila VB škola pa sam nešto i zaboravio i treba podsjetiti.
U svakom slučaju ovo je pomoglo. Funkcija radi što treba.
Hvala.
Pozdrav
↑  ↓

#89 19.11.2014-08:55
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,762


Subject: Re: Spajanje arhiviranih baza
Hehe kao da si se malo bio iznervirao juce pa nisam htio da pristajem na muku.
Citat:
U zagradi se stavlja broj elemenata niza.
Kod nas je to 3
Broji se i nula uvijek.
U c++ je samo srednja zagrada
Napr.
sting ImeNiza[brojElemenata];
Java isto
Delphi isto

Htio sam te samo podsjetiti.

Sto se tice programskih jezika , to se lako prebacuje sa jednog na drugi ako radis ali tesko je nauciti programiranje uopsteno.
Kada imas logiku programiranja i znas sta trazis onda ti samo ostane da u helpu ili na netu nadjes adekvatnu komandu u datom jeziku za to.
Pa i komande su svugdje slicne.
Kazu ovako:
Da bi covjek naucio da programira toliko da napravi neki malo ozbiljniji program treba mu 5 do 6 g. a da bi se prebacio sa jednog programskog jezika na drugi treba nekoliko mjeseci.
Pozdrav
↑  ↓

Stranice (6): 1, 2, 3, 4, 5, 6


All times are GMT +01:00. Current time: 21.10.2018-23:00.