Avatar billede ngaaah Nybegynder
10. juli 2005 - 22:11 Der er 8 kommentarer

problemer med visning af jpgs i Access 2003

Jeg er totalt nybegynder til databaser, men har alligevel formået at lave en simpel base i Access fra Office 2003 over inventaret i mit hjem.

Mit problem er nu, at jeg ikke kan få databasen til at vise de jpg billeder, som knytter sig til hver post. Istedet for at vise billedet viser den blot filnavnet. Dobbeltklikker man på filnavnet åbner den billedet - ikke i Access - men i Windows default billedprogram.
Hvis man højreklikker på navnet kan man iøvrigt se at feltet er opført som en package.

Jeg har læst på Microsofts side, at Access kun understøtter bmp filer
( http://office.microsoft.com/en-us/assistance/HA011504111033.aspx )
Jeg har prøvet at gøre alt hvad der står man skal gøre for at få den til at vise jpgs, inkl installere alle image filters fra Office Converter Pack, som der foreslåes, men uden held.

Jeg kan se at der er adskillige andre herinde på Eksperten, som har haft lignende problemer, men jeg har ikke været i stand til at tyde den hjælp som folk har fået.

Jeg er som sagt totalt newbie til databaser og kan derfor hverken kode i ASP eller Visuel Basic (eller ret meget andet, for den sags skyld :), så allerhelst vil jeg sætte pris på et link til en form for patch eller plugin, jeg kan installere, eller måske en skridt for skridt forklaring på hvordan man kan få programmet til at vise billederne.

På forhånd tusind tak
Ulrik
Avatar billede mugs Novice
10. juli 2005 - 22:15 #1
Jeg har ikke 2003.
Har dui læst stry's udmærkede artikel om visning af billeder i Access? Jeg kan sende dig en testdb bygget efter samme principper. Blot læg din e-mail.
Avatar billede ngaaah Nybegynder
10. juli 2005 - 22:34 #2
Nej - den har jeg ikke set før nu. Læser den lige...
Du må meget gerne sende filen til ulrik@limkilde.com

Mange tak
Avatar billede mugs Novice
10. juli 2005 - 22:38 #3
Sendt.
Avatar billede terry Ekspert
11. juli 2005 - 08:28 #4
If you read ths link you gave the follwoing section mentiones graphic filters!
When you install MS Office you can choose which filters you want to use. Make sure you have installed the JPG graphic filter. You can do this by running the Office installation again and check that it has been selected.

Troubleshoot displaying images with the image control
The image control supports a larger number of image file types than either the bound or unbound object frame. However, if you need to display even more types of graphics files, you can use graphics filters, tools that allow the various Office programs to display image files that Office doesn't normally support. For example, a graphics filter can enable the image control to display images created with WordPerfect (.wpg files), among others.

Office 2003 provides a set of graphics filters. If you enable them, you can display the following types of files by using the image control:

Computer Graphics Metafiles (.cgm)
Corel Draw (.cdr)
Encapsulated PostScript (.eps)
Graphic Interchange Format (.gif)
Icon (.ico)
Joint Photographic Experts Group (JPEG) (.jpg)
Avatar billede ngaaah Nybegynder
11. juli 2005 - 09:53 #5
Først til Mugs: tak for filen - jeg har desværre lidt problemer med at bruge den (og også artiklen) desværre :(
Jeg kan simpelthen ikke finde noget felt i properties der hedder OnCurrent (måske hedder den noget andet i min 2003 version??)
Derudover har jeg lidt svært ved at finde ud af at oversætte det til mit konkrete eksempel. Allerførst - måden jeg har gjort det på er, at jeg har defineret et OLE felt ved navn fotos og derefter trukket dette felt ind i min form. Derefter har jeg så trukket mine jpgs ind i feltet fra en anden folder. Så vidt jeg kan se i topbjælken, når jeg kigger på feltets properties er feltet i den fil du har sendt mig af typen image. Mit felt hedder bound object frame.
Hovedproblemet er, at jeg allerede har indsat RIGTIG mange billeder på denne måde, så det ville være fantastisk, hvis jeg ikke skulle begynde forfra med en helt ny type felt, men blot kunne "trylle" lidt med det jeg har, for at få det til at virke (og som sagt vises bmp filer uden problemer i det.

Til Terry: jeg har allerede været inde i setup og installere alle graphic filters som der står, men jeg har stadig ikke været i stand til at få Access til at vise mine jpgs. Dog har jeg ikke været i stand til at finde ud af hvad det betyder når der står, man kan få det til at virke ved hjælp af Image Control. Pånær i Mugs eksempel ovenfor, som jeg ikke helt er i stand til at tyde, virker det som om, at hvis man bruger image feltet, kan man kun bestemme sit billede i designview, og altså ikke individuelt i hver post (jeg kan kun få jpget til at ligge som et kostant baggrundsbillede). Hvis man kan få en bmp til at virke i et bound object frame, er det så ikke muligt at få et jpg vist også ??
Eller måske: mine billeder ligger jo knyttet til hvert felt når jeg kigger i table view (jeg definerede dem jo i et OLE felt ved navn fotos) kan jeg måske lave et image felt og få det til at vise indholdet af fotos ved hver post ?
Avatar billede mugs Novice
11. juli 2005 - 10:02 #6
OnCurrent er en hændelse i din formular. Hændelsen opstår hvor gang du åbner formularen og hver gasng du skifter post. Da jeg ikke selv har 2003 skal jerg være lidt forsigtig med mine påstande. Mewn mon ikke du kan finde en sådan hændelse. Når du bruger OLE-objekter mener jeg din database vokser MEGET. Hvor stor er den?

Jeg bruger et ubundet billedfelt hvorimod du bruger et bundet felt. Når du bruger et ubundet billedfelt lagrer du kun stien til billedet i databasen som en tekststreng, og kalder det korrekte billede frem hver gang hændelsen OnCurrent opstår.

Det vil selvfølgelig være en fordel, hvis du ikke skal ændre alle billeder i databasen. Men hvis db er meget stor vil jeg alligevel overveje det.

Har du afprøvet min db på dine egne JPEG-billeder?
Avatar billede ngaaah Nybegynder
11. juli 2005 - 10:29 #7
Din base fungerer rigtig fint, men jeg forstår desværre bare ikke helt hvordan jeg oversætter det du har til min egen base. I punkt 9 i dit word dokument skriver du feks. "I formularens VedAktuel event (OnCurrent) skriver du følgende kode:". Hvorhenne er det så koden skal skrives, hvis det ikke er et felt ?
Måske er det fordi du indsætter dine billeder ved hjælp af en sti og altså ikke bare har dem lagt "fast" ind i felter fra starten. (Jeg er som sagt rimelig grøn til det her :) Men det forvirrer altså lidt at adskille det konkrete, som jeg skal bruge.

Min base fylder næsten 450 mb, men der er også næsten 900 rimelig store billeder i den.

Eftersom alle billederne er lagt ind som OLE objekter allerede, ville det være en stor hjælp, hvis jeg ikke skulle begynde forfra.
Avatar billede mugs Novice
11. juli 2005 - 10:38 #8
"Min base fylder næsten 450 mb"

behøver ikke at være noget problem. En Access kian fylde ca 2 Gb. Men uanset at jeg skal igennem 900 billeder og lægge dem ind, vil jeg alligevel gøre det for at få en bedre performance. Har du prøvet at komprimere din db? I Access 2000 åbner du db og i menuen Funktioner > Databasefunktioner komprimerer du den. Det har særlig betydning hvis du opretter eller sletter poster.

Prøv at åbne min db i formularens designvisning > højreklok et sted på formularen (ikke detaljesektionen) og vælg nederst egenskaber. Du får nu et nyt vindue og her vælger du hanen hændelser. På den øverste linie står der ordet "hændelsesprocedüre". Det betyder at databasen skal foretage sig noget, når denne event opstår. Her er det så VedAktuel (Current). Tryk på de 3 små ... i højre side udfor ordet "hændelsesprocedüre" og du kommer nu ind i VBA-editoren. Og det er her du skal skrive koderne.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester