Catégorie : notes côté professionnel

Delphi : TClientDataSet, TDataSetProvider et TTable

Je développe en Delphi depuis plusieurs années et je me suis remis à la base de données il y a peu.

Donc je fais un petit mémo expliquant ce que j’ai compris, en espérant que cela fera gagner du temps à ceux qui n’y arrivent pas, et en sautant les étapes de l’aide Delphi, qui, quoique très précise et détaillée, aurait tendance dans un premier temps à plus nous embrouiller qu’autre chose.

Dans une application « orientée base de données », il faut tout d’abord afficher les données. Il y a les composants de données, qui commencent tous par TDB (TDBGrid, TDBEdit, TDBMemo etc.). On prend le composant, on le dépose sur la fiche. On a une « DBGrid1 » qui s’affiche.

Ensuite, il faut aller chercher les données qu’on veut afficher. Une « source de données ». En Anglais, un composant « TDataSource ». On prend le composant, on le pose sur la fiche, on initialise la propriété « DataSource » de notre « DBGrid1 » à « DataSource1 ».

Ensuite, ce composant « source de données » doit aller chercher les données quelque part. Mais où ? Eh bien chez un « serveur de données ». Pour cela il nous faut un objet appelé le client. Ça peut paraitre bizarre, mais on l’appelle « client » parce que c’est lui qui ira demander des informations à un serveur de données. C’est le client de données du serveur de données. Donc un client d’ensemble de données, en Anglais : « TClientDataSet ». On prend un composant « TClientDataSet », on le pose sur la fiche, et on initialise la propriété « DataSet » de « DataSource1 » à « ClientDataSet1 ».

Ce fameux Client, lui, doit donc se connecter à un serveur de données. C’est intéréssant dans la mesure ou ce fameux serveur peut être « hors » de l’application, sur un autre ordinateur, mais faisons simple : on va supposer que ce serveur est directement intégré à l’application. On utilise donc un composant fournisseur de données, en Anglais : « TDataSetProvider ». On prend un composant « TDataSetProvider », on le pose sur la fiche, et on initialise la propriété « ProviderName » de « ClientDataSet1 » à « DataSetProvider1 ».

On y est presque !

Il reste le côté purement physique, c’est à dire l’objet réel qui ira lire les informations. Nous allons prendre un objet TTable. (Il y a les objet TIBTable pour Interbase, TMyTable pour MySQL, TSQLTable pour dbExpress, bref, plein de tables dont on se sert de la même manière que TTable). On prend un composant « TTable, on le pose sur la fiche, et on initialise la propriété « DataSet » de « DataSetProvider1 » à « Table1 ».

Voilà l’image résultat :
Résultat Delphi TClientDataSet, TDataSetProvider, et TTable

Voilà le trajet des informations :

Lorsque la grille de données voudra lire des informations pour les afficher, la demande suivra ce trajet :

DBGrid1 => DataSource1 => ClientDataSet1 => DataSetProvider1 => Table1

et la Table ira lire les bonnes informations, et créera une réponse. La réponse fera le trajet inverse :

Table1 => DataSetProvider1 => ClientDataSet1 => DataSource1 => DBGrid1

L’intérêt d’avoir autant de composants c’est qu’on peut faire deux applications : le client qui affiche les données, et le serveur, qu’on peut mettre sur un autre ordinateur.

Il est possible de « couper » directement la route et de ne faire qu’un lien direct entre DataSource1 et Table1. (Le propriété DataSource1.DataSet = « Table1 »). Mais ce ne sera pas du tout évolutif. A éviter donc.

Assurances et courtier : le principe général

Je répète volontairement souvent certains mots pour être sûr qu’ils sont utilisés clairement et aux bons endroits, ne vous affolez pas si vous lisez souvent courtier – apporteur – assureur :
Les personnes qui assurent sont des assureurs. Oui je sais ça parait stupide de le préciser mais c’est pour vraiment tout préciser. Une compagnie d’assurance est une compagnie créée afin de vendre de l’assurance.
Serge est un courtier : dans le monde des assurances, un courtier est quelqu’un qui a une liste d’assureurs (une liste de compagnies pour être exact) et propose à des gens (prospects qui deviennent clients, si tout va bien) les tarifs que lui ont fourni ses assureurs.
Olivier est un apporteur : il amène à Serge un nouveau contrat, par exemple, Carole. Carole est contente des tarifs et décide de s’assurer chez Generali. Ce sera via Serge (le courtier) et grâce à Olivier (l’apporteur), donc.
Carole est donc l’assurée. C’est elle qui paie (qui « cotise » pour employer un verbe qui choque moins) selon une périodicité définie (tous les mois, trimestres, semestres, ou à l’année, à elle de choisir).
Pour comprendre comment circule l’argent, qui est le nerf de la guerre, voyons un exemple simple : notez bien que ce n’est que le début de la chose, en réalité c’est un peu plus complexe et des options se sont ajoutées au fil du temps mais restons pour l’instant dans un exemple simple et réaliste à la fois :
Carole paie tous les mois à Serge son assurance. Disons, pour simplifier au maximum, 100 €. Serge prend une commission (établie au départ avec la compagnie), puis reverse le reste à la compagnie d’assurance à laquelle Carole a souscrit. Disons que Serge (soyons généreux) prend 20 € de commission. Il versera donc 80 € à la compagnie d’assurance qui assure Carole.
Et l’apporteur dans tout ça ? Il sera payé par Serge sur l’argent que Serge aura mis de côté. Donc, sur les 20 €, peut-être que Serge va reverser 5 € à Olivier.
Pour pousser un peu plus loin le bouchon (mais pas trop), il y a une deux méthodes de gestion de l’argent qui arrive par Carole :

  1. Carole paie directement la compagnie d’assurance.
    Cette dernière reçoit donc 100 € et en reverse 20 € à Serge.
    C’est ce que l’on appelle la gestion non confiée.
  2. Carole paie le courtier. (C’est le cas évoqué dans l’exemple).
    Le courtier reverse à la compagnie concernée le restant dû.
    C’est ce que l’on appelle la gestion confiée.

Voilà pour le schéma au premier abord, de circulation de l’argent.

Assurances : quelques informations

Une assurance fonctionne sur un principe simple : elle offre des produits. Ces produits sont composés de garanties. Jusqu’ici c’est simple. Maintenant, il peut y avoir deux types de produits :

  1. Les produits qui sont fixes, c’est à dire dont on définit précisément toutes les caractéristiques ; Ces produits sont souvent des produits crées par les grosses assurances, c’est pourquoi on ne peut pas les changer ;
  2. Les produits que l’assureur lui-même peut moduler, et dans lequel il peut ajouter ou enlever des garanties, et éventuellement y adjoindre des exclusions.

Une assurance emprunteur assure un emprunt d’un particulier, ou un emprunt professionnel. En effet, imaginez que vous vouliez faire un emprunt pour acheter une maison. Vous allez voir votre banquier, et vous montez le dossier de l’emprunt. Il ne vous reste plus qu’à trouver un assureur pour vous couvrir en cas de sinistre. La banque, vous vous en doutez, ne prête que si elle est sûre de pouvoir rentrer dans ses frais, et donc ne vous prêtera que si vous trouvez un assureur pour « assurer vos arrières ». Bien évidemment, le métier de l’assurance est rentable. C’est pourquoi les banquiers se sont rapprochés des assurances au début uniquement dans le but de faire des partenariats, et ont vu que c’était si rentable, qu’ils ont monté leur propre service d’assurance ! Assurance voiture, maison, vol, etc etc.
Revenons à notre emprunt. Vous arrivez chez un assureur, quel qu’il soit, et on vous propose un, ou des produits qui peuvent correspondre à votre emprunt. Petit rappel : tout produit, comme expliqué au début, est composé des garanties et -éventuellement- d’exclusions. Il faut donc complètement différencier le produit lui-même du type d’emprunt qui est fait à la banque. Dans notre cas, un assureur peut proposer des produits et chaque produit peut être spécifique à certains types d’emprunts, ou éventuellement couvrir toute la gamme des emprunts possible d’une banque.
Tout a tellement évolué qu’il est maintenant possible de s’assurer directement en ligne, sans perdre des heures entières à monter des dossiers, ce qui faisait d’autant plus râler lorsque l’on n’avait rien à déclarer de particulier et par conséquent le dossier ne nécéssitait aucune étude !
Certains assureurs, tels que pret-assur, ou encore ACARAT, fonctionnent selon un principe classique : on s’inscrit, on précise quel est le type d’emprunt que l’on veut faire, et par la suite, deux possibilités :

  • soit on n’a aucune particularité aggravante (pas de sport extrême, aucun problème de santé, pas de profession dangereuse etc) et dans ce cas aucune étude approfondie du dossier n’est nécéssaire ;
  • soit on demande de remplir, ou fournir des pièces et de les retourner à l’assureur en question, de manière à ce que ce dernier puisse étudier le dossier et donner son avis.

Lorsqu’un dossier qui nécéssite une étude est accepté, c’est souvent selon certaines conditions particulières.