OVH Cloud OVH Cloud

Geler les tables liées

11 réponses
Avatar
Erwan
Bonjour

Mon application est fractionn=E9e.=20
Une base contient les tables.
Une autre contient les formulaires,requetes...et des=20
tables li=E9es.

Je souhaite pouvoir faire des archivages de ma base=20
r=E9guli=E8rement (sur CD). A ce moment tout plante, car les=20
liaisons continuent de pointer vers la premi=E8re base.

Y a t'il moyen de geler les liaisons avant de faire ma=20
copie??

Merci d'avance

1 réponse

1 2
Avatar
Jessy Sempere [MVP]
Euh !!!!

essais de remplacer les lignes :
Dim Db As Database
Dim qry As QueryDef
Dim cnt As Container
Dim doc As Document
par :
Dim Db As DAO.Database
Dim qry As DAO.QueryDef
Dim cnt As DAO.Container
Dim doc As DAO.Document

IsNull est une fonction VBA, normalement tu ne devrais pas avoir de
problème, à moins que tu es une référence marquée comme "manquante"

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Erwan" a écrit dans le message news:
42f401c4a60d$02d314b0$
Génial! c'est exactement ce que je voulais..à un petit
détail.

toutes mes requetes marchent sauf une:
Il s'agit d'une requete analyse croisée, qui utilise la
fonction Isnull en critère.
Losrque je lance cette requete (qui marche parfaitement
dans la base normale) dans la base_save,
j'obtiens "Fonction IsNull non définie dans l'expression".

serait ce du au Microsoft DAO x.xx Object Library
??????


GRRRRRRRRR!!
je n'y comprend rien!
-----Message d'origine-----
Tu dois utiliser sûrement Access 2000 ou supérieur

Rajoute la référence :
Microsoft DAO x.xx Object Library

Et dans le code, remplaces la ligne en question par :

dim db as Dao.database

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Erwan" a écrit
dans le message news:

141b01c4a605$850178d0$

losque je lance la fonction j'ai l'erreur "ERREUR DE
COMPILATION, Type défini par l'utilisateur non défini" en
pointant sur Dim Db As database

Ben pourquoi???
-----Message d'origine-----
Bonjour

Le code qui suit devrait te convenir, il te créera un
fichier contenant

tous les objets de ta base ainsi que les tables en
directes il te suffit de

le placer dans ta base contenant les les formulaires et
autres...


L'argument strData correspond au chemin complet et au
nom de ta

base contenant les tables...

****************************************************

Public Function SaveFusionDb(strData As String)

Dim Db As Database
Dim qry As QueryDef
Dim cnt As Container
Dim doc As Document
Dim strDataBase As String
Dim strDbPath As String
Dim strDbFile As String

strDbPath = CurrentDb.Name
strDbFile = Dir(strDbPath)
strDataBase = left(strDbPath, Len(strDbPath) - Len
(strDbFile)) _

& "Save_" & strDbFile

DBEngine.CompactDataBase strData, strDataBase

Set Db = CurrentDb
For Each qry In Db.QueryDefs
DoCmd.CopyObject strDataBase, qry.Name, acQuery,
qry.Name

Next
Set cnt = Db.Containers("Forms")
For Each doc In cnt.Documents
DoCmd.CopyObject strDataBase, doc.Name, acForm,
doc.Name

Next
Set cnt = Db.Containers("Reports")
For Each doc In cnt.Documents
DoCmd.CopyObject strDataBase, doc.Name,
acReport, doc.Name

Next
Set cnt = Db.Containers("Scripts")
For Each doc In cnt.Documents
DoCmd.CopyObject strDataBase, doc.Name, acMacro,
doc.Name

Next
Set cnt = Db.Containers("Modules")
For Each doc In cnt.Documents
DoCmd.CopyObject strDataBase, doc.Name,
acModule, doc.Name

Next
Db.Close: Set Db = Nothing
Set cnt = Nothing

MsgBox "Opération de sauvegarde terminée"

End Function
****************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le
message news:

35b001c4a5fd$0777fef0$
Je ne voie pas bien le rapport avec mon problème.
Je vais essayer de reformuler

Mon application comporte des tables liées vers une autre
base.
Je veux la copier sur CD (y compris l'autre base)

Lorsque je le fais..toutes les requetes basées sur ces
tables liées ne marchent plus.

J'aimerai donc :
-Faire une copie de ma base sur le même emplacement
-Briser les relations (que les tables liées apparaissent
comme des tables normales en conservant leur données) de
ma copie
_Transférer ma copie sur CD


merci d'avance


.




.




1 2