Bijlagen toevoegen na keuze combo

Status
Niet open voor verdere reacties.

Rap261

Gebruiker
Lid geworden
2 sep 2008
Berichten
273
Hallo,


Ik heb een formulier met:
- 2 comboboxen (Combo 1 = 1e selectie, Combo = 2e selectie)
- 2 buttons met vorige en volgende
- bijlage control om deze te kunnen zien/toevoegen

Daarnaast heb ik twee tabellen waarvan tabel 2 een bijlage veld heeft

Hoe moet ik de bijlage control in het formulier linken aan combo box 2 zodat de bijlage control de juiste bijlage laat zien die bij de keus van de combo boxen hoort?
Hoop dat mijn vraag duidelijke is, vergelijk het anders met een textbox ipv een bijlage veld. Een andere keuze in de combo boxen betekent een andere tekst in de textbox

Bekijk bijlage Voorbeeld.rar

Alvast bedankt
 
Als je op dit (en vermoedelijk willekeurig welk ander forum) zou zoeken op Bijlageveld, dan heb je goede kans dat er van de 100 treffers er 99 tot de conclusie zijn gekomen dat je dit veld niet moet gebruiken, maar in plaats daarvan gewoon tekstvelden moet gebruiken waarin je de bestandsnaam en het pad opslaat. De 100e die dat niet doet, blijkt dan doorgaans je eigen topic te zijn, die nog niet bij die conclusie is aangeland. De reden om met een grote boog om het bijlageveld heen te lopen, is dat de database veel te snel groeit, en voor je het weet uit zijn voegen barst. En aangezien Access nog steeds een beperkte maximum grootte kent (2Gig) is het veel slimmer om d.m.v. tekstvelden bijlagen te registreren. Dan heb je ook gelijk het probleem van je keuzelijsten opgelost.
 
Hi Michel,

Als ik de bijlage in een tekst veld zet is iid het combo proleem opgelost maar zie dan ook aleen maar een link.. niet het bestandje of icoontje ervan zoals bij het bijlage control
Daarbij krijg ik dit veld waar de link zichtbaar is niet op hyperlink, althans dit werkt niet. Ik kan de link dus niet openen
Als laatste, wat als ik meerdere bestanden will toevoegen in dit veld, en ook in het veld van de bestands naam meerdere wil toevoegen? Kan ik die twee commandbuttons dan nog gebruiken?
 
Dat met die hyperlink is opgelost.. ik moet natuurlijk het veld in de tabel dan op de eigenschap Hyperlink zetten
 
ps. mocht het wel mogelijk zijn om met een bijlage control te werken en dit ook via de comboxen te laten zien maar raadt je het af vanwege de 2gb limit in Access dan zou dat in mijn geval niet uitmaken. Gezien de grootte van de bijlagen en het uiteindelijke aantal zou mijn DB niet groter worden dan 100 mb..
 
Je zou er versteld van staan hoe snel een db met bijlagen groeit.... Al schijnen de nieuwste versies iets zuiniger om te gaan met bestanden, omdat Word en Excel bestanden nu worden gecomprimeerd. Maar daar heb je bij pdf's en afbeeldingen natuurlijk niks aan, want daar valt weinig te comprimeren. Wèl kun je in een bijlageveld meerdere bestanden opslaan, maar eigenlijk druist dat nu weer tegen database normalisatie in, wat voorschrijft dat je per veld maar één tupel opslaat. Heb je 3 bijlagen, dan moet je die dus in 3 aparte records (ik gebruik dus een bijlagetabel) opslaan.
Je kunt overigens van elk tekstveld een 'hyperlink' maken, door aan de actie <Bij klikken> de opdracht FollowHyperlink te gebruiken. Ik gebruik dus ook zelden de eigenschap hyperlink, daar heb ik meer last dan profijt van.
 
Ik begrijp het van de beperkte grootte maar zie toch liever deze optie als de optie om extra tablellen aan te maken en daarin alle bestanden te gaan zetten waarbij dan alleen een link zichtbaar is.
Het gaat om een 10 tot 15, voornamelijk, xlsx bestandjes van gem 5 mb groot. Als ik de rest van de BD erbij optel zit ik max 80mb daar ik 2gb heb.
Iid mijn versie comprimeerd ook.

Is het mogelijk om de bijlage control te linken aand de keuze van de Combo? Of bijvoorbeeld de record 1 of... synchroon te laten lopen met de combo box? deze blijft nl op record 1 staan ondanks dat ik met de combo record 3 selecteer
 
Geen idee, want er hangt geen normale tabel achter. Dat is wèl zo als je een normale constructie zou gebruiken.
 
Michel, kan ik ook niet een extra VBA line onder de combo box hangen waarin ik aangeef dat de record in de status balk mee moet gaan met de keuze van de combo?
Als het niet gaat dan laat het hele gebeuren maar even zitten.

Thanks
 
Ik snap niet wat je nu wilt; een Bijlage is een apart type veld, dat uit één object op je formulier bestaat. Als je er op dubbelklikt, krijg je de keuzelijst met de bestanden die er in zitten. Je kunt van het bijlage object geen keuzelijst maken voor zover ik weet. VBA of niet...
 
Het was een interessante klus, want je kunt niet zomaar bij de Attachment collectie. En je had al ontdekt dat je niet veel meer kan doen dan vooruit bladeren en achteruit. Probleem is dat een keuzelijst niet hetzelfde werkt. Je moet 'm dus op een andere manier vullen, en controleren tegen de attachment. Met een dubbele recordset kom je een heel eind, kijk maar naar de bijlage. Maar het is meer dan één regeltje code :)
 

Bijlagen

Laatst bewerkt:
Michel, top dat je toch een oplossing hebt gevonden en ben ook erg benieuwd. helaas kan ik je gesplitste rar bestandje niet tot een maken en openen. Ik heb daar de tools niet voor en volgens mij mis ik dan ook nog een bestandje met .crc? Nu zie ik twee Voorbeeld DB's zonder inhoud..

Als het alleen vba code is die je hebt veranderd, kun je deze dan in een Word doc posten? Ik zal hem dan slepen en plakken naar mijn DB
 
Als het goed is hoef je voor het openen van het gesplitste bestand alleen de eerste te openen; hij pakt dan zelf de tweede erbij. Dus dubbelklikken op Part 1, en je kunt hem uitpakken. Eventueel een evaluatieversie van Winrar downloaden, dan moet het zeker lukken.
Maar ik heb 'm ook wat kleiner, met minder afbeeldingen. En die zou je wèl moeten kunnen openen.
 

Bijlagen

Ik werk aan de DB op mijn werk en kan daar helaas geen .rar openen. Zip bestand kan ik wel openen dus dank hiervoor

Moest even kijken hoe je eea hebt aagepast, het is inderdaad behoorlijk wat code (niveau to hoog voor mij).
- Je hebt een ID box toegevoegd en de keuze box "type" is (hierdoor?) min of meer komen te vervallen. Het maakt nu niet meer uit wat ik in deze box selecteer, het heeft geen effect meer op keuze box "soort" voor de 2e selectie
- Keuze box "soort" heeft nu dezelfde functie gekregen als de twee knoppen "Vorige" en "Volgende".

Wat er eigenlijk zou moeten veranderen is:
Keuze box "soort" moet zijn oude functie terugkrijgen (na selectie van keuze box "type" de bijbehoorde opties weergeven, Fruit = appels, Groente = andijvie etc)
Na selectie van keuze box "soort" (waarmee dan de definitieve keuze is gemaakt en dus de juiste record bekend is) zou de ID box de bijbehorende record moeten laten zien ipv nu handmatig te selecteren (de gebruiker weet bij een selectie immers niet welke record erbij hoort)

Is bovenstaand mogelijk?
 
Laten we je oorspronkelijke vraag er nog eens bijhalen:
Hoe moet ik de bijlage control in het formulier linken aan combo box 2 zodat de bijlage control de juiste bijlage laat zien die bij de keus van de combo boxen hoort?
Je kiest dus in Combo1 bijvoorbeeld <Fruit>, en in Combo2 <Peren>. En dan? Je Bijlagen veld bevat verschillende bestanden. Die hebben niets, maar dan ook helemaal niets, te maken met je keuzelijsten. Dus op basis waarvan zou je die subselectie willen maken?
Ik heb je vraag vertaald als: ik wil een keuzelijst waarin je de verschillende bijlagen rechtstreeks kunt selecteren. Dat kan alleen als je de bestandsnamen weet, want dat is het enige referentiepunt dat je hebt. En dan heb je dus maar één keuzelijst nodig. Et voilà!
 
Laatst bewerkt:
Vandaar dat ik de twee knopen had toegevoegd zodat de bijlagen hiermee konden worden geselecteerd
De keuze boxen zouden hun functie moeten behouden nl de juiste record selecteren..

Ik kan het op zich wel doen met maar 1 keuze box ("type") maar dan moet die keuze box wel gelinkt zijn en/of de juiste record laten zien in de ID box
Nu verander ik van record met de page-up en page-down knop maar zou hier dus de keuze box voor willen gebruiken
 
mischien moet ik zeggen dat de Keuze box de bijbehorende ID key moet laten zien in de ID box en niet zo zeer de record daar dit er meerdere kunnen zijn in een ID key..
 
Laatst bewerkt:
De keuze boxen zouden hun functie moeten behouden nl de juiste record selecteren..
Ik heb geen flauw idee meer wat je bedoelt; het gaat dus helemaal niet om het kunnen kiezen van een bijlage?
 
laten we mijn originele post er eens bijhalen

Hoe moet ik de bijlage control in het formulier linken aan combo box 2 zodat de bijlage control de juiste bijlage laat zien die bij de keus van de combo boxen hoort?
Hoop dat mijn vraag duidelijke is, vergelijk het anders met een textbox ipv een bijlage veld. Een andere keuze in de combo boxen betekent een andere tekst in de textbox

De bedoeling is dus dat als men een keuze maakt in de combo (onderwerp/item wat dan ook), de bijlage control de juiste bijlage laat zien. Maw, kies ik voor appels in de combo dan moet de bijlage controle een appel laten zien. Kies ik voor peren dan moet de bijlage control peren laten zien. Omdat er meerdere appels bestaan kunnen er meerdere bijlagen zijn onder het item appels. Vandaar de twee knoppen waarmee je vorige en volgende kunt kiezen om alle bijlage te kunnen zien die onder hetzelfde item vallen.

Welnu, de tabel met daarin de keuzeopties die de combo laat zien heeft de gebruikelijke record ID. ID 1 = Appels, ID 2 = Peren etc. Wat ik vreemd vind is dat wanneer ik een keus maak in de combo en daarme dus in feite een unieke ID selectie maak, Access hier geen rekeningen mee houd om dan ook de ID key gelijk te houden aan de de keus. Dit kun je goed zien als je een ID control in het formulier zet. Die blijft altijd op 1 staan ongeacht de keuze van de combo. Als ik dan kies voor peren (ID 2) en ik voeg een bijlage toe, dan wordt deze in ID 1 gezet bij de Appels. Ik moet dan met de page up en down key de ID key handematig gelijk zetten met de keuze uit de combo box. Heel vervelend, laat staan wat de gebruiker straks te wachten staat want die zal helemaal geen ID's moeten zien

Daarom dan misschien de volgende oplossing; kan ik werking van de page up/down keys met een stukje code opvangen? Dit hang ik dan onder een knop met daarbij nog een tekst veld die de naam van de ID selectie laat zien. Dit tekst veld vervangt dan eigelijk de combo box maar het ziet ernaar uit dat dit misschien nog de enige optie is?
 
Je snapt het principe van een bijlageveld volgens mij niet helemaal; die kun je namelijk helemaal niet filteren. Wat je met de twee knoppen doet is ook niets meer dan bladeren door de beschikbare bijlagen. In jouw db zijn dat er maar 2, ook nog eens van hetzelfde type en (bijna) identieke naam, dus heel veel valt er niet te testen. Maar goed, je kunt niet filteren, dus zit er niks anders op dan de techniek gebruiken die ik in mijn voorbeeldje heb gezet, en dat is: loop door alle bijlagenamen heen en kies de identieke.
Verder zitten bijlagen in een specifiek record; in dat record vul je in het veld [Type] het type in, en in [Soort] het soort. Maar dat zou dus inhouden dat je in je bijlage control alleen de bij dat record horende bijlagen kunt laten zien. Dus hoe wil je mensen kunnen laten kiezen uit één Type en één Soort? Kijk naar Record 3: [Type]=Fruit, [Soort]=Bananen. Meer heb je niet in dat record. En dan heb je twee keuzelijsten om daaruit te laten kiezen?
Wat ik vreemd vind is dat wanneer ik een keus maak in de combo en daarme dus in feite een unieke ID selectie maak, Access hier geen rekeningen mee houd om dan ook de ID key gelijk te houden aan de de keus. Dit kun je goed zien als je een ID control in het formulier zet. Die blijft altijd op 1 staan ongeacht de keuze van de combo. Als ik dan kies voor peren (ID 2) en ik voeg een bijlage toe, dan wordt deze in ID 1 gezet bij de Appels.
Dat is in jouw voorbeeld ook heel verklaarbaar, want je keuzelijsten zijn niet gekoppeld aan Tabel2, en het veld Bijlage wel. Als je dus een bijlage toevoegt, dan wordt die aan de actieve record toegevoegd, maar je keuzelijsten doen er niks mee. Omgekeerd ook niet.

Mijn oplossing zou voor jou hooguit kunnen werken om uit een bepaald actief record met veel bijlagen de lijst met bijlagen te filteren op basis van de twee keuzelijsten, maar of je daar nu veel mee wint... Een hoop werk, en een hoop afspraken over de bestandsnamen van de bijlagen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan