Bonsoir,
Pour des choses sérieuses, je prendrais Lazarus et Postgresql. C'est de l'artillerie lourde, mais
c'est aussi très agréable à utiliser. Côté Windows et Linux je n'ai pas eu de soucis (je n'ai fait
que des tests, rien de bien sérieux mais ça semble vraiment encourageant), par contre sur Mac on a
pas mal de soucis d'installation, puis de librairies pour attaquer Postgres. Il semble que ça se
résolve avec le temps, mais c'était assez gênant.
Ne croyez pas ceux qui vous parlent de BASIC objets chez M$ : Pour eux, un objet est une forme
qu'on place sur l'écran, un bouton, un champ ! Rien à voir avec C++ ou Smalltalk. Ca m'a fait rager
depuis la sortie de ce BASIC, car j'ai dû me battre avec des innocents qui voulaient l'utiliser
pour écrire de grosses applications, par opposition à Delphi à l'époque dans ses toutes premières
versions. J'ai partiellement gagné, l'application qui a finalement été développée avec MS-BASIC est
à la poubelle depuis longtemps, celles qui l'ont été avec Delphi tournent toujours et continuent à
évoluer. Na !
En passant, Delphi reste une plateforme très crédible, même si c'est devenu un monstre avec le
temps. Si vous avez vraiment de gros besoins et que vous pouvez financer la licence, c'est un bon
choix aussi.
Bonne soirée,
Thierry
Le 7 nov. 2018 à 14:59, Patrick Gelin <patrick.gelin@free.fr> a écrit :
Bonjour,
Il n'est pas besoin d'écrire beaucoup de code pour perdre beaucoup de temps à déboguer avec ce
basic... Je crois qu'on est loin de ceinture et bretelle, juste ceinture ou bretelle ce serait
déjà bien ...
Je pense qu'avec Microsoft Access et le langage Visual Basic, qui si je l'ai bien compris serait
object, l'environnement me semble plus intéressant. Mais loin de moi l'idée de solliciter MS$.
Aussi le projet de librairie Access2Base présente l'objectif de fournir environ 200 commandes
pour programmer une base, en ce basant sur Access, à la place de l'usine a gaz Uno, serait un bon
moyen de simplifier la programmation d'une base sans limiter les besoins des utilisateurs. On
peut aussi voir les choses autrement et se dire que si l'on produit trop de code c'est que le
framework de base n'est pas bon. Voir à ce sujet Paul Dilazia qui dans son livre Windows++
critiquait les interfaces de MS$...
Je n'ai pas la prétention de produire une application d'entreprise avec LibreOffice, mais
l'intérêt d'avoir ma base qu coeur de la suite bureautique est de faciliter l'intégration à la
production des documents.
Selon moi il y a quelques fonctionnalités attendues pour simplifier la programmation d'une base,
je dirais des fonctions pour gérer des Smarts forms et remplacer ce langage basic par Java ou
Python mais avec une documentation complète que je n'ai pas encore trouver...A noter que je ne
trouve d'avantage de livre spécifique à la programmation de Uno ...
Sinon, quelle alternative à Base pour développer rapidement les interfaces d'une base de donnée
compatible sur Windows et Linux, pouvant s'exécuter sur une simple clé USB: Lazarus ? Un autre
RAD Open source ?
Patrick
Le 07/11/2018 à 14:13, Thierry Jeanneret a écrit :
Bonjour,
Mon sentiment au sujet du développement de Macros sur LibreOffice est qu'on peut faire beaucoup
de choses, mais qu'il faut être extrêmement prudent. Il n'y a à ma connaissance que très peu
d'outils fournissant ceinture ou bretelle, le seul remède est d'être très attentif. Je pense
aussi qu'il est prudent de ne pas viser trop haut, de ne pas vouloir forcément informatiser
Total juste avec LibreOffice, comme image. Mon appréciation personnelle est qu'il s'agit d'une
suite bureautique, qu'on peut l'adapter au domaine traité, mais qu'il est sage de rester
raisonnable dans ses ambitions.
Toutefois Jean-François peut avoir une autre opinion, plus étayée, que moi sur ce sujet. De
toutes manières il est bon de se référer aux docs qu'il a produites, ses fiches sont vraiment
des gagnes-temps remarquables.
Thierry
Le 7 nov. 2018 à 14:05, Patrick Gelin <patrick.gelin@free.fr> a écrit :
Bonjour,
Je viens de trouver la raison de ce bug :
Une seule macro évènement :
Sub CmdSelectionner(Event As Object)
On Local Error Goto Erreur
Set oCmdSelectAutorities = FabriquerTApplication.CmdSelectAutorities
oCmdSelectAutorities.CmdSelectionner()
Exit_Sub:
Exit Sub
Erreur:
TraceError("ERROR", Err, Name, Erl)
Stop
End Sub
qui avait le même nom qu'une variable global CmdSelectionner = 5000 déclarée dans un autre
module. L'appel à la méthode oCmdSelectAutorities.CmdSelectionner() ne semble pas poser de
problème, c'est du code pseudo object ...
A la compilation cela passe sans aucune erreur signalée (interprétation basic oblige diront
certains sauf que dans mes modules je déclare quand même Option explicit ...
Je sais maintenant que chaque entorse au domaine des noms est dramatiquement fatidique pour
LibreOffice Basic. Mais je ne m'attendais pas à un plantage aussi violent entraînant le crash
du debugger (plus aucun point break positionnable) et le crash entier de l'application
libreoffice avec l'ensemble des autres documents ouverts ... C'est un cloisonnement des process
digne du Titanic ...
Et aussi je ne m'attendais pas à un syndrôme d'appel récursif provoqué par une variabe et une
procédure ...
De plus cette macro n'était même pas appelée par mon application avant le crash, elle répondait
à un bouton dans une boite de dialogue non ouverte. Mais je comprends que Basic précharge un
maximum de code et je ne comprends pas bien ce qu'il fait avec ce code avant son execution ...
Existe-t-il une extension module qui aide au développement, avec par exemple un précompilateur
pour vérifier la redondance des variables et valider un maximum de règles spécifiques au
langage Basic OOo ?
Merci déjà pour votre réponse...
Patrick
Le 05/11/2018 à 21:00, Thierry Jeanneret a écrit :
Bonsoir,
Peut-être que si nous avions le code source de cette macro ?
Thierry
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Context
Re: [fr-users] Base : Mémoire de pile insuffisante sur appel MsgBox "Hello World" ... · Jean-Francois Nifenecker
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.