Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/09/2011, 07h48   #1
Débutant
 
Inscription : avril 2007
Messages : 636
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2007
Messages : 636
Points : 143
Points : 143
Par défaut Erreur etat analyse croisé

Bonjour,

Pour alimenté mon problème je joint une base.

Voila un exemple :
Quand on va dans le formulaire "Saisie tache espace verts" on prend le syndic AGES et l’opération LA PADER puis nous avons deux contrats avec des taches qui son propre au contrat.

Mon problème est quand on ouvre l'état "Solde des interventions" en page 2 on cherche le syndic AGES et l'operation LA PADER et on remarque que les dates qui lui son affecté ne correspond pas a ce chantier exemple les date 16/08/11 et 01/09/11 son du chantier en dessus JARDIN UX

Je n'arrive pas a trouve mon problème car dans la requête analyse croisé "Analyse croise tache solde" tout est bon. J'ai un problème au niveau de l'état

Vous pouvez m'aide a trouve ce problème??
Merci
Fichiers attachés
Type de fichier : zip etat.zip (174,7 Ko, 4 affichages)
popofpopof est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2011, 17h06   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Toujours un problème de décalage entre l'enregistrement en cours de l'état et celui du recordset.

Je n'ai pas trouvé d'où ça venait.
A plusieurs reprises l'état est en avance d'un enregistrement sur le recordset.

J'ai imaginé un moyen de contourner le problème, à l'aide de cette procédure qu'il faut coller dans le code de l'état :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Sub SyncEnrEnCours()
Dim lgEnrEtat As Long
Dim lgEnrRS As Long
 
' Numéro d'enregistrement de l'état, -1 pour commencer à
' zéro comme le recordset
lgEnrEtat = Me.CurrentRecord - 1
 
' Numéro d'enregistrement du recordset
If Not (rstEnregistrement.BOF Or rstEnregistrement.EOF) Then
   lgEnrRS = rstEnregistrement.AbsolutePosition
Else
   lgEnrRS = -1
End If
 
' Vérifier que l'état et le recordset sont bien
' sur le même enregistrement
If lgEnrRS <> -1 Then
   If lgEnrEtat = lgEnrRS Then
      ' rien à faire
   Else
      ' rattraper décalage
      rstEnregistrement.Move (lgEnrEtat - lgEnrRS)
   End If
Else
   ' revenir au 1er enregistrement et aller au même
   ' enregistrement que l'état.
   rstEnregistrement.MoveFirst
   rstEnregistrement.Move lgEnrEtat
End If
 
End Sub
Ensuite, dans chaque procédure événementielle ayant besoin de lire des données du recordset, j'appelle la sub SyncEnrEnCours.
Dans ton état : Détail_Print et EntêteGroupe0_Print.
Pas besoin dans ZoneEntêtePage_Format puisqu'on ne lit que le nom des colonnes (champs) et pas le contenu.

Exemple avec Détail_Print :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Détail_Print(Cancel As Integer, PrintCount As Integer)
Dim Hauteur As Single
Dim Gauche01 As Single, Gauche02 As Single, Gauche03 As Single, Gauche04 As Single, Gauche05 As Single
Dim Gauche06 As Single, Gauche07 As Single, Gauche08 As Single, Gauche09 As Single, Gauche10 As Single
Dim Gauche11 As Single, Gauche12 As Single, Gauche13 As Single, Gauche14 As Single, Gauche15 As Single
Dim Gauche16 As Single, Gauche17 As Single, Gauche18 As Single
 
Dim entX As Integer
Dim Nblignes As Long
 
SyncEnrEnCours
 
If Not rstEnregistrement.EOF Then
 
  ' ... etc ...
 
End Sub
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2011, 19h46   #3
Débutant
 
Inscription : avril 2007
Messages : 636
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2007
Messages : 636
Points : 143
Points : 143
Salut

Merci j'ai tout bien place et sa marche super bien je vais testé cela semaine prochaine avec beaucoup de donnée mais la sa marché trés bien

RECO a toi chef
popofpopof est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h34.


 
 
 
 
Partenaires

Hébergement Web