Gambas France BETA


Pas de compte ? Incription

Emprunts

À propos de ce code

Simple calculateur d'emprunts à amortissements constants ou annuités constantes.

Version initiale 0.1.1
Version 0.1.2 Modification de certains affichages.
Versions 0.1.3 Correction d'un bug sur settings révélé par Patrick et amélioration de l'affichage du texte sur impression.
Version 0.1.4 Quelques améliorations.
Version 0.1.5 Version sans gb.poppler et version gambas mini 3.8
Version 0.1.5 Version sans frame.
Version 0.1.6 Version à nouveau avec Frames, gambas 3.19 et tbxPerso pour formater le TextBox.
Version 0.1.7 Version avec contrôle de saisie
Version 0.1.8 Version avec Totaux
Version 0.1.9
Version 0.2.0 Modification de la fermeture

Code source

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PRIVATE $iPer AS INTEGER '<-------------------------------' nombre de périodes
PRIVATE $iDur AS INTEGER '<-------------------------------' durée de l'emprunt
PRIVATE $fCap AS FLOAT '<---------------------------------' capital emprunté
PRIVATE $fInt AS FLOAT '<---------------------------------' intérêts première période
PRIVATE $fAmo1 AS FLOAT '<---------------------------------' amortissements première période
PRIVATE $fAnn AS FLOAT '<---------------------------------' Annuité soit constante soit première période
PRIVATE $fVfin AS FLOAT '<---------------------------------' valeur de fin de première période
PRIVATE $fTaux AS FLOAT '<---------------------------------' taux d'emprunt
PRIVATE $fTotInt AS FLOAT '<------------------------------' total des intérêts cumulés
PRIVATE $fTotAmort AS FLOAT '<---------------------------' total des amortissements
PRIVATE $fTotAnn AS FLOAT '<------------------------------' total des annuités
PRIVATE $bdrap AS BOOLEAN '<------------------------------' bascule pour calculs à jour
PRIVATE $afAmort AS Float[] '<-----------------------------' amortissements de chaque période
PRIVATE $afValFin AS Float[] '<--------------------------' valeur de fin de chaque période
PRIVATE $afInter AS Float[] '<-----------------------------' intérêts de chaque période
PRIVATE $afAnnuite AS Float[] '<--------------------------' annuité de chaque période

Commentaires

Commentaire de Patrick, Le 5/6/2024 à 06:35:37
Lors de la 1° utilisation, dans private sub mesures() les settings renvoient des valeurs null.
Du coup ça plante.
Commentaire de valaquarus, Le 5/6/2024 à 09:33:29
Merci Patrick.
Trop bête, évidemment sur ma machine ça marchait bien, les settings étaient déjà enregistrés.
Commentaire de spheris, Le 5/6/2024 à 19:16:42
Bonsoir,
Ce programme ne fonctionne pas sur gambas 3.14 des dépots officiels de mint.
Message d'erreur :

Le composant gb.poppler n'est pas installé.

Et impossible de l'installer, il n'existe pas pour cette version de GB.
Commentaire de valaquarus, Le 5/6/2024 à 22:26:07
Le programme ne peut fonctionner qu'à partir de la version 3.19 de Gambas.
Commentaire de spheris, Le 6/6/2024 à 20:18:24
Merci pour cette précision.
Du coup l'encart :

Catégorie : Maths & Algos
Niveau : Intermédiaire
Version : Gambas 3


est faux. Il faudrait plutôt mettre :

Catégorie : Maths & Algos
Niveau : Intermédiaire
Version : à partir de Gambas 3.19 et plus.
Commentaire de valaquarus, Le 7/6/2024 à 18:33:13
Gambas 3.19 est bien un Gambas 3
Commentaire de valaquarus, Le 8/6/2024 à 10:02:01
Version 0.1.5 sans poppler et avec Gambas 3.8
Commentaire de spheris, Le 8/6/2024 à 20:31:53
Valaquarus,
Un grand merci.
Le projet s'ouvre bien et se compile bien dans l'IDE.
Par contre quand je lance le programme, aucune fenêtre n'apparait.
Je compile donc un exécutable et je double clique dessus dans le répertoire de l'application et paf!!!



la propriété Alignement n'existe pas pour les Frames dans la version 3.16 ou moins.
Commentaire de valaquarus, Le 9/6/2024 à 09:46:48
Curieux ! j'ai compilé pour 3.8
Changes les frame par des panel ça devrait le faire.
Je vais le reprendre.
Commentaire de valaquarus, Le 9/6/2024 à 09:51:16
Déposé une version sans les frames.
Commentaire de valaquarus, Le 11/6/2024 à 18:04:44
Nouvelle version avec frames et gambas 3.19 pour passer le format du textBox de saisie.
Commentaire de spheris, Le 14/6/2024 à 12:16:56
Au lancement une erreur dans la classe :



Que cela veut-il dire?
Commentaire de valaquarus, Le 14/6/2024 à 13:18:38
En dessous de Gambas 3.19 il faut déclarer explicitement chaque propriété et non pas utiliser le raccourci de déclaration.
Commentaire de valaquarus, Le 14/6/2024 à 13:28:21

Déclaration complète avant Gambas 3.19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
PRIVATE SUB Value_Write(Value AS FLOAT) '<------------------------------------- la propriété Value de notre TextBox

$value = Value '<--------------------------------------------------------- récupération de la valeur et transmision à la variable locale

END

PRIVATE FUNCTION Value_Read() AS FLOAT '<------------------------------------- la propriété Value de notre TextBox

RETURN $value '<---------------------------------------------------------- renvoi de la propriété

END

PRIVATE SUB Format_Write(sFormat AS STRING) '<------------------------------- la propriété Format de notre TextBox

sFormat="###,###.00"
$format = sFormat '<------------------------------------------------------ récupération de la valeur et transmision à la variable locale

END

PRIVATE FUNCTION Format_Read() AS STRING '<--------------------------------- la propriété Format de notre TextBox

RETURN $format '<--------------------------------------------------------- renvoi de la propriété

END
Commentaire de valaquarus, Le 14/6/2024 à 14:51:37
Tu peux aussi essayer cela, si ta version de Gambas accepte le raccourci de déclaration :
1
2
3
4
5
6
7
8
PROPERTY Format AS STRING USE $format ''Format de la textBox

PUBLIC SUB _new() '<---------------------------------------' initialisation

$obs = NEW Observer(ME) AS "obs" '<---------------------' les évènements sont récupérés par obs
$format = "$###,###.00"

END
Commentaire de valaquarus, Le 15/6/2024 à 12:59:50
Un lien vers la documentation.
Depuis 3.14 le raccourci de déclaration est réalisable mais apparemment avec des différences.

Raccourci de propriété
PROPERTY [ READ ] Identificateur AS TypeDeDonnée USE Variable

Depuis 3.14

Cette syntaxe déclare Variable, une variable privée globale, qui sera utilisée pour implémenter la propriété Identificateur.

1
2
3
4
5
6
7
8
9
10
11
12
PROPERTY Name AS STRING USE $sName
est l'équivalent exact de :
PROPERTY Name AS STRING
PRIVATE $sName AS STRING

PRIVATE SUB Name_Read() AS STRING
RETURN $sName
END

PRIVATE SUB Name_Write(Value AS STRING)
$sName = Value
END
Commentaire de spheris, Le 19/6/2024 à 20:48:17
Effectivement, cela fonctionne mieux dès à présent.
Comme dirait Hancok:

https://www.youtube.com/watch?v=WlGPKXf_tmw