Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

dSum problem - SQL expression in access. syntax error

Posted on 2007-12-05
17
Medium Priority
?
268 Views
Last Modified: 2008-02-01
Hi,

Please can somebody help me debug the following statement within access.

Explanation.
I have a database which has a list of all the customers orders and their values, once we receive the cheques for their orders, I add them up, if they equal the order value I release the order.

If I use a sum query to add up all the cheques for 1 customer, once you link the query to the table and run it in a form and all the data becomes read only.  Hence I'm unable to release customers.

I have been suggested to use dSum to add all the customers cheques together rather than a sum query.

This is a layout of the 2 tables involved.

TBL name : SS07_payment_plan

Cliente Fatturazione    Text
JBA_code (key) (Linked to other table) Text
Ragione Sociale     Text
Order Value(inc vat)     Currency
Currency    Text
controller (linked to another table not in this example) Text
Insurance in currency       Currency
Memo notes    Memo
release_acc     (yes/no)

TBL2 : SS07_payment_plan_chq_info
ID (key)  autonumber
Acc_num (Linked to other table) (text)
Chq_amm     Currency
date      date/time

The expression a very kind fella helped me with is...

SELECT SS07_payment_plan_chq_info.*,
DSum("[Chq_amm]",
"SS07_payment_plan",
" [JBA_code] = ' " & SS07_payment_plan_chq_info.Acc_num " ' " )
AS chqsum
FROM SS07_payment_plan_chq_info;

It keeps coming back with syntax error, it highlights the  " ' "  at the end of

 " [JBA_code] = ' " & SS07_payment_plan_chq_info.Acc_num " ' " )

Please can somebody help me correct this expression.  Thanks.

Thank you.
0
Comment
Question by:squidlings
  • 6
  • 6
  • 5
17 Comments
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 20412464
you forgot the { & }

SELECT SS07_payment_plan_chq_info.*,
DSum("[Chq_amm]",
"SS07_payment_plan",
" [JBA_code] = ' " & SS07_payment_plan_chq_info.Acc_num & " ' " )
AS chqsum
FROM SS07_payment_plan_chq_info;
0
 

Author Comment

by:squidlings
ID: 20412540
OMG, no errors, no nothing.  It loads the datasheet and there is nothing in the dSum box.

I'm going to chew my own fingers off.

excuse me, I've counted to 10, I understand this is my own fault for not studying so hard when I was at school. :)

You guys are amazing, anything you can see which might be causing it to not show any result?

(It's amazing the power of an '&' )
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 20412591
your query is not complete. you have to include the other table
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 

Author Comment

by:squidlings
ID: 20412668

I added the other table and it loads, but the chqsum column is still blank?

SELECT SS07_payment_plan_chq_info.*, DSum("[Chq_amm]","SS07_payment_plan"," [JBA_code] = ' " & SS07_payment_plan_chq_info.Acc_num & " ' ") AS chqsum
FROM SS07_payment_plan RIGHT JOIN SS07_payment_plan_chq_info ON SS07_payment_plan.JBA_code = SS07_payment_plan_chq_info.Acc_num;
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 20412720
try replacing the JOIN with INNER or LEFT


can you post sample data from both tables
or better if you can zip the db and upload here www.ee-stuff.com
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 20412726
try replacing the RIGHT JOIN with INNER JOIN or LEFT JOIN
0
 
LVL 44

Expert Comment

by:GRayL
ID: 20412782
I notice you are using " ' " 
----------------------------^^--remove the spaces and re-try.
0
 
LVL 44

Expert Comment

by:GRayL
ID: 20412813
ie:


DSum("[Chq_amm]","SS07_payment_plan"," [JBA_code] = '" & SS07_payment_plan_chq_info.Acc_num "'" )
0
 

Author Comment

by:squidlings
ID: 20412846
Taken all the spaces out, it works, but doesn't display anything in the chqsum field we've created.

Cheers for this, I'm uploading the file now, I'd love it if you could have a look.

Cheers, there shouldn't be any VB code so you can disable anything if it asks.

Thanks.
0
 
LVL 44

Expert Comment

by:GRayL
ID: 20412858
Don't forget to copy the URL of the uploaded file and paste it in a post back in this thread.
0
 

Author Comment

by:squidlings
ID: 20412887
Hi,

The file has been uploaded, under question I put 20412720

It's only 100k, feel free to have a peek.  Cheers!
0
 

Author Comment

by:squidlings
ID: 20412904
Your file has successfully been uploaded!
To download the file, you must be logged into EE-Stuff. Here are two pages that will display your file, if logged in:

View all files for Question ID: 20412720
https://filedb.experts-exchange.com/incoming/ee-stuff/6010-Copy--2--of-Sixty---Letters.zip 

Direct link to your file
https://filedb.experts-exchange.com/incoming/ee-stuff/6010-Copy--2--of-Sixty---Letters.zip 

Glad you mentioned that :)
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 20413083
you have the wrong table in the dsum,

try this

SELECT SS07_payment_plan_chq_info.*, DSum("[Chq_amm]","SS07_payment_plan_chq_info","[Acc_num]='" & [SS07_payment_plan].[jba_code] & "'") AS chqsum
FROM SS07_payment_plan LEFT JOIN SS07_payment_plan_chq_info ON SS07_payment_plan.JBA_code = SS07_payment_plan_chq_info.Acc_num;

or

SELECT SS07_payment_plan_chq_info.*, DSum("[Chq_amm]","SS07_payment_plan_chq_info","[Acc_num]='" & [SS07_payment_plan].[jba_code] & "'") AS chqsum
FROM SS07_payment_plan Inner JOIN SS07_payment_plan_chq_info ON SS07_payment_plan.JBA_code = SS07_payment_plan_chq_info.Acc_num;

0
 
LVL 44

Expert Comment

by:GRayL
ID: 20413106
There is no field in the DSum field named chq_amm.  I subsititued [Order Value(vat Inc)] and it ran fine.
0
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 2000 total points
ID: 20413193
the query  i posted above will give some result but i don't think that values returned is the one you are after.

maybe this is what you are after

SELECT SS07_payment_plan_chq_info.Acc_num, Sum(SS07_payment_plan_chq_info.Chq_amm) AS SumOfChq_amm
FROM SS07_payment_plan INNER JOIN SS07_payment_plan_chq_info ON SS07_payment_plan.JBA_code = SS07_payment_plan_chq_info.Acc_num
GROUP BY SS07_payment_plan_chq_info.Acc_num;
0
 
LVL 44

Expert Comment

by:GRayL
ID: 20413195
Bah!  'substituted'
0
 

Author Comment

by:squidlings
ID: 20413230
I could reach throught your monitors and give you all a big sloppy kiss!!!!!!

I'm getting results now.  But further problems to be raised tomorrow :)

Love it!!!!!!!!!!  THANKS!!!!!!!!!!!
0

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes a method of delivering Word templates for use in merging Access data to Word documents, that requires no computer knowledge on the part of the recipient -- the templates are saved in table fields, and are extracted and install…
If you need a simple but flexible process for maintaining an audit trail of who created, edited, or deleted data from a table, or multiple tables, and you can do all of your work from within a form, this simple Audit Log will work for you.
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

971 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question