@Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
{"MaVariable", indVariable}
Bon Dev
-
Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
-
Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !Rejeter la notice
WD Formule Libre de Calcul des valeurs
Discussion dans 'Windev' créé par LAPIPE2018, Juin 27, 2018.
Tags:
Merci @Popoy,Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
J'essaie d'expliquer en mieux pour mieux comprendre . Supposons une table TABRUBRIQUE qui a une structure (CODE,VALEUCODE), pour utiliser une valeur comme variable saisie par un client, il faut la déclarer. le Client a déclarer au paramétrage le code C001 et lui a attribué la valeur 10, il a déclarer C002 il a mis 30, il veut faire la formule, C002 divisé par C001. Vous voyez que je ne suis ni au début, ni à la fin de sa pensée. Je dois juste lui donner un champ SFormule dans lequel il il met ce qu'il veut et je récupère. C'est ça ce que je cherche.
Je pensais que je pouvais au démarrage créer des variable, de façon dynamique , associé à C001,C002. Pour que le champ Formule puisse avoir des variables globales(c'est sur que ça ne marche pas), il faut le faire dans la procédure et donc compiler plusieurs fois
Merci
Bonjour,
Et pourquoi compliquer les choses?
Peut import ce que le "client" va rentrer dans sa formule de calcul.. on peut toujours récupérer ce qu'il a saisi, l'analyser et l'utiliser dans des "variables" ; il suffit d'avoir un peut d'optimisme
Le principe est le même qu'une calculatrice, au final ce ne sont que des opérations de calcul avec des "délimiteurs" prédéfinis : les opérateurs (*/+-()=).
Pour les variables "créés" : Une partie d'une chaine est une variable indépendante qu'on peut l'utiliser indépendamment de la chaine de dépare. exp :
si maChaine = "element de salaire=salaire Net * 13/12" après analyse j'aurai :
maChaine[1] = "element de salaire"
maChaine[2] = "="
maChaine[3] = "salaire Net"
maChaine[4] = "*"
maChaine[5] = "13"
maChaine[6] = "/"
maChaine[7] = "12"
au final on a 7 variables qu'on n'a pas pré-déclaré, d'une manière orthodoxe, mais qu'on peut les utiliser qd même.
Sinon, pour ma petite expérience personnelle (si sa peut t'aider) pour mes logiciels de paie j'utilise les éléments fixes et les éléments variables (mais en limitant les choix aux utilisateurs tout en gardant le principe de "variable" )
Après chaque pays a ses propres règles de calcul suivant les lois reste a s'adapter et d'appliquer ces règles...
Voici par exemple comment je procède dans mon approche je commence par déclarer les éléments de la paie et les règles de calcul au code initial du projet:
les procédures globales :Code (Windev):
SIBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Element_Paie) = 0 ALORS
Init_Types_Element_Paie()
FIN
SIBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct) = 0 ALORS
Init_Ref_Ajout_Deduct()
FIN
SIBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul) = 0 ALORS
Init_Ref_Base_Calcul()
FIN
SIBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Assiette) = 0 ALORS
Init_Ref_Assiette()
FIN
SIBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Salaire) = 0 ALORS
Init_Types_Salaire()
FIN
Code (Windev):
PROCEDURE Init_Types_Element_Paie()
F_Ref_Types_Element_Paie.Description = "Fixe"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Element_Paie)
F_Ref_Types_Element_Paie.Description = "Variable"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Element_Paie)
//Code (Windev):
//
PROCEDURE Init_Ref_Ajout_Deduct()
F_Ref_Ajout_Deduct.Description = " + Brut, + Imp."
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
F_Ref_Ajout_Deduct.Description = " + Brut, - Imp."
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
F_Ref_Ajout_Deduct.Description = " + Imposable"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
F_Ref_Ajout_Deduct.Description = " - du Sal. Brut"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
F_Ref_Ajout_Deduct.Description = " + au Sal. Net"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
F_Ref_Ajout_Deduct.Description = " - du Sal. Net"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Ajout_Deduct)
//Code (Windev):
PROCEDURE Init_Ref_Base_Calcul()
F_Ref_Base_Calcul.Description = "Entière"
F_Ref_Base_Calcul.TypeCalcul = 1
F_Ref_Base_Calcul.Formule = ""
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Pourcentage"
F_Ref_Base_Calcul.TypeCalcul = 2
F_Ref_Base_Calcul.Formule = ""
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Mt*Nj/26, Mt*Nh"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = "Mt*Nj/26, Mt*Nh"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Th* Nbre* Taux"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = "Th* Nbre* Taux"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Max= Nbj. Base"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = "Max= Nbj. Base"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Mt * Nbj / 26"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = "Mt * Nbj / 26"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Spécial Tâche"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = ""
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Spéc. C.Maladie"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = ""
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Spéc. Acc.Trav."
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = ""
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
F_Ref_Base_Calcul.Description = "Mt * Nbj"
F_Ref_Base_Calcul.TypeCalcul = 3
F_Ref_Base_Calcul.Formule = "Mt * Nbj"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Base_Calcul)
[code]
[code=windev]
//
PROCEDURE Init_Ref_Assiette()
F_Ref_Assiette.Description = "du Sal. Base"
F_Ref_Assiette.TypeSalaire = 1
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Assiette)
F_Ref_Assiette.Description = "du Sal. Brut"
F_Ref_Assiette.TypeSalaire = 2
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Assiette)
F_Ref_Assiette.Description = "du Sal. Net"
F_Ref_Assiette.TypeSalaire = 3
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Assiette)
Code (Windev):
PROCEDURE Init_Types_Salaire()
F_Ref_Types_Salaire.Description = "Base"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Salaire)
F_Ref_Types_Salaire.Description = "Brut"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Salaire)
F_Ref_Types_Salaire.Description = "Net"
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
(F_Ref_Types_Salaire)
irobot, rafik19, LAPIPE2018 et 2 autres personnes aiment ça.
BonjourBonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
, en supposant que j'ai bien compris ta méthode pour ta paie, elle est plus simple. Est ce que tu ne pouvais pas fusionner F_Ref_Types_Salaire et F_Ref_Assiette ? Juste pour les soucis de compréhension à mon niveau.
Non on peut pas les fusionner; le type de salaire est différent de l'assiette, qui est une base de calcul.
Sinon, ce ne sont que des référentiels pour faciliter les saisies dans les fiches (exactement comme un fichier de civilité ou de codes postaux...)
Pour pouvoir tenir un paie simple et correct il faut prévoir TOUT les assiettes et formules de calcul possibles selon votre modèle de paie local. Généralement les formules sont toujours les mêmes et ne changent pas tout les jours!
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
, Dans la figure que tu as donné, J'essaie , mais je ne vois pas où intervient F_Ref_Types_Salaire ainsi que les variations liées à F_Ref_Base_Calcul.TypeCalcul (1 à . Je suis entrain de regarder une autre façon. Utiliser le Drag and Drop, ça semble aussi complexe. Parce que ça suppose j'impose un certains ordre. C'est pour ça que j'essaie de comprendre en même temps la tienne.
je crois qu'on peut faire ça avec programmation
Bobjour,
Commençant par le commencement :
- Quels sont tes éléments fixes (CNSS, vacation, prime de rendement, prime de logement,...) ?
- Qu'elles sont tes variables (avance sur salaire, prime semi remorque, congé payé,...)?
- Quelles sont tes formules de calcul (pour un prime de logement par exemple)?
Ton but est de faire un logiciel de paie qui tient des fiches de paie, gère les conges, les prêts, édite les déclarations periodiques d'employeur,...
Ou juste un éditeur de fomules?
Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!
, Le Logiciel existe et marche. je veux juste permettre à un client de définir lui même son élément, ensuite introduire la formule de Calcul.
Je ne suis pas au niveau du projet. Je ne veux que mettre en place un éditeur de formule.
Thx