IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Projets ADP Discussion :

Migrer appli access vers projet access (avec MSDE)


Sujet :

Projets ADP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 357
    Par défaut Migrer appli access vers projet access (avec MSDE)
    Bonjour,

    Je suis actuellement en stage et on m'a demandé de migrer une appli access vers "projet access".
    Je voudrais savoir si quelqu'un sait comment procéder.
    Actuellement, j'ai créé une instance server SQL via MSDE(que l'on m'oblige à utiliser).

    J'ai ensuite créé un nouveau projet adp (à partir d'une base existante), et j'ai rempli les paramètres de connexion.(je travaille en local pour l'instant, mais les données sont destinées à être partagées entre plusieurs utilisateurs; comment faut-il faire pour que les données de la base soient partagées ?(lien odbc?))
    Ensuite j'ai importé mes tables, mes form,états... depuis mon appli access.
    J'utilise le logiciel Dbamgr2k pour gérer la base (Après avoir importé les tables, elles apparaissent dans Dbamgr2k sur l'instance SQL server que j'ai créé dans l'onglet tables).

    Donc j'aimerais savoir si j'ai commis des erreurs jusqu'a présent.
    D'autre part, lorsque j'importe mes formulaires, je n'ai plus le code vba associé (erreur: la connexion réseau est peut être perdue), comment faire?
    Serait-il possible d'avoir des infos sur les procédures stokées (un exemple svp pour voir comment fonctionnent les paramètres).
    Il est également impossible d'importer les requêtes, vais-je devoir les refaire?
    J'ai auusi un autre problème, lorsque j'ouvre le .adp, c'est bon mais quand je veux créer une vue par exemple, j'ai un message du style "vous n'avez pas l'accès en mode exclusif" (et ce même si je fais fichier\ouvrir\ puis ouvrir en mode exclusif).

    Je pense avoir fais le tour, merci de votre participation

  2. #2
    Membre émérite
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Par défaut
    Bonjour,

    Pour apporter un début de réponse, (car le sujet est vaste) il faut savoir que la migration d'une base access vers un projet ADP et SQL Server ne se fait pas simplement.

    En effet, toute la partie Data est transporté sur SQL Server, donc plus de requête dans Access, daons plus de possibilité de faire des appel aux fonctions personalisés définit dans Access, ni de faire référence aux formulaire s ou autres objet d'Access. Tout se passe coté serveur avec la syntaxe SQL de base de SQL server (selon les versions de SQL).
    En SQL les vues ne supportent pas les paramêtres mais permettent la mise à jour, alors que les PS acceptent les paramêtres mais pas la mise à jour.

    Il faut donc normalement reprendre la pluspart des formulaires et penser "Client serveur".

    C'est un très gros travail

    Dans ce que tu décris, je ne vois pas d'erreur dans ta procédure pour le moment.

    Continu d'avancer, et regarde aussi les forums sur SQL server, FAQ et Tutos, tu devrai y trouver des exemple de PS et autres

    Si tu as des questions plus orientés Access n'hésite pas à les posé sur le forum

    Bon courage

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 357
    Par défaut
    Merci didier

    En faisant importer ça m'a migré les tables vers SQL server?

    Si j'ai bien compris et pour recapituler, les insert\update\delete j'en fais des vues et les select, j'en fais des procédures stockées?

    Citation Envoyé par Didier L
    Il faut donc normalement reprendre la pluspart des formulaires et penser "Client serveur".
    Oui mais comment (modifier la connection à la base, les requêtes sur lesquelles s'appui les formulaires?)?

    Faut-il faire un lien odbc pour l'accès multi-utilisateur?
    Quelqu'un aurait-il une idée pour cette histoire de connexion perdue?

    d'autre part il ne me reste que trois semaines pour finir ce stage croyez vous que se sera suffisant pour terminer l'appli ? (j'ai 12 tables, environ 20 formulaires et autant d'états)

    Merci d'avance

  4. #4
    Membre émérite
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Par défaut
    Non,

    Les "select" sont des vues s'il n'y a pas de paramêtre et des PS dans le cas contraire.
    Si tu veux faire des "Insert/Delete/Update" et les conserver se sont obligatoirement des PS.
    Mais tu peux aussi les exécuter directement depuis Access sans les stocker dans SQL server (exécuter directement les syntaxes SQL depuis VBA).

    Il n'y a pas besoin d'ODBC avec un projet ADP, tu es en prise direct avec ton serveur SQL. Access gère les confilts multiutilisateur selon les propriétés que tu lui à définit dans le projet ADP. Attention aux requêtes Update qui sont exécuter sur ton ordre !

    D'autre part, lorsque j'importe mes formulaires, je n'ai plus le code vba associé (erreur: la connexion réseau est peut être perdue), comment faire?
    Pour ce problème de connexion réseau, je ne pense pas qu'il s'agisse de connexion avec le serveur SQL, mais plutôt d'enregistrement de ta base Access qui doit être corrompu et c'est pour cela que tu ne récupère pas le code associé aux formulaires. Normalement en important les formulaire, même dans un projet ADP tu récupère le code associé.

    Essaye donc de copier ta base Access en local, de la compacter et de la réparé selon ta version d'access et ensuite d'importer tes formulaire dans ton projet ADP.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 357
    Par défaut
    Encore une fois merci didier !!

    j'ai reussi a resoudre le probleme du vba lié au formulaire

    Didier L a écrit :
    Il faut donc normalement reprendre la pluspart des formulaires et penser "Client serveur".

    Je dois modifier les parametres de connexion pour se connecter à la base de données SQL server? (modifier les element du style:CurrentDb par CurrentProject?)

    D'autre part je viens de faire une decouverte si j'ai du code DAO (ce qui est le cas), je vais devoir le transformer en ADO?

    tu crois que c'est faisable en trois semaines?

  6. #6
    Membre émérite
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Par défaut
    Pour répondre à tes deux premières questions c'est Oui :

    CurrentProject remplace CurrentDb
    Et
    ADO remplace DAO

    Pour la dernière question, tout dépend de la taille de la base access initiale en nombre de formulaire, état, code etc...
    Tout dépend de ta capacité de travail (si tu dors ou pas la nuit )
    Et ensuite des problèmes liés à l'écriture même du code initialement (la base était elle bien construite et prope au départ)

    Je pense que tu as du "pain sur la planche" comme on dit mais c'est peux être réalisable

    Et puis il y a le forum si tu as des questions

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 357
    Par défaut
    MERCI MERCI

    Ca se degrossi bien là

    dans mes procédures stockées comment je peux faire réf à un objet d'un formulaire?

    Par exemple dans la procedure "Outil"
    -----------------------------------
    CREATE PROCEDURE Outil
    @Param1
    AS
    SELECT * FROM table1
    WHERE champ1 = @Param1
    -----------------------------

    mais a quel endroit j'affecte une valeur à param1 et comment?
    dans une autre procédure?(je crois po mais bon...)

    DECLARE @param1 integer

    SET @param1=[Formulaires]![Formulaire Outil]![numoutil]

    EXECUTE Outil @param1

    ou bien dans le code vba je met :
    Execute outil ([Formulaires]![Formulaire Outil]![numoutil])

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Projet Access Vs Base Access
    Par marot_r dans le forum Sondages et Débats
    Réponses: 2
    Dernier message: 09/12/2009, 20h22
  2. Réponses: 1
    Dernier message: 03/06/2009, 16h14
  3. Réponses: 4
    Dernier message: 03/01/2007, 21h25
  4. Projet Access et Base Access
    Par Mus_mus dans le forum Access
    Réponses: 1
    Dernier message: 11/12/2006, 10h08
  5. Migrer une application Access vers un projet adp
    Par lazizou dans le forum Projets ADP
    Réponses: 3
    Dernier message: 29/05/2006, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo