Bonjour,
mais tes champs proviennent bien d'une table ou d'une requête ?
Tu as parlé de regroupement sur l'état; as-tu des en-têtes et pied de groupe ?
Bonjour,
mais tes champs proviennent bien d'une table ou d'une requête ?
Tu as parlé de regroupement sur l'état; as-tu des en-têtes et pied de groupe ?
Mes champs proviennent d'une table et je fais comme cela :
j'ai mon en-tête d'état avec seulement un titre dedans
J'ai un en-tête de groupe dep_catego
un autre en tête de groupe dep_num
et ensuite le détail.
Je souhaite avoir le total dans le groupe dep_catego (en tête ou pied peu importe)
Je précise que cela donne un sous-état dépense que je glisse ensuite dans mon état de descriptif général contenant d'autres données...Mais ça ce n'est pas très important pour mon problème je crois...
D'accord, donc il n'y a pas de groupe sur le champ gen_code.
essaie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part =SomDom("dep_montant";"Depenses";"dep_catego=" & dep_catego)
ben non c'est pas sur gen_code, mais au final c'est quan même trié par code avec l'état général. Ca ne marche pas du tout cette dernière formule. Ca ne fait que "erreur"...
Pardon..C'est moi qui avais oublié les crochets. Mais ça ne fonctionne pas : ça donne toujours le total de la somme...
Peux-tu mettre aussi une image du sous-état en mode création qu'on voit ?
bon dans la propriété Source Contrôle d'une zone de texte placée dans le pied de groupe dep_catego tu écris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part =SomDom("dep_montant";"Depenses";"dep_catego=" & dep_catego & " AND gen_code=" & gen_code)
et le tout dernier code que tu m'as donné, ça ne change toujours rien ; toujours le même résultat...
Ok, je ne comprends pas.
Les codes que je t'ai donné renvoie la somme de dep_montant de la table dépenses pour les depenses ayant soit gen_code et/ou même dep_catego.
La requête de base du sous-état renvoie les enregistrements communs aux tables Dépenses et Effectifs. Regarde la proriété Source du sous-état; cette propriété contient le code SQL (ou la table ou la requête) de base de l'état.
Normalement ça devrait ressembler à : SELECT .... FROM Depenses INNER JOIN Effectifs ON ....
dis-nous ce qu'il en est. A quoi servent les combobox dans l'état ?
C'est quoi une "combobox" ? Je ne pense pas en avoir utilisé...Si tu parles du rectangle noir, c'est juste pour la présentation...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT depenses.gen_code, depenses.dep_num AS depenses_dep_num, depenses.dep_catego, depenses.dep_lib, depenses.dep_montant, depenses.dep_imput_serv, depenses.dep_imput_uf, depenses.dep_imput_ss_car, depenses.dep_imput_section_car, effectif.eff_num, effectif.dep_num AS effectif_dep_num, effectif.eff_matricule, effectif.eff_perso, effectif.eff_nom, effectif.eff_prenom, effectif.eff_categorie, effectif.eff_categorie_icare, effectif.eff_nb_heure, effectif.eff_etp FROM depenses INNER JOIN effectif ON depenses.dep_num=effectif.dep_num;
D'accord,
en résumé dans le sous-état, tu dois avoir la somme des dépenses par catégorie (dep_catego) quelque soit le gen_code et dans l'état général,
tu sépares les dépenses en plus par gen_code donc pour un gen_code plusieurs catégories possibles; ce qui évidemment doit modifier la somme. En fait tu dois avoir deux sommes; une dans le sous-état par catégorie et une autre dans l'état général par gen_code.
Dans le sous-état : somme par catégorie et par code
Dans l'état général : somme par code
Code : Sélectionner tout - Visualiser dans une fenêtre à part =Somdom("dep_montant";"Depenses";"dep_catego=" & [dep_catego] & " AND gen_code=" & [gen_code])
Code : Sélectionner tout - Visualiser dans une fenêtre à part =SomDom("dep_montant";"Depenses";"gen_code=" & [gen_code])
PS: oui, pardon une combobox est une zone de liste modifiable
Dans l'état général le contrôle du sous-état a deux propriétés
Champs Pères : gen_code
Champs Fils : gen_code
Encore une fois...ça ne fonctionne pas...
Souhaites-tu que je te fasse parvenir mon travail ?
Pour problème de confidentialité, j'ai mis des données fausses, mais le principe est le même (j'ai déjà une base de données prête à envoyer, que j'ai fait parvenir à mon professeur d'informatique pour qu'il m'aide mais il est très occupé).
Oui, mais je n'ai pas access 2003.
tu peux envoyer un fichier au format access200-2002
=========================================
Quel gros béta je suis ? Convaincu de t'avoir demandé le type des champs !?
gen_code et dep_catego sont de type texte. Désolé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part =Dsum("dep_montant";"Depenses";"gen_code='" & [gen_code] & "' AND dep_catego='" &[dep_catego] & "'")
Merci énormément pour toutes ces réponses. Les formules que tu m'as données vont m'être très utiles mais ne répondent pas à mon problème.
J'ai cependant enfin trouvé la solution, que je vais tenter de vous expliquer.
En fait, j'ai fait une requête avec juste le gen_code, dep_catego et dep_montant, et j'ai calculé la somme. Là, pas de problème d'effectif, puisque la table effectif n'est pas en relation.
Ensuite j'ai inséré ma table dépense, ma table effectif et ma requête dans mon état. Puis, j'ai été sur la requête (automatique) de mon état et j'ai relié dep-catégo de ma requête au dep_catego de ma table dépense.
Et maintenant, ça fonctionne !
Encore merci de votre aide, je coche maintenant la case "résolu" sur ce problème !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager