U ovom prilogu prikazaćemo vam kako možete da automatski učitate sve fajlove određenog tipa (ekstenzije) iz nekog foldera na disku, u Access tabelu. Ova rutina je vrlo dobra za učitavanje OLE objekata, kao što su .gif, .jpg, .doc, .xls, ili .bmp fajlovi, u Microsoft Access bazu podataka. Da biste ovo uradili ispratite sledeće korake:
- Pokrenite Access i kreirajte novu tabelu sa tri polja u Design modu, prema sledećim parametrima (naziv „tblUcitajOLE“):
Naziv polja: OLEID
Tip podatka: AutoNumber
Naziv polja: OLEPutanja
Tip podatka: Text
Velicina: 255
Naziv polja: OLEFajl
Tip podatka: OLE Object
—————————-
Primarni kljuc (PrimaryKey): OLEID
- Koristeći čarobnjak „AutoForm: Columnar Wizard„, kreirajte novu formu zasnovanu na novoj – „tblUcitajOLE“ tabeli. Snimite formu pod nazivom „frmUcitajOLE“.
- Otvorite formu „frmUcitajOLE“ u dizajn modu.
- U Header sekciji forme dodajte tri nevezane (unbound) text-box kontrole sa sledećim osobinama:
Naziv (Name): Folder
Naziv (Name): Ekstenzija
Naziv (Name): OLEClass
- Kreirajte na formi komandno dugme, i dajte mu naziv „cmdUcitajOLE“ sa osobinom Caption – „Ucitaj fajlove“.
- Pozovite panel „Properties“ i pređite na karticu „Event“, te dvostruko kliknite polje „On Click“ i unesite sledeći programski kod:
Private Sub cmdUcitajOLE_Click()
Dim MojFolder As String
Dim MojaEkst As String
Dim MojaPutanja As String
Dim MojFajl As String
Dim strKriterijum As StringMojFolder = Me!Folder
‘ Preuzimanje putanje.
MojaPutanja = MojFolder & „“ & „*.“ & [Ekstenzija]
‘ uzimanje prvog fajla na putanji koji sadrzi datu ekstenziju.
MojFajl = Dir(MojaPutanja, vbNormal)Do While Len(MojFajl) 0
[OLEPath] = MojFolder & „“ & MojFajl
[OLEFile].Class = [OLEClass]
‘ Unesite odgovarajuci naziv OLE klase.
[OLEFile].OLETypeAllowed = acOLEEmbedded
[OLEFile].SourceDoc = [OLEPutanja]
[OLEFile].Action = acOLECreateEmbedMojFajl = Dir
‘ Prelaz na novi slog, an formi
‘ Sledecu liniju dodajte samo ako koristite Access 95:
‘DoCmd.DoMenuItem acFormBar, acEditMenu, 12, 4, acMenuVer70
‘ A sledecu liniju dodajte samo ako koristite Access 97:
DoCmd.RunCommand acCmdRecordsGoToNew
Loop
End Sub
- Snimite formu „frmUcitajOLE“ i otvorite je u Form modu.
- Unesite punu putanju foldera u kome se nalaze OLE fajlovi. Umesto parametra „OLEClass“ u Do…While petlji, unesite odgovarajući naziv klase. Za bitmap slike naziv klase bi bio „Paint.Picture“. Da biste odredili naziv klase odgovarajućeg OLE objekta, pogledajte dokumentaciju aplikacije koja podržava objekt. U polje „Ekstenzija“ unesite fajl ekstenziju koju želite kao što su bmp, jpg, doc, xls, tif, ili gif. Ispred ekstenzije ne postavljajte tačku.
- Kliknite dugme „Ucitaj fajlove“ i zapazite da su učitani svi fajlovi naznačene ekstenzije.
Pratite Krstaricu na www.krstarica.com