taskjuggler 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +1 -0
- data/benchmarks/depends.tjp +2 -1
- data/benchmarks/htmltaskreport.tjp +2 -1
- data/doc/classes/AppConfig.html +124 -120
- data/doc/classes/Arguments.html +10 -6
- data/doc/classes/Object.html +229 -0
- data/doc/classes/String.html +35 -31
- data/doc/classes/TaskJuggler/Account.html +18 -18
- data/doc/classes/TaskJuggler/AccountAttribute.html +261 -0
- data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
- data/doc/classes/TaskJuggler/Allocation.html +34 -30
- data/doc/classes/TaskJuggler/AllocationAttribute.html +70 -70
- data/doc/classes/TaskJuggler/AttributeBase.html +131 -147
- data/doc/classes/TaskJuggler/AttributeDefinition.html +38 -21
- data/doc/classes/TaskJuggler/BatchProcessor.html +313 -0
- data/doc/classes/TaskJuggler/Booking.html +22 -18
- data/doc/classes/TaskJuggler/BookingListAttribute.html +42 -42
- data/doc/classes/TaskJuggler/BooleanAttribute.html +40 -40
- data/doc/classes/TaskJuggler/CSVFile.html +28 -24
- data/doc/classes/TaskJuggler/Charge.html +22 -18
- data/doc/classes/TaskJuggler/ChargeListAttribute.html +30 -30
- data/doc/classes/TaskJuggler/ChargeSet.html +41 -37
- data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +46 -46
- data/doc/classes/TaskJuggler/ColumnListAttribute.html +231 -0
- data/doc/classes/TaskJuggler/ColumnTable.html +23 -21
- data/doc/classes/TaskJuggler/DateAttribute.html +20 -20
- data/doc/classes/TaskJuggler/DefinitionListAttribute.html +162 -0
- data/doc/classes/TaskJuggler/DependencyListAttribute.html +46 -46
- data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
- data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
- data/doc/classes/TaskJuggler/FlagListAttribute.html +42 -42
- data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
- data/doc/classes/TaskJuggler/FormatListAttribute.html +197 -0
- data/doc/classes/TaskJuggler/GanttChart.html +236 -207
- data/doc/classes/TaskJuggler/GanttContainer.html +46 -42
- data/doc/classes/TaskJuggler/GanttHeader.html +16 -12
- data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +16 -12
- data/doc/classes/TaskJuggler/GanttLine.html +28 -24
- data/doc/classes/TaskJuggler/GanttLoadStack.html +22 -18
- data/doc/classes/TaskJuggler/GanttMilestone.html +46 -42
- data/doc/classes/TaskJuggler/GanttRouter.html +104 -98
- data/doc/classes/TaskJuggler/GanttTaskBar.html +46 -42
- data/doc/classes/TaskJuggler/HTMLDocument.html +12 -12
- data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
- data/doc/classes/TaskJuggler/Interval.html +126 -120
- data/doc/classes/TaskJuggler/IntervalListAttribute.html +46 -46
- data/doc/classes/TaskJuggler/JobInfo.html +284 -0
- data/doc/classes/TaskJuggler/Journal.html +197 -0
- data/doc/classes/TaskJuggler/JournalEntry.html +218 -0
- data/doc/classes/TaskJuggler/KeywordArray.html +179 -0
- data/doc/classes/TaskJuggler/KeywordDocumentation.html +445 -396
- data/doc/classes/TaskJuggler/Limits/Limit.html +34 -30
- data/doc/classes/TaskJuggler/Limits.html +68 -62
- data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
- data/doc/classes/TaskJuggler/ListAttributeBase.html +207 -0
- data/doc/classes/TaskJuggler/Log.html +72 -68
- data/doc/classes/TaskJuggler/LogicalAttribute.html +38 -34
- data/doc/classes/TaskJuggler/LogicalExpression.html +16 -12
- data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +194 -0
- data/doc/classes/TaskJuggler/LogicalFlag.html +32 -32
- data/doc/classes/TaskJuggler/LogicalFunction.html +28 -24
- data/doc/classes/TaskJuggler/LogicalOperation.html +17 -13
- data/doc/classes/TaskJuggler/Macro.html +10 -6
- data/doc/classes/TaskJuggler/MacroParser.html +36 -36
- data/doc/classes/TaskJuggler/MacroTable.html +40 -36
- data/doc/classes/TaskJuggler/Message.html +16 -12
- data/doc/classes/TaskJuggler/MessageHandler.html +16 -12
- data/doc/classes/TaskJuggler/Navigator.html +249 -0
- data/doc/classes/TaskJuggler/OnShiftCache.html +316 -0
- data/doc/classes/TaskJuggler/Project.html +1064 -678
- data/doc/classes/TaskJuggler/ProjectFileParser.html +90 -85
- data/doc/classes/TaskJuggler/PropertyAttribute.html +194 -0
- data/doc/classes/TaskJuggler/PropertyList.html +114 -113
- data/doc/classes/TaskJuggler/PropertySet.html +355 -312
- data/doc/classes/TaskJuggler/PropertyTreeNode.html +527 -474
- data/doc/classes/TaskJuggler/Query.html +90 -85
- data/doc/classes/TaskJuggler/RTPNavigator.html +292 -0
- data/doc/classes/TaskJuggler/RTPReport.html +301 -0
- data/doc/classes/TaskJuggler/RealFormat.html +114 -57
- data/doc/classes/TaskJuggler/RealFormatAttribute.html +162 -0
- data/doc/classes/TaskJuggler/ReferenceAttribute.html +87 -20
- data/doc/classes/TaskJuggler/Report.html +82 -291
- data/doc/classes/TaskJuggler/ReportBase.html +448 -0
- data/doc/classes/TaskJuggler/ReportContext.html +243 -0
- data/doc/classes/TaskJuggler/ReportTable.html +158 -129
- data/doc/classes/TaskJuggler/ReportTableCell.html +30 -26
- data/doc/classes/TaskJuggler/ReportTableColumn.html +29 -25
- data/doc/classes/TaskJuggler/ReportTableLegend.html +28 -24
- data/doc/classes/TaskJuggler/ReportTableLine.html +34 -30
- data/doc/classes/TaskJuggler/Resource.html +12 -12
- data/doc/classes/TaskJuggler/ResourceListAttribute.html +46 -46
- data/doc/classes/TaskJuggler/ResourceListRE.html +49 -57
- data/doc/classes/TaskJuggler/ResourceScenario.html +126 -126
- data/doc/classes/TaskJuggler/RichText.html +52 -48
- data/doc/classes/TaskJuggler/RichTextAttribute.html +30 -30
- data/doc/classes/TaskJuggler/RichTextDocument.html +41 -37
- data/doc/classes/TaskJuggler/RichTextElement.html +274 -264
- data/doc/classes/TaskJuggler/RichTextException.html +13 -13
- data/doc/classes/TaskJuggler/RichTextParser.html +48 -47
- data/doc/classes/TaskJuggler/RichTextProtocolExample.html +52 -55
- data/doc/classes/TaskJuggler/RichTextProtocolHandler.html +55 -10
- data/doc/classes/TaskJuggler/RichTextScanner.html +106 -245
- data/doc/classes/TaskJuggler/RichTextSnip.html +28 -24
- data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +381 -301
- data/doc/classes/TaskJuggler/Scenario.html +6 -6
- data/doc/classes/TaskJuggler/ScenarioData.html +40 -36
- data/doc/classes/TaskJuggler/ScenarioListAttribute.html +229 -0
- data/doc/classes/TaskJuggler/Scoreboard.html +70 -66
- data/doc/classes/TaskJuggler/Shift.html +18 -18
- data/doc/classes/TaskJuggler/ShiftAssignment.html +58 -54
- data/doc/classes/TaskJuggler/ShiftAssignments.html +82 -78
- data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
- data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
- data/doc/classes/TaskJuggler/SortListAttribute.html +196 -0
- data/doc/classes/TaskJuggler/SourceFileInfo.html +16 -12
- data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
- data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
- data/doc/classes/TaskJuggler/SyntaxReference.html +46 -42
- data/doc/classes/TaskJuggler/TOCEntry.html +16 -12
- data/doc/classes/TaskJuggler/TableColumnDefinition.html +48 -33
- data/doc/classes/TaskJuggler/TableOfContents.html +22 -18
- data/doc/classes/TaskJuggler/TableReport.html +1036 -0
- data/doc/classes/TaskJuggler/Task.html +12 -12
- data/doc/classes/TaskJuggler/TaskDependency.html +16 -12
- data/doc/classes/TaskJuggler/TaskListAttribute.html +46 -46
- data/doc/classes/TaskJuggler/TaskListRE.html +49 -58
- data/doc/classes/TaskJuggler/TaskScenario.html +1270 -1180
- data/doc/classes/TaskJuggler/TextParser/Pattern.html +100 -96
- data/doc/classes/TaskJuggler/TextParser/Rule.html +88 -84
- data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -12
- data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
- data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +10 -6
- data/doc/classes/TaskJuggler/TextParser.html +203 -140
- data/doc/classes/TaskJuggler/TextReport.html +364 -0
- data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
- data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +50 -42
- data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +16 -12
- data/doc/classes/TaskJuggler/TextScanner.html +334 -240
- data/doc/classes/TaskJuggler/TjException.html +6 -6
- data/doc/classes/TaskJuggler/TjTime.html +547 -497
- data/doc/classes/TaskJuggler/TjpExample.html +29 -25
- data/doc/classes/TaskJuggler/TjpExportRE.html +77 -97
- data/doc/classes/TaskJuggler/TjpSyntaxRules.html +3911 -3886
- data/doc/classes/TaskJuggler/UserManual.html +54 -54
- data/doc/classes/TaskJuggler/WorkingHours.html +53 -49
- data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -85
- data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
- data/doc/classes/TaskJuggler/XMLComment.html +21 -21
- data/doc/classes/TaskJuggler/XMLDocument.html +28 -24
- data/doc/classes/TaskJuggler/XMLElement.html +70 -58
- data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
- data/doc/classes/TaskJuggler/XMLText.html +36 -36
- data/doc/classes/TaskJuggler.html +266 -183
- data/doc/files/COPYING.html +1 -1
- data/doc/files/README.html +1 -1
- data/doc/files/lib/AccountScenario_rb.html +1 -1
- data/doc/files/lib/Account_rb.html +1 -1
- data/doc/files/lib/Allocation_rb.html +1 -1
- data/doc/files/lib/AppConfig_rb.html +1 -1
- data/doc/files/lib/AttributeBase_rb.html +11 -1
- data/doc/files/lib/AttributeDefinition_rb.html +1 -1
- data/doc/files/lib/Attributes_rb.html +1 -1
- data/doc/files/lib/{LogicalFlag_rb.html → BatchProcessor_rb.html} +8 -6
- data/doc/files/lib/Booking_rb.html +1 -1
- data/doc/files/lib/ChargeSet_rb.html +1 -1
- data/doc/files/lib/Charge_rb.html +1 -1
- data/doc/files/lib/HTMLDocument_rb.html +1 -1
- data/doc/files/lib/Interval_rb.html +1 -1
- data/doc/files/lib/Journal_rb.html +106 -0
- data/doc/files/lib/KeywordArray_rb.html +106 -0
- data/doc/files/lib/KeywordDocumentation_rb.html +1 -1
- data/doc/files/lib/Limits_rb.html +1 -1
- data/doc/files/lib/Log_rb.html +1 -1
- data/doc/files/lib/LogicalExpression_rb.html +1 -3
- data/doc/files/lib/LogicalFunction_rb.html +1 -1
- data/doc/files/lib/LogicalOperation_rb.html +1 -1
- data/doc/files/lib/MacroParser_rb.html +1 -1
- data/doc/files/lib/MacroTable_rb.html +1 -1
- data/doc/files/lib/MessageHandler_rb.html +1 -1
- data/doc/files/lib/Message_rb.html +1 -1
- data/doc/files/lib/ProjectFileParser_rb.html +5 -1
- data/doc/files/lib/Project_rb.html +5 -1
- data/doc/files/lib/PropertyList_rb.html +1 -1
- data/doc/files/lib/PropertySet_rb.html +1 -1
- data/doc/files/lib/PropertyTreeNode_rb.html +1 -1
- data/doc/files/lib/Query_rb.html +1 -1
- data/doc/files/lib/RTPNavigator_rb.html +120 -0
- data/doc/files/lib/RTPReport_rb.html +118 -0
- data/doc/files/lib/RealFormat_rb.html +1 -1
- data/doc/files/lib/ResourceScenario_rb.html +1 -1
- data/doc/files/lib/Resource_rb.html +1 -1
- data/doc/files/lib/RichTextDocument_rb.html +1 -1
- data/doc/files/lib/RichTextElement_rb.html +1 -1
- data/doc/files/lib/RichTextParser_rb.html +1 -1
- data/doc/files/lib/RichTextProtocolExample_rb.html +1 -1
- data/doc/files/lib/RichTextProtocolHandler_rb.html +1 -1
- data/doc/files/lib/RichTextScanner_rb.html +1 -1
- data/doc/files/lib/RichTextSnip_rb.html +1 -1
- data/doc/files/lib/RichTextSyntaxRules_rb.html +1 -1
- data/doc/files/lib/RichText_rb.html +1 -1
- data/doc/files/lib/ScenarioData_rb.html +1 -1
- data/doc/files/lib/Scenario_rb.html +1 -1
- data/doc/files/lib/Scoreboard_rb.html +1 -1
- data/doc/files/lib/ShiftAssignments_rb.html +1 -1
- data/doc/files/lib/ShiftScenario_rb.html +1 -1
- data/doc/files/lib/Shift_rb.html +1 -1
- data/doc/files/lib/SourceFileInfo_rb.html +1 -1
- data/doc/files/lib/SyntaxReference_rb.html +1 -1
- data/doc/files/lib/TOCEntry_rb.html +1 -1
- data/doc/files/lib/TableColumnDefinition_rb.html +1 -1
- data/doc/files/lib/TableOfContents_rb.html +1 -1
- data/doc/files/lib/TaskDependency_rb.html +1 -1
- data/doc/files/lib/TaskJuggler_rb.html +1 -1
- data/doc/files/lib/TaskScenario_rb.html +1 -1
- data/doc/files/lib/Task_rb.html +1 -1
- data/doc/files/lib/TextParser/Pattern_rb.html +1 -1
- data/doc/files/lib/TextParser/Rule_rb.html +1 -1
- data/doc/files/lib/TextParser/StackElement_rb.html +1 -1
- data/doc/files/lib/TextParser/TokenDoc_rb.html +1 -1
- data/doc/files/lib/TextParser_rb.html +1 -1
- data/doc/files/lib/TextScanner_rb.html +1 -1
- data/doc/files/lib/Tj3Config_rb.html +1 -1
- data/doc/files/lib/TjException_rb.html +1 -1
- data/doc/files/lib/TjTime_rb.html +1 -1
- data/doc/files/lib/TjpExample_rb.html +1 -1
- data/doc/files/lib/TjpSyntaxRules_rb.html +1 -1
- data/doc/files/lib/UTF8String_rb.html +1 -1
- data/doc/files/lib/UserManual_rb.html +1 -1
- data/doc/files/lib/WorkingHours_rb.html +1 -1
- data/doc/files/lib/XMLDocument_rb.html +1 -1
- data/doc/files/lib/XMLElement_rb.html +1 -1
- data/doc/files/lib/deep_copy_rb.html +106 -0
- data/doc/files/lib/ms_test_rb.html +90 -0
- data/doc/files/lib/reports/CSVFile_rb.html +1 -1
- data/doc/files/lib/reports/ColumnTable_rb.html +1 -1
- data/doc/files/lib/reports/GanttChart_rb.html +1 -1
- data/doc/files/lib/reports/GanttContainer_rb.html +1 -1
- data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
- data/doc/files/lib/reports/GanttHeader_rb.html +1 -1
- data/doc/files/lib/reports/GanttLine_rb.html +1 -1
- data/doc/files/lib/reports/GanttLoadStack_rb.html +1 -1
- data/doc/files/lib/reports/GanttMilestone_rb.html +1 -1
- data/doc/files/lib/reports/GanttRouter_rb.html +1 -1
- data/doc/files/lib/reports/GanttTaskBar_rb.html +1 -1
- data/doc/files/lib/reports/HTMLGraphics_rb.html +1 -1
- data/doc/files/lib/reports/{ReportElement_rb.html → Navigator_rb.html} +6 -8
- data/doc/files/lib/reports/ReportBase_rb.html +106 -0
- data/doc/files/lib/reports/ReportContext_rb.html +106 -0
- data/doc/files/lib/reports/ReportTableCell_rb.html +1 -1
- data/doc/files/lib/reports/ReportTableColumn_rb.html +1 -1
- data/doc/files/lib/reports/ReportTableLegend_rb.html +1 -1
- data/doc/files/lib/reports/ReportTableLine_rb.html +1 -1
- data/doc/files/lib/reports/ReportTable_rb.html +1 -1
- data/doc/files/lib/reports/Report_rb.html +8 -2
- data/doc/files/lib/reports/ResourceListRE_rb.html +2 -2
- data/doc/files/lib/reports/{ReportTableElement_rb.html → TableReport_rb.html} +7 -5
- data/doc/files/lib/reports/TaskListRE_rb.html +2 -2
- data/doc/files/lib/reports/TextReport_rb.html +116 -0
- data/doc/files/lib/reports/TjpExportRE_rb.html +2 -2
- data/doc/files/lib/taskjuggler3_rb.html +61 -56
- data/doc/files/lib/tj3man_rb.html +1 -1
- data/doc/fr_class_index.html +41 -3
- data/doc/fr_file_index.html +21 -5
- data/doc/fr_method_index.html +1069 -959
- data/examples/ContactList.html +1467 -0
- data/examples/Deliveries.html +485 -0
- data/examples/Development.html +2525 -0
- data/examples/Overview.html +747 -0
- data/examples/Resource Graph.html +616 -0
- data/examples/tutorial.tjp +63 -67
- data/lib/AttributeBase.rb +27 -31
- data/lib/AttributeDefinition.rb +12 -7
- data/lib/Attributes.rb +134 -34
- data/lib/Interval.rb +2 -0
- data/lib/Journal.rb +44 -0
- data/lib/{LogicalFlag.rb → KeywordArray.rb} +5 -13
- data/lib/KeywordDocumentation.rb +84 -47
- data/lib/Limits.rb +7 -5
- data/lib/LogicalExpression.rb +1 -1
- data/lib/LogicalOperation.rb +33 -0
- data/lib/Project.rb +313 -99
- data/lib/ProjectFileParser.rb +88 -11
- data/lib/PropertyList.rb +2 -1
- data/lib/PropertySet.rb +13 -4
- data/lib/PropertyTreeNode.rb +34 -15
- data/lib/Query.rb +2 -1
- data/lib/RTPNavigator.rb +53 -0
- data/lib/RTPReport.rb +62 -0
- data/lib/RealFormat.rb +28 -10
- data/lib/RichTextElement.rb +18 -12
- data/lib/RichTextParser.rb +1 -0
- data/lib/RichTextProtocolExample.rb +8 -11
- data/lib/RichTextProtocolHandler.rb +11 -1
- data/lib/RichTextScanner.rb +308 -164
- data/lib/RichTextSyntaxRules.rb +24 -0
- data/lib/TableColumnDefinition.rb +5 -1
- data/lib/TaskJuggler.rb +3 -2
- data/lib/TaskScenario.rb +123 -31
- data/lib/TextParser.rb +14 -3
- data/lib/TextScanner.rb +210 -34
- data/lib/Tj3Config.rb +1 -1
- data/lib/TjTime.rb +15 -0
- data/lib/TjpExample.rb +1 -1
- data/lib/TjpSyntaxRules.rb +674 -473
- data/lib/WorkingHours.rb +1 -1
- data/lib/XMLElement.rb +11 -3
- data/lib/deep_copy.rb +72 -0
- data/lib/ms_test.rb +27 -0
- data/lib/reports/ColumnTable.rb +7 -5
- data/lib/reports/GanttChart.rb +60 -34
- data/lib/reports/GanttHeader.rb +1 -1
- data/lib/reports/GanttRouter.rb +7 -5
- data/lib/reports/Navigator.rb +72 -0
- data/lib/reports/Report.rb +58 -73
- data/lib/reports/ReportBase.rb +241 -0
- data/lib/reports/ReportContext.rb +41 -0
- data/lib/reports/ReportTable.rb +7 -2
- data/lib/reports/ReportTableCell.rb +3 -3
- data/lib/reports/ResourceListRE.rb +19 -26
- data/lib/reports/{ReportTableElement.rb → TableReport.rb} +297 -97
- data/lib/reports/TaskListRE.rb +16 -24
- data/lib/reports/TextReport.rb +87 -0
- data/lib/reports/TjpExportRE.rb +55 -50
- data/lib/taskjuggler3.rb +6 -1
- data/manual/Getting_Started +57 -6
- data/manual/How_To_Contribute +2 -4
- data/manual/Intro +2 -2
- data/manual/Reporting_Bugs +9 -2
- data/manual/Rich_Text_Attributes +41 -0
- data/manual/Tutorial +219 -173
- data/tasks/test.rake +3 -0
- data/test/TestSuite/CSV-Reports/celltext.tjp +2 -1
- data/test/TestSuite/CSV-Reports/resourcereport.tjp +2 -1
- data/test/TestSuite/CSV-Reports/resourcereport_with_tasks.tjp +2 -1
- data/test/TestSuite/CSV-Reports/sortByTree.tjp +2 -1
- data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +2 -1
- data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +2 -1
- data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +2 -1
- data/test/TestSuite/CSV-Reports/taskreport.tjp +2 -1
- data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +2 -1
- data/test/TestSuite/HTML-Reports/depArrows.tjp +72 -0
- data/test/TestSuite/HTML-Reports/reference-export.html +187 -0
- data/test/TestSuite/HTML-Reports/reference.tjp +21 -0
- data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -1
- data/test/TestSuite/Scheduler/Correct/AutomaticMilestones.tjp +3 -3
- data/test/TestSuite/Scheduler/Correct/Booking.tjp +3 -3
- data/test/TestSuite/Scheduler/Correct/Container-2.tjp +37 -0
- data/test/TestSuite/Scheduler/Correct/Container.tjp +40 -0
- data/test/TestSuite/Scheduler/Correct/Depends.tjp +9 -14
- data/test/TestSuite/Scheduler/Correct/Duration.tjp +2 -1
- data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +20 -29
- data/test/TestSuite/Scheduler/Correct/Limits.tjp +11 -13
- data/test/TestSuite/Scheduler/Correct/Optimize-1.tjp +6 -5
- data/test/TestSuite/Scheduler/Correct/Optimize-2.tjp +10 -6
- data/test/TestSuite/Scheduler/Correct/Optimize-3.tjp +9 -6
- data/test/TestSuite/Scheduler/Correct/Optimize-4.tjp +9 -6
- data/test/TestSuite/Scheduler/Correct/Optimize-5.tjp +13 -10
- data/test/TestSuite/Scheduler/Correct/Precedes.tjp +9 -14
- data/test/TestSuite/Scheduler/Correct/Shift.tjp +9 -8
- data/test/TestSuite/Scheduler/Correct/checks.tji +4 -0
- data/test/TestSuite/Scheduler/Errors/weak_end_dep.tjp +16 -0
- data/test/TestSuite/Scheduler/Errors/weak_start_dep.tjp +16 -0
- data/test/TestSuite/Syntax/Correct/Account.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/AutoID.tjp +21 -0
- data/test/TestSuite/Syntax/Correct/AutoMacros.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/Caption.tjp +7 -6
- data/test/TestSuite/Syntax/Correct/Celltext.tjp +7 -4
- data/test/TestSuite/Syntax/Correct/Comments.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/CompletedWork.tji +11 -19
- data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +4 -3
- data/test/TestSuite/Syntax/Correct/Export.tjp +3 -1
- data/test/TestSuite/Syntax/Correct/Flags.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/HtmlTaskReport.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/Journal.tjp +18 -0
- data/test/TestSuite/Syntax/Correct/LoadUnits.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +16 -0
- data/test/TestSuite/Syntax/Correct/Period.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/RawHTML.tjp +4 -2
- data/test/TestSuite/Syntax/Correct/Reports.tjp +4 -2
- data/test/TestSuite/Syntax/Correct/ResourcePrefix.tji +2 -0
- data/test/TestSuite/Syntax/Correct/ResourcePrefix.tjp +23 -0
- data/test/TestSuite/Syntax/Correct/Responsible.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/Simple.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/String.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/TaskRoot.tjp +2 -1
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +92 -70
- data/test/TestSuite/Syntax/Errors/bad_comment.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/bad_include.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/bad_time_zone.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/bad_timing_res.tjp +5 -0
- data/test/TestSuite/Syntax/Errors/chargeset_master.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/container_attribute.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/cost_acct_no_top.tjp +3 -2
- data/test/TestSuite/Syntax/Errors/cost_rev_same.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/eof_in_istring1.tjp +5 -0
- data/test/TestSuite/Syntax/Errors/eof_in_istring2.tjp +5 -0
- data/test/TestSuite/Syntax/Errors/eof_in_istring3.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/eof_in_istring4.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/eof_in_istring5.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/include_recursion.tji +1 -0
- data/test/TestSuite/Syntax/Errors/include_recursion.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/junk_after_cut.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/navigator_exists.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/operand_unkn_flag.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/report_end.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/report_exists.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/report_start.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/rev_acct_no_top.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/sort_direction.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/sort_unknown_scen.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/sorting_crit_exptd1.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/sorting_crit_exptd2.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/sorting_wbs.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/too_large_timing_res.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/unknown_scenario_idx.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/unknown_task.tjp +1 -1
- data/test/all.rb +1 -16
- data/test/test_CSV-Reports.rb +8 -5
- data/test/test_Query.rb +2 -2
- data/test/test_RichText.rb +95 -0
- data/test/test_Scheduler.rb +8 -4
- data/test/test_Syntax.rb +8 -4
- data/test/test_deep_copy.rb +83 -0
- metadata +549 -487
- data/benchmarks/UTF-8-Strings.rb +0 -58
- data/doc/classes/TaskJuggler/ReportElement.html +0 -1070
- data/doc/classes/TaskJuggler/ReportTableElement.html +0 -644
- data/lib/reports/ReportElement.rb +0 -427
- data/test/TestSuite/Syntax/Correct/csvtest +0 -16
- data/test/TestSuite/Syntax/Errors/no_csv_suffix.tjp +0 -10
- data/test/TestSuite/Syntax/Errors/no_html_suffix.tjp +0 -10
- data/test/TestSuite/Syntax/Errors/report_redifinition.tjp +0 -10
|
@@ -1,644 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
2
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
3
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
4
|
-
<head>
|
|
5
|
-
<title>Class: TaskJuggler::ReportTableElement [TaskJuggler III API documentation]</title>
|
|
6
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
|
-
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
8
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
9
|
-
<script type="text/javascript">
|
|
10
|
-
// <![CDATA[
|
|
11
|
-
|
|
12
|
-
function popupCode( url ) {
|
|
13
|
-
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
function toggleCode( id ) {
|
|
17
|
-
if ( document.getElementById )
|
|
18
|
-
elem = document.getElementById( id );
|
|
19
|
-
else if ( document.all )
|
|
20
|
-
elem = eval( "document.all." + id );
|
|
21
|
-
else
|
|
22
|
-
return false;
|
|
23
|
-
|
|
24
|
-
elemStyle = elem.style;
|
|
25
|
-
|
|
26
|
-
if ( elemStyle.display != "block" ) {
|
|
27
|
-
elemStyle.display = "block"
|
|
28
|
-
} else {
|
|
29
|
-
elemStyle.display = "none"
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return true;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
// Make codeblocks hidden by default
|
|
36
|
-
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
|
|
37
|
-
|
|
38
|
-
// ]]>
|
|
39
|
-
</script>
|
|
40
|
-
|
|
41
|
-
</head>
|
|
42
|
-
<body>
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
<div id="classHeader">
|
|
46
|
-
<table class="header-table">
|
|
47
|
-
<tr class="top-aligned-row">
|
|
48
|
-
<td><strong>Class</strong></td>
|
|
49
|
-
<td class="class-name-in-header">TaskJuggler::ReportTableElement</td>
|
|
50
|
-
</tr>
|
|
51
|
-
<tr class="top-aligned-row">
|
|
52
|
-
<td><strong>In:</strong></td>
|
|
53
|
-
<td>
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
<a href="../../files/lib/reports/ReportTableElement_rb.html">
|
|
57
|
-
|
|
58
|
-
lib/reports/ReportTableElement.rb
|
|
59
|
-
|
|
60
|
-
</a>
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
<br />
|
|
64
|
-
|
|
65
|
-
</td>
|
|
66
|
-
</tr>
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
<tr class="top-aligned-row">
|
|
70
|
-
<td><strong>Parent:</strong></td>
|
|
71
|
-
<td>
|
|
72
|
-
|
|
73
|
-
<a href="ReportElement.html">
|
|
74
|
-
|
|
75
|
-
TaskJuggler::ReportElement
|
|
76
|
-
|
|
77
|
-
</a>
|
|
78
|
-
|
|
79
|
-
</td>
|
|
80
|
-
</tr>
|
|
81
|
-
|
|
82
|
-
</table>
|
|
83
|
-
</div>
|
|
84
|
-
<!-- banner header -->
|
|
85
|
-
|
|
86
|
-
<div id="bodyContent">
|
|
87
|
-
|
|
88
|
-
<div id="contextContent">
|
|
89
|
-
|
|
90
|
-
<div id="description">
|
|
91
|
-
<p>
|
|
92
|
-
This is base class for all types of tabular report elements. All tabular
|
|
93
|
-
report elements are converted to an abstract (output independent)
|
|
94
|
-
intermediate form first, before the are turned into the requested output
|
|
95
|
-
format.
|
|
96
|
-
</p>
|
|
97
|
-
|
|
98
|
-
</div>
|
|
99
|
-
|
|
100
|
-
</div>
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
<div id="method-list">
|
|
104
|
-
<h3 class="section-bar">Methods</h3>
|
|
105
|
-
|
|
106
|
-
<div class="name-list">
|
|
107
|
-
|
|
108
|
-
<a href="#M000364">generateHeaderCell</a>
|
|
109
|
-
|
|
110
|
-
<a href="#M000361">generateIntermediateFormat</a>
|
|
111
|
-
|
|
112
|
-
<a href="#M000366">generateResourceList</a>
|
|
113
|
-
|
|
114
|
-
<a href="#M000365">generateTaskList</a>
|
|
115
|
-
|
|
116
|
-
<a href="#M000360">new</a>
|
|
117
|
-
|
|
118
|
-
<a href="#M000363">to_csv</a>
|
|
119
|
-
|
|
120
|
-
<a href="#M000362">to_html</a>
|
|
121
|
-
|
|
122
|
-
</div>
|
|
123
|
-
</div>
|
|
124
|
-
|
|
125
|
-
</div>
|
|
126
|
-
|
|
127
|
-
<!-- if includes -->
|
|
128
|
-
|
|
129
|
-
<div id="section">
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
<div id="attribute-list">
|
|
134
|
-
<h3 class="section-bar">Attributes</h3>
|
|
135
|
-
|
|
136
|
-
<div class="name-list">
|
|
137
|
-
<table>
|
|
138
|
-
|
|
139
|
-
<tr class="top-aligned-row context-row">
|
|
140
|
-
<td class="context-item-name">legend</td>
|
|
141
|
-
|
|
142
|
-
<td class="context-item-value"> [R] </td>
|
|
143
|
-
|
|
144
|
-
<td class="context-item-desc"></td>
|
|
145
|
-
</tr>
|
|
146
|
-
|
|
147
|
-
</table>
|
|
148
|
-
</div>
|
|
149
|
-
</div>
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
<!-- if method_list -->
|
|
153
|
-
|
|
154
|
-
<div id="methods">
|
|
155
|
-
|
|
156
|
-
<h3 class="section-bar">Public Class methods</h3>
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
<div id="method-M000360" class="method-detail">
|
|
160
|
-
<a name="M000360"></a>
|
|
161
|
-
|
|
162
|
-
<div class="method-heading">
|
|
163
|
-
|
|
164
|
-
<a href="#M000360" class="method-signature">
|
|
165
|
-
|
|
166
|
-
<span class="method-name">new</span><span class="method-args">(report)</span>
|
|
167
|
-
|
|
168
|
-
</a>
|
|
169
|
-
|
|
170
|
-
</div>
|
|
171
|
-
|
|
172
|
-
<div class="method-description">
|
|
173
|
-
|
|
174
|
-
<p>
|
|
175
|
-
Generate a new <a href="ReportTableElement.html">ReportTableElement</a>
|
|
176
|
-
object.
|
|
177
|
-
</p>
|
|
178
|
-
|
|
179
|
-
<p><a class="source-toggle" href="#"
|
|
180
|
-
onclick="toggleCode('M000360-source');return false;">[Source]</a></p>
|
|
181
|
-
<div class="method-source-code" id="M000360-source">
|
|
182
|
-
<pre>
|
|
183
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 29</span>
|
|
184
|
-
29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
|
|
185
|
-
30: <span class="ruby-keyword kw">super</span>
|
|
186
|
-
31:
|
|
187
|
-
32: <span class="ruby-comment cmt"># Reference to the intermediate representation.</span>
|
|
188
|
-
33: <span class="ruby-ivar">@table</span> = <span class="ruby-keyword kw">nil</span>
|
|
189
|
-
34:
|
|
190
|
-
35: <span class="ruby-ivar">@legend</span> = <span class="ruby-constant">ReportTableLegend</span>.<span class="ruby-identifier">new</span>
|
|
191
|
-
36: <span class="ruby-keyword kw">end</span>
|
|
192
|
-
</pre>
|
|
193
|
-
</div>
|
|
194
|
-
|
|
195
|
-
</div>
|
|
196
|
-
</div>
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
<h3 class="section-bar">Public Instance methods</h3>
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
<div id="method-M000361" class="method-detail">
|
|
203
|
-
<a name="M000361"></a>
|
|
204
|
-
|
|
205
|
-
<div class="method-heading">
|
|
206
|
-
|
|
207
|
-
<a href="#M000361" class="method-signature">
|
|
208
|
-
|
|
209
|
-
<span class="method-name">generateIntermediateFormat</span><span class="method-args">()</span>
|
|
210
|
-
|
|
211
|
-
</a>
|
|
212
|
-
|
|
213
|
-
</div>
|
|
214
|
-
|
|
215
|
-
<div class="method-description">
|
|
216
|
-
|
|
217
|
-
<p>
|
|
218
|
-
This is an abstract member that all sub classes must re-implement. It may
|
|
219
|
-
or may not do something though.
|
|
220
|
-
</p>
|
|
221
|
-
|
|
222
|
-
<p><a class="source-toggle" href="#"
|
|
223
|
-
onclick="toggleCode('M000361-source');return false;">[Source]</a></p>
|
|
224
|
-
<div class="method-source-code" id="M000361-source">
|
|
225
|
-
<pre>
|
|
226
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 40</span>
|
|
227
|
-
40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
|
|
228
|
-
41: <span class="ruby-identifier">raise</span> <span class="ruby-value str">'This function must be overriden by derived classes.'</span>
|
|
229
|
-
42: <span class="ruby-keyword kw">end</span>
|
|
230
|
-
</pre>
|
|
231
|
-
</div>
|
|
232
|
-
|
|
233
|
-
</div>
|
|
234
|
-
</div>
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
<div id="method-M000363" class="method-detail">
|
|
238
|
-
<a name="M000363"></a>
|
|
239
|
-
|
|
240
|
-
<div class="method-heading">
|
|
241
|
-
|
|
242
|
-
<a href="#M000363" class="method-signature">
|
|
243
|
-
|
|
244
|
-
<span class="method-name">to_csv</span><span class="method-args">()</span>
|
|
245
|
-
|
|
246
|
-
</a>
|
|
247
|
-
|
|
248
|
-
</div>
|
|
249
|
-
|
|
250
|
-
<div class="method-description">
|
|
251
|
-
|
|
252
|
-
<p>
|
|
253
|
-
Convert the <a href="ReportElement.html">ReportElement</a> into an Array of
|
|
254
|
-
Arrays. It has one Array for each line. The nested Arrays have one <a
|
|
255
|
-
href="../String.html">String</a> for each column.
|
|
256
|
-
</p>
|
|
257
|
-
|
|
258
|
-
<p><a class="source-toggle" href="#"
|
|
259
|
-
onclick="toggleCode('M000363-source');return false;">[Source]</a></p>
|
|
260
|
-
<div class="method-source-code" id="M000363-source">
|
|
261
|
-
<pre>
|
|
262
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 123</span>
|
|
263
|
-
123: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_csv</span>
|
|
264
|
-
124: <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">to_csv</span>
|
|
265
|
-
125: <span class="ruby-keyword kw">end</span>
|
|
266
|
-
</pre>
|
|
267
|
-
</div>
|
|
268
|
-
|
|
269
|
-
</div>
|
|
270
|
-
</div>
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
<div id="method-M000362" class="method-detail">
|
|
274
|
-
<a name="M000362"></a>
|
|
275
|
-
|
|
276
|
-
<div class="method-heading">
|
|
277
|
-
|
|
278
|
-
<a href="#M000362" class="method-signature">
|
|
279
|
-
|
|
280
|
-
<span class="method-name">to_html</span><span class="method-args">()</span>
|
|
281
|
-
|
|
282
|
-
</a>
|
|
283
|
-
|
|
284
|
-
</div>
|
|
285
|
-
|
|
286
|
-
<div class="method-description">
|
|
287
|
-
|
|
288
|
-
<p>
|
|
289
|
-
Turn the <a href="ReportTableElement.html">ReportTableElement</a> into an
|
|
290
|
-
equivalent HTML element tree.
|
|
291
|
-
</p>
|
|
292
|
-
|
|
293
|
-
<p><a class="source-toggle" href="#"
|
|
294
|
-
onclick="toggleCode('M000362-source');return false;">[Source]</a></p>
|
|
295
|
-
<div class="method-source-code" id="M000362-source">
|
|
296
|
-
<pre>
|
|
297
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 45</span>
|
|
298
|
-
45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
|
|
299
|
-
46: <span class="ruby-identifier">html</span> = []
|
|
300
|
-
47:
|
|
301
|
-
48: <span class="ruby-comment cmt"># Make sure we have some margins around the report.</span>
|
|
302
|
-
49: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">frame</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>,
|
|
303
|
-
50: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin: 35px 5% 25px 5%; '</span>))
|
|
304
|
-
51:
|
|
305
|
-
52: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@prolog</span>
|
|
306
|
-
53: <span class="ruby-ivar">@prolog</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
307
|
-
54: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@prolog</span>.<span class="ruby-identifier">to_html</span>
|
|
308
|
-
55: <span class="ruby-keyword kw">end</span>
|
|
309
|
-
56:
|
|
310
|
-
57: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">table</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'summary'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'Report Table'</span>,
|
|
311
|
-
58: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'2'</span>, <span class="ruby-value str">'border'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>,
|
|
312
|
-
59: <span class="ruby-value str">'cellpadding'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
|
|
313
|
-
60: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabback'</span>))
|
|
314
|
-
61:
|
|
315
|
-
62: <span class="ruby-comment cmt"># The headline is put in a sub-table to appear bigger.</span>
|
|
316
|
-
63: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@headline</span>
|
|
317
|
-
64: <span class="ruby-identifier">table</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">thead</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'thead'</span>))
|
|
318
|
-
65: <span class="ruby-identifier">thead</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
319
|
-
66: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>))
|
|
320
|
-
67: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">table1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'summary'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'headline'</span>,
|
|
321
|
-
68: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'1'</span>, <span class="ruby-value str">'border'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>,
|
|
322
|
-
69: <span class="ruby-value str">'cellpadding'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'5'</span>,
|
|
323
|
-
70: <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'100%'</span>))
|
|
324
|
-
71: <span class="ruby-identifier">table1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
325
|
-
72: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
|
|
326
|
-
73: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:16px; '</span> <span class="ruby-operator">+</span>
|
|
327
|
-
74: <span class="ruby-value str">'font-weight:bold'</span>,
|
|
328
|
-
75: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabfront'</span>))
|
|
329
|
-
76: <span class="ruby-identifier">td1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@headline</span>, <span class="ruby-value str">'p'</span>)
|
|
330
|
-
77: <span class="ruby-keyword kw">end</span>
|
|
331
|
-
78:
|
|
332
|
-
79: <span class="ruby-comment cmt"># Now generate the actual table with the data.</span>
|
|
333
|
-
80: <span class="ruby-identifier">table</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tbody</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tbody'</span>))
|
|
334
|
-
81: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
335
|
-
82: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>))
|
|
336
|
-
83: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">to_html</span>
|
|
337
|
-
84:
|
|
338
|
-
85: <span class="ruby-comment cmt"># Embedd the caption as RichText into the table footer.</span>
|
|
339
|
-
86: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@caption</span>
|
|
340
|
-
87: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
341
|
-
88: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabback'</span>))
|
|
342
|
-
89: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">div</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'caption'</span>,
|
|
343
|
-
90: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin:1px'</span>))
|
|
344
|
-
91: <span class="ruby-ivar">@caption</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
345
|
-
92: <span class="ruby-identifier">div</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@caption</span>.<span class="ruby-identifier">to_html</span>
|
|
346
|
-
93: <span class="ruby-keyword kw">end</span>
|
|
347
|
-
94:
|
|
348
|
-
95: <span class="ruby-comment cmt"># A sub-table with the legend.</span>
|
|
349
|
-
96: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:10px;'</span>))
|
|
350
|
-
97: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span>
|
|
351
|
-
98: <span class="ruby-value str">'padding-left:1px; padding-right:1px;'</span>))
|
|
352
|
-
99: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@legend</span>.<span class="ruby-identifier">to_html</span>
|
|
353
|
-
100:
|
|
354
|
-
101: <span class="ruby-comment cmt"># The footer with some administrative information.</span>
|
|
355
|
-
102: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:9px'</span>))
|
|
356
|
-
103: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabfooter'</span>))
|
|
357
|
-
104: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>[<span class="ruby-value str">'copyright'</span>] <span class="ruby-operator">+</span> <span class="ruby-value str">" - "</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@project</span>[<span class="ruby-value str">'copyright'</span>]
|
|
358
|
-
105: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"Project: #{@project['name']} "</span> <span class="ruby-operator">+</span>
|
|
359
|
-
106: <span class="ruby-node">"Version: #{@project['version']} - "</span> <span class="ruby-operator">+</span>
|
|
360
|
-
107: <span class="ruby-node">"Created on #{TjTime.now.to_s("%Y-%m-%d %H:%M:%S")} "</span> <span class="ruby-operator">+</span>
|
|
361
|
-
108: <span class="ruby-value str">"with "</span>)
|
|
362
|
-
109: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{AppConfig.packageName}"</span>, <span class="ruby-value str">'a'</span>,
|
|
363
|
-
110: <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"#{AppConfig.contact}"</span>)
|
|
364
|
-
111: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">" v#{AppConfig.version}"</span>)
|
|
365
|
-
112:
|
|
366
|
-
113: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@epilog</span>
|
|
367
|
-
114: <span class="ruby-ivar">@epilog</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
368
|
-
115: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@epilog</span>.<span class="ruby-identifier">to_html</span>
|
|
369
|
-
116: <span class="ruby-keyword kw">end</span>
|
|
370
|
-
117:
|
|
371
|
-
118: <span class="ruby-identifier">html</span>
|
|
372
|
-
119: <span class="ruby-keyword kw">end</span>
|
|
373
|
-
</pre>
|
|
374
|
-
</div>
|
|
375
|
-
|
|
376
|
-
</div>
|
|
377
|
-
</div>
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
<h3 class="section-bar">Protected Instance methods</h3>
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
<div id="method-M000364" class="method-detail">
|
|
384
|
-
<a name="M000364"></a>
|
|
385
|
-
|
|
386
|
-
<div class="method-heading">
|
|
387
|
-
|
|
388
|
-
<a href="#M000364" class="method-signature">
|
|
389
|
-
|
|
390
|
-
<span class="method-name">generateHeaderCell</span><span class="method-args">(columnDef)</span>
|
|
391
|
-
|
|
392
|
-
</a>
|
|
393
|
-
|
|
394
|
-
</div>
|
|
395
|
-
|
|
396
|
-
<div class="method-description">
|
|
397
|
-
|
|
398
|
-
<p>
|
|
399
|
-
Generates cells for the table header. <em>columnDef</em> is the <a
|
|
400
|
-
href="TableColumnDefinition.html">TableColumnDefinition</a> object that
|
|
401
|
-
describes the column. Based on the id of the column different actions need
|
|
402
|
-
to be taken to generate the header text.
|
|
403
|
-
</p>
|
|
404
|
-
|
|
405
|
-
<p><a class="source-toggle" href="#"
|
|
406
|
-
onclick="toggleCode('M000364-source');return false;">[Source]</a></p>
|
|
407
|
-
<div class="method-source-code" id="M000364-source">
|
|
408
|
-
<pre>
|
|
409
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 132</span>
|
|
410
|
-
132: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHeaderCell</span>(<span class="ruby-identifier">columnDef</span>)
|
|
411
|
-
133: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">id</span>
|
|
412
|
-
134: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'chart'</span>
|
|
413
|
-
135: <span class="ruby-comment cmt"># For the 'chart' column we generate a GanttChart object. The sizes are</span>
|
|
414
|
-
136: <span class="ruby-comment cmt"># set so that the lines of the Gantt chart line up with the lines of the</span>
|
|
415
|
-
137: <span class="ruby-comment cmt"># table.</span>
|
|
416
|
-
138: <span class="ruby-identifier">gantt</span> = <span class="ruby-constant">GanttChart</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@now</span>, <span class="ruby-ivar">@weekStartsMonday</span>, <span class="ruby-keyword kw">self</span>)
|
|
417
|
-
139: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">generateByScale</span>(<span class="ruby-ivar">@start</span>, <span class="ruby-ivar">@end</span>, <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">scale</span>)
|
|
418
|
-
140: <span class="ruby-comment cmt"># The header consists of 2 lines separated by a 1 pixel boundary.</span>
|
|
419
|
-
141: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">header</span>.<span class="ruby-identifier">height</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">headerLineHeight</span> <span class="ruby-operator">*</span> <span class="ruby-value">2</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
420
|
-
142: <span class="ruby-comment cmt"># The maximum width of the chart. In case it needs more space, a</span>
|
|
421
|
-
143: <span class="ruby-comment cmt"># scrollbar is shown or the chart gets truncated depending on the output</span>
|
|
422
|
-
144: <span class="ruby-comment cmt"># format.</span>
|
|
423
|
-
145: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">viewWidth</span> = <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">width</span>
|
|
424
|
-
146: <span class="ruby-identifier">column</span> = <span class="ruby-constant">ReportTableColumn</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-value str">''</span>)
|
|
425
|
-
147: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell1</span>.<span class="ruby-identifier">special</span> = <span class="ruby-identifier">gantt</span>
|
|
426
|
-
148: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell2</span>.<span class="ruby-identifier">hidden</span> = <span class="ruby-keyword kw">true</span>
|
|
427
|
-
149: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">scrollbar</span> = <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">hasScrollbar?</span>
|
|
428
|
-
150: <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">equiLines</span> = <span class="ruby-keyword kw">true</span>
|
|
429
|
-
151: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'hourly'</span>
|
|
430
|
-
152: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">midnight</span>, <span class="ruby-identifier">:sameTimeNextHour</span>,
|
|
431
|
-
153: <span class="ruby-identifier">:weekdayAndDate</span>, <span class="ruby-identifier">:hour</span>)
|
|
432
|
-
154: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'daily'</span>
|
|
433
|
-
155: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">midnight</span>, <span class="ruby-identifier">:sameTimeNextDay</span>,
|
|
434
|
-
156: <span class="ruby-identifier">:shortMonthName</span>, <span class="ruby-identifier">:day</span>)
|
|
435
|
-
157: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'weekly'</span>
|
|
436
|
-
158: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfWeek</span>(<span class="ruby-ivar">@weekStartsMonday</span>),
|
|
437
|
-
159: <span class="ruby-identifier">:sameTimeNextWeek</span>, <span class="ruby-identifier">:shortMonthName</span>, <span class="ruby-identifier">:day</span>)
|
|
438
|
-
160: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'monthly'</span>
|
|
439
|
-
161: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfMonth</span>, <span class="ruby-identifier">:sameTimeNextMonth</span>,
|
|
440
|
-
162: <span class="ruby-identifier">:year</span>, <span class="ruby-identifier">:shortMonthName</span>)
|
|
441
|
-
163: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'quarterly'</span>
|
|
442
|
-
164: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfQuarter</span>,
|
|
443
|
-
165: <span class="ruby-identifier">:sameTimeNextQuarter</span>, <span class="ruby-identifier">:year</span>, <span class="ruby-identifier">:quarterName</span>)
|
|
444
|
-
166: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'yearly'</span>
|
|
445
|
-
167: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfYear</span>, <span class="ruby-identifier">:sameTimeNextYear</span>,
|
|
446
|
-
168: <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">:year</span>)
|
|
447
|
-
169: <span class="ruby-keyword kw">else</span>
|
|
448
|
-
170: <span class="ruby-comment cmt"># This is the most common case. It does not need any special treatment.</span>
|
|
449
|
-
171: <span class="ruby-comment cmt"># We just set the pre-defined or user-defined column title in the first</span>
|
|
450
|
-
172: <span class="ruby-comment cmt"># row of the header. The 2nd row is not visible.</span>
|
|
451
|
-
173: <span class="ruby-identifier">column</span> = <span class="ruby-constant">ReportTableColumn</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">title</span>)
|
|
452
|
-
174: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell1</span>.<span class="ruby-identifier">rows</span> = <span class="ruby-value">2</span>
|
|
453
|
-
175: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell2</span>.<span class="ruby-identifier">hidden</span> = <span class="ruby-keyword kw">true</span>
|
|
454
|
-
176: <span class="ruby-keyword kw">end</span>
|
|
455
|
-
177: <span class="ruby-keyword kw">end</span>
|
|
456
|
-
</pre>
|
|
457
|
-
</div>
|
|
458
|
-
|
|
459
|
-
</div>
|
|
460
|
-
</div>
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
<div id="method-M000366" class="method-detail">
|
|
464
|
-
<a name="M000366"></a>
|
|
465
|
-
|
|
466
|
-
<div class="method-heading">
|
|
467
|
-
|
|
468
|
-
<a href="#M000366" class="method-signature">
|
|
469
|
-
|
|
470
|
-
<span class="method-name">generateResourceList</span><span class="method-args">(resourceList, taskList, scopeLine)</span>
|
|
471
|
-
|
|
472
|
-
</a>
|
|
473
|
-
|
|
474
|
-
</div>
|
|
475
|
-
|
|
476
|
-
<div class="method-description">
|
|
477
|
-
|
|
478
|
-
<p>
|
|
479
|
-
Generate a <a href="ReportTableLine.html">ReportTableLine</a> for each of
|
|
480
|
-
the resources in <em>resourceList</em>. In case <em>taskList</em> is not
|
|
481
|
-
nil, it also generates the nested task lines for each task that the
|
|
482
|
-
resource is assigned to. If <em>scopeLine</em> is defined, the generated
|
|
483
|
-
resource lines will be within the scope this task line.
|
|
484
|
-
</p>
|
|
485
|
-
|
|
486
|
-
<p><a class="source-toggle" href="#"
|
|
487
|
-
onclick="toggleCode('M000366-source');return false;">[Source]</a></p>
|
|
488
|
-
<div class="method-source-code" id="M000366-source">
|
|
489
|
-
<pre>
|
|
490
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 238</span>
|
|
491
|
-
238: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceList</span>(<span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
492
|
-
239: <span class="ruby-identifier">queryAttrs</span> = { <span class="ruby-value str">'scopeProperty'</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">property</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
|
|
493
|
-
240: <span class="ruby-value str">'loadUnit'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@loadUnit</span>,
|
|
494
|
-
241: <span class="ruby-value str">'numberFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@numberFormat</span>,
|
|
495
|
-
242: <span class="ruby-value str">'currencyFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@currencyFormat</span>,
|
|
496
|
-
243: <span class="ruby-value str">'start'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@start</span>, <span class="ruby-value str">'end'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@end</span>,
|
|
497
|
-
244: <span class="ruby-value str">'costAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@costAccount</span>,
|
|
498
|
-
245: <span class="ruby-value str">'revenueAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@revenueAccount</span> }
|
|
499
|
-
246: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">Query</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">queryAttrs</span>)
|
|
500
|
-
247: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
501
|
-
248:
|
|
502
|
-
249: <span class="ruby-comment cmt"># The primary line counter. Is not used for enclosed lines.</span>
|
|
503
|
-
250: <span class="ruby-identifier">no</span> = <span class="ruby-value">0</span>
|
|
504
|
-
251: <span class="ruby-comment cmt"># The scope line counter. It's reset for each new scope.</span>
|
|
505
|
-
252: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">lineNo</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
|
506
|
-
253: <span class="ruby-comment cmt"># Init the variable to get a larger scope</span>
|
|
507
|
-
254: <span class="ruby-identifier">line</span> = <span class="ruby-keyword kw">nil</span>
|
|
508
|
-
255: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
|
|
509
|
-
256: <span class="ruby-identifier">no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
510
|
-
257: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">10</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
511
|
-
258: <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
512
|
-
259: <span class="ruby-ivar">@scenarios</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
513
|
-
260: <span class="ruby-comment cmt"># Generate line for each resource.</span>
|
|
514
|
-
261: <span class="ruby-identifier">line</span> = <span class="ruby-constant">ReportTableLine</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">resource</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
515
|
-
262:
|
|
516
|
-
263: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">no</span> = <span class="ruby-identifier">no</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">scopeLine</span>
|
|
517
|
-
264: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">lineNo</span>
|
|
518
|
-
265: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">subLineNo</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">lines</span>
|
|
519
|
-
266: <span class="ruby-identifier">setIndent</span>(<span class="ruby-identifier">line</span>, <span class="ruby-ivar">@resourceRoot</span>, <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">treeMode?</span>)
|
|
520
|
-
267:
|
|
521
|
-
268: <span class="ruby-comment cmt"># Generate a cell for each column in this line.</span>
|
|
522
|
-
269: <span class="ruby-ivar">@columns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">column</span><span class="ruby-operator">|</span>
|
|
523
|
-
270: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">generateTableCell</span>(<span class="ruby-identifier">line</span>, <span class="ruby-identifier">resource</span>, <span class="ruby-identifier">column</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
524
|
-
271: <span class="ruby-keyword kw">end</span>
|
|
525
|
-
272: <span class="ruby-keyword kw">end</span>
|
|
526
|
-
273:
|
|
527
|
-
274: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">taskList</span>
|
|
528
|
-
275: <span class="ruby-comment cmt"># If we have a taskList we generate nested lines for each of the</span>
|
|
529
|
-
276: <span class="ruby-comment cmt"># tasks that the resource is assigned to and pass the user-defined</span>
|
|
530
|
-
277: <span class="ruby-comment cmt"># filter.</span>
|
|
531
|
-
278: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-ivar">@sortTasks</span>)
|
|
532
|
-
279: <span class="ruby-identifier">assignedTaskList</span> = <span class="ruby-identifier">filterTaskList</span>(<span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">resource</span>,
|
|
533
|
-
280: <span class="ruby-ivar">@hideTask</span>, <span class="ruby-ivar">@rollupTask</span>)
|
|
534
|
-
281: <span class="ruby-identifier">assignedTaskList</span>.<span class="ruby-identifier">sort!</span>
|
|
535
|
-
282: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">generateTaskList</span>(<span class="ruby-identifier">assignedTaskList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">line</span>)
|
|
536
|
-
283: <span class="ruby-keyword kw">end</span>
|
|
537
|
-
284: <span class="ruby-keyword kw">end</span>
|
|
538
|
-
285: <span class="ruby-identifier">lineNo</span>
|
|
539
|
-
286: <span class="ruby-keyword kw">end</span>
|
|
540
|
-
</pre>
|
|
541
|
-
</div>
|
|
542
|
-
|
|
543
|
-
</div>
|
|
544
|
-
</div>
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
<div id="method-M000365" class="method-detail">
|
|
548
|
-
<a name="M000365"></a>
|
|
549
|
-
|
|
550
|
-
<div class="method-heading">
|
|
551
|
-
|
|
552
|
-
<a href="#M000365" class="method-signature">
|
|
553
|
-
|
|
554
|
-
<span class="method-name">generateTaskList</span><span class="method-args">(taskList, resourceList, scopeLine)</span>
|
|
555
|
-
|
|
556
|
-
</a>
|
|
557
|
-
|
|
558
|
-
</div>
|
|
559
|
-
|
|
560
|
-
<div class="method-description">
|
|
561
|
-
|
|
562
|
-
<p>
|
|
563
|
-
Generate a <a href="ReportTableLine.html">ReportTableLine</a> for each of
|
|
564
|
-
the tasks in <em>taskList</em>. In case <em>resourceList</em> is not nil,
|
|
565
|
-
it also generates the nested resource lines for each resource that is
|
|
566
|
-
assigned to the particular task. If <em>scopeLine</em> is defined, the
|
|
567
|
-
generated task lines will be within the scope this resource line.
|
|
568
|
-
</p>
|
|
569
|
-
|
|
570
|
-
<p><a class="source-toggle" href="#"
|
|
571
|
-
onclick="toggleCode('M000365-source');return false;">[Source]</a></p>
|
|
572
|
-
<div class="method-source-code" id="M000365-source">
|
|
573
|
-
<pre>
|
|
574
|
-
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 184</span>
|
|
575
|
-
184: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskList</span>(<span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
576
|
-
185: <span class="ruby-identifier">queryAttrs</span> = { <span class="ruby-value str">'scopeProperty'</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">property</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
|
|
577
|
-
186: <span class="ruby-value str">'loadUnit'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@loadUnit</span>,
|
|
578
|
-
187: <span class="ruby-value str">'numberFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@numberFormat</span>,
|
|
579
|
-
188: <span class="ruby-value str">'currencyFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@currencyFormat</span>,
|
|
580
|
-
189: <span class="ruby-value str">'start'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@start</span>, <span class="ruby-value str">'end'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@end</span>,
|
|
581
|
-
190: <span class="ruby-value str">'costAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@costAccount</span>,
|
|
582
|
-
191: <span class="ruby-value str">'revenueAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@revenueAccount</span> }
|
|
583
|
-
192: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">Query</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">queryAttrs</span>)
|
|
584
|
-
193: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">sort!</span>
|
|
585
|
-
194:
|
|
586
|
-
195: <span class="ruby-comment cmt"># The primary line counter. Is not used for enclosed lines.</span>
|
|
587
|
-
196: <span class="ruby-identifier">no</span> = <span class="ruby-value">0</span>
|
|
588
|
-
197: <span class="ruby-comment cmt"># The scope line counter. It's reset for each new scope.</span>
|
|
589
|
-
198: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">lineNo</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
|
590
|
-
199: <span class="ruby-comment cmt"># Init the variable to get a larger scope</span>
|
|
591
|
-
200: <span class="ruby-identifier">line</span> = <span class="ruby-keyword kw">nil</span>
|
|
592
|
-
201: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
|
|
593
|
-
202: <span class="ruby-identifier">no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
594
|
-
203: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">10</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
595
|
-
204: <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
596
|
-
205: <span class="ruby-ivar">@scenarios</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
597
|
-
206: <span class="ruby-comment cmt"># Generate line for each task.</span>
|
|
598
|
-
207: <span class="ruby-identifier">line</span> = <span class="ruby-constant">ReportTableLine</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
599
|
-
208:
|
|
600
|
-
209: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">no</span> = <span class="ruby-identifier">no</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">scopeLine</span>
|
|
601
|
-
210: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">lineNo</span>
|
|
602
|
-
211: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">subLineNo</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">lines</span>
|
|
603
|
-
212: <span class="ruby-identifier">setIndent</span>(<span class="ruby-identifier">line</span>, <span class="ruby-ivar">@taskRoot</span>, <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">treeMode?</span>)
|
|
604
|
-
213:
|
|
605
|
-
214: <span class="ruby-comment cmt"># Generate a cell for each column in this line.</span>
|
|
606
|
-
215: <span class="ruby-ivar">@columns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">columnDef</span><span class="ruby-operator">|</span>
|
|
607
|
-
216: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">generateTableCell</span>(<span class="ruby-identifier">line</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
608
|
-
217: <span class="ruby-keyword kw">end</span>
|
|
609
|
-
218: <span class="ruby-keyword kw">end</span>
|
|
610
|
-
219:
|
|
611
|
-
220: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resourceList</span>
|
|
612
|
-
221: <span class="ruby-comment cmt"># If we have a resourceList we generate nested lines for each of the</span>
|
|
613
|
-
222: <span class="ruby-comment cmt"># resources that are assigned to this task and pass the user-defined</span>
|
|
614
|
-
223: <span class="ruby-comment cmt"># filter.</span>
|
|
615
|
-
224: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-ivar">@sortResources</span>)
|
|
616
|
-
225: <span class="ruby-identifier">assignedResourceList</span> = <span class="ruby-identifier">filterResourceList</span>(<span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">task</span>,
|
|
617
|
-
226: <span class="ruby-ivar">@hideResource</span>, <span class="ruby-ivar">@rollupResource</span>)
|
|
618
|
-
227: <span class="ruby-identifier">assignedResourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
619
|
-
228: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">generateResourceList</span>(<span class="ruby-identifier">assignedResourceList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">line</span>)
|
|
620
|
-
229: <span class="ruby-keyword kw">end</span>
|
|
621
|
-
230: <span class="ruby-keyword kw">end</span>
|
|
622
|
-
231: <span class="ruby-identifier">lineNo</span>
|
|
623
|
-
232: <span class="ruby-keyword kw">end</span>
|
|
624
|
-
</pre>
|
|
625
|
-
</div>
|
|
626
|
-
|
|
627
|
-
</div>
|
|
628
|
-
</div>
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
</div>
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
</div>
|
|
638
|
-
|
|
639
|
-
<div id="validator-badges">
|
|
640
|
-
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
641
|
-
</div>
|
|
642
|
-
|
|
643
|
-
</body>
|
|
644
|
-
</html>
|