IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

Cette section est consacrée aux développements d'applications interfacées avec les logiciels Sage.

Modérateurs: Super-Apogea, Super Modérateur

IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

de GPX69 » Lun 31 Aoû 2015 17:18

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
Posteur néophyte
Posteur néophyte
 
Messages: 1
Inscription: Lun 31 Aoû 2015 17:09

Re: IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

de asr31 » Ven 4 Sep 2015 23:09

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 ....
ASR31

En recherche de missions.
Avatar de l’utilisateur
Super Contributeur
Super Contributeur
 
Messages: 2975
Inscription: Mer 13 Fév 2008 15:31
Localisation: TOULOUSE

Re: IMPORT SQL DANS UNE TABLE D INFORMATION LIBRE

de asr31 » Ven 4 Sep 2015 23:15

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,
ASR31

En recherche de missions.
Avatar de l’utilisateur
Super Contributeur
Super Contributeur
 
Messages: 2975
Inscription: Mer 13 Fév 2008 15:31
Localisation: TOULOUSE


Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité