csv files

I am working on a VB program that needs to use  a Crystal Report to print out a .CSV file.  Can this be done?  If so, how?
Amanda080598Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

bharris1Commented:
I don't know about using CR to do it, but the following code is the way I've always created .csv files:

lfreefile = FreeFile
Open "outfile.txt" For Output As #lfreefile
Write #lfreefile, val1, val2, val3, val4,.....
Close #lfreefile


0
clifABBCommented:
By CSV can I assume you mean comma seperated values?
If so, yes Crystal Reports can export to that.

As I'm not 100% sure this is what you mean, I am submitting this as a comment.  If it solves your problem, let me know and I'll resubmit it as an answer.
0
clifABBCommented:
Oops, forgot the how part.

  CrystalReport1.PrintFileName = "TestFile.csv"
  CrystalReport1.PrintFileType = 4
  CrystalReport1.Action = 1

0
The Ultimate Tool Kit for Technolgy Solution Provi

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy for valuable how-to assets including sample agreements, checklists, flowcharts, and more!

Amanda080598Author Commented:
clifABB,

I tried your code, but I am getting a debug message which points to CrystalReport1.Action = 1 with an error message "Invalid report file name."  Please help me locate the problem.  Thank you!
0
Amanda080598Author Commented:
clifABB,

Please explain why you used 4 after PrintFileType and 1 after Action.

Thank you!
0
clifABBCommented:
You need to specify the crystal report you want to export.  Do you have that file (rpt file) already created?  If so, you need to add the following code before the three lines above:

CrystalReport1.ReportFileName = "MyReport.rpt" 'This is the name of the report file you created with Crystal Reports
CrystalReport1.Destination = 2 ' File


0
Amanda080598Author Commented:
clifABB,


I am new to all this.

I have a file (.csv) that has to be printed as a report.  When I try to create a report in CR, it doesn't recognize a .csv file as a valid database/source.

How do I create a report from a .csv file and print it?

Thank you!

0
clifABBCommented:
Create the report in Crystal.  When you save it, it will be saved as an rpt file.  You will use this file within VB as noted above.
Crystal doesn't actually create csv files, however, using the code above, you can export to a csv file.
0
Amanda080598Author Commented:
The .csv file has already been created in the VB application.  What I need to do is use the CR to print the .csv file while the application is running.  I used a CR control with your code.  The application will have a print button which will print the .csv file in a CR report format.   How would I do this ?  
0
clifABBCommented:
Oh, I see.  Excuse me for not understanding before.

You must first create an ODBC connection to your csv file.

To do this, you must start your ODBC administrator.  This can be found in the control panel.
To add a new connection, Click "Add" And then select "Microsoft Text Driver" from the list.  Then click Finish.

Type the Data Source name (which is what you want to appear in the ODBC list)
Uncheck "Use Current Directory" then click the "Select Directory" button and select the directory where your csv file exists.
Click Ok, and click Ok.

Now, start your Crystal Report Designer.  Select the type of report you want.  Now the select database screen appears.  Select SQL/ODBC which will display a list of the ODBC drivers available.  Select ODBC - Text Files from the list.  Click Ok and you're on your way.
0
Amanda080598Author Commented:
clifABB,

Thank you for the information above.  I completed entering all the information, but when I run the program the CrystalReport1.Action = 1 debugs with an error message <property is write-only>.  Also, error 20514 keeps popping up.

CrystalReport1.ReportFileName = "File001.rpt"
CrystalReport1.Destination = 2 ' File
   
CrystalReport1.PrintFileName = "File001.csv"
   
CrystalReport1.PrintFileType = crptCSV
   
CrystalReport1.Action = 1

Please let me know, if this is correct.

Thank you so much for your help.

0
clifABBCommented:
The original setting I had given you were when I thought you wanted CR to write out a csv.  You should now change those lines to this:
CrystalReport1.ReportFileName = "File001.rpt" 'Or whatever you call the report file you created

CrystalReport1.Destination = 0 'This will allow a print preview.  Or 1 to go to the printer    

CrystalReport1.Action = 1

0
Amanda080598Author Commented:
clifABB,

It worked.  Thank you for all your help!

Please send  your comment as an answer, so  I may grade you.
0
clifABBCommented:
I'm glad we finally got it to work.  :)

As requested, here is the official answer:

You must first create an ODBC connection to your csv file.

To do this, you must start your ODBC administrator.  This can be found in the control panel.
To add a new connection, Click "Add" And then select "Microsoft Text Driver" from the list.  Then click Finish.

Type the Data Source name (which is what you want to appear in the ODBC list)
Uncheck "Use Current Directory" then click the "Select Directory" button and select the directory where your csv file exists.
Click Ok, and click Ok.

Now, start your Crystal Report Designer.  Select the type of report you want.  Now the select database screen appears.  Select SQL/ODBC which will display a list of the ODBC drivers available.  Select ODBC - Text Files from the list.  Click Ok and you're on your way.

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Amanda080598Author Commented:
Adjusted points to 100
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.