Page 1 sur 1

IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

MessagePosté: Lun 31 Aoû 2015 17:18
de GPX69
Bonjour,
qq un aurait il la solution pour importer en bloc une liste de valeurs dans une information libre de type table plutot que de les creer par ajouter dans le parametrage?
Evidemment je ne veux pas passer par une saisie manuelle mais par la MAJ de la table F_ENUMLIBRECIAL en direct

Re: IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

MessagePosté: Ven 4 Sep 2015 23:09
de asr31
Bonjour,

A ne pas faire car pas respectueux des points d'entrée SAGE (Import, ODBC, Objets métiers)

Mais, à tester sur le dossier BIJOU :

Il faut que ton information de type table soit déjà créée en gescom (ça peut se faire sous SQL, mais ce n'est pas le sujet, voir table cbSysLibre et commande ALTER).

Le plus simple est de créer une première entrée dans cette table au travers de la gescom et de repérer le N_Info, le N_File.

Exemple :
* je crée une info libre d'entête de document de type Table appelée TBL
- du coup, on voit dans cbSysLibre deux nouvelles valeurs sur F_DOCENTETE (ça, on s'y attendait) et aussi sur F_ABOENTETE (ben, oui...)
* je crée une valeur BIDON dans l'énuméré de cette info libre :
- Dans F_ENUMLIBRECIAL, je trouve une nouvelle entrée avec N_Info = 6, N_File=35 et EL_Intitule=BIDON

Attention, le N_Info dépend du nombre d'informations libres déjà créées, et je crois que le N_File est une constante SAGE (qui peut donc être variable selon les versions de base)
OK

Donc, d'une manière ou d'une autre, grosso-modo, tu vas devoir importer ou générer un script qui va insérer des lignes dans F_ENUMLIBRECIAL , contenant N_Info = 6, N_File = 35 et EL_Intitule = <CeluiQueTuVeuxLimitéA20car>

Si c'est one-shot, une petite feuille de ton tableur préféré qui a une formule, pour chaque intitulé
Code: Tout sélectionner
="INSERT INTO F_ENUMLIBRECIAL (N_Info, N_File, EL_Intitule) VALUES (6,35,'" & A$1 & "')"

A$1 étant la colonne de ton tableur contenant les valeurs à ajouter à la table.

Ca te donne un résultat du type :
Code: Tout sélectionner
INSERT INTO F_ENUMLIBRECIAL (N_Info, N_File, EL_Intitule) VALUES (6,35,'titi')

Cela pour toutes les lignes où tu aura mis une valeur en colonne A
Un copier de ta colonne vers le SQL Server Management Manager et une fenêtre de script, et hop, on lance la requête (sur la bonne base qu'on aura pris soin de sauvegarder au préalable)

Les autres champs sont calculés par les triggers de la table.

Si c'est plus souvent, il y a plein de site de scripting pour lancer une requête vers un SQL ....

Re: IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

MessagePosté: Ven 4 Sep 2015 23:15
de asr31
Re,

Ne pas faire ce que je dis !!!! Il faut passer par les outils SAGE pour faire ce type d'import pour être sûr d'une part de respecter l'intégrité des données, et d'autre part, penser que cela sera compatible avec les versions futures.
Les outils :
* Import format SAGE (FLAG ou Drapeau)
* ODBC (Mais là, ODBC n'attaque pas ces tables)
* Objets Métiers

Là dessus, c'est documenté (en tout cas, pour les imports)...

Cordialement,