Newsgroup: it.comp.appl.access
Titolo: localizzazione Back-end

Un saluto a tutto il NG.
Ho il seguente problema: per un applicativo diviso in FE-BE ho la necessità 
di prevedere una procedura che mi permetta di individuare il percorso del 
back-end in modo che lo possa utilizzare per fare operazioni sui dati.
Entrando nello specifico, finora lavoravo in questo modo:
all'interno di un modulo "dichiarazioni" inserito nel front-end riportavo la 
seguente riga di codice
Public Const filebe = "C:\Documents and 
Settings\ciccio\Desktop\...\pippo_be.mdb"
Cosicchè potevo lavorare sui record delle tabelle del back-end inserendo la 
seguente riga di codice:
Set db = DBEngine.Workspaces(0).OpenDatabase(filebe)
Questo, però, mi comporta che, se cambio la directory in cui è memorizzato 
il back-end (pippo_be,mdb), devo aggiornare manualmente il modulo 
dichiarazioni sostituendo il vecchio percorso con il nuovo.
La domanda a questo punto è: esiste qualche metodo, simile a quello 
utilizzato per reindirizzare i collegamenti Be-Fe, che mi permetta di 
individuare la nuova directory attraverso un sistema più elegante e 
professionalmente evoluto (tipo, ricerca del _be con la solita finestrella 
di gestione risorse)?
Spero di essere stato comprensibile.
Auguro a tutti una buona giornata.
Alessandro
---------------------------------------
Il giudizio che accompagna le nostre azioni
qualifica solo ciò che siamo,
non ciò che eravamo prima.
---------------------------------------- 


Sul sito comune ci sono vari esempi pronti, tra cui mi pare uno mio.
Si basa tutto sulla finestra di dialogo per recupero file e sull'utilizzo
della proprietà connect delle tabelle collegate
Antonio


Eccoti di seguito il codice, preso dal sito comune e adattato alle mie
esigenze, che mi permette di individuare il percorso del BE o del FE a
seconda del parametro inserito.
Function PercorsoDB(Quale As String) As String
'restituisce il percorso del DB utilizzato
'Quale = stabilisce se trovare il percorso del file Beck End o del file
Front End
'valori ammessi per quale:
'BE = Beck End o server
'FE = Front End o client
'usa la libreria DAO
On Error GoTo Err_PercorsoDB
    Dim DBS1 As DAO.Database
    Dim N As Integer
    Set DBS1 = CurrentDb
    Select Case Quale
    Case "BE" 'file beck end
        For N = 0 To DBS1.TableDefs.Count - 1
            If DBS1.TableDefs(N).Connect <> "" Then
                PercorsoDB = Mid(DBS1.TableDefs(N).Connect, 11)
                Exit For
            End If
        Next N
        Do While Right(PercorsoDB, 1) <> "\"
            PercorsoDB = Left(PercorsoDB, Len(PercorsoDB) - 1)
        Loop
    Case "FE" 'file front end
        PercorsoDB = DBS1.Name
        Do While Right(PercorsoDB, 1) <> "\"
            PercorsoDB = Left(PercorsoDB, Len(PercorsoDB) - 1)
        Loop
    End Select
    Set DBS1 = Nothing
Exit_PercorsoDB:
    Exit Function
Err_PercorsoDB:
    MiaMsgBox "Si è verificato il seguente errore:@N° " & Err.Number & " - " &
Err.Description & "@"
    Resume Exit_PercorsoDB
End Function
Saluti
Franco
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 --------------------------------
Ti ringrazio.
Ma come faccio poi ad utilizzare PercorsoDB come costante pubblica?
Grazie ancora per l'aiuto.
Alessandro