Once the user logs in you can query there user name or authority using several GlobalProps properties as follows:
If GlobalProps.Administrator = True Then ...
or
If GlobalProps.CurrentUser = "JohnS" then ...
For more information the Security Add-In please click here or read the help file that is distributed with the wizards.
2) Global Error Handler
Error handling is a necessary evil of programming in ANY VB environment. All well-developed applications will have error handling code in most if not all of the procedures. The "evil" lies in the fact that VB does not add this error handling code for you. It only create the procedure "stub" (Sub...End Sub) for you so that it is up to the developer to add the error handling.
The Global Error Handler add-ins has two components. The first component, like the Security Add-In described above, adds all the objects that are needed to enable error handling and is installed from the Tools/Add-Ins/Global Error Handler menu item. This will add two(2) objects to your table: A table (usysErrors) which is the where all the errors are logged. (Yes - one of the features of thjs Add-In is that all errors get logged into this table which makes troubleshooting problems much easier.) And a module (basGlobalErrorHandler) which is procedure called by your handlers in order to handle and log the errors.
The second component is a "builder" that is installed by the setup routine. When you create a new procedure the builder will automatically add all of the error handling for it including the call to the Global Error Handler (which logs the error). To execute the builder, right click in the procedure and choose "Build" from the context menu. Now, instead of going straight to the Expression Builder, a selection box will appear. Choose "Global Error Handler" from the list and click OK. The error handling code will be automatically inserted into your procedure.
For more information on the Error Handling Add-Ins or error handling in general please click here or read the help file that is distributed with the wizards.
3)Many-to-Many Wizard
The Many-to-Many Add-In provides a way for developers to quickly and easily create forms that can be used to populate the junction table of a many-to-many table relationship. Normally, populating a junction table requires use of a Main-Form/Sub-Form interface with the junction table being populated by a Combo Box which is in the Sub-Form. (Don't know what I am talking about? Click HERE.) This kind of interface is extremely "kludgy" but it the only option available to non-programmers (unless they use some kind of Add-In such as the one described here.)
You start the Many-To-Many wizards (there are two of them) by selecting either Tools/Add-Ins/M2M CheckBox Wizard or Tools/Add-Ins/M2M ListBox Wizard from the menu. Each of these will step you through a wizard that will create a form for you (that you name at the end) that can then be used to populate the junction table with an form that is easy to use and intuitive. (NOTE: These wizards are the least tested of all of them and you probably WILL find bugs.)
For more information the Many-to-Many wizards or table relationships in general please click here or read the help file that is distributed with the wizards.
4) Name Builder
Microsoft Built-In wizards are very useful but they have one annoying flaw. That is, no naming conventions are used. Naming conventions are commonly used standards that all professional developers use to better manage their code and their projects. Even controls on forms should have standard naming conventions. For example, combo box usually begin with cbo (i.e., cboNames) and text boxes start with txt (i.e. txtAddress). When these conventions are used it makes managing the code associated with the controls easier.
The Microsoft wizards do NOT use these conventions. So when you create a form or report with the wizard, instead of "cboName" or "txtAddress" you get simply get "Name" or "Address". (This can cause some expressions to return #Name instead of the correct value, expecially in reports.) The problem is that it is difficult to remember the standard naming convention prefixes for controls and renaming them can be time consuming.
The Name Builder will correctly prefix a control with the right convention based on its type. To use it (the name builder is installed by the setup program) simply select the control and view its property sheet. Select the Name property from the property sheet. Click on the Build (...) button that is to the right of the property. It will take the current name that is in the property cell and replace it with the same value stripped of spaces and other undesirable text and prefixed with the right three letter convention.
Coming soon: A Name Builder wizard that will rename ALL controls on a new form using proper conventions. Send us an e-mail so that we can notify you when the change is available.
5) Linked Table Manager and other Wizards
Also included with the setup are a Linked Table Manager and other Add-Ins.
...展开收缩