Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Connexions ODBC multiples

Bonjour,

je souhaite créer une table dans un fichier Qlikview à partir de plusieurs sources, en concatenant à chaque fois les données.

Actuellement la table est constituée de données provenant

- de notre logiciel de gestion commerciale via une connexion ODBC

- de divers fichiers Excel

Or un des fichiers Excel utilisé pour la constitution de la table commence à devenir particulièrement lourd (20Mo), et je voudrais le remplacer par une base Access (.accdb) plutôt que de le remplacer par plusieurs fichiers Excel. Les données proviendraient donc

- de notre logiciel de gestion commerciale via une connexion ODBC

- de la base Access via une autre connexion ODBC

- de divers fichiers Excel.

Actuellement, le script est ainsi :

ODBC CONNECT TO [SAGE Qlik ];

Table_Transactions :

LOAD "V_DOCNUM",
    "V_CLINUM" as CLI_NUM,
"V_TYPE",
Year("V_DOCDATE") as V_ANNEE,
Month("V_DOCDATE") as V_MOIS,
"V_DEPOT",
"V_EXPEDIT",
"V_CATCOMPT",
"V_DOREF";
SQL SELECT *
FROM xxx.dbo."DP_VENTES"

Concatenate
LOAD PAYS_SUIVI,
MAILLON_DISTRI,
Year([Format mois QV]) as V_ANNEE,
Month([Format mois QV]) as V_MOIS
ART_NUM,
QTE_SI,
VALEUR_SO_EUROS,
VALEUR_SI_EUROS
FROM

(
ooxml, embedded labels, table is [Sell-Out]);

Concatenate
LOAD PAYS_SUIVI,
MAILLON_DISTRI,
[code pv] as PV_CODE,
pv as PV_NOM,
type as PV_TYPE,
valeur as VALEUR_SO_EUROS,
volume as QTE_SO,
Year(date) as V_ANNEE,
Month(date) as V_MOIS,
Week(date) as V_SEMAINE
[référence Veld's] as ART_NUM
FROM

(
ooxml, embedded labels, table is [Données Sell-out]);

C'est ce dernier fichier que je voudrais remplacer par une base Access.

Si je mets

ODBC CONNECT TO [MS Access Database;DBQ=C:\Users\Public\Documents\TDB QlikView\Données\SO 2014.accdb];

au début du script avant la première connexion ODBC et qu'au moment de la concaténation je mets LOAD (tous les champs) SQL SELECT * FROM `SO_2014`; Qlikview ne trouve pas la table (la table et la base ont le même nom).

Si je mets la connexion ODBC après le Concatenate, ça ne marche pas non plus.

Si je mets la connexion ODBC après la connexion ODBC Sage, Qlikview ne trouve plus les tables de Sage.

Si je mets la connexion ODBC au tout début, que je charge la table et qu'ensuite après le Concatenate je recharge la table en question mais en l'appelant par son nom Qlikview, Qlikview ne la trouve pas non plus.


Je suis à court d'idées, j'ai lu le sujet http://community.qlik.com/message/648672#648672 et le document Build Your First Application in QlikView mais cela ne m'a pas plus aidée.


Merci pour votre aide,


Delphine

2 Replies
martinien
Partner - Contributor III
Partner - Contributor III

Bonjour,

Il est  possible d'utiliser plusieurs connexions successivement, mais elle ne sont pas simultanées. Une nouvelle connexion ODBC déconnecte la précédente.

Avez vous essayé de mettre la ligne de connexion à votre deuxième source ODBC juste avant la dernière instruction Concatenate?

Cela devrait fonctionner.

Martin

Not applicable
Author

Bonjour Martin,

Désolée pour ma réponse tardive, j’étais en vacances.

Oui j’avais aussi essayé mais après Qlikview ne trouvait plus les tables

Sage (je refais appel à d’autres tables Sage dans la suite du script). Du

coup, j’ai remis à la fin de ma table Transaction la connexion OBDC à Sage

et ca marche J Merci !

Delphine