Impossible d'Ajouter un fournisseur en V1.4

Un conseil pour l'installation? Un problème technique pour installer OpenConcerto?
Avatar du membre
guillaume
Messages : 2435
Enregistré le : ven. févr. 11, 2011 7:15 pm

ven. mars 04, 2016 2:05 pm

Bonjour,

la base de données est à jour ? (cad mise à jour depuis 1.3.2 outil de configuration?)

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 !
EricM
Messages : 5
Enregistré le : mer. févr. 10, 2016 9:32 pm

sam. mars 05, 2016 11:28 am

Bonjour,

Pour être plus précis sur les versions :
  • OpenConcerto est bien en OpenConcerto-1.3.2-multiposte
    Version client OpenConcerto.png
    Version du client
    Version client OpenConcerto.png (18.04 Kio) Vu 2728 fois
  • Les schémas de BDD sont crées depuis le fichier OpenConcerto-1.3.sql.zip. (Common.FWK_SCHEMA_METADATA: VERSION= 20140307T183106.054019 et DefaultFWK_SCHEMA_METADATA : VERSION= 20140307T183039.481080)
  • La mise a jour a été faite car lorsque j'interroge par PGAdminIII la table "Common"."FWK_SCHEMA_METADATA" elle me donne "VERSION";"20160212T132646.123714" (ce qui doit être le timestamp de ma mise à jour de base)
Pourtant a l'écran de connexion une popup d'erreur est toujours affichée :

Code : Tout sélectionner

UncaughtException on thread Thread[Cache preload,1,main]
no element for ID_CLIENT_DEPARTEMENT in org.openconcerto.erp.core.sales.quote.element.DevisSQLElement "OpenConcerto"."OpenConcerto50"."DEVIS"
org.openconcerto.utils.ExceptionHandler: UncaughtException on thread Thread[Cache preload,1,main]
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:112)
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:116)
	at org.openconcerto.erp.config.Gestion$2.uncaughtException(Gestion.java:194)
	at java.lang.ThreadGroup.uncaughtException(Unknown Source)
	at java.lang.ThreadGroup.uncaughtException(Unknown Source)
	at java.lang.Thread.dispatchUncaughtException(Unknown Source)
Caused by: java.lang.IllegalStateException: no element for ID_CLIENT_DEPARTEMENT in org.openconcerto.erp.core.sales.quote.element.DevisSQLElement "OpenConcerto"."OpenConcerto50"."DEVIS"
	at org.openconcerto.sql.element.SQLElement.getForeignElement(SQLElement.java:399)
	at org.openconcerto.sql.element.SQLElement.initFF(SQLElement.java:251)
	at org.openconcerto.sql.element.SQLElement.getNormalForeignFields(SQLElement.java:828)
	at org.openconcerto.sql.element.SQLElement.loadAllSafe(SQLElement.java:1402)
	at org.openconcerto.sql.model.UndefinedRowValuesCache.preload(UndefinedRowValuesCache.java:84)
	at org.openconcerto.erp.action.NouvelleConnexionAction$2.run(NouvelleConnexionAction.java:364)
Caused by: java.lang.IllegalStateException: no element for "OpenConcerto"."OpenConcerto50"."CLIENT_DEPARTEMENT"
	at org.openconcerto.sql.element.SQLElement.getElement(SQLElement.java:385)
	at org.openconcerto.sql.element.SQLElement.getForeignElement(SQLElement.java:397)
	... 5 more
J'ai procédé à une nouvelle mise à jour de la base par l'outil mais l'erreur persiste.

De plus a l'affichage de la liste des devis on a également une erreur :

Code : Tout sélectionner

UncaughtException on thread Thread[AWT-EventQueue-0,6,main]

null SQLTableModelColumn in [Tuple2 [null, SOMME], Tuple2 [SQLTableModelColumnPath FieldPath T_HT, SOMME]]
org.openconcerto.utils.ExceptionHandler: UncaughtException on thread Thread[AWT-EventQueue-0,6,main]
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:112)
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:116)
	at org.openconcerto.erp.config.Gestion$2.uncaughtException(Gestion.java:194)
	at java.lang.ThreadGroup.uncaughtException(Unknown Source)
	at java.lang.ThreadGroup.uncaughtException(Unknown Source)
	at java.awt.EventDispatchThread.processException(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: null SQLTableModelColumn in [Tuple2 [null, SOMME], Tuple2 [SQLTableModelColumnPath FieldPath T_HT, SOMME]]
	at org.openconcerto.erp.core.common.ui.IListTotalPanel.<init>(IListTotalPanel.java:108)
	at org.openconcerto.erp.core.common.ui.IListTotalPanel.<init>(IListTotalPanel.java:65)
	at org.openconcerto.erp.core.sales.quote.ui.ListeDesDevisPanel.createPanel(ListeDesDevisPanel.java:234)
	at org.openconcerto.erp.core.sales.quote.ui.ListeDesDevisPanel.<init>(ListeDesDevisPanel.java:67)
	at org.openconcerto.erp.core.sales.quote.action.ListeDesDevisAction.createFrame(ListeDesDevisAction.java:86)
	at org.openconcerto.erp.action.CreateFrameAbstractAction.actionPerformed(CreateFrameAbstractAction.java:42)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.AbstractButton.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$200(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	... 6 more
A la création d'un devis la saisie d'un client renvoit une erreur :

Code : Tout sélectionner

Erreur d'initialisation
no element for ID_BANQUE in org.openconcerto.erp.core.finance.payment.element.ModeDeReglementSQLElement "OpenConcerto"."OpenConcerto50"."MODE_REGLEMENT"
org.openconcerto.utils.ExceptionHandler: Erreur d'initialisation
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:112)
	at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:116)
	at org.openconcerto.sql.view.EditPanel.<init>(EditPanel.java:213)
	at org.openconcerto.sql.view.EditPanel.<init>(EditPanel.java:141)
	at org.openconcerto.sql.view.EditFrame.<init>(EditFrame.java:97)
	at org.openconcerto.sql.view.EditFrame.<init>(EditFrame.java:79)
	at org.openconcerto.sql.sqlobject.ElementComboBox.getAddFrame(ElementComboBox.java:320)
	at org.openconcerto.sql.sqlobject.ElementComboBox.actionPerformed(ElementComboBox.java:299)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$200(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: no element for ID_BANQUE in org.openconcerto.erp.core.finance.payment.element.ModeDeReglementSQLElement "OpenConcerto"."OpenConcerto50"."MODE_REGLEMENT"
	at org.openconcerto.sql.element.SQLElement.getForeignElement(SQLElement.java:399)
	at org.openconcerto.sql.element.SQLElement.initFF(SQLElement.java:251)
	at org.openconcerto.sql.element.SQLElement.getParentForeignFieldName(SQLElement.java:842)
	at org.openconcerto.sql.element.SQLElement.getParentForeignField(SQLElement.java:838)
	at org.openconcerto.sql.element.BaseSQLComponent.addInitedView(BaseSQLComponent.java:384)
	at org.openconcerto.sql.element.BaseSQLComponent.addView(BaseSQLComponent.java:360)
	at org.openconcerto.sql.element.BaseSQLComponent.addView(BaseSQLComponent.java:275)
	at org.openconcerto.sql.element.BaseSQLComponent.addView(BaseSQLComponent.java:264)
	at org.openconcerto.erp.core.finance.payment.component.ModeDeReglementSQLComponent.addViews(ModeDeReglementSQLComponent.java:175)
	at org.openconcerto.sql.element.SQLComponent.uiInit(SQLComponent.java:184)
	at org.openconcerto.sql.element.DefaultElementSQLObject.getEditPanel(DefaultElementSQLObject.java:200)
	at org.openconcerto.sql.element.DefaultElementSQLObject.setEditPanel(DefaultElementSQLObject.java:163)
	at org.openconcerto.sql.element.ElementSQLObject.setCreated(ElementSQLObject.java:128)
	at org.openconcerto.sql.element.ElementSQLObject.setRequired(ElementSQLObject.java:97)
	at org.openconcerto.sql.element.BaseSQLComponent.addInitedView(BaseSQLComponent.java:387)
	at org.openconcerto.sql.element.BaseSQLComponent.addView(BaseSQLComponent.java:360)
	at org.openconcerto.sql.element.BaseSQLComponent.addViewJComponent(BaseSQLComponent.java:196)
	at org.openconcerto.sql.element.BaseSQLComponent.addView(BaseSQLComponent.java:182)
	at org.openconcerto.erp.core.customerrelationship.customer.element.ClientNormalSQLComponent.addViews(ClientNormalSQLComponent.java:128)
	at org.openconcerto.sql.element.SQLComponent.uiInit(SQLComponent.java:184)
	at org.openconcerto.sql.view.EditPanel.<init>(EditPanel.java:206)
	... 42 more
Caused by: java.lang.IllegalStateException: no element for "OpenConcerto"."OpenConcerto50"."BANQUE"
	at org.openconcerto.sql.element.SQLElement.getElement(SQLElement.java:385)
	at org.openconcerto.sql.element.SQLElement.getForeignElement(SQLElement.java:397)
	... 62 more
J'ai donc crée un client de test à partir de la liste des clients (ce qui est logique).
La saisie d'un devis - après être passé par la creation d'un client depuis la liste des clients - semble OK mais il y a toujours impossibilité de consulter la liste des devis.

L'installation a pourtant été faite avec soin.
Seul des insertions des jeux de données de saisies sur une base H2 (lors des tests du soft) par certains utilisateur a été faite (saisies au KM, elements ... ect et PCG) ont été réinjectés en base PostGreSQL.

Et l'impression de devis depuis un Mac book pro avec Libre Office semble ne pas fonctionner ... :?

D'avance merci pour tout élement de réponse.

Le soft semble très bon mis à part ces désagréments.

Très cordialement,
Eric.
EricM
Messages : 5
Enregistré le : mer. févr. 10, 2016 9:32 pm

sam. mars 05, 2016 3:07 pm

Pour mes premières erreurs, est ce qu'un fix ne pourrait pas être :

Code : Tout sélectionner

org.openconcerto.erp.config.ComptaPropsConfiguration
L.775 ++      dir.addSQLElement(new ClientDepartementSQLElement());
L.901 ++      showAs.show("CLIENT_DEPARTEMENT", "INFOS", "NOM");

++ org.openconcerto.erp.core.common.element.ClientDepartementSQLElement

org.openconcerto.erp.core.sales.quote.element.DevisSQLElement
L.400 ++      l.add("T_HA");
L.401 ++      l.add("ID_CLIENT_DEPARTEMENT");
déjà simplement pour empêcher les erreurs ? (avec ClientDepartementSQLElement basée sur DepartementSQLElement avec seulement INFOS et NOM en champs).

Je sais que ça a l'air d'un gros workaround tout dégueulasse mais ça semble en tout cas empêcher le IllegalStateException bloquant et dans l'idée ça doit pas être loin d'une vraie solution car le DEVIS n'arrive pas à résoudre la relation qui lui est indiquée dans les relations externes et la liste des devis plante car il manque la déclaration des champs T_HA et j'ai aussi rajouté ID_CLIENT_DEPARTEMENT peut être à tort.

Je ne pense pas que la base soit en erreur car les relations me semblent bonnes mais le code de la 1.3.2 plutôt.

A moins que je me trompe car j'ai tout de même beaucoup de mal à rentrer dans le code.
xantof
Messages : 504
Enregistré le : dim. juil. 10, 2011 2:33 pm

sam. mars 05, 2016 8:01 pm

Bonjour,

Je suis loin de savoir décrypter les messages d'erreur mais vu l'historique de vos déboires et ce que je vois ici
java.lang.IllegalStateException: no element for ID_CLIENT_DEPARTEMENT in org.openconcerto.erp.core.sales.quote.element.DevisSQLElement "OpenConcerto"."OpenConcerto50"."DEVIS"
je regarderais 1) si le champ ID_CLIENT_DEPARTEMENT contient bien des données pour CHAQUE entrée et
2) si la relation est maintenue et cohérentes entre les tables en question.
(malgré ce que vous dites, j'ai tout de même impression est que le "relationnel" à été cassé entre vos tables )

J'ai déjà beaucoup tripoté avec OC et ses bases mais je n'ai jamais été confronté à ce genre de problème ce qui me fait dire (sans l'affirmer) que le problème a bien été causé/déclenché par les opérations que vous avez mené.

Bon courage

Stephan
Lubuntu 16.04 LTS au travail. Ubuntu 15.04 à la maison. 13 ans sous logiciel propriétaire. OC depuis 2012. Petit Commerce
Comment poser une question sur un forum : http://www.linux-france.org/article/the ... ns-fr.html
EricM
Messages : 5
Enregistré le : mer. févr. 10, 2016 9:32 pm

sam. mars 05, 2016 10:25 pm

Hello merci beaucoup Stéphan,

En fait j'ai eu beau regarder comme je l'ai dit dans le message précédent : les relations semblent bonnes en base car le schéma est intact et je n'ai rien bidouillé en base sur les relations depuis le déroulement des scripts OpenConcerto.1.3.sql.zip initiaux. Donc l'erreur ne vient pas de là.

Cependant les saisies_km que j'ai pu insérer n'ont - je l'espère - rien à voir avec les devis en tout cas au niveau des relations et le message que j'ai apparaît à la connexion ... (pre cache loading de la conf du directory ou assimilé).

Bref ce n'est pas grave : je me suis "auto-débrouillé" car mes patchs à partir des sources SVN (pour me faire un repo Git) cités dans mon message précédent semblent éviter tout du moins au soft de planter et mes devis apparaissent cette fois ci, sont éditables et imprimables.
OpenConcerto ne fait plus aucun message d'erreur (pour le moment), le fix est quand même assez peu impactant donc je suis confiant.

J'ai recrée les .exe avec launch4j pour Windows et j'ai refait le .jar pour la version Mac avec les lignes de commande.

Les saisies comptables fonctionnement (comme depuis toujours et tout semble bon) et je n'ai vraiment pas de temps à perdre.
Si mes posts sur le forum permettent à d'autres de se dé-mouiser ça sera toujours ça ^^

Enfin pour conclure et là en effet Stéphan tu as entièrement raison : si cette fonctionnalité d'import/export existait VRAIMENT, cela m'aurait évité de faire des injections SQL de saisies comptables/bidouillages d'une une base H2 monoposte à l'essai et de les réinjecter vers PostgreSQL pour un déploiement en multiposte sans en perdre une miette. Bref, à méditer pour l'avenir ... :twisted:

Je suspecte avoir eu des scripts SQL de création de base à mi-chemin entre 1.3 et 1.4 et le soft en 1.3.2 que du coup - je pense que c'est une supposition très osée mais c'est à quoi cela me fait penser car je n'ai pas dénaturé les relations - mes injections SQL l'ont été que sur des tables de saisies_KM et PCG donc normalement très limité (pas de devis ni de client).

En tout cas je vais m'implémenter mes imports/exports au format RImport que j'ai déjà fait pour CIEL.

Bien à vous,
Eric.
Avatar du membre
guillaume
Messages : 2435
Enregistré le : ven. févr. 11, 2011 7:15 pm

sam. mars 12, 2016 1:56 pm

Bonjour,

J'ai un peu de mal à suivre, vous utilisez la 1.4 ou 1.3.2 ???

Quand vous modifiez la base, OpenConcerto n'est au courant que si vous faites changer les versions dans FW_METADATA.

Concernant le format "Rimport", dès que vous aurez quelques chose au point, on pourra l'intégrer en standard, ça simplifiera la vie de certains :)

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