[Résolu] [Base] ouverture d'un rapport avec un bouton

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

[Résolu] [Base] ouverture d'un rapport avec un bouton

Message par kialginat »

Bonjours à tous,

J'essaie de trouver un moyen pour ouvrir un rapport via un bouton comme on le ferais pour un formulaire, j'ai bien essayé d'utilisé la macro donnée sur le forum concernant le formulaires, mais j'ai ce message d'erreur :

Code : Tout sélectionner

Runtime error BASIC
Une exeption s'est produite :
Type: com.sun.star.lang.IllegalArgumentException
Message:.
Je n'ai aucune formation 'officielle' en SQL ou basic mais je pense qu'il s'agit d'un probleme de code des rapport qui ne serait pas du type 'Form'

Toutes suggestions serait la bienvenue je planche depuis plusieurs semaines dessus

Merci d'avance

P.S : Ma signature est incorrect je viens de passer a Ooo 2.1
Dernière modification par kialginat le 29 janv. 2007 03:51, modifié 1 fois.
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"
Avatar de l’utilisateur
cris59
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 482
Inscription : 20 mars 2006 15:15
Localisation : Paris

Message par cris59 »

Je ne sais de quelle macro tu parles ...
mais, pour indication, les rapports sont des ReportDocuments et non des FormDocuments.


cris59
WinXP PRO SP2 avec OOo2.2 & Vista avec OOo2.3.1
& Debian avec OOo2.2

http://www.cpserv.net/
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

Message par kialginat »

Bonjour,

Et merci pour la reponse, c'est une macro que j'ai trouvé sur le forum pour ouvrir un formulaire avec un boutton de commande.
J'essaie dès lundi en remplaçant les FormDocuments par ReportDocuments
Et j'indiquerais ensuite les différentes étapes que j'aurais suivi (en novice que je suis).

merci encore

a+
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

Message par kialginat »

Rebonjour,

J'ai retrouvé la macro,
en fait c'est une macro que j'ai copié à cette adresse

http://user.services.openoffice.org/fr/ ... 041744.odb

fournie par "Dude" dans le fil des meilleurs macro

et adapté a ma base

a+
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

Message par kialginat »

Bonjour,

C'est bon ça fonctionne avec ReportDocuments

alors voici ma macro

Code : Tout sélectionner

Function OpenForm( formContainer as variant, oConnection as variant, sFormName as string, optional strMode as string ) as variant 
Dim aProp(1) As New com.sun.star.beans.PropertyValue 
dim openMode as string 
   if ismissing( strMode ) then 
      openMode = "open" 
   else 
      openMode = strMode 
      endif 
    aProp(0).Name = "ActiveConnection" 
    aProp(0).Value = oConnection 
    aProp(1).Name = "OpenMode" 
    aProp(1).Value = strMode 
    OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp()) 
End Function 
REM  *****  BASIC  *****

' ouverture des formulaires et rapports
' se fait par appel d'une fonction
Sub onClickOuvrirF_SAISIE( oEvent as variant )
   OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "F_SAISIE") 
End Sub 

Sub onClickOuvrirLISTE_DETENTEUR_USAGERS( oEvent as variant )
   OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.ReportDocuments, OEvent.Source.Model.Parent.ActiveConnection, "LISTE_DETENTEURS") 
End Sub
merci encore
Dernière modification par kialginat le 29 janv. 2007 14:03, modifié 1 fois.
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

[Résolu] ouvrir un rapport avec un bouton

Message par kialginat »

J'oubliais,

bien sure assigner la macro à un bouton de commande
Par contre comment je mets [résolu]

a+
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"
Avatar de l’utilisateur
jjcordelette
NéOOphyte
NéOOphyte
Messages : 87
Inscription : 14 nov. 2009 10:52
Localisation : AUBE

Re: [Résolu] [Base] ouverture d'un rapport avec un bouton

Message par jjcordelette »

Bonjour,
Merci pour cette macro, j'ai eu un peu de mal à faire fonctionner le bouton, mais ça marche.
Un grand merci à tous.
:bravo:
Jean Jacques
Salutations
Jean Jacques

OpenOffice 4.1.5
windows10
kialginat
Membre lOOyal
Membre lOOyal
Messages : 27
Inscription : 21 nov. 2006 16:35

Re: [Résolu] [Base] ouverture d'un rapport avec un bouton

Message par kialginat »

wow

Bonjour Jean Jacques

Tu sais c'est un post de 2007, depuis il y a eu pas mal d'évolutions et cette macro n'est plus tout a fait valable, maintenant il y a beaucoup plus simple, vas dans supreme de code et adapte le code ouverture de formulaire ( en gros remplaces 'form' par 'report' )

cordialement
windows XP SP3, OOo 3.1
ubuntu 10.4 OOo 3.2
"faire ce qui doit être fait sans ce soucier de ce qui sera dit"