Quoi, tu ne connais pas PB ? Va falloir parcourir tout le forum alors !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 22-04-2009 06:32:18

BRWA  
Membre Power Geek
Lieu: Beuzet (Belgique)
Date d'inscription: 18-12-2008
Messages: 151
Pépites: 24,612
Banque: 0

[RESOLU] Update d'une DataWindow dont la source est un webservice

En PowerBuilder 11.2 Build 8616, je dispose d'un webservice déployé qui possède deux fonctions :

uof_insert (integer code_metier,integer code_groupe,string nom_metier)

Code: pb

INSERT INTO metier 
    VALUES(:code_metier,
    :code_groupe,
    :nom_metier);
IF SQLCA.SQLCode = -1 THEN
  ROLLBACK USING SQLCA;
ELSE
  COMMIT USING SQLCA;
END IF


uof_delete (integer code_metier,integer code_groupe,string nom_metier)

Code: pb

INTEGER li_ret
DELETE FROM metier WHERE code_met=:code_metier AND
              code_group=:code_groupe AND
              nom_met=:nom_metier;
IF SQLCA.SQLCode = -1 THEN
  ROLLBACK USING SQLCA;
ELSE
  COMMIT USING SQLCA;
END IF


(je ne me suis pas encore inquiété des modifications de ligne)

Dans ma datawindow, les webservices update sont désigné pour référer à ces fonctions :

http://img6.imageshack.us/img6/5069/webservicesupdateinsert.th.jpg

http://img6.imageshack.us/img6/896/webservicesupdatedelete.th.jpg

L'insert fonctionne bien et est commité, même pour du multi-insert.

Par contre, le delete n'est pas commité.

Quelqu'un aurait-il déjà rencontré ce genre de problème, et si oui comment l'a-t-il réglé ?


NB:

Dernière modification par BRWA (22-04-2009 08:33:03)


Wagener Bruno

Hors ligne

 

#2 22-04-2009 07:12:39

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

Bonjour,

Tu peux peut-être rajouter une trace dans le journal du serveur pour connaître le statut du SQLCODE, SQLErrText après l'exécution du "delete".

Hors ligne

 

#3 22-04-2009 07:16:17

BRWA  
Membre Power Geek
Lieu: Beuzet (Belgique)
Date d'inscription: 18-12-2008
Messages: 151
Pépites: 24,612
Banque: 0

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

J'ai essayé avec :

Code: pb

integer li_FileNum

li_FileNum = FileOpen("F:\Bruno_Wagener\Web_Services\delete.txt", &
   LineMode!, Write!, LockWrite!, Append!)
   FileWrite(li_FileNum, "open")

DELETE FROM metier WHERE code_met=:code_metier /*AND
              code_group=:code_groupe AND
              nom_met=:nom_metier*/;
IF SQLCA.SQLCode = -1 THEN
  ROLLBACK USING SQLCA;
ELSE
  COMMIT USING SQLCA;
END IF

FileWrite(li_FileNum, STRING(li_ret))


le fichier delete.txt a bien été créé sur le serveur, mais vide ...

Dernière modification par BRWA (22-04-2009 07:17:35)


Wagener Bruno

Hors ligne

 

#4 22-04-2009 07:48:13

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

Bonjour,

Il manque le FileClose(li_filenum) pour fermer correctement le fichier après écriture. Mais en fait, j'ai supposé que tu utilisais EAServer et que tu pouvais écrire une trace de la façon suivante :

Code: pb

// Créer un object pour écrire dans le journal des logs jaguar
ErrorLogging    iel_jag
this.GetContextService( "ErrorLogging", iel_jag)
iel_jag.log( "mon message dans le jaguar.log")

Hors ligne

 

#5 22-04-2009 07:49:33

BRWA  
Membre Power Geek
Lieu: Beuzet (Belgique)
Date d'inscription: 18-12-2008
Messages: 151
Pépites: 24,612
Banque: 0

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

Je vais essayer avec le close.

Je n'utilise pas EAServer.


Wagener Bruno

Hors ligne

 

#6 22-04-2009 08:01:28

BRWA  
Membre Power Geek
Lieu: Beuzet (Belgique)
Date d'inscription: 18-12-2008
Messages: 151
Pépites: 24,612
Banque: 0

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

Merci, ça m'aide pour débugger ... J'avais un restrict on delete dans ma BD


Wagener Bruno

Hors ligne

 

#7 22-04-2009 08:32:47

BRWA  
Membre Power Geek
Lieu: Beuzet (Belgique)
Date d'inscription: 18-12-2008
Messages: 151
Pépites: 24,612
Banque: 0

Re: [RESOLU] Update d'une DataWindow dont la source est un webservice

J'ai vu mon erreur et ça passe ... Ce n'était pas un problème au niveau du webservice mais au niveau des droits de mes tables dans la BD.

Merci beaucoup !


Wagener Bruno

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22