Skip to content

Instantly share code, notes, and snippets.

  • Save mmsajjad-aspose/ad3071fa26345cffd6e20066487dcfba to your computer and use it in GitHub Desktop.
Save mmsajjad-aspose/ad3071fa26345cffd6e20066487dcfba to your computer and use it in GitHub Desktop.
This Gist contains code snippets of examples of Aspose.Tasks for Java.
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(AddRemoveCalendarExceptions.class);
Project project = new Project(dataDir + "input.mpp");
// Remove an exception
Calendar cal = project.getCalendars().toList().get(0);
if (cal.getExceptions().getCount() > 1) {
CalendarException exc = cal.getExceptions().toList().get(0);
cal.getExceptions().remove(exc);
}
// Add an exception
CalendarException calExc = new CalendarException();
java.util.Calendar calObject = java.util.Calendar.getInstance();
calObject.set(2009, 1, 1, 0, 0, 0);
calExc.setFromDate(calObject.getTime());
calObject.set(2009, 1, 3, 0, 0, 0);
calExc.setToDate(calObject.getTime());
cal.getExceptions().add(calExc);
// Display exceptions
for (CalendarException calExc1 : cal.getExceptions()) {
System.out.println("From" + calExc1.getFromDate().toString());
System.out.println("To" + calExc1.getToDate().toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DefineWeekdaysForExceptions.class);
// Create a project instance
Project project = new Project();
// Define Calendar
Calendar cal = project.getCalendars().add("Calendar1");
// Define week days exception for Christmas
CalendarException except = new CalendarException();
except.setEnteredByOccurrences(false);
java.util.Calendar calObject = java.util.Calendar.getInstance();
calObject.set(2009, 12, 24, 0, 0, 0);
except.setFromDate(calObject.getTime());
calObject.set(2009, 12, 31, 23, 59, 0);
except.setToDate(calObject.getTime());
except.setType(CalendarExceptionType.Daily);
except.setDayWorking(false);
cal.getExceptions().add(except);
// Save the Project
project.save(dataDir + "Project.Xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(HandleOccurrences.class);
CalendarException except = new CalendarException();
except.setEnteredByOccurrences(true);
except.setOccurrences(5);
except.setType(CalendarExceptionType.YearlyByDay);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RetrieveCalendarExceptions.class);
Project project = new Project(dataDir + "file.mpp");
for (Calendar cal : project.getCalendars()) {
for (CalendarException calExc : cal.getExceptions()) {
System.out.println("From: " + calExc.getFromDate().toString());
System.out.println("To: " + calExc.getToDate().toString());
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CalendarProperties.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project(dataDir + "prj.mpp");
for (Calendar cal : project.getCalendars()) {
if (cal.getName().toString() != null) {
for (WeekDay wd : cal.getWeekDays()) {
double ts = wd.getWorkingTime();
double time = ts / (OneHour);
System.out.println("Day Type" + wd.getDayType() + "Hours" + ts);
}
System.out.println("Base Calendar : ");
if (cal.isBaseCalendar())
System.out.println("Self");
else
System.out.println(cal.getBaseCalendar().getName());
System.out.println("UID : " + cal.getUid());
System.out.println("Name : " + cal.getName());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreateCalendar.class);
// Create a project instance
Project prj = new Project();
// Define Calendar
Calendar cal1 = prj.getCalendars().add("no info");
Calendar cal2 = prj.getCalendars().add("no name");
Calendar cal3 = prj.getCalendars().add("cal3");
// Save the Project
prj.save(dataDir + "Project.Xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DefineWeekdays.class);
// Create a project instance
Project prj = new Project();
// Define Calendar
Calendar cal = prj.getCalendars().add("Calendar1");
// Add working days monday through thursday with default timings
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Monday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Tuesday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Wednesday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Thursday));
cal.getWeekDays().add(new WeekDay(DayType.Saturday));
cal.getWeekDays().add(new WeekDay(DayType.Sunday));
// Set friday as short working day
WeekDay myWeekDay = new WeekDay(DayType.Friday);
// Sets working time. Only time part of DateTime is important
WorkingTime wt1 = new WorkingTime();
java.util.Calendar calTime = java.util.Calendar.getInstance();
calTime.set(1, 1, 1, 9, 0, 0);
Date date = calTime.getTime();
wt1.setFromTime(date);
calTime.set(1, 1, 1, 12, 0, 0);
date = calTime.getTime();
wt1.setToTime(date);
WorkingTime wt2 = new WorkingTime();
calTime.set(1, 1, 1, 13, 0, 0);
date = calTime.getTime();
wt2.setFromTime(date);
calTime.set(1, 1, 1, 16, 0, 0);
date = calTime.getTime();
wt2.setToTime(date);
myWeekDay.getWorkingTimes().add(wt1);
myWeekDay.getWorkingTimes().add(wt2);
myWeekDay.setDayWorking(true);
cal.getWeekDays().add(myWeekDay);
// Save the Project
prj.save(dataDir + "Project.Xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(GetWorkingHours.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project(dataDir + "BaselineTask.mpp");
Task task = project.getRootTask().getChildren().getById(1);
Calendar taskCalendar = task.get(Tsk.CALENDAR);
java.util.Calendar calStartDate = java.util.Calendar.getInstance();
calStartDate.setTime(task.get(Tsk.START));
java.util.Calendar calEndDate = java.util.Calendar.getInstance();
calEndDate.setTime(task.get(Tsk.FINISH));
java.util.Calendar tempDate = java.util.Calendar.getInstance();
tempDate = calStartDate;
Resource resource = project.getResources().getById(1);
Calendar resourceCalendar = resource.get(Rsc.CALENDAR);
// TimeSpan timeSpan;
long timeSpan = 0;
// Get Duration in Minutes
double durationInMins = 0;
while (tempDate.before(calEndDate)) {
if (taskCalendar.isDayWorking(tempDate.getTime()) && resourceCalendar.isDayWorking(tempDate.getTime())) {
timeSpan = (long) taskCalendar.getWorkingHours(tempDate.getTime());
durationInMins = durationInMins + (timeSpan / OneMin);
}
tempDate.add(java.util.Calendar.DATE, 1);
}
tempDate.setTime(task.get(Tsk.START));
// Get Duration in Hours
double durationInHours = 0;
while (tempDate.before(calEndDate)) {
if (taskCalendar.isDayWorking(tempDate.getTime()) && resourceCalendar.isDayWorking(tempDate.getTime())) {
timeSpan = (long) taskCalendar.getWorkingHours(tempDate.getTime());
durationInHours = durationInHours + (timeSpan / OneHour);
}
tempDate.add(java.util.Calendar.DATE, 1);
}
tempDate.setTime(task.get(Tsk.START));
// Get Duration in Days
double durationInDays = 0;
while (tempDate.before(calEndDate)) {
if (taskCalendar.isDayWorking(tempDate.getTime()) && resourceCalendar.isDayWorking(tempDate.getTime())) {
timeSpan = (long) taskCalendar.getWorkingHours(tempDate.getTime());
if ((timeSpan / OneHour) > 0)
durationInDays = durationInDays + (timeSpan / OneHour / 8.0);
}
tempDate.add(java.util.Calendar.DATE, 1);
}
tempDate = calStartDate;
System.out.println("Duration in Minutes = " + durationInMins);
System.out.println("Duration in Hours = " + durationInHours);
System.out.println("Duration in Days = " + durationInDays);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(MakeStandardCalendar.class);
// Create a project instance
Project project = new Project();
// Define Calendar and make it standard
Calendar cal1 = project.getCalendars().add("My Cal");
Calendar.makeStandardCalendar(cal1);
// Save the Project
project.save(dataDir + "Project.Xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Calendar.makeStandardCalendar(cal);
cal.setName("Test calendar");
CalendarException exc = new CalendarException();
Date curTime = java.util.Calendar.getInstance().getTime();
exc.setFromDate(curTime);
java.util.Calendar calObject = java.util.Calendar.getInstance();
calObject.add(java.util.Calendar.DATE, 2);
exc.setToDate(calObject.getTime());
exc.setDayWorking(true);
WorkingTime wt1 = new WorkingTime();
calObject.set(1, 1, 1, 9, 0, 0);
wt1.setFromTime(calObject.getTime());
calObject.set(1, 1, 1, 13, 0, 0);
wt1.setToTime(calObject.getTime());
WorkingTime wt2 = new WorkingTime();
calObject.set(1, 1, 1, 14, 0, 0);
wt2.setFromTime(calObject.getTime());
calObject.set(1, 1, 1, 19, 0, 0);
wt2.setToTime(calObject.getTime());
WorkingTime wt3 = new WorkingTime();
calObject.set(10, 1, 1, 20, 0, 0);
wt3.setFromTime(calObject.getTime());
calObject.set(10, 1, 1, 21, 0, 0);
wt3.setToTime(calObject.getTime());
exc.getWorkingTimes().add(wt1);
exc.getWorkingTimes().add(wt2);
exc.getWorkingTimes().add(wt3);
cal.getExceptions().add(exc);
CalendarException exc2 = new CalendarException();
java.util.Calendar newCal = java.util.Calendar.getInstance();
newCal.add(java.util.Calendar.DATE, 7);
exc2.setFromDate(newCal.getTime());
exc2.setToDate(exc2.getFromDate());
exc2.setDayWorking(false);
cal.getExceptions().add(exc2);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencyCodes.class);
Project prj = new Project(dataDir + "project5.mpp");
System.out.println(prj.get(Prj.CURRENCY_CODE));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencyCodes.class);
Project prj = new Project();
prj.set(Prj.CURRENCY_CODE, "USD");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencyDigits.class);
Project project = new Project(dataDir + "project5.mpp");
System.out.println(project.get(Prj.CURRENCY_DIGITS));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencyDigits.class);
Project project = new Project();
project.set(Prj.CURRENCY_DIGITS, 2);
project.save(dataDir + "ProjectCurrDigits.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencySymbols.class);
Project project = new Project(dataDir + "project5.mpp");
System.out.println(project.get(Prj.CURRENCY_SYMBOL));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CurrencySymbols.class);
Project project = new Project();
project.set(Prj.CURRENCY_SYMBOL, "$$");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(HandleExceptions.class);
Project project;
try {
project = new Project(dataDir + "ProjectWithException.mpp");
} catch (TasksReadingException ex) {
System.out.println("Message:");
System.out.println(ex.getMessage());
System.out.println("Log:");
System.out.println(ex.getLogText());
if (ex.getCause() != null) {
System.out.println("Inner exception message:");
System.out.println(ex.getCause().getMessage());
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
String dataDir = Utils.getDataDir(ReportingServices.class);
// Project OverView
Project project3 = new Project(dataDir + "Cyclic stucture.mpp");
project3.saveReport(dataDir + "ProjectOverView.pdf", ReportType.ProjectOverview);
// Resource Cost Overview
Project project4 = new Project(dataDir + "OzBuild 16 Orig.mpp");
project4.saveReport(dataDir + "ResourceCostOverview.pdf", ReportType.ResourceCostOverview);
// Cost Overview
Project project5 = new Project(dataDir + "OzBuild 16 Orig.mpp");
project5.saveReport(dataDir + "CostOverview.pdf", ReportType.CostOverview);
// Work Overview
Project project6 = new Project(dataDir + "Residential Construction.mpp");
project6.saveReport(dataDir + "WorkOverview.pdf", ReportType.WorkOverview);
// Critical Tasks
Project project7 = new Project(dataDir + "Residential Construction.mpp");
project7.saveReport(dataDir + "CriticalTasks.pdf", ReportType.CriticalTasks);
// Milestones
Project project8 = new Project(dataDir + "Residential Construction.mpp");
project8.saveReport(dataDir + "Milestones.pdf", ReportType.Milestones);
// Late Tasks
Project project9 = new Project(dataDir + "Residential Construction.mpp");
project9.saveReport(dataDir + "LateTasks.pdf", ReportType.LateTasks);
// Resource Overview
Project project10 = new Project(dataDir + "Software Development Plan.mpp");
project10.saveReport(dataDir + "ResourceOverview.pdf", ReportType.ResourceOverview);
// Cost Overruns
Project project11 = new Project(dataDir + "Software Development.mpp");
project11.saveReport(dataDir + "CostOverruns.pdf", ReportType.CostOverruns);
// Upcoming Task
Project project12 = new Project(dataDir + "UpcomingTasks.mpp");
project12.saveReport(dataDir + "UpcomingTasks.pdf", ReportType.UpcomingTask);
// Task Cost Overview
Project project13 = new Project(dataDir + "Software Development.mpp");
project13.saveReport(dataDir + "TaskCostOverview.pdf", ReportType.TaskCostOverview);
// Over allocated Resources
Project project14 = new Project(dataDir + "Software Development Plan.mpp");
project14.saveReport(dataDir + "OverAllocatedResources.pdf", ReportType.OverallocatedResources);
// Slipping Tasks
Project project15 = new Project(dataDir + "Cyclic stucture.mpp");
project15.saveReport(dataDir + "SlippingTasks.pdf", ReportType.SlippingTasks);
// Best Practice Analyzer
Project project16 = new Project(dataDir + "Cyclic stucture.mpp");
project16.saveReport(dataDir + "BestPracticeAnalyzer.pdf", ReportType.BestPracticeAnalyzer);
// Burn down
Project project17 = new Project(dataDir + "Cyclic stucture.mpp");
project17.saveReport(dataDir + "Burndown.pdf", ReportType.Burndown);
// Cash Flow
Project project18 = new Project(dataDir + "OzBuild 16 Orig.mpp");
project18.saveReport(dataDir + "CashFlow.pdf", ReportType.CashFlow);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
RiskAnalyzer analyzer= new RiskAnalyzer(settings);
RiskAnalysisResult analysisResult = analyzer.analyze(project);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project = new Project("NewProductDev.mpp"); // attached test project
// Initialize a risk pattern
Task task = project.getRootTask().getChildren().getById(14);
RiskPattern pattern = new RiskPattern(task);
// Select a distribution type for the random number generator to generate possible values from (only two types currently supported, namely normal and uniform)
// note that the normal distributions are often used in the natural and social sciences to represent real-valued random variables whose distributions are not known,
// thus this distribution is set to default (for more details see here: https://en.wikipedia.org/wiki/Normal_distribution)
pattern.setDistribution (ProbabilityDistributionType.Normal);
// Set the percentage of the most likely task duration which can happen in the best possible project scenario
// (the default value is 75, which means that if the estimated specified task duration is 4 days then the optimistic duration will be 3 days)
pattern.setOptimistic(70);
// Set the percentage of the most likely task duration which can happen in the worst possible project scenario
// (the defaut value is 125, which means that if the estimated specified task duration is 4 days then the pessimistic duration will be 5 days.).
pattern.setPessimistic(130);
// Set a confidence level that correspond to the percentage of the time the actual values will be within optimistic and pessimistic estimates.
// You can think of it as a value of standard deviation: the more uncertain about your estimates you are, the more the value of standard deviation used in random number generator is
pattern.setConfidenceLevel(ConfidenceLevel.CL75);
// you can add as many risk patterns as needed to model expected project risks
settings.getPatterns().add(pattern);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
RiskAnalysisSettings settings = new RiskAnalysisSettings();
// set a number of iterations for Monte Carlo simulation (the default value is 100).
settings.setIterationsCount(200);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
//Select the desired output (here we get early finish of the root task)
RiskItemStatistics rootEarlyFinish = analysisResult.getRiskItems(RiskItemType.EarlyFinish).get(project.getRootTask());
System.out.println("Expected value: "+ rootEarlyFinish.getExpectedValue());
System.out.println("StandardDeviation: " + rootEarlyFinish.getStandardDeviation());
System.out.println("10% Percentile: " +rootEarlyFinish.getPercentile(10));
System.out.println("50% Percentile: " + rootEarlyFinish.getPercentile(50));
System.out.println("90% Percentile: " + rootEarlyFinish.getPercentile(90));
System.out.println("Minimum: " + rootEarlyFinish.getMinimum());
System.out.println("Maximum: " + rootEarlyFinish.getMaximum());
// Also pdf report can be saved (it is rendered for Project Root Task Finish date):
analysisResult.saveReport("AnalysisReport.pdf");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WriteMetadata.class);
long OneSec = 10000000;
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
long OneDayEightHour = 8 * OneHour;
long OneDayTwentyFourHour = 24 * OneHour;
Project project = new Project(dataDir + "New project 2010.mpp");
java.util.Calendar calendar = java.util.Calendar.getInstance(TimeZone.getTimeZone("GMT"));
calendar.set(2012, java.util.Calendar.DECEMBER, 7, 0, 0, 0);
Date startDate = calendar.getTime();
calendar.set(2013, java.util.Calendar.DECEMBER, 7, 0, 0, 0);
Date toDate = calendar.getTime();
WorkingTime wt = new WorkingTime();
wt.setFromTime(startDate);
wt.setToTime(toDate);
WeekDay day = project.get(Prj.CALENDAR).getWeekDays().toList().get(1);
day.getWorkingTimes().add(wt);
project.get(Prj.CALENDAR).setName("CHANGED NAME!");
Task task = project.getRootTask().getChildren().add("Task 1");
task.set(Tsk.DURATION_FORMAT, TimeUnitType.Day);
task.set(Tsk.DURATION, project.getDuration(3));
task.set(Tsk.CONTACT, "Rsc 1");
// new fields
task.set(Tsk.IS_MARKED, true);
task.set(Tsk.IGNORE_WARNINGS, true);
Task task2 = project.getRootTask().getChildren().add("Task 2");
task2.set(Tsk.DURATION_FORMAT, TimeUnitType.Day);
task2.set(Tsk.CONTACT, "Rsc 2");
project.getTaskLinks().add(task, task2, TaskLinkType.FinishToStart, project.getDuration(-1, TimeUnitType.Day));
calendar.set(2013, java.util.Calendar.DECEMBER, 13, 9, 0, 0);
startDate = calendar.getTime();
project.set(Prj.START_DATE, startDate);
Resource rsc = project.getResources().add("Rsc 1");
rsc.set(Rsc.TYPE, ResourceType.Work);
rsc.set(Rsc.INITIALS, "WR");
rsc.set(Rsc.ACCRUE_AT, CostAccrualType.Prorated);
rsc.set(Rsc.MAX_UNITS, 1d);
rsc.set(Rsc.CODE, "Code 1");
rsc.set(Rsc.GROUP, "Workers");
rsc.set(Rsc.E_MAIL_ADDRESS, "1@gmail.com");
rsc.set(Rsc.WINDOWS_USER_ACCOUNT, "user_acc1");
rsc.set(Rsc.IS_GENERIC, new NullableBool(true));
rsc.set(Rsc.ACCRUE_AT, CostAccrualType.End);
rsc.set(Rsc.STANDARD_RATE, BigDecimal.valueOf(10));
rsc.set(Rsc.STANDARD_RATE_FORMAT, RateFormatType.Day);
rsc.set(Rsc.OVERTIME_RATE, BigDecimal.valueOf(15));
rsc.set(Rsc.OVERTIME_RATE_FORMAT, RateFormatType.Hour);
rsc.set(Rsc.IS_TEAM_ASSIGNMENT_POOL, true);
rsc.set(Rsc.COST_CENTER, "Cost Center 1");
ResourceAssignment assn = project.getResourceAssignments().add(task, rsc);
assn.set(Asn.UID, 1);
assn.set(Asn.WORK, task.get(Tsk.DURATION));
assn.set(Asn.REMAINING_WORK, assn.get(Asn.WORK));
assn.set(Asn.REGULAR_WORK, assn.get(Asn.WORK));
task.set(Tsk.WORK, assn.get(Asn.WORK));
rsc.set(Rsc.WORK, task.get(Tsk.WORK));
assn.set(Asn.START, task.get(Tsk.START));
assn.set(Asn.FINISH, task.get(Tsk.FINISH));
ExtendedAttributeDefinition attr = new ExtendedAttributeDefinition();
attr.setFieldId(String.valueOf((int) ExtendedAttributeTask.Flag1));
attr.setAlias("Labeled");
project.getExtendedAttributes().add(attr);
ExtendedAttribute taskAttr = new ExtendedAttribute();
taskAttr.setValue("1");
taskAttr.setFieldId(attr.getFieldId());
task2.getExtendedAttributes().add(taskAttr);
project.save(dataDir + "updated.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WriteUpdatedOutlineCode.class);
String newFile = "New Project 2013.mpp";
String resultFile = "OutputMPP.mpp";
Project project = new Project(dataDir + newFile);
ArrayList projectOutlCodes = new ArrayList();
OutlineCodeDefinition code1 = new OutlineCodeDefinition();
code1.setAlias("New task outline code1");
code1.setFieldId(String.valueOf((int) ExtendedAttributeTask.OutlineCode1));
code1.setFieldName("Outline Code1");
OutlineMask mask = new OutlineMask();
mask.setSeparator("+");
mask.setLevel(1);
mask.setType(MaskType.Numbers);
code1.getMasks().add(mask);
OutlineValue value = new OutlineValue();
value.setDescription("Value description");
value.setValueId(1);
value.setValue("123456");
value.setType(OutlineValueType.Number);
code1.getValues().add(value);
project.getOutlineCodes().add(code1);
OutlineCodeDefinition code2 = new OutlineCodeDefinition();
code2.setAlias("New rsc outline code2");
code2.setFieldId(String.valueOf((int) ExtendedAttributeResource.OutlineCode2));
code2.setFieldName("Outline Code2");
OutlineMask mask2 = new OutlineMask();
mask2.setSeparator("/");
mask2.setLevel(1);
mask2.setType(MaskType.Numbers);
code2.getMasks().add(mask2);
OutlineValue value2 = new OutlineValue();
value2.setDescription("Value2 description");
value2.setValueId(2);
value2.setValue("987654");
value2.setType(OutlineValueType.Number);
// Save the Project
project.save(dataDir + "Project.Mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ConfigureGanttChartView.class);
Project project = new Project(dataDir + "New project 2010.mpp");
// Create a new project task
Task task = project.getRootTask().getChildren().add("New Activity");
// Add custom text attribute to created task.
ExtendedAttribute attr = new ExtendedAttribute();
attr.setFieldId(String.valueOf((int) ExtendedAttributeTask.Text1));
attr.setValue("Activity attribute");
task.getExtendedAttributes().add(attr);
// Customize table by adding text attribute field
TableField attrField = new TableField();
attrField.setField(Field.TaskText1);
attrField.setWidth(20);
attrField.setTitle("Custom attribute");
attrField.setAlignTitle(StringAlignment.Center);
attrField.setAlignData(StringAlignment.Center);
Table table = project.getTables().toList().get(0);
table.getTableFields().add(3, attrField);
// The result of opening of saved project in MSP2010 is in attached
// screenshot
project.save("saved.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreateEmptyProjectFile.class);
// Create a project instance
Project newProject = new Project();
newProject.save(dataDir + "Project1.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Project file generated Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CriticalPath.class);
Project project = new Project(dataDir + "New project 2010.mpp");
project.setCalculationMode(CalculationMode.Automatic);
Task subtask1 = project.getRootTask().getChildren().add("1");
Task subtask2 = project.getRootTask().getChildren().add("2");
Task subtask3 = project.getRootTask().getChildren().add("3");
project.getTaskLinks().add(subtask1, subtask2, TaskLinkType.FinishToStart);
// Display the critical path now
for (Task task : project.getCriticalPath()) {
System.out.println(task.get(Tsk.NAME));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadCurrencyProperties.class);
// Create a project reader instance
Project project = new Project(dataDir + "project.mpp");
// Display currency properties
System.out.println("Currency Code : " + project.get(Prj.CURRENCY_CODE).toString());
System.out.println("<br>Currency Digits : " + project.get(Prj.CURRENCY_DIGITS).toString());
System.out.println("<br>Currency Symbol : " + project.get(Prj.CURRENCY_SYMBOL).toString());
System.out.println("Currency Symbol Position" + project.get(Prj.CURRENCY_SYMBOL_POSITION).toString());
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SetCurrencyProperties.class);
// Create a project instance
Project project = new Project();
// Set currency properties
project.set(Prj.CURRENCY_CODE, "AUD");
project.set(Prj.CURRENCY_DIGITS, 2);
project.set(Prj.CURRENCY_SYMBOL, "$");
project.set(Prj.CURRENCY_SYMBOL_POSITION, CurrencySymbolPositionType.After);
// Save the project as XML project file
project.save(dataDir + "project.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DefaultProjectProperties.class);
Project project = new Project(dataDir + "New Project 2007.mpp");
project.getTaskLinks().add(project.getRootTask().getChildren()
.add("Task 1"), project.getRootTask().getChildren()
.add("Task 2"));
GanttChartView view = (GanttChartView)project.getDefaultView();
view.getMiddleTimescaleTier().setUnit(TimescaleUnit.Months);
project.set(Prj.TIMESCALE_START, new Date(112, 7, 6));
view.getMiddleTimescaleTier().setDateTimeConverter( new DateTimeConverter() {
public String invoke(java.util.Date date)
{
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int month = cal.get(Calendar.MONTH);
return new String[] { "Jan.", "Feb.", "Mar.", "Apr.","May.", "Jun.", "July.","Aug.", "Sep.", "Oct.", "Nov.", "Dec." }[month];
}
});
project.save("saved.pdf", SaveFileFormat.PDF);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DefaultProjectProperties.class);
Project project = new Project(dataDir + "project.mpp");
// Display default properties
System.out.println("Project Version : " + project.get(Prj.SAVE_VERSION));
System.out.println("New Task Default Start: " + project.get(Prj.DEFAULT_START_TIME));
System.out.println("New Task Default Type: " + project.get(Prj.DEFAULT_TASK_TYPE));
System.out.println("Resource Default Standard Rate: " + project.get(Prj.DEFAULT_STANDARD_RATE));
System.out.println("Resource Default Overtime Rate: " + project.get(Prj.DEFAULT_OVERTIME_RATE));
System.out.println("Default Task EV Method: " + project.get(Prj.DEFAULT_TASK_EV_METHOD));
System.out.println("Default Cost Accrual: " + project.get(Prj.DEFAULT_FIXED_COST_ACCRUAL));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// Set default properties
project.set(Prj.SCHEDULE_FROM_START, new NullableBool(true));
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 2, 15, 0, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
project.set(Prj.DEFAULT_START_TIME, project.get(Prj.START_DATE));
project.set(Prj.DEFAULT_TASK_TYPE, TaskType.FixedDuration);
project.set(Prj.DEFAULT_STANDARD_RATE, 15d);
project.set(Prj.DEFAULT_OVERTIME_RATE, 12d);
project.set(Prj.DEFAULT_TASK_EV_METHOD, EarnedValueMethodType.PercentComplete);
project.set(Prj.DEFAULT_FIXED_COST_ACCRUAL, CostAccrualType.Prorated);
// Save the project to XML format
project.save(dataDir + "Project4.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DetermineProjectVersion.class);
Project project = new Project(dataDir + "input.xml");
// Display project version property
System.out.println("Project Version : " + project.get(Prj.SAVE_VERSION));
System.out.println("Last Saved : " + project.get(Prj.LAST_SAVED));
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ExtendedAttributes.class);
Project prj = new Project(dataDir + "project5.mpp");
ExtendedAttributeDefinitionCollection eads = prj.getExtendedAttributes();
// Create extended attribute definition
ExtendedAttributeDefinition ead = new ExtendedAttributeDefinition();
ead.setFieldId(Integer.toString(ExtendedAttributeTask.Start7));
ead.setFieldName("Start7");
eads.add(ead);
// Get zero index task
Task tsk = prj.getRootTask().getChildren().getById(1);
ExtendedAttributeCollection eas = tsk.getExtendedAttributes();
String dateTimeFormat = "yyyy-MM-ddTHH:mm:ss";
ExtendedAttribute ea = new ExtendedAttribute();
ea.setFieldId(ead.getFieldId());
ea.setValue("2013-12-05 09:00:00");
eas.add(ea);
prj.save(dataDir + "Project5.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ExtractingEmbeddedObjects.class);
Project project = new Project(dataDir + "EmbeddedFile.mpp");
OleObject ole = project.getOleObjects().toList().get(0);
// we have to check this property because it can be null if the embedded
// object was created inside the ms project application
// Or, alternatively, you can use this check: if (ole.FileFormat ==
// "Package")
// if (!string.IsNullOrEmpty(ole.FullPath))
if (ole.getFileFormat().equals("Package")) {
File file = new File(dataDir);
FileOutputStream fop = new FileOutputStream(file);
// get the content in bytes
byte[] contentInBytes = ole.getContent();
fop.write(contentInBytes);
fop.flush();
fop.close();
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(FilterDataFromMppFile.class);
Project project = new Project(dataDir + "Task name filter.mpp");
Filter filter = project.getTaskFilters().toList().get(1);
System.out.println(filter.getCriteria().getCriteriaRows().size());
System.out.println(filter.getCriteria().getOperation());
FilterCriteria criteria1 = filter.getCriteria().getCriteriaRows().get(0);
System.out.println(criteria1.getTest());
System.out.println(criteria1.getField());
// System.out.println(criteria1.getValues().getValues().get(0).toString());
FilterCriteria criteria2 = filter.getCriteria().getCriteriaRows().get(1);
System.out.println(criteria2.getOperation());
System.out.println(criteria2.getCriteriaRows().size());
FilterCriteria criteria21 = criteria2.getCriteriaRows().get(0);
System.out.println(criteria21.getTest());
System.out.println(criteria21.getField());
FilterCriteria criteria22 = criteria2.getCriteriaRows().get(1);
System.out.println(criteria22.getTest());
System.out.println(criteria22.getField());
FilterCriteria criteria23 = criteria2.getCriteriaRows().get(2);
System.out.println(criteria23.getTest());
System.out.println(criteria23.getField());
FilterCriteria criteria3 = filter.getCriteria().getCriteriaRows().get(2);
System.out.println(criteria3.getCriteriaRows().size());
System.out.println(criteria3.getOperation());
System.out.println(filter.getCriteria());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(FilterDataFromMppFile.class);
Project project = new Project(dataDir + "Project2003.mpp");
List<Filter> taskFilters = project.getTaskFilters().toList();
System.out.println("Task Filters Count: " + taskFilters.size());
System.out.println("All Tasks: " + taskFilters.get(0).getName());
System.out.println("Task Item: " + taskFilters.get(0).getFilterType());
System.out.println("Task Filters Show In Menu: " + taskFilters.get(0).getShowInMenu());
System.out.println("Task filter ShowRelatedSummaryRows: " + taskFilters.get(0).getShowRelatedSummaryRows());
System.out.println("Task filter type: " + taskFilters.get(1).getFilterType());
System.out.println("Task Filters Show In Menu: " + taskFilters.get(1).getShowInMenu());
System.out.println("Task filter ShowRelatedSummaryRows: " + taskFilters.get(1).getShowRelatedSummaryRows());
System.out.println("NEW FILTER" + taskFilters.get(2).getName());
System.out.println("Task filter type: " + taskFilters.get(2).getShowInMenu());
System.out.println("Task Filters Show In Menu: " + taskFilters.get(2).getShowInMenu());
System.out.println("Task filter ShowRelatedSummaryRows: " + taskFilters.get(2).getShowRelatedSummaryRows());
System.out.println("Task FilterCriteria:m" + taskFilters.get(2).getCriteria());
System.out.println("(TaskName Contains T)" + taskFilters.get(2).getCriteria().toString());
List<Filter> rscFilters = project.getResourceFilters().toList();
System.out.println("Project.ResourceFilters count: " + rscFilters.size());
System.out.println("Resource Filter Item Type: Item.ResourceType: " + rscFilters.get(0).getFilterType());
System.out.println("Resource filter ShowInMenu" + rscFilters.get(0).getShowInMenu());
System.out.println("Resource filter ShowRelatedSummaryRows: " + rscFilters.get(0).getShowRelatedSummaryRows());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(FiscalYearProperties.class);
;
Project project = new Project(dataDir + "project.mpp");
// Display fiscal year properties
// Display fiscal year properties
System.out.println("Fiscal Year Start Date : " + project.get(Prj.FY_START_DATE));
System.out.println("Fiscal Year Numbering : " + project.get(Prj.FISCAL_YEAR_START));
// ------ Setting Project Fiscal Year Properties
// Create a project instance
Project prj = new Project();
// Set fiscal year properties
prj.set(Prj.FY_START_DATE, Month.July);
prj.set(Prj.FISCAL_YEAR_START, new NullableBool(true));
// Save the project as XML project file
prj.save(dataDir + "savedProject.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadProjectInfo.class);
Project project = new Project(dataDir + "input.xml");
if (project.get(Prj.SCHEDULE_FROM_START).getValue())
System.out.println("Project Start Date : " + project.get(Prj.START_DATE));
else
System.out.println("Project Finish Date : " + project.get(Prj.FINISH_DATE));
String strSchdl = (project.get(Prj.SCHEDULE_FROM_START).getValue()) ? "Project Start Date"
: "Project Finish Date";
System.out.println("Project Schedule From : " + strSchdl);
System.out.println("Current Date : " + project.get(Prj.CURRENT_DATE));
System.out.println("Status Date : " + project.get(Prj.STATUS_DATE));
System.out.println("Calendar : " + project.get(Prj.CALENDAR).getName());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WriteProjectInfo.class);
// Create a project instance
Project project = new Project();
// Set project information properties
project.set(Prj.SCHEDULE_FROM_START, new NullableBool(true));
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 7, 10);
project.set(Prj.START_DATE, cal.getTime());
project.set(Prj.CURRENT_DATE, cal.getTime());
project.set(Prj.STATUS_DATE, cal.getTime());
// Save the Project as XML
project.save(dataDir + "project3.xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// Read the source Project
Project project = new Project(projectName);
// Get number of pages
System.out
.println("Number of Pages = " + project.getPageCount(PresentationFormat.ResourceUsage, Timescale.Days));
// Get number of pages (Months)
System.out.println(
"Number of Pages = " + project.getPageCount(PresentationFormat.ResourceUsage, Timescale.Months));
// Get number of pages (ThirdsOfMonths)
System.out.println("Number of Pages = "
+ project.getPageCount(PresentationFormat.ResourceUsage, Timescale.ThirdsOfMonths));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project = new Project(projectName);
// Get number of pages
int iPages = project.getPageCount();
// Get number of pages (Timescale.Months)
iPages = project.getPageCount(0, Timescale.Months);
// Get number of pages (Timescale.ThirdsOfMonths)
iPages = project.getPageCount(0, Timescale.ThirdsOfMonths);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ImportExportDataToPrimavera.class);
Project project = new Project(dataDir + "Project.mpp");
project.save(dataDir + "saved.mpx", SaveFileFormat.MPX);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ImportExportDataToPrimavera.class);
Project project = new Project(dataDir + "Project.mpp");
project.save(dataDir + "saved.xer", SaveFileFormat.PrimaveraXER);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ImportExportDataToPrimavera.class);
Project project = new Project(dataDir + "Project.mpp");
project.save(dataDir + "saved.xml", SaveFileFormat.PrimaveraP6XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ImportExportDataToPrimavera.class);
Project project = new Project(dataDir +"Primavera1.mpx");
// read the project structure
ProjectFileInfo info = Project.getProjectFileInfo("primavera1.mpx");
System.out.println(info.getProjectFileFormat());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ImportExportDataToPrimavera.class);
Project project = new Project(dataDir + "Primavera1.xml");
// read the project structure
ProjectFileInfo info = Project.getProjectFileInfo("primavera1.xml");
System.out.println(info.getProjectFileFormat());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project = new Project("test.xml");
PrimaveraXmlSaveOptions options = new PrimaveraXmlSaveOptions();
options.setSaveRootTask(false);
project.save("test1.xml",options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
PrimaveraXmlReader reader = new PrimaveraXmlReader("primaveraXml.xml");
List<Integer> listOpProjectUids = reader.getProjectUids();
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
PrimaveraXmlReadingOptions options = new PrimaveraXmlReadingOptions();
options.setProjectUid(4557);
// returns project with special Uid
Project project = new Project("PrimaveraXmlFile.xml",options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(MppFileUpdate.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
// Read an existing project
Project project = new Project(dataDir + "SampleMSP2010.mpp");
// create a new task
Task task = project.getRootTask().getChildren().add("Task1");
// set start date
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2012, 7, 1, 8, 0, 0);
task.set(Tsk.START, cal.getTime());
cal.set(2012, 7, 1, 17, 0, 0);
task.set(Tsk.FINISH, cal.getTime());
// Save the project as MPP project file
project.save(dataDir + "AfterLinking.Mpp", SaveFileFormat.MPP);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(PrintPagesToSeparateImage.class);
Project project = new Project(dataDir + "CustomerFeedback.mpp");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFileFormat.PNG);
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.setTime(project.get(Prj.START_DATE));
cal.add(java.util.Calendar.DATE, -3);
saveOptions.setStartDate(cal.getTime());
saveOptions.setEndDate(project.get(Prj.FINISH_DATE));
saveOptions.setMarkCriticalTasks(true);
saveOptions.setLegendOnEachPage(false);
saveOptions.setGridlines(new ArrayList<Gridline>());
Gridline gridline = new Gridline();
gridline.setGridlineType(GridlineType.GanttRow);
gridline.setColor(Color.BLUE);
gridline.setPattern(LinePattern.Dashed);
saveOptions.getGridlines().add(gridline);
// Save the whole project layout to one file
project.save(dataDir + "CustomerFeedback.png", saveOptions);
// Save project layout to separate files
saveOptions.setSaveToSeparateFiles(true);
project.save(dataDir + "CustomerFeedback_.png", saveOptions);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(PrintTaskWritingExceptions.class);
Project prj = new Project(dataDir + "Project5.mpp");
try {
prj.save(dataDir + "project.MPP", SaveFileFormat.MPP);
} catch (TasksWritingException ex) {
System.out.println(ex.getLogText());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
String testDir = Utils.getDataDir(ReadGroupDefinitionData.class);
Project project = new Project(testDir + "Task name filter.mpp");
System.out.println("Task Groups Count: " + project.getTaskGroups().size());
Group taskGroup = project.getTaskGroups().toList().get(1);
System.out.println("Percent Complete:" + taskGroup.getName());
System.out.println("Group Criteria count: " + taskGroup.getGroupCriteria().size());
System.out.println("\n************* Retrieving Task Group's Criterion information *************");
GroupCriterion criterion = taskGroup.getGroupCriteria().toList().get(0);
System.out.println("Criterion Field: " + criterion.getField());
System.out.println("Criterion GroupOn: " + criterion.getGroupOn());
System.out.println("Criterion Cell Color: " + criterion.getCellColor());
System.out.println("Criterion Pattern: " + criterion.getPattern());
if (taskGroup == criterion.getParentGroup())
System.out.println("Parent Group is equval to task Group.");
System.out.println("\n*********** Retreivnig Criterion's Font Information ***********");
System.out.println("Font Name: " + criterion.getFont().getName());
System.out.println("Font Size: " + criterion.getFont().getSize());
System.out.println("Font Style: " + criterion.getFont().getStyle());
System.out.println("Ascending/Dscending: " + criterion.getAscending());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadPageSetupInformation.class);
Project project = new Project(dataDir + "HeaderFooter2007_3.mpp"); // Attached
// test
// project
PageInfo info = project.getDefaultView().getPageInfo();
// Header Footer information
System.out.println(info.getHeader().getLeftText());
System.out.println(info.getHeader().getCenteredText());
System.out.println(info.getHeader().getRightText());
System.out.println(info.getFooter().getLeftText());
System.out.println(info.getFooter().getCenteredText());
System.out.println(info.getFooter().getRightText());
// Page Settings information
System.out.println(info.getPageSettings().isPortrait());
System.out.println(info.getPageSettings().getAdjustToPercentOfNormalSize());
System.out.println(info.getPageSettings().getPercentOfNormalSize());
System.out.println(info.getPageSettings().getPagesInWidth());
System.out.println(info.getPageSettings().getPagesInHeight());
System.out.println(info.getPageSettings().getPaperSize());
// Page View Settings
System.out.println(info.getPageViewSettings().getPrintAllSheetColumns());
System.out.println(info.getPageViewSettings().getPrintFirstColumnsCountOnAllPages());
System.out.println(info.getPageViewSettings().getFirstColumnsCount());
System.out.println(info.getPageViewSettings().getPrintNotes());
System.out.println(info.getPageViewSettings().getPrintBlankPages());
System.out.println(info.getPageViewSettings().getFitTimescaleToEndOfPage());
// Page Margins
System.out.println(info.getMargins().getLeft());
System.out.println(info.getMargins().getTop());
System.out.println(info.getMargins().getRight());
System.out.println(info.getMargins().getBottom());
System.out.println(info.getMargins().getBorders());
// Page Legend
System.out.println(info.getLegend().getLeftText());
System.out.println(info.getLegend().getCenteredText());
System.out.println(info.getLegend().getRightText());
System.out.println(info.getLegend().getLegendOn());
System.out.println(info.getLegend().getWidth());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadPasswordProtectedFiles.class);
Project prj = new Project(dataDir + "PassProtected2003.mpp", "pass");
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadProjectFileAsTemplate.class);
// Create a project instance
Project newProject = new Project(dataDir + "Project1.mpp");
System.out.println("Project file generated Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadProjectFiles.class);
Project existingProject = null;
try {
existingProject = new Project(dataDir + "Project1.xml");
} catch (Exception ex) {
ex.printStackTrace();
}
System.out.println("Calendar : " + existingProject.get(Prj.NAME));
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadSpecificGanttChartData.class);
Project project = new Project(dataDir + "Project2003.mpp");
GanttChartView view = (GanttChartView) project.getViews().toList().get(1);
System.out.println("View.BarRounding: " + view.getBarRounding());
System.out.println("view.ShowBarSplits: " + view.getShowBarSplits());
System.out.println("view.ShowDrawings: " + view.getShowDrawings());
System.out.println("view.RollUpGanttBars: " + view.getRollUpGanttBars());
System.out.println("view.HideRollupBarsWhenSummaryExpanded: " + view.getHideRollupBarsWhenSummaryExpanded());
System.out.println("view.BarSize: " + view.getBarSize());
System.out.println("view.BarStyles count: " + view.getBarStyles().size());
int i = 0;
for (GanttBarStyle barStyle : view.getBarStyles()) {
System.out.println(barStylesNames[i] + ": " + barStyle.getName());
System.out.println(barStylesShowFor[i] + ":" + barStyle.getShowFor());
System.out.println(barStylesFrom[i] + ":" + barStyle.getFrom());
System.out.println(barStylesTo[i] + ":" + barStyle.getTo());
System.out.println(barStylesMiddleShape[i] + ":" + barStyle.getMiddleShape());
System.out.println(barStylesMiddleColor[i] + ":" + barStyle.getMiddleShapeColor());
System.out.println(barStylesStartShape[i] + ":" + barStyle.getStartShape());
System.out.println(barStylesEndShape[i] + ":" + barStyle.getEndShape());
System.out.println(barStylesEndShapeColor[i] + ":" + barStyle.getEndShapeColor());
i++;
}
System.out.println("Gridlines count: " + view.getGridlines().size());
Gridlines gridlines = view.getGridlines().get(0);
System.out.println("Gridlines.Type: " + gridlines.getType());
System.out.println("Gridlines interval: " + gridlines.getInterval());
System.out.println("Gridlines.NormalColor: " + gridlines.getNormalColor());
System.out.println("Gridlines.NormalPattern: " + gridlines.getNormalPattern());
System.out.println("Gridlines.IntervalPattern: " + gridlines.getIntervalPattern());
System.out.println("Gridlines.IntervalColor: " + gridlines.getIntervalColor());
System.out.println("View Text Styles: " + view.getTextStyles());
System.out.println("ProgressLInes.BeginAtDate: " + view.getProgressLines().getBeginAtDate().toString());
System.out.println("ProgressLines.isBaselinePlan: " + view.getProgressLines().isBaselinePlan());
System.out.println("ProgressLines.DisplaySelected: " + view.getProgressLines().getDisplaySelected());
System.out.println("ProgressLines.SelectedDates.Count: " + view.getProgressLines().getSelectedDates().size());
System.out.println("ProgressLines.DisplayAtRecurringIntervals: "
+ view.getProgressLines().getDisplayAtRecurringIntervals());
System.out.println("ProgressLines.RecurringInterval.Interval: "
+ view.getProgressLines().getRecurringInterval().getInterval());
System.out.println("ProgressLines.RecurringInterval.WeeklyDays.Count"
+ view.getProgressLines().getRecurringInterval().getWeeklyDays().size());
System.out.println("RecurringInterval.DayType.Friday: "
+ (int) view.getProgressLines().getRecurringInterval().getWeeklyDays().get(1));
System.out.println("RecurringInterval.DayType.Saturday: "
+ (int) view.getProgressLines().getRecurringInterval().getWeeklyDays().get(2));
System.out.println("RecurringInterval.DayType.Sunday: "
+ (int) view.getProgressLines().getRecurringInterval().getWeeklyDays().get(0));
System.out.println("ProgressLines.ShowDate" + view.getProgressLines().getShowDate());
System.out.println("ProgressLines.ProgressPointShape: " + view.getProgressLines().getProgressPointShape());
System.out.println("ProgressLines.ProgressPointColor: " + view.getProgressLines().getProgressPointColor());
System.out.println("ProgressLines.LineColor: " + view.getProgressLines().getLineColor());
System.out.println("ProgressLines.LinePattern" + view.getProgressLines().getLinePattern());
System.out.println(
"ProgressLines.OtherProgressPointShape: " + view.getProgressLines().getOtherProgressPointShape());
System.out.println("ProgressLines.OtherProgressPointColor: "
+ view.getProgressLines().getOtherProgressPointColor().toString());
System.out.println("ProgressLines.OtherLineColor: " + view.getProgressLines().getOtherLineColor());
System.out.println("BottomTimescaleTier" + view.getBottomTimescaleTier());
System.out.println("BottomTimescaleTier.Count: " + view.getBottomTimescaleTier().getCount());
System.out.println("BottomTimescaleTier.Unit: " + view.getBottomTimescaleTier().getUnit());
System.out.println("BottomTimescaleTier.UsesFiscalYear: " + view.getBottomTimescaleTier().getUsesFiscalYear());
System.out.println("BottomTimescaleTier.Alignment: " + view.getBottomTimescaleTier().getAlignment());
System.out.println("BottomTimescaleTier.ShowTicks: " + view.getBottomTimescaleTier().getShowTicks());
System.out.println("BottomTimescaleTier.Label: " + view.getBottomTimescaleTier().getLabel());
System.out.println("MiddleTimescaleTier.Count: " + view.getMiddleTimescaleTier().getCount());
System.out.println("TimescaleUnit.Weeks: " + view.getMiddleTimescaleTier().getUnit());
System.out.println("MiddleTimescaleTier.Alignment: " + view.getMiddleTimescaleTier().getAlignment());
System.out.println("MiddleTimescaleTier.ShowTicks: " + view.getMiddleTimescaleTier().getShowTicks());
System.out.println("MiddleTimescaleTier.Label: " + view.getMiddleTimescaleTier().getLabel());
System.out.println("TopTimescaleTier.Unit: " + view.getTopTimescaleTier().getUnit());
System.out.println("TopTimescaleTier.UsesFiscalYear: " + view.getTopTimescaleTier().getUsesFiscalYear());
System.out.println("TopTimescaleTier.Alignment: " + view.getTopTimescaleTier().getAlignment());
System.out.println("TopTimescaleTier.ShowTicks: " + view.getTopTimescaleTier().getShowTicks());
System.out.println("TopTimescaleTier.Label" + view.getTopTimescaleTier().getLabel());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadTableDataFromFile.class);
;
Project project = new Project(dataDir + "TASKS_33579\\Project2003.mpp");
Table t1 = project.getTables().toList().get(0);
System.out.println("Table Fields Count" + t1.getTableFields().size());
TableField f = t1.getTableFields().get(0);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(1);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(2);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(3);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(4);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(5);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(6);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
f = t1.getTableFields().get(7);
System.out.println("Field width: " + f.getWidth());
System.out.println("Field Title: " + f.getTitle());
System.out.println("Field Title Alignment: " + f.getAlignTitle());
System.out.println("Field Align Data: " + f.getAlignData());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderDataWithFormate24bppRgb.class);
Project project = new Project(dataDir + "file.mpp");
ImageSaveOptions options = new ImageSaveOptions(SaveFileFormat.TIFF);
options.setHorizontalResolution(72);
options.setVerticalResolution(72);
options.setPixelFormat(PixelFormat.Format24bppRgb);
project.save(dataDir + "resFile.tif", options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReplaceCalendar.class);
Project project = new Project();
// Add a calendar to the project
Calendar cal = project.getCalendars().add("Cal 1");
Calendar newCal = new Calendar("New Cal");
CalendarCollection calColl = project.getCalendars();
for (Calendar c : calColl) {
if (c.getName() == "Cal 1") {
calColl.remove(c);
calColl.add("Standard", newCal);
break;
}
}
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RescheduleProjectFromStartOrFinishDate.class);
Project project = new Project(dataDir + "Project.mpp");
project.set(Prj.SCHEDULE_FROM_START, new NullableBool(false));
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2020, 1, 1, 0, 0, 0);
project.set(Prj.FINISH_DATE, cal.getTime());
// Now all tasks dates (Start, Finish, EarlyStart, EarlyFinish,
// LateStart,
// LateFinish) are calculated.
// To get the critical path we need to calculate slacks (can be invoked
// in
// separate thread, but only after calculation of all early/late dates)
project.recalculate();
TaskCollection criticalPath = project.getCriticalPath();
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RescheduleProjectFromStartOrFinishDate.class);
Project project = new Project(dataDir + "Project.mpp");
project.set(Prj.SCHEDULE_FROM_START, new NullableBool(true));
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2020, 1, 1, 0, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
// Now all tasks dates (Start, Finish, EarlyStart, EarlyFinish,
// LateStart,
// LateFinish) are calculated.
// To get the critical path we need to calculate slacks (can be invoked
// in
// separate thread, but only after calculation of all early/late dates)
project.recalculate();
TaskCollection criticalPath = project.getCriticalPath();
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RetrieveCalendarInfo.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
// Create a project reader instance
Project project = new Project(dataDir + "input.mpp");
// Retrieve Calendars Information
CalendarCollection alCals = project.getCalendars();
for (Calendar cal : alCals) {
if (cal.getName() != null) {
System.out.println("Calendar UID : " + cal.getUid());
System.out.println("Calendar Name : " + cal.getName());
WeekDayCollection alDays = cal.getWeekDays();
for (WeekDay wd : alDays) {
double ts = wd.getWorkingTime(); // milliseconds
double time = ts / (OneHour);
if (wd.getDayWorking()) {
System.out.print(wd.getDayType() + ":");
System.out.print("Working Time:" + time + " Hours");
System.out.println(", Ticks = " + ts);
}
}
}
}
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project = new Project(projectName);
for (OutlineCodeDefinition ocd : project.getOutlineCodes()) {
System.out.println("Alias = " + ocd.getAlias());
if (ocd.getAllLevelsRequired()) {
System.out.println("It contains property: must have all levels");
} else {
System.out.println("It does not contain property: must have all levels");
}
if (ocd.getEnterprise()) {
System.out.println("It is an enterprise custom outline code.");
} else {
System.out.println("It is not an enterprise custom outline code.");
}
System.out.println(
"Reference to another custom field for which this outline code definition is an alias is = "
+ ocd.getEnterpriseOutlineCodeAlias());
System.out.println("Field Id = " + ocd.getFieldId());
System.out.println("Field Name = " + ocd.getFieldName());
System.out.println("Phonetic Alias = " + ocd.getPhoneticAlias());
System.out.println("Guid = " + ocd.getGuid());
// Display outline code masks
for (OutlineMask m1 : ocd.getMasks()) {
System.out.println("Level of a mask = " + m1.getLevel());
System.out.println("Mask = " + m1.toString());
}
// Display out line code values
for (OutlineValue v1 : ocd.getValues()) {
System.out.println("Description of outline value = " + v1.getDescription());
System.out.println("Value Id = " + v1.getValueId());
System.out.println("Value = " + v1.getValue());
System.out.println("Type = " + v1.getType());
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsCsvTextAndTemplate.class);
Project project = new Project(dataDir + "Project5.mpp");
project.save(dataDir + "Project5.csv", SaveFileFormat.CSV);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsCsvTextAndTemplate.class);
String projectName = "Blank2010.mpp"; // any mpp file (here 2010 format
// used)
Project project = new Project(projectName);
ProjectFileInfo projectFileInfo = Project.getProjectFileInfo(dataDir + "Blank2010.mpp");
if (FileFormat.MPP14 == projectFileInfo.getProjectFileFormat()) {
System.out.println("Project file format is ok");
}
SaveTemplateOptions options = new SaveTemplateOptions();
options.setRemoveActualValues(true);
options.setRemoveBaselineValues(true);
String templateName = "result.mpt";
project.saveAsTemplate(templateName);
ProjectFileInfo templateFileInfo = Project.getProjectFileInfo(templateName);
if (FileFormat.MPT14 == templateFileInfo.getProjectFileFormat()) {
System.out.println("Template FileFormat is ok");
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsCsvTextAndTemplate.class);
Project project = new Project(dataDir + "Project5.mpp");
project.save(dataDir + "Project5.txt", SaveFileFormat.TXT);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
String dataDir = Utils.getDataDir(SaveAsCsvTextAndTemplate.class);
Project project = new Project(dataDir + "sample.mpp");
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions();
//Determines whether to include project name in HTML title (true by default)
htmlSaveOptions.setIncludeProjectNameInTitle(true);
//Determines whether to include project name in HTML page header (true by default)
htmlSaveOptions.setIncludeProjectNameInPageHeader(false);
htmlSaveOptions.setPages(new ArrayList());
htmlSaveOptions.getPages().add(1);
project.save("output.html", htmlSaveOptions);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
String dataDir = Utils.getDataDir(SaveAsCsvTextAndTemplate.class);
Project project = new Project(dataDir + "sample.mpp");
HtmlSaveOptions htmlSaveOptions = new HtmlSaveOptions();
//Determines whether to include project name in HTML title (true by default)
htmlSaveOptions.setIncludeProjectNameInTitle(true);
//Determines whether to include project name in HTML page header (true by default)
htmlSaveOptions.setIncludeProjectNameInPageHeader(false);
htmlSaveOptions.setPages(new ArrayList());
htmlSaveOptions.getPages().add(1);
project.save("output.html", htmlSaveOptions);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project3 = new Project("Advanced Assignments A_Start.mpp");
SaveOptions options = new PdfSaveOptions();
options.setPresentationFormat(PresentationFormat.ResourceSheet);
TextStyle style = new TextStyle();
style.setColor(Color.ORANGE);
style.setFontStyle(1);
style.setItemType(TextItemType.OverallocatedResources);
options.setTextStyles(new ArrayList<TextStyle>());
options.getTextStyles().add(style);
project3.save("temp.pdf", options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project2 = new Project("RenderMe.mpp");
PdfSaveOptions saveOptions = new PdfSaveOptions();
saveOptions.setSaveToSeparateFiles(true);
ArrayList<Integer> arl = new ArrayList<Integer>();
saveOptions.setPages(arl);
saveOptions.getPages().add(1);
saveOptions.getPages().add(4);
project2.save("result.pdf", saveOptions);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsPdf.class);
// Read the input Project file
Project project = new Project(dataDir + "project6.mpp");
// Save the Project as PDF
project.save(dataDir + "Project5.pdf", SaveFileFormat.PDF);
// Fitting contents to cell size
Project project1 = new Project(dataDir + "project6.mpp");
SaveOptions o = new PdfSaveOptions();
// Set the LegendOnEachPage property to false to hide legends
// Set the row height to fit cell content
o.setFitContent(true);
o.setTimescale(Timescale.Months);
o.setPresentationFormat(PresentationFormat.TaskUsage);
project1.save("result_months.pdf", o);
o.setLegendOnEachPage(false);
project1.save(dataDir + "result_months_WithoutLegend.pdf", o);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsSVG.class);
// Read the input Project file
Project project = new Project(projectName);
// Save the Project as SVG
project.save(dataDir + "Project5.SVG", SaveFileFormat.SVG);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveAsSVG.class);
// Read the input Project file
Project project = new Project(projectName);
SaveOptions opt = new SvgOptions();
opt.setFitContent(true);
opt.setTimescale(Timescale.ThirdsOfMonths);
project.save(dataDir + "FileName5.svg", opt);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveDataToExcel.class);
Project project = new Project(dataDir + "Project5.mpp");
project.save(dataDir + "Project5.xml", SaveFileFormat.Spreadsheet2003);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SaveDataToExcel.class);
// Read the input Project file
Project project = new Project(dataDir + "Project5.mpp");
// Save the Project as XLSX
project.save(dataDir + "Project1.XLSX", SaveFileFormat.XLSX);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SetAttributesForNewTasks.class);
// create a prject instance
Project prj = new Project();
// set new task property
prj.set(Prj.NEW_TASK_START_DATE, TaskStartDateType.CurrentDate);
// save the project in XML format
prj.save(dataDir + "project1.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Project file generated Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SetTimeScaleCount.class);
Project project = new Project();
GanttChartView view = new GanttChartView();
view.getBottomTimescaleTier().setCount(2);
view.getBottomTimescaleTier().setShowTicks(false);
view.getMiddleTimescaleTier().setCount(2);
view.getMiddleTimescaleTier().setShowTicks(false);
project.getViews().add(view);
// Add some test data to project
Task task1 = project.getRootTask().getChildren().add("Task 1");
Task task2 = project.getRootTask().getChildren().add("Task 2");
task1.set(Tsk.DURATION, task1.getParentProject().getDuration(24, TimeUnitType.Hour));
task2.set(Tsk.DURATION, task1.getParentProject().getDuration(40, TimeUnitType.Hour));
project.save(dataDir + "temp.pdf", SaveFileFormat.PDF); // Result is in
// attached
// screenshot
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(UpdateProjectAndRescheduleuncompletedwork.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project();
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 1, 27, 8, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
Task task1 = project.getRootTask().getChildren().add("Task 1");
Task task2 = project.getRootTask().getChildren().add("Task 2");
task2.set(Tsk.DURATION, task2.getParentProject().getDuration(16, TimeUnitType.Hour));
Task task3 = project.getRootTask().getChildren().add("Task 3");
task3.set(Tsk.DURATION, task2.getParentProject().getDuration(24, TimeUnitType.Hour));
Task task4 = project.getRootTask().getChildren().add("Task 4");
task4.set(Tsk.DURATION, task2.getParentProject().getDuration(16, TimeUnitType.Hour));
Task task5 = project.getRootTask().getChildren().add("Task 5");
task5.set(Tsk.DURATION, task2.getParentProject().getDuration(16, TimeUnitType.Hour));
TaskLink link12 = project.getTaskLinks().add(task1, task2, TaskLinkType.FinishToStart);
TaskLink link23 = project.getTaskLinks().add(task2, task3, TaskLinkType.FinishToStart);
link23.setLinkLag(4800); // one day lag
TaskLink link34 = project.getTaskLinks().add(task3, task4, TaskLinkType.FinishToStart);
TaskLink link45 = project.getTaskLinks().add(task4, task5, TaskLinkType.FinishToStart);
Task task6 = project.getRootTask().getChildren().add("Task 6");
Task task7 = project.getRootTask().getChildren().add("Task 7");
task7.set(Tsk.DURATION, task7.getParentProject().getDuration(24, TimeUnitType.Hour));
Task task8 = project.getRootTask().getChildren().add("Task 8");
task8.set(Tsk.DURATION, task2.getParentProject().getDuration(16, TimeUnitType.Hour));
Task task9 = project.getRootTask().getChildren().add("Task 9");
task9.set(Tsk.DURATION, task2.getParentProject().getDuration(16, TimeUnitType.Hour));
Task task10 = project.getRootTask().getChildren().add("Task 10");
TaskLink link67 = project.getTaskLinks().add(task6, task7, TaskLinkType.FinishToStart);
TaskLink link78 = project.getTaskLinks().add(task7, task8, TaskLinkType.FinishToStart);
TaskLink link89 = project.getTaskLinks().add(task8, task9, TaskLinkType.FinishToStart);
TaskLink link910 = project.getTaskLinks().add(task9, task10, TaskLinkType.FinishToStart);
task6.set(Tsk.IS_MANUAL, new NullableBool(true));
task7.set(Tsk.IS_MANUAL, new NullableBool(true));
task8.set(Tsk.IS_MANUAL, new NullableBool(true));
task9.set(Tsk.IS_MANUAL, new NullableBool(true));
task10.set(Tsk.IS_MANUAL, new NullableBool(true));
project.save(dataDir + "not updated.xml", SaveFileFormat.XML);
cal.set(2014, 1, 28, 17, 0, 0);
project.updateProjectWorkAsComplete(cal.getTime(), false);
project.save(dataDir + "updated.xml", SaveFileFormat.XML);
cal.set(2014, 1, 28, 17, 0, 0);
project.rescheduleUncompletedWorkToStartAfter(cal.getTime());
project.save(dataDir + "rescheduled.xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WeekdayProperties.class);
Project project = new Project(dataDir + "project.mpp");
// Display week days properties
System.out.println("Week Start Date : " + project.get(Prj.WEEK_START_DAY).toString());
System.out.println("Days Per Month : " + project.get(Prj.DAYS_PER_MONTH).toString());
System.out.println("Minutes Per Day : " + project.get(Prj.MINUTES_PER_DAY).toString());
System.out.println("Minutes Per Week : " + project.get(Prj.MINUTES_PER_WEEK).toString());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// Create a project instance
Project prj = new Project();
// Set week days properties
project.set(Prj.WEEK_START_DAY, DayType.Monday);
project.set(Prj.DAYS_PER_MONTH, 24);
project.set(Prj.MINUTES_PER_DAY, 540);
project.set(Prj.MINUTES_PER_WEEK, 3240);
// Save the project as XML project file
prj.save(dataDir + "savedProject.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WriteMPPProjectSummary.class);
Project project = new Project(dataDir + "project.mpp");
// Set some summary information about the project
project.set(Prj.AUTHOR, "Author");
project.set(Prj.LAST_AUTHOR, "Last Author");
project.set(Prj.REVISION, 15);
project.set(Prj.KEYWORDS, "MSP Aspose");
project.set(Prj.COMMENTS, "Comments");
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 2, 15, 0, 0, 0);
project.set(Prj.CREATION_DATE, cal.getTime());
project.set(Prj.KEYWORDS, "MPP Aspose");
cal.set(2014, 3, 16, 0, 0, 0);
project.set(Prj.LAST_PRINTED, cal.getTime());
// Save the Project back in MPP format
project.save(dataDir + "MPPAspose.xml", SaveFileFormat.XML);
// Display result of conversion.
System.out.println("Process completed Successfully");
// Reading Project Summary Information
project = new Project(dataDir + "MPPAspose.xml");
System.out.println("Author: " + project.get(Prj.AUTHOR));
System.out.println(project.get(Prj.LAST_AUTHOR));
System.out.println(project.get(Prj.REVISION));
System.out.println(project.get(Prj.KEYWORDS));
System.out.println(project.get(Prj.COMMENTS));
System.out.println(project.get(Prj.CREATION_DATE).toString());
System.out.println(project.get(Prj.KEYWORDS));
System.out.println(project.get(Prj.LAST_PRINTED).toString());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(AssignmentBudget.class);
Project prj = new Project(dataDir + "project5.mpp");
for (ResourceAssignment ra : prj.getResourceAssignments()) {
System.out.println(ra.get(Asn.BUDGET_COST));
System.out.println(ra.get(Asn.BUDGET_WORK).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(AssignmentCost.class);
Project project = new Project(dataDir + "EarnedValues2010.mpp");
for (int i = 0; i < project.getResourceAssignments().getCount(); i++) {
ResourceAssignment ra = project.getResourceAssignments().getByUid(0);
System.out.println(ra.get(Asn.COST));
System.out.println(ra.get(Asn.ACWP));
System.out.println(ra.get(Asn.BCWP));
System.out.println(ra.get(Asn.BCWS));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CalculatePercentages.class);
Project project = new Project(dataDir + "project5.mpp");
for (ResourceAssignment ra : project.getResourceAssignments()) {
System.out.println(ra.get(Asn.PERCENT_WORK_COMPLETE).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreateResourceAssignments.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task");
Resource rsc = project.getResources().add("Rsc");
ResourceAssignment assn = project.getResourceAssignments().add(task, rsc);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(DealingVariances.class);
Project project = new Project(dataDir + "project5.mpp");
for (ResourceAssignment ra : project.getResourceAssignments()) {
System.out.println(ra.get(Asn.WORK_VARIANCE));
System.out.println(ra.get(Asn.COST_VARIANCE));
System.out.println(ra.get(Asn.START_VARIANCE));
System.out.println(ra.get(Asn.FINISH_VARIANCE));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(OvertimeRemainingCostsWork.class);
Project project = new Project(dataDir + "project5.mpp");
for (ResourceAssignment ra : project.getResourceAssignments()) {
System.out.println(ra.get(Asn.OVERTIME_COST));
System.out.println(ra.get(Asn.OVERTIME_WORK).toString());
System.out.println(ra.get(Asn.REMAINING_COST));
System.out.println(ra.get(Asn.REMAINING_OVERTIME_COST));
System.out.println(ra.get(Asn.REMAINING_OVERTIME_WORK).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ResourceAssignmentProperties.class);
Project prj = new Project(dataDir + "input.mpp");
for (ResourceAssignment ra : prj.getResourceAssignments()) {
System.out.println(ra.get(Asn.UID));
System.out.println(ra.get(Asn.START).toString());
System.out.println(ra.get(Asn.FINISH).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ResourceAssignmentProperties.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task");
Resource rsc = project.getResources().add("Rsc");
rsc.set(Rsc.STANDARD_RATE, BigDecimal.valueOf(10));
rsc.set(Rsc.OVERTIME_RATE, BigDecimal.valueOf(15));
ResourceAssignment assn = project.getResourceAssignments().add(task, rsc);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(StopResumeAssignment.class);
Project prj = new Project(dataDir + "project5.mpp");
for (ResourceAssignment ra : prj.getResourceAssignments()) {
if (ra.get(Asn.STOP).toString() == "1/1/2000")
System.out.println("NA");
else
System.out.println(ra.get(Asn.STOP).toString());
if (ra.get(Asn.RESUME).toString() == "1/1/2000")
System.out.println("NA");
else
System.out.println(ra.get(Asn.RESUME).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TimephasedDataGeneration.class);
// Read the source MPP file
Project project = new Project(dataDir + "SampleFile.Mpp");
// Get the first task of the Project
Task task = project.getRootTask().getChildren().getById(1);
// Get the First Resource Assignment of the Project
ResourceAssignment firstRA = project.getResourceAssignments().toList().get(0);
// Flat contour is default contour
System.out.println("Flat contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.Turtle);
System.out.println("Turtle contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.BackLoaded);
System.out.println("BackLoaded contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.FrontLoaded);
System.out.println("FrontLoaded contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.Bell);
System.out.println("Bell contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.EarlyPeak);
System.out.println("EarlyPeak contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.LatePeak);
System.out.println("LatePeak contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// Change contour
firstRA.set(Asn.WORK_CONTOUR, WorkContourType.DoublePeak);
System.out.println("DoublePeak contour");
for (TimephasedData td : task.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE))) {
System.out.println(td.getStart().toString() + " " + td.getValue());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreateResources.class);
Project project = new Project();
Resource rsc = project.getResources().add("Rsc");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ExtendedResourceAttributes.class);
Project prj = new Project(dataDir + "project5.mpp");
Resource res = prj.getResources().toList().get(0);
ExtendedAttribute ea = new ExtendedAttribute();
ea.setFieldId("11");
ea.setValue("MyValueEA");
ea.setValueGuid("MyValueGuidEA");
res.getExtendedAttributes().add(ea);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(OvertimesResource.class);
Project prj = new Project(dataDir + "project5.mpp");
for (Resource res : prj.getResources()) {
if (res.get(Rsc.NAME) != null) {
System.out.println(res.get(Rsc.OVERTIME_COST));
System.out.println(res.get(Rsc.OVERTIME_WORK).toString());
System.out.println(res.get(Rsc.OVERTIME_RATE_FORMAT).toString());
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(PercentageCalculations.class);
Project prj = new Project(dataDir + "project5.mpp");
for (Resource res : prj.getResources()) {
if (res.get(Rsc.NAME) != null) {
System.out.println(res.get(Rsc.PERCENT_WORK_COMPLETE));
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadTimephasedData.class);
// Read Microsoft Project template file
String fileName = "SampleProject.mpp";
// Read the input file as Project
Project project = new Project(dataDir + "SampleProject.mpp");
// Get the Resource by its ID
Resource resource = project.getResources().getByUid(1);
// Print Timephased data of ResourceWork
System.out.println("Timephased data of ResourceWork");
for (TimephasedData td : resource.getTimephasedData(project.get(Prj.START_DATE),
project.get(Prj.FINISH_DATE))) {
System.out.println("Start: " + td.getStart().toString());
System.out.println(" Work: " + td.getValue());
}
// Print Timephased data of ResourceCost
System.out.println("Timephased data of ResourceCost");
for (TimephasedData td : resource.getTimephasedData(project.get(Prj.START_DATE), project.get(Prj.FINISH_DATE),
TimephasedDataType.ResourceCost)) {
System.out.println("Start: " + td.getStart().toString());
System.out.println(" Cost: " + td.getValue());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderResourceUsageandsheetView.class);
// Read the source Project
Project project = new Project(dataDir + "TASKSNET_33285.mpp");
// Define the SaveOptions
SaveOptions options = new PdfSaveOptions();
// Set the Presentation format to ResourceSheet
options.setPresentationFormat(PresentationFormat.ResourceSheet);
project.save("result.pdf", options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderResourceUsageandsheetView.class);
// Read the source Project
Project project = new Project(dataDir + "RenderMe.mpp");
// Define the SaveOptions with required TimeScale settings as Days
SaveOptions options = new PdfSaveOptions();
options.setTimescale(Timescale.Days);
// Set the Presentation format to ResourceUsage
options.setPresentationFormat(PresentationFormat.ResourceUsage);
String days = "result_days.pdf";
// Save the Project
project.save(days, options);
// Set the Tiemscale settings to ThirdsOfMonths
options.setTimescale(Timescale.ThirdsOfMonths);
String thirds = "result_thirdsOfMonths.pdf";
// Save the Project
project.save(thirds, options);
// Set the Timescale settings to Months
options.setTimescale(Timescale.Months);
String months = "result_months.pdf";
// Save the project
project.save(months, options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ResourceAndCalendars.class);
Project project = new Project(dataDir + "input.mpp");
ResourceCollection alRes = project.getResources();
for (Resource res : alRes) {
if (res.get(Rsc.NAME) != null) {
// code to display res.Calendar properties
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ResourceAndCalendars.class);
Project project = new Project();
Resource res = project.getResources().add("Resource1");
// add standard calendar
Calendar cal = project.getCalendars().add("Resource1");
res.set(Rsc.CALENDAR, cal);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ResourceCost.class);
Project prj = new Project(dataDir + "project5.mpp");
for (Resource res : prj.getResources()) {
if (res.get(Rsc.NAME) != null) {
System.out.println(res.get(Rsc.COST));
System.out.println(res.get(Rsc.ACWP));
System.out.println(res.get(Rsc.BCWS));
System.out.println(res.get(Rsc.BCWP));
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SetResourceProperties.class);
Project project = new Project();
Resource rsc = project.getResources().add("Rsc");
// Resource properties are represented by static class Rsc
// set resource properties
rsc.set(Rsc.STANDARD_RATE, BigDecimal.valueOf(15));
rsc.set(Rsc.OVERTIME_RATE, BigDecimal.valueOf(20));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WriteUpdatedResourceData.class);
String file = dataDir + "SampleNewMPP.mpp"; // Test file with one rsc to
// update
// File to write test project
String resultFile = dataDir + "OutputMPP.mpp";
Project project = new Project(file);
Resource rsc = project.getResources().add("Rsc");
rsc.set(Rsc.STANDARD_RATE, BigDecimal.valueOf(30));
rsc.set(Rsc.OVERTIME_RATE, BigDecimal.valueOf(45));
rsc.set(Rsc.GROUP, "Workgroup1");
// Save the Project
project.save(resultFile, SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(BaselineTaskScheduling.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project();
// Creating TaskBaseline:
Task task = project.getRootTask().getChildren().add("Task");
project.setBaseline(BaselineType.Baseline);
TaskBaseline baseline = task.getBaselines().toList().get(0);
System.out.println(baseline.getDuration().toDouble() / OneHour + " Hours");
System.out.println("Baseline Start: " + baseline.getStart());
System.out.println("Baseline Finish: " + baseline.getFinish());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreatingATaskBaseline.class);
Project project = new Project();
// Creating TaskBaseline:
Task task = project.getRootTask().getChildren().add("Task");
// set baseline for specified tasks
List<Task> myList = new ArrayList<Task>();
project.setBaseline(BaselineType.Baseline, (Iterable<Task>) myList);
// or set baseline for the entire project
project.setBaseline(BaselineType.Baseline);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TaskBaselineDuration.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project();
// Creating TaskBaseline:
Task task = project.getRootTask().getChildren().add("Task");
project.setBaseline(BaselineType.Baseline);
TaskBaseline baseline = task.getBaselines().toList().get(0);
System.out.println(baseline.getDuration().toDouble() / OneHour + " Hours");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ActualProperties.class);
Project project = new Project(dataDir + "E - 1 Task.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task task : collector.getTasks()) {
System.out.println("Task Name : " + task.get(Tsk.NAME));
System.out.println("Actual Start: " + task.get(Tsk.ACTUAL_START).toString());
System.out.println("Actual Finish: " + task.get(Tsk.ACTUAL_FINISH).toString());
System.out.println("Actual Duration: " + task.get(Tsk.ACTUAL_DURATION).toString());
System.out.println("Actual Cost: " + task.get(Tsk.ACTUAL_COST).toString());
System.out.println("---------------------------------------------");
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ChangeProgressOfTask.class);
Project project = new Project();
System.out.println(project.getCalculationMode());
Task task = project.getRootTask().getChildren().add("Task");
task.set(Tsk.DURATION, project.getDuration(2));
task.set(Tsk.PERCENT_COMPLETE, 50);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CreateTasks.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Summary1");
Task subtask = task.getChildren().add("Subtask1");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(CriticalAndEffortDrivenTasks.class);
Project project = new Project(dataDir + "input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
String strED = tsk.get(Tsk.IS_EFFORT_DRIVEN) != null ? "EffortDriven" : "Non-EffortDriven";
String strCrit = tsk.get(Tsk.IS_CRITICAL) != null ? "Critical" : "Non-Critical";
System.out.println(strED);
System.out.println(strCrit);
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(EstimatedMilestoneTasks.class);
Project project = new Project(dataDir + "input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
String strED = tsk.get(Tsk.IS_EFFORT_DRIVEN) != null ? "EffortDriven" : "Non-EffortDriven";
String strCrit = tsk.get(Tsk.IS_CRITICAL) != null ? "Critical" : "Non-Critical";
System.out.println(strED);
System.out.println(strCrit);
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ExtendedTaskAttributes.class);
Project project = new Project(dataDir + "Input.mpp");
for (Task tsk : project.getRootTask().getChildren()) {
for (ExtendedAttribute ea : tsk.getExtendedAttributes()) {
System.out.println(ea.getFieldId());
System.out.println(ea.getValue());
System.out.println(ea.getValueGuid());
}
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(HandlePriorities.class);
Project project = new Project(dataDir + "input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Handling Priorities:
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
System.out.println(tsk.get(Tsk.PRIORITY).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(HandleVariances.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task");
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 2, 15, 8, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
task.set(Tsk.DURATION, project.getDuration(2));
project.setBaseline(BaselineType.Baseline);
cal.set(2013, 11, 29, 8, 0, 0);
task.set(Tsk.START, cal.getTime());
cal.set(2013, 11, 27, 8, 0, 0);
task.set(Tsk.STOP, cal.getTime());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ManageDurations.class);
// Create a new project
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task");
// task duration in days (default time unit)
Duration duration = task.get(Tsk.DURATION);
System.out.println("Duration in Days" + duration.toString());
// convert to hours time unit
duration = duration.convert(TimeUnitType.Hour);
System.out.println("Duration in Hours" + duration.toString());
// get Duration instance
task.set(Tsk.DURATION, project.getDuration(1, TimeUnitType.Week));
System.out.println("1 wk" + task.get(Tsk.DURATION).toString());
// Decrease task duration
task.set(Tsk.DURATION, task.get(Tsk.DURATION).subtract(0.5));
System.out.println("0.5 wks" + task.get(Tsk.DURATION).toString());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ManageTaskCost.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task");
task.set(Tsk.COST, BigDecimal.valueOf(800));
System.out.println(task.get(Tsk.REMAINING_COST));
System.out.println(task.get(Tsk.FIXED_COST));
System.out.println(task.get(Tsk.COST_VARIANCE));
System.out.println(project.getRootTask().get(Tsk.COST));
System.out.println(project.getRootTask().get(Tsk.FIXED_COST));
System.out.println(project.getRootTask().get(Tsk.REMAINING_COST));
System.out.println(project.getRootTask().get(Tsk.COST_VARIANCE));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
Project project = new Project("Input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
System.out.println(tsk.get(Tsk.OUTLINE_LEVEL));
System.out.println(tsk.get(Tsk.OUTLINE_NUMBER));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(OvertimesInTasks.class);
// Create new project
Project project = new Project(dataDir + "Input.mpp");
for (Task tsk : project.getRootTask().getChildren()) {
System.out.println(tsk.get(Tsk.OVERTIME_COST));
System.out.println(tsk.get(Tsk.OVERTIME_WORK).toString());
System.out.println(tsk.get(Tsk.PERCENT_COMPLETE));
System.out.println(tsk.get(Tsk.PERCENT_WORK_COMPLETE).toString());
System.out.println(tsk.get(Tsk.PHYSICAL_PERCENT_COMPLETE).toString());
// set percent complete
tsk.set(Tsk.PERCENT_COMPLETE, 100);
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ParentAndChildTasks.class);
Project prj = new Project(dataDir + "ParentAndChildTask.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Use TaskUtils to get all children tasks in RootTask
TaskUtils.apply(prj.getRootTask(), collector, 0);
List tasks = collector.getTasks();
int iSize = tasks.size();
// Parse through all the collected tasks
for (int i = 0; i < iSize; i++) {
Task tsk = (Task) tasks.get(i);
System.out.println("Task Name = " + tsk.get(Tsk.NAME));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ParentAndChildTasks.class);
Project proj = new Project(dataDir + "Blank2010.mpp");
proj.set(Prj.NEW_TASKS_ARE_MANUAL, new NullableBool(false));
double oneDay = 8d * 60d * 60d * 10000000d;
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2014, 9, 13, 8, 0, 0);
Date startDate = cal.getTime();
proj.set(Prj.START_DATE, startDate);
Task task1 = proj.getRootTask().getChildren().add("Task 1");
cal.set(2014, 9, 13, 8, 0, 0);
task1.set(Tsk.START, cal.getTime());
task1.set(Tsk.DURATION, proj.getDuration(29, TimeUnitType.Day));
Task task2 = proj.getRootTask().getChildren().add("Task 2");
// add child tasks to task 2
Task task3 = task2.getChildren().add("Task 3");
Task task4 = task2.getChildren().add("Task 4");
cal.set(2014, 9, 15, 8, 0, 0);
task3.set(Tsk.START, cal.getTime());
task3.set(Tsk.DURATION, proj.getDuration(3, TimeUnitType.Day));
task3.set(Tsk.CONSTRAINT_TYPE, ConstraintType.StartNoEarlierThan);
task3.set(Tsk.CONSTRAINT_DATE, task3.get(Tsk.START));
cal.set(2014, 9, 17, 8, 0, 0);
task4.set(Tsk.START, cal.getTime());
task4.set(Tsk.DURATION, proj.getDuration(3, TimeUnitType.Day));
task4.set(Tsk.CONSTRAINT_TYPE, ConstraintType.StartNoEarlierThan);
task4.set(Tsk.CONSTRAINT_DATE, task3.get(Tsk.START));
task3.set(Tsk.PERCENT_COMPLETE, 50);
task4.set(Tsk.PERCENT_COMPLETE, 70);
proj.save(dataDir + "ProjectJava.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(PercentageCompleteCalculations.class);
Project project = new Project(dataDir + "Input.mpp");
TaskCollection alTasks = project.getRootTask().getChildren();
for (Task tsk : alTasks) {
System.out.println(tsk.get(Tsk.PERCENT_COMPLETE));
System.out.println(tsk.get(Tsk.PERCENT_WORK_COMPLETE).toString());
System.out.println(tsk.get(Tsk.PHYSICAL_PERCENT_COMPLETE).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadWriteGeneralProperties.class);
Project prj = new Project(dataDir + "project.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(prj.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
System.out.println("Task Id:" + tsk.get(Tsk.ID));
System.out.println("Task Uid: " + tsk.get(Tsk.UID));
System.out.println("Task Name: " + tsk.get(Tsk.NAME));
System.out.println("Task Start: " + tsk.get(Tsk.START));
System.out.println("Task Finish: " + tsk.get(Tsk.FINISH));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(ReadWriteGeneralProperties.class);
Project project = new Project();
Task task = project.getRootTask().getChildren().add("Task1");
// Set task start date
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2013, 7, 17, 8, 0, 0);
task.set(Tsk.START, cal.getTime());
// Set task name
task.set(Tsk.NAME, "new name");
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderTaskUsage.class);
Project project = new Project(dataDir + "Advanced Tracking C_Start.mpp"); // attached test project
// Default view in this mpp is TaskUsageView
UsageView view = (UsageView) project.getDefaultView();// as TaskUsageView;
// details header column will not be displayed
view.setDisplayDetailsHeaderColumn(false);
view.setRepeatDetailsHeaderOnAllRows(false);
view.setAlignDetailsData(StringAlignment.Near);
project.save("task usage1.pdf", SaveFileFormat.PDF);
// display details header column
view.setDisplayDetailsHeaderColumn(true);
// Repeat details header on all assignments rows
view.setRepeatDetailsHeaderOnAllRows(true);
view.setAlignDetailsData(StringAlignment.Far);
project.save("task usage2.pdf", SaveFileFormat.PDF);
project.save("task usage2.pdf", SaveFileFormat.PDF);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderTaskSheet.class);
Project project = new Project(dataDir + "NewProductDev.mpp");
SaveOptions options = new PdfSaveOptions();
options.setPresentationFormat(PresentationFormat.TaskSheet);
// See the result attached
project.save(dataDir + "taskSheet.pdf", options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderTaskUsage.class);
//Read the source Project
Project project = new Project(dataDir + "RenderMe.mpp");
//Define the SaveOptions with required TimeScale settings as Days
SaveOptions options = new PdfSaveOptions();
options.setTimescale(Timescale.Days);
//Set the Presentation format to ResourceUsage
options.setPresentationFormat(PresentationFormat.TaskUsage);
String days = "result_days.pdf";
//Save the Project
project.save(days, options);
//Set the Tiemscale settings to ThirdsOfMonths
options.setTimescale(Timescale.ThirdsOfMonths);
String thirds = "result_thirdsOfMonths.pdf";
//Save the Project
project.save(thirds, options);
//Set the Timescale settings to Months
options.setTimescale(Timescale.Months);
String months = "result_months.pdf";
//Save the project
project.save(months, options);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(RenderTaskUsage.class);
Project project = new Project(dataDir + "New Project 2010.mpp");
Task task = project.getRootTask().getChildren().add("Task 1");
// setting new subproject link
task.set(Tsk.SUBPROJECT_NAME, dataDir +"NewProductDev.mpp");
// you can see the result in the attached screenshot
project.save("Link.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SplitTaskFinishDate.class);
// Read project
String projectName = dataDir + "SplitTaskProject.mpp";
Project project = new Project(projectName);
// Find a split task
Task splitTask = project.getRootTask().getChildren().getByUid(1);
// Find the project calendar
Calendar calendar = project.get(Prj.CALENDAR);
// Calculate task's finish date with different durations
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 8 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 8d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 16 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 16d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 24 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 24d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 28 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 28d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 32 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 32d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 46 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 46d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 61 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 61d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 75 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 75d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 80 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 80d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 120 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 120d));
System.out.println("Start Date: " + splitTask.get(Tsk.START) + "\n+ Duration 150 hours\nFinish Date: "
+ calendar.getTaskFinishDateFromDuration(splitTask, 150d));
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(SplitTasks.class);
// Create new project
Project splitTaskProject = new Project();
// Get a standard calendar
Calendar calendar = splitTaskProject.get(Prj.CALENDAR);
// Set project's calendar settings
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2011, 3, 15, 8, 0, 0);
splitTaskProject.set(Prj.START_DATE, cal.getTime());
cal.set(2011, 3, 21, 17, 0, 0);
splitTaskProject.set(Prj.FINISH_DATE, cal.getTime());
// root task
Task rootTask = splitTaskProject.getRootTask();
rootTask.set(Tsk.NAME, "Root");
// Add a new task
Task taskToSplit = rootTask.getChildren().add("Task1");
taskToSplit.set(Tsk.DURATION, splitTaskProject.getDuration(3));
// Create a new resource assignment
ResourceAssignment splitResourceAssignment = splitTaskProject.getResourceAssignments().add(taskToSplit, null);
// Generate resource assignment timephased data
splitResourceAssignment.timephasedDataFromTaskDuration(calendar);
// Split the task into 3 parts.
// Provide start date and finish date arguments to SplitTask method
// These dates will be used for split
// Set project's calendar settings
cal = java.util.Calendar.getInstance();
java.util.Calendar cal2 = java.util.Calendar.getInstance();
cal.set(2011, 3, 16, 8, 0, 0);
cal2.set(2011, 3, 16, 17, 0, 0);
splitResourceAssignment.splitTask(cal.getTime(), cal2.getTime(), calendar);
cal.set(2011, 3, 18, 8, 0, 0);
cal2.set(2011, 3, 18, 17, 0, 0);
splitResourceAssignment.splitTask(cal.getTime(), cal2.getTime(), calendar);
splitResourceAssignment.set(Asn.WORK_CONTOUR, WorkContourType.Contoured);
// Save the Project
splitTaskProject.save(dataDir + "Project.Xml", SaveFileFormat.XML);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
String dataDir = Utils.getDataDir(StopAndResumeTask.class);
Project project = new Project(dataDir + "input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Stop and Resume
for (Task tsk : collector.getTasks()) {
if (tsk.get(Tsk.STOP).toString() == "1/1/2000")
System.out.println("NA");
else
System.out.println(tsk.get(Tsk.STOP).toString());
if (tsk.get(Tsk.RESUME).toString() == "1/1/2000")
System.out.println("NA");
else
System.out.println(tsk.get(Tsk.RESUME).toString());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TaskBudgetWorkAndCost.class);
Project project = new Project(dataDir + "input.mpp");
Task projSummary = project.getRootTask();
System.out.println("projSummary.BudgetWork = " + projSummary.get(Tsk.BUDGET_WORK));
System.out.println("projSummary.BudgetCost = " + projSummary.get(Tsk.BUDGET_COST));
// Get resource by Uid
Resource rsc = project.getResources().getByUid(1);
// Display resource budget work
System.out.println("Resource BudgetWork = " + rsc.get(Rsc.BUDGET_WORK));
// Get next resource by Uid
rsc = project.getResources().getByUid(2);
// Display resource budget cost
System.out.println("Resource BudgetCost = " + rsc.get(Rsc.BUDGET_COST));
for (ResourceAssignment assn : projSummary.getAssignments()) {
if (assn.get(Asn.RESOURCE).get(Rsc.TYPE) == ResourceType.Work)
System.out.println("Assignment BudgetWork = " + assn.get(Asn.BUDGET_WORK));
else
System.out.println("Assignment BudgetCost = " + assn.get(Asn.BUDGET_COST));
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TaskDurationInDifferentUnits.class);
// Read MS Project template file
String fileName = dataDir + "SampleProject.mpp";
// Read the input file as Project
Project project = new Project(fileName);
// Get a task to calculate its duration in different formats
Task task = project.getRootTask().getChildren().getById(1);
// Get the duration in Minutes
double mins = task.get(Tsk.DURATION).convert(TimeUnitType.Minute).toDouble();
// Get the duration in Days
double days = task.get(Tsk.DURATION).convert(TimeUnitType.Day).toDouble();
// Get the duration in Hours
double hours = task.get(Tsk.DURATION).convert(TimeUnitType.Hour).toDouble();
// Get the duration in Weeks
double weeks = task.get(Tsk.DURATION).convert(TimeUnitType.Week).toDouble();
// Get the duration in Months
double months = task.get(Tsk.DURATION).convert(TimeUnitType.Month).toDouble();
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TasksAndCalendars.class);
// create a project instance
Project prj = new Project(dataDir + "project5.mpp");
// Declare ChildTasksCollector class object
ChildTasksCollector collector = new ChildTasksCollector();
// Use TaskUtils to get all children tasks in RootTask
TaskUtils.apply(prj.getRootTask(), collector, 0);
// Parse all the recursive children
for (Task tsk : collector.getTasks()) {
Calendar tskCal = tsk.get(Tsk.CALENDAR);
System.out.println("Task calendar name:" + tskCal.getName());
}
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TasksAndCalendars.class);
Project project = new Project();
Task tsk = project.getRootTask().getChildren().add("Task1");
// add a standard calendar
Calendar cal = project.getCalendars().add("TaskCal1");
tsk.set(Tsk.CALENDAR, cal);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(TaskTimephasedData.class);
Project project = new Project(dataDir + "New project 2010.mpp");
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2013, 7, 17, 8, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
project.set(Prj.NEW_TASKS_ARE_MANUAL, new NullableBool(false));
Task task = project.getRootTask().getChildren().add("Task");
Resource rsc = project.getResources().add("Rsc");
rsc.set(Rsc.STANDARD_RATE, BigDecimal.valueOf(10));
rsc.set(Rsc.OVERTIME_RATE, BigDecimal.valueOf(15));
// 6 days duration
task.set(Tsk.DURATION, project.getDuration(6));
ResourceAssignment assn = project.getResourceAssignments().add(task, rsc);
Date d = new Date(0);
assn.set(Asn.STOP, new Date(0));
assn.set(Asn.RESUME, new Date(0));
// backloaded contour increases task duration from 6 to 10 days
assn.set(Asn.WORK_CONTOUR, WorkContourType.BackLoaded);
project.setBaseline(BaselineType.Baseline);
task.set(Tsk.PERCENT_COMPLETE, 50);
List<TimephasedData> td = assn.getTimephasedData(assn.get(Asn.START), assn.get(Asn.FINISH),
TimephasedDataType.AssignmentRemainingWork).toList();
System.out.println(td.size());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
System.out.println(td.get(0).getValue());
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(UpdatedTaskLinkDataToMpp.class);
long OneSec = 10000000;// microsecond * 10
long OneMin = 60 * OneSec;
long OneHour = 60 * OneMin;
Project project = new Project(dataDir + "Aspose\\SampleNewMSP.mpp");
Task task1 = project.getRootTask().getChildren().add("First task");
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(2013, 12, 10, 8, 0, 0);
project.set(Prj.START_DATE, cal.getTime());
task1.set(Tsk.START, cal.getTime());
task1.set(Tsk.DURATION, project.getDuration(OneHour * 24, TimeUnitType.Hour));
Task summary = project.getRootTask().getChildren().add("Summary task");
summary.getChildren().add(task1);
project.getRootTask().getChildren().add(summary);
cal.setTime(task1.get(Tsk.START));
cal.add(java.util.Calendar.DATE, 10);
task1.set(Tsk.DEADLINE, cal.getTime());
task1.set(Tsk.NOTES_TEXT, "The first task.");
task1.set(Tsk.DURATION_FORMAT, TimeUnitType.DayEstimated);
task1.set(Tsk.CONSTRAINT_TYPE, ConstraintType.FinishNoLaterThan);
cal.setTime(task1.get(Tsk.DEADLINE));
cal.add(java.util.Calendar.DATE, -1);
task1.set(Tsk.CONSTRAINT_DATE, cal.getTime());
// Create 10 new tasks
for (int i = 0; i < 10; i++) {
String taskName = "Task " + (i + 2);
Task task = summary.getChildren().add(taskName);
task.set(Tsk.START, task1.get(Tsk.START));
long lDuration = (long) task1.get(Tsk.DURATION).toDouble();
lDuration = (long) (lDuration + (OneHour * 8 * (i + 1)));
task.set(Tsk.DURATION, project.getDuration(lDuration, TimeUnitType.Hour));
task1.set(Tsk.DURATION_FORMAT, TimeUnitType.Day);
cal.setTime(task1.get(Tsk.DEADLINE));
cal.add(java.util.Calendar.DATE, 1 + i);
task.set(Tsk.DEADLINE, cal.getTime());
task.set(Tsk.FINISH,
project.get(Prj.CALENDAR).getFinishDateByStartAndWork(task.get(Tsk.START), task.get(Tsk.DURATION)));
summary.getChildren().add(task);
}
// Save the Project
project.save(dataDir + "Aspose\\WritingUpdatedTaskDataToMpp.mpp", SaveFileFormat.MPP);
// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// The path to the documents directory.
String dataDir = Utils.getDataDir(WbsAssociatedWithTask.class);
Project project = new Project(dataDir + "input.mpp");
// Create a ChildTasksCollector instance
ChildTasksCollector collector = new ChildTasksCollector();
// Collect all the tasks from RootTask using TaskUtils
TaskUtils.apply(project.getRootTask(), collector, 0);
// Parse through all the collected tasks
for (Task tsk : collector.getTasks()) {
System.out.println(tsk.get(Tsk.WBS));
System.out.println(tsk.get(Tsk.WBS_LEVEL));
// set custom WBS
tsk.set(Tsk.WBS, "custom wbs");
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment