|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() |
Salut à tous,
je travaille actuellement sur le développement d'une base de données Oracle : serveur 10g et forms 6i. je souhaite mettre à disposition des utilisateurs des formulaires leur permettant de charger eux mêmes leurs fichiers (Excel pour la plupart) dans la base de données. en effet, les fichiers arrivent en masse et ce serait une perte de temps énorme pour l'équipe informatique d'être en charge de cette tâche. au préalable, nous aurons pris soin de définir avec les utilisateurs des fichiers normés (car hétérogènes pour le moment) conforme à la structure de la base de données. quelle solution technique puis-je mettre en place sachant que je ne suis pas limité à Oracle Forms 6i ? je peux sans problème développer une interface Java pour répondre à cette demande... merci d'avance pour vos avis
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 349 ![]() |
QUESTION :
Que dois tu restituer aux utilisateurs ? 1. Les fichiers excel conformes aux originaux. 2. Les données de ces fichiers. CDLT. |
|
|
00
|
|
|
#3 |
|
Membre confirmé
![]() |
en fait, à partir des fichiers Excel d'origine, nous voulons procéder au stockage des données dans la base sans passer par une resaisie complète de l'ensemble des fichiers. nous souhaitons une intégration automatisée des données.
par la suite, l'extraction des données se fera par extraction de fichiers texte via des formulaires de sélection par critères, qui pourront être croisement, jointure de plusieurs tables de la base.
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
00
|
|
|
#4 | |
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 349 ![]() |
nous en avons discuté récemment ...
http://www.developpez.net/forums/sho...d.php?t=259171 mon avis : Citation:
... Différentes solutions sont envisageables reposant sur l'intégration de code java : 1. Une procédure noyau (PL/SQL ) chargée de réaliser l'import des données. Cette procédure fait appel à une classe java chargée d'importer les données du fichier EXCEL. J'essaierais demain de te fournir du code ... 2. Développer une applet intégrant les bibli Excel et JDBC le tout packagé dans un jar. Le PB étant le recencement de différentes VM des utilisateurs. Autre solution : En forms 6, regarder du côté des package OLE2 http://www.tek-tips.com/viewthread.c...1155177&page=1 ... en forms 9, il y a WEB_UTIL mais .... c'est pas terrible et trés lent à moins d'utiliser le port de l'AS qui n'utilise pas le cache ! CDLT. |
|
|
|
00
|
|
|
#5 |
|
Membre confirmé
![]() |
je suis du même avis que toi concernant SQL Loader et les tables externes. c'est fastidieux.
en effet, je dois mettre à disposition de 200 personnes (non informaticiens) une interface leur permettant de charger eux mêmes leurs fichiers. il me faut donc une solution simple d'utilisation. le client Forms 6i sera déployé sur chaque poste utilisateur. je faisais référence à Java mais d'autres possibilités peuvent être envisagées... ceci dit, je pense que la première solution que tu proposes peut correspondre à mes attentes... si j'ai bien compris, il s'agirait d'une procédure PL/SQL que je pourrais lier à un formulaire forms 6i ? et cela me donnerait la possibilité d'importer des fichiers Excel ou .txt en précisant simplement l'adresse du fichier et la table cible ?
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
00
|
|
|
#6 | |||
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 349 ![]() |
Citation:
Citation:
Citation:
Question : En moyenne, les fichiers comportent combien de lignes et colonnes ? .. et doit t'on alimenter des tables différentes ? CDLT. |
|||
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() |
oui on pourrait envisager une solution par laquelle les utilisateurs placeraient leurs fichiers sur le serveur. je pensais plutôt à une exportation des fichiers depuis chaque poste utilisateur mais pourquoi pas les entreposer sur le serveur.
pour info, les fichiers peuvent atteindre des centaines de milliers de lignes, des centaines de colonnes et alimentés plusieurs tables... cdt,
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
00
|
|
|
#8 | |||||
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 349 ![]() |
Citation:
J'ai effectué un petit test, sur un jeu d'essai de 10.000 lignes en utilisant la librairie :http://www.andykhan.com/jexcelapi/ le résultat parrait satisfaisant : Citation:
Code :
Citation:
CDLT. |
|||||
|
|
00
|
|
|
#9 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Attention les beans ne fonctionnent que si tu es en mode web.
Par fichier excel, tu entends .xls ou .csv ?
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#10 |
|
Membre confirmé
![]() |
je ne comprends pas vraiment la remarque de PLaineR concernant le mode WEB.
je peux développer une interface java connectée à ma base Oracle pour charger les fichiers non ? par fichier Excel, peu importe qu'il soit en .xls ou en .csv...
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
00
|
|
|
#11 |
|
Membre éclairé
![]() Inscription : décembre 2004 Messages : 349 ![]() |
... ou bien sur d'autant que tu utilises Forms en version 6I donc en mode WEB !
plaineR préconise sans doute l'utilisation de SqlLoader pour des fichiers CSV mais comme je l'indiquais lors d'un précédent post, la conversion XLS en CSV nécessite une opération de + à réaliser pas les utilisateurs. Sans vouloir remettre en cause la formation de ces utilisateurs à cette opération .... CDLT. |
|
|
00
|
|
|
#12 | |||
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Citation:
Citation:
Citation:
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|||
|
|
00
|
|
|
#13 | |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Citation:
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
|
00
|
|
|
#14 | |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 024 ![]() |
Citation:
Il me semble que les fichiiers xls sont limités à 65536 lignes non ? Pour de très gros volume je crois que les api (java ou autres) ne sont pas adaptées. Pour de telles quantités de données, moi j'attaquerais directement les fonctions bas-niveau coté serveur (Ex: conversion csv / pré-parsing par awk / sql*loader) |
|
|
|
00
|
|
|
#15 | |
|
Membre confirmé
![]() |
Citation:
le processus doit être accessible par près de 300 personnes ! j'étais donc parti sur l'idée d'une interface Java/Swing avec un FileChooser pour sélectionner le fichier. ensuite, de lire les données via un DataInputStream (dans ce cas la je peux obliger de convertir les fichiers Excel en texte) ou par l'API qui permet de lire des fichiers Excel et de créer les ordres SQL du même coup. ensuite, soit je stocke les ordres SQL en mémoire et j'envoie tout d'un bloc à la BD mais suivant le nombre d'ordres ca peut ramer un peu côté Java. ou bien à chaque ligne lue, j'envoie l'ordre d'insertion correspondant à la BD via JDBC bien sûr.
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
|
|
|
00
|
|
|
#16 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Je suis d'accord avec remi4444, je reste persuadé que pour des traitements de gros volume java n'est pas adapté
A mon avis il aurait été plus judicieux de faire un outil qui transfère le fichier sur le serveur et de lancer SQL*Loader.
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#17 | |
|
Membre Expert
![]() Inscription : avril 2006 Messages : 1 024 ![]() |
Citation:
Le problème risque d'etre un problème de performance, fais très attention à ça car tu risques de passer du temps à développer une jolie solution qui fonctionnera bien pour des petits fichiers et qui sera inutilisable si tes fichiers deviennent aussi gros que ce que tu as dis dans ton précédent message. |
|
|
|
00
|
|
|
#18 | ||
|
Membre confirmé
![]() |
Citation:
Citation:
__________________
Outils utilisés : Matlab 7.11 R 2.10.1 Access 2003 NetBeans 6 Arcgis 9.3 Traduction en espagnol du cours Java SE de Mickaël BARON |
||
|
|
00
|
|
|
#19 | |||
|
Invité régulier
![]() Inscription : mars 2007 Messages : 9 ![]() |
Bonjour,
Citation:
J’ai le même problème que vous, et je crois que cette class fera la faire, mais il me reste de convertir cette class a une PJC a fin de l'utilisé dans Oracle forms 10j. Si c'est possible de m'aider pour faire ce code, merci d'avance. |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com