taskjuggler 0.0.4 → 0.0.5
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/README +1 -1
- data/bin/tj3client +3 -0
- data/bin/tj3d +3 -0
- data/bin/tj3ts_receiver +3 -0
- data/bin/tj3ts_sender +3 -0
- data/bin/tj3ts_summary +3 -0
- data/data/css/tjmanual.css +14 -0
- data/data/css/tjreport.css +233 -21
- data/data/scripts/wz_tooltip.js +20 -20
- data/doc/AppConfig.html +1389 -0
- data/doc/Arguments.html +678 -0
- data/doc/COPYING.html +837 -0
- data/doc/Object.html +996 -0
- data/doc/README.html +523 -0
- data/doc/RuntimeConfig.html +762 -0
- data/doc/String.html +872 -0
- data/doc/TaskJuggler/Account.html +691 -0
- data/doc/TaskJuggler/AccountAttribute.html +707 -0
- data/doc/TaskJuggler/AccountScenario.html +650 -0
- data/doc/TaskJuggler/Allocation.html +898 -0
- data/doc/TaskJuggler/AllocationAttribute.html +737 -0
- data/doc/TaskJuggler/AttributeBase.html +1193 -0
- data/doc/TaskJuggler/AttributeDefinition.html +753 -0
- data/doc/TaskJuggler/BatchProcessor.html +1112 -0
- data/doc/TaskJuggler/Booking.html +797 -0
- data/doc/TaskJuggler/BookingListAttribute.html +709 -0
- data/doc/TaskJuggler/BooleanAttribute.html +707 -0
- data/doc/TaskJuggler/CSVFile.html +924 -0
- data/doc/TaskJuggler/CellSettingPattern.html +638 -0
- data/doc/TaskJuggler/CellSettingPatternList.html +687 -0
- data/doc/TaskJuggler/Charge.html +715 -0
- data/doc/TaskJuggler/ChargeListAttribute.html +671 -0
- data/doc/TaskJuggler/ChargeSet.html +887 -0
- data/doc/TaskJuggler/ChargeSetListAttribute.html +718 -0
- data/doc/TaskJuggler/ColumnListAttribute.html +673 -0
- data/doc/TaskJuggler/ColumnTable.html +701 -0
- data/doc/TaskJuggler/Daemon.html +728 -0
- data/doc/TaskJuggler/DateAttribute.html +675 -0
- data/doc/TaskJuggler/DefinitionListAttribute.html +593 -0
- data/doc/TaskJuggler/DependencyListAttribute.html +713 -0
- data/doc/TaskJuggler/DurationAttribute.html +707 -0
- data/doc/TaskJuggler/FixnumAttribute.html +629 -0
- data/doc/TaskJuggler/FlagListAttribute.html +709 -0
- data/doc/TaskJuggler/FloatAttribute.html +671 -0
- data/doc/TaskJuggler/FormatListAttribute.html +635 -0
- data/doc/TaskJuggler/GanttChart.html +1473 -0
- data/doc/TaskJuggler/GanttContainer.html +885 -0
- data/doc/TaskJuggler/GanttHeader.html +886 -0
- data/doc/TaskJuggler/GanttHeaderScaleItem.html +700 -0
- data/doc/TaskJuggler/GanttLine.html +1263 -0
- data/doc/TaskJuggler/GanttLoadStack.html +766 -0
- data/doc/TaskJuggler/GanttMilestone.html +865 -0
- data/doc/TaskJuggler/GanttRouter.html +1433 -0
- data/doc/TaskJuggler/GanttTaskBar.html +880 -0
- data/doc/TaskJuggler/HTMLDocument.html +719 -0
- data/doc/TaskJuggler/HTMLGraphics.html +775 -0
- data/doc/TaskJuggler/Interval.html +1016 -0
- data/doc/TaskJuggler/IntervalListAttribute.html +713 -0
- data/doc/TaskJuggler/JobInfo.html +881 -0
- data/doc/TaskJuggler/Journal.html +991 -0
- data/doc/TaskJuggler/JournalEntry.html +779 -0
- data/doc/TaskJuggler/JournalEntryList.html +952 -0
- data/doc/TaskJuggler/KeywordArray.html +628 -0
- data/doc/TaskJuggler/KeywordDocumentation.html +1662 -0
- data/doc/TaskJuggler/Limits/Limit.html +826 -0
- data/doc/TaskJuggler/Limits.html +966 -0
- data/doc/TaskJuggler/LimitsAttribute.html +707 -0
- data/doc/TaskJuggler/ListAttributeBase.html +641 -0
- data/doc/TaskJuggler/Log.html +1103 -0
- data/doc/TaskJuggler/LogFile.html +918 -0
- data/doc/TaskJuggler/LogicalAttribute.html +698 -0
- data/doc/TaskJuggler/LogicalExpression.html +739 -0
- data/doc/TaskJuggler/LogicalExpressionAttribute.html +629 -0
- data/doc/TaskJuggler/LogicalFlag.html +681 -0
- data/doc/TaskJuggler/LogicalFunction.html +1218 -0
- data/doc/TaskJuggler/LogicalOperation.html +1078 -0
- data/doc/TaskJuggler/Macro.html +646 -0
- data/doc/TaskJuggler/MacroParser.html +810 -0
- data/doc/TaskJuggler/MacroTable.html +810 -0
- data/doc/TaskJuggler/ManagerResponsibilities.html +674 -0
- data/doc/TaskJuggler/ManagerStatusRecord.html +678 -0
- data/doc/TaskJuggler/Message.html +757 -0
- data/doc/TaskJuggler/MessageHandler.html +679 -0
- data/doc/TaskJuggler/Navigator.html +867 -0
- data/doc/TaskJuggler/NavigatorElement.html +932 -0
- data/doc/TaskJuggler/NikuProject.html +662 -0
- data/doc/TaskJuggler/NikuReport.html +1316 -0
- data/doc/TaskJuggler/NikuResource.html +632 -0
- data/doc/TaskJuggler/OnShiftCache.html +864 -0
- data/doc/TaskJuggler/ProcessIntercom.html +847 -0
- data/doc/TaskJuggler/ProcessIntercomIface.html +664 -0
- data/doc/TaskJuggler/Project.html +3056 -0
- data/doc/TaskJuggler/ProjectBroker.html +1260 -0
- data/doc/TaskJuggler/ProjectBrokerIface.html +734 -0
- data/doc/TaskJuggler/ProjectFileParser.html +1951 -0
- data/doc/TaskJuggler/ProjectRecord.html +859 -0
- data/doc/TaskJuggler/ProjectServer.html +1092 -0
- data/doc/TaskJuggler/ProjectServerIface.html +768 -0
- data/doc/TaskJuggler/PropertyAttribute.html +629 -0
- data/doc/TaskJuggler/PropertyList.html +1336 -0
- data/doc/TaskJuggler/PropertySet.html +1785 -0
- data/doc/TaskJuggler/PropertyTreeNode.html +2482 -0
- data/doc/TaskJuggler/Query.html +1831 -0
- data/doc/TaskJuggler/RTFNavigator.html +729 -0
- data/doc/TaskJuggler/RTFQuery.html +1038 -0
- data/doc/TaskJuggler/RTFReport.html +740 -0
- data/doc/TaskJuggler/RealFormat.html +743 -0
- data/doc/TaskJuggler/RealFormatAttribute.html +593 -0
- data/doc/TaskJuggler/ReferenceAttribute.html +782 -0
- data/doc/TaskJuggler/Report.html +1255 -0
- data/doc/TaskJuggler/ReportBase.html +1198 -0
- data/doc/TaskJuggler/ReportContext.html +711 -0
- data/doc/TaskJuggler/ReportServer.html +988 -0
- data/doc/TaskJuggler/ReportServerIface.html +838 -0
- data/doc/TaskJuggler/ReportServerRecord.html +716 -0
- data/doc/TaskJuggler/ReportTable.html +1106 -0
- data/doc/TaskJuggler/ReportTableCell.html +1536 -0
- data/doc/TaskJuggler/ReportTableColumn.html +828 -0
- data/doc/TaskJuggler/ReportTableLegend.html +999 -0
- data/doc/TaskJuggler/ReportTableLine.html +1003 -0
- data/doc/TaskJuggler/Resource.html +938 -0
- data/doc/TaskJuggler/ResourceListAttribute.html +752 -0
- data/doc/TaskJuggler/ResourceListRE.html +674 -0
- data/doc/TaskJuggler/ResourceScenario.html +2457 -0
- data/doc/TaskJuggler/RichText.html +791 -0
- data/doc/TaskJuggler/RichTextAttribute.html +743 -0
- data/doc/TaskJuggler/RichTextDocument.html +972 -0
- data/doc/TaskJuggler/RichTextElement.html +1615 -0
- data/doc/TaskJuggler/RichTextException.html +667 -0
- data/doc/TaskJuggler/RichTextFunctionExample.html +737 -0
- data/doc/TaskJuggler/RichTextFunctionHandler.html +689 -0
- data/doc/TaskJuggler/RichTextImage.html +650 -0
- data/doc/TaskJuggler/RichTextIntermediate.html +1161 -0
- data/doc/TaskJuggler/RichTextParser.html +756 -0
- data/doc/TaskJuggler/RichTextScanner.html +2010 -0
- data/doc/TaskJuggler/RichTextSnip.html +942 -0
- data/doc/TaskJuggler/RichTextSyntaxRules.html +1722 -0
- data/doc/TaskJuggler/Scenario.html +594 -0
- data/doc/TaskJuggler/ScenarioData.html +815 -0
- data/doc/TaskJuggler/ScenarioListAttribute.html +671 -0
- data/doc/TaskJuggler/Scoreboard.html +1114 -0
- data/doc/TaskJuggler/SheetHandlerBase.html +1115 -0
- data/doc/TaskJuggler/SheetReceiver.html +1293 -0
- data/doc/TaskJuggler/SheetSender.html +1089 -0
- data/doc/TaskJuggler/Shift.html +689 -0
- data/doc/TaskJuggler/ShiftAssignment.html +950 -0
- data/doc/TaskJuggler/ShiftAssignments.html +1379 -0
- data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +707 -0
- data/doc/TaskJuggler/ShiftScenario.html +720 -0
- data/doc/TaskJuggler/SortListAttribute.html +631 -0
- data/doc/TaskJuggler/SourceFileInfo.html +698 -0
- data/doc/TaskJuggler/StatusSheetReceiver.html +615 -0
- data/doc/TaskJuggler/StatusSheetReport.html +872 -0
- data/doc/TaskJuggler/StatusSheetSender.html +654 -0
- data/doc/TaskJuggler/StringAttribute.html +671 -0
- data/doc/TaskJuggler/SymbolAttribute.html +629 -0
- data/doc/TaskJuggler/SyntaxReference.html +1155 -0
- data/doc/TaskJuggler/TOCEntry.html +723 -0
- data/doc/TaskJuggler/TSResourceRecord.html +670 -0
- data/doc/TaskJuggler/TSTaskRecord.html +682 -0
- data/doc/TaskJuggler/TableColumnDefinition.html +830 -0
- data/doc/TaskJuggler/TableOfContents.html +692 -0
- data/doc/TaskJuggler/TableReport.html +2444 -0
- data/doc/TaskJuggler/Task.html +781 -0
- data/doc/TaskJuggler/TaskDependency.html +730 -0
- data/doc/TaskJuggler/TaskListAttribute.html +713 -0
- data/doc/TaskJuggler/TaskListRE.html +673 -0
- data/doc/TaskJuggler/TaskScenario.html +4380 -0
- data/doc/TaskJuggler/TextFormatter.html +911 -0
- data/doc/TaskJuggler/TextParser/Pattern.html +1482 -0
- data/doc/TaskJuggler/TextParser/Rule.html +1288 -0
- data/doc/TaskJuggler/TextParser/StackElement.html +726 -0
- data/doc/TaskJuggler/TextParser/TextParserResultArray.html +648 -0
- data/doc/TaskJuggler/TextParser/TokenDoc.html +680 -0
- data/doc/TaskJuggler/TextParser.html +1670 -0
- data/doc/TaskJuggler/TextReport.html +856 -0
- data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +831 -0
- data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +832 -0
- data/doc/TaskJuggler/TextScanner/StreamHandle.html +737 -0
- data/doc/TaskJuggler/TextScanner.html +2430 -0
- data/doc/TaskJuggler/TimeSheet.html +1233 -0
- data/doc/TaskJuggler/TimeSheetReceiver.html +612 -0
- data/doc/TaskJuggler/TimeSheetRecord.html +1352 -0
- data/doc/TaskJuggler/TimeSheetReport.html +948 -0
- data/doc/TaskJuggler/TimeSheetSender.html +637 -0
- data/doc/TaskJuggler/TimeSheetSummary.html +865 -0
- data/doc/TaskJuggler/TimeSheets.html +674 -0
- data/doc/TaskJuggler/Tj3AppBase.html +782 -0
- data/doc/TaskJuggler/Tj3Client.html +1455 -0
- data/doc/TaskJuggler/Tj3Daemon.html +767 -0
- data/doc/TaskJuggler/Tj3SheetAppBase.html +696 -0
- data/doc/TaskJuggler/Tj3SsReceiver.html +682 -0
- data/doc/TaskJuggler/Tj3SsSender.html +708 -0
- data/doc/TaskJuggler/Tj3TsReceiver.html +681 -0
- data/doc/TaskJuggler/Tj3TsSender.html +702 -0
- data/doc/TaskJuggler/Tj3TsSummary.html +710 -0
- data/doc/TaskJuggler/TjException.html +630 -0
- data/doc/TaskJuggler/TjTime.html +2590 -0
- data/doc/TaskJuggler/TjpExample.html +835 -0
- data/doc/TaskJuggler/TjpExportRE.html +1581 -0
- data/doc/TaskJuggler/TjpSyntaxRules.html +13004 -0
- data/doc/TaskJuggler/UserManual.html +1145 -0
- data/doc/TaskJuggler/WorkingHours.html +1101 -0
- data/doc/TaskJuggler/WorkingHoursAttribute.html +694 -0
- data/doc/TaskJuggler/XMLBlob.html +645 -0
- data/doc/TaskJuggler/XMLComment.html +640 -0
- data/doc/TaskJuggler/XMLDocument.html +732 -0
- data/doc/TaskJuggler/XMLElement.html +900 -0
- data/doc/TaskJuggler/XMLNamedText.html +601 -0
- data/doc/TaskJuggler/XMLText.html +655 -0
- data/doc/TaskJuggler.html +2243 -0
- data/doc/index.html +3778 -17
- data/doc/lib/AccountScenario_rb.html +67 -0
- data/doc/lib/Account_rb.html +69 -0
- data/doc/lib/Allocation_rb.html +69 -0
- data/doc/lib/AppConfig_rb.html +69 -0
- data/doc/lib/AttributeBase_rb.html +67 -0
- data/doc/lib/AttributeDefinition_rb.html +65 -0
- data/doc/lib/Attributes_rb.html +81 -0
- data/doc/lib/BatchProcessor_rb.html +69 -0
- data/doc/lib/Booking_rb.html +65 -0
- data/doc/lib/ChargeSet_rb.html +67 -0
- data/doc/lib/Charge_rb.html +67 -0
- data/doc/lib/HTMLDocument_rb.html +67 -0
- data/doc/lib/Interval_rb.html +67 -0
- data/doc/lib/Journal_rb.html +65 -0
- data/doc/lib/KeywordArray_rb.html +65 -0
- data/doc/lib/KeywordDocumentation_rb.html +75 -0
- data/doc/lib/Limits_rb.html +67 -0
- data/doc/lib/LogFile_rb.html +67 -0
- data/doc/lib/Log_rb.html +69 -0
- data/doc/lib/LogicalExpression_rb.html +71 -0
- data/doc/lib/LogicalFunction_rb.html +67 -0
- data/doc/lib/LogicalOperation_rb.html +67 -0
- data/doc/lib/MacroParser_rb.html +69 -0
- data/doc/lib/MacroTable_rb.html +73 -0
- data/doc/lib/MessageHandler_rb.html +65 -0
- data/doc/lib/Message_rb.html +67 -0
- data/doc/lib/ProjectFileParser_rb.html +79 -0
- data/doc/lib/Project_rb.html +109 -0
- data/doc/lib/PropertyList_rb.html +65 -0
- data/doc/lib/PropertySet_rb.html +69 -0
- data/doc/lib/PropertyTreeNode_rb.html +65 -0
- data/doc/lib/Query_rb.html +67 -0
- data/doc/lib/RTFNavigator_rb.html +71 -0
- data/doc/lib/RTFQuery_rb.html +71 -0
- data/doc/lib/RTFReport_rb.html +69 -0
- data/doc/lib/RealFormat_rb.html +65 -0
- data/doc/lib/ResourceScenario_rb.html +67 -0
- data/doc/lib/Resource_rb.html +69 -0
- data/doc/lib/RichTextDocument_rb.html +71 -0
- data/doc/lib/RichTextElement_rb.html +73 -0
- data/doc/lib/RichTextFunctionExample_rb.html +71 -0
- data/doc/lib/RichTextFunctionHandler_rb.html +65 -0
- data/doc/lib/RichTextParser_rb.html +71 -0
- data/doc/lib/RichTextScanner_rb.html +67 -0
- data/doc/lib/RichTextSnip_rb.html +69 -0
- data/doc/lib/RichTextSyntaxRules_rb.html +65 -0
- data/doc/lib/RichText_rb.html +69 -0
- data/doc/lib/RuntimeConfig_rb.html +67 -0
- data/doc/lib/ScenarioData_rb.html +69 -0
- data/doc/lib/Scenario_rb.html +67 -0
- data/doc/lib/Scoreboard_rb.html +65 -0
- data/doc/lib/SheetHandlerBase_rb.html +69 -0
- data/doc/lib/SheetReceiver_rb.html +75 -0
- data/doc/lib/SheetSender_rb.html +73 -0
- data/doc/lib/ShiftAssignments_rb.html +67 -0
- data/doc/lib/ShiftScenario_rb.html +67 -0
- data/doc/lib/Shift_rb.html +69 -0
- data/doc/lib/SourceFileInfo_rb.html +65 -0
- data/doc/lib/StatusSheetReceiver_rb.html +67 -0
- data/doc/lib/StatusSheetSender_rb.html +67 -0
- data/doc/lib/SyntaxReference_rb.html +73 -0
- data/doc/lib/TOCEntry_rb.html +69 -0
- data/doc/lib/TableColumnDefinition_rb.html +65 -0
- data/doc/lib/TableOfContents_rb.html +69 -0
- data/doc/lib/TaskDependency_rb.html +65 -0
- data/doc/lib/TaskJuggler_rb.html +73 -0
- data/doc/lib/TaskScenario_rb.html +67 -0
- data/doc/lib/Task_rb.html +69 -0
- data/doc/lib/TextFormatter_rb.html +67 -0
- data/doc/lib/TextParser/Pattern_rb.html +67 -0
- data/doc/lib/TextParser/Rule_rb.html +65 -0
- data/doc/lib/TextParser/StackElement_rb.html +65 -0
- data/doc/lib/TextParser/TokenDoc_rb.html +65 -0
- data/doc/lib/TextParser_rb.html +75 -0
- data/doc/lib/TextScanner_rb.html +79 -0
- data/doc/lib/TimeSheetReceiver_rb.html +67 -0
- data/doc/lib/TimeSheetSender_rb.html +67 -0
- data/doc/lib/TimeSheetSummary_rb.html +67 -0
- data/doc/lib/TimeSheets_rb.html +65 -0
- data/doc/lib/Tj3AppBase_rb.html +77 -0
- data/doc/lib/Tj3Config_rb.html +69 -0
- data/doc/lib/Tj3SheetAppBase_rb.html +67 -0
- data/doc/lib/TjException_rb.html +65 -0
- data/doc/lib/TjTime_rb.html +69 -0
- data/doc/lib/TjpExample_rb.html +67 -0
- data/doc/lib/TjpSyntaxRules_rb.html +65 -0
- data/doc/lib/UTF8String_rb.html +65 -0
- data/doc/lib/UserManual_rb.html +77 -0
- data/doc/lib/WorkingHours_rb.html +67 -0
- data/doc/lib/XMLDocument_rb.html +67 -0
- data/doc/lib/XMLElement_rb.html +67 -0
- data/doc/lib/daemon/Daemon_rb.html +67 -0
- data/doc/lib/daemon/ProcessIntercom_rb.html +67 -0
- data/doc/lib/daemon/ProjectBroker_rb.html +79 -0
- data/doc/lib/daemon/ProjectServer_rb.html +83 -0
- data/doc/lib/daemon/ReportServer_rb.html +73 -0
- data/doc/lib/deep_copy_rb.html +65 -0
- data/doc/lib/reports/CSVFile_rb.html +67 -0
- data/doc/lib/reports/ColumnTable_rb.html +67 -0
- data/doc/lib/reports/GanttChart_rb.html +73 -0
- data/doc/lib/reports/GanttContainer_rb.html +67 -0
- data/doc/lib/reports/GanttHeaderScaleItem_rb.html +65 -0
- data/doc/lib/reports/GanttHeader_rb.html +67 -0
- data/doc/lib/reports/GanttLine_rb.html +77 -0
- data/doc/lib/reports/GanttLoadStack_rb.html +67 -0
- data/doc/lib/reports/GanttMilestone_rb.html +67 -0
- data/doc/lib/reports/GanttRouter_rb.html +65 -0
- data/doc/lib/reports/GanttTaskBar_rb.html +67 -0
- data/doc/lib/reports/HTMLGraphics_rb.html +65 -0
- data/doc/lib/reports/Navigator_rb.html +67 -0
- data/doc/lib/reports/NikuReport_rb.html +69 -0
- data/doc/lib/reports/ReportBase_rb.html +65 -0
- data/doc/lib/reports/ReportContext_rb.html +65 -0
- data/doc/lib/reports/ReportTableCell_rb.html +65 -0
- data/doc/lib/reports/ReportTableColumn_rb.html +65 -0
- data/doc/lib/reports/ReportTableLegend_rb.html +65 -0
- data/doc/lib/reports/ReportTableLine_rb.html +67 -0
- data/doc/lib/reports/ReportTable_rb.html +69 -0
- data/doc/lib/reports/Report_rb.html +91 -0
- data/doc/lib/reports/ResourceListRE_rb.html +73 -0
- data/doc/lib/reports/StatusSheetReport_rb.html +67 -0
- data/doc/lib/reports/TableReport_rb.html +75 -0
- data/doc/lib/reports/TaskListRE_rb.html +73 -0
- data/doc/lib/reports/TextReport_rb.html +67 -0
- data/doc/lib/reports/TimeSheetReport_rb.html +67 -0
- data/doc/lib/reports/TjpExportRE_rb.html +67 -0
- data/doc/lib/ruby-signal-bug_rb.html +54 -0
- data/doc/lib/taskjuggler3_rb.html +73 -0
- data/doc/lib/tj3client_rb.html +73 -0
- data/doc/lib/tj3d_rb.html +73 -0
- data/doc/lib/tj3man_rb.html +73 -0
- data/doc/lib/tj3ss_receiver_rb.html +69 -0
- data/doc/lib/tj3ss_sender_rb.html +69 -0
- data/doc/lib/tj3ts_receiver_rb.html +69 -0
- data/doc/lib/tj3ts_sender_rb.html +69 -0
- data/doc/lib/tj3ts_summary_rb.html +69 -0
- data/doc/rdoc.css +701 -0
- data/examples/tutorial.tjp +25 -6
- data/lib/Attributes.rb +6 -2
- data/lib/HTMLDocument.rb +18 -2
- data/lib/Journal.rb +47 -4
- data/lib/KeywordArray.rb +1 -1
- data/lib/KeywordDocumentation.rb +17 -77
- data/lib/Log.rb +3 -1
- data/lib/LogFile.rb +72 -0
- data/lib/LogicalExpression.rb +5 -10
- data/lib/LogicalFunction.rb +34 -18
- data/lib/LogicalOperation.rb +32 -18
- data/lib/Project.rb +85 -13
- data/lib/ProjectFileParser.rb +19 -6
- data/lib/PropertyList.rb +12 -2
- data/lib/PropertyTreeNode.rb +23 -9
- data/lib/Query.rb +51 -13
- data/lib/RTFReport.rb +2 -2
- data/lib/Resource.rb +157 -0
- data/lib/ResourceScenario.rb +215 -68
- data/lib/RichText.rb +15 -3
- data/lib/RichTextDocument.rb +2 -4
- data/lib/RichTextElement.rb +87 -25
- data/lib/RichTextScanner.rb +32 -5
- data/lib/RichTextSnip.rb +6 -4
- data/lib/RichTextSyntaxRules.rb +44 -8
- data/lib/RuntimeConfig.rb +93 -0
- data/lib/Scoreboard.rb +6 -6
- data/lib/SheetHandlerBase.rb +215 -0
- data/lib/SheetReceiver.rb +355 -0
- data/lib/SheetSender.rb +264 -0
- data/lib/ShiftAssignments.rb +35 -27
- data/lib/StatusSheetReceiver.rb +45 -0
- data/lib/StatusSheetSender.rb +54 -0
- data/lib/SyntaxReference.rb +2 -7
- data/lib/Task.rb +70 -0
- data/lib/TaskJuggler.rb +114 -12
- data/lib/TaskScenario.rb +131 -22
- data/lib/TextFormatter.rb +177 -0
- data/lib/TextParser.rb +10 -1
- data/lib/TextScanner.rb +63 -33
- data/lib/TimeSheetReceiver.rb +42 -0
- data/lib/TimeSheetSender.rb +55 -0
- data/lib/TimeSheetSummary.rb +149 -0
- data/lib/TimeSheets.rb +406 -0
- data/lib/Tj3AppBase.rb +114 -0
- data/lib/Tj3Config.rb +1 -1
- data/lib/Tj3SheetAppBase.rb +59 -0
- data/lib/TjTime.rb +14 -1
- data/lib/TjpSyntaxRules.rb +573 -211
- data/lib/UTF8String.rb +4 -0
- data/lib/UserManual.rb +8 -7
- data/lib/XMLElement.rb +27 -19
- data/lib/daemon/Daemon.rb +70 -0
- data/lib/daemon/ProcessIntercom.rb +117 -0
- data/lib/daemon/ProjectBroker.rb +450 -0
- data/lib/daemon/ProjectServer.rb +348 -0
- data/lib/daemon/ReportServer.rb +194 -0
- data/lib/reports/ColumnTable.rb +2 -0
- data/lib/reports/GanttChart.rb +5 -7
- data/lib/reports/GanttContainer.rb +5 -8
- data/lib/reports/GanttHeader.rb +1 -1
- data/lib/reports/GanttLine.rb +89 -53
- data/lib/reports/GanttMilestone.rb +7 -4
- data/lib/reports/GanttTaskBar.rb +7 -3
- data/lib/reports/HTMLGraphics.rb +24 -9
- data/lib/reports/NikuReport.rb +414 -0
- data/lib/reports/Report.rb +54 -20
- data/lib/reports/ReportBase.rb +21 -0
- data/lib/reports/ReportTable.rb +29 -11
- data/lib/reports/ReportTableCell.rb +154 -86
- data/lib/reports/ReportTableLegend.rb +77 -80
- data/lib/reports/ResourceListRE.rb +2 -3
- data/lib/reports/StatusSheetReport.rb +231 -0
- data/lib/reports/TableReport.rb +74 -65
- data/lib/reports/TaskListRE.rb +2 -4
- data/lib/reports/TextReport.rb +18 -12
- data/lib/reports/TimeSheetReport.rb +145 -80
- data/lib/reports/TjpExportRE.rb +4 -4
- data/lib/ruby-signal-bug.rb +43 -0
- data/lib/taskjuggler3.rb +27 -10
- data/lib/tj3client.rb +411 -77
- data/lib/tj3d.rb +110 -0
- data/lib/tj3ss_receiver.rb +56 -0
- data/lib/tj3ss_sender.rb +84 -0
- data/lib/tj3ts_receiver.rb +59 -0
- data/lib/tj3ts_sender.rb +78 -0
- data/lib/tj3ts_summary.rb +87 -0
- data/manual/Day_To_Day_Juggling +761 -32
- data/manual/Getting_Started +12 -12
- data/manual/Rich_Text_Attributes +13 -1
- data/manual/TaskJuggler_2x_Migration +41 -3
- data/manual/TaskJuggler_Internals +87 -0
- data/manual/The_TaskJuggler_Syntax +1 -2
- data/manual/Tutorial +10 -10
- data/test/TestSuite/CSV-Reports/celltext.tjp +1 -1
- data/test/TestSuite/HTML-Reports/TimeSheet.html +79 -0
- data/test/TestSuite/HTML-Reports/icons/trend-down.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/trend-flat.png +0 -0
- data/test/TestSuite/HTML-Reports/icons/trend-up.png +0 -0
- data/test/TestSuite/HTML-Reports/reference.html +51 -0
- data/test/TestSuite/Scheduler/Correct/Booking2.html +603 -0
- data/test/TestSuite/Scheduler/Correct/Booking2.tjp +57 -0
- data/test/TestSuite/Scheduler/Correct/Duration.tjp +32 -18
- data/test/TestSuite/Scheduler/Correct/Manager.tjp +9 -0
- data/test/TestSuite/Scheduler/Correct/Shift.html +429 -0
- data/test/TestSuite/Scheduler/Correct/Shift2.html +162 -0
- data/test/TestSuite/Scheduler/Correct/Shift2.tjp +67 -0
- data/test/TestSuite/{Syntax/Correct/TimeSheet.tjp → Scheduler/Correct/TimeSheet2.tjp} +21 -8
- data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +52 -0
- data/test/TestSuite/Scheduler/Correct/css/tjreport.css +195 -0
- data/test/TestSuite/{Syntax → Scheduler}/Correct/icons/details.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/{Syntax → Scheduler}/Correct/icons/resource.png +0 -0
- data/test/TestSuite/{Syntax → Scheduler}/Correct/icons/resourcegroup.png +0 -0
- data/test/TestSuite/{Syntax → Scheduler}/Correct/icons/task.png +0 -0
- data/test/TestSuite/{Syntax → Scheduler}/Correct/icons/taskgroup.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-down.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-flat.png +0 -0
- data/test/TestSuite/Scheduler/Correct/icons/trend-up.png +0 -0
- data/test/TestSuite/{HTML-Reports/scripts → Scheduler/Correct}/scripts/wz_tooltip.js +0 -0
- data/test/TestSuite/Scheduler/Errors/manager_is_group.tjp +15 -0
- data/test/TestSuite/Scheduler/Errors/manager_is_self.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/resource_fail_check.tjp +12 -0
- data/test/TestSuite/Scheduler/Errors/resource_warn_check.tjp +12 -0
- data/test/TestSuite/Scheduler/Errors/task_fail_check.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/task_warn_check.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/ts_alert1_more_details.tjp +20 -0
- data/test/TestSuite/Scheduler/Errors/ts_alert2_more_details.tjp +21 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_expected_end.tjp +26 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_headline1.tjp +27 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_rem_or_end.tjp +26 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_remaining.tjp +26 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_status_work.tjp +18 -0
- data/test/TestSuite/Scheduler/Errors/ts_no_work.tjp +26 -0
- data/test/TestSuite/Scheduler/Errors/ts_res_new_task.tjp +20 -0
- data/test/TestSuite/Scheduler/Errors/ts_work_too_high.tjp +27 -0
- data/test/TestSuite/Scheduler/Errors/ts_work_too_low.tjp +27 -0
- data/test/TestSuite/StatusSheets/boss.tji +45 -0
- data/test/TestSuite/StatusSheets/boss_mail +51 -0
- data/test/TestSuite/StatusSheets/dev2_mail +37 -0
- data/test/TestSuite/StatusSheets/project.tjp +275 -0
- data/test/TestSuite/StatusSheets/run +50 -0
- data/test/TestSuite/Syntax/Correct/Include.tjp +4 -0
- data/test/TestSuite/Syntax/Correct/Limits-1.tjp +10 -1
- data/test/TestSuite/Syntax/Correct/Manager.tjp +30 -0
- data/test/TestSuite/Syntax/Correct/Niku.tjp +66 -0
- data/test/TestSuite/Syntax/Correct/TimeSheet1.tjp +83 -0
- data/test/TestSuite/Syntax/Correct/include/dir1/file2.tji +1 -0
- data/test/TestSuite/Syntax/Correct/include/dir2/file3.tji +2 -0
- data/test/TestSuite/Syntax/Correct/include/file1.tji +3 -0
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +29 -8
- data/test/TestSuite/Syntax/Errors/ts_bad_priority.tjp +19 -0
- data/test/TestSuite/Syntax/Errors/ts_default_details.tjp +22 -0
- data/test/TestSuite/Syntax/Errors/ts_default_summary.tjp +22 -0
- data/test/TestSuite/Syntax/Errors/ts_duplicate_task.tjp +23 -0
- data/test/TestSuite/Syntax/Errors/ts_end_too_early.tjp +18 -0
- data/test/TestSuite/Syntax/Errors/ts_headline_too_long.tjp +19 -0
- data/test/TestSuite/Syntax/Errors/ts_no_headline2.tjp +27 -0
- data/test/TestSuite/Syntax/Errors/ts_summary_too_long.tjp +29 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/boss_2002-03-01.tji +36 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev1_2002-03-01.tji +48 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev2_2002-03-01.tji +67 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev3_2002-03-01.tji +67 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/doc_2002-03-01.tji +48 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/resources.yml +31 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/test_2002-03-01.tji +36 -0
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/acceptable_intervals +1 -0
- data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/all.tji +1 -0
- data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/dev2_2002-03-01.tji +54 -0
- data/test/TestSuite/TimeSheets/TimeSheets/all.tji +2 -0
- data/test/TestSuite/TimeSheets/dev2_mail1 +84 -0
- data/test/TestSuite/TimeSheets/dev2_mail2 +87 -0
- data/test/TestSuite/TimeSheets/project.tjp +271 -0
- data/test/TestSuite/TimeSheets/receiver.log +102 -0
- data/test/TestSuite/TimeSheets/run +75 -0
- data/test/TestSuite/TimeSheets/sender.log +794 -0
- data/test/TestSuite/TimeSheets/summary.log +884 -0
- data/test/TestSuite/TimeSheets/timesheets.log +45 -0
- data/test/TestSuite/TimeSheets/tj3d.log +292 -0
- data/test/test_CSV-Reports.rb +5 -3
- data/test/test_RichText.rb +264 -56
- data/test/test_Scheduler.rb +1 -0
- data/test/test_TextFormatter.rb +142 -0
- data/test/test_TjTime.rb +15 -0
- metadata +816 -644
- data/benchmarks/UTF-8-Strings.rb +0 -58
- data/doc/classes/AppConfig.html +0 -880
- data/doc/classes/Arguments.html +0 -230
- data/doc/classes/Object.html +0 -229
- data/doc/classes/String.html +0 -399
- data/doc/classes/TaskJuggler/Account.html +0 -257
- data/doc/classes/TaskJuggler/AccountAttribute.html +0 -261
- data/doc/classes/TaskJuggler/AccountScenario.html +0 -218
- data/doc/classes/TaskJuggler/Allocation.html +0 -423
- data/doc/classes/TaskJuggler/AllocationAttribute.html +0 -291
- data/doc/classes/TaskJuggler/AttributeBase.html +0 -704
- data/doc/classes/TaskJuggler/AttributeDefinition.html +0 -276
- data/doc/classes/TaskJuggler/BatchProcessor.html +0 -347
- data/doc/classes/TaskJuggler/Booking.html +0 -311
- data/doc/classes/TaskJuggler/BookingListAttribute.html +0 -263
- data/doc/classes/TaskJuggler/BooleanAttribute.html +0 -261
- data/doc/classes/TaskJuggler/CSVFile.html +0 -329
- data/doc/classes/TaskJuggler/CellSettingPattern.html +0 -201
- data/doc/classes/TaskJuggler/CellSettingPatternList.html +0 -253
- data/doc/classes/TaskJuggler/Charge.html +0 -283
- data/doc/classes/TaskJuggler/ChargeListAttribute.html +0 -229
- data/doc/classes/TaskJuggler/ChargeSet.html +0 -444
- data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +0 -276
- data/doc/classes/TaskJuggler/ColumnListAttribute.html +0 -231
- data/doc/classes/TaskJuggler/ColumnTable.html +0 -262
- data/doc/classes/TaskJuggler/DateAttribute.html +0 -233
- data/doc/classes/TaskJuggler/DefinitionListAttribute.html +0 -162
- data/doc/classes/TaskJuggler/DependencyListAttribute.html +0 -267
- data/doc/classes/TaskJuggler/DurationAttribute.html +0 -229
- data/doc/classes/TaskJuggler/FixnumAttribute.html +0 -194
- data/doc/classes/TaskJuggler/FlagListAttribute.html +0 -263
- data/doc/classes/TaskJuggler/FloatAttribute.html +0 -229
- data/doc/classes/TaskJuggler/FormatListAttribute.html +0 -197
- data/doc/classes/TaskJuggler/GanttChart.html +0 -696
- data/doc/classes/TaskJuggler/GanttContainer.html +0 -445
- data/doc/classes/TaskJuggler/GanttHeader.html +0 -284
- data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +0 -249
- data/doc/classes/TaskJuggler/GanttLine.html +0 -402
- data/doc/classes/TaskJuggler/GanttLoadStack.html +0 -331
- data/doc/classes/TaskJuggler/GanttMilestone.html +0 -419
- data/doc/classes/TaskJuggler/GanttRouter.html +0 -431
- data/doc/classes/TaskJuggler/GanttTaskBar.html +0 -433
- data/doc/classes/TaskJuggler/HTMLDocument.html +0 -240
- data/doc/classes/TaskJuggler/HTMLGraphics.html +0 -231
- data/doc/classes/TaskJuggler/Interval.html +0 -558
- data/doc/classes/TaskJuggler/IntervalListAttribute.html +0 -267
- data/doc/classes/TaskJuggler/JobInfo.html +0 -340
- data/doc/classes/TaskJuggler/Journal.html +0 -443
- data/doc/classes/TaskJuggler/JournalEntry.html +0 -274
- data/doc/classes/TaskJuggler/JournalEntryList.html +0 -454
- data/doc/classes/TaskJuggler/KeywordArray.html +0 -179
- data/doc/classes/TaskJuggler/KeywordDocumentation.html +0 -846
- data/doc/classes/TaskJuggler/Limits/Limit.html +0 -385
- data/doc/classes/TaskJuggler/Limits.html +0 -422
- data/doc/classes/TaskJuggler/LimitsAttribute.html +0 -261
- data/doc/classes/TaskJuggler/ListAttributeBase.html +0 -207
- data/doc/classes/TaskJuggler/Log.html +0 -655
- data/doc/classes/TaskJuggler/LogicalAttribute.html +0 -259
- data/doc/classes/TaskJuggler/LogicalExpression.html +0 -292
- data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +0 -194
- data/doc/classes/TaskJuggler/LogicalFlag.html +0 -209
- data/doc/classes/TaskJuggler/LogicalFunction.html +0 -339
- data/doc/classes/TaskJuggler/LogicalOperation.html +0 -351
- data/doc/classes/TaskJuggler/Macro.html +0 -198
- data/doc/classes/TaskJuggler/MacroParser.html +0 -360
- data/doc/classes/TaskJuggler/MacroTable.html +0 -370
- data/doc/classes/TaskJuggler/Message.html +0 -285
- data/doc/classes/TaskJuggler/MessageHandler.html +0 -231
- data/doc/classes/TaskJuggler/Navigator.html +0 -313
- data/doc/classes/TaskJuggler/NavigatorElement.html +0 -449
- data/doc/classes/TaskJuggler/OnShiftCache.html +0 -316
- data/doc/classes/TaskJuggler/Project.html +0 -2257
- data/doc/classes/TaskJuggler/ProjectFileParser.html +0 -420
- data/doc/classes/TaskJuggler/PropertyAttribute.html +0 -194
- data/doc/classes/TaskJuggler/PropertyList.html +0 -668
- data/doc/classes/TaskJuggler/PropertySet.html +0 -1286
- data/doc/classes/TaskJuggler/PropertyTreeNode.html +0 -1742
- data/doc/classes/TaskJuggler/Query.html +0 -870
- data/doc/classes/TaskJuggler/RTFNavigator.html +0 -293
- data/doc/classes/TaskJuggler/RTFQuery.html +0 -343
- data/doc/classes/TaskJuggler/RTFReport.html +0 -304
- data/doc/classes/TaskJuggler/RealFormat.html +0 -309
- data/doc/classes/TaskJuggler/RealFormatAttribute.html +0 -162
- data/doc/classes/TaskJuggler/ReferenceAttribute.html +0 -328
- data/doc/classes/TaskJuggler/RemoteServiceManager.html +0 -335
- data/doc/classes/TaskJuggler/Report.html +0 -321
- data/doc/classes/TaskJuggler/ReportBase.html +0 -437
- data/doc/classes/TaskJuggler/ReportContext.html +0 -248
- data/doc/classes/TaskJuggler/ReportServer.html +0 -320
- data/doc/classes/TaskJuggler/ReportTable.html +0 -526
- data/doc/classes/TaskJuggler/ReportTableCell.html +0 -614
- data/doc/classes/TaskJuggler/ReportTableColumn.html +0 -368
- data/doc/classes/TaskJuggler/ReportTableLegend.html +0 -347
- data/doc/classes/TaskJuggler/ReportTableLine.html +0 -481
- data/doc/classes/TaskJuggler/Resource.html +0 -211
- data/doc/classes/TaskJuggler/ResourceListAttribute.html +0 -302
- data/doc/classes/TaskJuggler/ResourceListRE.html +0 -245
- data/doc/classes/TaskJuggler/ResourceScenario.html +0 -1229
- data/doc/classes/TaskJuggler/RichText.html +0 -357
- data/doc/classes/TaskJuggler/RichTextAttribute.html +0 -293
- data/doc/classes/TaskJuggler/RichTextDocument.html +0 -424
- data/doc/classes/TaskJuggler/RichTextElement.html +0 -932
- data/doc/classes/TaskJuggler/RichTextException.html +0 -212
- data/doc/classes/TaskJuggler/RichTextFunctionExample.html +0 -301
- data/doc/classes/TaskJuggler/RichTextFunctionHandler.html +0 -245
- data/doc/classes/TaskJuggler/RichTextIntermediate.html +0 -563
- data/doc/classes/TaskJuggler/RichTextParser.html +0 -321
- data/doc/classes/TaskJuggler/RichTextScanner.html +0 -424
- data/doc/classes/TaskJuggler/RichTextSnip.html +0 -404
- data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +0 -1105
- data/doc/classes/TaskJuggler/Scenario.html +0 -163
- data/doc/classes/TaskJuggler/ScenarioData.html +0 -358
- data/doc/classes/TaskJuggler/ScenarioListAttribute.html +0 -229
- data/doc/classes/TaskJuggler/Scoreboard.html +0 -642
- data/doc/classes/TaskJuggler/Shift.html +0 -255
- data/doc/classes/TaskJuggler/ShiftAssignment.html +0 -492
- data/doc/classes/TaskJuggler/ShiftAssignments.html +0 -719
- data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +0 -261
- data/doc/classes/TaskJuggler/ShiftScenario.html +0 -282
- data/doc/classes/TaskJuggler/SortListAttribute.html +0 -196
- data/doc/classes/TaskJuggler/SourceFileInfo.html +0 -251
- data/doc/classes/TaskJuggler/StringAttribute.html +0 -229
- data/doc/classes/TaskJuggler/SymbolAttribute.html +0 -194
- data/doc/classes/TaskJuggler/SyntaxReference.html +0 -520
- data/doc/classes/TaskJuggler/TOCEntry.html +0 -246
- data/doc/classes/TaskJuggler/TSResourceRecord.html +0 -197
- data/doc/classes/TaskJuggler/TSTaskRecord.html +0 -215
- data/doc/classes/TaskJuggler/TableColumnDefinition.html +0 -309
- data/doc/classes/TaskJuggler/TableOfContents.html +0 -260
- data/doc/classes/TaskJuggler/TableReport.html +0 -1015
- data/doc/classes/TaskJuggler/Task.html +0 -203
- data/doc/classes/TaskJuggler/TaskDependency.html +0 -255
- data/doc/classes/TaskJuggler/TaskListAttribute.html +0 -267
- data/doc/classes/TaskJuggler/TaskListRE.html +0 -245
- data/doc/classes/TaskJuggler/TaskScenario.html +0 -2543
- data/doc/classes/TaskJuggler/TextParser/Pattern.html +0 -927
- data/doc/classes/TaskJuggler/TextParser/Rule.html +0 -783
- data/doc/classes/TaskJuggler/TextParser/StackElement.html +0 -272
- data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +0 -212
- data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +0 -225
- data/doc/classes/TaskJuggler/TextParser.html +0 -754
- data/doc/classes/TaskJuggler/TextReport.html +0 -367
- data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +0 -355
- data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +0 -348
- data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +0 -264
- data/doc/classes/TaskJuggler/TextScanner.html +0 -815
- data/doc/classes/TaskJuggler/TimeSheetReport.html +0 -406
- data/doc/classes/TaskJuggler/TjException.html +0 -185
- data/doc/classes/TaskJuggler/TjTime.html +0 -1904
- data/doc/classes/TaskJuggler/TjpExample.html +0 -314
- data/doc/classes/TaskJuggler/TjpExportRE.html +0 -306
- data/doc/classes/TaskJuggler/TjpSyntaxRules.html +0 -10812
- data/doc/classes/TaskJuggler/UserManual.html +0 -605
- data/doc/classes/TaskJuggler/WorkingHours.html +0 -586
- data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +0 -252
- data/doc/classes/TaskJuggler/XMLBlob.html +0 -207
- data/doc/classes/TaskJuggler/XMLComment.html +0 -206
- data/doc/classes/TaskJuggler/XMLDocument.html +0 -298
- data/doc/classes/TaskJuggler/XMLElement.html +0 -389
- data/doc/classes/TaskJuggler/XMLNamedText.html +0 -174
- data/doc/classes/TaskJuggler/XMLText.html +0 -221
- data/doc/classes/TaskJuggler.html +0 -1573
- data/doc/files/COPYING.html +0 -448
- data/doc/files/README.html +0 -134
- data/doc/files/lib/AccountScenario_rb.html +0 -117
- data/doc/files/lib/Account_rb.html +0 -119
- data/doc/files/lib/Allocation_rb.html +0 -119
- data/doc/files/lib/AppConfig_rb.html +0 -119
- data/doc/files/lib/AttributeBase_rb.html +0 -117
- data/doc/files/lib/AttributeDefinition_rb.html +0 -107
- data/doc/files/lib/Attributes_rb.html +0 -131
- data/doc/files/lib/BatchProcessor_rb.html +0 -119
- data/doc/files/lib/Booking_rb.html +0 -107
- data/doc/files/lib/ChargeSet_rb.html +0 -117
- data/doc/files/lib/Charge_rb.html +0 -117
- data/doc/files/lib/HTMLDocument_rb.html +0 -117
- data/doc/files/lib/Interval_rb.html +0 -117
- data/doc/files/lib/Journal_rb.html +0 -107
- data/doc/files/lib/KeywordArray_rb.html +0 -107
- data/doc/files/lib/KeywordDocumentation_rb.html +0 -123
- data/doc/files/lib/Limits_rb.html +0 -117
- data/doc/files/lib/Log_rb.html +0 -117
- data/doc/files/lib/LogicalExpression_rb.html +0 -121
- data/doc/files/lib/LogicalFunction_rb.html +0 -117
- data/doc/files/lib/LogicalOperation_rb.html +0 -117
- data/doc/files/lib/MacroParser_rb.html +0 -119
- data/doc/files/lib/MacroTable_rb.html +0 -123
- data/doc/files/lib/MessageHandler_rb.html +0 -107
- data/doc/files/lib/Message_rb.html +0 -117
- data/doc/files/lib/ProjectFileParser_rb.html +0 -129
- data/doc/files/lib/Project_rb.html +0 -153
- data/doc/files/lib/PropertyList_rb.html +0 -107
- data/doc/files/lib/PropertySet_rb.html +0 -119
- data/doc/files/lib/PropertyTreeNode_rb.html +0 -107
- data/doc/files/lib/Query_rb.html +0 -117
- data/doc/files/lib/RTFNavigator_rb.html +0 -121
- data/doc/files/lib/RTFQuery_rb.html +0 -121
- data/doc/files/lib/RTFReport_rb.html +0 -119
- data/doc/files/lib/RealFormat_rb.html +0 -107
- data/doc/files/lib/RemoteServiceManager_rb.html +0 -117
- data/doc/files/lib/ReportServer_rb.html +0 -107
- data/doc/files/lib/ResourceScenario_rb.html +0 -117
- data/doc/files/lib/Resource_rb.html +0 -119
- data/doc/files/lib/RichTextDocument_rb.html +0 -121
- data/doc/files/lib/RichTextElement_rb.html +0 -121
- data/doc/files/lib/RichTextFunctionExample_rb.html +0 -121
- data/doc/files/lib/RichTextFunctionHandler_rb.html +0 -107
- data/doc/files/lib/RichTextParser_rb.html +0 -121
- data/doc/files/lib/RichTextScanner_rb.html +0 -117
- data/doc/files/lib/RichTextSnip_rb.html +0 -119
- data/doc/files/lib/RichTextSyntaxRules_rb.html +0 -107
- data/doc/files/lib/RichText_rb.html +0 -119
- data/doc/files/lib/ScenarioData_rb.html +0 -119
- data/doc/files/lib/Scenario_rb.html +0 -117
- data/doc/files/lib/Scoreboard_rb.html +0 -107
- data/doc/files/lib/ShiftAssignments_rb.html +0 -117
- data/doc/files/lib/ShiftScenario_rb.html +0 -117
- data/doc/files/lib/Shift_rb.html +0 -119
- data/doc/files/lib/SourceFileInfo_rb.html +0 -107
- data/doc/files/lib/SyntaxReference_rb.html +0 -123
- data/doc/files/lib/TOCEntry_rb.html +0 -119
- data/doc/files/lib/TableColumnDefinition_rb.html +0 -107
- data/doc/files/lib/TableOfContents_rb.html +0 -119
- data/doc/files/lib/TaskDependency_rb.html +0 -107
- data/doc/files/lib/TaskJuggler_rb.html +0 -125
- data/doc/files/lib/TaskScenario_rb.html +0 -117
- data/doc/files/lib/Task_rb.html +0 -119
- data/doc/files/lib/TextParser/Pattern_rb.html +0 -117
- data/doc/files/lib/TextParser/Rule_rb.html +0 -107
- data/doc/files/lib/TextParser/StackElement_rb.html +0 -107
- data/doc/files/lib/TextParser/TokenDoc_rb.html +0 -107
- data/doc/files/lib/TextParser_rb.html +0 -125
- data/doc/files/lib/TextScanner_rb.html +0 -129
- data/doc/files/lib/Tj3Config_rb.html +0 -119
- data/doc/files/lib/TjException_rb.html +0 -107
- data/doc/files/lib/TjTime_rb.html +0 -119
- data/doc/files/lib/TjpExample_rb.html +0 -117
- data/doc/files/lib/TjpSyntaxRules_rb.html +0 -107
- data/doc/files/lib/UTF8String_rb.html +0 -140
- data/doc/files/lib/UserManual_rb.html +0 -127
- data/doc/files/lib/WorkingHours_rb.html +0 -117
- data/doc/files/lib/XMLDocument_rb.html +0 -117
- data/doc/files/lib/XMLElement_rb.html +0 -117
- data/doc/files/lib/deep_copy_rb.html +0 -107
- data/doc/files/lib/reports/CSVFile_rb.html +0 -117
- data/doc/files/lib/reports/ColumnTable_rb.html +0 -117
- data/doc/files/lib/reports/GanttChart_rb.html +0 -123
- data/doc/files/lib/reports/GanttContainer_rb.html +0 -117
- data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +0 -107
- data/doc/files/lib/reports/GanttHeader_rb.html +0 -117
- data/doc/files/lib/reports/GanttLine_rb.html +0 -127
- data/doc/files/lib/reports/GanttLoadStack_rb.html +0 -117
- data/doc/files/lib/reports/GanttMilestone_rb.html +0 -117
- data/doc/files/lib/reports/GanttRouter_rb.html +0 -107
- data/doc/files/lib/reports/GanttTaskBar_rb.html +0 -117
- data/doc/files/lib/reports/HTMLGraphics_rb.html +0 -107
- data/doc/files/lib/reports/Navigator_rb.html +0 -117
- data/doc/files/lib/reports/ReportBase_rb.html +0 -107
- data/doc/files/lib/reports/ReportContext_rb.html +0 -107
- data/doc/files/lib/reports/ReportTableCell_rb.html +0 -107
- data/doc/files/lib/reports/ReportTableColumn_rb.html +0 -107
- data/doc/files/lib/reports/ReportTableLegend_rb.html +0 -107
- data/doc/files/lib/reports/ReportTableLine_rb.html +0 -117
- data/doc/files/lib/reports/ReportTable_rb.html +0 -119
- data/doc/files/lib/reports/Report_rb.html +0 -137
- data/doc/files/lib/reports/ResourceListRE_rb.html +0 -123
- data/doc/files/lib/reports/TableReport_rb.html +0 -125
- data/doc/files/lib/reports/TaskListRE_rb.html +0 -123
- data/doc/files/lib/reports/TextReport_rb.html +0 -117
- data/doc/files/lib/reports/TimeSheetReport_rb.html +0 -117
- data/doc/files/lib/reports/TjpExportRE_rb.html +0 -117
- data/doc/files/lib/taskjuggler3_rb.html +0 -298
- data/doc/files/lib/tj3client_rb.html +0 -280
- data/doc/files/lib/tj3man_rb.html +0 -190
- data/doc/fr_class_index.html +0 -345
- data/doc/fr_file_index.html +0 -247
- data/doc/fr_method_index.html +0 -2355
- data/doc/rdoc-style.css +0 -299
- data/lib/RemoteServiceManager.rb +0 -80
- data/lib/ReportServer.rb +0 -66
- data/test/TestSuite/HTML-Reports/Alerts.html +0 -172
- data/test/TestSuite/HTML-Reports/CellText.html +0 -758
- data/test/TestSuite/HTML-Reports/ColumnPeriods.html +0 -156
- data/test/TestSuite/HTML-Reports/IsOngoing.html +0 -172
- data/test/TestSuite/HTML-Reports/LogicalFunctions.html +0 -80
- data/test/TestSuite/HTML-Reports/Query.html +0 -31
- data/test/TestSuite/HTML-Reports/depArrows.html +0 -842
- data/test/TestSuite/Syntax/Correct/RawHTML.tjp +0 -31
- data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +0 -1301
- data/test/TestSuite/Syntax/Errors/export_bad_extn.tjp +0 -9
@@ -0,0 +1,1831 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
5
|
+
<head>
|
6
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
7
|
+
|
8
|
+
<title>Class: TaskJuggler::Query</title>
|
9
|
+
|
10
|
+
<link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
|
11
|
+
|
12
|
+
<script src="../js/jquery.js" type="text/javascript"
|
13
|
+
charset="utf-8"></script>
|
14
|
+
<script src="../js/thickbox-compressed.js" type="text/javascript"
|
15
|
+
charset="utf-8"></script>
|
16
|
+
<script src="../js/quicksearch.js" type="text/javascript"
|
17
|
+
charset="utf-8"></script>
|
18
|
+
<script src="../js/darkfish.js" type="text/javascript"
|
19
|
+
charset="utf-8"></script>
|
20
|
+
|
21
|
+
</head>
|
22
|
+
<body class="class">
|
23
|
+
|
24
|
+
<div id="metadata">
|
25
|
+
<div id="home-metadata">
|
26
|
+
<div id="home-section" class="section">
|
27
|
+
<h3 class="section-header">
|
28
|
+
<a href="../index.html">Home</a>
|
29
|
+
<a href="../index.html#classes">Classes</a>
|
30
|
+
<a href="../index.html#methods">Methods</a>
|
31
|
+
</h3>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="file-metadata">
|
36
|
+
<div id="file-list-section" class="section">
|
37
|
+
<h3 class="section-header">In Files</h3>
|
38
|
+
<div class="section-body">
|
39
|
+
<ul>
|
40
|
+
|
41
|
+
<li><a href="../lib/Query_rb.html?TB_iframe=true&height=550&width=785"
|
42
|
+
class="thickbox" title="lib/Query.rb">lib/Query.rb</a></li>
|
43
|
+
|
44
|
+
</ul>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
|
48
|
+
|
49
|
+
</div>
|
50
|
+
|
51
|
+
<div id="class-metadata">
|
52
|
+
|
53
|
+
<!-- Parent Class -->
|
54
|
+
|
55
|
+
<div id="parent-class-section" class="section">
|
56
|
+
<h3 class="section-header">Parent</h3>
|
57
|
+
|
58
|
+
<p class="link"><a href="../Object.html">Object</a></p>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
|
62
|
+
|
63
|
+
<!-- Namespace Contents -->
|
64
|
+
|
65
|
+
|
66
|
+
<!-- Method Quickref -->
|
67
|
+
|
68
|
+
<div id="method-list-section" class="section">
|
69
|
+
<h3 class="section-header">Methods</h3>
|
70
|
+
<ul class="link-list">
|
71
|
+
|
72
|
+
<li><a href="#M000080">::new</a></li>
|
73
|
+
|
74
|
+
<li><a href="#M000083">#end</a></li>
|
75
|
+
|
76
|
+
<li><a href="#M000084">#endIdx=</a></li>
|
77
|
+
|
78
|
+
<li><a href="#M000085">#process</a></li>
|
79
|
+
|
80
|
+
<li><a href="#M000095">#reset</a></li>
|
81
|
+
|
82
|
+
<li><a href="#M000093">#resolvePropertyId</a></li>
|
83
|
+
|
84
|
+
<li><a href="#M000090">#result</a></li>
|
85
|
+
|
86
|
+
<li><a href="#M000091">#scaleDuration</a></li>
|
87
|
+
|
88
|
+
<li><a href="#M000092">#scaleLoad</a></li>
|
89
|
+
|
90
|
+
<li><a href="#M000094">#scaleValue</a></li>
|
91
|
+
|
92
|
+
<li><a href="#M000081">#start=</a></li>
|
93
|
+
|
94
|
+
<li><a href="#M000082">#startIdx=</a></li>
|
95
|
+
|
96
|
+
<li><a href="#M000087">#to_num</a></li>
|
97
|
+
|
98
|
+
<li><a href="#M000089">#to_rti</a></li>
|
99
|
+
|
100
|
+
<li><a href="#M000086">#to_s</a></li>
|
101
|
+
|
102
|
+
<li><a href="#M000088">#to_sort</a></li>
|
103
|
+
|
104
|
+
</ul>
|
105
|
+
</div>
|
106
|
+
|
107
|
+
|
108
|
+
<!-- Included Modules -->
|
109
|
+
|
110
|
+
</div>
|
111
|
+
|
112
|
+
<div id="project-metadata">
|
113
|
+
|
114
|
+
|
115
|
+
<div id="fileindex-section" class="section project-section">
|
116
|
+
<h3 class="section-header">Files</h3>
|
117
|
+
<ul>
|
118
|
+
|
119
|
+
<li class="file"><a href="../COPYING.html">COPYING</a></li>
|
120
|
+
|
121
|
+
<li class="file"><a href="../README.html">README</a></li>
|
122
|
+
|
123
|
+
</ul>
|
124
|
+
</div>
|
125
|
+
|
126
|
+
|
127
|
+
<div id="classindex-section" class="section project-section">
|
128
|
+
<h3 class="section-header">Class Index
|
129
|
+
<span class="search-toggle"><img src="../images/find.png"
|
130
|
+
height="16" width="16" alt="[+]"
|
131
|
+
title="show/hide quicksearch" /></span></h3>
|
132
|
+
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
|
133
|
+
<fieldset>
|
134
|
+
<legend>Quicksearch</legend>
|
135
|
+
<input type="text" name="quicksearch" value=""
|
136
|
+
class="quicksearch-field" />
|
137
|
+
</fieldset>
|
138
|
+
</form>
|
139
|
+
|
140
|
+
<ul class="link-list">
|
141
|
+
|
142
|
+
<li><a href="../TaskJuggler.html">TaskJuggler</a></li>
|
143
|
+
|
144
|
+
<li><a href="../TaskJuggler/Account.html">TaskJuggler::Account</a></li>
|
145
|
+
|
146
|
+
<li><a href="../TaskJuggler/AccountAttribute.html">TaskJuggler::AccountAttribute</a></li>
|
147
|
+
|
148
|
+
<li><a href="../TaskJuggler/AccountScenario.html">TaskJuggler::AccountScenario</a></li>
|
149
|
+
|
150
|
+
<li><a href="../TaskJuggler/Allocation.html">TaskJuggler::Allocation</a></li>
|
151
|
+
|
152
|
+
<li><a href="../TaskJuggler/AllocationAttribute.html">TaskJuggler::AllocationAttribute</a></li>
|
153
|
+
|
154
|
+
<li><a href="../TaskJuggler/AttributeBase.html">TaskJuggler::AttributeBase</a></li>
|
155
|
+
|
156
|
+
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
|
157
|
+
|
158
|
+
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
|
159
|
+
|
160
|
+
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
|
161
|
+
|
162
|
+
<li><a href="../TaskJuggler/BookingListAttribute.html">TaskJuggler::BookingListAttribute</a></li>
|
163
|
+
|
164
|
+
<li><a href="../TaskJuggler/BooleanAttribute.html">TaskJuggler::BooleanAttribute</a></li>
|
165
|
+
|
166
|
+
<li><a href="../TaskJuggler/CSVFile.html">TaskJuggler::CSVFile</a></li>
|
167
|
+
|
168
|
+
<li><a href="../TaskJuggler/CellSettingPattern.html">TaskJuggler::CellSettingPattern</a></li>
|
169
|
+
|
170
|
+
<li><a href="../TaskJuggler/CellSettingPatternList.html">TaskJuggler::CellSettingPatternList</a></li>
|
171
|
+
|
172
|
+
<li><a href="../TaskJuggler/Charge.html">TaskJuggler::Charge</a></li>
|
173
|
+
|
174
|
+
<li><a href="../TaskJuggler/ChargeListAttribute.html">TaskJuggler::ChargeListAttribute</a></li>
|
175
|
+
|
176
|
+
<li><a href="../TaskJuggler/ChargeSet.html">TaskJuggler::ChargeSet</a></li>
|
177
|
+
|
178
|
+
<li><a href="../TaskJuggler/ChargeSetListAttribute.html">TaskJuggler::ChargeSetListAttribute</a></li>
|
179
|
+
|
180
|
+
<li><a href="../TaskJuggler/ColumnListAttribute.html">TaskJuggler::ColumnListAttribute</a></li>
|
181
|
+
|
182
|
+
<li><a href="../TaskJuggler/ColumnTable.html">TaskJuggler::ColumnTable</a></li>
|
183
|
+
|
184
|
+
<li><a href="../TaskJuggler/Daemon.html">TaskJuggler::Daemon</a></li>
|
185
|
+
|
186
|
+
<li><a href="../TaskJuggler/DateAttribute.html">TaskJuggler::DateAttribute</a></li>
|
187
|
+
|
188
|
+
<li><a href="../TaskJuggler/DefinitionListAttribute.html">TaskJuggler::DefinitionListAttribute</a></li>
|
189
|
+
|
190
|
+
<li><a href="../TaskJuggler/DependencyListAttribute.html">TaskJuggler::DependencyListAttribute</a></li>
|
191
|
+
|
192
|
+
<li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
|
193
|
+
|
194
|
+
<li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
|
195
|
+
|
196
|
+
<li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
|
197
|
+
|
198
|
+
<li><a href="../TaskJuggler/FloatAttribute.html">TaskJuggler::FloatAttribute</a></li>
|
199
|
+
|
200
|
+
<li><a href="../TaskJuggler/FormatListAttribute.html">TaskJuggler::FormatListAttribute</a></li>
|
201
|
+
|
202
|
+
<li><a href="../TaskJuggler/GanttChart.html">TaskJuggler::GanttChart</a></li>
|
203
|
+
|
204
|
+
<li><a href="../TaskJuggler/GanttContainer.html">TaskJuggler::GanttContainer</a></li>
|
205
|
+
|
206
|
+
<li><a href="../TaskJuggler/GanttHeader.html">TaskJuggler::GanttHeader</a></li>
|
207
|
+
|
208
|
+
<li><a href="../TaskJuggler/GanttHeaderScaleItem.html">TaskJuggler::GanttHeaderScaleItem</a></li>
|
209
|
+
|
210
|
+
<li><a href="../TaskJuggler/GanttLine.html">TaskJuggler::GanttLine</a></li>
|
211
|
+
|
212
|
+
<li><a href="../TaskJuggler/GanttLoadStack.html">TaskJuggler::GanttLoadStack</a></li>
|
213
|
+
|
214
|
+
<li><a href="../TaskJuggler/GanttMilestone.html">TaskJuggler::GanttMilestone</a></li>
|
215
|
+
|
216
|
+
<li><a href="../TaskJuggler/GanttRouter.html">TaskJuggler::GanttRouter</a></li>
|
217
|
+
|
218
|
+
<li><a href="../TaskJuggler/GanttTaskBar.html">TaskJuggler::GanttTaskBar</a></li>
|
219
|
+
|
220
|
+
<li><a href="../TaskJuggler/HTMLDocument.html">TaskJuggler::HTMLDocument</a></li>
|
221
|
+
|
222
|
+
<li><a href="../TaskJuggler/HTMLGraphics.html">TaskJuggler::HTMLGraphics</a></li>
|
223
|
+
|
224
|
+
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
|
225
|
+
|
226
|
+
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
|
227
|
+
|
228
|
+
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
|
229
|
+
|
230
|
+
<li><a href="../TaskJuggler/Journal.html">TaskJuggler::Journal</a></li>
|
231
|
+
|
232
|
+
<li><a href="../TaskJuggler/JournalEntry.html">TaskJuggler::JournalEntry</a></li>
|
233
|
+
|
234
|
+
<li><a href="../TaskJuggler/JournalEntryList.html">TaskJuggler::JournalEntryList</a></li>
|
235
|
+
|
236
|
+
<li><a href="../TaskJuggler/KeywordArray.html">TaskJuggler::KeywordArray</a></li>
|
237
|
+
|
238
|
+
<li><a href="../TaskJuggler/KeywordDocumentation.html">TaskJuggler::KeywordDocumentation</a></li>
|
239
|
+
|
240
|
+
<li><a href="../TaskJuggler/Limits.html">TaskJuggler::Limits</a></li>
|
241
|
+
|
242
|
+
<li><a href="../TaskJuggler/Limits/Limit.html">TaskJuggler::Limits::Limit</a></li>
|
243
|
+
|
244
|
+
<li><a href="../TaskJuggler/LimitsAttribute.html">TaskJuggler::LimitsAttribute</a></li>
|
245
|
+
|
246
|
+
<li><a href="../TaskJuggler/ListAttributeBase.html">TaskJuggler::ListAttributeBase</a></li>
|
247
|
+
|
248
|
+
<li><a href="../TaskJuggler/Log.html">TaskJuggler::Log</a></li>
|
249
|
+
|
250
|
+
<li><a href="../TaskJuggler/LogFile.html">TaskJuggler::LogFile</a></li>
|
251
|
+
|
252
|
+
<li><a href="../TaskJuggler/LogicalAttribute.html">TaskJuggler::LogicalAttribute</a></li>
|
253
|
+
|
254
|
+
<li><a href="../TaskJuggler/LogicalExpression.html">TaskJuggler::LogicalExpression</a></li>
|
255
|
+
|
256
|
+
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
|
257
|
+
|
258
|
+
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
|
259
|
+
|
260
|
+
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
|
261
|
+
|
262
|
+
<li><a href="../TaskJuggler/LogicalOperation.html">TaskJuggler::LogicalOperation</a></li>
|
263
|
+
|
264
|
+
<li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
|
265
|
+
|
266
|
+
<li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
|
267
|
+
|
268
|
+
<li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
|
269
|
+
|
270
|
+
<li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
|
271
|
+
|
272
|
+
<li><a href="../TaskJuggler/ManagerStatusRecord.html">TaskJuggler::ManagerStatusRecord</a></li>
|
273
|
+
|
274
|
+
<li><a href="../TaskJuggler/Message.html">TaskJuggler::Message</a></li>
|
275
|
+
|
276
|
+
<li><a href="../TaskJuggler/MessageHandler.html">TaskJuggler::MessageHandler</a></li>
|
277
|
+
|
278
|
+
<li><a href="../TaskJuggler/Navigator.html">TaskJuggler::Navigator</a></li>
|
279
|
+
|
280
|
+
<li><a href="../TaskJuggler/NavigatorElement.html">TaskJuggler::NavigatorElement</a></li>
|
281
|
+
|
282
|
+
<li><a href="../TaskJuggler/NikuProject.html">TaskJuggler::NikuProject</a></li>
|
283
|
+
|
284
|
+
<li><a href="../TaskJuggler/NikuReport.html">TaskJuggler::NikuReport</a></li>
|
285
|
+
|
286
|
+
<li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
|
287
|
+
|
288
|
+
<li><a href="../TaskJuggler/OnShiftCache.html">TaskJuggler::OnShiftCache</a></li>
|
289
|
+
|
290
|
+
<li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
|
291
|
+
|
292
|
+
<li><a href="../TaskJuggler/ProcessIntercomIface.html">TaskJuggler::ProcessIntercomIface</a></li>
|
293
|
+
|
294
|
+
<li><a href="../TaskJuggler/Project.html">TaskJuggler::Project</a></li>
|
295
|
+
|
296
|
+
<li><a href="../TaskJuggler/ProjectBroker.html">TaskJuggler::ProjectBroker</a></li>
|
297
|
+
|
298
|
+
<li><a href="../TaskJuggler/ProjectBrokerIface.html">TaskJuggler::ProjectBrokerIface</a></li>
|
299
|
+
|
300
|
+
<li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
|
301
|
+
|
302
|
+
<li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
|
303
|
+
|
304
|
+
<li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
|
305
|
+
|
306
|
+
<li><a href="../TaskJuggler/ProjectServerIface.html">TaskJuggler::ProjectServerIface</a></li>
|
307
|
+
|
308
|
+
<li><a href="../TaskJuggler/PropertyAttribute.html">TaskJuggler::PropertyAttribute</a></li>
|
309
|
+
|
310
|
+
<li><a href="../TaskJuggler/PropertyList.html">TaskJuggler::PropertyList</a></li>
|
311
|
+
|
312
|
+
<li><a href="../TaskJuggler/PropertySet.html">TaskJuggler::PropertySet</a></li>
|
313
|
+
|
314
|
+
<li><a href="../TaskJuggler/PropertyTreeNode.html">TaskJuggler::PropertyTreeNode</a></li>
|
315
|
+
|
316
|
+
<li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
|
317
|
+
|
318
|
+
<li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
|
319
|
+
|
320
|
+
<li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
|
321
|
+
|
322
|
+
<li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
|
323
|
+
|
324
|
+
<li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
|
325
|
+
|
326
|
+
<li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
|
327
|
+
|
328
|
+
<li><a href="../TaskJuggler/ReferenceAttribute.html">TaskJuggler::ReferenceAttribute</a></li>
|
329
|
+
|
330
|
+
<li><a href="../TaskJuggler/Report.html">TaskJuggler::Report</a></li>
|
331
|
+
|
332
|
+
<li><a href="../TaskJuggler/ReportBase.html">TaskJuggler::ReportBase</a></li>
|
333
|
+
|
334
|
+
<li><a href="../TaskJuggler/ReportContext.html">TaskJuggler::ReportContext</a></li>
|
335
|
+
|
336
|
+
<li><a href="../TaskJuggler/ReportServer.html">TaskJuggler::ReportServer</a></li>
|
337
|
+
|
338
|
+
<li><a href="../TaskJuggler/ReportServerIface.html">TaskJuggler::ReportServerIface</a></li>
|
339
|
+
|
340
|
+
<li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
|
341
|
+
|
342
|
+
<li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
|
343
|
+
|
344
|
+
<li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
|
345
|
+
|
346
|
+
<li><a href="../TaskJuggler/ReportTableColumn.html">TaskJuggler::ReportTableColumn</a></li>
|
347
|
+
|
348
|
+
<li><a href="../TaskJuggler/ReportTableLegend.html">TaskJuggler::ReportTableLegend</a></li>
|
349
|
+
|
350
|
+
<li><a href="../TaskJuggler/ReportTableLine.html">TaskJuggler::ReportTableLine</a></li>
|
351
|
+
|
352
|
+
<li><a href="../TaskJuggler/Resource.html">TaskJuggler::Resource</a></li>
|
353
|
+
|
354
|
+
<li><a href="../TaskJuggler/ResourceListAttribute.html">TaskJuggler::ResourceListAttribute</a></li>
|
355
|
+
|
356
|
+
<li><a href="../TaskJuggler/ResourceListRE.html">TaskJuggler::ResourceListRE</a></li>
|
357
|
+
|
358
|
+
<li><a href="../TaskJuggler/ResourceScenario.html">TaskJuggler::ResourceScenario</a></li>
|
359
|
+
|
360
|
+
<li><a href="../TaskJuggler/RichText.html">TaskJuggler::RichText</a></li>
|
361
|
+
|
362
|
+
<li><a href="../TaskJuggler/RichTextAttribute.html">TaskJuggler::RichTextAttribute</a></li>
|
363
|
+
|
364
|
+
<li><a href="../TaskJuggler/RichTextDocument.html">TaskJuggler::RichTextDocument</a></li>
|
365
|
+
|
366
|
+
<li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
|
367
|
+
|
368
|
+
<li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
|
369
|
+
|
370
|
+
<li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
|
371
|
+
|
372
|
+
<li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
|
373
|
+
|
374
|
+
<li><a href="../TaskJuggler/RichTextImage.html">TaskJuggler::RichTextImage</a></li>
|
375
|
+
|
376
|
+
<li><a href="../TaskJuggler/RichTextIntermediate.html">TaskJuggler::RichTextIntermediate</a></li>
|
377
|
+
|
378
|
+
<li><a href="../TaskJuggler/RichTextParser.html">TaskJuggler::RichTextParser</a></li>
|
379
|
+
|
380
|
+
<li><a href="../TaskJuggler/RichTextScanner.html">TaskJuggler::RichTextScanner</a></li>
|
381
|
+
|
382
|
+
<li><a href="../TaskJuggler/RichTextSnip.html">TaskJuggler::RichTextSnip</a></li>
|
383
|
+
|
384
|
+
<li><a href="../TaskJuggler/RichTextSyntaxRules.html">TaskJuggler::RichTextSyntaxRules</a></li>
|
385
|
+
|
386
|
+
<li><a href="../TaskJuggler/Scenario.html">TaskJuggler::Scenario</a></li>
|
387
|
+
|
388
|
+
<li><a href="../TaskJuggler/ScenarioData.html">TaskJuggler::ScenarioData</a></li>
|
389
|
+
|
390
|
+
<li><a href="../TaskJuggler/ScenarioListAttribute.html">TaskJuggler::ScenarioListAttribute</a></li>
|
391
|
+
|
392
|
+
<li><a href="../TaskJuggler/Scoreboard.html">TaskJuggler::Scoreboard</a></li>
|
393
|
+
|
394
|
+
<li><a href="../TaskJuggler/SheetHandlerBase.html">TaskJuggler::SheetHandlerBase</a></li>
|
395
|
+
|
396
|
+
<li><a href="../TaskJuggler/SheetReceiver.html">TaskJuggler::SheetReceiver</a></li>
|
397
|
+
|
398
|
+
<li><a href="../TaskJuggler/SheetSender.html">TaskJuggler::SheetSender</a></li>
|
399
|
+
|
400
|
+
<li><a href="../TaskJuggler/Shift.html">TaskJuggler::Shift</a></li>
|
401
|
+
|
402
|
+
<li><a href="../TaskJuggler/ShiftAssignment.html">TaskJuggler::ShiftAssignment</a></li>
|
403
|
+
|
404
|
+
<li><a href="../TaskJuggler/ShiftAssignments.html">TaskJuggler::ShiftAssignments</a></li>
|
405
|
+
|
406
|
+
<li><a href="../TaskJuggler/ShiftAssignmentsAttribute.html">TaskJuggler::ShiftAssignmentsAttribute</a></li>
|
407
|
+
|
408
|
+
<li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
|
409
|
+
|
410
|
+
<li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
|
411
|
+
|
412
|
+
<li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
|
413
|
+
|
414
|
+
<li><a href="../TaskJuggler/StatusSheetReceiver.html">TaskJuggler::StatusSheetReceiver</a></li>
|
415
|
+
|
416
|
+
<li><a href="../TaskJuggler/StatusSheetReport.html">TaskJuggler::StatusSheetReport</a></li>
|
417
|
+
|
418
|
+
<li><a href="../TaskJuggler/StatusSheetSender.html">TaskJuggler::StatusSheetSender</a></li>
|
419
|
+
|
420
|
+
<li><a href="../TaskJuggler/StringAttribute.html">TaskJuggler::StringAttribute</a></li>
|
421
|
+
|
422
|
+
<li><a href="../TaskJuggler/SymbolAttribute.html">TaskJuggler::SymbolAttribute</a></li>
|
423
|
+
|
424
|
+
<li><a href="../TaskJuggler/SyntaxReference.html">TaskJuggler::SyntaxReference</a></li>
|
425
|
+
|
426
|
+
<li><a href="../TaskJuggler/TOCEntry.html">TaskJuggler::TOCEntry</a></li>
|
427
|
+
|
428
|
+
<li><a href="../TaskJuggler/TSResourceRecord.html">TaskJuggler::TSResourceRecord</a></li>
|
429
|
+
|
430
|
+
<li><a href="../TaskJuggler/TSTaskRecord.html">TaskJuggler::TSTaskRecord</a></li>
|
431
|
+
|
432
|
+
<li><a href="../TaskJuggler/TableColumnDefinition.html">TaskJuggler::TableColumnDefinition</a></li>
|
433
|
+
|
434
|
+
<li><a href="../TaskJuggler/TableOfContents.html">TaskJuggler::TableOfContents</a></li>
|
435
|
+
|
436
|
+
<li><a href="../TaskJuggler/TableReport.html">TaskJuggler::TableReport</a></li>
|
437
|
+
|
438
|
+
<li><a href="../TaskJuggler/Task.html">TaskJuggler::Task</a></li>
|
439
|
+
|
440
|
+
<li><a href="../TaskJuggler/TaskDependency.html">TaskJuggler::TaskDependency</a></li>
|
441
|
+
|
442
|
+
<li><a href="../TaskJuggler/TaskListAttribute.html">TaskJuggler::TaskListAttribute</a></li>
|
443
|
+
|
444
|
+
<li><a href="../TaskJuggler/TaskListRE.html">TaskJuggler::TaskListRE</a></li>
|
445
|
+
|
446
|
+
<li><a href="../TaskJuggler/TaskScenario.html">TaskJuggler::TaskScenario</a></li>
|
447
|
+
|
448
|
+
<li><a href="../TaskJuggler/TextFormatter.html">TaskJuggler::TextFormatter</a></li>
|
449
|
+
|
450
|
+
<li><a href="../TaskJuggler/TextParser.html">TaskJuggler::TextParser</a></li>
|
451
|
+
|
452
|
+
<li><a href="../TaskJuggler/TextParser/Pattern.html">TaskJuggler::TextParser::Pattern</a></li>
|
453
|
+
|
454
|
+
<li><a href="../TaskJuggler/TextParser/Rule.html">TaskJuggler::TextParser::Rule</a></li>
|
455
|
+
|
456
|
+
<li><a href="../TaskJuggler/TextParser/StackElement.html">TaskJuggler::TextParser::StackElement</a></li>
|
457
|
+
|
458
|
+
<li><a href="../TaskJuggler/TextParser/TextParserResultArray.html">TaskJuggler::TextParser::TextParserResultArray</a></li>
|
459
|
+
|
460
|
+
<li><a href="../TaskJuggler/TextParser/TokenDoc.html">TaskJuggler::TextParser::TokenDoc</a></li>
|
461
|
+
|
462
|
+
<li><a href="../TaskJuggler/TextReport.html">TaskJuggler::TextReport</a></li>
|
463
|
+
|
464
|
+
<li><a href="../TaskJuggler/TextScanner.html">TaskJuggler::TextScanner</a></li>
|
465
|
+
|
466
|
+
<li><a href="../TaskJuggler/TextScanner/BufferStreamHandle.html">TaskJuggler::TextScanner::BufferStreamHandle</a></li>
|
467
|
+
|
468
|
+
<li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
|
469
|
+
|
470
|
+
<li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
|
471
|
+
|
472
|
+
<li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
|
473
|
+
|
474
|
+
<li><a href="../TaskJuggler/TimeSheetReceiver.html">TaskJuggler::TimeSheetReceiver</a></li>
|
475
|
+
|
476
|
+
<li><a href="../TaskJuggler/TimeSheetRecord.html">TaskJuggler::TimeSheetRecord</a></li>
|
477
|
+
|
478
|
+
<li><a href="../TaskJuggler/TimeSheetReport.html">TaskJuggler::TimeSheetReport</a></li>
|
479
|
+
|
480
|
+
<li><a href="../TaskJuggler/TimeSheetSender.html">TaskJuggler::TimeSheetSender</a></li>
|
481
|
+
|
482
|
+
<li><a href="../TaskJuggler/TimeSheetSummary.html">TaskJuggler::TimeSheetSummary</a></li>
|
483
|
+
|
484
|
+
<li><a href="../TaskJuggler/TimeSheets.html">TaskJuggler::TimeSheets</a></li>
|
485
|
+
|
486
|
+
<li><a href="../TaskJuggler/Tj3AppBase.html">TaskJuggler::Tj3AppBase</a></li>
|
487
|
+
|
488
|
+
<li><a href="../TaskJuggler/Tj3Client.html">TaskJuggler::Tj3Client</a></li>
|
489
|
+
|
490
|
+
<li><a href="../TaskJuggler/Tj3Daemon.html">TaskJuggler::Tj3Daemon</a></li>
|
491
|
+
|
492
|
+
<li><a href="../TaskJuggler/Tj3SheetAppBase.html">TaskJuggler::Tj3SheetAppBase</a></li>
|
493
|
+
|
494
|
+
<li><a href="../TaskJuggler/Tj3SsReceiver.html">TaskJuggler::Tj3SsReceiver</a></li>
|
495
|
+
|
496
|
+
<li><a href="../TaskJuggler/Tj3SsSender.html">TaskJuggler::Tj3SsSender</a></li>
|
497
|
+
|
498
|
+
<li><a href="../TaskJuggler/Tj3TsReceiver.html">TaskJuggler::Tj3TsReceiver</a></li>
|
499
|
+
|
500
|
+
<li><a href="../TaskJuggler/Tj3TsSender.html">TaskJuggler::Tj3TsSender</a></li>
|
501
|
+
|
502
|
+
<li><a href="../TaskJuggler/Tj3TsSummary.html">TaskJuggler::Tj3TsSummary</a></li>
|
503
|
+
|
504
|
+
<li><a href="../TaskJuggler/TjException.html">TaskJuggler::TjException</a></li>
|
505
|
+
|
506
|
+
<li><a href="../TaskJuggler/TjTime.html">TaskJuggler::TjTime</a></li>
|
507
|
+
|
508
|
+
<li><a href="../TaskJuggler/TjpExample.html">TaskJuggler::TjpExample</a></li>
|
509
|
+
|
510
|
+
<li><a href="../TaskJuggler/TjpExportRE.html">TaskJuggler::TjpExportRE</a></li>
|
511
|
+
|
512
|
+
<li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
|
513
|
+
|
514
|
+
<li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
|
515
|
+
|
516
|
+
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
517
|
+
|
518
|
+
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
519
|
+
|
520
|
+
<li><a href="../TaskJuggler/XMLBlob.html">TaskJuggler::XMLBlob</a></li>
|
521
|
+
|
522
|
+
<li><a href="../TaskJuggler/XMLComment.html">TaskJuggler::XMLComment</a></li>
|
523
|
+
|
524
|
+
<li><a href="../TaskJuggler/XMLDocument.html">TaskJuggler::XMLDocument</a></li>
|
525
|
+
|
526
|
+
<li><a href="../TaskJuggler/XMLElement.html">TaskJuggler::XMLElement</a></li>
|
527
|
+
|
528
|
+
<li><a href="../TaskJuggler/XMLNamedText.html">TaskJuggler::XMLNamedText</a></li>
|
529
|
+
|
530
|
+
<li><a href="../TaskJuggler/XMLText.html">TaskJuggler::XMLText</a></li>
|
531
|
+
|
532
|
+
<li><a href="../AppConfig.html">AppConfig</a></li>
|
533
|
+
|
534
|
+
<li><a href="../Arguments.html">Arguments</a></li>
|
535
|
+
|
536
|
+
<li><a href="../Object.html">Object</a></li>
|
537
|
+
|
538
|
+
<li><a href="../RuntimeConfig.html">RuntimeConfig</a></li>
|
539
|
+
|
540
|
+
<li><a href="../String.html">String</a></li>
|
541
|
+
|
542
|
+
</ul>
|
543
|
+
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
544
|
+
</div>
|
545
|
+
|
546
|
+
|
547
|
+
</div>
|
548
|
+
</div>
|
549
|
+
|
550
|
+
<div id="documentation">
|
551
|
+
<h1 class="class">TaskJuggler::Query</h1>
|
552
|
+
|
553
|
+
<div id="description">
|
554
|
+
<p>
|
555
|
+
A query can be used to retrieve any property attribute after the scheduling
|
556
|
+
run has been completed. It is possible to make a <a
|
557
|
+
href="Query.html">Query</a> before the scheduling run has been completed,
|
558
|
+
but it only produces good results for static attributes. And for such
|
559
|
+
queries, the <a
|
560
|
+
href="PropertyTreeNode.html#M000967">PropertyTreeNode.get</a> and []
|
561
|
+
functions are a lot more efficient.
|
562
|
+
</p>
|
563
|
+
<p>
|
564
|
+
When constructing a <a href="Query.html">Query</a>, a set of variables need
|
565
|
+
to be set that is sufficient enough to identify a unique attribute. Some
|
566
|
+
attribute are computed dynamically and further variables such as a start
|
567
|
+
and end time will be incorporated into the result computation.
|
568
|
+
</p>
|
569
|
+
<p>
|
570
|
+
The result is returned as <a href="../String.html">String</a> (<a
|
571
|
+
href="Query.html#M000090">Query#result</a>), in numerical form
|
572
|
+
(Query#numericalResult) if available as number, and as an entity that can
|
573
|
+
be used for sorting (Query#sortableResult). To get the result, <a
|
574
|
+
href="Query.html#M000085">Query#process</a> needs to be called. In case an
|
575
|
+
error occured, <a href="Query.html#ok">Query#ok</a> is set to false and <a
|
576
|
+
href="Query.html#errorMessage">Query#errorMessage</a> contains an error
|
577
|
+
message.
|
578
|
+
</p>
|
579
|
+
|
580
|
+
</div>
|
581
|
+
|
582
|
+
<!-- Constants -->
|
583
|
+
|
584
|
+
|
585
|
+
<!-- Attributes -->
|
586
|
+
|
587
|
+
<div id="attribute-method-details" class="method-section section">
|
588
|
+
<h3 class="section-header">Attributes</h3>
|
589
|
+
|
590
|
+
|
591
|
+
<div id="project-attribute-method" class="method-detail">
|
592
|
+
<a name="project"></a>
|
593
|
+
|
594
|
+
<a name="project="></a>
|
595
|
+
|
596
|
+
<div class="method-heading attribute-method-heading">
|
597
|
+
<span class="method-name">project</span><span
|
598
|
+
class="attribute-access-type">[RW]</span>
|
599
|
+
</div>
|
600
|
+
|
601
|
+
<div class="method-description">
|
602
|
+
|
603
|
+
|
604
|
+
|
605
|
+
</div>
|
606
|
+
</div>
|
607
|
+
|
608
|
+
<div id="property-ype-attribute-method" class="method-detail">
|
609
|
+
<a name="propertyType"></a>
|
610
|
+
|
611
|
+
<a name="propertyType="></a>
|
612
|
+
|
613
|
+
<div class="method-heading attribute-method-heading">
|
614
|
+
<span class="method-name">propertyType</span><span
|
615
|
+
class="attribute-access-type">[RW]</span>
|
616
|
+
</div>
|
617
|
+
|
618
|
+
<div class="method-description">
|
619
|
+
|
620
|
+
|
621
|
+
|
622
|
+
</div>
|
623
|
+
</div>
|
624
|
+
|
625
|
+
<div id="property-d-attribute-method" class="method-detail">
|
626
|
+
<a name="propertyId"></a>
|
627
|
+
|
628
|
+
<a name="propertyId="></a>
|
629
|
+
|
630
|
+
<div class="method-heading attribute-method-heading">
|
631
|
+
<span class="method-name">propertyId</span><span
|
632
|
+
class="attribute-access-type">[RW]</span>
|
633
|
+
</div>
|
634
|
+
|
635
|
+
<div class="method-description">
|
636
|
+
|
637
|
+
|
638
|
+
|
639
|
+
</div>
|
640
|
+
</div>
|
641
|
+
|
642
|
+
<div id="property-attribute-method" class="method-detail">
|
643
|
+
<a name="property"></a>
|
644
|
+
|
645
|
+
<a name="property="></a>
|
646
|
+
|
647
|
+
<div class="method-heading attribute-method-heading">
|
648
|
+
<span class="method-name">property</span><span
|
649
|
+
class="attribute-access-type">[RW]</span>
|
650
|
+
</div>
|
651
|
+
|
652
|
+
<div class="method-description">
|
653
|
+
|
654
|
+
|
655
|
+
|
656
|
+
</div>
|
657
|
+
</div>
|
658
|
+
|
659
|
+
<div id="scope-roperty-ype-attribute-method" class="method-detail">
|
660
|
+
<a name="scopePropertyType"></a>
|
661
|
+
|
662
|
+
<a name="scopePropertyType="></a>
|
663
|
+
|
664
|
+
<div class="method-heading attribute-method-heading">
|
665
|
+
<span class="method-name">scopePropertyType</span><span
|
666
|
+
class="attribute-access-type">[RW]</span>
|
667
|
+
</div>
|
668
|
+
|
669
|
+
<div class="method-description">
|
670
|
+
|
671
|
+
|
672
|
+
|
673
|
+
</div>
|
674
|
+
</div>
|
675
|
+
|
676
|
+
<div id="scope-roperty-d-attribute-method" class="method-detail">
|
677
|
+
<a name="scopePropertyId"></a>
|
678
|
+
|
679
|
+
<a name="scopePropertyId="></a>
|
680
|
+
|
681
|
+
<div class="method-heading attribute-method-heading">
|
682
|
+
<span class="method-name">scopePropertyId</span><span
|
683
|
+
class="attribute-access-type">[RW]</span>
|
684
|
+
</div>
|
685
|
+
|
686
|
+
<div class="method-description">
|
687
|
+
|
688
|
+
|
689
|
+
|
690
|
+
</div>
|
691
|
+
</div>
|
692
|
+
|
693
|
+
<div id="scope-roperty-attribute-method" class="method-detail">
|
694
|
+
<a name="scopeProperty"></a>
|
695
|
+
|
696
|
+
<a name="scopeProperty="></a>
|
697
|
+
|
698
|
+
<div class="method-heading attribute-method-heading">
|
699
|
+
<span class="method-name">scopeProperty</span><span
|
700
|
+
class="attribute-access-type">[RW]</span>
|
701
|
+
</div>
|
702
|
+
|
703
|
+
<div class="method-description">
|
704
|
+
|
705
|
+
|
706
|
+
|
707
|
+
</div>
|
708
|
+
</div>
|
709
|
+
|
710
|
+
<div id="attribute-d-attribute-method" class="method-detail">
|
711
|
+
<a name="attributeId"></a>
|
712
|
+
|
713
|
+
<a name="attributeId="></a>
|
714
|
+
|
715
|
+
<div class="method-heading attribute-method-heading">
|
716
|
+
<span class="method-name">attributeId</span><span
|
717
|
+
class="attribute-access-type">[RW]</span>
|
718
|
+
</div>
|
719
|
+
|
720
|
+
<div class="method-description">
|
721
|
+
|
722
|
+
|
723
|
+
|
724
|
+
</div>
|
725
|
+
</div>
|
726
|
+
|
727
|
+
<div id="scenario-dx-attribute-method" class="method-detail">
|
728
|
+
<a name="scenarioIdx"></a>
|
729
|
+
|
730
|
+
<a name="scenarioIdx="></a>
|
731
|
+
|
732
|
+
<div class="method-heading attribute-method-heading">
|
733
|
+
<span class="method-name">scenarioIdx</span><span
|
734
|
+
class="attribute-access-type">[RW]</span>
|
735
|
+
</div>
|
736
|
+
|
737
|
+
<div class="method-description">
|
738
|
+
|
739
|
+
|
740
|
+
|
741
|
+
</div>
|
742
|
+
</div>
|
743
|
+
|
744
|
+
<div id="time-ormat-attribute-method" class="method-detail">
|
745
|
+
<a name="timeFormat"></a>
|
746
|
+
|
747
|
+
<a name="timeFormat="></a>
|
748
|
+
|
749
|
+
<div class="method-heading attribute-method-heading">
|
750
|
+
<span class="method-name">timeFormat</span><span
|
751
|
+
class="attribute-access-type">[RW]</span>
|
752
|
+
</div>
|
753
|
+
|
754
|
+
<div class="method-description">
|
755
|
+
|
756
|
+
|
757
|
+
|
758
|
+
</div>
|
759
|
+
</div>
|
760
|
+
|
761
|
+
<div id="number-ormat-attribute-method" class="method-detail">
|
762
|
+
<a name="numberFormat"></a>
|
763
|
+
|
764
|
+
<a name="numberFormat="></a>
|
765
|
+
|
766
|
+
<div class="method-heading attribute-method-heading">
|
767
|
+
<span class="method-name">numberFormat</span><span
|
768
|
+
class="attribute-access-type">[RW]</span>
|
769
|
+
</div>
|
770
|
+
|
771
|
+
<div class="method-description">
|
772
|
+
|
773
|
+
|
774
|
+
|
775
|
+
</div>
|
776
|
+
</div>
|
777
|
+
|
778
|
+
<div id="currency-ormat-attribute-method" class="method-detail">
|
779
|
+
<a name="currencyFormat"></a>
|
780
|
+
|
781
|
+
<a name="currencyFormat="></a>
|
782
|
+
|
783
|
+
<div class="method-heading attribute-method-heading">
|
784
|
+
<span class="method-name">currencyFormat</span><span
|
785
|
+
class="attribute-access-type">[RW]</span>
|
786
|
+
</div>
|
787
|
+
|
788
|
+
<div class="method-description">
|
789
|
+
|
790
|
+
|
791
|
+
|
792
|
+
</div>
|
793
|
+
</div>
|
794
|
+
|
795
|
+
<div id="cost-ccount-attribute-method" class="method-detail">
|
796
|
+
<a name="costAccount"></a>
|
797
|
+
|
798
|
+
<a name="costAccount="></a>
|
799
|
+
|
800
|
+
<div class="method-heading attribute-method-heading">
|
801
|
+
<span class="method-name">costAccount</span><span
|
802
|
+
class="attribute-access-type">[RW]</span>
|
803
|
+
</div>
|
804
|
+
|
805
|
+
<div class="method-description">
|
806
|
+
|
807
|
+
|
808
|
+
|
809
|
+
</div>
|
810
|
+
</div>
|
811
|
+
|
812
|
+
<div id="revenue-ccount-attribute-method" class="method-detail">
|
813
|
+
<a name="revenueAccount"></a>
|
814
|
+
|
815
|
+
<a name="revenueAccount="></a>
|
816
|
+
|
817
|
+
<div class="method-heading attribute-method-heading">
|
818
|
+
<span class="method-name">revenueAccount</span><span
|
819
|
+
class="attribute-access-type">[RW]</span>
|
820
|
+
</div>
|
821
|
+
|
822
|
+
<div class="method-description">
|
823
|
+
|
824
|
+
|
825
|
+
|
826
|
+
</div>
|
827
|
+
</div>
|
828
|
+
|
829
|
+
<div id="load-nit-attribute-method" class="method-detail">
|
830
|
+
<a name="loadUnit"></a>
|
831
|
+
|
832
|
+
<a name="loadUnit="></a>
|
833
|
+
|
834
|
+
<div class="method-heading attribute-method-heading">
|
835
|
+
<span class="method-name">loadUnit</span><span
|
836
|
+
class="attribute-access-type">[RW]</span>
|
837
|
+
</div>
|
838
|
+
|
839
|
+
<div class="method-description">
|
840
|
+
|
841
|
+
|
842
|
+
|
843
|
+
</div>
|
844
|
+
</div>
|
845
|
+
|
846
|
+
<div id="ok-attribute-method" class="method-detail">
|
847
|
+
<a name="ok"></a>
|
848
|
+
|
849
|
+
<a name="ok="></a>
|
850
|
+
|
851
|
+
<div class="method-heading attribute-method-heading">
|
852
|
+
<span class="method-name">ok</span><span
|
853
|
+
class="attribute-access-type">[RW]</span>
|
854
|
+
</div>
|
855
|
+
|
856
|
+
<div class="method-description">
|
857
|
+
|
858
|
+
|
859
|
+
|
860
|
+
</div>
|
861
|
+
</div>
|
862
|
+
|
863
|
+
<div id="error-essage-attribute-method" class="method-detail">
|
864
|
+
<a name="errorMessage"></a>
|
865
|
+
|
866
|
+
<a name="errorMessage="></a>
|
867
|
+
|
868
|
+
<div class="method-heading attribute-method-heading">
|
869
|
+
<span class="method-name">errorMessage</span><span
|
870
|
+
class="attribute-access-type">[RW]</span>
|
871
|
+
</div>
|
872
|
+
|
873
|
+
<div class="method-description">
|
874
|
+
|
875
|
+
|
876
|
+
|
877
|
+
</div>
|
878
|
+
</div>
|
879
|
+
|
880
|
+
<div id="end-attribute-method" class="method-detail">
|
881
|
+
<a name="end"></a>
|
882
|
+
|
883
|
+
<div class="method-heading attribute-method-heading">
|
884
|
+
<span class="method-name">end</span><span
|
885
|
+
class="attribute-access-type">[R]</span>
|
886
|
+
</div>
|
887
|
+
|
888
|
+
<div class="method-description">
|
889
|
+
|
890
|
+
|
891
|
+
|
892
|
+
</div>
|
893
|
+
</div>
|
894
|
+
|
895
|
+
<div id="end-dx-attribute-method" class="method-detail">
|
896
|
+
<a name="endIdx"></a>
|
897
|
+
|
898
|
+
<div class="method-heading attribute-method-heading">
|
899
|
+
<span class="method-name">endIdx</span><span
|
900
|
+
class="attribute-access-type">[R]</span>
|
901
|
+
</div>
|
902
|
+
|
903
|
+
<div class="method-description">
|
904
|
+
|
905
|
+
|
906
|
+
|
907
|
+
</div>
|
908
|
+
</div>
|
909
|
+
|
910
|
+
<div id="start-attribute-method" class="method-detail">
|
911
|
+
<a name="start"></a>
|
912
|
+
|
913
|
+
<div class="method-heading attribute-method-heading">
|
914
|
+
<span class="method-name">start</span><span
|
915
|
+
class="attribute-access-type">[R]</span>
|
916
|
+
</div>
|
917
|
+
|
918
|
+
<div class="method-description">
|
919
|
+
|
920
|
+
|
921
|
+
|
922
|
+
</div>
|
923
|
+
</div>
|
924
|
+
|
925
|
+
<div id="start-dx-attribute-method" class="method-detail">
|
926
|
+
<a name="startIdx"></a>
|
927
|
+
|
928
|
+
<div class="method-heading attribute-method-heading">
|
929
|
+
<span class="method-name">startIdx</span><span
|
930
|
+
class="attribute-access-type">[R]</span>
|
931
|
+
</div>
|
932
|
+
|
933
|
+
<div class="method-description">
|
934
|
+
|
935
|
+
|
936
|
+
|
937
|
+
</div>
|
938
|
+
</div>
|
939
|
+
|
940
|
+
<div id="sortable-attribute-method" class="method-detail">
|
941
|
+
<a name="sortable"></a>
|
942
|
+
|
943
|
+
<a name="sortable="></a>
|
944
|
+
|
945
|
+
<div class="method-heading attribute-method-heading">
|
946
|
+
<span class="method-name">sortable</span><span
|
947
|
+
class="attribute-access-type">[W]</span>
|
948
|
+
</div>
|
949
|
+
|
950
|
+
<div class="method-description">
|
951
|
+
|
952
|
+
|
953
|
+
|
954
|
+
</div>
|
955
|
+
</div>
|
956
|
+
|
957
|
+
<div id="numerical-attribute-method" class="method-detail">
|
958
|
+
<a name="numerical"></a>
|
959
|
+
|
960
|
+
<a name="numerical="></a>
|
961
|
+
|
962
|
+
<div class="method-heading attribute-method-heading">
|
963
|
+
<span class="method-name">numerical</span><span
|
964
|
+
class="attribute-access-type">[W]</span>
|
965
|
+
</div>
|
966
|
+
|
967
|
+
<div class="method-description">
|
968
|
+
|
969
|
+
|
970
|
+
|
971
|
+
</div>
|
972
|
+
</div>
|
973
|
+
|
974
|
+
<div id="string-attribute-method" class="method-detail">
|
975
|
+
<a name="string"></a>
|
976
|
+
|
977
|
+
<a name="string="></a>
|
978
|
+
|
979
|
+
<div class="method-heading attribute-method-heading">
|
980
|
+
<span class="method-name">string</span><span
|
981
|
+
class="attribute-access-type">[W]</span>
|
982
|
+
</div>
|
983
|
+
|
984
|
+
<div class="method-description">
|
985
|
+
|
986
|
+
|
987
|
+
|
988
|
+
</div>
|
989
|
+
</div>
|
990
|
+
|
991
|
+
<div id="rti-attribute-method" class="method-detail">
|
992
|
+
<a name="rti"></a>
|
993
|
+
|
994
|
+
<a name="rti="></a>
|
995
|
+
|
996
|
+
<div class="method-heading attribute-method-heading">
|
997
|
+
<span class="method-name">rti</span><span
|
998
|
+
class="attribute-access-type">[W]</span>
|
999
|
+
</div>
|
1000
|
+
|
1001
|
+
<div class="method-description">
|
1002
|
+
|
1003
|
+
|
1004
|
+
|
1005
|
+
</div>
|
1006
|
+
</div>
|
1007
|
+
|
1008
|
+
</div>
|
1009
|
+
|
1010
|
+
|
1011
|
+
<!-- Methods -->
|
1012
|
+
|
1013
|
+
<div id="public-class-method-details" class="method-section section">
|
1014
|
+
<h3 class="section-header">Public Class Methods</h3>
|
1015
|
+
|
1016
|
+
|
1017
|
+
<div id="new-method" class="method-detail ">
|
1018
|
+
<a name="M000080"></a>
|
1019
|
+
|
1020
|
+
<div class="method-heading">
|
1021
|
+
|
1022
|
+
<span class="method-name">new</span><span
|
1023
|
+
class="method-args">(parameters = { })</span>
|
1024
|
+
<span class="method-click-advice">click to toggle source</span>
|
1025
|
+
|
1026
|
+
</div>
|
1027
|
+
|
1028
|
+
<div class="method-description">
|
1029
|
+
|
1030
|
+
<p>
|
1031
|
+
Create a new <a href="Query.html">Query</a> object. The <em>parameters</em>
|
1032
|
+
need to be sufficent to uniquely identify an attribute.
|
1033
|
+
</p>
|
1034
|
+
|
1035
|
+
|
1036
|
+
|
1037
|
+
<div class="method-source-code"
|
1038
|
+
id="new-source">
|
1039
|
+
<pre>
|
1040
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 47</span>
|
1041
|
+
47: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">parameters</span> = { })
|
1042
|
+
48: <span class="ruby-identifier">ps</span> = <span class="ruby-node">%( project propertyType propertyId property scopePropertyId
|
1043
|
+
49: scopeProperty attributeId scenario scenarioIdx
|
1044
|
+
50: loadUnit numberFormat currencyFormat timeFormat
|
1045
|
+
51: costAccount revenueAccount)</span>
|
1046
|
+
52: <span class="ruby-identifier">ps</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
|
1047
|
+
53: <span class="ruby-identifier">instance_variable_set</span>(<span class="ruby-value str">'@'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">p</span>, <span class="ruby-identifier">parameters</span>[<span class="ruby-identifier">p</span>] <span class="ruby-operator">?</span> <span class="ruby-identifier">parameters</span>[<span class="ruby-identifier">p</span>] <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>)
|
1048
|
+
54: <span class="ruby-keyword kw">end</span>
|
1049
|
+
55:
|
1050
|
+
56: <span class="ruby-comment cmt"># instance_variable_set does not call writer functions. So we need to</span>
|
1051
|
+
57: <span class="ruby-comment cmt"># handle @start, @end, @startIdx and @endIdx separately.</span>
|
1052
|
+
58: <span class="ruby-node">%( end endIdx start startIdx )</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
|
1053
|
+
59: <span class="ruby-identifier">send</span>(<span class="ruby-identifier">p</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'='</span>, <span class="ruby-identifier">parameters</span>[<span class="ruby-identifier">p</span>]) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">parameters</span>[<span class="ruby-identifier">p</span>]
|
1054
|
+
60: <span class="ruby-keyword kw">end</span>
|
1055
|
+
61:
|
1056
|
+
62: <span class="ruby-identifier">reset</span>
|
1057
|
+
63: <span class="ruby-keyword kw">end</span></pre>
|
1058
|
+
</div>
|
1059
|
+
|
1060
|
+
</div>
|
1061
|
+
|
1062
|
+
|
1063
|
+
|
1064
|
+
|
1065
|
+
</div>
|
1066
|
+
|
1067
|
+
|
1068
|
+
</div>
|
1069
|
+
|
1070
|
+
<div id="public-instance-method-details" class="method-section section">
|
1071
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
1072
|
+
|
1073
|
+
|
1074
|
+
<div id="end-method" class="method-detail ">
|
1075
|
+
<a name="M000083"></a>
|
1076
|
+
|
1077
|
+
<div class="method-heading">
|
1078
|
+
|
1079
|
+
<span class="method-name">end</span><span
|
1080
|
+
class="method-args">(=(date))</span>
|
1081
|
+
<span class="method-click-advice">click to toggle source</span>
|
1082
|
+
|
1083
|
+
</div>
|
1084
|
+
|
1085
|
+
<div class="method-description">
|
1086
|
+
|
1087
|
+
|
1088
|
+
|
1089
|
+
|
1090
|
+
|
1091
|
+
<div class="method-source-code"
|
1092
|
+
id="end-source">
|
1093
|
+
<pre>
|
1094
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 90</span>
|
1095
|
+
90: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">end</span>=(<span class="ruby-identifier">date</span>)
|
1096
|
+
91: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">date</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">TjTime</span>)
|
1097
|
+
92: <span class="ruby-ivar">@end</span> = <span class="ruby-identifier">date</span>
|
1098
|
+
93: <span class="ruby-ivar">@endIdx</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-identifier">date</span>, <span class="ruby-keyword kw">true</span>)
|
1099
|
+
94: <span class="ruby-comment cmt">#elsif date.is_a?(Fixnum)</span>
|
1100
|
+
95: <span class="ruby-comment cmt"># self.endIdx=(date)</span>
|
1101
|
+
96: <span class="ruby-keyword kw">else</span>
|
1102
|
+
97: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Unsupported type #{date.class}"</span>
|
1103
|
+
98: <span class="ruby-keyword kw">end</span>
|
1104
|
+
99: <span class="ruby-keyword kw">end</span></pre>
|
1105
|
+
</div>
|
1106
|
+
|
1107
|
+
</div>
|
1108
|
+
|
1109
|
+
|
1110
|
+
|
1111
|
+
|
1112
|
+
</div>
|
1113
|
+
|
1114
|
+
|
1115
|
+
<div id="end-dx--method" class="method-detail ">
|
1116
|
+
<a name="M000084"></a>
|
1117
|
+
|
1118
|
+
<div class="method-heading">
|
1119
|
+
|
1120
|
+
<span class="method-name">endIdx=</span><span
|
1121
|
+
class="method-args">(idx)</span>
|
1122
|
+
<span class="method-click-advice">click to toggle source</span>
|
1123
|
+
|
1124
|
+
</div>
|
1125
|
+
|
1126
|
+
<div class="method-description">
|
1127
|
+
|
1128
|
+
|
1129
|
+
|
1130
|
+
|
1131
|
+
|
1132
|
+
<div class="method-source-code"
|
1133
|
+
id="end-dx--source">
|
1134
|
+
<pre>
|
1135
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 101</span>
|
1136
|
+
101: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">endIdx=</span>(<span class="ruby-identifier">idx</span>)
|
1137
|
+
102: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Fixnum</span>)
|
1138
|
+
103: <span class="ruby-ivar">@endIdx</span> = <span class="ruby-identifier">idx</span>
|
1139
|
+
104: <span class="ruby-ivar">@end</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">idxToDate</span>(<span class="ruby-identifier">idx</span>)
|
1140
|
+
105: <span class="ruby-comment cmt">#elsif idx.is_a?(TjTime)</span>
|
1141
|
+
106: <span class="ruby-comment cmt"># self.end=(idx)</span>
|
1142
|
+
107: <span class="ruby-keyword kw">else</span>
|
1143
|
+
108: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Unsupported type #{idx.class}"</span>
|
1144
|
+
109: <span class="ruby-keyword kw">end</span>
|
1145
|
+
110: <span class="ruby-keyword kw">end</span></pre>
|
1146
|
+
</div>
|
1147
|
+
|
1148
|
+
</div>
|
1149
|
+
|
1150
|
+
|
1151
|
+
|
1152
|
+
|
1153
|
+
</div>
|
1154
|
+
|
1155
|
+
|
1156
|
+
<div id="process-method" class="method-detail ">
|
1157
|
+
<a name="M000085"></a>
|
1158
|
+
|
1159
|
+
<div class="method-heading">
|
1160
|
+
|
1161
|
+
<span class="method-name">process</span><span
|
1162
|
+
class="method-args">()</span>
|
1163
|
+
<span class="method-click-advice">click to toggle source</span>
|
1164
|
+
|
1165
|
+
</div>
|
1166
|
+
|
1167
|
+
<div class="method-description">
|
1168
|
+
|
1169
|
+
<p>
|
1170
|
+
This method tries to resolve the query and return a result. In case it
|
1171
|
+
finds an attribute that matches the query, it returns true; false
|
1172
|
+
otherwise. The actual result data is stored in the <a
|
1173
|
+
href="Query.html">Query</a> object. It can then be retrieved by the caller
|
1174
|
+
with the methods <a href="Query.html#M000086">to_s</a>(), <a
|
1175
|
+
href="Query.html#M000087">to_num</a>(), <a
|
1176
|
+
href="Query.html#M000088">to_sort</a>() and result().
|
1177
|
+
</p>
|
1178
|
+
|
1179
|
+
|
1180
|
+
|
1181
|
+
<div class="method-source-code"
|
1182
|
+
id="process-source">
|
1183
|
+
<pre>
|
1184
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 117</span>
|
1185
|
+
117: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>
|
1186
|
+
118: <span class="ruby-identifier">reset</span>
|
1187
|
+
119: <span class="ruby-keyword kw">begin</span>
|
1188
|
+
120: <span class="ruby-comment cmt"># Resolve property reference from property ID.</span>
|
1189
|
+
121: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@propertyId</span>.<span class="ruby-identifier">nil?</span>
|
1190
|
+
122: <span class="ruby-ivar">@property</span> = <span class="ruby-identifier">resolvePropertyId</span>(<span class="ruby-ivar">@propertyType</span>, <span class="ruby-ivar">@propertyId</span>)
|
1191
|
+
123: <span class="ruby-keyword kw">end</span>
|
1192
|
+
124:
|
1193
|
+
125: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@property</span>
|
1194
|
+
126: <span class="ruby-comment cmt"># No property was provided. We are looking for a project attribute.</span>
|
1195
|
+
127: <span class="ruby-identifier">supportedAttrs</span> = <span class="ruby-node">%( copyright currency end name now projectid
|
1196
|
+
128: start version )</span>
|
1197
|
+
129: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">supportedAttrs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@attributeId</span>)
|
1198
|
+
130: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>,
|
1199
|
+
131: <span class="ruby-node">"Unsupported project attribute '#{@attributeId}'"</span>
|
1200
|
+
132: <span class="ruby-keyword kw">end</span>
|
1201
|
+
133: <span class="ruby-identifier">attr</span> = <span class="ruby-ivar">@project</span>[<span class="ruby-ivar">@attributeId</span>]
|
1202
|
+
134: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">TjTime</span>)
|
1203
|
+
135: <span class="ruby-ivar">@sortable</span> = <span class="ruby-ivar">@numerical</span> = <span class="ruby-identifier">attr</span>
|
1204
|
+
136: <span class="ruby-ivar">@string</span> = <span class="ruby-identifier">attr</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-ivar">@timeFormat</span>)
|
1205
|
+
137: <span class="ruby-keyword kw">else</span>
|
1206
|
+
138: <span class="ruby-ivar">@sortable</span> = <span class="ruby-ivar">@string</span> = <span class="ruby-identifier">attr</span>
|
1207
|
+
139: <span class="ruby-keyword kw">end</span>
|
1208
|
+
140: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@ok</span> = <span class="ruby-keyword kw">true</span>
|
1209
|
+
141: <span class="ruby-keyword kw">end</span>
|
1210
|
+
142:
|
1211
|
+
143: <span class="ruby-comment cmt"># Same for the scope property.</span>
|
1212
|
+
144: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@scopeProperty</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@scopePropertyId</span>.<span class="ruby-identifier">nil?</span>
|
1213
|
+
145: <span class="ruby-ivar">@scopeProperty</span> = <span class="ruby-identifier">resolvePropertyId</span>(<span class="ruby-ivar">@scopePropertyType</span>,
|
1214
|
+
146: <span class="ruby-ivar">@scopePropertyId</span>)
|
1215
|
+
147: <span class="ruby-keyword kw">end</span>
|
1216
|
+
148: <span class="ruby-comment cmt"># Make sure the have a reference to the project.</span>
|
1217
|
+
149: <span class="ruby-ivar">@project</span> = <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">project</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@project</span>
|
1218
|
+
150:
|
1219
|
+
151: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@scenario</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@scenarioIdx</span>
|
1220
|
+
152: <span class="ruby-ivar">@scenarioIdx</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-ivar">@scenario</span>)
|
1221
|
+
153: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@scenarioIdx</span>
|
1222
|
+
154: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Query cannot resolve scenario '#{@scenario}'"</span>
|
1223
|
+
155: <span class="ruby-keyword kw">end</span>
|
1224
|
+
156: <span class="ruby-keyword kw">end</span>
|
1225
|
+
157:
|
1226
|
+
158: <span class="ruby-identifier">queryMethodName</span> = <span class="ruby-value str">'query_'</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@attributeId</span>
|
1227
|
+
159: <span class="ruby-comment cmt"># First we check for non-scenario-specific query functions.</span>
|
1228
|
+
160: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">queryMethodName</span>)
|
1229
|
+
161: <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">queryMethodName</span>, <span class="ruby-keyword kw">self</span>)
|
1230
|
+
162: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@scenarioIdx</span> <span class="ruby-operator">&&</span>
|
1231
|
+
163: <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">data</span>[<span class="ruby-ivar">@scenarioIdx</span>].<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">queryMethodName</span>)
|
1232
|
+
164: <span class="ruby-comment cmt"># Then we check for scenario-specific ones via the @data member.</span>
|
1233
|
+
165: <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">queryMethodName</span>, <span class="ruby-ivar">@scenarioIdx</span>, <span class="ruby-keyword kw">self</span>)
|
1234
|
+
166: <span class="ruby-keyword kw">else</span>
|
1235
|
+
167: <span class="ruby-comment cmt"># The result is a BaseAttribute</span>
|
1236
|
+
168: <span class="ruby-keyword kw">unless</span> (<span class="ruby-ivar">@attr</span> = <span class="ruby-ivar">@property</span>.<span class="ruby-identifier">getAttribute</span>(<span class="ruby-ivar">@attributeId</span>, <span class="ruby-ivar">@scenarioIdx</span>))
|
1237
|
+
169: <span class="ruby-ivar">@errorMessage</span> = <span class="ruby-node">"Unknown attribute #{@attributeId} queried"</span>
|
1238
|
+
170: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@ok</span> = <span class="ruby-keyword kw">false</span>
|
1239
|
+
171: <span class="ruby-keyword kw">end</span>
|
1240
|
+
172: <span class="ruby-keyword kw">end</span>
|
1241
|
+
173: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">TjException</span>
|
1242
|
+
174: <span class="ruby-ivar">@errorMessage</span> = <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">message</span>
|
1243
|
+
175: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@ok</span> = <span class="ruby-keyword kw">false</span>
|
1244
|
+
176: <span class="ruby-keyword kw">end</span>
|
1245
|
+
177: <span class="ruby-ivar">@ok</span> = <span class="ruby-keyword kw">true</span>
|
1246
|
+
178: <span class="ruby-keyword kw">end</span></pre>
|
1247
|
+
</div>
|
1248
|
+
|
1249
|
+
</div>
|
1250
|
+
|
1251
|
+
|
1252
|
+
|
1253
|
+
|
1254
|
+
</div>
|
1255
|
+
|
1256
|
+
|
1257
|
+
<div id="result-method" class="method-detail ">
|
1258
|
+
<a name="M000090"></a>
|
1259
|
+
|
1260
|
+
<div class="method-heading">
|
1261
|
+
|
1262
|
+
<span class="method-name">result</span><span
|
1263
|
+
class="method-args">()</span>
|
1264
|
+
<span class="method-click-advice">click to toggle source</span>
|
1265
|
+
|
1266
|
+
</div>
|
1267
|
+
|
1268
|
+
<div class="method-description">
|
1269
|
+
|
1270
|
+
<p>
|
1271
|
+
Return the result in the orginal form. It may be nil.
|
1272
|
+
</p>
|
1273
|
+
|
1274
|
+
|
1275
|
+
|
1276
|
+
<div class="method-source-code"
|
1277
|
+
id="result-source">
|
1278
|
+
<pre>
|
1279
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 203</span>
|
1280
|
+
203: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">result</span>
|
1281
|
+
204: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attr</span>
|
1282
|
+
205: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">value</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">ReferenceAttribute</span>)
|
1283
|
+
206: <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">0</span>]
|
1284
|
+
207: <span class="ruby-keyword kw">else</span>
|
1285
|
+
208: <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">value</span>
|
1286
|
+
209: <span class="ruby-keyword kw">end</span>
|
1287
|
+
210: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@numerical</span>
|
1288
|
+
211: <span class="ruby-ivar">@numerical</span>
|
1289
|
+
212: <span class="ruby-keyword kw">else</span>
|
1290
|
+
213: <span class="ruby-ivar">@string</span>
|
1291
|
+
214: <span class="ruby-keyword kw">end</span>
|
1292
|
+
215: <span class="ruby-keyword kw">end</span></pre>
|
1293
|
+
</div>
|
1294
|
+
|
1295
|
+
</div>
|
1296
|
+
|
1297
|
+
|
1298
|
+
|
1299
|
+
|
1300
|
+
</div>
|
1301
|
+
|
1302
|
+
|
1303
|
+
<div id="scale-uration-method" class="method-detail ">
|
1304
|
+
<a name="M000091"></a>
|
1305
|
+
|
1306
|
+
<div class="method-heading">
|
1307
|
+
|
1308
|
+
<span class="method-name">scaleDuration</span><span
|
1309
|
+
class="method-args">(value)</span>
|
1310
|
+
<span class="method-click-advice">click to toggle source</span>
|
1311
|
+
|
1312
|
+
</div>
|
1313
|
+
|
1314
|
+
<div class="method-description">
|
1315
|
+
|
1316
|
+
<p>
|
1317
|
+
Convert a duration to the format specified by @loadUnit. <em>value</em> is
|
1318
|
+
the duration effort in days. The return value is the converted value with
|
1319
|
+
optional unit as a <a href="../String.html">String</a>.
|
1320
|
+
</p>
|
1321
|
+
|
1322
|
+
|
1323
|
+
|
1324
|
+
<div class="method-source-code"
|
1325
|
+
id="scale-uration-source">
|
1326
|
+
<pre>
|
1327
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 220</span>
|
1328
|
+
220: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scaleDuration</span>(<span class="ruby-identifier">value</span>)
|
1329
|
+
221: <span class="ruby-identifier">scaleValue</span>(<span class="ruby-identifier">value</span>, [ <span class="ruby-value">24</span> * <span class="ruby-value">60</span>, <span class="ruby-value">24</span>, <span class="ruby-value">1</span>, <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-value">7</span>, <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-value">30.42</span>, <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-value">365</span> ])
|
1330
|
+
222: <span class="ruby-keyword kw">end</span></pre>
|
1331
|
+
</div>
|
1332
|
+
|
1333
|
+
</div>
|
1334
|
+
|
1335
|
+
|
1336
|
+
|
1337
|
+
|
1338
|
+
</div>
|
1339
|
+
|
1340
|
+
|
1341
|
+
<div id="scale-oad-method" class="method-detail ">
|
1342
|
+
<a name="M000092"></a>
|
1343
|
+
|
1344
|
+
<div class="method-heading">
|
1345
|
+
|
1346
|
+
<span class="method-name">scaleLoad</span><span
|
1347
|
+
class="method-args">(value)</span>
|
1348
|
+
<span class="method-click-advice">click to toggle source</span>
|
1349
|
+
|
1350
|
+
</div>
|
1351
|
+
|
1352
|
+
<div class="method-description">
|
1353
|
+
|
1354
|
+
<p>
|
1355
|
+
Convert a load or effort value to the format specified by @loadUnit.
|
1356
|
+
<em>work</em> is the effort in man days. The return value is the converted
|
1357
|
+
value with optional unit as a <a href="../String.html">String</a>.
|
1358
|
+
</p>
|
1359
|
+
|
1360
|
+
|
1361
|
+
|
1362
|
+
<div class="method-source-code"
|
1363
|
+
id="scale-oad-source">
|
1364
|
+
<pre>
|
1365
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 227</span>
|
1366
|
+
227: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scaleLoad</span>(<span class="ruby-identifier">value</span>)
|
1367
|
+
228: <span class="ruby-identifier">scaleValue</span>(<span class="ruby-identifier">value</span>, [ <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">dailyWorkingHours</span> * <span class="ruby-value">60</span>,
|
1368
|
+
229: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">dailyWorkingHours</span>,
|
1369
|
+
230: <span class="ruby-value">1.0</span>,
|
1370
|
+
231: <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">weeklyWorkingDays</span>,
|
1371
|
+
232: <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">monthlyWorkingDays</span>,
|
1372
|
+
233: <span class="ruby-value">1.0</span> <span class="ruby-operator">/</span> <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">yearlyWorkingDays</span> ])
|
1373
|
+
234: <span class="ruby-keyword kw">end</span></pre>
|
1374
|
+
</div>
|
1375
|
+
|
1376
|
+
</div>
|
1377
|
+
|
1378
|
+
|
1379
|
+
|
1380
|
+
|
1381
|
+
</div>
|
1382
|
+
|
1383
|
+
|
1384
|
+
<div id="start--method" class="method-detail ">
|
1385
|
+
<a name="M000081"></a>
|
1386
|
+
|
1387
|
+
<div class="method-heading">
|
1388
|
+
|
1389
|
+
<span class="method-name">start=</span><span
|
1390
|
+
class="method-args">(date)</span>
|
1391
|
+
<span class="method-click-advice">click to toggle source</span>
|
1392
|
+
|
1393
|
+
</div>
|
1394
|
+
|
1395
|
+
<div class="method-description">
|
1396
|
+
|
1397
|
+
<p>
|
1398
|
+
We probably need the start and end dates as <a
|
1399
|
+
href="TjTime.html">TjTime</a> and <a href="Scoreboard.html">Scoreboard</a>
|
1400
|
+
index. We store both, but we need to assure they are always in sync.
|
1401
|
+
</p>
|
1402
|
+
|
1403
|
+
|
1404
|
+
|
1405
|
+
<div class="method-source-code"
|
1406
|
+
id="start--source">
|
1407
|
+
<pre>
|
1408
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 68</span>
|
1409
|
+
68: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">start=</span>(<span class="ruby-identifier">date</span>)
|
1410
|
+
69: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">date</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">TjTime</span>)
|
1411
|
+
70: <span class="ruby-ivar">@start</span> = <span class="ruby-identifier">date</span>
|
1412
|
+
71: <span class="ruby-ivar">@startIdx</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-identifier">date</span>, <span class="ruby-keyword kw">true</span>)
|
1413
|
+
72: <span class="ruby-comment cmt">#elsif date.is_a?(Fixnum)</span>
|
1414
|
+
73: <span class="ruby-comment cmt"># self.startIdx=(date)</span>
|
1415
|
+
74: <span class="ruby-keyword kw">else</span>
|
1416
|
+
75: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Unsupported type #{date.class}"</span>
|
1417
|
+
76: <span class="ruby-keyword kw">end</span>
|
1418
|
+
77: <span class="ruby-keyword kw">end</span></pre>
|
1419
|
+
</div>
|
1420
|
+
|
1421
|
+
</div>
|
1422
|
+
|
1423
|
+
|
1424
|
+
|
1425
|
+
|
1426
|
+
</div>
|
1427
|
+
|
1428
|
+
|
1429
|
+
<div id="start-dx--method" class="method-detail ">
|
1430
|
+
<a name="M000082"></a>
|
1431
|
+
|
1432
|
+
<div class="method-heading">
|
1433
|
+
|
1434
|
+
<span class="method-name">startIdx=</span><span
|
1435
|
+
class="method-args">(idx)</span>
|
1436
|
+
<span class="method-click-advice">click to toggle source</span>
|
1437
|
+
|
1438
|
+
</div>
|
1439
|
+
|
1440
|
+
<div class="method-description">
|
1441
|
+
|
1442
|
+
|
1443
|
+
|
1444
|
+
|
1445
|
+
|
1446
|
+
<div class="method-source-code"
|
1447
|
+
id="start-dx--source">
|
1448
|
+
<pre>
|
1449
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 79</span>
|
1450
|
+
79: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">startIdx=</span>(<span class="ruby-identifier">idx</span>)
|
1451
|
+
80: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">idx</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Fixnum</span>)
|
1452
|
+
81: <span class="ruby-ivar">@startIdx</span> = <span class="ruby-identifier">idx</span>
|
1453
|
+
82: <span class="ruby-ivar">@start</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">idxToDate</span>(<span class="ruby-identifier">idx</span>)
|
1454
|
+
83: <span class="ruby-comment cmt">#elsif idx.is_a?(TjTime)</span>
|
1455
|
+
84: <span class="ruby-comment cmt"># self.start=(idx)</span>
|
1456
|
+
85: <span class="ruby-keyword kw">else</span>
|
1457
|
+
86: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Unsupported type #{idx.class}"</span>
|
1458
|
+
87: <span class="ruby-keyword kw">end</span>
|
1459
|
+
88: <span class="ruby-keyword kw">end</span></pre>
|
1460
|
+
</div>
|
1461
|
+
|
1462
|
+
</div>
|
1463
|
+
|
1464
|
+
|
1465
|
+
|
1466
|
+
|
1467
|
+
</div>
|
1468
|
+
|
1469
|
+
|
1470
|
+
<div id="to-num-method" class="method-detail ">
|
1471
|
+
<a name="M000087"></a>
|
1472
|
+
|
1473
|
+
<div class="method-heading">
|
1474
|
+
|
1475
|
+
<span class="method-name">to_num</span><span
|
1476
|
+
class="method-args">()</span>
|
1477
|
+
<span class="method-click-advice">click to toggle source</span>
|
1478
|
+
|
1479
|
+
</div>
|
1480
|
+
|
1481
|
+
<div class="method-description">
|
1482
|
+
|
1483
|
+
<p>
|
1484
|
+
Return the result of the <a href="Query.html">Query</a> as Fixnum or Float.
|
1485
|
+
The result may be nil.
|
1486
|
+
</p>
|
1487
|
+
|
1488
|
+
|
1489
|
+
|
1490
|
+
<div class="method-source-code"
|
1491
|
+
id="to-num-source">
|
1492
|
+
<pre>
|
1493
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 187</span>
|
1494
|
+
187: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_num</span>
|
1495
|
+
188: <span class="ruby-ivar">@attr</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">to_num</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@numerical</span>
|
1496
|
+
189: <span class="ruby-keyword kw">end</span></pre>
|
1497
|
+
</div>
|
1498
|
+
|
1499
|
+
</div>
|
1500
|
+
|
1501
|
+
|
1502
|
+
|
1503
|
+
|
1504
|
+
</div>
|
1505
|
+
|
1506
|
+
|
1507
|
+
<div id="to-rti-method" class="method-detail ">
|
1508
|
+
<a name="M000089"></a>
|
1509
|
+
|
1510
|
+
<div class="method-heading">
|
1511
|
+
|
1512
|
+
<span class="method-name">to_rti</span><span
|
1513
|
+
class="method-args">()</span>
|
1514
|
+
<span class="method-click-advice">click to toggle source</span>
|
1515
|
+
|
1516
|
+
</div>
|
1517
|
+
|
1518
|
+
<div class="method-description">
|
1519
|
+
|
1520
|
+
<p>
|
1521
|
+
Return the result as <a
|
1522
|
+
href="RichTextIntermediate.html">RichTextIntermediate</a> object. The
|
1523
|
+
result may be nil.
|
1524
|
+
</p>
|
1525
|
+
|
1526
|
+
|
1527
|
+
|
1528
|
+
<div class="method-source-code"
|
1529
|
+
id="to-rti-source">
|
1530
|
+
<pre>
|
1531
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 198</span>
|
1532
|
+
198: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_rti</span>
|
1533
|
+
199: <span class="ruby-ivar">@attr</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">to_rti</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-operator">:</span> <span class="ruby-ivar">@rti</span>
|
1534
|
+
200: <span class="ruby-keyword kw">end</span></pre>
|
1535
|
+
</div>
|
1536
|
+
|
1537
|
+
</div>
|
1538
|
+
|
1539
|
+
|
1540
|
+
|
1541
|
+
|
1542
|
+
</div>
|
1543
|
+
|
1544
|
+
|
1545
|
+
<div id="to-s-method" class="method-detail ">
|
1546
|
+
<a name="M000086"></a>
|
1547
|
+
|
1548
|
+
<div class="method-heading">
|
1549
|
+
|
1550
|
+
<span class="method-name">to_s</span><span
|
1551
|
+
class="method-args">()</span>
|
1552
|
+
<span class="method-click-advice">click to toggle source</span>
|
1553
|
+
|
1554
|
+
</div>
|
1555
|
+
|
1556
|
+
<div class="method-description">
|
1557
|
+
|
1558
|
+
<p>
|
1559
|
+
Return the result of the <a href="Query.html">Query</a> as <a
|
1560
|
+
href="../String.html">String</a>. The result may be nil.
|
1561
|
+
</p>
|
1562
|
+
|
1563
|
+
|
1564
|
+
|
1565
|
+
<div class="method-source-code"
|
1566
|
+
id="to-s-source">
|
1567
|
+
<pre>
|
1568
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 181</span>
|
1569
|
+
181: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
|
1570
|
+
182: <span class="ruby-ivar">@attr</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-operator">:</span> (<span class="ruby-ivar">@string</span> <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>)
|
1571
|
+
183: <span class="ruby-keyword kw">end</span></pre>
|
1572
|
+
</div>
|
1573
|
+
|
1574
|
+
</div>
|
1575
|
+
|
1576
|
+
|
1577
|
+
|
1578
|
+
|
1579
|
+
</div>
|
1580
|
+
|
1581
|
+
|
1582
|
+
<div id="to-sort-method" class="method-detail ">
|
1583
|
+
<a name="M000088"></a>
|
1584
|
+
|
1585
|
+
<div class="method-heading">
|
1586
|
+
|
1587
|
+
<span class="method-name">to_sort</span><span
|
1588
|
+
class="method-args">()</span>
|
1589
|
+
<span class="method-click-advice">click to toggle source</span>
|
1590
|
+
|
1591
|
+
</div>
|
1592
|
+
|
1593
|
+
<div class="method-description">
|
1594
|
+
|
1595
|
+
<p>
|
1596
|
+
Return the result in the best suited type and format for sorting. The
|
1597
|
+
result may be nil.
|
1598
|
+
</p>
|
1599
|
+
|
1600
|
+
|
1601
|
+
|
1602
|
+
<div class="method-source-code"
|
1603
|
+
id="to-sort-source">
|
1604
|
+
<pre>
|
1605
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 193</span>
|
1606
|
+
193: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_sort</span>
|
1607
|
+
194: <span class="ruby-ivar">@attr</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@attr</span>.<span class="ruby-identifier">to_sort</span> <span class="ruby-operator">:</span> <span class="ruby-ivar">@sortable</span>
|
1608
|
+
195: <span class="ruby-keyword kw">end</span></pre>
|
1609
|
+
</div>
|
1610
|
+
|
1611
|
+
</div>
|
1612
|
+
|
1613
|
+
|
1614
|
+
|
1615
|
+
|
1616
|
+
</div>
|
1617
|
+
|
1618
|
+
|
1619
|
+
</div>
|
1620
|
+
|
1621
|
+
<div id="private-instance-method-details" class="method-section section">
|
1622
|
+
<h3 class="section-header">Private Instance Methods</h3>
|
1623
|
+
|
1624
|
+
|
1625
|
+
<div id="reset-method" class="method-detail ">
|
1626
|
+
<a name="M000095"></a>
|
1627
|
+
|
1628
|
+
<div class="method-heading">
|
1629
|
+
|
1630
|
+
<span class="method-name">reset</span><span
|
1631
|
+
class="method-args">()</span>
|
1632
|
+
<span class="method-click-advice">click to toggle source</span>
|
1633
|
+
|
1634
|
+
</div>
|
1635
|
+
|
1636
|
+
<div class="method-description">
|
1637
|
+
|
1638
|
+
<p>
|
1639
|
+
Queries object can be reused. Calling this function will clear the query
|
1640
|
+
result data.
|
1641
|
+
</p>
|
1642
|
+
|
1643
|
+
|
1644
|
+
|
1645
|
+
<div class="method-source-code"
|
1646
|
+
id="reset-source">
|
1647
|
+
<pre>
|
1648
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 328</span>
|
1649
|
+
328: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">reset</span>
|
1650
|
+
329: <span class="ruby-ivar">@attr</span> = <span class="ruby-ivar">@numerical</span> = <span class="ruby-ivar">@sortable</span> = <span class="ruby-ivar">@string</span> = <span class="ruby-ivar">@rti</span> = <span class="ruby-keyword kw">nil</span>
|
1651
|
+
330: <span class="ruby-ivar">@ok</span> = <span class="ruby-keyword kw">true</span>
|
1652
|
+
331: <span class="ruby-ivar">@errorMessage</span> = <span class="ruby-keyword kw">nil</span>
|
1653
|
+
332: <span class="ruby-keyword kw">end</span></pre>
|
1654
|
+
</div>
|
1655
|
+
|
1656
|
+
</div>
|
1657
|
+
|
1658
|
+
|
1659
|
+
|
1660
|
+
|
1661
|
+
</div>
|
1662
|
+
|
1663
|
+
|
1664
|
+
<div id="resolve-roperty-d-method" class="method-detail ">
|
1665
|
+
<a name="M000093"></a>
|
1666
|
+
|
1667
|
+
<div class="method-heading">
|
1668
|
+
|
1669
|
+
<span class="method-name">resolvePropertyId</span><span
|
1670
|
+
class="method-args">(pType, pId)</span>
|
1671
|
+
<span class="method-click-advice">click to toggle source</span>
|
1672
|
+
|
1673
|
+
</div>
|
1674
|
+
|
1675
|
+
<div class="method-description">
|
1676
|
+
|
1677
|
+
|
1678
|
+
|
1679
|
+
|
1680
|
+
|
1681
|
+
<div class="method-source-code"
|
1682
|
+
id="resolve-roperty-d-source">
|
1683
|
+
<pre>
|
1684
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 238</span>
|
1685
|
+
238: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">resolvePropertyId</span>(<span class="ruby-identifier">pType</span>, <span class="ruby-identifier">pId</span>)
|
1686
|
+
239: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@project</span>
|
1687
|
+
240: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">"Need Project reference to process the query"</span>
|
1688
|
+
241: <span class="ruby-keyword kw">end</span>
|
1689
|
+
242: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">pType</span>
|
1690
|
+
243: <span class="ruby-keyword kw">when</span> <span class="ruby-value">:Account</span>
|
1691
|
+
244: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">account</span>(<span class="ruby-identifier">pId</span>)
|
1692
|
+
245: <span class="ruby-keyword kw">when</span> <span class="ruby-value">:Task</span>
|
1693
|
+
246: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">task</span>(<span class="ruby-identifier">pId</span>)
|
1694
|
+
247: <span class="ruby-keyword kw">when</span><span class="ruby-value">:Resource</span>
|
1695
|
+
248: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resource</span>(<span class="ruby-identifier">pId</span>)
|
1696
|
+
249: <span class="ruby-keyword kw">else</span>
|
1697
|
+
250: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">"Unknown property type #{pType}"</span>
|
1698
|
+
251: <span class="ruby-keyword kw">end</span>
|
1699
|
+
252: <span class="ruby-keyword kw">end</span></pre>
|
1700
|
+
</div>
|
1701
|
+
|
1702
|
+
</div>
|
1703
|
+
|
1704
|
+
|
1705
|
+
|
1706
|
+
|
1707
|
+
</div>
|
1708
|
+
|
1709
|
+
|
1710
|
+
<div id="scale-alue-method" class="method-detail ">
|
1711
|
+
<a name="M000094"></a>
|
1712
|
+
|
1713
|
+
<div class="method-heading">
|
1714
|
+
|
1715
|
+
<span class="method-name">scaleValue</span><span
|
1716
|
+
class="method-args">(value, factors)</span>
|
1717
|
+
<span class="method-click-advice">click to toggle source</span>
|
1718
|
+
|
1719
|
+
</div>
|
1720
|
+
|
1721
|
+
<div class="method-description">
|
1722
|
+
|
1723
|
+
<p>
|
1724
|
+
This function converts number to strings that may include a unit. The unit
|
1725
|
+
is determined by @loadUnit. In the automatic modes, the shortest possible
|
1726
|
+
result is shown and the unit is always appended. <em>value</em> is the
|
1727
|
+
value to convert. <em>factors</em> determines the conversion factors for
|
1728
|
+
the different units.
|
1729
|
+
</p>
|
1730
|
+
|
1731
|
+
|
1732
|
+
|
1733
|
+
<div class="method-source-code"
|
1734
|
+
id="scale-alue-source">
|
1735
|
+
<pre>
|
1736
|
+
<span class="ruby-comment cmt"># File lib/Query.rb, line 259</span>
|
1737
|
+
259: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scaleValue</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">factors</span>)
|
1738
|
+
260: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@loadUnit</span> <span class="ruby-operator">==</span> <span class="ruby-value">:shortauto</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@loadUnit</span> <span class="ruby-operator">==</span> <span class="ruby-value">:longauto</span>
|
1739
|
+
261: <span class="ruby-comment cmt"># We try all possible units and store the resulting strings here.</span>
|
1740
|
+
262: <span class="ruby-identifier">options</span> = []
|
1741
|
+
263: <span class="ruby-comment cmt"># For each option we also save the delta between the String value and</span>
|
1742
|
+
264: <span class="ruby-comment cmt"># the original value.</span>
|
1743
|
+
265: <span class="ruby-identifier">delta</span> = []
|
1744
|
+
266: <span class="ruby-comment cmt"># For each of the units we can define a maximum value that the value</span>
|
1745
|
+
267: <span class="ruby-comment cmt"># should not exceed. nil means no limit.</span>
|
1746
|
+
268: <span class="ruby-identifier">max</span> = [ <span class="ruby-value">60</span>, <span class="ruby-value">48</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-value">8</span>, <span class="ruby-value">24</span>, <span class="ruby-keyword kw">nil</span> ]
|
1747
|
+
269:
|
1748
|
+
270: <span class="ruby-identifier">i</span> = <span class="ruby-value">0</span>
|
1749
|
+
271: <span class="ruby-identifier">factors</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">factor</span><span class="ruby-operator">|</span>
|
1750
|
+
272: <span class="ruby-identifier">scaledValue</span> = <span class="ruby-identifier">value</span> * <span class="ruby-identifier">factor</span>
|
1751
|
+
273: <span class="ruby-identifier">str</span> = <span class="ruby-ivar">@numberFormat</span>.<span class="ruby-identifier">format</span>(<span class="ruby-identifier">scaledValue</span>)
|
1752
|
+
274: <span class="ruby-identifier">delta</span>[<span class="ruby-identifier">i</span>] = ((<span class="ruby-identifier">scaledValue</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">str</span>.<span class="ruby-identifier">to_f</span>).<span class="ruby-identifier">abs</span> * <span class="ruby-value">1000</span>).<span class="ruby-identifier">to_i</span>
|
1753
|
+
275: <span class="ruby-comment cmt"># We ignore results that are 0 or exceed the maximum. To ensure that</span>
|
1754
|
+
276: <span class="ruby-comment cmt"># we have at least one result the unscaled value is always taken.</span>
|
1755
|
+
277: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">factor</span> <span class="ruby-operator">!=</span> <span class="ruby-value">1.0</span> <span class="ruby-operator">&&</span> <span class="ruby-regexp re">/^[0.]*$/</span> <span class="ruby-operator">=~</span> <span class="ruby-identifier">str</span>) <span class="ruby-operator">||</span>
|
1756
|
+
278: (<span class="ruby-identifier">max</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">&&</span> <span class="ruby-identifier">scaledValue</span> <span class="ruby-operator">></span> <span class="ruby-identifier">max</span>[<span class="ruby-identifier">i</span>])
|
1757
|
+
279: <span class="ruby-identifier">options</span> <span class="ruby-operator"><<</span> <span class="ruby-keyword kw">nil</span>
|
1758
|
+
280: <span class="ruby-keyword kw">else</span>
|
1759
|
+
281: <span class="ruby-identifier">options</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">str</span>
|
1760
|
+
282: <span class="ruby-keyword kw">end</span>
|
1761
|
+
283: <span class="ruby-identifier">i</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
1762
|
+
284: <span class="ruby-keyword kw">end</span>
|
1763
|
+
285:
|
1764
|
+
286: <span class="ruby-comment cmt"># Find the value that is the closest to the original value. This will be</span>
|
1765
|
+
287: <span class="ruby-comment cmt"># the default if all values have the same length.</span>
|
1766
|
+
288: <span class="ruby-identifier">shortest</span> = <span class="ruby-value">2</span>
|
1767
|
+
289: <span class="ruby-identifier">delta</span>.<span class="ruby-identifier">length</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
1768
|
+
290: <span class="ruby-identifier">shortest</span> = <span class="ruby-identifier">j</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">j</span>][<span class="ruby-value">0</span>, <span class="ruby-value">2</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'0.'</span> <span class="ruby-operator">&&</span>
|
1769
|
+
291: <span class="ruby-identifier">delta</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator"><=</span> <span class="ruby-identifier">delta</span>[<span class="ruby-identifier">shortest</span>]
|
1770
|
+
292: <span class="ruby-keyword kw">end</span>
|
1771
|
+
293:
|
1772
|
+
294: <span class="ruby-comment cmt"># Find the shortest option.</span>
|
1773
|
+
295: <span class="ruby-value">6</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">j</span><span class="ruby-operator">|</span>
|
1774
|
+
296: <span class="ruby-identifier">shortest</span> = <span class="ruby-identifier">j</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">j</span>] <span class="ruby-operator">&&</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">j</span>][<span class="ruby-value">0</span>, <span class="ruby-value">2</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'0.'</span> <span class="ruby-operator">&&</span>
|
1775
|
+
297: <span class="ruby-identifier">options</span>[<span class="ruby-identifier">j</span>].<span class="ruby-identifier">length</span> <span class="ruby-operator"><</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">shortest</span>].<span class="ruby-identifier">length</span>
|
1776
|
+
298: <span class="ruby-keyword kw">end</span>
|
1777
|
+
299:
|
1778
|
+
300: <span class="ruby-identifier">str</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">shortest</span>]
|
1779
|
+
301: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@loadUnit</span> <span class="ruby-operator">==</span> <span class="ruby-value">:longauto</span>
|
1780
|
+
302: <span class="ruby-comment cmt"># For the long units we handle singular and plural properly. For</span>
|
1781
|
+
303: <span class="ruby-comment cmt"># English we just need to append an 's', but this code will work for</span>
|
1782
|
+
304: <span class="ruby-comment cmt"># other languages as well.</span>
|
1783
|
+
305: <span class="ruby-identifier">units</span> = []
|
1784
|
+
306: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">str</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"1"</span>
|
1785
|
+
307: <span class="ruby-identifier">units</span> = <span class="ruby-node">%( minute hour day week month year )</span>
|
1786
|
+
308: <span class="ruby-keyword kw">else</span>
|
1787
|
+
309: <span class="ruby-identifier">units</span> = <span class="ruby-node">%( minutes hours days weeks months years )</span>
|
1788
|
+
310: <span class="ruby-keyword kw">end</span>
|
1789
|
+
311: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">' '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">units</span>[<span class="ruby-identifier">shortest</span>]
|
1790
|
+
312: <span class="ruby-keyword kw">else</span>
|
1791
|
+
313: <span class="ruby-identifier">str</span> <span class="ruby-operator">+=</span> <span class="ruby-node">%( min h d w m y )</span>[<span class="ruby-identifier">shortest</span>]
|
1792
|
+
314: <span class="ruby-keyword kw">end</span>
|
1793
|
+
315: <span class="ruby-keyword kw">else</span>
|
1794
|
+
316: <span class="ruby-comment cmt"># For fixed units we just need to do the conversion. No unit is</span>
|
1795
|
+
317: <span class="ruby-comment cmt"># included.</span>
|
1796
|
+
318: <span class="ruby-identifier">units</span> = [ <span class="ruby-value">:minutes</span>, <span class="ruby-value">:hours</span>, <span class="ruby-value">:days</span>, <span class="ruby-value">:weeks</span>, <span class="ruby-value">:months</span>, <span class="ruby-value">:years</span> ]
|
1797
|
+
319: <span class="ruby-identifier">str</span> = <span class="ruby-ivar">@numberFormat</span>.<span class="ruby-identifier">format</span>(<span class="ruby-identifier">value</span> * <span class="ruby-identifier">factors</span>[<span class="ruby-identifier">units</span>.<span class="ruby-identifier">index</span>(<span class="ruby-ivar">@loadUnit</span>)])
|
1798
|
+
320: <span class="ruby-keyword kw">end</span>
|
1799
|
+
321: <span class="ruby-identifier">str</span>
|
1800
|
+
322: <span class="ruby-keyword kw">end</span></pre>
|
1801
|
+
</div>
|
1802
|
+
|
1803
|
+
</div>
|
1804
|
+
|
1805
|
+
|
1806
|
+
|
1807
|
+
|
1808
|
+
</div>
|
1809
|
+
|
1810
|
+
|
1811
|
+
</div>
|
1812
|
+
|
1813
|
+
|
1814
|
+
</div>
|
1815
|
+
|
1816
|
+
|
1817
|
+
<div id="rdoc-debugging-section-dump" class="debugging-section">
|
1818
|
+
|
1819
|
+
<p>Disabled; run with --debug to generate this.</p>
|
1820
|
+
|
1821
|
+
</div>
|
1822
|
+
|
1823
|
+
<div id="validator-badges">
|
1824
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
1825
|
+
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
|
1826
|
+
Rdoc Generator</a> 1.1.6</small>.</p>
|
1827
|
+
</div>
|
1828
|
+
|
1829
|
+
</body>
|
1830
|
+
</html>
|
1831
|
+
|