[AccessD] A strange situation

William Hindman wdhindman at dejpolsystems.com
Fri Apr 30 15:32:16 CDT 2010


...more than that, why use 32 checkboxes at all? ...just strikes me as a 
clumsy user interface ...why not a multi-select listbox or combo that you 
can hide/unhide at will on the main form itself ...give it a Like* search 
box header to avoid long scrolls if needed.

William

--------------------------------------------------
From: "A.D. Tejpal" <adtp at airtelmail.in>
Sent: Friday, April 30, 2010 2:39 PM
To: "Access Developers discussion and problem solving" 
<accessd at databaseadvisors.com>
Subject: Re: [AccessD] A strange situation

> J.C.,
>
>    It is presumed that the subform carrying the check boxes representing 
> various groups is an unbound one, serving as a convenient means for 
> setting permissions, which get stored in bound text boxes on parent form.
>
>    Prima-facie, it should be feasible to accomplish the stated objective 
> without resorting to any tab control. In fact even the subform could be 
> dispensed with and all the unbound check boxes placed on the main form 
> itself.
>
>    As and when any of the pertinent text boxes becomes the active control, 
> the status of check boxes gets synchronized accordingly. Correspondingly, 
> as soon as a check box is clicked, the composite value in pertinent text 
> box gets updated simultaneously, without waiting for any exit from the 
> subform.
>
> Best wishes,
> A.D. Tejpal
> ------------
>
>  ----- Original Message ----- 
>  From: jwcolby
>  To: Access Developers discussion and problem solving
>  Sent: Friday, April 30, 2010 00:18
>  Subject: [AccessD] A strange situation
>
>
>  I have a security system where there are groups of users.  Each group is 
> represented by a bit position in a long integer.  1 = GroupA, 2 = GroupB, 
> 4 = GroupC etc.
>
>  I have a form which has 32 check boxes on it.  These check boxes 
> represent the bit positions in a long integer.  IOW each bit position 
> represents a group.  The form has methods to take a long integer and set / 
> clear the associated check box as well as hide / display check boxes.
>
>  All of that works.
>
>  The form with the check boxes will be a subform on a parent form that 
> allows the user to set security for a specific form.  This parent form 
> displays records in a table.  The records have a form name, and long 
> integer fields for AllowEdit, AllowDelete etc.
>
>  The parent form form thus has five text boxes representing the properties 
> of a form - Visible, AllowEdit, AllowDelete, AllowInsert etc.  Each text 
> box will display a long integer which represents the OR of a set of groups 
> which can perform the operation.
>
>  As I click into one of these text boxes I need to make the "checkbox" 
> subform "visible".  I may click into that subform and click check boxes 
> representing bit positions which are groups that can perform that 
> operation (allowedits etc).
>
>  Or... I may click into another of the text boxes.
>
>  As I click into the text box, the subform displayed has to set / clear 
> the check boxes representing the groups contained in the bit positions of 
> the long integer contained in the text box.
>
>  Simple enough eh?
>
>  The problem is making visible just the subform for the "current" text 
> box.  The only way I can think of to do this is a tab control which is 
> kind of clumsy but works.  Place an instance of the check box subform on a 
> tab, one tab for each property.  As the user clicks into one of the 
> "property" text boxes, the correct tab is selected, displaying the subform 
> for that text box.
>
>  One problem is that as the user clicks OUT of the subform, the check box 
> values have to be rolled back into a long integer and placed into the 
> correct text box for that subform.  The subform itself has a method that 
> performs this rollup and hands back the long integer, the problem is that 
> the OnExit of the subform has to do the placement of the long integer into 
> the associated text box.
>
>  This is turning into a lot of very ugly code in the parent form module. 
> This is begging for a class solution to compartmentalize the code but 
> things are getting intertwined.  OnEnter of the text box has to call its 
> subform and pass it the long integer it contains.  OnExit of the subform 
> control has to know what text box to pass the value back to.  OnEnter of 
> the text box has to select the correct tab of the tab control.
>
>  Whooo doggy, things are getting fun.
>  -- 
>  John W. Colby
>  www.ColbyConsulting.com
> -- 
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
> 




More information about the AccessD mailing list