OVH Cloud OVH Cloud

Problème de liaisons (aucun champ commun) --> avis aux spécialis te

3 réponses
Avatar
YaNnIcK
Bonjour !

Je me trouve depuis quelques jours sur un problème insolluble et je viens
voir si peut être quelqu'un à une idée ou une orientation qui pourrait
m'aider.

J'ai une base contenant deux tables : une table "employés" et une table
"salaires" la table employés contient les coordonnées et les dates de début
et de fin de contrat. Chaque employé à deux ou trois contrats (changement de
classes salariales) donc deux ou trois contrats.

La table salaire contient six champs : date début, date fin, 1, 2, 3, 4. Il
y a 4 classes salariales, nommées 1,2,3 et 4. Mais les valeurs de ces classes
ont changé au fil du temps (je gère les employés depuis la création du
service en 1976...) donc une classe 1 aujourd'hui ne vaut pas une classe 1
d'il y a dix ans.

L'idée est que pour chaque contrat de chaque employé, access doit aller
chercher la classe correspondante (sa j'arrive sans problème avec trois
vraifaux) et mettre la valeur correspondante à la date de son contrat....
déjà en français c'est po simple mais en access c'est pire...

Quelqu'un à une idée ? pour l'instant je m'orientais vers une requête
séléction qui créerait une ligne par mois et testerai la date pour chaque
mois mais je sais même pas comment le faire... Merci Merci Merci

3 réponses

Avatar
Mwa
Salut

Ta base est mal montée :
Employes ---- Salaires

Elle devrait être plutôt de cet acabi :

Employes ---- Contrats ---- Salaires
|
|
|
Classes

De cette manière tu pourrais créer autant de classes que tu voudrais. Ta classe 1 de 1976 resterait
1 et une classe 1 de 2006 serait identifiée diffféremment.

mettre la valeur correspondante à la date de son contrat
Comment veux-tu savoir quelle est la valeur de la classe correspondante de ton contrat sachant que

toutes tes classes n'ont aucune distinction temporelle : la 1 en 1976 = la 1 de 2006.

Si tu veux au mieux tu pourrais sortir la classe accompagnée de l'année de début du contrat. Tu
aurais de cette manière une idée de la valeur de cette dernière.

Mwa





Bonjour !

Je me trouve depuis quelques jours sur un problème insolluble et je viens
voir si peut être quelqu'un à une idée ou une orientation qui pourrait
m'aider.

J'ai une base contenant deux tables : une table "employés" et une table
"salaires" la table employés contient les coordonnées et les dates de début
et de fin de contrat. Chaque employé à deux ou trois contrats (changement de
classes salariales) donc deux ou trois contrats.

La table salaire contient six champs : date début, date fin, 1, 2, 3, 4. Il
y a 4 classes salariales, nommées 1,2,3 et 4. Mais les valeurs de ces classes
ont changé au fil du temps (je gère les employés depuis la création du
service en 1976...) donc une classe 1 aujourd'hui ne vaut pas une classe 1
d'il y a dix ans.

L'idée est que pour chaque contrat de chaque employé, access doit aller
chercher la classe correspondante (sa j'arrive sans problème avec trois
vraifaux) et mettre la valeur correspondante à la date de son contrat....
déjà en français c'est po simple mais en access c'est pire...

Quelqu'un à une idée ? pour l'instant je m'orientais vers une requête
séléction qui créerait une ligne par mois et testerai la date pour chaque
mois mais je sais même pas comment le faire... Merci Merci Merci


Avatar
YaNnIcK
Employes ---- Contrats ---- Salaires
|
|
|
Classes



... mais que devrait contenir la table "classes" ? une liste des classes ?
les dates et les valeurs des classes ? je n'ai pas trop compris.. désolé Mwa

Avatar
Mwa
Employes ---- Contrats ---- Salaires
|
|
|
Classes



... mais que devrait contenir la table "classes" ? une liste des classes ?
les dates et les valeurs des classes ? je n'ai pas trop compris.. désolé Mwa


Oui, par exemple :
Id=1;Classe=1;DateDebut/01/1976;DateFin1/12/1980;Coefficient0
Id=2;Classe=2;DateDebut/01/1976;DateFin1/12/1980;Coefficient0
Id=3;Classe=1;DateDebut/01/1981;DateFin1/12/1990;Coefficient0

Id = AutoNum (Clé)
Classe = identification paralante de ta classe
DateDebut et DateFin = périodes de validité de la classe
Je t'ai mis Coefficient juste pour te montrer qu'à chaque classe tu peux rajouter des propriétés
particulières.

Enfin ta table Contrats devras contenir un champs IdClasse qui te permettra de précisier à quelle
classe ton contrat est rattaché. Et en fonction des dates du contrat tu ne pourras pas sélectionner
des classes dont les dates de validités sont dépassées.

Espérant avoir été plus clair

Mwa