Option Compare Database 'on trouve ici les fonctions qui controlent le verrouillage, la visibilité... des différents formulaires Public Function acces(ByVal login As String) As Integer 'util = parametre("acces", CurrentUser) Util = Nz(DLookup("[acces]", "ztblUtilisateurs", "[login]='" & login & "'"), "") If Util = "admin" Then acces = 2 ElseIf Util = "rw" Then acces = 1 Else acces = 0 End If End Function Public Sub VerrouMenu(niv As Integer) Dim Util As String 'RW/administrateur? With forms![frm_menu] .txt_donnee.Visible = False .CreerForm.Enabled = False .FDep_Ouvrir.Enabled = False .FDep_Ouvrir.QuickStyle = 22 .FHS_Ouvrir.Enabled = False .FHS_Ouvrir.QuickStyle = 22 .EFD_Ouvrir.Enabled = False .EFD_Ouvrir.QuickStyle = 22 .exportPeriple.Enabled = False .exportPeriple.QuickStyle = 22 .CmdImpr.Enabled = False .EnregPDF.Enabled = False .BordEFD.Enabled = False .BordHS.Enabled = False .BordHSImpr.Enabled = False .BordEFDImpr.Enabled = False .BordHSpdf.Enabled = False .BordEFDpdf.Enabled = False .ValidForm.Enabled = False .InvalidForm.Enabled = False .DonneesAgentValide.Enabled = False .BaremeValide.Enabled = False .etiq_nodata.Visible = False .Edition.Visible = False If acces(CurrentUser) < 2 Then .InvalidForm.Visible = False If acces(CurrentUser) < 2 Then .Administration.Visible = False Select Case niv Case 0 'verrouillage total (par exemple pendant un traitement de données) Case 5 'mois et année selectionnés, mais pas l'agent .BaremeValide.Enabled = True Case 6 'pas d'agent selectionné, des données importées pour ce mois .BaremeValide.Enabled = True .BordEFD.Enabled = True .BordHS.Enabled = True .BordHSImpr.Enabled = True .BordEFDImpr.Enabled = True .BordHSpdf.Enabled = True .BordEFDpdf.Enabled = True Case 1 'pas de données pour ce mois .etiq_nodata.Visible = True .DonneesAgentValide.Enabled = True .BaremeValide.Enabled = True Case 2 'données importées mais pas analysées .txt_donnee.Visible = True If acces(CurrentUser) >= 1 Then forms![frm_menu].CreerForm.Enabled = True .BordEFD.Enabled = True .BordHS.Enabled = True .DonneesAgentValide.Enabled = True .BaremeValide.Enabled = True .BordHSImpr.Enabled = True .BordEFDImpr.Enabled = True .BordHSpdf.Enabled = True .BordEFDpdf.Enabled = True .exportPeriple.Enabled = True .exportPeriple.QuickStyle = 21 Case 3 'données importées, analysées, pas validées .txt_donnee.Visible = True If acces(CurrentUser) >= 1 Then forms![frm_menu].CreerForm.Enabled = True .FDep_Ouvrir.Enabled = True .FDep_Ouvrir.QuickStyle = 21 .FHS_Ouvrir.Enabled = True .FHS_Ouvrir.QuickStyle = 21 .EFD_Ouvrir.Enabled = True .EFD_Ouvrir.QuickStyle = 21 .BordEFD.Enabled = True .BordHS.Enabled = True If acces(CurrentUser) >= 1 Then forms![frm_menu].ValidForm.Enabled = True .DonneesAgentValide.Enabled = True .BaremeValide.Enabled = True .BordHSImpr.Enabled = True .BordEFDImpr.Enabled = True .BordHSpdf.Enabled = True .BordEFDpdf.Enabled = True .exportPeriple.Enabled = True .exportPeriple.QuickStyle = 21 Case 4 'données importées, analysées, et validées If acces(CurrentUser) = 2 Then .InvalidForm.Visible = True If acces(CurrentUser) = 2 Then .InvalidForm.Enabled = True .txt_donnee.Visible = True .FDep_Ouvrir.Enabled = True .FDep_Ouvrir.QuickStyle = 21 .FHS_Ouvrir.Enabled = True .FHS_Ouvrir.QuickStyle = 21 .EFD_Ouvrir.Enabled = True .EFD_Ouvrir.QuickStyle = 21 If acces(CurrentUser) >= 1 Then .CmdImpr.Enabled = True If acces(CurrentUser) >= 1 Then .EnregPDF.Enabled = True .BordEFD.Enabled = True .BordHS.Enabled = True .DonneesAgentValide.Enabled = True .BaremeValide.Enabled = True .BordHSImpr.Enabled = True .BordEFDImpr.Enabled = True .BordHSpdf.Enabled = True .BordEFDpdf.Enabled = True .exportPeriple.Enabled = True .exportPeriple.QuickStyle = 21 End Select End With End Sub Public Sub VerrouMAJAgent(niv As Integer) 'gestion des verrouillages du formulaire frm_MAJAgent forms![frm_MAJAgent].DateInf.Locked = True forms![frm_MAJAgent].NvelleDate.Locked = True forms![frm_MAJAgent].CopieAnc.Locked = True forms![frm_MAJAgent].CodeAgent.Locked = True forms![frm_MAJAgent].Nom.Locked = True forms![frm_MAJAgent].Grade.Locked = True forms![frm_MAJAgent].Catégorie.Locked = True forms![frm_MAJAgent].RémunérationBase.Locked = True forms![frm_MAJAgent].Groupe.Locked = True forms![frm_MAJAgent].Matricule.Locked = True forms![frm_MAJAgent].TypeVehicule.Locked = True forms![frm_MAJAgent].DateAutorisationVP.Locked = True forms![frm_MAJAgent].PuissanceFiscVP.Locked = True forms![frm_MAJAgent].NbKmAutorisesVP.Locked = True forms![frm_MAJAgent].ResidenceAdmin.Locked = True forms![frm_MAJAgent].ResidenceFamiliale.Locked = True forms![frm_MAJAgent].Telephone.Locked = True forms![frm_MAJAgent].TypeVirement.Locked = True forms![frm_MAJAgent].txt_ancdate.Visible = True forms![frm_MAJAgent].txt_nvdate.Visible = True forms![frm_MAJAgent].txt_copie.Visible = True forms![frm_MAJAgent].txt_edition.Visible = False forms![frm_MAJAgent].CmdOK.Enabled = False Select Case niv Case 0 'mise à jour du formulaire: déverouillage total forms![frm_MAJAgent].DateInf.Locked = False forms![frm_MAJAgent].NvelleDate.Locked = False forms![frm_MAJAgent].CopieAnc.Locked = False forms![frm_MAJAgent].CodeAgent.Locked = False forms![frm_MAJAgent].Nom.Locked = False forms![frm_MAJAgent].Grade.Locked = False forms![frm_MAJAgent].Catégorie.Locked = False forms![frm_MAJAgent].RémunérationBase.Locked = False forms![frm_MAJAgent].Groupe.Locked = False forms![frm_MAJAgent].Matricule.Locked = False forms![frm_MAJAgent].TypeVehicule.Locked = False forms![frm_MAJAgent].DateAutorisationVP.Locked = False forms![frm_MAJAgent].PuissanceFiscVP.Locked = False forms![frm_MAJAgent].NbKmAutorisesVP.Locked = False forms![frm_MAJAgent].ResidenceAdmin.Locked = False forms![frm_MAJAgent].ResidenceFamiliale.Locked = False forms![frm_MAJAgent].Telephone.Locked = False forms![frm_MAJAgent].TypeVirement.Locked = False Case 1 'ouverture du form, tout est verrouillé sauf la date de début de la nouvelle période et l'option copie des anciennes données If acces(CurrentUser) >= 1 Then forms![frm_MAJAgent].NvelleDate.Locked = False If acces(CurrentUser) >= 1 Then forms![frm_MAJAgent].CopieAnc.Locked = False If acces(CurrentUser) >= 1 Then forms![frm_MAJAgent].CmdOK.Enabled = True Case 2 'renseignement des nouvelles données forms![frm_MAJAgent].txt_ancdate.Visible = False forms![frm_MAJAgent].txt_nvdate.Visible = False forms![frm_MAJAgent].txt_copie.Visible = False forms![frm_MAJAgent].NvelleDate.Visible = False forms![frm_MAJAgent].CopieAnc.Visible = False forms![frm_MAJAgent].CmdOK.Visible = False forms![frm_MAJAgent].txt_edition.Visible = True forms![frm_MAJAgent].Grade.Locked = False forms![frm_MAJAgent].Catégorie.Locked = False forms![frm_MAJAgent].RémunérationBase.Locked = False forms![frm_MAJAgent].Groupe.Locked = False forms![frm_MAJAgent].Matricule.Locked = False forms![frm_MAJAgent].TypeVehicule.Locked = False forms![frm_MAJAgent].DateAutorisationVP.Locked = False forms![frm_MAJAgent].PuissanceFiscVP.Locked = False forms![frm_MAJAgent].NbKmAutorisesVP.Locked = False forms![frm_MAJAgent].ResidenceAdmin.Locked = False forms![frm_MAJAgent].ResidenceFamiliale.Locked = False forms![frm_MAJAgent].Telephone.Locked = False forms![frm_MAJAgent].TypeVirement.Locked = False End Select End Sub Public Sub VerrouMAJbareme(niv As Integer) 'gestion des verrouillages du formulaire frm_MAJBareme forms![frm_MAJBareme].DateInf.Locked = True forms![frm_MAJBareme].NvelleDate.Locked = True forms![frm_MAJBareme].CopieAnc.Locked = True forms![frm_MAJBareme].BorneInf.Locked = True forms![frm_MAJBareme].BorneSup.Locked = True forms![frm_MAJBareme].UniteBornes.Locked = True forms![frm_MAJBareme].Valeur.Locked = True forms![frm_MAJBareme].UniteValeur.Locked = True forms![frm_MAJBareme].txt_ancdate.Visible = True forms![frm_MAJBareme].txt_nvdate.Visible = True forms![frm_MAJBareme].txt_copie.Visible = True forms![frm_MAJBareme].txt_edition.Visible = False forms![frm_MAJBareme].CmdOK.Enabled = False forms![frm_MAJBareme].InserLigne.Visible = False forms![frm_MAJBareme].SupprLigne.Visible = False Select Case niv Case 0 'mise à jour du formulaire: déverouillage total forms![frm_MAJBareme].DateInf.Locked = False forms![frm_MAJBareme].NvelleDate.Locked = False forms![frm_MAJBareme].CopieAnc.Locked = False forms![frm_MAJBareme].BorneInf.Locked = False forms![frm_MAJBareme].BorneSup.Locked = False forms![frm_MAJBareme].UniteBornes.Locked = False forms![frm_MAJBareme].Valeur.Locked = False forms![frm_MAJBareme].UniteValeur.Locked = False Case 1 'ouverture du form, tout est verrouillé sauf la date de début de la nouvelle période et l'option copie des anciennes données If acces(CurrentUser) >= 1 Then forms![frm_MAJBareme].NvelleDate.Locked = False If acces(CurrentUser) >= 1 Then forms![frm_MAJBareme].CopieAnc.Locked = False If acces(CurrentUser) >= 1 Then forms![frm_MAJBareme].CmdOK.Enabled = True Case 2 'renseignement des nouvelles données forms![frm_MAJBareme].BorneInf.Locked = False forms![frm_MAJBareme].BorneSup.Locked = False forms![frm_MAJBareme].Valeur.Locked = False forms![frm_MAJBareme].UniteBornes.Locked = False forms![frm_MAJBareme].UniteValeur.Locked = False forms![frm_MAJBareme].txt_ancdate.Visible = False forms![frm_MAJBareme].txt_nvdate.Visible = False forms![frm_MAJBareme].txt_copie.Visible = False forms![frm_MAJBareme].NvelleDate.Visible = False forms![frm_MAJBareme].CopieAnc.Visible = False forms![frm_MAJBareme].CmdOK.Visible = False forms![frm_MAJBareme].InserLigne.Visible = True forms![frm_MAJBareme].SupprLigne.Visible = True forms![frm_MAJBareme].txt_edition.Visible = True End Select End Sub Public Sub VerrouSfrmDetailBareme(frm As Object, niv As Integer) With frm If acces(CurrentUser) = 0 Then .MAJBareme.Visible = False End If .[sfrm_detailbareme].Form.Valeur.SetFocus 'un contrôle doit être actif, et rester visible .[sfrm_detailbareme].Form.NomBareme.Visible = False .[sfrm_detailbareme].Form.BorneInf.Visible = False .[sfrm_detailbareme].Form.BorneSup.Visible = False .[sfrm_detailbareme].Form.De.Visible = False .[sfrm_detailbareme].Form.A.Visible = False .[sfrm_detailbareme].Form.UniteBornes.Visible = False .[sfrm_detailbareme].Form.UniteValeur.Visible = False .[sfrm_detailbareme].Form.par.Visible = False Select Case niv Case 0 'pas de données Case 1 'le barême est un simple coefficient 'ex: tarif des repas .[sfrm_detailbareme].Form.par.Visible = True .[sfrm_detailbareme].Form.UniteBornes.Visible = True .[sfrm_detailbareme].Form.NomBareme.Visible = True .[sfrm_detailbareme].Form.UniteValeur.Visible = True Case 2 'barême (ex: frais kilométriques) .[sfrm_detailbareme].Form.NomBareme.Visible = True .[sfrm_detailbareme].Form.BorneInf.Visible = True .[sfrm_detailbareme].Form.BorneSup.Visible = True .[sfrm_detailbareme].Form.De.Visible = True .[sfrm_detailbareme].Form.A.Visible = True .[sfrm_detailbareme].Form.UniteBornes.Visible = True .[sfrm_detailbareme].Form.UniteValeur.Visible = True End Select End With End Sub Public Sub VerrouNouvelAgent() 'gestion des verrouillages du formulaire frm_NouvelAgent End Sub Public Sub VerrouDonneesImport(niv As Integer) Select Case niv Case 0 ' pas de verouillage forms![frm_donneesRH].strEquipesLibelle.Enabled = True forms![frm_donneesRH].DateRH.Enabled = True forms![frm_donneesRH].CodeChantier.Enabled = True forms![frm_donneesRH].CodeLocalisation.Enabled = True 'Forms![frm_donneesRH].Localisation.Enabled = True forms![frm_donneesRH].strCategorieInterventionId.Enabled = True forms![frm_donneesRH].HeureSup1.Enabled = True forms![frm_donneesRH].HeureSup2.Enabled = True forms![frm_donneesRH].HeureSupDimanche.Enabled = True forms![frm_donneesRH].Repas.Enabled = True forms![frm_donneesRH].DistanceTranche1.Enabled = True forms![frm_donneesRH].VehiculePersoTranche1.Enabled = True forms![frm_donneesRH].DistanceTranche2.Enabled = True forms![frm_donneesRH].VehiculePersoTranche2.Enabled = True forms![frm_donneesRH].FichierXml.Enabled = True Case 1 ' verrouillage forms![frm_donneesRH].strEquipesLibelle.Enabled = False forms![frm_donneesRH].DateRH.Enabled = False forms![frm_donneesRH].CodeChantier.Enabled = False forms![frm_donneesRH].CodeLocalisation.Enabled = False 'Forms![frm_donneesRH].Localisation.Enabled = False forms![frm_donneesRH].strCategorieInterventionId.Enabled = False forms![frm_donneesRH].HeureSup1.Enabled = False forms![frm_donneesRH].HeureSup2.Enabled = False forms![frm_donneesRH].HeureSupDimanche.Enabled = False forms![frm_donneesRH].Repas.Enabled = False forms![frm_donneesRH].DistanceTranche1.Enabled = False forms![frm_donneesRH].VehiculePersoTranche1.Enabled = False forms![frm_donneesRH].DistanceTranche2.Enabled = False forms![frm_donneesRH].VehiculePersoTranche2.Enabled = False forms![frm_donneesRH].FichierXml.Enabled = False End Select End Sub