To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=67499 Issue #|67499 Summary|HEADER for Calc-Worksheets Component|Spreadsheet Version|OOo 2.0.3 Platform|All URL| OS/Version|All Status|UNCONFIRMED Status whiteboard| Keywords| Resolution| Issue type|FEATURE Priority|P3 Subcomponent|code Assigned to|spreadsheet Reported by|discoleo
------- Additional comments from [EMAIL PROTECTED] Tue Jul 18 05:06:37 -0700 2006 ------- Header for Calc-Worksheets I often have to define many names/ranges in my Calc worksheets. However, having many names easily creates confusion. One way around this is presented in issue http://www.openoffice.org/issues/show_bug.cgi?id=66886, which describes the use of namespaces. A complementary method implies the use of some special headers for every worksheet containing in a structured format all the definitions. These headers would be similar to the C++ header files, containing important definitions and other advanced features. Such a header section allows writing more structured worksheets and permits retaining the overview over complex sheets. (As variables and constants are defined here, this could be viewed more like true C.) Another disadvantage of the current implementation is the fact that named ranges DO NOT change automatically when a row/column is deleted/inserted. When this happens, it is very difficult to seek every name/range for the presence of such a range that needs to be corrected. This generates very hard to trace errors. The header would provide such a place, where all names and ranges defined for one sheet can be easily visualized, allowing greater flexibility in the management of names and ranges. Because it is easier to understand this principle when seeing an example, I will write such a putative header: // HEADER START // I will also use features described in // issue 66886 (about Namespaces) // and also a new feature: function reference() // (as of this writing not yet posted) // A very useful feature would be to implement comments // we could use "C++"-style comments # or even awk/gawk-style comments # this way we can have a more structured file // NAMESPACE EXAMPLES // use namespace all // the previous command is only for users who do NOT want // to learn the power of namespaces // of course, ANYONE ELSE would make full use of namespaces // use freely all the names defined in the sheet 'one_sheet' use namespace 'one_sheet' // we want to use only some of the names defined in another sheet: typedef 'another_sheet'::'some_name' 'LocalAlias' // alternative definition: // 'LocalAlias' = 'another_sheet'::'some_name'; // DEFINITIONS/ ASSIGNMENTS // I need sometimes named ranges and specific constants // The header will allow us to visualize all the definitions // and to add useful comments, e.g. // intMyConst specifies the number of ...something // (const should permit more effective processing) const intMyConst = 22; const strMyConst = 'my string'; // some variable and the number of data rows // see later for a short description of reference() // IF a row is inserted or deleted, // intTotal is NO longer == 900!!! intCount = COUNTA(A1:A900); intTotal = ROWS(reference(A1:A900, row_delete || row_insert)); // we can also assign names to cell-ranges // but we will again add some comments, // specifying what those ranges really represent: // SOFA score in the first 24 h SOFAi = $B$1:$B$900; // maximum SOFA score using the maximum value for any of its subcomponents SOFAmax = $C$1:$C$900; // this are the various components of the Charlson Comorbidity Score CharlsonT = reference(U1:AM900, row_delete || row_insert); // { I will describe the function reference() as a separate Feature Request; // basically it is intended to offer greater control over how the range changes, // when a formula using this range is moved/copied to a different cell // OR // a row/column within this range is deleted/inserted. // } // row_delete || row_insert => adapt the range if a row is deleted/inserted, but // keep the range unchanged if a formula containing this named range // is copied or moved to another cell! // the implementation of reference() will also depend on this header // and additionally on hardlinks (issue 66817) // END HEADER --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
