Can't see "Form View" or "Layout View"

M

Miss Teacher

I have a form that, upon opening, does not throw an error, but does open to
form view blank - all I see is a white screen. Changing to Layout View also
displays a white screen. I am able to view and work in Design View fine. The
form is a 6-tabbed form.

Access did throw a "wobbly" and close down inadvertently whilst I was
editing it. I have set Access up to compact and repair on closing (and I did
it also immediately upon opening Access next time), but, alas, to no avail.

What could have happened? What might the problem be? How can I fix it?
 
M

Miss Teacher

Hey Mike!

I did discover that page in my travels :). As far as I can see, none of
those things apply to my form, unless there is a way to make it 'read-only'
that I'm not aware of??

I haven't set up any database manipulation yet, except for one unbound combo
box (which was set up way prior to this problem). Many of the tables that are
bound to form objects are empty of records, but that has never been a problem
before. Nor would I think simply binding a form object to a table would
render "Form View" disabled - otherwise no-one would be able to see their
form after binding objects.

I'm still no wiser :). Any other ideas?
 
R

Rick Brandt

Hey Mike!

I did discover that page in my travels :). As far as I can see, none of
those things apply to my form, unless there is a way to make it
'read-only' that I'm not aware of??

I haven't set up any database manipulation yet, except for one unbound
combo box (which was set up way prior to this problem). Many of the
tables that are bound to form objects are empty of records, but that has
never been a problem before. Nor would I think simply binding a form
object to a table would render "Form View" disabled - otherwise no-one
would be able to see their form after binding objects.

I'm still no wiser :). Any other ideas?

Open your form in design view and take note of exactly what is in the
RecordSource property. Post that here.
 
M

Miss Teacher

Hey Rick,

Thanks for your time. Here is the Record Source from that one unbound field:

SELECT [Term Plans].TermID, [Term Plans].PlanName, [Term Plans].TermYear,
[Term Plans].TermNumber
FROM [Term Plans]
ORDER BY [Term Plans].TermYear DESC , [Term Plans].TermNumber DESC;

....but the table "Term Plans" has 36 records in it. I have 2 other tabs set
up with bound fields but no other pull of data from the database. My other
data form properties are as follows:

Recordset Type: Dynaset
Fetch Defaults: Yes
Filter On Load: No
Order By On Load: Yes
Data Entry: Yes
Allow Additions: Yes
Allow Deletions: Yes
Allow Edits: Yes
Allow Filters: Yes
Rcords Locks: No Locks
 
R

Rick Brandt

Hey Rick,

Thanks for your time. Here is the Record Source from that one unbound
field:

I asked for the RecordSource of your form. Is that what you posted?
SELECT [Term Plans].TermID, [Term Plans].PlanName, [Term
Plans].TermYear, [Term Plans].TermNumber
FROM [Term Plans]
ORDER BY [Term Plans].TermYear DESC , [Term Plans].TermNumber DESC;

...but the table "Term Plans" has 36 records in it. I have 2 other tabs
set up with bound fields but no other pull of data from the database. My
other data form properties are as follows:

Recordset Type: Dynaset
Fetch Defaults: Yes
Filter On Load: No
Order By On Load: Yes
Data Entry: Yes
Allow Additions: Yes
Allow Deletions: Yes
Allow Edits: Yes
Allow Filters: Yes
Rcords Locks: No Locks

Assuming this is your form's RecordSource is Term Plans a local table or
a linked one? Since you have DataEntry set to true the form should not
show any data, but you should see the controls on the New Record position.
 
M

Miss Teacher

Hey Rick!

Thanks for your reply.

Sorry! I'm a spanking beginner - didn't know there was a record source for
the the 'form'. What I posted you was the only query I had set up as yet in
this form (the form has 6 tabs and I had only set up for the first tab as
yet). Most of the form is actually display (so will be read only)- the data
is actually being entered on forms opening from this one. In a way, it is
like a control form, hence most of this is simply bound fields. Here is the
FORMS record source:

SELECT [Term Plans].PlanName, [Term Plans].TermYear, [Term
Plans].TermNumber, [Term Plans].TermID, [Curriculum
Choices].CurriculumChoicesID, [Detailed Elements].ShortElements,
CriteriaSheet.AssessmentsIDF, CriteriaSheet.CriteriaA,
CriteriaSheet.CriteriaB, CriteriaSheet.CriteriaC, CriteriaSheet.CriteriaD,
CriteriaSheet.CriteriaE, CriteriaSheet.Criteria1, CriteriaSheet.Criteria2,
CriteriaSheet.Criteria3, CriteriaSheet.Criteria4, CriteriaSheet.Criteria5,
CriteriaSheet.Criteria6, Assessments.AssessmentName,
Assessments.AssessmentYear, Assessments.AssessmentType,
Assessments.DateImplemented, Assessments.DateDue
FROM [Term Plans] INNER JOIN (([Detailed Elements] INNER JOIN Assessments ON
[Detailed Elements].DetailedElementsID = Assessments.DetailedElementsIDF)
INNER JOIN (CriteriaSheet INNER JOIN [Curriculum Choices] ON
CriteriaSheet.AssessmentsIDF = [Curriculum Choices].AssessmentsIDF) ON
[Detailed Elements].DetailedElementsID = [Curriculum
Choices].DetailedElementsIDF) ON [Term Plans].TermID = [Curriculum
Choices].TermIDF;

The "Term Plans" table is one of many tables I have created within this
project. I think that means that it is a local one. Am I correct in assuming
that a linked table is joined from another project file? (sorry, brand new
beginner ;-)).

I really appreciate your time and help :).

Rick Brandt said:
Hey Rick,

Thanks for your time. Here is the Record Source from that one unbound
field:

I asked for the RecordSource of your form. Is that what you posted?
SELECT [Term Plans].TermID, [Term Plans].PlanName, [Term
Plans].TermYear, [Term Plans].TermNumber
FROM [Term Plans]
ORDER BY [Term Plans].TermYear DESC , [Term Plans].TermNumber DESC;

...but the table "Term Plans" has 36 records in it. I have 2 other tabs
set up with bound fields but no other pull of data from the database. My
other data form properties are as follows:

Recordset Type: Dynaset
Fetch Defaults: Yes
Filter On Load: No
Order By On Load: Yes
Data Entry: Yes
Allow Additions: Yes
Allow Deletions: Yes
Allow Edits: Yes
Allow Filters: Yes
Rcords Locks: No Locks

Assuming this is your form's RecordSource is Term Plans a local table or
a linked one? Since you have DataEntry set to true the form should not
show any data, but you should see the controls on the New Record position.
 
R

Rick Brandt

Hey Rick!

Thanks for your reply.

Sorry! I'm a spanking beginner - didn't know there was a record source
for the the 'form'. What I posted you was the only query I had set up as
yet in this form (the form has 6 tabs and I had only set up for the
first tab as yet).

A bound form is simply a GUI to a table or query it is bound to. Each
record in the form is tied to a row in that table or query. Whatever you
do to the data in the table/query will be reflected in the form and vice-
versa. Tabs do not have RecordSources. Only reports and forms do.
ComboBoxes and ListBoxes have RowSource properties that are used to
populate the list they display, but that is different from a RecordSource.
Most of the form is actually display (so will be read
only)- the data is actually being entered on forms opening from this
one. In a way, it is like a control form, hence most of this is simply
bound fields. Here is the FORMS record source:

SELECT [Term Plans].PlanName, [Term Plans].TermYear, [Term
Plans].TermNumber, [Term Plans].TermID, [Curriculum
Choices].CurriculumChoicesID, [Detailed Elements].ShortElements,
CriteriaSheet.AssessmentsIDF, CriteriaSheet.CriteriaA,
CriteriaSheet.CriteriaB, CriteriaSheet.CriteriaC,
CriteriaSheet.CriteriaD, CriteriaSheet.CriteriaE,
CriteriaSheet.Criteria1, CriteriaSheet.Criteria2,
CriteriaSheet.Criteria3, CriteriaSheet.Criteria4,
CriteriaSheet.Criteria5, CriteriaSheet.Criteria6,
Assessments.AssessmentName, Assessments.AssessmentYear,
Assessments.AssessmentType, Assessments.DateImplemented,
Assessments.DateDue FROM [Term Plans] INNER JOIN (([Detailed Elements]
INNER JOIN Assessments ON [Detailed Elements].DetailedElementsID =
Assessments.DetailedElementsIDF) INNER JOIN (CriteriaSheet INNER JOIN
[Curriculum Choices] ON CriteriaSheet.AssessmentsIDF = [Curriculum
Choices].AssessmentsIDF) ON [Detailed Elements].DetailedElementsID =
[Curriculum Choices].DetailedElementsIDF) ON [Term Plans].TermID =
[Curriculum Choices].TermIDF;

Your are using a query with multiple tables and that will often result in
a result set that is read-only. The more tables you include the more
likely the result will be read-only. With the number of tables you are
including it is virtually certain to give that result.

So, your form cannot add new records (read-only RecordSource) and you are
hiding all existing records by using DataEntry = true. Thus a blank
detail section.

If you want to use a form for multiple tables AND you want to make edits
with that form you should use a form with subforms, each bound to ONE
table (or query based on one table). Trying to pull all your data into
one big catch-all query is okay for reports, but is seldom useful for
forms.
 
M

Miss Teacher

Hey Rick!

Sorry for the tardy replies - I'm getting a lot of "Error on Page" problems
that don't allow me to view any posts except the first. I keep trying and
eventually get in :).

Thanks Rick. Unfortunately, this is the display control to my project. There
are 6 tabs (only 3 tabs worked on so far). Each tab opens a new form where
information is entered. They close the form to find this form updated. That's
what I'm aiming for.

OK. If I have the same 6 tabs, but place all my information and controls on
subforms and past the subforms on this form, will that work around this
problem? So it can all happen VIA the one form? Thanks for your help :).

Rick Brandt said:
Hey Rick!

Thanks for your reply.

Sorry! I'm a spanking beginner - didn't know there was a record source
for the the 'form'. What I posted you was the only query I had set up as
yet in this form (the form has 6 tabs and I had only set up for the
first tab as yet).

A bound form is simply a GUI to a table or query it is bound to. Each
record in the form is tied to a row in that table or query. Whatever you
do to the data in the table/query will be reflected in the form and vice-
versa. Tabs do not have RecordSources. Only reports and forms do.
ComboBoxes and ListBoxes have RowSource properties that are used to
populate the list they display, but that is different from a RecordSource.
Most of the form is actually display (so will be read
only)- the data is actually being entered on forms opening from this
one. In a way, it is like a control form, hence most of this is simply
bound fields. Here is the FORMS record source:

SELECT [Term Plans].PlanName, [Term Plans].TermYear, [Term
Plans].TermNumber, [Term Plans].TermID, [Curriculum
Choices].CurriculumChoicesID, [Detailed Elements].ShortElements,
CriteriaSheet.AssessmentsIDF, CriteriaSheet.CriteriaA,
CriteriaSheet.CriteriaB, CriteriaSheet.CriteriaC,
CriteriaSheet.CriteriaD, CriteriaSheet.CriteriaE,
CriteriaSheet.Criteria1, CriteriaSheet.Criteria2,
CriteriaSheet.Criteria3, CriteriaSheet.Criteria4,
CriteriaSheet.Criteria5, CriteriaSheet.Criteria6,
Assessments.AssessmentName, Assessments.AssessmentYear,
Assessments.AssessmentType, Assessments.DateImplemented,
Assessments.DateDue FROM [Term Plans] INNER JOIN (([Detailed Elements]
INNER JOIN Assessments ON [Detailed Elements].DetailedElementsID =
Assessments.DetailedElementsIDF) INNER JOIN (CriteriaSheet INNER JOIN
[Curriculum Choices] ON CriteriaSheet.AssessmentsIDF = [Curriculum
Choices].AssessmentsIDF) ON [Detailed Elements].DetailedElementsID =
[Curriculum Choices].DetailedElementsIDF) ON [Term Plans].TermID =
[Curriculum Choices].TermIDF;

Your are using a query with multiple tables and that will often result in
a result set that is read-only. The more tables you include the more
likely the result will be read-only. With the number of tables you are
including it is virtually certain to give that result.

So, your form cannot add new records (read-only RecordSource) and you are
hiding all existing records by using DataEntry = true. Thus a blank
detail section.

If you want to use a form for multiple tables AND you want to make edits
with that form you should use a form with subforms, each bound to ONE
table (or query based on one table). Trying to pull all your data into
one big catch-all query is okay for reports, but is seldom useful for
forms.
 
R

Rick Brandt

Hey Rick!

Sorry for the tardy replies - I'm getting a lot of "Error on Page"
problems that don't allow me to view any posts except the first. I keep
trying and eventually get in :).

Thanks Rick. Unfortunately, this is the display control to my project.
There are 6 tabs (only 3 tabs worked on so far). Each tab opens a new
form where information is entered. They close the form to find this form
updated. That's what I'm aiming for.

OK. If I have the same 6 tabs, but place all my information and controls
on subforms and past the subforms on this form, will that work around
this problem? So it can all happen VIA the one form? Thanks for your
help :).

If you are always using other forms to do the actual updating and only
want to use this master form for display, then you should be able to get
it to work. You will have to Requery your main form after edits are done
in any other form affecting the data on the main form.

However; at least one table will need to be set as the master table.
Your query would then use LEFT OUTER JOINs to all of the other tables.
That way you will see rows from the master table even if the other tables
don't have data yet. The way your query is written now (with INNER
JOINS) means every table must have a matching row before you will get a
row in your output.

While technically possible, the design you are attempting is not
something that a new user to Access should be attempting. You are setting
up multiple obstructions to overcome that a more traditional approach
would not have.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top