Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 310
  • Last Modified:

Crystal report question

I use CR to print a report that show a range of records and the condition is that SomeDate is in arange of user given date range.
i'm usin CR shipping with VB5.
The way i'm using now is like this,
i'm using a query with CR without specifing the range in the CR design time, and at run time from VB code i add before using the CR.Activate
i add GroupSelectionFormula = something but i could not find how to correctly write the Formula using range of dates...

any one can help.

0
dyancer
Asked:
dyancer
  • 7
  • 7
  • 2
  • +6
1 Solution
 
TimCotteeCommented:
Use something like

CR.GroupSelectionFormula = "{Table.Date} >= Date (" & strStartYear & "," & strStartMonth & "," & strStartDay & ") and {Table.Date} <= Date (" & strEndYear & "," & strEndMonth & "," & strEndDay & ")"

Will give you a string such as
{Table.Date} >= Date (2000,01 ,01) and {Table.Date} <= Date (2000,02,29)
0
 
llyCommented:
Hi dyancer,

Try adding some parameters into your query for your date range.  So that when you call CR, and assign the values for each parameters.  And hopefully it should work.

0
 
dyancerAuthor Commented:
To TimCottee ,
Indeed, the user input is a string formatted as a date, before activating the CR.activate i popup an input dialog where the user asked to input to date, name them FromDate,ToDate
the input is a string "1/1/2000" ,"3/1/2000"
so how to use these values in the example you show in your comment.

0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
TimCotteeCommented:
When your popup is closed, add this segment before the line I gave you before. It will convert the string date to a date field then chop up the date parts to use in the groupselectionformula line.

Dim dteDate As Date
Dim strStartDay As String
Dim strStartMonth As String
Dim strStartYear As String
Dim strEndDay As String
Dim strEndMonth As String
Dim strEndYear As String
dteDate = CDate(FromDate)
strStartDay = Day(dteDate)
strStartMonth = Month(dteDate)
strStartYear = Year(dteDate)
dteDate = CDate(ToDate)
strEndDay = Day(dteDate)
strEndMonth = Month(dteDate)
strEndYear = Year(dteDate)


0
 
DrazenCommented:
Try with this!!

CR.GroupSelectionFormula = "{Table.Date} in Date("& Format(strStartDate, "yyyy,mm,dd") &")
to Date("& Format(strEndDate, "yyyy,mm,dd") &")"
 

0
 
dyancerAuthor Commented:
Drazen..
Sorry for the delay...
I'll check your answer and give u a feedback later , * i believe not before sunday..*

thanx
dyancer.
0
 
mh_14Commented:
Hey Dyancer I'm exactly using dynamic range of date in my report.If all above suggestion doesn't work,let me know I will paste my code for you
Thanx
0
 
dyancerAuthor Commented:
Drozen,
Thank you for your code, I adopt your way though it's very limited because i need to enter specific Date coding either "mm,dd,yyyy" or any other variation the user can think of...
Now i do no longer get the message from CR telling "Formola error" but instead i get another runtime error saying "Unable to connect: Incorrect log parameters"
My Report based on a simple SQL with no input parameters...

Any Idea..?


0
 
dyancerAuthor Commented:
mh_14 ,
the question is open again...
i'll appreciate any help...

thanx in advance
0
 
dyancerAuthor Commented:

the question is open again...
0
 
mathiesCommented:
Use something like

CR.GroupSelectionFormula = "{Table.Date} >= Date (" & strStartYear & "," & strStartMonth & "," & strStartDay & ") and {Table.Date} <= Date (" & strEndYear & "," & strEndMonth & "," & strEndDay & ")"

Will give you a string such as
{Table.Date} >= Date (2000,01 ,01) and {Table.Date} <= Date (2000,02,29)
0
 
dyancerAuthor Commented:
Oppps,
i forget all about this question, I figured  out how to deal with the problem a month a go....

but, heres your points....
0
 
TimCotteeCommented:
mathies, that is a precise copy of my original answer, please convert your answer to a comment or dyancer please reject this answer and choose a comment to accept as such.
0
 
dyancerAuthor Commented:
ok ppl,
I'm out for a vacation tell sunday,
in the meanwhile time you both should agree on one of you to get the points,


0
 
TimCotteeCommented:
Whilst I would like to have the points, they are not really at issue, the point is that it is against the EE guidelines to blatantly attempt to steal points in this manner. Should mathies not withdraw his/her answer within a reasonable time then I will refer this matter to customer services for resolution.
0
 
TimCotteeCommented:
I am posting a Q in the customer services section in order for the powers that be to bring this question to a resolution.
0
 
ianBCommented:
I am rejecting mathies answer to this question because it is a exact copy of TimCottee's answer.

Ian
Community Support @ Experts Exchange
0
 
TimCotteeCommented:
dyancer:

As there seems to be no response from you on this question I am proposing my original solution and additional comments as an answer.
0
 
ananddarshanCommented:
Which Database are you using?
0
 
darinwCommented:
Answer accepted
0
 
darinwCommented:
Accepting the proposed answer and moving question to PAQ for the missing dyancer.

darinw
Customer Service
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 7
  • 7
  • 2
  • +6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now