Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Sécurité
Sécurité Le forum qui s'occupe de votre préoccupation de sécuriser l'accès à votre application Access, ainsi qu'à la sécurité des données.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/10/2007, 16h45   #1
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
Par défaut erreur en création fichier MDE

Bonjour,

J'essaie de sécurisé ma base (layouts des formulaires) de manière simple.
Je pensais faire un fichier .MDE
Mais je reçois un message d'erreur :
This error is usually associated with compiling a large database into an MDE file. Due to the method used to compile the database, a considerable number of TableID references are created for each table. The Microsoft Jet database engine version 4.0 can only create a maximum of 2048 open TableIDs at one time. Exporting a database as an MDE potentially can exceed this limit if the database has a large number of objects (table, macro, form, report, etc).
There is no accurate method to estimate the number of TableIDs the Jet database engine uses during the process of compiling a database as an MDE. However, each VBA module and each form uses one TableID, as a result, if the database has 500 forms, and each form's HasModule property is set to Yes, as many as 1,000 TableIDs are used.

Cela veut dire que je ne saurai pas créer de fichier MDE?

En outre, ma base contient des formulaires qui vont conduire automatiquement l'utilisateur à lancer de nouveaux querys et nouvelles tables.
Est-ce que c'est bien compatible avec les fichiers MDE?

Merci
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/10/2007, 20h55   #2
Membre Expert
 
Avatar de bernardmichel
 
Inscription : janvier 2004
Messages : 985
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 985
Points : 1 028
Points : 1 028
Envoyer un message via MSN à bernardmichel Envoyer un message via Skype™ à bernardmichel
Hello !

J'avais eu ce problème alors que je voulais créer un MDE.
La solution était que j'avais créé un MDB avec Access 2003 mais en format Access 2K. J'ai donc du convertir ma base d'Access 2000 en 2003 afin de pouvoir créer mon MDE.

Peut-être une piste ??
bernardmichel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2007, 17h48   #3
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 096
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 096
Points : 11 628
Points : 11 628
Bonjour,

Vu le message ACCESS trouve un trop grand nombre d'objets. Combien sont-ils exactement ?

Le mde ne permet pas de passer en mode création sur les formulaires et états.

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2007, 21h39   #4
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
Je dois avoir une vingtaine de tables, une vingtaines de formulaires, 2 ou 3 états, mais auiss une centaines de query...
Est-ce que c'est trop?
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2007, 22h53   #5
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 941
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 941
Points : 6 283
Points : 6 283
Bonsoir,

vérifie également que tu n'as aucune erreur de compilation dans le code.
Je crois me souvenir avoir eu ce message d'erreur en passant de 2000 à 2003 pour un simple problème dans mon code.
Pour t'assurer que le compilateur fait un maximum de contrôles, vérifie que tu as bien l'option Explicit en début de chaque module de code.

A+ et bon courage.
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2007, 22h53   #6
Membre Expert
 
Avatar de bernardmichel
 
Inscription : janvier 2004
Messages : 985
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 985
Points : 1 028
Points : 1 028
Envoyer un message via MSN à bernardmichel Envoyer un message via Skype™ à bernardmichel
A mon avis, il n'y a aucun problème de nombre d'objets avec ce que tu dis..

As-tu vérifié ton format de MDB comme je le suggérais ?

Sinon (si ce n'est déjà fait) essaies de compacter ta base avant de créer ton MDE. En créant un MDE un compactage se fait automatiquement mais en le faisant avant, tu peux éventuellement supprimer d'éventuelles erreurs...
bernardmichel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 19h59   #7
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
Merci
J'essaierai ce que tu me suggères
Pour l'instant, j'essaie de terminer tout le code avant de faire le fichier MDE (si j'y arrive)
J'espère aussi ne pas avoir besoin du fichier MDE.
Ce que je souhaitais surtout, c'est que l'utilisateur ne puisse pas entrer en modif sur les Designs des formulaires etc

Je vais essayer de concevoir mes formulaires en mode MODAL, sans aucun menu et sans accès à la base afin que l'utilisateur soit un maximum canalisé.
Si j'y arrive, je n'aurai peut-être pas besoin de passer par un fichier MDE...
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 20h56   #8
Membre Expert
 
Avatar de bernardmichel
 
Inscription : janvier 2004
Messages : 985
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 985
Points : 1 028
Points : 1 028
Envoyer un message via MSN à bernardmichel Envoyer un message via Skype™ à bernardmichel
Pour info et pour ce que tu souhaites protéger, le MDE c'est le pied ! Alors accroches-toi, cela en vaut la peine !!
D'autre-part, le MDE rend ta base beaucoup plus rapide et diminue notoirement sa taille... que du bon !

Sinon, outre le mode Modal & PopUp, il existe quelques options intéressantes (mais cela ne suffit pas parfois...) :
  1. Onglet "Autres" : Autoriser modifications structure
  2. Idem : Menu contextuel (évite la réponse en clic droit pour afficher le menu contextuel)
  3. Onglet "Format" : Déplaçable (Cela ne protège absolument rien mais consiste en un "découragement psychologique" car... rien ne bouge plus !)
  4. Paramétrer le démarrage de ton applic (Outils | Démarrage...) puis tu supprimes tout en affichant uniquement ton formulaire d'accueil
  5. Et surtout, désactiver la touche "Maj" pour les petits malins qui souhaiteraient "passer par derrière". (cf. la FAQ)
Voilà, bon dév !
bernardmichel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 23h07   #9
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
OK merci
Je vais essayer de jouer au maximum en désactivant ces propriétés-là.
Si je constate que ma base est trop lente, je ré-essaierai de créer un fichier MDE
Pour être sûr, un fichier MDE... : cela n'empêche pas que le code VBA change les sources d'un formulaires? ni qu'il crée des tables et des querys ou bien les supprime?
car mon code VBA en est bourré
Merci
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 23h39   #10
Membre Expert
 
Avatar de bernardmichel
 
Inscription : janvier 2004
Messages : 985
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 985
Points : 1 028
Points : 1 028
Envoyer un message via MSN à bernardmichel Envoyer un message via Skype™ à bernardmichel
Un MDE ne changera rien du tout ! Il va simplement améliorer les performances de ta base.

La seule chose qu'il ne peut gérer (et pour cause...) est de réaliser des modifications structurelles sur - par exemple - un formulaire...
Tu ne pourras donc pas réaliser une commande du type :
Code :
DoCmd.OpenForm "MonForm", acDesign
... et c'est exactement ce que tu souhaites
bernardmichel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 09h30   #11
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
attends
Tu me fais hésiter là...
Dans mon code j'utilise une fois la commande "DoCmd.openform" en "acDesign"
C'est pour changer la table source d'un formulaire en Pivot Table Chart View...
J'ai l'impression que je suis obligée de le mettre en Design mode pour pouvoir changer la source....

Code :
1
2
3
4
5
stDocName = "chart2"
    DoCmd.OpenForm stDocName, acDesign, , stLinkCriteria
    Forms(stDocName).RecordSource = TableName3b
    DoCmd.SelectObject acForm, stDocName
    DoCmd.RunCommand acCmdPivotChartView
Ca risque de ne pas aller alors?
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 09h59   #12
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 096
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 096
Points : 11 628
Points : 11 628
Pourquoi passer en mode création pour changer cette propriété ?

Le mode création est obligatoire pour rajouter des controles ou du code. Pour agir sur les propriétés heureusement non.

C'est exactement le même cas que pour ton problème de sous formulaire que tu as résolu

EDIT : je viens de relire le post, effecivement pour changer le mode d'affichage il faut passer en mode création. Si la quantité de formulaire impacté n'est pas énorme tu peux toujours créer ces forms.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 10h04   #13
Nouveau Membre du Club
 
Inscription : septembre 2007
Messages : 99
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 99
Points : 29
Points : 29
Je viens encore de réessayer...
si je mets :

Code :
1
2
3
    stDocName = "chart2"
    DoCmd.OpenForm stDocName, acformPivotChart
    Forms(stDocName).RecordSource = TableName3b
Mon pivot chart devient complètement vide, comme si il n'était plus en lien avec aucune donnée
Par contre, si je l'ouvre en Design Mode, que je change la source, puis que je repasse en PivotChart, les données du tableau sont bien là (avec axe des ordonnées, des abscisses etc)
ac264 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2007, 17h58   #14
Membre Expert
 
Avatar de bernardmichel
 
Inscription : janvier 2004
Messages : 985
Détails du profil
Informations forums :
Inscription : janvier 2004
Messages : 985
Points : 1 028
Points : 1 028
Envoyer un message via MSN à bernardmichel Envoyer un message via Skype™ à bernardmichel
Hello !

As-tu tenté un simple :
Code :
1
2
3
4
    stDocName = "chart2"
    DoCmd.OpenForm stDocName, acformPivotChart
    Forms(stDocName).RecordSource = TableName3b
    Forms(stDocName).Requery
Il me semble que cela devrait suffire pour afficher tes données
bernardmichel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2007, 11h48   #15
Invité de passage
 
Inscription : novembre 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 1
Points : 1
Points : 1
Personnellement, je te conseille de bien t'assurer que tu suis toutes les instructions pour créer ton fichier MDE c'est à dire:

- Ton fichier Access est au format 2002 ou ultérieur;
- Ton code VBA a été compilé (Option Débogage-Compiler Projet)

Je te recommande fortement de lire le contenu de cette page
http://argyronet.developpez.com/offi...ge=page_2#L2-1

J'espère que ma réponse te sera utile!
epsylonn est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h34.


 
 
 
 
Partenaires

Hébergement Web