Bonjour,
J'ai modifié l'How-To de Tony GALMICHE, que je remercie, pour créer les
sources de données en dynamique en vue d'un publipostage.
Lorsque je met en forme mon document de fusion (mise en place des champs
utilisés) ou lorsque je lance la fusion par imprimer, valider les champs de
la source de données, puis sélection des enregistrements utilisés pour la
fusion, tout se passe correctement et je peux relancer une modification du
document ou une autre fusion.
Par contre lorsque je passe par l'Assistant mailing, la première fois je
n'ai aucun problème par contre lorsque je désire effectuer une modification
du document ou une nouvelle fusion j'obtiens un message d'erreur lors de la
création de la source de données.

Voici mon code :
sub Creation_Source_De_Donnees()

' Création de la base
  oURL=ThisComponent.URL
  oTabURL=split(oURL,"/")
  oNomFichier=oTabURL(uBound(oTabURL))
  oNomSource=mid(oNomFichier, 1, len(oNomFichier)-4) 
  oNomBase1=mid(oURL, 1, len(oURL)-4)
  oNomBase=oNomBase1 & ".ods"
oDbContext=createUnoService("com.sun.star.sdb.DatabaseContext")
oNewSource = createUnoService("com.sun.star.sdb.DataSource")
' Création du fichier ODB
OdbURL=oNomBase1 & ".odb"
propsODB(0).Name = "Overwrite"
propsODB(0).value = True
oNewSource.databaseDocument.StoreAsURL(OdbURL, propsODB())
oNewSource.databaseDocument.store()
oNewSource.databaseDocument.URL(OdbURL, props())
' Création de la source de données
Reponse = oDbContext.hasByName(oNomSource)
If Reponse then
        MsgBox "La source de données " & oNomSource & " existe déjà, ajout
impossible"
        Else
        oNewSource.URL = "sdbc:calc:" & oNomBase
        oNewSource.databaseDocument.store()
        oDbContext.RegisterObject(oNomSource, oNewSource)
'       CreationDataSource = oNewSource
   msgbox "Source de Données " & oNomSource & " ( Calc ) créée."
End If
End Sub

Et voici le message d'erreur, qui concerne la ligne en gras :
Runtime error BASIC. Une exception s'est produite :
Type : com.sun.star.io.IOException
Message : Could not store the database document to
'file:///D:/Recrutement/Fusion_generique.odb'.
original error message: an error occured during file opening
original error type: com.sun.star.ucb.InteractiveAugmentedIOException


Merci de vos réponse



MABILLE Bruno
SZSIC METZ
[EMAIL PROTECTED]

Répondre à