Deletions are marked like this. | Additions are marked like this. |
Line 20: | Line 20: |
Line 23: | Line 23: |
Line 27: | Line 27: |
Line 39: | Line 39: |
Line 49: | Line 49: |
Line 75: | Line 75: |
Line 108: | Line 108: |
Line 112: | Line 112: |
Line 125: | Line 125: |
Line 133: | Line 133: |
Line 137: | Line 137: |
|
|
Line 141: | Line 141: |
Line 147: | Line 147: |
|
COMMENT: When "Create New Document", it is not possible to complete all fields for all revisions because publish files (Ausgabedatei) are required in order to complete next fields and cannot be uploaded using Excel. Therefore, I never tested the scenario below: - if "Create New Document" with title="Excel-Test-MySQL", Zugriff="I-[...]", Projektphase="4-[...]", Fachbereich="03-[...]", Objekt="000-[...]", Kontakt="105-[...]", Dokumenttyp="02-[...]", Laufnr.="0001", title="Excel-Test-MySQL", ∆0="24-12-11"; click "Save Selected". Generates the following data in Revisions table: mysql> select revisionId, title0 from Revisions where title0 = 'Excel-Test-MySQL'; +------------+------------------+ | revisionId | title0 | +------------+------------------+ | 26733 | Excel-Test-MySQL | | 26734 | Excel-Test-MySQL | | 26735 | Excel-Test-MySQL | +------------+------------------+ mysql> select * from Revisions where revisionId IN (26733, 26734, 26735) \G *************************** 1. row *************************** revisionId: 26733 updateCountRev: 0 drawingId: 32719 revisionTypeId: 8 revisionCode: v01 revisionNo: 1 workFlowTypeId: 32 displayWorkFlowTypeId: 105 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: NULL designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: 14 checkResponsibleId: NULL checkStatusId: 10201 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 14 releaserId: NULL releaseStatusId: 10301 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:6:{s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";} *************************** 2. row *************************** revisionId: 26734 updateCountRev: 0 drawingId: 32719 revisionTypeId: 14 revisionCode: v02 revisionNo: 2 workFlowTypeId: 32 displayWorkFlowTypeId: 106 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: 7 designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: 35 checkResponsibleId: NULL checkStatusId: 10401 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 0 releaserId: NULL releaseStatusId: 10501 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:12:{s:16:"revBVorabzugFlag";s:1:"1";s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";s:15:"resourcePlanCad";s:1:"0";s:14:"resourcePlanPi";s:1:"0";s:14:"resourcePlanPl";s:1:"0";s:14:"resourcePlAxpo";s:1:"0";s:15:"resourcePlPruef";s:1:"0";} *************************** 3. row *************************** revisionId: 26735 updateCountRev: 0 drawingId: 32719 revisionTypeId: 13 revisionCode: v03 revisionNo: 3 workFlowTypeId: 32 displayWorkFlowTypeId: 107 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: NULL designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: NULL checkResponsibleId: NULL checkStatusId: 10601 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 7 releaserId: NULL releaseStatusId: 10701 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:7:{s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";s:6:"delta1";s:2:"28";} 3 rows in set (0.01 sec) Plan dates are missing -- FAILED |
Line 151: | Line 472: |
Line 154: | Line 475: |
|
|
Line 158: | Line 479: |
Line 160: | Line 481: |
|
|
Line 164: | Line 485: |
Line 166: | Line 487: |
Line 190: | Line 511: |
Line 192: | Line 513: |
Line 199: | Line 520: |
Line 202: | Line 523: |
Line 205: | Line 526: |
|
|
Line 212: | Line 533: |
Line 215: | Line 536: |
Line 218: | Line 539: |
Line 223: | Line 544: |
Line 225: | Line 546: |
Line 229: | Line 550: |
Line 236: | Line 557: |
Line 240: | Line 561: |
Line 244: | Line 565: |
Line 246: | Line 567: |
Line 264: | Line 585: |
Line 268: | Line 589: |
Line 271: | Line 592: |
Line 273: | Line 594: |
Line 276: | Line 597: |
Line 278: | Line 599: |
Line 282: | Line 603: |
|
|
Line 286: | Line 607: |
Line 289: | Line 610: |
Line 323: | Line 644: |
Line 336: | Line 657: |
Line 348: | Line 669: |
*** High-Priority Items ------------------- |
*** High-Priority Items ------------------- |
Line 359: | Line 680: |
Line 365: | Line 686: |
Line 374: | Line 695: |
Line 377: | Line 698: |
Line 380: | Line 701: |
Line 383: | Line 704: |
Line 395: | Line 716: |
Line 398: | Line 719: |
Line 400: | Line 721: |
Line 404: | Line 725: |
Line 407: | Line 728: |
Line 416: | Line 737: |
Line 419: | Line 740: |
Line 427: | Line 748: |
Line 432: | Line 753: |
Line 434: | Line 755: |
|
|
Line 438: | Line 759: |
Line 447: | Line 768: |
Line 451: | Line 772: |
Line 456: | Line 777: |
Line 459: | Line 780: |
Line 461: | Line 782: |
Line 464: | Line 785: |
Line 472: | Line 793: |
Line 474: | Line 795: |
Line 479: | Line 800: |
Line 482: | Line 803: |
Line 502: | Line 823: |
Line 506: | Line 827: |
Line 508: | Line 829: |
Line 512: | Line 833: |
Line 516: | Line 837: |
Line 521: | Line 842: |
Line 524: | Line 845: |
|
|
Line 527: | Line 848: |
Line 530: | Line 851: |
Line 538: | Line 859: |
Line 540: | Line 861: |
Line 543: | Line 864: |
Line 548: | Line 869: |
Line 550: | Line 871: |
Medium-Priority Items --------------------- |
Medium-Priority Items --------------------- |
Line 559: | Line 880: |
Line 566: | Line 887: |
Line 569: | Line 890: |
Line 572: | Line 893: |
Excel Start-Up -------------- - User can start Excel with an empty planning spreadsheet or a workbook |
Excel Start-Up -------------- - User can start Excel with an empty planning spreadsheet or a workbook |
Line 578: | Line 899: |
- To access metadata in the DrawMGT server, the user must login, using a |
- To access metadata in the DrawMGT server, the user must login, using a |
Line 583: | Line 904: |
- After logging in, spreadsheet data can be downloaded and saved in the | - After logging in, spreadsheet data can be downloaded and saved in the |
Line 585: | Line 906: |
- If the user does not login, he is still able to work off-line, e.g. |
- If the user does not login, he is still able to work off-line, e.g. |
Line 591: | Line 912: |
Downloading Metadata -------------------- |
Downloading Metadata -------------------- |
Line 596: | Line 917: |
Line 599: | Line 920: |
Line 603: | Line 924: |
Line 608: | Line 929: |
Line 615: | Line 936: |
Line 620: | Line 941: |
Line 624: | Line 945: |
Line 626: | Line 947: |
Line 631: | Line 952: |
Creating New Metadata --------------------- |
Creating New Metadata --------------------- |
Line 636: | Line 957: |
Line 639: | Line 960: |
Line 644: | Line 965: |
Synchronizing Spreadsheet Metadata ---------------------------------- |
Synchronizing Spreadsheet Metadata ---------------------------------- |
Line 649: | Line 970: |
Line 654: | Line 975: |
Line 657: | Line 978: |
Line 660: | Line 981: |
Line 662: | Line 983: |
Line 665: | Line 986: |
Line 670: | Line 991: |
Document and Revision Workflows ------------------------------- |
Document and Revision Workflows ------------------------------- |
Line 680: | Line 1001: |
Line 684: | Line 1005: |
Line 686: | Line 1007: |
Line 689: | Line 1010: |
Line 692: | Line 1013: |
Line 698: | Line 1019: |
Reports ------- |
Reports ------- |
Line 706: | Line 1027: |
Saving Metadata --------------- |
Saving Metadata --------------- |
Line 710: | Line 1031: |
Line 713: | Line 1034: |
Line 717: | Line 1038: |
Line 722: | Line 1043: |
Exiting Excel ------------- |
Exiting Excel ------------- |
Line 728: | Line 1049: |
Line 733: | Line 1054: |
Document and Revision Process Operations ---------------------------------------- |
Document and Revision Process Operations ---------------------------------------- |
Line 740: | Line 1061: |
Line 744: | Line 1065: |
Line 751: | Line 1072: |
Line 755: | Line 1076: |
Line 759: | Line 1080: |
Line 765: | Line 1086: |
Login, Start-Up and Exit ------------------------ |
Login, Start-Up and Exit ------------------------ |
Line 773: | Line 1094: |
Line 777: | Line 1098: |
Line 779: | Line 1100: |
Line 781: | Line 1102: |
Line 786: | Line 1107: |
Line 790: | Line 1111: |
Create New Document ------------------- |
Create New Document ------------------- |
Line 795: | Line 1116: |
Line 801: | Line 1122: |
Refresh Selected ---------------- |
Refresh Selected ---------------- |
Line 805: | Line 1126: |
Line 808: | Line 1129: |
Line 816: | Line 1137: |
Line 819: | Line 1140: |
Line 823: | Line 1144: |
Line 827: | Line 1148: |
Save Selected ------------- |
Save Selected ------------- |
Line 834: | Line 1155: |
Line 842: | Line 1163: |
Line 851: | Line 1172: |
Line 859: | Line 1180: |
Check for Duplicates -------------------- |
Check for Duplicates -------------------- |
Line 863: | Line 1184: |
Duplicate Selected ------------------ |
Duplicate Selected ------------------ |
Line 867: | Line 1188: |
Get Next Sequence ----------------- |
Get Next Sequence ----------------- |
Excel Integration - Testing Notes
Test against ...
requirements given in DrawMGT-AxpoExcelIntegration-15.pdf (Chapter 2)
client-side implementation in DrawMGT-AxpoExcelIntegration-15.pdf (Chapter 4)
use cases given in DrawMGT-AxpoExcelIntegration-15.pdf (Appendix A)
Test notes at ExcelIntegrationToDoList#Testing
All tests against DrawMGT-AxpoExcelIntegration-15.pdf are performed with ExcelIntegrationAxpoDemoNotes in mind!
Every tested feature is protocolled below.
IST / Status ------------ - if "Create New Document" with the following IST-status sensitive combinations, I get the following results after "Save Selected": - no Ist(AT), Wer(AU): -- OK - Ist(AT) set to [today,future,past], no Wer(AU): -- OK - Ist(AT) set to [today,future,past], Wer(AU): --OK - Ist(AY) set to [today,future,past], no Wer(AZ), no Status(BA): - alert is wrapped in XML -- FAILED - no Ist (AY), Wer (AZ), no Status(BA): -- OK - no Ist (AY), no Wer (AZ), Status(BA): - alert is wrapped in XML -- FAILED - Ist(AY) set to [today,future,past], Wer(AZ), no Status(BA): - alert is wrapped in XML -- FAILED - no Ist (AY), Wer (AZ), Status(BA): - alert is wrapped in XML -- FAILED - Ist(AY) set to [today,future,past], Wer(AZ), Status(BA): - alert is wrapped in XML -- FAILED - Ist(BE) set to [today,future,past], no Wer(BF), no Status(BG): - alert is wrapped in XML -- FAILED - no Ist (BE), Wer (BF), no Status(BG): -- OK - no Ist (BE), no Wer (BF), Status(BG): -- OK - Ist(BE) set to [today,future,past], Wer(BF), no Status(BG): - alert is wrapped in XML -- FAILED - no Ist (BE), Wer (BF), Status(BG): -- OK - Ist(BE) set to [today,future,past], Wer(BF), Status(BG): - alert is wrapped in XML -- FAILED - no Ist(BL), Wer(BM): -- OK - Ist(BL) set to [today,future,past], no Wer(BM): -- OK - Ist(BL) set to [today,future,past], Wer(BM): -- OK - Ist(BR) set to [today,future,past], no Wer(BS), no Status(BT): - alert is wrapped in XML -- FAILED - no Ist(BR), Wer(BS), no Status(BT): -- OK - no Ist(BR), no Wer(BS), Status(BT): - alert is wrapped in XML -- FAILED - Ist(BR) set to [today,future,past], Wer(BS), no Status(BT): - alert is wrapped in XML -- FAILED - no Ist(BR), Wer(BS), Status(BT): - alert is wrapped in XML -- FAILED - Ist(BR) set to [today,future,past], Wer(BS), Status(BT): - alert is wrapped in XML -- FAILED - Ist(BY) set to [today,future,past], no Wer(BZ), no Status(CA): - alert is wrapped in XML -- FAILED - no Ist (BY), Wer (BZ), no Status(CA): -- OK - no Ist (BY), no Wer (BZ), Status(CA): -- OK - Ist(BY) set to [today,future,past], Wer(BZ), no Status(CA): - alert is wrapped in XML -- FAILED - no Ist(BY), Wer (BZ), Status(CA): -- OK - Ist(BY) set to [today,future,past], Wer(BZ), Status(CA): - alert is wrapped in XML -- FAILED - no Ist(CF), Wer(CG): -- OK - Ist(CF) set to [today,future,past], no Wer(CG) or ... - Ist(CF) set to [today,future,past], Wer(CG) - if the document was successfully saved before, IST can be set to ANY valid date, I receive an error saying "Invalid Date" -- FAILED - if the document was not saved before, and if IST > today, I receive an error saying "keep your fingers crossed" -- FAILED - if the document was not saved before, if IST < today, I receive no error -- FAILED - Ist(CH) set to [today,future,past], no Wer(CI), no Status(CJ): - alert is wrapped in XML -- FAILED - no Ist (CH), Wer (CI), no Status(CJ): -- OK - no Ist (CH), no Wer (CI), Status(CJ): - alert is wrapped in XML -- FAILED - Ist(CH) set to [today,future,past], Wer(CI), no Status(CJ): - alert is wrapped in XML -- FAILED - no Ist (CH), Wer (CI), Status(CJ): - alert is wrapped in XML -- FAILED - Ist(CH) set to [today,future,past], Wer(CI), Status(CJ): -- OK - Ist(CN) set to [today,future,past], no Wer(CO), no Status(CP): - alert is wrapped in XML -- FAILED - no Ist (CN), Wer (CO), no Status(CP): -- OK - no Ist (CN), no Wer (CO), Status(CP): -- OK - Ist(CN) set to [today,future,past], Wer(CO), no Status(CP): - alert is wrapped in XML -- FAILED - no Ist (CN), Wer (CO), Status(CP): -- OK - Ist(CN) set to [today,future,past], Wer(CO), Status(CP): - alert is wrapped in XML -- FAILED Vorabzug Flag handling / RevC Revision Type menu handling --------------------------------------------------------- onChange RecC Revision type behavior (CD): - gut zur Ausführung: sets to keyRefCTypeId = 15 -- OK - Freigegeben: sets to keyRefCTypeId = 13 -- OK onChange Vorabzug behavior (AP): - ja: - Vorabzug fields are locked -- FAILED - after save: - revBVorabzugFlag => 1 -- OK - menu static: -- FAILED - Vorabzug fields are locked -- FAILED - revision code changed: -- FAILED - nein: - Vorabzug fields are unlocked -- OK - after save: - menu static: -- FAILED - revBVorabzugFlag => 0 -- OK - Vorabzug fields are locked -- FAILED - revision code changed: -- FAILED COMMENT: When Vorabzug fields are 'locked', it's still possible to enter data and select from select menues. Also, if I change the Vorabzug flag, the revision code is not changed. Create New Document ------------------- 'Create New Document' inserts after selected row: - selected row = none: alert appears "Unable to create document in header area" -- OK - selected row = contains document: new document is placed after last document row -- OK COMMENT: When "Create New Document", it is not possible to complete all fields for all revisions because publish files (Ausgabedatei) are required in order to complete next fields and cannot be uploaded using Excel. Therefore, I never tested the scenario below: - if "Create New Document" with title="Excel-Test-MySQL", Zugriff="I-[...]", Projektphase="4-[...]", Fachbereich="03-[...]", Objekt="000-[...]", Kontakt="105-[...]", Dokumenttyp="02-[...]", Laufnr.="0001", title="Excel-Test-MySQL", ∆0="24-12-11"; click "Save Selected". Generates the following data in Revisions table: mysql> select revisionId, title0 from Revisions where title0 = 'Excel-Test-MySQL'; +------------+------------------+ | revisionId | title0 | +------------+------------------+ | 26733 | Excel-Test-MySQL | | 26734 | Excel-Test-MySQL | | 26735 | Excel-Test-MySQL | +------------+------------------+ mysql> select * from Revisions where revisionId IN (26733, 26734, 26735) \G *************************** 1. row *************************** revisionId: 26733 updateCountRev: 0 drawingId: 32719 revisionTypeId: 8 revisionCode: v01 revisionNo: 1 workFlowTypeId: 32 displayWorkFlowTypeId: 105 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: NULL designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: 14 checkResponsibleId: NULL checkStatusId: 10201 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 14 releaserId: NULL releaseStatusId: 10301 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:6:{s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";} *************************** 2. row *************************** revisionId: 26734 updateCountRev: 0 drawingId: 32719 revisionTypeId: 14 revisionCode: v02 revisionNo: 2 workFlowTypeId: 32 displayWorkFlowTypeId: 106 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: 7 designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: 35 checkResponsibleId: NULL checkStatusId: 10401 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 0 releaserId: NULL releaseStatusId: 10501 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:12:{s:16:"revBVorabzugFlag";s:1:"1";s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";s:15:"resourcePlanCad";s:1:"0";s:14:"resourcePlanPi";s:1:"0";s:14:"resourcePlanPl";s:1:"0";s:14:"resourcePlAxpo";s:1:"0";s:15:"resourcePlPruef";s:1:"0";} *************************** 3. row *************************** revisionId: 26735 updateCountRev: 0 drawingId: 32719 revisionTypeId: 13 revisionCode: v03 revisionNo: 3 workFlowTypeId: 32 displayWorkFlowTypeId: 107 layoutTypeId: 2 lockedFlag: 0 supersededFlag: 0 matureFlag: 0 restrictedFlag: 0 revisionDate: NULL workFlowCommentId: NULL designPlanStartDate: NULL designPlanDate: NULL designCompleteDate: NULL designEffort: NULL designResponsibleId: NULL draftPlanStartDate: NULL draftEffort: NULL drafterResponsibleId: NULL checkPlanStartDate: NULL checkPlanDate: NULL checkCompleteDate: NULL checkEffort: NULL checkResponsibleId: NULL checkStatusId: 10601 checkCommentNoteId: NULL receivePlanStartDate: NULL receivePlanDate: NULL receiveCompleteDate: NULL receiveEffort: NULL receiverId: NULL approve1PlanStartDate: NULL approve1PlanDate: NULL approve1CompleteDate: NULL approve1Effort: NULL approver1Id: NULL approval1StatusId: NULL approval1CommentNoteId: NULL approve2PlanStartDate: NULL approve2PlanDate: NULL approve2CompleteDate: NULL approve2Effort: NULL approver2Id: NULL approval2StatusId: NULL approval2CommentNoteId: NULL approve3PlanStartDate: NULL approve3PlanDate: NULL approve3CompleteDate: NULL approve3Effort: NULL approver3Id: NULL approval3StatusId: NULL approval3CommentNoteId: NULL approve4PlanStartDate: NULL approve4PlanDate: NULL approve4CompleteDate: NULL approve4Effort: NULL approver4Id: NULL approval4StatusId: NULL approval4CommentNoteId: NULL releasePlanStartDate: NULL releasePlanDate: NULL releaseCompleteDate: NULL releaseEffort: 7 releaserId: NULL releaseStatusId: 10701 releaseCommentNoteId: NULL submitPlanDate: NULL submitCompleteDate: NULL submitterId: NULL submittalId: NULL submittalCode: NULL title0Id: NULL title0: Excel-Test-MySQL title1: Tiel-2 title2: NULL title3: NULL author: NULL abstract: NULL scale: NULL sizeId: NULL orientationId: NULL description: NULL reasonForIssue: NULL requesterUserId: NULL requestorCompanyId: NULL sourceFilename: NULL sourceFileTypeId: NULL sourceFilesize: NULL publishFilename: NULL publishFileTypeId: NULL publishFilesize: NULL externalKeyRev: NULL userDefinedFields: a:7:{s:11:"verteilerPl";s:1:"0";s:11:"verteilerPi";s:1:"0";s:13:"verteilerOebl";s:1:"0";s:11:"verteilerUn";s:1:"0";s:12:"verteilerExt";s:1:"0";s:15:"verteilerAblage";s:1:"0";s:6:"delta1";s:2:"28";} 3 rows in set (0.01 sec) Plan dates are missing -- FAILED Duplicate Selected ------------------ - when blank row selected -- OK - when non-blank row selected -- OK Check for Duplicates -------------------- Correctly highlights found duplicates -- OK Delta calculations ------------------ The rules are ... Soll TGZA (CM) = T0 (CS) - ∆1 (CR) Soll TF (BX) = Soll TGZA (CM) - ∆2 (CL) PrüfSoll (BQ) = Soll TF (BX) - ∆3 (BW) Soll TZF (BK) = PrüfSoll (BQ) - ∆4 (BO) BrSoll (BD) = Soll TZF (BK) - ∆5 (BJ) StnSoll (AX) = BrSoll (BD) - ∆6 (BC) Soll TV (AS) = StnSoll (AX) - ∆7 (AV) ... or the other way around ... Soll TV (AS) + ∆7 (AV) = StnSoll (AX) StnSoll (AX) + ∆6 (BC) = BrSoll (BD) BrSoll (BD) + ∆5 (BJ) = Soll TZF (BK) Soll TZF (BK) + ∆4 (BO) = PrüfSoll (BQ) PrüfSoll (BQ) + ∆3 (BW) = Soll TF (BX) Soll TF (BX) + ∆2 (CL) = Soll TGZA (CM) Soll TGZA (CM) + ∆1 (CR) = T0 (CS) ... simplyfied ... Soll TV (AS) + ∆7 (AV) + ∆6 (BC) + ∆5 (BJ) + ∆4 (BO) + ∆3 (BW) + ∆2 (CL) + ∆1 (CR) = T0 (CS) Therefore ... If I set ∆0 to a date in the future, and enter expression "=AS23+(AV23+BC23+BJ23+BO23+BW23+CL23+CR23)" in an Excel cell [adding the sum of deltas except ∆0 to Soll TV (AS23)], and change random deltas except for ∆0, the result always equals to ∆0 (CS23) -- OK Also, I added cells right below Soll date cells to proof, that ... Soll TV (AS) + ∆7 (AV) = StnSoll (AX) [...] ... and changed random deltas again, and compared these cells with all the soll dates. There are no differences -- OK Umlauts ------- Umlaut characters created from the Web GUI in text fields (e.g. titles and other text fields), and then displayed in the Web GUI. -- OK Umlaut characters created in Excel in text fields, and then displayed in Excel. -- OK New document created in Excel with umlauts in titles (1-4), and then saved to server. Display in web-interface -- OK New document in web-interface (title "Excel-Test-Umlauts-From-Server (äöü)") with all required versions for VA, ZF, FR created and saved; Afterwards, "Search Documents" in Excel with Rapport "Bau", Bereich "LC1" and Titel "Excel-Test-Umlaut": -- OK HTTP response 200 Response text: <?xml version='1.0' encoding='UTF-8'?> <record id='26696' type='Revisions' key='revisionId'> [...] <title0>Excel-Test-Umlauts-From-Server (äöü)</title0> [...] </record> Update existing but changed document with updated titles (v2/ZF revision only) in Excel with "Refresh Selected": -- OK Search Documents ---------------- Dok. Nr.: - with valid revision code: -- OK - with invalid revision code (e.g. 'blabla', '1df3'): -- FAILED Bereich: - with valid selection: -- OK - with invalid data (e.g. 'blabla', '1df3'): -- FAILED QUESTION: Can I test other 'Bereiche' than 'LC1'? Zugriff, Projektphase, Fachbereich, Objekt, Kontakt, Dokumenttyp, Gruppe, Archiv, Lage: - with valid selection: -- OK - with invalid data (e.g. 'blabla', '1df3'): -- FAILED COMMENT: Entering invalid data also leads to funny results being placed in the worksheet. AMENDMENT: In selects, it should not be possible to enter custom data. Laufnummer (von - bis): - with valid data: -- OK - with invalid data (e.g. 'abcde', '1df3'): -- OK Place results in new worksheet -- OK Titel -- OK Ext. Ref.: - with valid value: -- OK - with invalid value (e.g. 'abcde', '1df3'): -- FAILED COMMENT: If a document has 'Ext. Ref.' = 'abcde', and I search for 'Ext. Ref.' = 'abcde', the search returns the desired result. QUESTION: What is a valid value for 'Ext. Ref.'? Versionsdatum (von - bis) -- ??? QUESTION: How can I test this? 'Search' button: -- OK AMENDMENT: If nothing is entered, and 'Search' is clicked, a confusing alert message appears: 'Eingabe Fehler / Test Case: Feld erforderlich'. Basic Tests ----------- 1. Check reading and updating of all fields: -------------------------------------------- From Excel to server: - Bereich (static) -- ??? - Gruppe (ignored?) -- FAILED - Archiv -- OK - Berechtigung Server (Z) -- OK - Klassifizierung Projektphase (Ph) -- OK - Klassifizierung Fachbereich (FB) -- OK - Objekt (O) -- OK - Kontakt (K) -- OK - Dokumenttyp (DT) -- OK QUESTION: Dokumenttyp 03.1/03.2 etc that exist in Excel are not existing in my system yet. - Laufnummer -- OK - Dokumenttitel 1 -- OK - Dokumenttitel 2 -- OK - Dokumenttitel 3 -- OK - Dokumenttitel 4 -- OK - Massstab -- FAILED - Format -- FAILED - Version (static) -- OK Vorabzug: - Erstellen Soll (static) -- OK - Erstellen Ist -- OK - Erstellen Wer -- OK - Stellungnahme erstellt Status -- OK - Stellungnahme erstellt Soll (static) -- OK - Stellungnahme erstellt Ist -- OK - Stellungnahme erstellt Wer -- OK - bereinigt Status -- OK - bereinigt Soll -- OK - bereinigt Ist -- OK - bereinigt Wer -- OK zur Freigabe: - Erstellen Soll (static) -- OK - Erstellen Ist -- OK - Erstellen Wer -- OK - Prüfbericht erstellt Status -- OK - Prüfbericht erstellt Soll (static) -- OK - Prüfbericht erstellt Ist -- OK - Prüfbericht erstellt Wer -- OK - Freigabe Status -- OK - Freigabe Soll (static) -- OK - Freigabe Ist -- OK - Freigabe Wer -- OK Gut zur Ausführung: - versendet an BL Ist -- OK - versendet an BL Wer -- OK - erhalten von BL Status -- OK - erhalten von BL Ist -- OK - erhalten von BL Wer -- OK - übergeben an UN Status -- OK - übergeben an UN Soll (static) -- OK - übergeben an UN Ist -- OK - übergeben an UN Wer -- OK *** High-Priority Items ------------------- Internals --------- 1. CRITICAL Implement cell locking helper functions that make cells read-only/non-read-only - Implementation initial implementation that just sets field's background color to indicate that the field is locked. -- OK 2. TEST Fix handling/display of progress messages: - Convert display of Record count to Revision count in search -- (check lower right msg in Excel -- not critical now) - All (most?) menu items should clear display area when operation completes -- OK 7. Fix checkDuplicates to check both the drawingCode and drawingId fields -- OK - Set cell note and highlighting when duplicates found -- OK 8. Review/improve cell note set/clear functions: isCellDifference and setCellDifferenceComment -- FAILED - Fix bug when comparing date fields -- FAILED - Do not set cell comments in key set area -- (to be tested) (check title, dates for changes after 'Refresh Selected') make sure, that hidden red fields NEVER have cell comment Note: Date fields should only have a comment after a 'Refresh Selected', if an update on the server side changed dates. If T0 Arbeits-BP (CS) is set, the calculated SOLL dates are not saved on the server -- FAILED If changed in web-interface and 'Refresh Selected' in Excel: - VA Erstellen: Soll, Ist, Wer - Ist -- OK - Wer -- OK - VA Stellungnahme - Ist -- OK - Wer -- OK - VA Bereinigung - Ist -- OK - Wer -- OK Search ------ 7. Implement checking for duplicate worksheet names -- OK After manually creating new worksheet named 'Bau-23', I 'Search Documents' with 'Place results in new worksheet', and received a new worksheet named 'Bau-24' -- OK Edit ---- 3. CRITICAL (AH) Implement Vorabzug ja/nein flag - Lock and grey-out all Vorabzug fields if Vorabzug flag set to 0 -- test later - Disable plan date formulas when Vorabzug set to false -- test later 5. TEST GA/Freigegeben menu: - Sets the RevC revisionTypeId -- OK (CA-CF select -> show; should give you RevC value) - Menu with two choices: freigegeben (13) and gut zur Ausführung (15) -- OK COMMENT: revisionTypeId changes in cell CE, when switching from 'freigegeben' to 'gut zur Ausführung' and vice-versa, but changes are not saved on the server after 'Save Selected'. -- FAILED Validation ---------- 1. TEST Client-side field validation - Implement Ist field validation.-- OK - Formulas generated from Perl script. -- (to be tested) - See axpo-integration/data/genValidation.pl -- (to be tested) MEANING: Test Analog workflow wizard validation (except Soll)! Save/Update ----------- 1. TEST Save handling of Vorabzug menu and GA/Freigegeben menus - Vorabzug flag -- ? (AP, if already "ja", it should be locked. Check specs) - GA/Freigegeben menu -- ? (After it was set, it should be locked.) NOT YET IMPLEMENTED: Basically, after save, both menues are to be locked. MEANING: Both menues determine document codes. Check specs 5.2.1 Axpo Revision Sequence, 5.2.2 Sub-Revision Coding System, and test against them. 2. TEST Implement field locking after save. Fields: - Bereich menu -- OK - Vorabzug flag -- OK - GA/Freigegeben menu (RevC type) -- OK 3. Generate client-side error on update/insert when drawing code not complete -- FAILED - Sometimes, client-side errors still are wrapped in XML tags - After "New document" with title only set to "Excel-Test-2", I correctly receive an error ... saveRow: Internal error: Invalid XML Response. HTTP response: 400 Response text: <?xml version='1.0' encoding='UTF-8'?> <response type='Drawings' key='drawingId' id='' ref='Doc'> <error>Feld 'Dok. Nr.'-'Laufnummer' ist ung?ltig.</error> <error>Feld 'Dok. Nr.' ist ung?ltig.</error> </response> 64 -- FAILED AMENDMENT: The error should not be wrapped in XML tags. - After "New document" with title 'Excel-Test-2', Laufnummer '0001' I correctly receive an error -- OK - After "New document" with title '', Laufnummer '0001' I correctly receive an error -- OK - After "New document" with title 'Excel-Test-4', Berechtigung Server (Z) "E-Extern", Klassifizierung Projektphase (Ph) "0 - phasenunabhängig", Klassifizierung Fachbereich (FB) "01.3 - Management - Versicherung", Objekt (O) "101 - Bestehende Anlagen - Stauanlage Limmernsee", Kontakt (K) "102 - Unternehmer und Lieferanten - ALSTOM Hydro Schweiz AG", Dokumenttyp (DT) "03.1 - Protokoll - Sitzungsprotokoll" and Laufnummer "0001", I correctly receive an error, but the error is rather confusing ... saveRow: Internal error: Invalid XML Response. HTTP response: 400 Response text: <?xml version='1.0' encoding='UTF-8'?> <response type='Drawings' key='drawingId' id='' ref='Doc'> <error>Feld 'Dok. Nr.' 'Objekt' muss angegeben werden.</error> <error>Feld 'Dok. Nr.' 'Kontakt' muss angegeben werden.</error> <error>Feld 'Dok. Nr.' 'Dokumenttyp' muss angegeben werden.</error> <error>Feld 'Dok. Nr.' 'Laufnummer' muss angegeben werden.</error> <error>Feld 'Dok. Nr.' ist ung?ltig.</error> </response> 64 -- FAILED AMENDMENT: The error should not be wrapped in XML tags. 4. Implement checking of record serial numbers on update -- FAILED Changed title of document in Excel (without saving), then changed title of same document (type 'v2/ZF/zur Freigabe') in web-interface with saving. 'Save Selected' in Excel shows expected error message: Update/Save error: Record: zur Freigabe • BOBaseUpdate (Revisions): simultaneous update (update counter mismatch:1 != 0) -- OK - If you change title, B4 should increment value on the row of actual document. -- FAILED - updateCount mismatch: update doc in web-interface, then try to save same document in excel, should give error -- OK 5. Save all/selected should set record update counts -- FAILED - Test that a second save results in state with correct record update counts -- (to be tested) QUESTION: Under what condition should keyDocUpdateCountDoc (Excel cell:B{n}) increment its value? 6. Duplicate row detection before: - search / test cases -- ? - save all / save selected -- ? - refresh all / refresh selected -- ? MEANING: Check specs for it and test against. TODO Attributes ---------- 2. Get feedback from JS re: recent changes to m_attributeRowCount global variable -- ? - Make sure that handling of m_attributeRowCount global variable is OK -- ? MEANING: Test 'Refresh Attributes' get all metadata from server. Medium-Priority Items --------------------- 6. TEST Performance: - Disable screen update during record list processing -- ? - Investigate to see if bubble sort is really needed. Debug prints? -- ? MEANING: create many records. User Search and measure how long it takes. 13. Implement new columns to display record status and DrawMGT id values (design needed) -- (to be tested) MEANING: Cell R, if gelb = change, pink = error, white = ok 14. Design for record status fields - May not be needed if the above highlighting is implemented -- ? MEANING: Same as above. Excel Start-Up -------------- - User can start Excel with an empty planning spreadsheet or a workbook containing already-defined document and revision metadata -- OK - To access metadata in the DrawMGT server, the user must login, using a custom Excel menu item, using their normal DrawMGT login name and password. -- OK - After logging in, spreadsheet data can be downloaded and saved in the DrawMGT server -- OK - If the user does not login, he is still able to work off-line, e.g. perform operations that do not require access to the DrawMGT server -- OK Downloading Metadata -------------------- - The user can download metadata from the DrawMGT server using a search operation -- OK - It is possible to search by: document title, code and classification attributes -- OK - In the search screen, the drop down menus of classification attributes can be shortened by eliminating attributes not relevant to the planning process. -- (ignore for now) - Search results are processed as followed: - Search results are merged with an existing worksheet. Existing records in the worksheet are updated with the latest server data, new records are added to the worksheet -- OK - The DrawMGT server checks the user’s roles and only downloads metadata that the user has rights to view -- FAILED COMMENT: If a user has Dok-beschr.Viewer role only and it is searched for a document that is not completed yet, the document gets still placed in Excel. AMENDMENT: Even if Dok-beschr.Viewer allows to see completed documents, cells still can be changed for a completed document. In my personal opinion, it would be less confusing to have the cells locked in that case. QUESTION: If a user has Dok-beschr.Viewer, shouldn't he be allowed to have a new document being placed in the worksheet after he clicked 'Create New Document' ? ANSWER: User should not be able to do that. - A warning is given if a search will return a large number of records, and allow the user to cancel the search -- OK Creating New Metadata --------------------- - New metadata can be created in the planning workbook using Excel’s normal copy/paste and fill operations -- OK - Metadata for new documents and revisions can be saved to the DrawMGT server -- OK - The Excel planning spreadsheet cannot be used to delete document and revision records from the DrawMGT server -- OK Synchronizing Spreadsheet Metadata ---------------------------------- - The document rows in the planning worksheet can be synchronized with latest metadata from DrawMGT server -- OK - The planning spreadsheet is able to detect conflicting updates and, the event of a conflict, reports the before/after field values in the worksheet to the user for possible manual inspection and correction -- AMENDMENT: The error message 'Sie sind für diese Transaktion nicht authorisiert.' shown inside an XML wrapper - Unsaved data, including new records that have never been saved, are highlighted to alert the user -- OK The highlight on column R{n} says: - "Row changed", when an existing document was changed but not yet saved -- OK - "Not saved", when a new document was changed but not yet saved -- OK Document and Revision Workflows ------------------------------- - Management of workflow steps associated with the Vorabzug, zur Freigabe and Gut zur Ausführung / Freigegeben workflows. Includes person responsible, planned/actual complete dates and status (for workflow steps with a status field): - Erstellen --OK - Stellungnahme and Prüfberichte -- OK - Freigabe -- OK - Display of appropriate workflow step names in the DrawMGT web-interface (e.g. ‘Bereinigung’ instead of ‘Freigabe’ for Vorabzug revisions) -- OK COMMENT: 'bereinigt' is shown instead of 'Bereinigung'. - Calculate revision workflow step plan-dates using standard date calculation formulas -- OK - Override the standard workflow date formulas on an individual document and revision basis -- OK - The DrawMGT server performs validation before saving data - The user’s roles are checked and enforced -- (to be tested) - Data values are validated -- OK Reports ------- - Reports Dokumentlieferungplan ('Create Report 02F1') and Resourcenplan ('Create Report 02F1') can be generated from the planning worksheet -- (to be tested) Saving Metadata --------------- - The user can save one or more selected rows -- (to be tested) - The save operation checks each record for conflicting updates on the DrawMGT server -- (to be tested) - All records where a conflict (or error) is detected are highlighted. Both the local and server field values are available, so that the user can manually correct the record. -- (to be tested) - All records that can be saved without conflicts are saved and de-highlighted -- (to be tested) Exiting Excel ------------- - If there are any unsaved records and the user attempts to exit Excel, a warning is displayed and the user is given the option to abort the exit -- FAILED COMMENT: If "Create New Document" witout saving or I change an existing document without saving, and exit Excel, I only receive Excel's Standard Exit Alert: "Do you want to save the changes you made to 'LinthalDrawmgt-Planning-1.xlsm" Document and Revision Process Operations ---------------------------------------- - Ability to create sub-revisions in order to capture the history of rejected and internally reviewed revisions. -- (to be tested) - Ability to link documents to other documents, including: - Linking a document to a document, without specifying which revision -- (to be tested) - Linking a document to a specific revision or the latest revision -- (to be tested) - New document types: - Prüfbericht -- OK - Stellungnahme -- OK - Ability to set a ‘revision date’ to all revisions of a document, independent of the dates associated with the revision’s workflow -- (to be tested) - Removal of planned titles from document records (requires that every document have revision defined, which will contain the title) -- (to be tested) - Ability to assign a serial number and prefix (e.g. ‘PBR-LA2-0001’) to a document as a classification attribute. The serial numbers should assigned sequentially and be unique for a given prefix. -- OK Login, Start-Up and Exit ------------------------ - User can provide 'Benutzername', 'Passwort', select from a list of servers, and log-in -- OK Start-Up Procedure ------------------ If the user successfully logs into the DrawMGT server then a procedure is initiated which downloads the following into the spreadsheet: 1. The latest VBA code for the spreadsheet -- (to be tested) 2. Attribute lists -- (to be tested) 3. User lists -- FAILED COMMENT: When I set user 'Hans Muster' on loki test-server, and 'Refresh Selected' in Excel, the user displayed is 'Albert Franz'. 4. User role lists -- (to be tested) Create New Document ------------------- - click menu ribbon 'Create New Document', cells are filled with template data -- OK AMENDMENTS: - Dokumenttitel 2 should be 'Titel-2' - it should not be possible to enter chars in Lauf-/ Teilnummer cells Refresh Selected ---------------- After change in web-interface - update document code -- OK - update title -- FAILED - update VA Erstellen (Ist, Wer) -- OK - update VA Stellungnahme (Ist, Wer, Status) Ist -- OK Wer -- FAILED (is 'Abert Franz' should be 'Muster Hans') COMMENT: 'Muster Hans' is not found in worksheet 'Users'. Therefore, I guess the misassignment happens because the users list is updated from a source other than loki? Status -- OK - update VA Bereinigung (Ist, Wer, Status) -- OK - update ZF Erstellen (Ist, Wer) -- OK - update ZF Prüfbericht (Ist, Wer, Status) -- OK - update ZF Freigabe (Ist, Wer, Status) -- OK - update GA Versand (Ist, Wer) -- OK - update GA erhalten von BL (Ist, Wer, Status) -- OK - update GA übergeben an UN (Ist, Wer, Status) -- OK Save Selected ------------- - update document code -- OK - update title (with Umlauts) -- OK - update VA Erstellen Soll -- OK - update VA Stellungnahme Status -- OK - update VA Stellungnahme Dauer -- OK - update VA Stellungnahme Soll -- OK - update VA Bereinigung Status -- OK - update VA Bereinigung Dauer -- OK - update VA Bereinigung Soll -- OK - update ZF Erstellen Dauer -- OK - update ZF Erstellen Soll -- OK - update ZF Prüfbericht Status -- OK - update ZF Prüfbericht Dauer -- OK - update ZF Prüfbericht Soll -- OK - update ZF Freigabe Status -- OK - update ZF Freigabe Dauer -- OK - update ZF Freigabe Soll -- OK - update GA erhalten von BL Status -- OK - update GA erhalten von BL Dauer -- OK - update GA übergeben an UN Status -- OK - update GA übergeben an UN Dauer -- OK - update GA übergeben an UN Soll -- OK Check for Duplicates -------------------- -- OK Duplicate Selected ------------------ -- OK Get Next Sequence ----------------- -- OK