140
Ms Access
-
#100 a számláló mező minden új rekord bevitelekor egyel növekszik(ill. csökken, ezt be lehet állítani), ez automatikus, nem lehet szerkeszteni
a kép beszúrása szintén rekord felvitelkol állítható be, csak egy kattintás a mezőbe...
-
Borg #99 Várjálmár, eddig én is eljutottam velük, és ezután hogyan tovább?:)
Mert ettől még sem a számláló nem működik, sem képet nem lehet berakni a kitöltéskor... -
#98 1. Tábla szerkesztésénél adj meg egy számláló adattípusú mezőt
2. Tábla tervező nézetében az adattípus OLE objektum legyen -
Borg #97 Nah, újabb kérdéseim vannak:) Már tovább jutottam kicsit.
1. Szóval szeretnék csinálni az űrlap tetejére egy számlálót, amely ugyanazt a számot mutatja mindig, ahányadik rekordot az ürge tölti ki éppen. Ezt hol tudom beállítani, hogy az a szám jelenjen meg ott?
2. Képeket is kellene tudni csatolni az egyes adatlapokhoz. Tehát az űrlapon lenne egy mező, amibe drag&drop, vagy bárhogyan, de be tudna rakni képeket. Ezt meg lehet oldani? -
#96 Kipróbálom, kössz az ideát!
Megjegyzés:
A zárolással akadt néha gondom, történt egyszer, hogy futásidőben zároltam egy rekordot, mégis lehetett törölni(szerkeszteni nem!), pedig a súgóban egyértelműen leírja, hogy zárolt rekorddal nem lehet semmit sem csinálni. Hogy történhetett ez? Rejtély! -
#95 gondoltam erre az alternatívára, de ebben rengeteg a hibalehetőség, és utálok ellenőrző rutinokat irogatni.... -
#94 sajnos az access részben platformfüggő, gyakorlatilag viszont a mentett mdb fájlt más adatbáziskezelővel is lehet haszálni .(VisualBasicben írtam hasonlót progit, amelynek egy access adatbázis volt az adattárolója) -
Borg #93 Eh... nem egy egyszerű dolog ez a keresés...
Szóval ha én ebből az adatbázisból, meg a keresőjéből külön progit akarok csinálni, azt lehet?
Tehát hogy ne accessban kelljen bohockodni vele annak, aki használja majd... -
Zipus #92 Most már világos, hogy mit szeretnél! :-)
Erre jó a kombi lista, de a háttérbe biztos, hogy programozni kell!
Én a következőt tenném:
Felvenném a következő táblákat:
1. csapat számláló és név mezővel.
2. játékos játékosaz és név mezővel. A játékosaz mező kötve lenne a csapat számlálóhoz.
(Igy azonosítva van a játékos-csapat viszony)
3. mérkőzés
(általad felvett mezőkkel, ami között ott van a játékos kombi lista)
4. játékos értékelés: játékos értékelés mező
Amikor összehozod a két csapatot a háttérbe futtatsz lekérdezést, ami a mérkőzéshez felviszi a játékos és a tulajdonság mezőket a játékos értékelés táblába.
Utána segédűrlapként nyitod a játékos értékelés táblát amibe beviszed a kivánt adatokat, amit rekordonként kilépéskor zárolsz!
-
ronny666 #91 ezt nem tudod megcsinálni törlő lekérdezéssel?
mielőtt visszalép A űrlapra, egyszerűen kitörli 1 átmeneti táblából a játékos nevét+a többi adatot...
Ha új mérkőzést választ, akkor úrja létrehozod ezt az átmeneti táblát.....próbáld ki..... -
#90 Úgy érzem elbeszélünk egymás mellett, mivel eddig rébuszokban beszéltem. pontosan értsd, leírom mit akarok megvalósítani:
Amin most dolgozok, az egy komplett adatbázis-rendszer kézilabda bajnokságok adminisztrálása céljából. A problémám a játékosok egy adott mérkőzésén történő teljesítményük rögzítésekor vetül fel, mivel A űrlapon találhatók a mérkőzés adatai, a felh kiválasztja a mérkőző csapatokat (kombi panelból), futásidőben eme csapatok játékosai megjelennek az említett listában. Ha az egyik lista egy játékosára kattint, feljön a B űrlap, ahol kilenc tulajdonságot lehet beállítani. Ha ezt megtette, visszalép az A űrlapra, ahola beállított játékos neve jó lenne, ha eltűnne, így kiküszöbölhetem azon problémát, hogy a felh mégegyszer ugyanazon meccsen ugyanazon játékosának adatait megváltoztassa.
-
#89 isten őrizz, nem akarom én használni, te javaslod lista helyett...
Nálam a listát futásidőben egy függvény tölti fel, méghozzá elég bonyolult módon, nem kis munkám van ebben a függvényben. Ennek bizonyos (lásd lent) értékeit kellene elrejtenem, egész egyszerűen más megoldás nem jut eszembe, hisz ha nem tüntetem el, akkor a felh véletlenül mégegyszer haszálhatja a már beállított érték tulajdonságait. Próbáltam figyelmeztetés módszerrel, de ez nem elegáns.
Elvileg VBA-ban activeX vezérlőként be lehet hívni más regisztrált vezérlőt is, (mondjuk azt, amit az Excel is használ) de az is ugyanígy működik. -
Zipus #88 Jó, amit a Rushman ír, de ez nem egy felhasználóbarát módszer!
A szebbik módja a paraméteres lekérdezés!
Ehhez létre kell hozni egy űrlapot két kötetlen mezővel. Ebbe íratod bele a két mező keresőfeltételét! Ezután egy nyomógombbal meghívod a lekérdezést amibe az űrlapon szereplő két kötetlen mező neve szerepel. Kész a lekérdezés futásidőben!
Ha viszont a nyomógomb egy jelentést hív meg ami viszont az előző lekérdezésre hivatkozik, akkor nyomtathatod is! -
Zipus #87 Én úgy érzem, hogy nem arra akarod használni a kombinált listát amire való!
Konkrétabban példával:
Van egy tábla pl. Szinek: fehér, piros, fekete stb.
És van pl egy másik tábla Autó, aminek egy mezője, a szín.
Namármost, ha nem akarod ezt mindig gépelgetni, akkor ez a mező kombinált lista, ami a szinek táblára hivatkozik.
De ezt a pl fehér színt más autó is használhatja, ezért nem kell eltüntetni!
Ha mást akarsz ezzel művelni, az programozástechnika, nem kombi lista!
Ezt amit akarsz meg lehet valósítani, de csak a fenti módon.
-
#86 Az olyan mezőben, ahol előfordulhat üres érték, ott engedélyezned kellene a nulla karakterláncot, így az üres értékkel rendelkező mezőt is számításba veszi. Ha ez nem megy, akkor kötelezővé kell tenni a kitöltését (persze csak elvileg, ha nem akarsz ezzel pöcsölni, akkor rakj be egy jelet alapértelmezettként) -
#85 Oksa, ez megy, csak futásidőben nem jön össze.
A kombi lista nem járható, mivel a felh-nek az összes adatot látnia kell egyben (A űrlap), mivel később ezekből választ ki! tehát a lista egy elemére (Z elem) kattintva feljön egy másik űrlap( B űrlap), ahol a Z elem további adatait állíthatja be. Ha végzett, bezárja a B űrlapot, és az A űrlap listájából a Z elem el kell hogy tűnjön, de nem törléssel, csak lefedéssel.
Próbálkoztam azzal, hogy a lista visszatéréskor kap egy szűrőt Like"Z elem" feltétellel, de ze nem jó, mivel a következő ilyen elemnél már az előzőleg lefedett Z elem újra előjön, kombinálva meg nem jön össze a szűrés.
Ha ezt megoldod, kapsz egy fagyit... -
#84 Gondolom adatokat akarsz keresni űrlapok mezőiben.
Ez lekérdezéssel tehető meg legkönnyebben, melynek a szükséges táblái (feltételezem azt, hogy az űrlap adatai is táblában vannak tárolva) a rekorforrás (lekérdezés tervező nézetében kiválasztható), abból a két mezőt kiválasztod, és a feltétel mezőbe beírod a kritériumot. A súgóban találsz példákat feltételekre, de ha konkrétumokat tudsz mondani, mondjuk mit akarsz keresni, akkor egyszerűbb a válasz
-
Borg #83 Köszi, meg fogom próbálni:)
Még egy kérdés akkor:
Ha nekem van egy ilyen űrlap adatbázisom, mondjuk 100 kitöltött űrlappal.
Hogyan csinálhatok én ehhez egy keresőfelületet, amely az űrlap 2 eleme szerint tud keresni közöttük, és a találatokat kilistázza?
(lehet gagyi kérdés, de az adatbázis szarságokkal csak most ismerkedek még - újra, és ez az access nem egy felhasználóbarát progi...) -
Zipus #82 Én az Access-t az Excellel sosem kevertem! Irtam egy szállítmányozási-számlázási rendszert csak Accessben!
Az Excelt szarra sem tartom mellette, ennélfogva nem tudok segíteni neked!
Mindent megoldanék szerintem, de kizárólag csak Accessben! -
ronny666 #81 Hát igen, vannak elég érdekes kérdéseim....
A lekérdezéseket átlátom...csak ezekkel a dolgokkal sok okosságot lehetne még belevinni az adatbázisomba/lekérdezésembe..
Pl, hogy miért kéne megszámozni 1 lekérdezés rekordjait:mert a lekérdezés ki van exportálva EXCEL-be makróval(!!!ugyanis EXCEL-be kell továbbküldeni a lekérdezés eredményét!!!), ahol az első rublika az "Fsz.", s ha van 1000 db. tétel, akkor nekem kell megszámoznom (most az mind1, hogy pár katt az egész!)
A másik, hogy miért kéne 1 lekérdezés akányhányadik(!) elemét lekérdezni úrja: mert az 1ik lekérdezés visszaad pl 150 nevet, és 1 másik kérdés az űrlapon az, hogy "Hányas fsz.-al ellátott személyt szeretné bővíteni/moódosítani/csatolni?...(!!! itt még nincs TAJ szám, csak név, anyja neve, szül.hely !!!), s egyszerűbb megadni űrlapon, hogy a "45"-ös számú egyént szeretném a fő táblába beilleszteni, mint begépelni az egészet....
Evvégre kellenek ezek az okosságok....
Nincs valami 5leted? -
Zipus #80 Lásd a #62 üzenetet! -
Zipus #79 Te elég érdekes kérdéseket teszel fel, de én attól tartok, hogy nem látod a lekérdezések lényegét!
Bocsi, ha nem így van!
A lekérdezés mindig egy bizonyos feltételnek megfelelő rekordhalmazt ad vissza! Ha a feltételed olyan, akkor 5 rekordot, ha olyan akkor 83-at stb.
A lekérdezésnél sorszámnak ennélfogva nincs nagyon értelme, viszont az arra alapozott jelentésnek igen! Gondolj csak arra, hogy egy vásárlásnál kinyomtatva akarjuk csak tudni, hogy hány tétel volt.
A kérdésed: meg lehet oldani, hogy egy lekérdezés eredményét tovább szűkíted, de akkor az első lekérdezés eredményét le kell tárolni egy ideiglenes táblába és utána arra kell meghívni egy új lekérdezést. -
ronny666 #78 Akkor azt, hogy tudom megcsinálni, hogy a lekérdezés modjuk 5. (vagy akárhányadik) rekorját szedem ki 1 másik lekérdezéssel?? -
Borg #77 Valaki jártas ember azt meg tudná mondani nekem, hogy ha csinálok az egyik beviteli mező helyett egy legördülő menüt, az adatfelvitelhez, akkor annak a választható pontjait hol tudom hozzáadni?
Mondjuk 4 pont közül lehessen csak választani..
(tehát úgy mint itt a topic tetején, az Ms Access legördülő menüben ott a többi lehetőség is) -
Zipus #76 Nem tudom, soha nem volt rá szükségem! Ha rájössz ne titkold el! :-) -
ronny666 #75 Olyasmi, mint a Táblánál a "számláló", csak lekérdezésben....félére gondolok.... -
ronny666 #74 Zipus: nem tudod véletlenül, hogy lekérdezést, hogy lehet besorszámozni???
Az 1 dolog, hogy látom, hogy pl van benne 8 rekord, de a sorszámozás...arra nem jövök rá...
(teljesen mindegy, hogy milyen a lekérdezés) -
ronny666 #73 [email protected]
ide küldheted, de én is csináltam 1 mintát, hogy mi is a probláma...
thx -
Zipus #72 Megcsináltam egy mintaadatbázist valami hasonló dologra. Azt nem írtad, hogy a tábláid milyen mezőkből állnak és mi a kapcsolat közöttük. Így egyértelműbb kibogozni a hibát.
Az én adatbázisomban csináltam több táblából származó lekérdezést, jelentést, kombinált listát, ha gondolod elküldöm.
Talán mankónak jó lesz! :-)) -
Zipus #71 Nézdd, így nem jutunk egyről a kettőre! Az biztos, hogy nem jól szervezted a táblákat! Akár 8 táblát is össze lehet vonni lekérdezésbe, de ehhez a kapcsolati tábládat is jól ki kell alakítanod!
Adj meg egy emil címet a #68 üzenet alapján megmutatom, hogy én miként csinálnám! -
ronny666 #70 nem lehet osszevonni a 3 lekérdezést, mert ez már 1 előre beállított lekérdezés...más kapcsolatban vannak, ezzel csak bővíteném a lekérdezéseket, hogy összevonnán őket, mert nem lehet 3 táblából/lekérdezésből jelentést nyomtatni...
A lényeg, hogy semmi kapcsolat nincs a 3 lekérdezés között...se "és", se "vagy"...semmi...
És nem ad vissza semmit, hiába van eredménye az "1","3" lekérezésnek...
-
Zipus #69 Első kérdésem, hogy miként vonod össze a 3 lekérdezést? A hiba a sejtésemből fakadt, az egyértelmű!
A másik dolog, hogy felesleges ehhez 3 lekérdezés! Egy kell, hiszen a TAJ-szám azonosít egy sofőrt! Egy lekérdezésbe beviszed minhárom táblát és kiválsztod a szükséges mezőket! Azoknál a sofőröknél, ahol nincs meg valamelyik adat a lekérdezés üres mezőt hoz, de a többinél látszik!
Igy csináld meg! -
ronny666 #68 Ez a konkrétum...
Van 3 lekérdezés:
"1":
1 mező: Tajszám
2 mező: Név
3 mező: Szül. idő év
4 mező: Szül. idő hó
5 mező: Szül. idő nap
"2":
1 mező: Tajszám
2 mező: Irányítószám
3 mező: lakhely város
4 mező: közterület
5 mező: házszám
"3"
1 mező: Tajszám
2 mező: Autó típusa
3 mező: Autó színe
4 mező: Autó rendszáma
5 mező: Autó rakománya
Na, ezek a lekérdezések, külömböző táblákból jön össze...
Nincs meg minden sofőrnek a lakcíme, irányítószáma...stb ("2" lekérdezés")
Ez nem is baj...de kb. a fél állománynak megvan...Namost, amikor nyomtatnám a menetlevelet ki, akkor kéne mind a 3 lekérdezést 1be venni, hogy jelentést tudjak nyomtatni...(nem járható út, hogy a többi sofőr adatait nyilvántartsam!) -
Zipus #67 konkrétan! bocsi :-)))
-
Zipus #66 Én nagyon valószínűnek tartom, hogy az "és" kapcsolatba fürdesz bele!
Egyesével hoz eredményt, de összesítve pont azért nem!
Konkrátan leírod a problámádat, akkor konkrátan leírva tudok segíteni! -
ronny666 #65 Újabb error....ezt kapjátok ki!!!!!
Van több lekérdezés, mondjuk "1","2","3" a nevük.
Namost mindegyikben max. 1 rekord lehet (Összesítés:first), rekordok 5 mezőből állnak fixen!!!!
Na, pl: "2" nevű lekérdezés nem hozott eredményt (azaz üres, 0 rekord van benne), a többi lekérdezésben benne van az 1 rekord, 5 mező adattal!!!
Mikor ezeket a lekérdezéseket újra lekérdezem (hogy összefűzzem őket), a teljes lekérdezésben 0 rekord lesz, holott az "1","3" lekérdezésben benne van az adat...
Nem tudjátok, hogy tudnám megcsinálni, hogy az "1","2","3" lekérdezéseket össze tudjam fűzni 1 rekordba 15 mezőbe?? -
Zipus #64 Én sem a törlésről beszéltem!
1. Táblára hivatkozik a kombinált lista, akkor a tábla minden egyes rekordja a listából elérhető.
2. A lista sorforrása egy lekérdezés, ami esetleg ismét lehet egy tábla, azonban a lekérdezés feltétel sorába szűkítheted.
Ha ez nem megfelelő, akkor nem értem a problémádat!
Bár túl sok extrát nem lehet ezzel művelni! :-) -
#63 csak én nem adatot akarok törölni, hanem adatot akarok lefedni( vizuálisan eltüntetni) a listából, ekkor viszont nem megoldás a tábla-szisztéma (szerintem) -
Zipus #62 A kombinált lista legegyszerűbb megoldása, ha az egy táblára hivatkozik! Én ezt szoktam mindig alkalmazni! Ez aztán a tábla elemeinek bővítésével a kombinált lista elemeit is bővíti.
Nem kell, felesleges bajlódni az AddItem és A RemoveItem stb metódusokkal! -
#61 hát elég érthetetlenűl írtam...