PC Review


Reply
Thread Tools Rating: Thread Rating: 1 votes, 1.00 average.

DateDiff with variable criteria?

 
 
Jim
Guest
Posts: n/a
 
      3rd May 2010
I have a query field that uses DateDiff("d",[dtmDateShipped],[dtmDatePaid])
to calculate the difference between a ship date and paid date. I also have
<=50 in the criteria row to restrict payments to 50 days or less.



I need to change the criteria to <=80 for a couple customers. I've tried
using IIf([tblCustomerUS.strCustomerId] In ("LE4212","AM0303"),<=80,<=50) in
the criteria row as a sub query, but I get no results at all. Any
suggestions on how to set this up correctly?

Thanks



Jim


 
Reply With Quote
 
 
 
 
vanderghast
Guest
Posts: n/a
 
      3rd May 2010
Try:


<= IIf([tblCustomerUS.strCustomerId] In ("LE4212","AM0303"),80,50)


since the goal of iif is about returning a constant, not about returning a "
part of " a test.

Vanderghast, Access MVP



"Jim" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
>I have a query field that uses DateDiff("d",[dtmDateShipped],[dtmDatePaid])
>to calculate the difference between a ship date and paid date. I also have
><=50 in the criteria row to restrict payments to 50 days or less.
>
>
>
> I need to change the criteria to <=80 for a couple customers. I've tried
> using IIf([tblCustomerUS.strCustomerId] In ("LE4212","AM0303"),<=80,<=50)
> in the criteria row as a sub query, but I get no results at all. Any
> suggestions on how to set this up correctly?
>
> Thanks
>
>
>
> Jim
>
>


 
Reply With Quote
 
Jim
Guest
Posts: n/a
 
      4th May 2010
This is a report for sales commissions. I do have a field that has payment
terms in it. 99% of our customers have 30 day terms or less, a couple have
terms of 60 days. I'm calculating the difference between the date product
shipped (dtmDateShipped) and the date the invoice is paid (dtmPaidDate) plus
20 days. If the time difference is 50 days or less, it shows up on the
commission statement; if it's over, it doesn't. But I needed a way to take
into account the longer terms of a couple customers. How would I do that
with the date field instead of the way I'm doing it now?
Thanks

Jim

"Marshall Barton" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Jim wrote:
>>I have a query field that uses
>>DateDiff("d",[dtmDateShipped],[dtmDatePaid])
>>to calculate the difference between a ship date and paid date. I also have
>><=50 in the criteria row to restrict payments to 50 days or less.
>>
>>I need to change the criteria to <=80 for a couple customers. I've tried
>>using IIf([tblCustomerUS.strCustomerId] In ("LE4212","AM0303"),<=80,<=50)
>>in
>>the criteria row as a sub query, but I get no results at all. Any
>>suggestions on how to set this up correctly?
>>

>
> You can not put a partial expression in IIf. In this case
> you can simply rearrange the criteria:
> <=IIf([tblCustomerUS.strCustomerId] In
> ("LE4212","AM0303"),80,50)
>
> Personally, I would add a field (named PayTerm) to the
> customer table to so the terms of payment can be included
> without specifying specific customers:
> <= tblCustomerUS.PayTerm
>
> --
> Marsh
> MVP [MS Access]



 
Reply With Quote
 
Jim
Guest
Posts: n/a
 
      5th May 2010
Thanks.


"Marshall Barton" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Just cahnge your DateDiff calculated field's criteria to:
> <= tblCustomerUS.PayTerm + 20
>
> Then you would not need to check for those specific
> customers. It's almost always best to use data from a table
> instead of typing values in a query. The way you had it,
> think about the code/queries you would have to change if you
> should ever need to change/correct a customer's name or
> change the terms of other customers to 60 days. With the
> above criteria, you would not have to anything beyond
> changing a name or terms value in the customer's record.
> --
> Marsh
> MVP [MS Access]
>
>
> Jim wrote:
>>This is a report for sales commissions. I do have a field that has payment
>>terms in it. 99% of our customers have 30 day terms or less, a couple have
>>terms of 60 days. I'm calculating the difference between the date product
>>shipped (dtmDateShipped) and the date the invoice is paid (dtmPaidDate)
>>plus
>>20 days. If the time difference is 50 days or less, it shows up on the
>>commission statement; if it's over, it doesn't. But I needed a way to take
>>into account the longer terms of a couple customers. How would I do that
>>with the date field instead of the way I'm doing it now?
>>
>>"Marshall Barton" wrote in message
>>> Jim wrote:
>>>>I have a query field that uses
>>>>DateDiff("d",[dtmDateShipped],[dtmDatePaid])
>>>>to calculate the difference between a ship date and paid date. I also
>>>>have
>>>><=50 in the criteria row to restrict payments to 50 days or less.
>>>>
>>>>I need to change the criteria to <=80 for a couple customers. I've tried
>>>>using IIf([tblCustomerUS.strCustomerId] In
>>>>("LE4212","AM0303"),<=80,<=50)
>>>>in
>>>>the criteria row as a sub query, but I get no results at all. Any
>>>>suggestions on how to set this up correctly?
>>>>
>>>
>>> You can not put a partial expression in IIf. In this case
>>> you can simply rearrange the criteria:
>>> <=IIf([tblCustomerUS.strCustomerId] In
>>> ("LE4212","AM0303"),80,50)
>>>
>>> Personally, I would add a field (named PayTerm) to the
>>> customer table to so the terms of payment can be included
>>> without specifying specific customers:
>>> <= tblCustomerUS.PayTerm



 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Using a SQL statement with variable parameters and variable criteria Froefel Microsoft ASP .NET 1 4th Jul 2007 10:38 AM
DateDiff calculation with criteria returns a negative number Windsorcat via AccessMonster.com Microsoft Access Queries 1 3rd Oct 2006 07:17 PM
Can I use a variable as criteria? =?Utf-8?B?bXNjb21kZXg=?= Microsoft Access Queries 1 24th Sep 2006 11:16 PM
DCount with mathematical criteria, DateDiff function =?Utf-8?B?aGVsaW9z?= Microsoft Access Reports 2 16th Sep 2005 05:34 PM
Criteria using DateDiff function in SELECT Query. EricB Microsoft Access Queries 2 24th Sep 2004 08:36 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 12:50 AM.