RE: [prog] impossible de faire un update dans base via macro

2006-04-06 Par sujet DAVID Jean-Claude - CETE Ouest/DU/AEH
Bonjour,
A) Vous utilisez une Boite de dialogue ou un formulaire ?
B) En ce qui me concerne, j'avais fait une application de saisie avec
formulaire en Ooo V1.1 et je faisais simplement un UpdateRow sur ma
référence au formulaire de saisie oForm, ce qui provoquait la mise à jour de
la BdD :

oForm = ThisComponent.DrawPage.Forms.GetByName(Saisie_totale)
oForm.UpdateRow

C) Sinon, il y a toujours la possibilité d'envoyer une requête UPDATE
directement à la BdD

Jean-Claude DAVID

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: [prog] impossible de faire un update dans base via macro

2006-04-06 Par sujet DAVID Jean-Claude - CETE Ouest/DU/AEH
Une Base de Données ne verrouille pas un enregistrement si on ne lui demande
pas explicitement.

Si c'est une boite de dialogue remplie par une requête SELECT, cette requête
ne peut pas mettre à jour la BdD.

Pour ma part, pour chaque ligne, je ferais quelque chose du type (je n'ai
pas vérifié la syntaxe) :

strSQL = UPDATE signataires SET   resuQuery.columns(0).Name   =  
tabSignataires(monrow, 0)  ,   resuQuery.columns(1).Name   =  
tabSignataires(monrow, 1)  ...    WHERE ID_signataires =  
ID_signataires
'Création de la requête
oStatement = oCon.CreateStatement()
'Exécution de la requête
Retour = oStatement.executeUpdate(strSQL)

Envoye ton fichier en M.P. si tu souhaites que j'y jette un coup d'oeil.

Jean-Claude DAVID

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: [prog] impossible de faire un update dans base via macro

2006-04-06 Par sujet BOTTIN Laurence - DGMT/SG/AG2
Merci
je vais faire le test, que veux tu dire par M.P. ?

Laurence.bottin

-Message d'origine-
De : DAVID Jean-Claude - CETE Ouest/DU/AEH
[mailto:[EMAIL PROTECTED]
Envoyé : jeudi 6 avril 2006 15:07
À : prog@fr.openoffice.org
Objet : RE: [prog] impossible de faire un update dans base via macro 


Une Base de Données ne verrouille pas un enregistrement si on ne lui demande
pas explicitement.

Si c'est une boite de dialogue remplie par une requête SELECT, cette requête
ne peut pas mettre à jour la BdD.

Pour ma part, pour chaque ligne, je ferais quelque chose du type (je n'ai
pas vérifié la syntaxe) :

strSQL = UPDATE signataires SET   resuQuery.columns(0).Name   =  
tabSignataires(monrow, 0)  ,   resuQuery.columns(1).Name   =  
tabSignataires(monrow, 1)  ...    WHERE ID_signataires =  
ID_signataires
'Création de la requête
oStatement = oCon.CreateStatement()
'Exécution de la requête
Retour = oStatement.executeUpdate(strSQL)

Envoye ton fichier en M.P. si tu souhaites que j'y jette un coup d'oeil.

Jean-Claude DAVID

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: [prog] impossible de faire un update dans base via macro - s uite

2006-04-06 Par sujet DAVID Jean-Claude - CETE Ouest/DU/AEH
Dans la documentation de l'interface XStatement (que retourne
ExecuteQuery) il est précisé : is used for executing a static SQL
statement, on serait donc sur un ResultSet statique et pas dynamique. 

A mon avis, il faut donc passer par des Update pour effectuer des mises à
jour.

Ou alors il faut utiliser un XResultSetUpdate qui lui provides the
possiblity to write changes made on a result set back to database. par un
UpdateRow

Jean-Claude

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]