Solved

dSum problem - SQL expression in access. syntax error

Posted on 2007-12-05
17
246 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 119

Expert Comment

by:Rey Obrero
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 119

Expert Comment

by:Rey Obrero
ID: 20412591
your query is not complete. you have to include the other table
0
 

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 119

Expert Comment

by:Rey Obrero
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 119

Expert Comment

by:Rey Obrero
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
Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

 

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 119

Expert Comment

by:Rey Obrero
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 119

Accepted Solution

by:
Rey Obrero earned 500 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

We were having a lot of "Heartbeat Alerts" in our SCOM environment, now "Heartbeat" in a SCOM environment for those of you who might not be familiar with SCOM is a packet of data sent from the agent to the management server on a regular basis, basic…
The new Microsoft OS looks great, is easier than ever to upgrade to, it is even free.  So what's the catch?  If you don't change the privacy settings, Microsoft will, in accordance with the (EULA) you clicked okay to without reading, collect all the…
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 …
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…

863 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

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now