Une requete access à modifier sous delphi
J'ai une base de donnée sous access dont voici les tables: tpolice,tsinistre,ttypesinistre et tpaiement.
Je fait une requete sous access qui ne me donne pas le resultat voulu qui n'est rien d'autre que le reste à payer .
La requete permet de faire la somme totale des montants payés par an et faire la difference entre ce total avec la provision_initiale qui donne le reste à payer. Et ce reste à payer doit remonter à l'année suivante si tout le montant à payer n'est pas totalement payer et faire la difference du montant payé de l'année en cour du reste à payer.
Maintenant j'aimerais savoir si on peut laisser la place du reste à payer pour faire ce calcul sous delphi?
Si oui, celui ou celle qui à une repose sera la bienvenue.
Voici sous access le code SQL que j'ai utilisé:
Code:
1 2 3 4
| SELECT tpaiement.Ref_Sinistre, tpolice.Date_Effet, tpolice.Date_Expiration, tsinistre.Date_Survenue, Year(tpaiement.Date_Paye) AS Annee_Paye, Sum(tpaiement.Montant) AS TOTAL_PAYE, (tsinistre.Provision_Initiale-TOTAL_PAYE) AS Reste_Payer, tsinistre.Provision_Initiale AS Coût_Total, tpolice.Souscripteur, tsinistre.ADVERS, tsinistre.OBS
FROM (tpolice INNER JOIN tsinistre ON tpolice.Num_Police = tsinistre.Num_Police) INNER JOIN tpaiement ON tsinistre.Ref_Sinistre = tpaiement.Ref_Sinistre
GROUP BY tpaiement.Ref_Sinistre, tpolice.Date_Effet, tpolice.Date_Expiration, tsinistre.Date_Survenue, Year(tpaiement.Date_Paye), tsinistre.Provision_Initiale, tpolice.Souscripteur, tsinistre.ADVERS, tsinistre.OBS
ORDER BY Year(tpaiement.Date_Paye) DESC; |
Citation:
Chaque reference sinistre peut être payé plusieurs fois donc à des années differentes tant que la reference sinistre n'est pas totalement payée
.
Dans l'attente d'une suite favorable.
Merci pour la comprehension.
Excusez moi des fautes grammaticales.
Par Zizou7.
Modification sur la question ci-dessus
J'ai fait déjà une requete sous access et j'ai fait la somme_total par reference sinistre et par An, mais il me reste à faire le reste à payer que j'ai crée sous delphi comme un champ de calcal sur la requete. Mais cette requete est affichée sous forme d'une table sous delphi. Sur cette requete, j'ai crée un champ Reste_Paye qui fait le calcul des restes à payer par rapport aux differentes References.
S'il ya une méthode ou un algorithme qui permet de faire ce calcul seraient les bienvenues sous delphi.
Voici le code SQL que j'ai écrit sous access:
Code:
1 2 3 4
| SELECT tpaiement.Ref_Sinistre, tpolice.Date_Effet, tpolice.Date_Expiration, tsinistre.Date_Survenue, Year(tpaiement.Date_Paye) AS Annee_Paye, Sum(tpaiement.Montant) AS TOTAL_PAYE, tsinistre.Provision_Initiale AS Coût_Total, tsinistre.ADVERS, tsinistre.OBS
FROM (tpolice INNER JOIN tsinistre ON tpolice.Num_Police = tsinistre.Num_Police) INNER JOIN tpaiement ON tsinistre.Ref_Sinistre = tpaiement.Ref_Sinistre
GROUP BY tpaiement.Ref_Sinistre, tpolice.Date_Effet, tpolice.Date_Expiration, tsinistre.Date_Survenue, Year(tpaiement.Date_Paye), tsinistre.Provision_Initiale, tsinistre.ADVERS, tsinistre.OBS
ORDER BY Year(tpaiement.Date_Paye) DESC; |
Maitenant sous delphi, j'ai ajouté le champ que je cherche le code qu'il faut pour calculer ce champ.
S'il ya un algorithme qui permet de faire cela me fairait plaisir.
Dans l'attente d'une suite favorable.
Merci pour la comprehension.
Execusez moi des fautes grammaticales.
Par Zizou7.