Apache OpenOffice (AOO) Bugzilla – Issue 47600
Sheets don't print when print range defined on another sheet
Last modified: 2014-09-06 07:12:47 UTC
I can understand this behaviour when you select to print the whole workbook (print range "All") but not when you select to print the current sheet (Print range "Selection"). It should print the sheet regardless of print ranges defined on other sheets within the workbook. I'm sure many new OO-users will run into this and find it anoying.
You responded very quickly on my previous issues. I entered them on OO2.0 beta. Since I don't hear anything on this one, I'm resubmitting it on version OO2.0 beta.
*** Issue 47837 has been marked as a duplicate of this issue. ***
one for the requirements team
The current behaviour is that default print ranges of *every* sheet are deleted when you set a print range on one sheet. This behaviour is a real burden for the users and I can't think of a reason to keep it this way. If you need more precise specs, please let me know
adding me to cc
** Context ** a workbook with 3 sheets, and data in those sheets. Action =|=> result 1- menu> View > Page Break Preview =|=> see that on all sheets a default Print range is set. 2- for all sheets: menu> Format > Print Range > Edit =|=> Print Range set to 'none' 3- menu> File > Print, Print option set to 'All sheets' =|=> all sheets are printed with the default print range 4- on sheet 'Sheet1': select a range of cells, menu> Format > Print Range > Add =|=> a print range is added to the 'Sheet1' + default print range on 'Sheet2' and 'Sheet3' are deleted 5- menu> File > Print, Print option set to 'All sheets' =|=> only the cells of the Print Range in 'Sheet1' are printed step 1, 2 and 3 are correct. step 4: 'add' or 'set' a print range on one sheet, delete the default print range of other sheet. This behavior is burden for the users, who expects to have the Excel behavior (ie. keep default print range) step 5: the user expects Calc to print the defined range of cells + all sheets, which the user doesn't specify a print range, in 'entire sheet' mode. ** Test files ** - test_47600_before.ods -> the workbook before step 4 - test_47600_before.pdf -> pdf export, which show the print resutl of the workbook before step 4 - test_47600_after.ods -> the workbook after step 4 - test_47600_after.pdf -> pdf export, which show the print resutl of workbook after step 4 - test_47600_after_expected.pdf -> pdf export, which show the *expected* print result of workbook after step 4 ** Patch ** file: document.cxx.patch full path: sc/source/core/data/document.cxx OOo version : OOO310m11 (Build:9399) modified methods: ScDocument::AddPrintRange, ScDocument::SetPrintRange, ScDocument::SetPrintEntireSheet UI modification: NO tested on Linux: YES tested on Windows: YES, Windows 2000 and Windows XP SP3 ** Description of the patch ** IF the user (( add a Print OR set a Print Range OR set 'entire sheet' print range option on a sheet )) AND (( that the document has no print range at all )) AND (( no print properties on sheets )) THEN force the 'entire sheet' print property on all other sheet.
Created attachment 64942 [details] patch file
Created attachment 64943 [details] test file before step 4
Created attachment 64944 [details] test file after step 4
Created attachment 64945 [details] print result before step 4
Created attachment 64946 [details] print result after step 4
Created attachment 64947 [details] expected print result after step 4
Changing Issue type to Patch - Sophie
The patch changes more than the issue describes. The general behavior (not printing sheets without print ranges if there are print ranges on any sheet) is intentional. In the case where "print all sheets" is selected, I still consider it useful. The issue is about the case that "print selected sheets" is used. To change only this case, the sheets' print areas can't be modified as the patch does, but the printing code has to be changed.
@nn : AFAIKT, the behaviour of not printing sheets without printrange is faulty. If you don't want to print a certain sheet, it seems unlogical to select "print all sheets". According to the ODF specification, print ranges are defined at a table level (table:print-ranges), not at a document level. So it's not logical that the values for a sheet interfere with the behavior for another sheet. And please consider that the current behavior forces you to define a print range on every sheet once you define one in the document: imagine what it means when you have more than 10 sheets, considering that you may have to change those unnecessary ranges when you add data later on.
@nn : My users have the same point of view as camillem. Having the 'all sheets' print option, and seeing the printer only prints one sheet, is paradoxical for them. Plus, my users pointed me the fact that, on Excel, when you add/set a print range on one sheet and then print 'all sheets', you have the behavior set by my patch. Maybe my patch doesn't related to this issue, if so, can you tell me if I have to create an other one ?
pguiran, if you think your change is better, you should ask for opinions on the ux-discuss list (discuss@ux.openoffice.org, see http://ux.openoffice.org/servlets/ProjectMailingListList).
Just adding my 2ct: if I define print ranges in a document I want only those ranges to be printed and nothing else, so the current behavior indeed is what I expect. If additionally I want entire sheets to be printed as well I select the corresponding "entire sheet" print ranges for those sheets. The problem is that there is no possibility to override, IMHO a checkbox "Use defined print ranges" or some such (checked if there are any defined, disabled otherwise) or "Print entire sheets for sheets that have no print range defined" would solve that. But as Niklas 'nn' said, details should be discussed on the UX list and a solution found there, please don't clutter this issue with different opinions and arguments. Thanks.
There was a consensus on the UX mailing list to consider the current behavior as faulty. (a few months ago already, I forgot to report here.) During the investigation on the problem it appeared that the spreadsheet generated by default by Calc are not semantically compliant with the ODF specifications, regarding the table:print attribute. I would suggest not to open a distinct issue for that, as this conformance problem and the present UX problem are tightly related. Problems of forward and backward compatibility will also have to be addressed. More details on http://wiki.services.openoffice.org/wiki/User:Camillem/I47600_Summary
I'm adding this comment to all open issues with Issue Type == PATCH. We have 220 such issues, many of them quite old. I apologize for that. We need your help in prioritizing which patches should be integrated into our next release, Apache OpenOffice 4.0. If you have submitted a patch and think it is applicable for AOO 4.0, please respond with a comment to let us know. On the other hand, if the patch is no longer relevant, please let us know that as well. If you have any general questions or want to discuss this further, please send a note to our dev mailing list: dev@openoffice.apache.org Thanks! -Rob
*** Issue 125593 has been marked as a duplicate of this issue. ***