Task progress not included when opening with MS Project

One of our customers cannot see the progress of tasks when opening the export on Windows with MS Project. It’s working fine with Project Viewer 365 on Mac OS.
Attached is one of the exports that doesn’t display the progress on the customer’s machine.

We are using version 22.12.0 of the @asposecloud/aspose-tasks-cloud Node library.
Is there anything we can try to fix the issue?

Tims Testprojekt 2_30-11-2023.mpp.zip (31.3 KB)

@lasse.steffen

We have logged a ticket(TASKSCLOUD-805) in our issue tracking system for investigation. Meanwhile, we will appreciate it if you please share your input file as well. It will help us address the issue exactly.

Attached are another export and the corresponding XML.
aspose.zip (45.4 KB)

@lasse.steffen

Thanks for sharing the sample input XML file. It will help us address your reported issue exactly.

Are there any updates regarding the issue?

@lasse.steffen

I am afraid your shared archive mpp file has no tasks with non-zero actual duration or actual work. So it is unclear which tasks are expected to make progress?

Whereas, we have noticed that your first file(Tims Testprojekt 2_30-11-2023.mpp) contains a task ‘Abbau’ that has a non-zero actual duration and the progress is not shown in MS Project. So we need an original (xml) file and the code used to save this mpp file to investigate the issue.

I’ve attached the intermediary outputs of the export (see .zip) and the code itself below. Let me know if anything else is needed. The filenames in the .zip match those from the code.
files.zip (47.7 KB)

public async recalculateXML(buffer: Buffer): Promise<Buffer> {
    const tasksApi = await this.getTasksApi();
    const fileName = `${uuidv4()}.xml`;
    const result = await tasksApi.uploadFile({
      file: buffer,
      path: fileName,
      storageName: ASPOSE_STORAGE,
    });

    await tasksApi.uploadFile({
      file: buffer,
      path: `debug_${fileName}`,
      storageName: ASPOSE_STORAGE,
    });

    if (result.body.errors.isNotEmpty) {
      throw result.body.errors[0];
    }

    const recalculated = 'recalc_' + fileName;

    // calculates durations correctly
    const recalculationResult = await tasksApi.putRecalculateProject({
      name: fileName,
      mode: CalculationMode.Automatic,
      validate: false,
      fileName: recalculated,
      folder: DEFAULT_ASPOSE_FOLDER,
      storage: ASPOSE_STORAGE,
    });

    if (recalculationResult.body.result.validationErrorMessage) {
      throw new Error(recalculationResult.body.result.validationErrorMessage);
    }

    // download converted file
    const recalulatedXML = await tasksApi.getTaskDocumentWithFormat({
      name: recalculated,
      folder: DEFAULT_ASPOSE_FOLDER,
      storage: ASPOSE_STORAGE,
      format: ProjectFileFormat.Xml,
      returnAsZipArchive: false,
    });

    return recalulatedXML.body;
  }

  private async getTasksApi(): Promise<TasksApi> {
    if (this.tasksApi) return this.tasksApi;

    const params = await this.secretsManagementService.getJSONParameter<AsposeCredentials>(
      ASPOSE_API_KEY_SSM_PARAMETER,
    );
    this.tasksApi = new TasksApi(params.clientId, params.clientSecret);
    return this.tasksApi;
  }

@lasse.steffen

Thanks for sharing additional information. We will further investigate the issue and will share our findings with you accordingly.

Are there any new updates?

@lasse.steffen

We noticed that, the newly attached file (‘MSP Export_22-01-2024.mpp’) doesn’t have tasks with progress (i.e., actual work present or % Complete greater than 0).
Thus, recalculating the project and saving it in XML format doesn’t cause the progress to appear. Maybe we have a different understanding of the phrase “One of our customers cannot see the progress of tasks when opening the export on Windows with MS Project.” Could you please share the expected output or describe the expected result in more detail?