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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| Private Sub Report_Open(Cancel As Integer)
Dim SQL As String
Dim Cat_mmq_0 As String
Dim Cat_mmq_X As String
Dim Cat_mmq_pas As String
If Forms![choix document]!Modifiable0 = "MMQGEN000" Then
If MsgBox("Avez-vous mis à jour les dates et indices des différents chapitres modifiés (MMQGEN001,..002,.....029...)", vbOKCancel, "ATTENTION") = vbOK Then
If MsgBox("Désirez-vous lister toutes les parties du Manuel (Yes) ou seulement celles mises à jour (No)", vbYesNo, "CHOIX") = vbYes Then
' requete = liste personne de MMQGEN000
Cat_mmq_0 = "SELECT [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM AS NomPrénom, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_0 = Cat_mmq_0 & "FROM PERSONNEL INNER JOIN ([IDENTIFICATION DES DOCUMENTS] INNER JOIN ([DIFFUSION DES DOCUMENTS] INNER JOIN [FONCTIONS DU PERSONNEL] ON [DIFFUSION DES DOCUMENTS].FONCTION = [FONCTIONS DU PERSONNEL].FONCTION) ON [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT] = [DIFFUSION DES DOCUMENTS].[REF document]) ON PERSONNEL.[REFERENCE PERSONNEL] = [FONCTIONS DU PERSONNEL].[REF personnel]"
Cat_mmq_0 = Cat_mmq_0 & "WHERE ((([IDENTIFICATION DES DOCUMENTS].CODE) = 'MMQGEN000') And ((PERSONNEL.Présence) = True))"
Cat_mmq_0 = Cat_mmq_0 & "GROUP BY [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_0 = Cat_mmq_0 & "HAVING ((([PERSONNEL]![NOM] & ' ' & [PERSONNEL]![PRENOM])<>'Tout le personnel ULM'))"
' Requete = liste personne des autres MMQGENxxx
Cat_mmq_X = "SELECT [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM AS NomPrénom, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_X = Cat_mmq_X & "FROM PERSONNEL INNER JOIN ([IDENTIFICATION DES DOCUMENTS] INNER JOIN ([DIFFUSION DES DOCUMENTS] INNER JOIN [FONCTIONS DU PERSONNEL] ON [DIFFUSION DES DOCUMENTS].FONCTION = [FONCTIONS DU PERSONNEL].FONCTION) ON [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT] = [DIFFUSION DES DOCUMENTS].[REF document]) ON PERSONNEL.[REFERENCE PERSONNEL] = [FONCTIONS DU PERSONNEL].[REF personnel]"
Cat_mmq_X = Cat_mmq_X & "WHERE ((([IDENTIFICATION DES DOCUMENTS].CODE) Like 'MMQGEN*' And ([IDENTIFICATION DES DOCUMENTS].CODE)<>'MMQGEN000') AND ((PERSONNEL.Présence)=True))"
Cat_mmq_X = Cat_mmq_X & "GROUP BY [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_X = Cat_mmq_X & "HAVING ((([PERSONNEL]![NOM] & ' ' & [PERSONNEL]![PRENOM])<>'Tout le personnel ULM'))"
Else
' requete = liste personne de MMQGEN000
Cat_mmq_0 = "SELECT [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM AS NomPrénom, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_0 = Cat_mmq_0 & "FROM PERSONNEL INNER JOIN ([IDENTIFICATION DES DOCUMENTS] INNER JOIN ([DIFFUSION DES DOCUMENTS] INNER JOIN [FONCTIONS DU PERSONNEL] ON [DIFFUSION DES DOCUMENTS].FONCTION = [FONCTIONS DU PERSONNEL].FONCTION) ON [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT] = [DIFFUSION DES DOCUMENTS].[REF document]) ON PERSONNEL.[REFERENCE PERSONNEL] = [FONCTIONS DU PERSONNEL].[REF personnel]"
Cat_mmq_0 = Cat_mmq_0 & "WHERE ((([IDENTIFICATION DES DOCUMENTS].CODE) = 'MMQGEN000') And ((PERSONNEL.Présence) = True))"
Cat_mmq_0 = Cat_mmq_0 & "GROUP BY [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_0 = Cat_mmq_0 & "HAVING ((([IDENTIFICATION DES DOCUMENTS].DATE)>[depuis la date?]) AND ((Not (PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM)='Tout le personnel ULM')))"
' Requete = liste personne des autres MMQGENxxx
Cat_mmq_X = "SELECT [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM AS NomPrénom, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_X = Cat_mmq_X & "FROM PERSONNEL INNER JOIN ([IDENTIFICATION DES DOCUMENTS] INNER JOIN ([DIFFUSION DES DOCUMENTS] INNER JOIN [FONCTIONS DU PERSONNEL] ON [DIFFUSION DES DOCUMENTS].FONCTION = [FONCTIONS DU PERSONNEL].FONCTION) ON [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT] = [DIFFUSION DES DOCUMENTS].[REF document]) ON PERSONNEL.[REFERENCE PERSONNEL] = [FONCTIONS DU PERSONNEL].[REF personnel]"
Cat_mmq_X = Cat_mmq_X & "WHERE ((([IDENTIFICATION DES DOCUMENTS].CODE) Like 'MMQGEN*' And ([IDENTIFICATION DES DOCUMENTS].CODE)<>'MMQGEN000') AND ((PERSONNEL.Présence)=True))"
Cat_mmq_X = Cat_mmq_X & "GROUP BY [IDENTIFICATION DES DOCUMENTS].[REFERENCE DOCUMENT], [IDENTIFICATION DES DOCUMENTS].CODE, [IDENTIFICATION DES DOCUMENTS].INDICE, [IDENTIFICATION DES DOCUMENTS].DATE, [IDENTIFICATION DES DOCUMENTS].TITRE, PERSONNEL.Présence, PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM, PERSONNEL.[REFERENCE PERSONNEL]"
Cat_mmq_X = Cat_mmq_X & "HAVING ((([IDENTIFICATION DES DOCUMENTS].DATE)>[depuis la date?]) AND ((Not (PERSONNEL!NOM & ' ' & PERSONNEL!PRENOM)='Tout le personnel ULM')))"
End If
'requete trie personne des MMQGENxxx pas dans MMQGEN000
Cat_mmq_pas = "SELECT [cat mmq X].DATE, [cat mmq X].TITRE, [cat mmq X].NomPrénom, [cat mmq X].Présence, [cat mmq X].[REFERENCE PERSONNEL], [cat mmq X].INDICE, [cat mmq X].CODE, [cat mmq X].[REFERENCE DOCUMENT], [cat mmq 0].[REFERENCE PERSONNEL]"
Cat_mmq_pas = Cat_mmq_pas & "FROM (" & Cat_mmq_0 & ") as [cat mmq 0] RIGHT JOIN (" & Cat_mmq_X & ") as[cat mmq X] ON [cat mmq 0].[REFERENCE PERSONNEL] = [cat mmq X].[REFERENCE PERSONNEL]"
Cat_mmq_pas = Cat_mmq_pas & "WHERE ((([cat mmq 0].[REFERENCE PERSONNEL]) Is Null))"
'requete union des MMQGEN000 et des different MMQGENxxx
SQL = "SELECT [cat mmq 0].[REFERENCE DOCUMENT] AS REF, [cat mmq 0].CODE, [cat mmq 0].INDICE, [cat mmq 0].DATE, [cat mmq 0].TITRE, [cat mmq 0].Présence, [cat mmq 0].NomPrénom"
SQL = SQL & "FROM (" & Cat_mmq_0 & ")as [cat mmq 0]"
SQL = SQL & "UNION SELECT [cat mmq PAS].[REFERENCE DOCUMENT] AS REF, [cat mmq PAS].CODE, [cat mmq PAS].INDICE, [cat mmq PAS].DATE, [cat mmq PAS].TITRE, [cat mmq PAS].Présence, [cat mmq PAS].NomPrénom"
SQL = SQL & "FROM (" & Cat_mmq_pas & ") as [cat mmq PAS];"
Report.RecordSource = SQL
Else
DoCmd.Close acForm, "choix document"
Cancel = True
End If
End If
End Sub |