Page 1 sur 1

[Base] Aide à la migration depuis MS-Access

Publié : 30 mars 2012 16:06
par JPL
L'extension Access2Base implémente une librairie Basic à destination d'applications OOo/LibO Base.
L'API (Application Programmatic Interface) est entièrement inspirée par le modèle d'objets utilisable dans VBA pour MSAccess.

Il s'agit dès lors d'aider les utilisateurs à migrer leurs applications Access vers Base.
L'interface de programmation est bien plus aisée à acquérir que l'API UNO standard et est documentée en détail.

Les macros implémentées comprennent:
  • des manipulations, similaires à celles utilisées dans MSAccess, sur les formulaires et leurs contrôles
  • des actions utilisant une syntaxe identique aux actions/macros de MSAccess
  • les fonctions d'accès aux données DLookup, DSum, etc.
  • le support de la notation raccourcie similaire à Forms!myForm!myControl
  • un traitement d'erreurs et d'exceptions standardisé
  • un traitement simplifié des événements sur les formulaires et les contrôles
Pour en savoir (beaucoup !) plus.
Instructions d'installation

A titre d'illustration, voici une brève comparaison entre Access2Base et VBA pour MSAccess:

OpenOffice/LibreOffice Base avec Access2Base

Code : Tout sélectionner

REM Ouvrir un formulaire ...
      OpenForm("myForm")
REM Déplacer un formulaire vers d'autres coordonnées ...
      Dim ofForm As Object
     Set ofForm = Forms("myForm")
      Move(ofForm, 100, 200)
REM Obtenir la valeur courante d'un contrôle ...
      Dim ocControl As Object
      ocControl = Controls(ofForm, "myControl")
      MsgBox ocControl.Value
REM Rendre un contrôle invisible ...
      setVisible(ocControl, False)
REM ... ou en variante ...
      setValue("Forms!myForm!myControl.Visible", False)               '    Shortcut notation
VBA pour MSAccess

Code : Tout sélectionner

REM Ouvrir un formulaire ...
      DoCmd.OpenForm("myForm")
REM Déplacer un formulaire vers d'autres coordonnées ...
      Dim ofForm As Form
      Set ofForm = Forms(myForm")
      ofForm.Move(100, 200)
REM Obtenir la valeur courante d'un contrôle ...
      Dim ocControl As Control
      ocControl = ofForm.Controls("myControl")
      MsgBox ocControl.Value
REM Rendre un contrôle invisible ...
      ocControl.Visible = False
REM ... ou en variante ...
      Forms!myForm!myControl.Visible = False
Le modérateur a écrit :Pour toute question, merci de poster dans la section Base du forum