Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Paradox 11 Report Errors

Status
Not open for further replies.

Ernestw

Programmer
Feb 6, 2002
13
US
We have a number of reports that have run in every version of Paradox up to version 11. In version 11, we are told the paper format is incorrect, and the report will be reconfigured. The warning includes a line that this could take some time. Once we click the OK button, the report comes out as fast as it ever did in the correct format. All reports are on 8.5 by 11.0 inch paper and are about evenly divided between landscape and portrait format.
 
Ernestw,

Hm. Have you resaved all your reports since upgrading to version 11? There has been a lot of surgery in the handling of reports and the margins got shifted around a bit.

Thus, you may need to open each report, verify that the margins are appropriate, and then save them.

Thile you're doing this, make sure each report is using a valid stylesheet. Whiel you probably don't use stylesheets intentionally, Paradox always saves a stylesheet with each form and report and it doesn't always handle invalid stylesheet definitions well.

For more information, please see and the related articles.

Hope this helps...

-- Lance
 
Lance,

Resaving did not help.

The reports all have the default style sheet. I built a new report, assigned a style sheet, and received the same error when I went to print. I have copied the error displayed:

"Report layout settings (page size, paper orientation) have been changed within the print dialog. This will require each
report page to be regenerated. This can take a long time for large reports. Would you like to continue?"

For the existing reports, there have been no changes in paper size or orientation. It does seem strange to get the same error for a brand new report.

Ernie

 
Ernie,

Hm. Let me see if I can reproduce the problems at home later this evening and will post my results as soon as I can.

-- Lance
 
Ernie & Lance,

I don't know if this might help, but since I've installed Paradox 10 on the machine with Paradox 9 (which was what was used to develop the database) I get this same message in running some reports. And once the Okay is clicked the reports print as fast as ever.

I haven't tried resaving these reports in Paradox 10 to see if that eliminates the message. I don't get it on every report however, just some of them. But some of them have been modified and resaved in Paradox 10, so that could be the difference.

Lynn
 
We seem to have solved the problem. We added Print and Cancel buttons on the report, and we don't get the error. I had hoped to post a reply here with the ObjectPAL code, but I haven't been able to get it. We moved buildings, and the individual who has the code is bogged down getting the servers and LAN to work as advertised.

As soon as I have the code, I will post it.
 
ErnestW,

Good to hear; definitely looking forward to seeing the code.

-- Lance
 
To overcome the dialog error box problem, we added the following function to lib1.

Library Routine:
method OpenReport(orient String,rptName String)
var
repinfo ReportPrintInfo
prnOptions PrinterOptionInfo
tc tCursor
strReportName String ;// tmp handle to report name
rHandle Report ;// tmp handle to report being opened
f Form
endVar
if NOT rHandle.open(rptName) then
msgStop("Error opening " + strReportName, "Please make sure the report exists and try again.")
else
rHandle.menuAction(MenuPropertiesZoomfitWidth)
rHandle.MAXIMIZE()
showspeedbar()
endIf
rHandle.setTitle(rptName)
f.open("rpt_print")
f.rpt_name=rptName
f.orient=orient
;
endMethod

The form referenced in the library method consists of two buttons, Print Report and Close. The code behind the two buttons follows.

Print Report Button:

method pushButton(var eventInfo Event)
var
PrintInfo dynarray[] anytype
r report
endvar

Printinfo["PanelOptions"]=PrintClipToWidth
PrintInfo["Name"]=rpt_name.value
;PrintInfo["Orient"]=prnLandscape
PrintInfo["ShowDialog"]=true

r.print(PrintInfo)
endMethod

Close button:

method pushButton(var eventInfo Event)
var
r report
rname String
endVar

;// Validation or confirmation code, if any, should go here
;//
;// Close the form
;//
rname= rpt_name.value
if r.attach(rname) then
r.close()
endif
close()
endMethod

Finally, the following code was added to the buttons calling the reports where name.rsl is the report name.

mylib.OpenReport("prnLandscape","name.rsl")

There may be more elegant methods, but this works for us.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top