Differences between revisions 44 and 45
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:
 1. Implement ''Bau'' report
    * Must show progress on 31-May (Tue) meeting with GMM
    * Implement a prototype, that can be expanded into the production version
 1. Implement ''Bau'' reports. There are two reports:
    * Dokumentenlieferprogramm - mainly contains deadline fields: ''Tv, Tzf, Tf, Tgza, T0, T0,wv''
    * Ressourcenplanung - mainly contains ''Wer'' fields and resource (user defined) fields
Line 20: Line 21:
Line 30: Line 32:
 1. '''CRITICAL''' Implement cell locking helper functions that make cells ''read-only/non-read-only''
    * Design/plan for implementing cell locking in protected sheets
    * --(Implementation initial implementation that just sets field's background color to indicate that the field is locked.)--
 1. Implement handling when not logged in:
    * Implement routine to catch and report not being logged in
    * All menu items that access server should be able to respond to a non-logged in error
 1. Implement Excel 2003 menu
Line 35: Line 44:
 1. '''CRITICAL''' Implement cell locking helper functions that make cells ''read-only/non-read-only''
    * Design/plan for implementing cell locking
    * --(Implementation initial implementation that just sets field's background color to indicate that the field is locked.)--
 1. Implement handling when not logged in
    * Implement routine to catch and report not being logged in
    * All menu items that access server should be able to respond to a non-logged in error
 1. Implement Excel 2007 menu
 1. '''TEST''' Make sure worksheet name change doesn't cause problems
Line 46: Line 47:
 1. '''TEST''' Make sure worksheet name change doesn't cause problems
Line 49: Line 51:
 1. '''TEST''' Searching for more than selected the number of records
    * Ensure ''cancel/continue'' dialo
g functions correctly
 1. '''TEST''' Hid
e ''New Worksheet'' checkbox in ''Search'' and ''Test Cases''
    * There appears to be a problem when the ''Layout'' worksheet is hidden.
 1. '''CRITICAL''' Change ''New Worksheet'' checkbox to ''Clear Existing Sheet'' in ''Search'' and ''Test Cases''
 1. '''TEST''' There appears to be a problem when the ''Layout'' worksheet is hidden.
Line 56: Line 56:
    * Make sure that if you re-arrange the order of documents in a worksheet, that search still operates correctly. E.g. check that search is able to recognize existing documents in the worksheet and doesn't depend on the order of documents delivered by the server.
 1. Review hidden ''New Document'' template row
    * Make sure that if you re-arrange the order of documents in a worksheet, that search still operates correctly. E.g. check th t search is able to recognize existing documents in the worksheet and doesn't depend on the order of documents delivered by the s rver.
 1. '''TEST''' Searching for more than selected the number of records
    * Ensure ''cancel/continue'' dialog functions correctly
Line 68: Line 69:
    * Lock and grey-out all ''Vorabzug'' fields if ''Vorabzug'' flag set to 0     --(* Lock and grey-out all ''Vorabzug'' fields if ''Vorabzug'' flag set to 0)--
Line 81: Line 82:
 1. Should ''Restart Revision Sequence'' not be allowed when applied to an unsaved record?  1. Should ''Restart Revision Sequence'' not be allowed when applied to an unsaved record? Probably not
Line 108: Line 109:
 1. '''CRITICAL''' ''Save'' must handle:
    * ''Vorabzug'' flag
 1. '''TEST''' ''Save'' must handle:
    * --(''Vorabzug'' flag)--
Line 111: Line 112:
 1. '''CRITICAL''' Implement field locking after save. Fields:
    * ''Bereich'' menu
    * ''Vorabzug'' flag
 1. '''TEST''' Implement field locking after save. Fields:
    * --(''Bereich'' menu)--
    * --(''Vorabzug'' flag)--
Line 120: Line 121:
    * Make sure that handling of ''m_attributeRowCount'' global variable is OK     * --(Make sure that handling of ''m_attributeRowCount'' global variable is OK)--
Line 124: Line 125:
 1. '''CRITICAL''' Design for ''Bau'' and ''Ausrüstung'' reports
    * Based on simple macros?
 1. '''CRITICAL''' Implement ''Bau'' report
 1. '''CRITICAL''' Implement for ''Bau'' and ''Ausrüstung'' reports
    * Based on simple macros
    * Create report layout sheet: ''Dokumentenlieferprogramm''
    * Create report layout sheet: ''Ressourcenplanung''
Line 138: Line 140:
 1. Setup Excel 2007 test/development environment  1. Setup Excel 2003/2007 test/development environment
Line 147: Line 149:
 1. Performance:  1. '''TEST''' Performance:
Line 151: Line 153:
    * Investigate to see if bubble sort is really needed. Debug prints?     * --(Investigate to see if bubble sort is really needed. Debug prints?)--
Line 154: Line 156:
 1. Implement new columns to display record status and DrawMGT id values ''(design needed)''  1. --(Implement new columns to display record status and DrawMGT id values ''(design needed)'')--
Line 251: Line 253:
 1. Excel 2007 compatibility (menu)  1. Excel 2003 compatibility (menu)

Excel Integration - To Do List

Milestones

  • Deadline: Early June.

    • Deliver a completed and tested version that can be used in production.

Immediate Items to Complete

  1. Implement Bau reports. There are two reports:

    • Dokumentenlieferprogramm - mainly contains deadline fields: Tv, Tzf, Tf, Tgza, T0, T0,wv

    • Ressourcenplanung - mainly contains Wer fields and resource (user defined) fields

  2. Complete functionality: See items marked CRITICAL

    • Vorabzug flag implementation: locking field and saveRow

    • Client-side validation: Testing of Ist field validation

  3. Testing: See items marked TEST

    • Functional testing
    • Performance and stress testing (operations many records)


High-Priority Items

Internals

  1. CRITICAL Implement cell locking helper functions that make cells read-only/non-read-only

    • Design/plan for implementing cell locking in protected sheets
    • Implementation initial implementation that just sets field's background color to indicate that the field is locked.

  2. Implement handling when not logged in:
    • Implement routine to catch and report not being logged in
    • All menu items that access server should be able to respond to a non-logged in error
  3. Implement Excel 2003 menu
  4. Fix checkDuplicates to check both the drawingCode and drawingId fields

    • Set cell note and highlighting when duplicates found

  5. 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

  6. Fix handling/display of progress messages
    • All (most?) menu items should clear display area when operation completes
    • Convert display of Record count to Revision count in search

  7. TEST Make sure worksheet name change doesn't cause problems

  1. CRITICAL Change New Worksheet checkbox to Clear Existing Sheet in Search and Test Cases

  2. TEST There appears to be a problem when the Layout worksheet is hidden.

  3. TEST that Refresh All and Refresh Selected update the record update counts in key set area

    • Search, then make update on the server, refresh the client and ensure that the update counts are correctly updated
  4. TEST that search correctly merges new data with existing data

    • Make sure that if you re-arrange the order of documents in a worksheet, that search still operates correctly. E.g. check th t search is able to recognize existing documents in the worksheet and doesn't depend on the order of documents delivered by the s rver.
  5. TEST Searching for more than selected the number of records

    • Ensure cancel/continue dialog functions correctly

  6. Mark row as un-savable if revision sequence is incomplete?

  7. Implement named baskets (Design needed) WAIT

    • User can select a named basket download its contents
    • Make sure all calculate fields are readonly
  8. Implement checking for duplicate worksheet names

    • Make sure that system doesn't crash if it tries to create a worksheet name that already exists

Edit

  1. CRITICAL Implement Vorabzug ja/nein flag

    • * Lock and grey-out all Vorabzug fields if Vorabzug flag set to 0

    • Clear/reset revisionNo and revisionCode

    • See ExcelIntegrationRequirements#VorabzugFlag

    • Disable plan date formulas when Vorabzug set to false

  2. TEST GA/Freigegeben menu:

  3. TEST Get Next Sequence Number

  4. TEST that New Document inserts after selected row

    • Should append data after last selected cell, or last row if nothing selected
  5. TEST Duplicate Row should duplicate after the last selected row

    • And should not have problems when blank rows are selected
  6. Should Restart Revision Sequence not be allowed when applied to an unsaved record? Probably not

  7. Fix highlighting/de-highlighting of status column. Display colors:
    • gray - saved

    • yellow - changed

    • red - error

Validation

  1. TEST Group menu change

  2. TEST Implement client-side field validation

    • Implement Ist field 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. Generate client-side error on update/insert when drawing code not complete

  2. Implement checking of record serial numbers on update

  3. Save all/selected should set record update counts

    • Test that a second save results in state with correct record update counts

  4. Duplicate row detection before:

    • search / test cases

    • save all / save selected

    • refresh all / refresh selected

  5. TEST Save must handle:

    • Vorabzug flag

    • GA/Freigegeben menu

  6. TEST Implement field locking after save. Fields:

    • Bereich menu

    • Vorabzug flag

    • GA/Freigegeben menu (RevC type) No, does not need to be locked after save

Attributes

  1. TEST Make sure Refresh Attributes still works

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

    • Make sure that handling of m_attributeRowCount global variable is OK

Report

  1. CRITICAL Implement for Bau and Ausrüstung reports

    • Based on simple macros
    • Create report layout sheet: Dokumentenlieferprogramm

    • Create report layout sheet: Ressourcenplanung

  2. Implement Ausrustung report

Final Cleanup

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

Test

  1. Setup Excel 2003/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. TEST 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 highlighting of changed/new/unsaved records
    • 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. Design for record status fields
    • May not be needed if the above highlighting is implemented
  7. Resolve record count inaccuracy in search and test cases
    • Convert record count to revision count

  8. Separate Refresh Attributes into:

    • Refresh Attributes

    • Refresh Users and Roles

  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 2003 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