Voici un xmlgram qui fonctionnait en XMLRAD 2005 R1 et qui ne fonctionne plus aujourd'hui
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
SELECT C.CA_ID, 
  C.CA_code_client, 
 T.TCA_LIBELLE as LIBELLE, 
 C.TCA_ID,
  C.CA_NIVEAU, 
  C.CA_NIVEAU_2, 
  C.CA_COMMENTAIRE, 
  C.CA_DATE,
  C.CA_PHONING,
  C.CA_CAMPAGNE
FROM CARTET C,
  TYPE_CARTE T
WHERE T.TCA_ID = C.TCA_ID 
AND C.CA_SUPPRIME = 0
{$WHERE_AGENT}
Dans Delphi 6 , dans le BeforeXMLGRAM j'ai ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
If (Context.Values['TECH']) = '' then
  context.Values['WHERE_AGENT'] := ''
else
 context.Values['WHERE_AGENT'] := ' AND (C.CA_AGENT = :TECH OR C.CA_AGENT_2 = :TECH)';
depuis mon passage à la version 2005 R2 im m'affiche ce message :
TDacQuery.AssignQuerySQL - CARTET - PreprocessSQL - Duplicated ParamName[TECH]
Dans mon Assign j'ai donc recréé une variable TECH2 en Destinataire et en Source TECH
Je n'ai plus le Message d'erreur, par contre ma requete me renvoie tous les enregistrements alors que dans les cas ou je teste elle devrait m'en renvoyer 3
Quand je fais seulement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
If (Context.Values['TECH']) = '' then
  context.Values['WHERE_AGENT'] := ''
else
 context.Values['WHERE_AGENT'] := ' AND C.CA_AGENT = :TECH '
Ma requete fonctionne bien

Est ce une erreur dans ma requete ou une coincidence avec mon basculement XMLRAD 2005 R2