Syntax (missing operator) error

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

It could be because I have looked at this too long but I just can't see what
is wrong with the following:

rst31 = "SELECT [LoadTable Payroll Clear].FISCAL_YR, " & _
"[LoadTable Payroll Clear].AGENCY_NBR," & _
"[LoadTable Payroll Clear].FUND_CD," & _
"[LoadTable Payroll Clear].APPROP_UNIT_NBR," & _
"[LoadTable Payroll Clear].[APPROP_ ORGN_ NBR]," & _
"[LoadTable Payroll Clear].AGENCY_DIV_NBR," & _
"[LoadTable Payroll Clear].APPROP_NM," & _
"[LoadTable Payroll Clear].APPROP_SHORT_NM," & _
"[LoadTable Payroll Clear].DEDC_RCPT_CAP_AMT," & _
"[LoadTable Payroll Clear].LEGAL_CITATION_TXT," & _
"[LoadTable Payroll Clear].SECT_SEQ_CD," & _
"[LoadTable Payroll Clear].BDGT_AUTH_OPT_IND," & _
"[LoadTable Payroll Clear].APPROP_TYPE_CD," & _
"[LoadTable Payroll Clear].APPROP_APPROV_AMT," & _
"[LoadTable Payroll Clear].APPROP_PROJ_GRANT_CD" & _
"FROM [LoadTable Payroll Clear]" & _
"WHERE ((([LoadTable Payroll Clear].[AGENCY_NBR]) = " & Chr(34) &
rst10![AGENCY_NBR] & Chr(34) & Chr(41) & Chr(41) & Chr(59)

When I use the Immediate window I find that rst31 is as follows:

SELECT [LoadTable Payroll Clear].FISCAL_YR, [LoadTable Payroll
Clear].AGENCY_NBR,[LoadTable Payroll Clear].FUND_CD,[LoadTable Payroll
Clear].APPROP_UNIT_NBR,[LoadTable Payroll Clear].[APPROP_ ORGN_
NBR],[LoadTable Payroll Clear].AGENCY_DIV_NBR,[LoadTable Payroll
Clear].APPROP_NM,[LoadTable Payroll Clear].APPROP_SHORT_NM,[LoadTable Payroll
Clear].DEDC_RCPT_CAP_AMT,[LoadTable Payroll
Clear].LEGAL_CITATION_TXT,[LoadTable Payroll Clear].SECT_SEQ_CD,[LoadTable
Payroll Clear].BDGT_AUTH_OPT_IND,[LoadTable Payroll
Clear].APPROP_TYPE_CD,[LoadTable Payroll Clear].APPROP_APPROV_AMT,[LoadTable
Payroll Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE
((([LoadTable Payroll Clear].[AGENCY_NBR]) = "B04"));

Yet I get the runtime error 3075, Syntax (Missing Operator) when I try to
use it. Can someone with better eyes spot the problem? Thanks for your
help!!!!
 
In
vtj said:
It could be because I have looked at this too long but I just can't
see what is wrong with the following:

rst31 = "SELECT [LoadTable Payroll Clear].FISCAL_YR, " & _
"[LoadTable Payroll Clear].AGENCY_NBR," & _
"[LoadTable Payroll Clear].FUND_CD," & _
"[LoadTable Payroll Clear].APPROP_UNIT_NBR," & _
"[LoadTable Payroll Clear].[APPROP_ ORGN_ NBR]," & _
"[LoadTable Payroll Clear].AGENCY_DIV_NBR," & _
"[LoadTable Payroll Clear].APPROP_NM," & _
"[LoadTable Payroll Clear].APPROP_SHORT_NM," & _
"[LoadTable Payroll Clear].DEDC_RCPT_CAP_AMT," & _
"[LoadTable Payroll Clear].LEGAL_CITATION_TXT," & _
"[LoadTable Payroll Clear].SECT_SEQ_CD," & _
"[LoadTable Payroll Clear].BDGT_AUTH_OPT_IND," & _
"[LoadTable Payroll Clear].APPROP_TYPE_CD," & _
"[LoadTable Payroll Clear].APPROP_APPROV_AMT," & _
"[LoadTable Payroll Clear].APPROP_PROJ_GRANT_CD" & _
"FROM [LoadTable Payroll Clear]" & _
"WHERE ((([LoadTable Payroll Clear].[AGENCY_NBR]) = " & Chr(34) &
rst10![AGENCY_NBR] & Chr(34) & Chr(41) & Chr(41) & Chr(59)

When I use the Immediate window I find that rst31 is as follows:

SELECT [LoadTable Payroll Clear].FISCAL_YR, [LoadTable Payroll
Clear].AGENCY_NBR,[LoadTable Payroll Clear].FUND_CD,[LoadTable Payroll
Clear].APPROP_UNIT_NBR,[LoadTable Payroll Clear].[APPROP_ ORGN_
NBR],[LoadTable Payroll Clear].AGENCY_DIV_NBR,[LoadTable Payroll
Clear].APPROP_NM,[LoadTable Payroll Clear].APPROP_SHORT_NM,[LoadTable
Payroll Clear].DEDC_RCPT_CAP_AMT,[LoadTable Payroll
Clear].LEGAL_CITATION_TXT,[LoadTable Payroll
Clear].SECT_SEQ_CD,[LoadTable Payroll
Clear].BDGT_AUTH_OPT_IND,[LoadTable Payroll
Clear].APPROP_TYPE_CD,[LoadTable Payroll
Clear].APPROP_APPROV_AMT,[LoadTable Payroll
Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE
((([LoadTable Payroll Clear].[AGENCY_NBR]) = "B04"));

Yet I get the runtime error 3075, Syntax (Missing Operator) when I
try to use it. Can someone with better eyes spot the problem?
Thanks for your help!!!!

Look at this line from the constructed SQL:
Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE

You need a space before the keyword "FROM". You also ought to have a
space before the keyword "WHERE", but the SQL parser can probably figure
that out, because of the closing bracket just before it.
 
It could be because I have looked at this too long but I just can't see what
is wrong with the following:

rst31 = "SELECT [LoadTable Payroll Clear].FISCAL_YR, " & _
"[LoadTable Payroll Clear].AGENCY_NBR," & _
"[LoadTable Payroll Clear].FUND_CD," & _
"[LoadTable Payroll Clear].APPROP_UNIT_NBR," & _
"[LoadTable Payroll Clear].[APPROP_ ORGN_ NBR]," & _
"[LoadTable Payroll Clear].AGENCY_DIV_NBR," & _
"[LoadTable Payroll Clear].APPROP_NM," & _
"[LoadTable Payroll Clear].APPROP_SHORT_NM," & _
"[LoadTable Payroll Clear].DEDC_RCPT_CAP_AMT," & _
"[LoadTable Payroll Clear].LEGAL_CITATION_TXT," & _
"[LoadTable Payroll Clear].SECT_SEQ_CD," & _
"[LoadTable Payroll Clear].BDGT_AUTH_OPT_IND," & _
"[LoadTable Payroll Clear].APPROP_TYPE_CD," & _
"[LoadTable Payroll Clear].APPROP_APPROV_AMT," & _
"[LoadTable Payroll Clear].APPROP_PROJ_GRANT_CD" & _
"FROM [LoadTable Payroll Clear]" & _
"WHERE ((([LoadTable Payroll Clear].[AGENCY_NBR]) = " & Chr(34) &
rst10![AGENCY_NBR] & Chr(34) & Chr(41) & Chr(41) & Chr(59)

When I use the Immediate window I find that rst31 is as follows:

SELECT [LoadTable Payroll Clear].FISCAL_YR, [LoadTable Payroll
Clear].AGENCY_NBR,[LoadTable Payroll Clear].FUND_CD,[LoadTable Payroll
Clear].APPROP_UNIT_NBR,[LoadTable Payroll Clear].[APPROP_ ORGN_
NBR],[LoadTable Payroll Clear].AGENCY_DIV_NBR,[LoadTable Payroll
Clear].APPROP_NM,[LoadTable Payroll Clear].APPROP_SHORT_NM,[LoadTable Payroll
Clear].DEDC_RCPT_CAP_AMT,[LoadTable Payroll
Clear].LEGAL_CITATION_TXT,[LoadTable Payroll Clear].SECT_SEQ_CD,[LoadTable
Payroll Clear].BDGT_AUTH_OPT_IND,[LoadTable Payroll
Clear].APPROP_TYPE_CD,[LoadTable Payroll Clear].APPROP_APPROV_AMT,[LoadTable
Payroll Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE
((([LoadTable Payroll Clear].[AGENCY_NBR]) = "B04"));

Yet I get the runtime error 3075, Syntax (Missing Operator) when I try to
use it. Can someone with better eyes spot the problem? Thanks for your
help!!!!

Try placing the where clause variable in single quotes instead of
double (assuming [Agency_NBR] is Text datatype).

WHERE [LoadTable Payroll Clear].[AGENCY_NBR] = '" & rst10![AGENCY_NBR]
& "';"

which should then return:
WHERE [LoadTable Payroll Clear].[AGENCY_NBR] = 'B04';

Note: The Query SQL editor throws in lots of parenthesis, which often
gets in the way of clarity. You don't need them unless the criteria
grouping requires it (which yours doesn't).
 
Thanks so much. That immediately solved the problem.

Dirk Goldgar said:
In
vtj said:
It could be because I have looked at this too long but I just can't
see what is wrong with the following:

rst31 = "SELECT [LoadTable Payroll Clear].FISCAL_YR, " & _
"[LoadTable Payroll Clear].AGENCY_NBR," & _
"[LoadTable Payroll Clear].FUND_CD," & _
"[LoadTable Payroll Clear].APPROP_UNIT_NBR," & _
"[LoadTable Payroll Clear].[APPROP_ ORGN_ NBR]," & _
"[LoadTable Payroll Clear].AGENCY_DIV_NBR," & _
"[LoadTable Payroll Clear].APPROP_NM," & _
"[LoadTable Payroll Clear].APPROP_SHORT_NM," & _
"[LoadTable Payroll Clear].DEDC_RCPT_CAP_AMT," & _
"[LoadTable Payroll Clear].LEGAL_CITATION_TXT," & _
"[LoadTable Payroll Clear].SECT_SEQ_CD," & _
"[LoadTable Payroll Clear].BDGT_AUTH_OPT_IND," & _
"[LoadTable Payroll Clear].APPROP_TYPE_CD," & _
"[LoadTable Payroll Clear].APPROP_APPROV_AMT," & _
"[LoadTable Payroll Clear].APPROP_PROJ_GRANT_CD" & _
"FROM [LoadTable Payroll Clear]" & _
"WHERE ((([LoadTable Payroll Clear].[AGENCY_NBR]) = " & Chr(34) &
rst10![AGENCY_NBR] & Chr(34) & Chr(41) & Chr(41) & Chr(59)

When I use the Immediate window I find that rst31 is as follows:

SELECT [LoadTable Payroll Clear].FISCAL_YR, [LoadTable Payroll
Clear].AGENCY_NBR,[LoadTable Payroll Clear].FUND_CD,[LoadTable Payroll
Clear].APPROP_UNIT_NBR,[LoadTable Payroll Clear].[APPROP_ ORGN_
NBR],[LoadTable Payroll Clear].AGENCY_DIV_NBR,[LoadTable Payroll
Clear].APPROP_NM,[LoadTable Payroll Clear].APPROP_SHORT_NM,[LoadTable
Payroll Clear].DEDC_RCPT_CAP_AMT,[LoadTable Payroll
Clear].LEGAL_CITATION_TXT,[LoadTable Payroll
Clear].SECT_SEQ_CD,[LoadTable Payroll
Clear].BDGT_AUTH_OPT_IND,[LoadTable Payroll
Clear].APPROP_TYPE_CD,[LoadTable Payroll
Clear].APPROP_APPROV_AMT,[LoadTable Payroll
Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE
((([LoadTable Payroll Clear].[AGENCY_NBR]) = "B04"));

Yet I get the runtime error 3075, Syntax (Missing Operator) when I
try to use it. Can someone with better eyes spot the problem?
Thanks for your help!!!!

Look at this line from the constructed SQL:
Clear].APPROP_PROJ_GRANT_CDFROM [LoadTable Payroll Clear]WHERE

You need a space before the keyword "FROM". You also ought to have a
space before the keyword "WHERE", but the SQL parser can probably figure
that out, because of the closing bracket just before it.

--
Dirk Goldgar, MS Access MVP
www.datagnostics.com

(please reply to the newsgroup)
 
Back
Top