Differences between revisions 34 and 35
Deletions are marked like this. Additions are marked like this.
Line 22: Line 22:
 1. Review/improve cell note set/clear functions  1. Review/improve cell note set/clear functions: ''isCellDifference'' and ''setCellDifferenceComment''
    * Fix bug when comparing date fields
    * Do not set cell comments in key set area
Line 24: Line 26:
    * Initial implementation set field's background     * The reduce implementation time (required for lock/unlock the worksheet) the initial implementation should just set field's background to indicate that the field is locked.
Line 32: Line 34:
 1. Refresh all/selected should reset record update counts
 1. Fix bug: cell notes for record differences on date fields '''(AH/JS)'''
    * Implement date comparison for (not) trigging cell-note creation for date fields
 1. Refresh all/selected should update the record update counts
Line 36: Line 36:
 1. Test that search correctly merges new data with existing data
 1. Mark row as ''un-savable'' if revision sequence is incomplete
Line 41: Line 43:
    * Clear/reset ''revisionNo'' and ''revisionCode''
Line 42: Line 45:
    * Disable plan date formulas when Vorabzug set to false
Line 46: Line 50:
 1. Implement ''get next sequence number''  1. Implement ''Get Next Sequence Number''
 1. Test that ''New Document'' inserts after selected row
 1. ''Duplicate Row'' should duplicate after the last selected row
    * And should not have problems when blank rows are selected
 1. ''Restart Revision Sequence'' should fail when record never saved?
Line 50: Line 58:
 1. Test ''Group'' menu change
Line 59: Line 68:
 1. ''Save'' must handle:
    * ''Vorabzug'' flag
    * ''GA/Freigegeben'' menu (probably not a problem)
Line 61: Line 73:
    * ''Vorabzug''
    * ''RevC Type''
 1. Duplicate row detection before save
    * ''Vorabzug'' flag
    * ''GA/Freigegeben'' menu (RevC type)
 1. Duplicate row detection before:
    * search
    *
save
   * refresh
Line 66: Line 81:
    * Test that a second save results in state with correct record update counts
Line 80: Line 96:
== Final Cleanup ==

 1. Re-hide hidden rows/columns in header worksheet
 1. Hide internal worksheets
 1. Set password on VBA code
Line 91: Line 113:
 1. Performance: '''(AH/JS)'''  1. Performance:
Line 98: Line 120:
 1. Implement new columns to display record status and DrawMGT id values '''(JS)''' ''(design needed)''

 1. In search form implement ''Gruppe'' menu with dependency on ''Bereich'' menu '''(AH/JS)''' ''(design needed)''
 1. Implement new columns to display record status and DrawMGT id values ''(design needed)''

 1. In search form implement ''Gruppe'' menu with dependency on ''Bereich'' menu ''(design needed)''
Line 117: Line 139:
 1. Highlighting of changed/new/unsaved records '''(JS)''' ''(design needed)''  1. Highlighting of changed/new/unsaved records ''(design needed)''
Line 122: Line 144:
 1. Resolve record count inaccuracy in search and test cases '''(AH/TN)'''

 1. Display progress messages in lower message area '''(WAIT)'''

 1. Trap Excel-Quit and ask user if unsaved records should be saved '''(JS)''' ''(design needed)''
 1. Resolve record count inaccuracy in search and test cases

 1. Display progress messages in lower message area

 1. Trap Excel-Quit and ask user if unsaved records should be saved ''(design needed)''
Line 135: Line 157:

Line 146: Line 166:
 1. Shorten attribute lists '''(AH/TN)''' ''(design needed, low-priority)''  1. Shorten attribute lists ''(design needed)''
Line 148: Line 168:
 1. Improve new worksheet naming ''(low-priority)''  1. Improve new worksheet naming
Line 150: Line 170:
 1. Implement delta menu '''(JS - WAIT)'''  1. Implement delta menu
Line 152: Line 172:
 1. Implement document links '''(AH/JS/TN - WAIT)''' ''(design needed)''  1. Implement document links ''(design needed)''
Line 156: Line 176:

= Final Cleanup and Packaging =
== Final Cleanup and Packaging ==
Line 166: Line 185:
 1. Implement code that reacts correctly to auto-logout. E.g. session-timeout ''(low-priority)''  1. Implement code that reacts correctly to auto-logout. E.g. session-timeout
Line 168: Line 187:
 1. Check user roles and disallow login is certain roles not present ''(low priority)''
 1. Login in a specific contract? ''(low-priority)''
 1. Check user roles and disallow login is certain roles not present
 1. Login in a specific contract?
Line 182: Line 201:
 1. Make sure ''Consts'' are used for all field type names in the write-back header worksheets
Line 193: Line 213:
Line 196: Line 215:
 1. Excel 2007 compatibility (menu)
Line 235: Line 254:

Excel Integration - To Do List

Milestones

  • Deadline: Fri, 20-May-2011

    • Deliver a testable (but not completly tested) version of the excel Client to GMM for evaluation
  • Excel Client must be ready for production use by end of May.


High-Priority Items

Internals

  1. Fix checkDuplicates to check both the drawingCode and drawingId fields

    • Set cell note and highlighting when duplicates found
  2. Review/improve cell note set/clear functions: isCellDifference and setCellDifferenceComment

    • Fix bug when comparing date fields
    • Do not set cell comments in key set area
  3. Implement field locking helper functions that make cells read-only/non-read-only

    • The reduce implementation time (required for lock/unlock the worksheet) the initial implementation should just set field's background to indicate that the field is locked.
  4. Implement Excel 2003 menu

  1. Implement named baskets (Design needed)
    • User can select a named basket download its contents
    • Make sure all calculate fields are readonly
  2. Refresh all/selected should update the record update counts
  3. Review hidden New Document template row

  4. Test that search correctly merges new data with existing data
  5. Mark row as un-savable if revision sequence is incomplete

Edit

  1. Implement Vorabzug ja/nein flag
  2. Implement GA/Freigegeben menu:
  3. Implement Get Next Sequence Number

  4. Test that New Document inserts after selected row

  5. Duplicate Row should duplicate after the last selected row

    • And should not have problems when blank rows are selected
  6. Restart Revision Sequence should fail when record never saved?

Validation

  1. Test Group menu change

  2. Implement client-side field validation
    • Implement Ist fiel validation.

    • Formulas generated from Perl script.

      • See axpo-integration/data/genValidation.pl
    • See Client-Side Validation

  3. Leave Wer and Status field validation for now

Save/Update

  1. Save must handle:

    • Vorabzug flag

    • GA/Freigegeben menu (probably not a problem)

  2. Implement field locking after save. Fields:
    • Bereich

    • Vorabzug flag

    • GA/Freigegeben menu (RevC type)

  3. Duplicate row detection before:
    • search
    • save
    • refresh
  4. Implement checking of record serial numbers on update
  5. Save all/selected should set record update counts
    • Test that a second save results in state with correct record update counts
  6. Generate errors on update/insert when drawing code not complete

Attributes

  1. Make sure Refresh Attributes still works

  2. Get feedback from JS re: recent changes to m_attributeRowCount global variable

Report

  1. Design for Bau and Ausrüstung reports

    • Based on macros?
  2. Implement Bau report
  3. Implement Ausrustung report

Final Cleanup

  1. Re-hide hidden rows/columns in header worksheet
  2. Hide internal worksheets
  3. Set password on VBA code

Test

  1. Setup Excel 2007 test/development environment
  2. Test contract and group menu changes in planning list worksheet
    • Make sure group menu updates when contract changed
    • Make sure user id menus change when contract and group changed


Medium-Priority Items

  1. Performance:
    • Disable screen update during record list processing
    • Profile code to see what is being called for each document/revision
    • Measure performance with large data sets
    • Investigate to see if bubble sort is really needed. Debug prints?
    • Review calls to DoEvents

  2. Implement new columns to display record status and DrawMGT id values (design needed)

  3. In search form implement Gruppe menu with dependency on Bereich menu (design needed)

  4. Test search fields:
    • document code
    • title
    • revision date from/to
    • external reference number
  5. Design for record highlighting:
    • New record (set to yellow)
    • Re-started record (set to yellow). E.g. after restart revision sequence
    • Record changed locally (set to yellow)
    • Client-side error? (set to red)
    • Server-side error (set to red)
    • Record saved (set to white)
  6. Highlighting of changed/new/unsaved records (design needed)

  7. Design for record status fields?
    • May not be needed if the above highlighting is implemented
  8. Resolve record count inaccuracy in search and test cases
  9. Display progress messages in lower message area
  10. Trap Excel-Quit and ask user if unsaved records should be saved (design needed)

  11. Testing prior to release of test candidate to GMM
    • Test basic features
    • Test different contracts/groups


Low-Priority Items

General

  1. Reject revision (design needed)

  2. Sub-revision processing (design needed)

  3. Implement new Magic Row fields:

    • Protocol version
    • Client software version
    • Server software version
  4. Shorten attribute lists (design needed)

    • Via server-side configuration?
  5. Improve new worksheet naming
    • Worksheet count should exclude the number of hidden worksheets
  6. Implement delta menu
    • Column BK Art (Umfang, Inhalt)

  7. Implement document links (design needed)

    • Handling Grundlagen document links

    • Handling PRF/STN document links

Final Cleanup and Packaging

  1. Hiding of internal worksheets (header structure, etc.)
  2. Get code signed with a Axpo certificate?
  3. Assign password to code

Login/Logout

  1. Implement login timeout
  2. Implement code that reacts correctly to auto-logout. E.g. session-timeout
    • Implement a heartbeat function to prevent session timeout?
  3. Check user roles and disallow login is certain roles not present
  4. Login in a specific contract?

Search

  1. Use case: Set next revision based on a document with unknown revision types

Internals and Refactoring

  1. Named ranges
    • Automated management
    • Function for repair/reset of named ranges in case of corruption
    • Clone worksheet
    • Document named ranges and their boundaries
  2. Make sure Consts are used for all field type names in the write-back header worksheets

  3. Change iRow to lRow?

  4. Document new validation columns in header structure
  5. Document and revision (write) record structures
  6. Improved worksheet lookup/access functions (getCellValue/Address)

  7. Improved row selection for printing to worksheet
  8. Refactor define names to improve clarity and remove near-aliases
  9. Identify all magic constants and convert to Consts

  10. Improve function naming:
    • Make function names more business oriented rather than technically descriptive

  11. Review TODOs in code

Compatibility

  1. Excel 2007 compatibility (menu)

Internationalization

  1. Convert all user display text to Const strings
  2. Translate all messages Consts into DE
  3. Implement tag and lookup for form text (design needed)

Testing

  1. Write a test-plan wiki page
  2. Make sure ZK/TN/DD have suitable test environments
  3. Check reading and updating of all fields
  4. Stress/performance testing
    • Searching for long lists
    • Bad input data
  5. Character sets: test with Umlauts
    • Test Umlauts in UTF-8 set to server
    • Test Umlauts in ISO-8859-1 set from server
  6. Compatibility testing
  7. Search tests
  8. Display tests
  9. List menu tests
    • Status menus
    • User menus
    • Flag menus
  10. Editing tests
    • Delta date calculations
    • Drawing code menus
  11. Insert tests
  12. Update tests
  13. Client-side validation tests
  14. Menu item tests
    • Check for duplicates
    • Duplicate selected
  15. Performance tests
  16. HTTPS test
  17. HTTP/HTTPS proxy test

Internal Documentation

  1. List of modules
  2. List of public subs/functions
  3. List of gotchas

    • Blank cells in header regions, caused by use of Excel count2 function

  4. Explanation of complex menu and look formulas)
  5. Convert notes/DesignNotes into Wiki
  6. Revision sequence
  7. Named ranges
  8. URLS for REST transactions
  9. XML structures
    • Returned records
    • Insert/update records

User Documentation

  1. Define outline/structure for user documentation
  2. Setup wiki pages

ExcelIntegrationToDoList (last edited 2011-07-19 17:10:57 by karl)

Copyright 2008-2014, SoftXS GmbH, Switzerland