Parameter Error for Year 2010

A

AccessKay

Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 
A

AccessKay

Thanks Karl. It didn't work(syntax errors) but I get your logic.

KARL DEWEY said:
Try it this way --
PARAMETERS [Forms]![frmQtr]![txtEnterYr] Long;
.........
WHERE Year([TransDate]=[Forms]![frmQtr]![txtEnterYr]

--
Build a little, test a little.


AccessKay said:
Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 
J

Jerry Whittle

I've found it best to put any parameters and criteria in another query then
base the crosstab on the first query.

Also I'd have to wonder about using Text for the parameter data type. I'd
rather have it a number and do something like this:

WHERE (((Year([TransDate]))=[Forms]![frmQtr]![txtEnterYr]))

Lastly does the form have a plain text box , combo box, or list box? Is it
bound or something unbound where the user types in the value? You might need
to use the .text or .value something like below expecially if it's a combo
box.

[Forms]![frmQtr]![txtEnterYr].text
 
A

AccessKay

Hi Jerry,
I’m thinking about what you said about using the crosstab query’s Column
Heading to define the fields in my report. How could I do this? I tried to
reference the form under the column heading but received an error message
about it being too complicate to perform…

I also now have some idea about why the year 2010 won’t work with my
form/report. It works with my query when I enter the year in the parameter
(asking for form). But I’m thinking that because I only have data for one
quarter in 2010, that my report doesn’t know how to handle the missing fields
for Q2,Q3,and Q4. Have you had any experience with this?

Here is my SQL again:
PARAMETERS [Forms]![frmQtr]![txtEnterYr] Long;
TRANSFORM Sum(Nz([SumOfLbr_Total_Cost])) AS TotalCost
SELECT qryforTotals.Category, qryforTotals.DGroup,
Sum(Nz([SumOfLbr_Total_Cost])) AS [Total Of SumOfLbr_Total_Cost]
FROM qryforTotals
WHERE (((Year([TransDate]))=[Forms]![frmQtr]![txtEnterYr]))
GROUP BY qryforTotals.Category, qryforTotals.DGroup
PIVOT "Qtr " & Format([TransDate],"q");

Thanks again!


Jerry Whittle said:
Forms and reports based on crosstab queries can be a problem. A crosstab
could produce many fields with different names and a form or report is
expecting just certain fields and names.

If you know all the fields that you want on the form or report, you can use
the crosstab query's Column Headings property to define them. A form or
report will work then.
--
Jerry Whittle, Microsoft Access MVP
Light. Strong. Cheap. Pick two. Keith Bontrager - Bicycle Builder.


AccessKay said:
Thanks for all the useful tips and suggestions. I built the select query and
then based my crosstab on it but I was having problems with my form relating
to the query. I think my brain is shot so I’m going to try again tomorrow.
I appreciate your help.

Jerry Whittle said:
I've found it best to put any parameters and criteria in another query then
base the crosstab on the first query.

Also I'd have to wonder about using Text for the parameter data type. I'd
rather have it a number and do something like this:

WHERE (((Year([TransDate]))=[Forms]![frmQtr]![txtEnterYr]))

Lastly does the form have a plain text box , combo box, or list box? Is it
bound or something unbound where the user types in the value? You might need
to use the .text or .value something like below expecially if it's a combo
box.

[Forms]![frmQtr]![txtEnterYr].text
--
Jerry Whittle, Microsoft Access MVP
Light. Strong. Cheap. Pick two. Keith Bontrager - Bicycle Builder.


:

Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 
J

Jerry Whittle

Forms and reports based on crosstab queries can be a problem. A crosstab
could produce many fields with different names and a form or report is
expecting just certain fields and names.

If you know all the fields that you want on the form or report, you can use
the crosstab query's Column Headings property to define them. A form or
report will work then.
--
Jerry Whittle, Microsoft Access MVP
Light. Strong. Cheap. Pick two. Keith Bontrager - Bicycle Builder.


AccessKay said:
Thanks for all the useful tips and suggestions. I built the select query and
then based my crosstab on it but I was having problems with my form relating
to the query. I think my brain is shot so I’m going to try again tomorrow.
I appreciate your help.

Jerry Whittle said:
I've found it best to put any parameters and criteria in another query then
base the crosstab on the first query.

Also I'd have to wonder about using Text for the parameter data type. I'd
rather have it a number and do something like this:

WHERE (((Year([TransDate]))=[Forms]![frmQtr]![txtEnterYr]))

Lastly does the form have a plain text box , combo box, or list box? Is it
bound or something unbound where the user types in the value? You might need
to use the .text or .value something like below expecially if it's a combo
box.

[Forms]![frmQtr]![txtEnterYr].text
--
Jerry Whittle, Microsoft Access MVP
Light. Strong. Cheap. Pick two. Keith Bontrager - Bicycle Builder.


AccessKay said:
Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 
K

KARL DEWEY

Try it this way --
PARAMETERS [Forms]![frmQtr]![txtEnterYr] Long;
..........
WHERE Year([TransDate]=[Forms]![frmQtr]![txtEnterYr]
 
K

KARL DEWEY

Left off closing parenthesis --
WHERE Year([TransDate]) = [Forms]![frmQtr]![txtEnterYr]

--
Build a little, test a little.


AccessKay said:
Thanks Karl. It didn't work(syntax errors) but I get your logic.

KARL DEWEY said:
Try it this way --
PARAMETERS [Forms]![frmQtr]![txtEnterYr] Long;
.........
WHERE Year([TransDate]=[Forms]![frmQtr]![txtEnterYr]

--
Build a little, test a little.


AccessKay said:
Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 
A

AccessKay

Thanks for all the useful tips and suggestions. I built the select query and
then based my crosstab on it but I was having problems with my form relating
to the query. I think my brain is shot so I’m going to try again tomorrow.
I appreciate your help.

Jerry Whittle said:
I've found it best to put any parameters and criteria in another query then
base the crosstab on the first query.

Also I'd have to wonder about using Text for the parameter data type. I'd
rather have it a number and do something like this:

WHERE (((Year([TransDate]))=[Forms]![frmQtr]![txtEnterYr]))

Lastly does the form have a plain text box , combo box, or list box? Is it
bound or something unbound where the user types in the value? You might need
to use the .text or .value something like below expecially if it's a combo
box.

[Forms]![frmQtr]![txtEnterYr].text
--
Jerry Whittle, Microsoft Access MVP
Light. Strong. Cheap. Pick two. Keith Bontrager - Bicycle Builder.


AccessKay said:
Not sure if anyone knows the answer to this but I welcome any suggestions for
things to try. I have a crosstab query layered off of a Union query. I also
have a form with a text box for the user to choose the year and a command
button that pulls the report. It works fine if I choose the year 2009 or
earlier but if I choose 2010 I receive an error message, “…database engine
does not recognize “ as a valid field name or expression. I have not a clue
as to what is happening.

Thanks for any suggestions.

Here’s my query…if this helps any.

PARAMETERS [Forms]![frmQtr]![txtEnterYr] Text ( 255 );

TRANSFORM Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS
SumOfSumOfLbr_Total_Cost

SELECT zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy") AS DYear,
Sum(zqryforTotalsQTR.SumOfLbr_Total_Cost) AS [Total Of SumOfLbr_Total_Cost]

FROM zqryforTotalsQTR

WHERE (((Format([TransDate],"yyyy"))=[Forms]![frmQtr]![txtEnterYr]))

GROUP BY zqryforTotalsQTR.Category, zqryforTotalsQTR.DGroup,
Format([TransDate],"yyyy")

PIVOT "Qtr " & Format([TransDate],"q");
 

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

Similar Threads


Top