[ sabacc @ 02.01.2015. 09:07 ] @
Imao sam problem koji sam rešio uz pomoć ovog foruma (brisanje podataka iz forme velika pomoć od SLOJ-1973). Sada radim još na jednoj stvari. Postavio bih uslov koji bi bio pre izvršenja append query. Uslov se sastoji u tome da se append queri se ne pokreće u koliko bi u destinacionoj tabeli bio isi broj protokola ( uslov bi poredio podatke iz 2 tabele izvorne i destinacione). U temi brisanje podataka iz forme se koristio selekt upit i privremena tabela kojim bi se sprečavalo prebacivanje podataka koji ne odgovaraju, ali šta ako postoji veliki broj tabela i polja koje treba appendovati. Šaljem primer. Namirnice_kvalite je forma iz koje se pokreću append query kroz vb

[Ovu poruku je menjao sabacc dana 02.01.2015. u 10:32 GMT+1]
[ sabacc @ 02.01.2015. 16:32 ] @
Probao sam da na formu postavim i jedno nepovezano polje koje vuče vrednost iz tabele Kvalitet1 Broj protokola pa bih poređenjem vrednosti sa listom došao do neophodnog uslova za append, ali i tu negde grešim.
If Me.Broj_protokola <> Me.Combo106.ListRows And odgovor = vbYes Then


ili da na formu postavim combo box čija bi lista bila iz destinacione tabele (broj_protokola koji je exportovan u destinacionu tabelu) samo što ne uspevam da ograničim upis kojeg nema u listi

[Ovu poruku je menjao sabacc dana 02.01.2015. u 18:36 GMT+1]
[ SLOJ.1973 @ 02.01.2015. 17:39 ] @
Potrebno je da stoji:
Code:
If Me.Broj_protokola <> Me.Combo106 And odgovor = vbYes Then
.Pozdrav.
[ sabacc @ 02.01.2015. 17:48 ] @
Da, ali ovo bi radilo samo ako bih izabrao i vrednost u Combobox106, ali ja želim samo da mi on proveri vrednost iz liste. Zbog toga sam sve postavio u 1 combo box koji sam malopre naveo i da bi rešio problem treba samo u tom combo box zabraniti unos polja iz liste, ali nikako da uspem u tome. Mislim da je ovo lakše rešenj nego ono sa početka priče u koje bi se poredile 2 tabele

[Ovu poruku je menjao sabacc dana 02.01.2015. u 19:00 GMT+1]
[ SLOJ.1973 @ 02.01.2015. 19:13 ] @
Malo si ga zapetljao ili ja ne razumem.Hajde ispočetka.Trebalo bi da uporediš šta? sa čim?,pa ako ne postoji (gde,u kojoj tabeli?) ,append query se odradjuje. Jel može pojašnjenje pešaka,onako kako sam ti postavio u pitanju?
[ sabacc @ 02.01.2015. 20:07 ] @
Početak priče je uporediti podatke iz 2 tabele pa tek onda na osnovu poređenja njihovih vrednosti odlučiti da li da se append query izvršava ili ne. Prva tabela je Namirnice_kvalitet u kojoj se nalazi broj_protokola. Ostale tabele koje su povezane sa njom su Namirnicekv_prva i Namirnicekv_druga. (povezane su preko ID). One se appenduju u nove tabele Kvalitet1, Kvalitet 2 i Kvalitet3 (koje su povezane preko broja protokola primarni ključ je u tabeli Kvalitet1). U formi je urađen code koji podatke prebacuje iz tabela Namirnice_kvalitet,Namirnicekv_prva i Namirnicekv_druga u tabele Kvalitet1, Kvalitet 2 i Kvalitet3. U formi postoji polje u koji vi upišete broj uzorka i onda se kroz code prebacuju podaci. Problem je u sledećem kada bi exportovali podatke i posle nekog vremena izabrali isti broj protokola koji ste ranije exportovali access bi vam izbacio sistemsku poruku u kokjoj ako izaberete Yes on bi dodao podatke na tabele Kvalitet2 i Kvalitet3 jer u njima nisam mogao da stavbim polje ključa.
Moja zamisao je blia da u formi Namirnice_kvalitet ne dozvolim mogućnost biranja broja protokola koji je već exportovan

ILI kako sprečiti export ako su podaci već prebačeni
[ sabacc @ 02.01.2015. 21:24 ] @
Mislim da sam našao rešenje. Koga zanima neka pogleda rešenje je zanimljivo. Sastoji se u u labeli koja se otvara i zatvara u zavisnosti od vrednosti polja i exportovanih podataka. Usvakom slučaju hvala svima koji su pogledali ili mi pomogli. HVALA!

I JOŠ NEŠTO MORA SE REFERENCIRATI DAO 3.6 I U DEFINISANJU STAVITI DAO ISPRED Database I Recordset

Dim dbs As DAO.Database
Dim strsql2 As String
Dim rst2 As DAO.Recordset

[Ovu poruku je menjao sabacc dana 04.01.2015. u 08:13 GMT+1]