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

XMLRAD Discussion :

Limitation de XMLRAD ?


Sujet :

XMLRAD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut Limitation de XMLRAD ?
    Bonjour,

    Oui, je suis déçu, car je viens de me heurter à quelques limitations de XMLRad avec les requêtes SQL...

    Cf. mon autre message et l'exemple suivant....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT COUNT(*) AS NB_ETS
    FROM T_SUCCURSALE_SCC
    WHERE RCO_ID = :RCO_ID
    OR    SCT_ID IN (SELECT SCT_ID
                     FROM TR_SECTEUR_SCT
                     WHERE RCO_ID = :RCO_ID)
    XMLRad ne sait pas traiter les paramètres dans une requête imbriquée !
    Et je ne me sens pas de faire le grand écart pour contourner la limitation...
    Philippe.

  2. #2
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    ok, j'ai compris. Par défaut pour SQLServer, le middleware DAC de XMLRAD utilise les drivers natif ADO et non pas OLEDB.

    comme workaround, tu peux modifier la ligne 895 dans DacADO.pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    - if FDatabase.FNativeADO or (FProvider = 'SQLOLEDB') or (FProvider = 'JET') then
    + if FDatabase.FNativeADO then
      FCommand.Prepared := True
    else
      RefreshFromOleDB;
    je remonte l'info pour que ca soit pris en compte dans les prochains Build.

  3. #3
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Merci RDM !

    Je regarde çà de suite...

  4. #4
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Je n'ai pas la même version de code que toi. J'ai fait la modif suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    procedure TDacAdoQuery.Prepare;
     
      procedure RefreshFromOleDB;
      ...
      end;
     
    begin
      FRecordSet := nil;
      FProvider := UpperCase(FDatabase.FDatabase.ConnectionString);
      if Pos('MSDAORA', FProvider) > 0 then
        FProvider := 'MSDAORA'; // Used when setting string params for ORACLE
      if Pos('ORAOLEDB', FProvider) > 0 then
        FProvider := 'ORAOLEDB'; // Used when setting string params for ORACLE
      if Pos('SQLOLEDB', FProvider) > 0 then
        FProvider := 'SQLOLEDB';
      if Pos('JET.OLEDB', FProvider) > 0 then
        FProvider := 'JET';
      //if (FProvider = 'SQLOLEDB') or (FProvider = 'JET') then
      //  FCommand.Prepared := True
      //else
        RefreshFromOleDB;
      FCommand.CommandTimeOut := FDatabase.FDatabase.CommandTimeOut;
    end;
    J'ai remplacé la libDacAdo.dll dans c:\Winnt\system32.

  5. #5
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    Citation Envoyé par Ph. B.
    J'ai remplacé la libDacAdo.dll dans c:\Winnt\system32.
    le DacAdo est ompilé directement dans la DLL donc il suffit de recompiler ton appli normalement

  6. #6
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Merci RDM... :-)

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

Discussions similaires

  1. [XMLRAD] DBComboBox
    Par Pm dans le forum XMLRAD
    Réponses: 7
    Dernier message: 27/11/2002, 15h11
  2. [XMLRAD] RecordCount ?
    Par Pm dans le forum XMLRAD
    Réponses: 4
    Dernier message: 27/11/2002, 14h59
  3. Limiter le déplacement de la souris
    Par el_bouleto dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/11/2002, 23h56
  4. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 22h09
  5. [Comparatifs] Limites nombres tables et quantité de données
    Par benj63 dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 13/06/2002, 21h31

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