on 09-02-2008 6:33 PM
Hello,
I get an licence Error, that i only can use 5 licence concurrent.
I make an Export and can close the Report, but it does not work.
Anyone with an solution ?
Code :
Dim myapp As CRAXDDRT.Application
myapp = New CRAXDDRT.Application
Dim objreportdocument As CRAXDDRT.Report
objreportdocument = myapp.OpenReport(Datei.FullName)
objreportdocument.DisplayProgressDialog = False
objreportdocument.ExportOptions.FormatType = CRAXDDRT.CRExportFormatType.crEFTPortableDocFormat
objreportdocument.ExportOptions.DestinationType = CRAXDDRT.CRExportDestinationType.crEDTDiskFile
objreportdocument.ExportOptions.DiskFileName = ("C:\Test.pdf")
objreportdocument.Export(False)
objreportdocument = Nothing
myapp.CanClose()
myapp = Nothing
Thanks
Do not use the craxddrt.dll. Use the craxdrt.dll
Dim myapp As CRAXDRT.Application
myapp = New CRAXDRT.Application
Ludek
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you for your work.
Now, because of the while .. end while, i see that the printing process does not stop, after the file exist. Can i stop this process autoamtically ? Then i have the solution i think.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
But how can i see if it is ready to do the next export .
I now tried to do it with the printing inprogress / printingcompleted. but this is not the right way, because the licence limit also comes up.
The other Versions of craxdrt and crystal 11 doesnot work with these reports. So i have only this chance to export them.
Do you have another idea ?
Not sure I understand. The code below, should help you in not starting the next print job until the 1st print job is done.
While Report.PrintingStatus.Progress = crPrintingInProgress
DoEvents
Wend
objreportdocument = Nothing
You can not run any number of reports at the same time. The report engine does have a limit (I suppose for CR 8.5 it's 5 - I don't remember as this is a very old version of CR). Or am I missing something here?
Ludek
Hello Ludek,
you right understand.
I try to do
While objreportdocument.PrintingStatus.Progress = 2 'and inprogress........
Console.WriteLine("warten : ", Now)
End While
If i see the export and go to the next line, the printingstatus is "completed" but it seems not to be ready, because i get the licence info.
So i can't recognized if the export is completed.
Hello,
with both, craxdrt or craxddrt the same reaction.
Another idea ?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Please provide more details regarding the error.
1) Do you get this running a report the first time? Do you get it after running the report several times?
2) Is this happening on your development computer or after you deploy the app?
3) What version of CR are you using and what is the Service Pack level?
4) Confirm that you are using VB 6 and provide full code as it pertains to Crystal reports.
5) Provide the exact error message
Ludek
1) Do you get this running a report the first time? Do you get it after running the report several times?
I get it after 5 times in the same project. I open a report, export it and close the report. Then the same procedure with another report.
2) Is this happening on your development computer or after you deploy the app?
On the development system
3) What version of CR are you using and what is the Service Pack level?
I use on the developing machine 8.5 developer Version, XI DEveloper. Both with VS2003 and vb.net
4) Confirm that you are using VB 6 and provide full code as it pertains to Crystal reports.
no i doesnot use VB 6. I use VB 2003 with the craxdrt reference
5) Provide the exact error message
It means :
There are no more licence than 5. Please ask your system admin or buy at seagate online.......
OK, couple of things:
1) The RDC (craxdrt.dll), of any version has not been tested in .NET and is thus not supported in .NET. For details of RDC support in .NET see page 4 of the following document:
2) I'd like you to modify your code a bit and see if that helps. Remove myapp.CanClose() and
myapp = Nothing. Instead use this code:
While Report.PrintingStatus.Progress = crPrintingInProgress
DoEvents
Wend
You should not need to use myapp.CanClose() at all and I would recommend using myapp = Nothing only once you are ready to close the actual app exe. Thus your code should look something like this:
Dim myapp As CRAXDRT.Application
myapp = New CRAXDRT.Application
Dim objreportdocument As CRAXDRT.Report
objreportdocument = myapp.OpenReport(Datei.FullName)
objreportdocument.DisplayProgressDialog = False
objreportdocument.ExportOptions.FormatType = CRAXDDRT.CRExportFormatType.crEFTPortableDocFormat
objreportdocument.ExportOptions.DestinationType = CRAXDRT.CRExportDestinationType.crEDTDiskFile
objreportdocument.ExportOptions.DiskFileName = ("C:Test.pdf";)
objreportdocument.Export(False)
While Report.PrintingStatus.Progress = crPrintingInProgress
DoEvents
Wend
objreportdocument = Nothing
'rest of your app
.
.
.
'when ready top close app
myapp = Nothing
'this unloads the craxdrt.dll
If the above does not help, I'd recommend moving to the CR assemblies for .NET available in any version of Crystal Reports, higher than 8.5. E.G.; .NET 2003 bundles with CR 9.1 and this is the first version of CR fully supported in .NET.
Also, please note that using craxDDrt.dll involves other licensing issues. E.G.; for CR 8.5 you should be in posession of the Report Creation API license and all installs of the app using craxddrt.dll also need this RCAPI license. E.G.; use craxdrt.dll.
Ludek
User | Count |
---|---|
91 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.