Ask a questionAsk a question
 

AnswerDSum Errors On Some Machines

  • Tuesday, July 07, 2009 11:49 PMFogie Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
         I have a form which uses many DSum calls.  This form works fine on my machine (XP Home, Access 2003), and on my test machine (Win. 2000, Office 2000) but gives only #Error on another machine (XP Pro, Access 2000).  The .mdb file was copied directly to the offending machine, so all data, table structure and code are the same.

        Any ideas on where I should look to find out why?
    The early worm gets the bird

Answers

  • Thursday, July 09, 2009 5:18 AMBrijrajRathod Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    use below code,

    use nz to avoid headache of null value.

    IIf(DSum("nz( [Admin Cost],0 )","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10")>0,DSum("nz( [Admin Cost],0) ","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10"),0)
    Rgrds, Brij http://accessvbadeveloper.wordpress.com

All Replies

  • Wednesday, July 08, 2009 11:16 AMBrijrajRathod Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi,

    Please provide some more information about your code using DSum and #Error. Thanks

    Rgrds, Brij http://accessvbadeveloper.wordpress.com
  • Wednesday, July 08, 2009 2:30 PMFogie Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Ok - thanks for answering.

    The form is 7 X 12 textboxes.  The code from one of the boxes is:

    =IIf(DSum("[Admin Cost]","[Temporary Expenditures Table]","Month([E Date])=10")>0,DSum("[Admin Cost]","[Temporary Expenditures Table]","Month([E Date])=10"),0)

    When the form is run on the customer's machine all that appears in any of the boxes is "#Error".  The customer's machine is running Access 2000 with Windows XP Pro and the .mdb file is on a server with the offending machine linked to it.  Other forms worked, so I don't think it is a connection issue.

    The table does have nulls in it, but the code ignores the nulls on the two test machines.

    The early worm gets the bird
  • Thursday, July 09, 2009 5:18 AMBrijrajRathod Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    use below code,

    use nz to avoid headache of null value.

    IIf(DSum("nz( [Admin Cost],0 )","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10")>0,DSum("nz( [Admin Cost],0) ","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10"),0)
    Rgrds, Brij http://accessvbadeveloper.wordpress.com
  • Thursday, July 09, 2009 2:58 PMFogie Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    I had not heard of the nz function, but that might be it.  I will try it.  Thanks.
    The early worm gets the bird