Deletions are marked like this. | Additions are marked like this. |
Line 22: | Line 22: |
* ''GA/Freigegeben'' flag | * ''GA/Freigegeben'' menu - See [[ExcelIntegrationRequirements#GA.2BAC8-FregegebenMenu]] |
Line 68: | Line 68: |
1. Implement delta menu '''(JS)''' | 1. Implement delta menu '''(JS - WAIT)''' |
Line 73: | Line 73: |
* See [[ExcelIntegrationRequirements#GA.2BAC8-FregegebenMenu]] | |
Line 75: | Line 76: |
1. Implement document links '''(AH/JS/TN)''' (Design needed) | 1. Implement document links '''(AH/JS/TN - WAIT)''' (Design needed) |
Excel Integration - To Do List
Contents
- Excel Integration - To Do List
- Critical Items to Complete ASAP
- High-Priority Items
- Attribute Lists
- Login/Logout
- Search
- Data Display
- Data Editing
- Updating and Inserting Records
- Reject Revisions and Sub-Revisions
- Internals and Refactoring
- Reports
- Compatibility
- Internationalization
- Final Cleanup and Packaging
- Testing
- Internal Documentation
- User Documentation
Critical Items to Complete ASAP
Next Goal: Complete all major functions
- Merge code
- Complete all critical design items
High-Priority Items
Complete search into existing worksheet (JS)
Complete insert/update (AH)
Implement remaining planning list columns: (JS)
Delta menu
Vorabzug flag - See ExcelIntegrationRequirements#VorabzugFlag
GA/Freigegeben menu - See ExcelIntegrationRequirements#GA.2BAC8-FregegebenMenu
- Design remaining open items: (Design needed)
Assigning revisionNo and revisionCode to new records
Restart revision sequence
Implement: Restart revision sequence
Attribute Lists
Make sure Refresh Attributes still works
Shorten attribute lists (Design needed: AH/TN) (low-priority)
- Via server-side config?
Login/Logout
Implement login timout (low-priority)
Implement code that reacts correctly to auto-logout (session-timeout) (low-priority)
- Implement a heartbeat function?
Check user roles and disallow login is certain roles not present (low priority)
Login in a specific contract? (low-priority)
Search
Search request includes max records and allow for cancel/continue (AH)
Resolve record count inaccuracy (AH/TN)
- Save server URL in planning worksheet and implement checks to make sure that future searches and updates and done on the same server (Design needed)
Searches should add/update existing worksheet (JS)
Improve new worksheet naming(low-priority)
- Worksheet count should exclude the number of hidden worksheets
In search form implement Gruppe menu with dependency on Bereich menu (Design needed)
- Test search fields:
- document code
- title
- revision date from/to
- external reference number
Implement named baskets (Design needed) (AH/TN)
- User can select a named basket download its contents
- Display progress messages in lower message area
Data Display
Implement group menu (JS)
- Including link to contract menu
Implement delta menu (JS - WAIT)
Column BK Art (Umfang, Inhalt)
Implement Vorabzug ja/nein flag (JS)
Implement GA/Freigegeben menu: (JS)
- Sets the RevC revision type
- Menu with to choices: freigegeben (13), gut zur Ausführung (15)
Implement document links (AH/JS/TN - WAIT) (Design needed)
- Handling Grundlagen document links
- Handling PRF/STN document links
Performance: (AH)
- Disable screen update during record list processing
- Measure performance with large data sets
- Profile code to see what is being called for each document/revision
- Investigate to see if bubble sort is really needed
Fix bug: cell notes for record differences on date fields (AH)
Data Editing
Check for duplicates (JS)
Implement duplicate selected rows (JS)
Implement get next sequence number (AH?/JS/TN)
Highlighting of changed/new/unsaved records (JS)
Restart revision sequence (AH) (Design needed)
Setting the revisionNo and revisionCode on new revisions (AH) (Design needed)
- Test contract and group menu changes
Client-side validation: (JS)
All dates columns should be in DD.MM.YY format
Ist-dates: Ist date for workflow step must be >= previous Ist-date
Soll-dates: automatically calculated, validation required (Soll date columns should be read-only)
No checking between Ist and Soll dates is required
Wer vs. status:
Offen status: Wer can be empty
non-Offen: Wer must be set
Workflow status vs. Ist-date:
Offen status: Ist-date must be empty
non-Offen: Ist-date must be set to a date <= today
- Workflow steps must be completed in order
If a reject occurs in a workflow step, then no further steps can be completed. E.g. the Ist-dates for subsequent workflow steps cannot be set, nor can their status be set to a non-offen value.
Note that all the status menus default to the appropriate offen status value.
Data types: t0 and t0wv must be dates
- Data types: Resource fields:
Resourcenplannung Planer & PL - can be integers or floating point values. The values represent the number of hours/days of effort planned
von/bis - must be dates
Verteiler - must be integers. The values represent the number of copies to send
- Date format enforcement via data formats in layout sheet?
- Read-only fields:
Doku.-Nr - drawing code
Soll dates
Ver. - revision code (Design needed)
- Test copy-paste operations
Trapping Exit and asking user if unsaved records should be changed (JS)
Updating and Inserting Records
Complete implementation of combined revision save/update (AH)
Duplicate row detection before save (AH)
Handle setting of revisionNo and revisionCode for new records (AH)
Implement checking of record serial numbers on update (AH)
Handle id for updated records (AH)
- Values returned in XML from server
Improve reporting of insert/update errors (report server-side error text) (AH)
Generate errors on update/insert when drawing code not complete (AH)
Reject Revisions and Sub-Revisions
- Reject revision (Design needed)
- Sub-revision processing (Design needed)
Internals and Refactoring
Review TODOs in code
- Named ranges
- Automated management
- Function for repair/reset of named ranges in case of corruption
- Clone worksheet
- Document named ranges and their boundaries
- Document and revision (write) record structures
- Improved worksheet lookup/access functions (getCellValue/Address)
- Improved row selection for printing to worksheet
- Refactoring define names (to improve clarity and remove near-aliases)
Identify magic numbers and convert to Consts
Improve function naming: Make function names more business oriented rather than technically descriptive
Reports
- Implement Bau report (Design needed)
- Implement Ausrustung report
Compatibility
- Setup Excel 2007 test/development environment
- Implement Excel 2003 menu
Internationalization
- Convert all user display text to Const strings
- Translate all messages Consts into DE
- Implement tag and lookup for form text (Design needed)
Final Cleanup and Packaging
- Nice if client-side and datatype checking and validation works off-line
- Hiding of internal worksheets (header structure, etc.)
- Get code signed with a Axpo certificate?
- Assign password to code
Testing
- Write a test-plan wiki page
- Make sure ZK/TN/DD have suitable test environments
- Check reading and updating of all fields
- Stress/performance testing
- Searching for long lists
- Bad input data
- Character sets: test with Umlauts
- Test Umlauts in UTF-8 set to server
- Test Umlauts in ISO-8859-1 set from server
- Compatibility testing
- Search tests
- Display tests
- List menu tests
- Status menus
- User menus
- Flag menus
- Editing tests
- Delta date calculations
- Drawing code menus
- Insert tests
- Update tests
- Client-side validation tests
- Menu item tests
- Check for duplicates
- Duplicate selected
- Performance tests
- HTTPS test
- HTTP/HTTPS proxy test
Internal Documentation
- List of modules
- List of public subs/functions
List of gotchas
Blank cells in header regions, caused by use of Excel count2 function
- Explanation of complex menu and look formulas)
- Convert notes/DesignNotes into Wiki
- Revision sequence
- Named ranges
- URLS for REST transactions
- XML structures
- Returned records
- Insert/update records
User Documentation
- Define outline/structure for user documentation
- Setup wiki pages with