Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > Delphi > EDI
EDI Configuration/utilisation de l'EDI
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 16/09/2012, 21h10   #1
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Par défaut Peut-on se faire rembourser l'achat de sa licence Delphi ?

Ola,

Question sans doute un peu limite dans mon titre, mais voici le problème :

Je travaille depuis plusieurs mois sur une application. Généralement, à moins d'être un super gourou, on teste des solutions, on s’aperçoit qu'elles sont un peu lourdes, on change, on essaye d'autres solutions etc..
Je me trouve actuellement dans la situation où Delphi présente un bug rédhibitoire qui m'empêche de poursuivre mon projet. Je suis d'autant plus embêté que j'ai perçu des acomptes sur un produit fini que je ne pourrai pas fournir à cause de ce bug.
Puis-je me faire rembourser ma licence, étant donné que le produit ne répond pas aux fonctionnalités annoncées ?
En fait, mon problème est le suivant : les champs Blob ne sont pas gérés dans un environnement Datasnap sous Delphi XE. Je me trouve exactement dans la situation suivante : http://qc.embarcadero.com/wc/qcmain.aspx?d=77295

Le statut du rapport a été fermé sans apporter solution. Mon application n'est pas viable si elle ne peut accéder à des champs Blob distants.



JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2012, 22h11   #2
Andnotor
Rédacteur/Modérateur
 
Avatar de Andnotor
 
Inscription : septembre 2008
Messages : 2 856
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 2 856
Points : 5 966
Points : 5 966
Citation:
Envoyé par Jean-Jacques Engels Voir le message
Le statut du rapport a été fermé sans apporter solution.
Le lien dit que le problème est apparu sous D2010 et a été corrigé sous XE.
Andnotor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2012, 22h29   #3
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Effectivement, on peut lire : Resolved in Build: : 15.0.3567.25204

Le problème c'est que le bug semble être réapparu dans le build que j'utilise : 15.0.3953.35171

C'est quand même une histoire du fou çà :

- Bug non présent dans Delphi 2009
- Bug apparu dans Delphi 2010
- Corrigé dans Delphi XE build 15.0.3567.25204
- Bug réapparu dans Delphi XE build 15.0.3953.35171



JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 05h57   #4
Paul TOTH
Expert Confirmé Sénior
 
Avatar de Paul TOTH
 
Homme Paul TOTH
Freelance
Inscription : novembre 2002
Messages : 4 409
Détails du profil
Informations personnelles :
Nom : Homme Paul TOTH
Âge : 43
Localisation : Réunion

Informations professionnelles :
Activité : Freelance
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2002
Messages : 4 409
Points : 10 782
Points : 10 782
Citation:
Envoyé par Jean-Jacques Engels Voir le message
En fait, mon problème est le suivant : les champs Blob ne sont pas gérés dans un environnement Datasnap sous Delphi XE.
Delphi XE ? mais de quand date ton achat ?
__________________
Developpez.com: Mes articles, forum FlashPascal
Entreprise: Execute SARL
Produits : UPnP, RemoteOffice, FlashPascal
Embarcadero : Ile de la Réunion, Dephi, C++Builder, RADPHP...TVA à 8,5%
Paul TOTH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 09h29   #5
skywaukers
Membre Expert
 
Avatar de skywaukers
 
Homme Dany Leblanc
Directeur de projet
Inscription : juin 2005
Messages : 989
Détails du profil
Informations personnelles :
Nom : Homme Dany Leblanc
Localisation : France, Charente (Poitou Charente)

Informations professionnelles :
Activité : Directeur de projet
Secteur : Industrie

Informations forums :
Inscription : juin 2005
Messages : 989
Points : 1 379
Points : 1 379
Envoyer un message via ICQ à skywaukers Envoyer un message via MSN à skywaukers Envoyer un message via Yahoo à skywaukers Envoyer un message via Skype™ à skywaukers
Bonjour,

tu peux peut-être contacter Embarcadero pour ce problème, ils pourront surement te donner un build avec le bug corrigé.
Autre solution : migrer vers la dernière version.

@++
Dany
skywaukers est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 10h25   #6
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Citation:
Envoyé par Paul TOTH Voir le message
Delphi XE ? mais de quand date ton achat ?
Hi Paul,

L'achat date du mois de juin 2011.

Cela peut paraître bizarre de ne me rendre compte du problème que maintenant. Il se fait que dans la première version de mon application, le serveur exposait des datasets. Je trouvais cette manière de travailler un peu lourde, et dans une version récente, j'ai modifié le serveur pour qu'il expose la connexion à la base de données et non plus des datasets. C'est depuis l'adoption de cette dernière solution que les problèmes d'accès aux champs Blob sont apparus.

Petit question, savez-vous si le bug se trouve dans le fichier dbxmys.dll ? Dans l'affirmative, le remplacement de cette dll par une version deboguée suffirait-elle à résoudre mon problème, ou est-ce plus compliqué que cela ?

Je remarque également que Devart fournit un driver dbexpress qui semble corriger ce problème. Mais celui-ci est payant. Ça va finir par revenir un peu cher de travailler avec Delphi !



JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 14h03   #7
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Citation:
Envoyé par skywaukers Voir le message
Autre solution : migrer vers la dernière version.
J'imagine que tu plaisantes ! A moins bien sur qu'il me la fournisse gratuitement à titre de geste commercial. Et même dans ce cas, ce sera loin de me dédommager pour tout le temps perdu !

Bon, je me suis interrogé sur la manière dont je pouvais contourner le problème.
Voici mes essais :

1) Créer une méthode sur le serveur qui me retourne un TStream incluant l'image dont j'ai besoin. Je fais donc un SELECT du champ Blob tant désiré, je le place dans un TStream que je retourne au client. Tout fonctionne bien côté serveur, Stream.Size correspond bien au nombre d'octets de mon champ Blob. Par contre, quand je vérifie du côté client ce que j'ai reçu, Stream.Size me retourne la valeur -1 .

2) Je modifie la méthode ci-dessus afin qu'elle ne me retourne non pas un TStream mais bien un TBitmap. Message d'erreur : "Le type tkPointer n'est pas actuellement supporté." .

Vraiment je suis découragé. Payer une licence de ce prix pour avoir un système multi-tiers qui se limite à faire "Hello world!"...



JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 14h17   #8
skywaukers
Membre Expert
 
Avatar de skywaukers
 
Homme Dany Leblanc
Directeur de projet
Inscription : juin 2005
Messages : 989
Détails du profil
Informations personnelles :
Nom : Homme Dany Leblanc
Localisation : France, Charente (Poitou Charente)

Informations professionnelles :
Activité : Directeur de projet
Secteur : Industrie

Informations forums :
Inscription : juin 2005
Messages : 989
Points : 1 379
Points : 1 379
Envoyer un message via ICQ à skywaukers Envoyer un message via MSN à skywaukers Envoyer un message via Yahoo à skywaukers Envoyer un message via Skype™ à skywaukers
Citation:
Envoyé par Jean-Jacques Engels Voir le message
Cela peut paraître bizarre de ne me rendre compte du problème que maintenant. Il se fait que dans la première version de mon application, le serveur exposait des datasets. Je trouvais cette manière de travailler un peu lourde, et dans une version récente, j'ai modifié le serveur pour qu'il expose la connexion à la base de données et non plus des datasets. C'est depuis l'adoption de cette dernière solution que les problèmes d'accès aux champs Blob sont apparus.
Je ne comprends pas, tu dis que sur ton serveur tu n'exposes que la connexion et que donc tout le reste est côté client ? J'avoue n'avoir jamais essayé cela !! Et personnellement je n’appellerais pas cela du multi-tiers. Mais je n'ai probablement pas bien compris.

Citation:
Envoyé par Jean-Jacques Engels Voir le message
J'imagine que tu plaisantes ! A moins bien sur qu'il me la fournisse gratuitement à titre de geste commercial. Et même dans ce cas, ce sera loin de me dédommager pour tout le temps perdu !
Non, je ne vois pas en quoi c'est une plaisanterie : la dernière version doit logiquement corriger les bugs des anciennes versions. Maintenant je comprends que cela ait un coût. D'où ma première suggestion de contacter Embarcadero.

Maintenant, il semblerait que tu aies une méthode qui fonctionnait (Datasets), pourquoi ne pas passer par un dataset pour cette partie si ça peut te débloquer la situation ?

@++
Dany
skywaukers est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 14h21   #9
Paul TOTH
Expert Confirmé Sénior
 
Avatar de Paul TOTH
 
Homme Paul TOTH
Freelance
Inscription : novembre 2002
Messages : 4 409
Détails du profil
Informations personnelles :
Nom : Homme Paul TOTH
Âge : 43
Localisation : Réunion

Informations professionnelles :
Activité : Freelance
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2002
Messages : 4 409
Points : 10 782
Points : 10 782
Citation:
Envoyé par Jean-Jacques Engels Voir le message
Hi Paul,

L'achat date du mois de juin 2011.
ça fait donc plus d'un an que tu utilises un produit et tu tombes sur un bug, et tu considères que tu dois être remboursé ? j'espère que si tu vends le produit que tu développes tu n'appliques pas la même politique à tes clients, sinon c'est la ruine

Citation:
Envoyé par Jean-Jacques Engels Voir le message
Cela peut paraître bizarre de ne me rendre compte du problème que maintenant. Il se fait que dans la première version de mon application, le serveur exposait des datasets. Je trouvais cette manière de travailler un peu lourde, et dans une version récente, j'ai modifié le serveur pour qu'il expose la connexion à la base de données et non plus des datasets. C'est depuis l'adoption de cette dernière solution que les problèmes d'accès aux champs Blob sont apparus.

Petit question, savez-vous si le bug se trouve dans le fichier dbxmys.dll ? Dans l'affirmative, le remplacement de cette dll par une version deboguée suffirait-elle à résoudre mon problème, ou est-ce plus compliqué que cela ?
je ne sais rien sur ce bug, mais tu peux le remonter sur QualityCentral ou contacter le support...ça parait plus logique que de demander le remboursement du produit.

Citation:
Envoyé par Jean-Jacques Engels Voir le message
Je remarque également que Devart fournit un driver dbexpress qui semble corriger ce problème. Mais celui-ci est payant. Ça va finir par revenir un peu cher de travailler avec Delphi !



JJE
tu as pourtant une autre solution dont tu sais qu'elle fonctionne - la première version de ton appli
__________________
Developpez.com: Mes articles, forum FlashPascal
Entreprise: Execute SARL
Produits : UPnP, RemoteOffice, FlashPascal
Embarcadero : Ile de la Réunion, Dephi, C++Builder, RADPHP...TVA à 8,5%
Paul TOTH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 14h51   #10
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Citation:
Envoyé par skywaukers Voir le message
Je ne comprends pas, tu dis que sur ton serveur tu n'expose que la connexion et que donc tout le reste est côté client ? J'avoue n'avoir jamais essayé cela !! Et personellement je n'appelerai pas cela du multi-tiers. Mais je n'ai probablement pas bien compris.
Effectivement, c'est loin d'être la meilleure manière d'utiliser Datasnap, mais c'en est une et qui est censée fonctionner. C'est comme telle que la licence est vendue.

Citation:
Envoyé par skywaukers Voir le message
non je ne vois pas en quoi c'est une plaisanterie, la dernière version doit logiquement corriger les bugs des anciènnes versions. Maintenant je comprends que cela a un coût. D'où ma première suggestion de contacter Embarcadero.
La plaisanterie portait sur l'obligation d'acheter des licences ou des upgrade successifs pour palier à des bugs. Trouves-tu normal que l'acheteur doivent s'engager dans une spirale de coûteux upgrades pour des erreurs de développements ?

Citation:
Envoyé par skywaukers Voir le message
Maintenant, il semblerait que tu ais une méthode qui fonctionnait (Datasets), pourquoi ne pas passer par un dataset pour cette partie si ça peut te débloquer la situation ?
Je peux effectivement encore essayer cette solution.

Comment appellent-t-ils leur produit déjà ? RAD, c'est ça ?

JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 15h03   #11
Jean-Jacques Engels
Membre du Club
 
Inscription : avril 2002
Messages : 179
Détails du profil
Informations forums :
Inscription : avril 2002
Messages : 179
Points : 53
Points : 53
Citation:
Envoyé par Paul TOTH Voir le message
ça fait donc plus d'un an que tu utilises un produit et tu tombes sur un bug, et tu considères que tu dois être remboursé ? j'espère que si tu vends le produit que tu développes tu n'appliques pas la même politique à tes clients, sinon c'est la ruine
Je ne rembourse pas mon client, mais je ne l'oblige pas à payer un upgrade pour des erreurs dont je suis à l'origine.

Citation:
Envoyé par Paul TOTH Voir le message
je ne sais rien sur ce bug, mais tu peux le remonter sur QualityCentral ou contacter le support...
Je vais m'orienter dans cette voie en effet.

Citation:
Envoyé par Paul TOTH Voir le message
tu as pourtant une autre solution dont tu sais qu'elle fonctionne - la première version de ton appli
Oui, mais j'ai expliqué que cette solution est vraiment très (trop) lourde.

JJE
Jean-Jacques Engels est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2012, 16h16   #12
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239
Pour l'échange DataSnap, mon collègue qui s'est chargé de la migration DCOM vers DataSnap a utilisé les TJSONObject pour l'échange de paramètre, certains sont des binaires parsés ultérieurement !

Pour moi DataSnap ne doit pas exposer une connexion, il doit encapsuler l'accès à la DB (mais à d'autres services de l'application) avec des méthodes métiers spécifiques
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 17/09/2012, 17h27   #13
skywaukers
Membre Expert
 
Avatar de skywaukers
 
Homme Dany Leblanc
Directeur de projet
Inscription : juin 2005
Messages : 989
Détails du profil
Informations personnelles :
Nom : Homme Dany Leblanc
Localisation : France, Charente (Poitou Charente)

Informations professionnelles :
Activité : Directeur de projet
Secteur : Industrie

Informations forums :
Inscription : juin 2005
Messages : 989
Points : 1 379
Points : 1 379
Envoyer un message via ICQ à skywaukers Envoyer un message via MSN à skywaukers Envoyer un message via Yahoo à skywaukers Envoyer un message via Skype™ à skywaukers
Citation:
Envoyé par Jean-Jacques Engels Voir le message
Effectivement, c'est loin d'être la meilleure manière d'utiliser Datasnap, mais c'en est une et qui est censée fonctionner. C'est comme telle que la licence est vendue.
Pour moi c'est plus un détournnement d'utilisation. C'est un peu comme si je prenais ma citadine pour aller rouler dans un champ labouré, il y a de fortes chances pour que je n'y arrive pas, pourtant il est stipulé que je peux l'utiliser pour aller d'un point A à un point B.

Citation:
Envoyé par Jean-Jacques Engels Voir le message
La plaisanterie portait sur l'obligation d'acheter des licences ou des upgrade successifs pour palier à des bugs. Trouves-tu normal que l'acheteur doivent s'engager dans une spirale de coûteux upgrades pour des erreurs de développements ?
Non bien sur. Mais je suis sûr que si tu remonte le bug à Embarcadero ils vont réagir. C'est ce que doit faire ton client lorsqu'il rencontre un bug dans une de tes applications en espérant que tu sois réactif, j'espère pour toi qu'ils ne crient pas au remboursement avant cela !

Citation:
Envoyé par Jean-Jacques Engels Voir le message
Comment appellent-t-ils leur produit déjà ? RAD, c'est ça ?
RAD ne veut pas dire "Rien A Développer"

Citation:
Envoyé par ShaiLeTroll Voir le message
Pour moi DataSnap ne doit pas exposer une connexion, il doit encapsuler l'accès à la DB (mais à d'autres services de l'application) avec des méthodes métiers spécifiques
Complètement d'accord, c'est comme cela qu'on tire le meilleurs parti d'un serveur d'applications de toute façon, ne serait-ce que parce que cela oblige à une bonne structuration de la programmation. Et si cela peut sembler moins RAD, on finit par s'y retrouver un jour ou l'autre.

@++
Dany
skywaukers est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 18h39.


 
 
 
 
Partenaires

Hébergement Web