|
||||
|
|
#1 (permalink) |
|
Nuovo della community ![]()
16 Messaggi
![]() |
Forse la domanda potrà sembrarvi un po' idiota ma da neofita quale sono non capisco il perché.
Primo. Ho un database su access (97) con tre tabelle e tre maschere (è solo una versione iniziale costruita per studio). Il file del database ha una dimensione più o meno 315kb. Secondo. Ho collegato ad un record di una tabella un collegamento ad una foto che poi dovrei richiamare all'interno di una maschera. La foto ha una dimensione di 75kb circa. A parte le difficoltà di gestione dell'immagine su cui avrei pure qualche domanda ma che per ora rimando ad altro momento, com'è che il file di database mi diventa colpo da 4,3Mb? Considerando che a database completamente impsotato dovrei collegare qualcosa come 700 foto al database mi preoccupa un po' la faccenda. A scanso di equivoci... ho "collegato" e non "inserito" la foto, in quel caso la dimensione aumenta ancora. C'è un modo per evitare questa "esplosione" di bite? Altra cosa, se entro nella tabella e tolgo il collegamento, lo cancello, perché la dimensione del database non ritorna al valore precedente ma resta sui quei quattro mega circa? Potete aiutarmi? Ve ne sarei grato. Ciao ciao D. [img]smileys/smiley1.gif[/img] |
|
|
|
|
|
#2 (permalink) |
|
Utente della community ![]() ![]()
213 Messaggi
![]() |
Ciao Davide70,
prova a comprimere il DB: da Access: Menu Strumenti - Utilità DB - Compatta e Ripristina DB E' comunque *molto* strano che aggiungendo semplicemente una stringa che contiene il percorso del file il DB diventi così grosso. Ma quante operazioni di scrittura vengono fatte di questa stringa? Qual'è il tipo di campo (memo, testo, etc.) che memorizza il percorso? Ciao! Luca |
|
|
|
|
|
#3 (permalink) |
|
Nuovo della community ![]()
16 Messaggi
![]() |
Vediamo... il tipo di campo è "Oggetto OLE. Poi dalla Tabella dalla tabella uso "inserisci oggetto" e selezionando "crea da file" e spuntando "collegamento" cerco l'oggetto (cioè la foto) da inserire.
La visualizzazione della foto avviene su una maschera indipendente che si collega al dato specifico. (S'è capito tutto?) Ciao ciao Grazie Davide PS: Porta pazienza, i neofiti rompono sempre per le cose più strane. [img]smileys/smiley1.gif[/img] |
|
|
|
|
|
#4 (permalink) |
|
Utente della community ![]() ![]()
213 Messaggi
![]() |
... allora il problema credo che sia proprio lì: nel campo 'Oggetto OLE'.
Se usi un campo dimensionato a 'Oggetto OLE' probabilmente ti carica sempre l'immagine nel DB: ecco il perchè dell'aumento esorbitante della dimensione del file di Access. Allora secondo me ti conviene memorizzare il percorso in un campo o Text (adeguatamente dimensionato) o Memo. Vedrai allora che tutto torna in situazioni normali. Ciao! Luca PS: Comprimi frequentemente il DB! |
|
|
|
|
|
#6 (permalink) |
|
Utente della community ![]() ![]()
342 Messaggi
![]() ![]() |
io ho scritto il seguente frammento di codice
Const LocalPath = "c:\foto\" 'Per accedere ad un percorso locale al mio pc Dim Foto, LocalPath, LocalAbsPath As String Dim Ret As Double If ([Form_DATI TECNICI GENERALI].[Foto_scheda].Value <> "") Then Foto = [Form_DATI TECNICI GENERALI]. [Foto_scheda].Value LocalAbsPath = LocalPath & Foto Ret = Shell("rundll32.exe url.dll,FileProtocolHandler " & (LocalAbsPath)) Else MsgBox "Non esiste la scheda tecnica di sintesi", vbOKOnly + vbExclamation, "Avviso" End If nella tabella ho memorizzato solo il nome del file mentre nella costante LocalPath memorizzo il percorso in modo che se cambio la posizione delle foto modifico solo questa riga. |
|
|
|
|
|
#7 (permalink) |
|
Nuovo della community ![]()
16 Messaggi
![]() |
Bellismo! Perfetto!
Utilizzando il frammento di codice oppurtunamente modificato ho ottenuto quello che volevo. Grazie infinite. ehm... domanda numero 2. [img]smileys/smiley9.gif[/img] Ho impostato un report di stampa che dovrebbe avere all'interno la foto collegata col codice. Cosa devo impostare perchè mi esca la stampa? Ciao ciao Davide PS: Ricordate... la pazienza è la virtù dei forti... e salvaguardia la pelle di quelli che non conoscono access! [img]smileys/smiley17.gif[/img] |
|
|
|
|
|
#8 (permalink) |
|
Nuovo della community ![]()
6 Messaggi
![]() |
Ciao Davide.
Nel report inserisci la seguente stringa (funzione corpo su stampa) Private Sub Corpo_Print(Cancel As Integer, PrintCount As Integer) Me.Immagine0.Picture = "C:\Documents and Settings\utente\Documenti\Immagini\TABELLINA.GIF" End Sub Dove ovviamente 'Immagine0' è la tua immagine COLLEGATA e non incorporata. Ciao
__________________
Daniele |
|
|
|
|
|
#9 (permalink) |
|
Nuovo della community ![]()
16 Messaggi
![]() |
Chiedo venia, la mia ignoranza in materia di "codice" è piuttosto ampia, purtroppo (non è che sapreste darmi qualche indirizzo su internet dove trovare una guida?). Non sono riuscito ad applicare la stringa di cui sopra e quindi cerco di spiegarmi meglio: Semplificando questa è la situazione: Struttura tabella: Campo 1 - ID - Contatore Campo 2- Nome dell'oggetto - Testo Campo 3- Nome della foto 1 - Testo Campo 4- Nome della foto 2 - Testo Record inseriti: 1, Pippo, Pippo1.jpg, Pippo2.jpg 2, Pluto, Pluto1.jpg, Pluto2.jpg ... e così via... Le foto si trovano su "c:\documenti\immagini" Nella scheda riesco a richiamare l'immagine con la procedura sopradescritta che apre photo editor per visualizzare l'immagine. Nel report di stampa, oltre agli altri dati, ho impostato due "cornici di oggetto" a cui associare le foto 1 e 2 della tabella. Come faccio ad associarli? Riuscirò ad associarli? Questo è il problema!!! Grazie grazie Davide [img]smileys/smiley1.gif[/img] |
|
|
|
![]() |
| Strumenti della discussione | |
| Modalità di visualizzazione | |
|
|
Discussioni simili
|
||||
| Discussione | Ha iniziato questa discussione | Forum | Risposte | Ultimo messaggio |
| Collegamento foto in Access | ErPiotta | MS Office, Access, VBA | 7 | 26-05-2008 20:27 |
| miniature foto in access | faby70 | MS Office, Access, VBA | 1 | 25-03-2005 23:58 |
| ACCESS – Collegamento ipertestuale | bornslippy | MS Office, Access, VBA | 3 | 02-09-2004 10:27 |
Tutti gli orari sono GMT +1. Attualmente sono le 12:54.









Modalità lineare


