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

MS SQL Server Discussion :

Synchro AS400 DB2 et SQL Server


Sujet :

MS SQL Server

  1. #1
    CUCARACHA
    Invité(e)
    Par défaut Synchro AS400 DB2 et SQL Server
    Salut,

    Je travaille sur la refonte d'un SI d'une compagnie d'assurance qui stocke ses données dans une base DB2 sur un AS400.

    Ma mission (que j'ai accepté avant que l'enregistrement ne se détruise 5 secondes plus tard) est de diminuer la dépendance de l'entreprise à AS400 car le responsable de cette machine n'est plus très loin de la retraite et donc, il faut virer l'AS400 d'ici 6 ou 7 ans.

    Pour la partie IHM, j'ai choisi MVC3/Entity Framework car j'ai créé un Framework qui permet de générer un grand nombre de choses grace aux POCO T4 et à SQL Server.

    Le hic, c'est qu'en attendant de virer l'AS400 je dois assurer le synchronisme temps réel entre l'ancienne base et la nouvelle en SQL Server 2008 R2.

    Pour se faire, j'ai conçu un mécanisme qui consiste à vérifier la fraicheur des données à la consultation (car d'autres programmes écrivent dans l'AS400 et qu'il n'est pas possible de notifier le SQL Server de ses modifications à la volée).

    Essai 1:
    Création d'une procédure stockée CLR qui accède à l'AS400 via EasyCom, le connecteur ADO.net 2.0 que possède mon client.

    Malheureusement, ce connecteur référence System.Design qui référence system.windows.form qui est incompatible avec SQL Server.

    Essai 2:
    Création d'une procédure stockée CLR qui accède à l'AS400 via un webservice WCF. Pour ce faire j'ai suivi les instructions : http://nielsb.wordpress.com/sqlclrwcf/

    Malheureusement lorsque j'ai voulu référencer le service model, j'ai du référencer system.web, j'ai du référencer system.directoryservice, system.directoryservice.protocols puis System.EnterpriseServices qui m'a demandé System.Runtime.Remoting qui semble être incompatible.

    Bref, pourriez-vous me suggérer un moyen (hors ODBC) pour executer des requêtes vers une autre base dans un autre système à partir d'une proc CLR ?

    D'avance merci

    laurent

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Je pense que les voies que tu as choisies font faire à Sql Server des tâches qui ne sont pas de son ressort.

    Je verrais plutôt quelque chose basé sur Service Broker + WCF.

    Sinon, je n'arrive pas à comprendre pourquoi ton appel via WCF ne peut pas être mise en place.

    Je pense que, à la base, tu te compliques la vie en passant par un proxy auto généré (ce qui est totalement inutile dès qu'on est en ".Net cause à .Net dans un réseau local"), qui t'impose des dépendances pas forcément nécessaires.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  3. #3
    CUCARACHA
    Invité(e)
    Par défaut
    Tu peux me donner un exemple de proxy non autogénéré ?

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Etes vous obligé de passer par du CLR pour vérifier la fraicheur de vos données sur l'AS400 ?

    ++

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Pas sous la main (je ne fais pas de dév la où je suis), mais il suffit de mettre ton interface dans une assembly séparée qui sera commune à ton client et ton serveur.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  6. #6
    CUCARACHA
    Invité(e)
    Par défaut
    Citation Envoyé par Laurent Jordi Voir le message
    Tu peux me donner un exemple de proxy non autogénéré ?
    Bonjour, non, mais je ne vois.pas comment faire autrement pour que.ça.aille vite...

  7. #7
    CUCARACHA
    Invité(e)
    Par défaut
    Bon j'ai réussi à me passer de toute dépendance en créant un webservice REST.

    Maintenant mon exercice ce complique...

  8. #8
    CUCARACHA
    Invité(e)
    Par défaut
    Bon, à priori, ça n'est pas possible d'intégrer ce que je veux à SQL Server sachant que je veux garder la compatibilité avec Entity Framework.

    Pour moi le plus simple est d'opter pour Oracle (en plus, compte tenu de notre besoin, ça semble moins cher).

    ++

    Laurent

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    Nous avons eu exactement le même problème pour un SI dans l'assurance, et pour le résoudre nous avons utilisé la technologie Convertigo pour intégrer les applications AS/400 avec le nouveau système SQL server. En fait on utilise les capacités du produit à se connecter aux différentes base et a pouvoir extraire et saisir dynamiquement des données dans l' ecrans existant AS/400.
    Le projet initial était prévu pour plus de 6 mois de travail nous avons pu le réaliser en moins d'un mois. Le produit existe en version Gratuite Open source et en version entreprise

    voir http://www.convertigo.com

  10. #10
    CUCARACHA
    Invité(e)
    Par défaut
    Bonjour,

    Je suis allé sur convertigo mais je ne vois pas de quel produit tu parles, tu peux préciser ?

    D'avance merci

    Laurent

Discussions similaires

  1. [2008R2] MaJ Données AS400 vers tables SQL Server
    Par Chtulus dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/04/2015, 11h04
  2. Migrer une db en DB2 vers sql server
    Par bender86 dans le forum DB2
    Réponses: 0
    Dernier message: 02/11/2013, 18h28
  3. Table DB2 sur AS400 vs SQL server
    Par annstger dans le forum DB2
    Réponses: 1
    Dernier message: 25/01/2012, 15h23
  4. Réponses: 2
    Dernier message: 15/09/2011, 13h53
  5. Choix entre DB2 As/400 et Sql Server ou Mysql
    Par lesaisidufond dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 30/08/2005, 09h57

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