Bonjour,
Le permettre simplement demande de créer un nouvel outil car la restauration de base (en générale)
est une opération assez critique. Il faut par exemple être sur qu'il n'y a plus de connexion, que les droits sont bons, etc... etc...
sans parler des cas particulier de configuration, d'accès... ou de système d'exploitation (cf les dizaines de distribution linux)...
Sur une version monoposte, le faire manuellement est assez simple, il faut remplacer le fichier .db de H2.
Pour la version multiposte, il est conseillé de passer par les outils de PostgreSQL.
La sauvegarde intégrée d'OpenConcerto est surtout là en cas de soucis majeur, il s'agit d'un format "lisible" de sauvegarde
complètement indépendant du type de base de données. Généralement, les clients passent par nous dans ces cas
de catastrophe majeure, afin d'être sûr que tout est cohérent. Pour vous donner une idée, c'est un travail qui prend 2 bonnes heures
pour quelqu'un rodé à ce genre d'opération. (Facturé par ILM 192€ pour ceux qui se posent la question).
Cet outil "intégré" n'est donc pas une de nos priorité. Les seuls logiciels (propriétaire ou open source)que nous connaissons qui intègre ce genre de fonctionnalité
ne gèrent d’ailleurs que des bases fichiers...
Cordialement,
OpenConcerto 1.2 beta 5
Bonjour,
et merci pour cette réponse pertinente,
en effet la multiplicité des environnements possibles pour OpenConcerto (qui est un atout indéniable de l'application) ne facilite par ailleurs pas la conception d'une restauration universelle.
En revanche, peut-être qu'un peu de documentation pour les cas les plus standards pourrait couvrir 90% des besoins.
En dehors des crashes sauvages où le support d'ILM peut être incontournable et largement justifié, il y a un certain nombre de besoins que je qualifierais "d'ordinaire" qu'il me semble possible de documenter.
Je citerai comme exemples basiques :
- besoin de recopier "à la maison" et à l'identique (en faisant une photo en quelque sorte, avec un environnement base et système d'exploitation identique) une config OpenConcerto de production, à des fins d'essais, d'éditions, de consultation.
- besoin de changer de PC, de serveur physique à environnement très proche (ce qui techniquement sera sans doute couvert par une manip proche du besoin précédent
)
Après avoir parcouru les posts du forum abordant ce sujet, j'en conclue que certains ont un peu débroussaillé le sujet...
- pour le monoposte cela semble assez clair, une recopie de l'arborescence de fichiers (y compris la base H2) semble suffire.
- pour le multiposte avec base PostgreSQL, certains semblent avoir réussi sous Linux en combinant recopie d'arborescence de fichiers et dump/restitution de la (ou des) base(s) PostgreSQL.
- j'imagine qu'en multiposte sous Windows ou Mac la solution puisse ressembler à ce qui a été fait sous Linux en passant cependant par pgAdmin puisque par ligne de commande cela me semble plus délicat, voire impossible, dans ces environnements.
Merci en tout cas pour ce très bel outil.
et merci pour cette réponse pertinente,
en effet la multiplicité des environnements possibles pour OpenConcerto (qui est un atout indéniable de l'application) ne facilite par ailleurs pas la conception d'une restauration universelle.
En revanche, peut-être qu'un peu de documentation pour les cas les plus standards pourrait couvrir 90% des besoins.
En dehors des crashes sauvages où le support d'ILM peut être incontournable et largement justifié, il y a un certain nombre de besoins que je qualifierais "d'ordinaire" qu'il me semble possible de documenter.
Je citerai comme exemples basiques :
- besoin de recopier "à la maison" et à l'identique (en faisant une photo en quelque sorte, avec un environnement base et système d'exploitation identique) une config OpenConcerto de production, à des fins d'essais, d'éditions, de consultation.
- besoin de changer de PC, de serveur physique à environnement très proche (ce qui techniquement sera sans doute couvert par une manip proche du besoin précédent

Après avoir parcouru les posts du forum abordant ce sujet, j'en conclue que certains ont un peu débroussaillé le sujet...
- pour le monoposte cela semble assez clair, une recopie de l'arborescence de fichiers (y compris la base H2) semble suffire.
- pour le multiposte avec base PostgreSQL, certains semblent avoir réussi sous Linux en combinant recopie d'arborescence de fichiers et dump/restitution de la (ou des) base(s) PostgreSQL.
- j'imagine qu'en multiposte sous Windows ou Mac la solution puisse ressembler à ce qui a été fait sous Linux en passant cependant par pgAdmin puisque par ligne de commande cela me semble plus délicat, voire impossible, dans ces environnements.
Merci en tout cas pour ce très bel outil.
Bonjour,
Sous Windows ou Mac, les outils de PostgreSQL en ligne de commande ne sont pas difficiles à mettre en oeuvre.
Toutes ces opérations feront l'objet d'une section dans "la bible" qui nous écrivons.
Une fois la mise en ligne de la 1.2 finale, nous mettons le turbo pour finir cette documentation tant attendue.
Merci pour vos retours.
Cordialement,
Sous Windows ou Mac, les outils de PostgreSQL en ligne de commande ne sont pas difficiles à mettre en oeuvre.
Toutes ces opérations feront l'objet d'une section dans "la bible" qui nous écrivons.
Une fois la mise en ligne de la 1.2 finale, nous mettons le turbo pour finir cette documentation tant attendue.
Merci pour vos retours.
Cordialement,
Bonjour,guillaume a écrit : Sous Windows ou Mac, les outils de PostgreSQL en ligne de commande ne sont pas difficiles à mettre en oeuvre.
Oui on peut trouver des informations sur le sujet sur internet : ce lien, http://xavier.lienart.pagesperso-orange ... tgres.html par exemple.
Cela ressemble à ce qu'on peut faire sous Unix.
A expérimenter et mieux, à documenter en effet.
Impatient de voir la 1.2 définitive

Bonsoir,
Je viens de procéder à la mise à jour de la 1.2b3 vers la 1.2b4, dans l'espoir d'ensuite passer la 1.2b5.
J'ai rencontré un problème lors du passage à la 1.2b4 : lors du lancement de la mise à niveau depuis l'utilitaire de configuration, la barre de progression se remplit bien, mais vers la fin :
Je décide tout de même de lancer l'application, mais dès que j'édite un article, impossible d'aller plus loin :
Il semble manquer un field ID_UNITE_VENTE in the table ARTICLE. Je repasse donc à la 1.2b3.
Est-il prévu prochainement une version qui prendra en compte une mise à niveau cumulative, qui puisse mettre à jour tous les champs manquant ?
Cordialement
Je viens de procéder à la mise à jour de la 1.2b3 vers la 1.2b4, dans l'espoir d'ensuite passer la 1.2b5.
J'ai rencontré un problème lors du passage à la 1.2b4 : lors du lancement de la mise à niveau depuis l'utilitaire de configuration, la barre de progression se remplit bien, mais vers la fin :
Code : Tout sélectionner
Echec de mise à jour
Impossible d'accéder au résultat de DELETE FROM "OpenConcerto"."Common"."SOCIETE_COMMON" WHERE "SOCIETE_COMMON"."ID" BETWEEN 43 AND 47
in jdbc:h2:file:C:\...\ilm-db\sql-config\OpenConcerto-GESTION_DEFAULT\DBData/OpenConcerto
org.openconcerto.utils.ExceptionHandler: Echec de mise à jour
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:83)
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:87)
at org.openconcerto.erp.config.InstallationPanel$1$1.run(InstallationPanel.java:274)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: Impossible d'accéder au résultat de DELETE FROM "OpenConcerto"."Common"."SOCIETE_COMMON" WHERE "SOCIETE_COMMON"."ID" BETWEEN 43 AND 47
in jdbc:h2:file:C:\...\ilm-db\sql-config\OpenConcerto-GESTION_DEFAULT\DBData/OpenConcerto
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:481)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:399)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:379)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:308)
at org.openconcerto.erp.config.InstallationPanel.updateCommon(InstallationPanel.java:1805)
...
Caused by: java.sql.SQLException: second exec failed: Referential integrity constraint violation: "EXERCICE_COMMON_ID_SOCIETE_COMMON_fkey: ""Common"".EXERCICE_COMMON FOREIGN KEY(ID_SOCIETE_COMMON) REFERENCES ""Common"".SOCIETE_COMMON(ID)"; SQL statement:
DELETE FROM "OpenConcerto"."Common"."SOCIETE_COMMON" WHERE "SOCIETE_COMMON"."ID" BETWEEN 43 AND 47 [23003-138]
at org.openconcerto.sql.model.SQLDataSource.executeTwice(SQLDataSource.java:760)
at org.openconcerto.sql.model.SQLDataSource.execute(SQLDataSource.java:448)
... 7 more
Caused by: org.h2.jdbc.JdbcSQLException: Referential integrity constraint violation: "EXERCICE_COMMON_ID_SOCIETE_COMMON_fkey: ""Common"".EXERCICE_COMMON FOREIGN KEY(ID_SOCIETE_COMMON) REFERENCES ""Common"".SOCIETE_COMMON(ID)"; SQL statement:
DELETE FROM "OpenConcerto"."Common"."SOCIETE_COMMON" WHERE "SOCIETE_COMMON"."ID" BETWEEN 43 AND 47 [23003-138]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.get(DbException.java:144)
...
Code : Tout sélectionner
Erreur d'initialisation
unknown field ID_UNITE_VENTE in ARTICLE. The table ARTICLE contains the followins fields: [ID_METRIQUE_3, ID_FAMILLE_ARTICLE, ID_TAXE, VALEUR_METRIQUE_3, ID_METRIQUE_1, ID_METRIQUE_2, CREATION_AUTO, ID, ORDRE, PV_TTC, ID_STOCK, VALEUR_METRIQUE_2, VALEUR_METRIQUE_1, CREATION_DATE, PV_HT, PA_HT, PRIX_METRIQUE_VT_3, ARCHIVE, CODE, PRIX_METRIQUE_VT_2, PRIX_METRIQUE_VT_1, SERVICE, PRIX_METRIQUE_HA_3, NOM, ID_USER_COMMON_CREATE, ID_USER_COMMON_MODIFY, PRIX_METRIQUE_HA_2, MODIFICATION_DATE, PRIX_METRIQUE_HA_1, OBSOLETE, POIDS, ID_MODE_VENTE_ARTICLE, INFOS, QTE_ACHAT, DESCRIPTIF, CODE_BARRE, GESTION_STOCK, CODE_DOUANIER, QTE_MIN, ID_DEVISE, ID_FOURNISSEUR, PV_U_DEVISE, ID_DEVISE_HA, PA_DEVISE, ID_PAYS]
org.openconcerto.utils.ExceptionHandler: Erreur d'initialisation
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:83)
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:87)
at org.openconcerto.sql.view.EditPanel.<init>(EditPanel.java:198)
...
Caused by: java.lang.IllegalArgumentException: unknown field ID_UNITE_VENTE in ARTICLE. The table ARTICLE contains the followins fields: [ID_METRIQUE_3, ID_FAMILLE_ARTICLE, ID_TAXE, VALEUR_METRIQUE_3, ID_METRIQUE_1, ID_METRIQUE_2, CREATION_AUTO, ID, ORDRE, PV_TTC, ID_STOCK, VALEUR_METRIQUE_2, VALEUR_METRIQUE_1, CREATION_DATE, PV_HT, PA_HT, PRIX_METRIQUE_VT_3, ARCHIVE, CODE, PRIX_METRIQUE_VT_2, PRIX_METRIQUE_VT_1, SERVICE, PRIX_METRIQUE_HA_3, NOM, ID_USER_COMMON_CREATE, ID_USER_COMMON_MODIFY, PRIX_METRIQUE_HA_2, MODIFICATION_DATE, PRIX_METRIQUE_HA_1, OBSOLETE, POIDS, ID_MODE_VENTE_ARTICLE, INFOS, QTE_ACHAT, DESCRIPTIF, CODE_BARRE, GESTION_STOCK, CODE_DOUANIER, QTE_MIN, ID_DEVISE, ID_FOURNISSEUR, PV_U_DEVISE, ID_DEVISE_HA, PA_DEVISE, ID_PAYS]
at org.openconcerto.sql.model.SQLTable.getField(SQLTable.java:692)
at org.openconcerto.sql.element.BaseSQLComponent.getField(BaseSQLComponent.java:151)
...
Est-il prévu prochainement une version qui prendra en compte une mise à niveau cumulative, qui puisse mettre à jour tous les champs manquant ?
Cordialement
Bonjour,
Il semble que la création de sociétés ne fonctionne pas dans la version 1.2 beta 5. Le logiciel semble boucler sur l'importation du plan Comptable. En fait l'erreur se produit avant et aucun élément n'est importé.
Le log donne :
Par contre la création avec la version beta 4 fonctionne et il est ensuite possible de revenir à la beta 5
Il semble que la création de sociétés ne fonctionne pas dans la version 1.2 beta 5. Le logiciel semble boucler sur l'importation du plan Comptable. En fait l'erreur se produit avant et aucun élément n'est importé.
Le log donne :
Code : Tout sélectionner
...
/CODE_REGIME/... done
/SAISIE_KM/... done
/CUMULS_CONGES/... done
Done org.openconcerto.sql.changer.correct.FixSerial@b28abf in 1304ms.
13 juil. 2012 13:05:50 org.openconcerto.utils.ExceptionHandler display
INFO: org.openconcerto.utils.ExceptionHandler: Erreur pendant la création de la base!
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:83)
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:87)
at org.openconcerto.erp.panel.ChargementCreationSocietePanel$1.run(ChargementCreationSocietePanel.java:92)
Caused by: java.lang.IllegalStateException: useConnection() wasn't called
at org.openconcerto.sql.model.SQLDataSource.getConnection(SQLDataSource.java:982)
at org.openconcerto.erp.panel.ChargementCreationSocietePanel.importationPlanComptable(ChargementCreationSocietePanel.java:142)
at org.openconcerto.erp.panel.ChargementCreationSocietePanel.access$1(ChargementCreationSocietePanel.java:112)
at org.openconcerto.erp.panel.ChargementCreationSocietePanel$1.run(ChargementCreationSocietePanel.java:81)
J ai une petite question au sujet de n4ds.
Je vois dans votre code que pas mal de champs sont encore en mode fixme ou todo.
Savez vous quand le norme n4ds sera vraiment utilisable ?
Merci par avance
!
Antoine
// FIXME Debut periode
n4ds.write("S40.G01.00.001", "01012011");
// FIXME embauche, etc...
n4ds.write("S40.G01.00.002.001", "097");
// FIXME Fin periode
n4ds.write("S40.G01.00.003", "31122011");
// FIXME licenciement, etc...
n4ds.write("S40.G01.00.004.001", "098");
Je vois dans votre code que pas mal de champs sont encore en mode fixme ou todo.
Savez vous quand le norme n4ds sera vraiment utilisable ?
Merci par avance
!
Antoine
// FIXME Debut periode
n4ds.write("S40.G01.00.001", "01012011");
// FIXME embauche, etc...
n4ds.write("S40.G01.00.002.001", "097");
// FIXME Fin periode
n4ds.write("S40.G01.00.003", "31122011");
// FIXME licenciement, etc...
n4ds.write("S40.G01.00.004.001", "098");
La gestion des licenciements et des embauches arriveront avec le module RH.
Le autres détails seront mis à jour pour la déclaration de début d'année prochaine.
Cordialement,
Le autres détails seront mis à jour pour la déclaration de début d'année prochaine.
Cordialement,
Bonjour;
Je teste aussi la 1.2 beta 5...
- version multiposte sous Windows Vista 64 bits
Logiciel de caisse
Lorsque je tente de valider un ticket (je n'ai pas d'imprimante mais ce n'est pas lié je pense), j'obtiens le cliché suivant :
Le ticket se trouve malgré tout validé et la cloture de caisse est possible.
De plus, que l'on ait ce cliché ou non, à chaque fois que l'on quitte la caisse, le processus correspondant reste actif sous Windows. A chaque fois que l'on relance une caisse, cela ajoute un processus (et impossible de cloturer par exemple)
Il semble que l'erreur
“Can't load IA 32-bit .dll on a AMD 64-bit platform” error (Windows 64bit OS)
soit liée à l'environnement java JDK et son incompatibilité avec les processeur 64 bits.
On en parle sur ce lien :
http://markmail.org/message/buqsksoy2htn7y63
(on trouve d'autres contributions sur ce genre d'erreurs sur le web).
Je ne sais pas si l'utilisateur peut passer outre cette erreur en changeant son environnement java,
Je ne pense pas que cela soit lié au multiposte, j'avais la même erreur en monoposte.
si vous aviez une solution...
Je teste aussi la 1.2 beta 5...
- version multiposte sous Windows Vista 64 bits
Logiciel de caisse
Lorsque je tente de valider un ticket (je n'ai pas d'imprimante mais ce n'est pas lié je pense), j'obtiens le cliché suivant :
Code : Tout sélectionner
Erreur d'impression du ticket
C:\Program Files (x86)\OpenConcerto\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
org.openconcerto.utils.ExceptionHandler: Erreur d'impression du ticket
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:83)
at org.openconcerto.utils.ExceptionHandler.handle(ExceptionHandler.java:87)
at org.openconcerto.erp.core.sales.pos.ui.CaissePanel$1.mousePressed(CaissePanel.java:70)
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$000(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.UnsatisfiedLinkError: C:\Program Files (x86)\OpenConcerto\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)
at org.openconcerto.erp.core.sales.pos.io.ESCSerialPrinter.getSerialPort(ESCSerialPrinter.java:179)
at org.openconcerto.erp.core.sales.pos.io.ESCSerialPrinter.printBuffer(ESCSerialPrinter.java:78)
at org.openconcerto.erp.core.sales.pos.model.Ticket.print(Ticket.java:393)
at org.openconcerto.erp.core.sales.pos.ui.CaisseControler.printTicket(CaisseControler.java:274)
at org.openconcerto.erp.core.sales.pos.ui.CaissePanel$1.mousePressed(CaissePanel.java:67)
... 31 more
De plus, que l'on ait ce cliché ou non, à chaque fois que l'on quitte la caisse, le processus correspondant reste actif sous Windows. A chaque fois que l'on relance une caisse, cela ajoute un processus (et impossible de cloturer par exemple)
Il semble que l'erreur
“Can't load IA 32-bit .dll on a AMD 64-bit platform” error (Windows 64bit OS)
soit liée à l'environnement java JDK et son incompatibilité avec les processeur 64 bits.
On en parle sur ce lien :
http://markmail.org/message/buqsksoy2htn7y63
(on trouve d'autres contributions sur ce genre d'erreurs sur le web).
Je ne sais pas si l'utilisateur peut passer outre cette erreur en changeant son environnement java,
Je ne pense pas que cela soit lié au multiposte, j'avais la même erreur en monoposte.
si vous aviez une solution...