Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Runtime
Runtime Forum destiné à recevoir toutes vos questions concernant le Runtime (empaquetage, déploiement...)
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 09/01/2012, 15h11   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2004
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 20
Points : 13
Points : 13
Par défaut Multi utilisateur Impossible

Bonjour,

Dans mon service nous avons récupéré une base de donnée Acces,
le développeur de cette base ne fait plus partis de l'entreprise.
A l'origine il était le seul à y faire des saisies.

aujourd'hui plusieurs personnes doivent pouvoir y faire des saisie.
On m'a chargé de rendre cela possible.

J'ai donc diviser la base en deux partie l'une contenant uniquement les tables et l'autre l'IHM. Et j'ai donner une copie de l'IHM a chaque utilisateur/utilisatrice.

lorsque une personne ouvre sa copie de l'interface pas de problème tout fonctionne (édition/création/modification).
Si une seconde personne cherche a ouvrir sa propre copie de l'interface il ne peut pas car la base est déjà utilisé.

Après divers pérégrination sur la toile Je suppose que le développeur a utiliser des fonctions/objets, ouvrant les tables en mode exclusif.

Mes connaissances en Ihm Acces sont des plus rudimentaires. Quelqu'un pourrais-t-il me conseiller les objet Access, ou fonctions Vba a contrôler en premier pour vérifier mon hypothèse ?

Bien a vous.
Fred.
BlakSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 16h01   #2
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
Déjà vérifie les options de Access sur le verrouilage des BDs

menu Ortils/Options
onglet Avancé
mod d'ouverture par défaut (devrait être "mode partagé")
verrouillage par défaut (devrait être "Enregistrement modifié")

Quel message as-tu lorsque tu essaye d'ouvrir l'application avec un autre utilisateur ?

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 16h04   #3
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
Peux-tu préciser quelle version de Access tu utilises ?

Note que la solution que je t'ai donnée est pour Access 2003 ou moindre.

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 16h05   #4
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 225
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 225
Points : 9 928
Points : 9 928
Envoyer un message via Skype™ à Domi2
Bonjour,

Première vérification dans menu Outils ==> Options ==> Onglet "Avancé".

Tes paramètres sont-ils les suivants ?

Mode d'ouverture par défaut : Mode partagé

Verrouillage par défaut : Enregistrement modifié

Cocher : Ouvrir avec enregistrements verrouillés

Si non, essaye de les modifier et fais un test.

Domi2
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 19h30   #5
Candidat au titre de Membre du Club
 
Inscription : avril 2004
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 20
Points : 13
Points : 13
Tout d'abord merci de votre réactivité et de vos réponses,

j'utilise Access 2007, mais la base en question est en Access 2003.

je viens de vérifier la seul chose qu'il me manquait était:

"Verrouillage par défaut : Enregistrement modifié"

mais malheureusement cela ne corrige pas mon problème!

le message d'erreur est:

"Impossible d'utiliser "chemin absolus de ma base (pas de l'interface)" . Fichier en cours d'utilisation.

Bien cordialement!
Fred.
BlakSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2012, 19h42   #6
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 225
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 225
Points : 9 928
Points : 9 928
Envoyer un message via Skype™ à Domi2
Je ne pense pas que les différences de versions soit la cause du problème.

A vérifier, cela peut parfois être source de surprises, que tous les postes sont bien à jour (OS + version Office, derniers SP installés). Cela éliminera déjà d'entrée une cause (peu probable) possible.

Ensuite, il faudrait nous en dire un peu plus sur le fonctionnement de ton application.

Du code VBA est-il exécuté directement à l'ouverture de l'appli ? Soit une fonction appelée dans la macro AutoExec, soit une procédure ou fonction appelée sur l'événement Sur ouverture du premier formulaire.

Si oui, peux-tu poster ce code ?

Domi2
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 11h01   #7
Candidat au titre de Membre du Club
 
Inscription : avril 2004
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 20
Points : 13
Points : 13
Donc concernant les postes des divers clients le problème de version ne se pose pas car ils se connectent sur le même serveur distant et donc ont tous le même environnement de travail avec chacun une cessions différentes.
la base est sur le C:\ et visible sur toutes les cession seul l'IHM est copier sur le bureau de chaque cession (c'est moi qui est personnellement réalisé cette copie pour éviter que certaines personnes ne créer des raccourcis ).

Concernant le fonctionnement de la base: il n'y a pas de macro autoexec.
Il y a un formulaire principal de menu lier a une table de configuration.
Ce formulaire sert pour le menu principal et tout les sous menu, il est rappelé et le code modifie les intitulées du formulaires.

ce formulaire a pour source une table mais le Type Recordset est bien sur Feuille de réponse dynamique il utilise des filtre paramétrable qui sont initialiser sur l'ouverture du formulaire pour connaitre le menu à afficher.

sur l'activation du formulaire il initialise son formulaire de menu avec le contenue de la table de configuration en fonction des paramètres.
voici le code en question:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
Private Sub Form_Open(Cancel As Integer)
' Minimize the database window and initialize the form.
 
    ' Move to the switchboard page that is marked as the default.
    Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'Par défaut' "
    Me.FilterOn = True
 
End Sub
 
Private Sub Form_Current()
' Update the caption and fill in the list of options.
 
    Me.Caption = Nz(Me![ItemText], "")
    FillOptions
 
End Sub
 
Private Sub FillOptions()
' Fill in the options for this switchboard page.
 
    ' The number of buttons on the form.
    Const conNumButtons = 8
 
    Dim con As Object
    Dim rs As Object
    Dim stSql As String
    Dim intOption As Integer
 
    ' Set the focus to the first button on the form,
    ' and then hide all of the buttons on the form
    ' but the first.  You can't hide the field with the focus.
    Me![Option1].SetFocus
    For intOption = 2 To conNumButtons
        Me("Option" & intOption).Visible = False
        Me("OptionLabel" & intOption).Visible = False
    Next intOption
 
    ' Open the table of Switchboard Items, and find
    ' the first item for this Switchboard Page.
    Set con = Application.CurrentProject.Connection
    stSql = "SELECT * FROM [Switchboard Items]"
    stSql = stSql & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" & Me![SwitchboardID]
    stSql = stSql & " ORDER BY [ItemNumber];"
    Set rs = CreateObject("ADODB.Recordset")
    rs.Open stSql, con, 1   ' 1 = adOpenKeyset
 
    ' If there are no options for this Switchboard Page,
    ' display a message.  Otherwise, fill the page with the items.
    If (rs.EOF) Then
        Me![OptionLabel1].Caption = "Il n'y a aucun élément pour cette page de Menu Général"
    Else
        While (Not (rs.EOF))
            Me("Option" & rs![ItemNumber]).Visible = True
            Me("OptionLabel" & rs![ItemNumber]).Visible = True
            Me("OptionLabel" & rs![ItemNumber]).Caption = rs![ItemText]
            rs.MoveNext
        Wend
    End If
 
    ' Close the recordset and the database.
    rs.Close
    Set rs = Nothing
    Set con = Nothing
 
End Sub
je n'ai pas regarder les autres formulaires car dés que celui-ci est affiché sur un poste, plus personne ne peux accéder a la base.
pourtant le recordset est bien fermé...

Code :
1
2
3
4
 
 rs.Close
    Set rs = Nothing
    Set con = Nothing
Bien a vous.
Fred.
BlakSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 14h11   #8
Candidat au titre de Membre du Club
 
Inscription : avril 2004
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 20
Points : 13
Points : 13
après d'autre test le problème ne viens pas du code

lorsque je passe Ihm et Base sur notre réseau , (que mes clients ne passe plus via une connexion au serveur) et que mes clients ont Access tout fonctionne.

conclusion le problème viens :

* ou du Runtime installé sur mon serveur.
* ou du fait que je passe par une Connection a un bureau virtuelle.

je contrôle cela et je vous tiens au courant!

merci a vous
Fred.
BlakSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2012, 15h15   #9
Candidat au titre de Membre du Club
 
Inscription : avril 2004
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 20
Points : 13
Points : 13
... suite et fin de mes testes

Environnement réseau classique base sur un lecteur réseau et interface sur machine physique différentes:

=> tous fonctionnent normalement, le Runtime est celui de 2007

Environnement sur machine distante avec bureau virtuelle et une seule machine physique accès via Remote Desktop Connetion.

=> la base se verrouille dés la première connexion, le Runtime est celui de 2010

je doute que le problème vienne de la version du Runtime mais je ne peux pas le downgrader pour vérifier. A mon avis le problème viens du fait que ce soit la même machine physique qui se connecte a la base via le même runtime...

bref je vais tenter de passer par le réseau "classique" et me pencher sur la problématique des délais (+ de 35 s en région entre 2 fenêtres ...)

j'ai vue d'autre poste sur ce sujet!
je clôture ce sujet en vous remerciant de vous êtres penché sur mon cas!

Cdt.
Fred.
BlakSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h13.


 
 
 
 
Partenaires

Hébergement Web