Tabelle Collegate

di il
9 risposte

Tabelle Collegate

Buongiorno,

ho una procedura multiaziendale nella quale ho necessità di ricollegare le tabelle al cambio dell'azienda.
Utilizzo il seguente comando:

DoCmd.TransferDatabase acLink, "Database ODBC", "ODBC;DSN=CEA", acTable, Me.CC4 & "." & "FILE00F", "FILE00F"

Tutto funziona ma il problema è che ogni volta che ricollego le tabelle mi chiede di definire la chiave univoca.

E' possibile evitare la richiesta per automatizzare completamente la procedura ?

Grazie

9 Risposte

  • Re: Tabelle Collegate

    manugonn ha scritto:


    Tutto funziona ma
    Tutto funziona non può essere seguito da "ma".
    A che database ti colleghi? Una altro file mdb/accdb? Server SQL? File DBF?
  • Re: Tabelle Collegate

    Mi collego ad una AS400 IBM quindi DB2.
    "tutto funziona" nel senso che una volta definite le chiavi il collegamento viene effettuato regolarmente.
    Vorrei solo evitare la richiesta per automatizzare il tutto.
  • Re: Tabelle Collegate

    manugonn ha scritto:


    Mi collego ad una AS400 IBM quindi DB2.
    Allora, collegamento via ODBC ad un DB2 AS400 (quanti ricordi!!!!!!)
    Crea un collegamento "a mano", completo, con la specifica delle chiavi.
    Una volta fatto guarda la proprietà Connect dell'oggetto TableDef di quella tabella collegata.
  • Re: Tabelle Collegate

    Oddio non saprei come creare un collegamento "a mano" completo... Intendi forse Dati Esterni -> Nuova origine dati > Da altre origini -> Database Odbc ? Se intendi questo ho già provato ma nelle proprietà connect dell'oggetto della tabella collegata non vengono evidenziate le chiavi
  • Re: Tabelle Collegate

    manugonn ha scritto:


    Se intendi questo ho già provato
    Intendevo quello
    ma nelle proprietà connect dell'oggetto della tabella collegata non vengono evidenziate le chiavi
    Vero, sono nella collection Indexes sempre di TableDef. Non so come si fa a gestirli in una tabella collegata (ed ora non ho tempo per provare, sorry)
  • Re: Tabelle Collegate

    Ok grazie lo stesso
  • Re: Tabelle Collegate

    manugonn ha scritto:


    Ok grazie lo stesso
    Te la passo come l'ho trovata:
    https://digitalenginesoftware.com/blog/archives/61-Indexes-on-Linked-TablesViews-in-Access
    How to add pseudo-indexes to linked tables/views

    When a link to a table/view without an index is created, Access prompts the user with a "Select Unique Record Identifier" dialog box (which is also triggered from code using DoCmd.TransferDatabase to create the link). Simply select the fields to be included in the index. Note that when creating the table using DAO/ADOX methods, this dialog is not presented and the pseudo-index is not created. Also, attempting to add an index to a linked table using DAO/ADOX results in an error (similarly to attempting to add an index through the table designer). To create the pseudo-index programmatically use Database.Execute to run a CREATE INDEX statement on the linked table/view. Jet will decide that the index must be a pseudo-index and create one.
    ...
    Unfortunately, pseudo-indexes are not preserved when the linked table connection is updated. So for any scripts which modify the connection (e.g. to re-point a table to a different server) must recreate the indexes after refreshing the link.
    Detto così sembra quindi che si debba (ri)creare la tabella collegata con DAO, non con DoCmd.TransferDatabase, e poi eseguire una SQL con "CREATE INDEX ..."
    https://support.microsoft.com/en-us/office/create-index-statement-2aa192ea-bde6-4f2a-ab3e-4ed690b75eb2
    http://www.office-archive.com/16-ms-access/f08fd3060879989f.htm
  • Re: Tabelle Collegate

    Ho provato con un database Postgresql ed è andato tutto liscio.
  • Re: Tabelle Collegate

    Grazie mille, provo subito !
Devi accedere o registrarti per scrivere nel forum
9 risposte