Il est n'est pas étonnant que de nombreuses personnes utilisent Access pour acceder à XCS, car Apisoft livre même le pilote ODBC pour acceder à la base Oracle. Cependant, je déteste Access. Mon meilleur argument est tout simple : parce que ce machin (oui machin) n'est pas professionnel ! Regardez un peu les forums et tout le monde vous le dira. Pour moi, Access est aux bases de données ce que Poutine est à liberté de la presse.
Pour en revenir au sujet, et la connection à la base Oracle XCS d'Apisoft, j'ai fais le choix du NATIF et j'utilise des outils assez cool, comme Toad, QueryReporter, ou encore des librairies open sources comme ZeosLib. Pourquoi ? Parce que c'est NATIF. Mais le fin du fin reste encore la ligne de commande : l'outil Oracle par exellence : SQLPLUS.
J'ai réussi a faire des fichiers CSV en 2 temps 3 mouvements. Evidement il faut connaitre la base du SQL. Ce qui n'est pas à la portée de tout le monde (notament ceux qui viennent du monde Access).
Connection à SQLPLUS à travers un bat.
Le .bat : hyper compliqué :D !
C:\Oracle\app\oracle\product\10.2.0\server\BIN\SQLPLUS.EXE INVITE/INVITE@LOCALHOST:1551/EURATEC @C:\query.sql
Fichier C:\requete.sql
set feed off ;
set echo off ;
set heading off ;
set termout off ;
set feedback off
set verify off; 
set lines 2000;
set trimspool on;
set trim on;
SET NEWPAGE 0;
SET PAGESIZE 0;
SET COLSEP ";"

ALTER SESSION SET CURRENT_SCHEMA="APISOFT_DOS_PROMATEX"; 

REM Requete article
SPOOL C:\article.csv;
REM Requete :article,designation,famille,prix,stock
SELECT 
 A.CODE || ';' || A.NOM || ';' || A.FAMILLE || ';' || A.PRIXBASEHT || ';' || ARTICLE.STOCKPHYS
FROM ARTICLE A
ORDER BY A.CODE;
spool off;

REM Requete CLIENT;
SPOOL C:\client.csv;
SELECT CT.CODEGESTION || ';' || C.TYPETARIF  ||';' || CTA.NOM || ';' || CTA.CIVILITE || ';' || 
REPLACE(CTA.ADR,CHR(10),'\n') || ';' || CTA.CP || ';' || CTA.VILLE || ';' || CTA.PAYS
FROM CLIENT C, COMM_TIERS CT, COMM_TIERSADR CTA, COMM_TIERSINTERLOC INTERLOC
WHERE CT.TYPETIERS='C'
  AND C.CODE=CT.CODEGESTION
  AND CT.IDADRFACTURATION = CTA.IDENTIFIANT (+) 
  AND CTA.IDINTERLOC = INTERLOC.IDENTIFIANT (+);
spool off;

exit;
C'est pas beau la vie ? Parce que faire ça en Access, c'est surment faisable, mais vous allez encore etre emmerder pour automatiser le merder. Là pas là peine.... un .bat et hop. En plus avec SQLplus c'est NATIF, rien ne peut etre plus rapide que ça, et la machine reste disponible pour les autres qui travaillent meme en cas de gros traitements. Pas convaincu qu'il faut abandonner les drivers ODBC ? Alors restez dans le mondes des gaminous. Nous ici on travaille en PROS !
Il est quand même relativement étonnant que ça soit à nous simple revendeur de fournir ce genre de solutions, Non ? Cela devrait être disponible sur le site d'Apisoft, Non ?