I have three linked dimensions (say color, type, and size of an animal) linked by a fact table.
I would like to create a form with these three dimension choices in combo boxes, so when I select one for a new record, the other two combo boxes refresh with only available values.
For instance, if I select a dog as a type, the color would show (white, black, orange) but not green, if I select size small, the type will not include a whale, etc.
I know i can do in VBA but would like ideally to avoid writing code for this.
This is sometimes referred to as known as Cascading combo boxes, have a read here for one technique http://www.baldyweb.com/CascadingCombo.htm
Related
I'm creating a plant database and in the plant detail form, I'd like a dropdown so the user can select the color the plant is, ultimately this would go on a summary report so all of the colors of the plants selected would show and the user can get an idea of what the plant colors would look like planted.
I'm using the Color Index of 56 colors and I made a table with colors (1-56) and used conditional formatting, but conditional formatting only goes to 50, plus I'm not sure on how to get only the color to show on the dropdown.
Here is idea how to display unlimited number of colors in continuous form or report without using conditional formatting:
Create a table, which contains color ID and a column with stored pictures of desired colors, one pixel is enough, each color in separate row. Column data type - OLE Object, insert Bitmap Image with color sample.
Join this table with your main table by color ID column
Display colors in picture control Bound Object Frame, Size Mode should be Stretch or Zoom, one pixel picture will be tiled across whole picture control
Built-in dropdown cannot show color samples, but you can replace dropdown by form with desired samples, it's not complicated.
My form has a button "Process files", and when pressed, nested VBA procedures will be executed and a subform will display a table of ids and their associated results. My question is in order to display a table with mutliple rows in a format that resembles something similar to a datasheet do I create the subform with the Multiple Items Form or the Datasheet form. Some more specifications on the subform are:
Form Properties
Name: fsubInstrumentInterfaceLog; Default View: Continuous; Record Selectors: Yes; Navigation Buttons: Yes; Scrollbars: Vertical
Header, Detail, Footer
Header: Column headings
Detail: One row of data fields. fields set to Enabled = Yes; Locked = Yes.
Container Properties
Insert this form into frmInstrumentInterface with Subform/Subreport control
Parent-Child Link: Link Master Fields: BatchID, cboInstrument; Link Child Fields: BatchID, InstrumentName
Special Effect: Etched
Here are my thoughts between both styles of continuous forms.
Datasheets forms
Resemble Access tables and Excel spreadsheets.
Can be very wide or long with no limit (to my knowledge).
Individual rows and columns width and height dimensions are adjustable by user (not limited to designer).
Does not contain editable form headers/footers. However, datasheets do allow footer aggregates (Sum, Avg, Count, etc.)
Conditional formatting can be applied.
All trigger events by field controls can be applied.
Limited GUI objects and their events can be integrated (no labels, buttons, or list boxes, etc.). Combo boxes can be added though. But this may not matter if you use a main form.
Special effects, back color, border color, and other control designs not allowed.
Controls can be locked from user changes.
Record selectors highlight entire row like spreadsheet.
Navigation controls and scrollbars are enabled.
Parent-Child links can be established like any other subform/subreport.
Multiple item forms
Resembles a row by row form view of the data.
Limited to 22 inches in width and height.
Individual row and columns width and height dimensions are not adjustable by user but limited to designer.
Does contain editable form header/footer.
Conditional formatting can be applied.
All trigger events by field names can be applied.
Any GUI objects and their events can be integrated (labels, buttons, drop down fields, etc.). But this may not matter if you use a main form.
Special effects, back color, border color, and other control designs are enabled.
Controls can be locked from user changes.
Record selector limited to arrow at far left of record.
Navigation controls and scrollbars are enabled.
Parent-Child links can be established like any other subform/subreport.
Overall, both operate very similarly. For me the choice depends on functionality of your form and subform combination. Multiple item forms provide a more natural user interface that be consistent with other forms. Datasheets can disrupt such a UI but they are easy setup for large volume.
I am attempting to reproduce a form within SSRS and fill it with data. The original form has blocks with small labels inside of each box that identifies the entry requested.
I "thought" I could simply use two different tablixes: one for the blocks with borders and labels, and the other one with the actual datafields or expressions, and align the 2nd tablix directly over the first one so that it appears as though the fields are presenting data inside of the labeled boxes.
It looked as I wanted it in design view, but when I went to preview the report, it pushed the 2nd tablix below the first tablix, in effect creating two tablixes, one stacked on top of the other one (not displaying as how I intended).
So, how do I accomplish the form design in the manner that I am seeking?
You should be using a type other than tablix for your report. Use a 'List' instead and you can free float objects as you need them and also nest a tablix as well. A little explanation on list:
You can float images with text boxes and then even change syntax or draw boxes around them and decorate those.
The call out for a field in SSRS is [(value)] with the [] meaning: "Data Column in recognized Dataset"
You can call out Variables with an '#' in front of them [#Test] would be a variable a user would put in called 'Test'.
Whatever size 'List' element is will determine how large it is when it repeats. If you want a strict form ensure the length and width are set correctly on the properties of that element.
If you want it to break every page you can click on the 'List' > Right Click the top left corner > Properties > 'Add a page break before' checkbox.
My example shows a super simple textbox with a dataset that only has three ideas repeat as many times as there are id's, three times. You can apply this to your form as needed.
It looks like you could reproduce that form header quite easily with a single tablix. If you envisage the form as a set of tablix cells like so:
then all you need to do is set the Border properties for each cell to hide the borders as needed (or you could merge the cells e.g those for Applicant and Location).
You can use a tablix with only Header rows, deleting the detail row. If you need multiple forms per report, then put the tablix inside a List region.
Is there a way to create a multicolumn listbox in html that will properly align each of the columns so that everything is lined up vertically with a column header? for example:
Plate State Make Model Year Color
G655555 IL Mercury Montago 2007 Black
G655555 IL Ford Windstar 2007 Grey
instead of
Plate State Make Model Year Color
G655555 IL Mercury Montago 2007 Black
G655555 IL Ford Windstar 2007 Grey
I am using a listbox instead of a table because I want to be able to select the data that is being displayed. I am not sure if I can do that with a table. So either way, can someone show me how to align the listbox columns OR can I see a method of selecting items, by row instead of column, in a table.
No. Browsers prefer to match the OS on most inputs interfaces. And most browsers ignore HTML and CSS inside an OPTION tag. You might be able to set the font to monospace on the SELECT or OPTION tag.
I think that there may be better ways to build the UI that you want... I also have to question why someone would want to put six data fields into one form value on a list box.
If you're showing tabular data, then use a table. If you want to select a row, then add a checkbox (for multiple selections) or a radio button (for an exclusive choice) to each row.
in Access 2007 how can I display text fields in drop down list while bundling to an ID? not while selecting (we can do this by plying with the width field. but what I need after selecting?
Do we create a hidden field that stores the ID?
Your description of how a combo box works is correct. Keep in mind that while you're setting the first column and display length to zero, that means the combo box will then search by the second text column. The combo box will display by that second text column after you select a value. In fact in all cases for typing in a value, even partial matching as you type, a simple select of a value will ALL BE done by the displayed text column but in ALL CASES it will save the actual ID (the first column) into the table that the form is bound to.
So no additional coding or anything if need be done on your part to achieve the above goal and in fact this is pretty much the default as to how combo boxes work inside of ms access.
What makes the combo box is somewhat unique inside of Access is you can have more then 2 columns. And, in the combo box settins you can choose what column is to be selected and saved into the table. And, the combo box has both before update (with a cancel), and after update and also a Not in List event that fires in the case of a user tyring to type in a value that not in the list.
So, the Access combo box is quite flexible. The source for the list or members displayed in the combo box can be based on a table, on a query, or you can even type in a value list that is saved inside of the property sheet. And, another option is to fill the combo box is by using call backs (so, again quite a few ways to fill out the list of memebers for selectiogn).
So, keep in mind there is two aspects to the combo box. There's a so called row data source or how you feed the members that will display in the combo box. Then there is the underlying column (field) that you bind that control to when you select a value. That is in the case when the combo box is bound.
As mentioned, the bound column setting is another property in terms of inside the combo box, and you don't need to write any additional code to achieve that above goal in your question.
Albert Thank you for this excellent explanation.
I found out that the bound column has no effect. Acces take the first visible field and bound to it regardless of what you have in the bound column property.
All good thanks
Omar ( hostitwise.com)