Aide sur création client Postgresql

Répondre
JeromeL
Messages : 9
Enregistré le : lun. déc. 10, 2018 9:42 am

lun. août 26, 2019 3:19 pm

Bonjour,
Je sais que la demande est farfelue mais j'aurais besoin d'aide pour créer une "fiche client" à l'aide d'une instruction PostgreSQL.
En gros j'ai créé un logiciel qui gère mes dossiers d'affaires, je renseigne le nom de mon client, son adresse, son mail, etc... et je ne voudrais pas me casser les pieds à tout réinscrire dans OC.
A ce jour j'arrive à lire la base de donnée en dehors de OpenConcerto. En revanche je n'arrive pas à créer de nouvelles entrées dans cette base...
pour information j'ai déjà créé un tableau de bord de compta qui regroupe quelques valeurs significative :
tableau de bord.png
tableau de bord.png (84.28 Kio) Vu 2221 fois
Pourriez vous me donner des informations s'il vous plait. J'aimerais pouvoir créer plus d'interaction entre les deux logiciels
Je compte à terme diffuser ce logiciel en open source
JacquesF
Messages : 121
Enregistré le : jeu. mars 14, 2019 10:44 am

lun. août 26, 2019 8:56 pm

Bonjour,
Manipuler une base de données d'une application directement est toujours une opération risquée (et à ne pas faire sans de multiples tests sur une version dédiée à ceux-ci justement).
La piste à explorer à mon avis est celle des logs de l'application qui contiennent (pour ce que j'en ai déjà vu) la trace de quasiment toutes les requêtes faites dans la base.
Créer une ou plusieurs fiches clients, les modifier, les effacer et regarder les commandes mises en œuvre, puis les tester en console dans pgadmin par exemple, ensuite voir les résultats et si le jeu en vaut la chandelle entre les risques et les avantages...
Autre piste, que j'utilise personnellement, créer les clients dans OC et faire une vue avec les informations complètes sur les clients et s'en servir dans une autre base de données pour son application (voir les tables étrangères dans PostGreSQL). C'est nettement moins risqué pour ta comptabilité.
Jacques
OpenConcerto v1.7.0
Configuration multiposte - Serveur Postgresql v11.11 sous Linux (Debian 10.9)
Clients Linux (Mageia & Kubuntu) & Windows (7 Pro et 10 Pro)
JeromeL
Messages : 9
Enregistré le : lun. déc. 10, 2018 9:42 am

mar. août 27, 2019 8:06 am

Bonjour Jacques,
Tout à fait d'accord, je ne teste pas sur ma base de donnée de l'entreprise. Bonne idée pour les logs, mais aucune référence à la commande INSERT.
Après je ne veux pas réinventer la poudre, mais je sais pas s'il est possible de passer une commande à OpenConcerto pour créer un client( une commande dans un terminale, une API je sais pas)
du genre

Code : Tout sélectionner

./OpenConcerto --create-contact name="" address=""
ça serait top, et ça éviterai les mauvaises surprises !
JacquesF
Messages : 121
Enregistré le : jeu. mars 14, 2019 10:44 am

mar. août 27, 2019 12:39 pm

Bonjour,
A ma connaissance, il n'y a pas d'interface en ligne de commande.
Mais le code source java est accessible ici : http://code.openconcerto.org/listing.ph ... enConcerto et ça doit aider pour trouver les commandes à utiliser.
Il est aussi possible d'activer les traces dans PostgreSQL (paramètre logging_collector à on, voir la documentation pour les autres possibilités).
Avec ça, il est facile de voir ce qui se passe, mais pour avoir créé une vue, il y a au moins 2 tables impactées (CLIENT et ADRESSE).
Et selon toutes probabilités, les tables contenant les tarifs, les pays, le type de règlement utilisé, le nom du commercial, etc... Bref, tous les champs visibles dans les onglets.
Créer juste la fiche et l'adresse avec des valeurs par défaut ne semble pas trop risqué, mais gérer toutes les autres données ne devrait à mon avis ne se faire que via OC pour éviter de casser les liens dans la base.
Bons tests
Jacques
OpenConcerto v1.7.0
Configuration multiposte - Serveur Postgresql v11.11 sous Linux (Debian 10.9)
Clients Linux (Mageia & Kubuntu) & Windows (7 Pro et 10 Pro)
Avatar du membre
guillaume
Messages : 2429
Enregistré le : ven. févr. 11, 2011 7:15 pm

mar. août 27, 2019 2:48 pm

Bonjour,

Il n'y a rien de compliqué, en effet à minima il faut créer une ligne dans la table CLIENT et une dans la table ADRESSE.
Faites juste attention aux "ID_****" pour les faire pointer sur des lignes existantes et qui n'ont pas le champs ARCHIVE = 1.

Dommage de faire tout un système externe alors qu'un module suffirait (et pourrait être facilement partagé).

Cordialement,
Directeur technique d'OpenConcerto qui dans son temps libre s'occupe du forum.
Pour une assistance pro, nous sommes joignables à ILM Informatique contre quelques jetons.
Pensez aussi à lire le manuel !
Répondre