Filename - name of PRG, form, classlib, menu Class - name of class, only for classes Procedure - name of procedure, function, method DocType - Indicates whether it is a form, etc. Userlevel - To control access rights Department - To control access rights * only the specified departments have access to a program) Caption - One-line caption, to show in a list Description - Longer description, that might appear below a grid or * ListBox if you select a specific line"Department" would have codes for the departments, separated by a convenient separator. For instance, I use a similar approach as part of the VFX framework, and only for forms; I added the "department" part, which was not part of VFX 6. For the department, I use 4-letter codes; for instance: "purc;acco;sale", to indicate that purchases, accounting and sales has access to the specified form; only the forms that contain the user's department (as stored in a variable) are listed in a ListBox. The "File | Open" dialog also makes it possible to categorize forms; I use the three categories "Data forms", "Reports", and "Processes" (the latter have the potential of modifying multiple records at once).
do case case DocType = "P" && Procedure if empty(Procedure) do (Filename) else set procedure to (Filename) additive do (Procedure) endif endcaseYou should adjust a few variable and field names, to avoid conflicts with VFP keywords; for instance, "procedure".