In the MSP New Driver, Incorrect Rate Dates Prevent Projects from Opening

Document ID : KB000006930
Last Modified Date : 22/05/2018
Show Technical Document Details
Issue:

When attempting to open a project in Microsoft Project (MSP) using the New Driver, MSP throws a 'SchedLink MFC Application has stopped working' error. At times, this error is preceded with other errors such as "The last time you opened 'PRJ00088.xml', it caused a serious error. Do you still want to open it? " and "These tasks can't be linked because they're already linked through another task chain." 

These errors occurs when another resource/role has been staffed on the project Team after the Rate Matrix Extraction job has already run and there are already records in the nbi_proj_res_rates_and_costs for other resources/roles on that project. 

Steps to Reproduce:

0. Make sure that the on the fly Rate Matrix Extraction job is turned off: 

This query should return 0. 

select value from cmn_option_values

where option_id = (select id from cmn_options where option_code='PRJ_RT_RATES_EXTRACTION');

1. Create a rate matrix including the dates between 1/1/1990 - 12/31/2017 for all resources

2. Create a project and associated it to a rate matrix. 

3. Staff 1 team member to the project

4. Export the project to MSP

5. Open the project XML in notepad and note that the rate dates go from the years 1984-1990 and 1990-2079. 

<Rates>

     <Rate>

          <RatesFrom>1984-01-01T00:00:00</RatesFrom>

          <RatesTo>1990-02-01T00:00:00</RatesTo>

 ...

    </Rate>

    <Rate>

          <RatesFrom>1990-02-01T00:00:00</RatesFrom>

          <RatesTo>2079-02-01T00:00:00</RatesTo>

          ...

     </Rate>

</Rates>

6. Run the Rate Matrix Extraction job with the first 3 options checked

7. Export the project to MSP. The project opens.

Notice how the dates on the rates for this first role are as expected:

<Rates>

        <Rate>

          <RatesFrom>1984-01-01T00:00:00</RatesFrom>

          <RatesTo>1990-01-01T00:00:00</RatesTo>

          ... 

        </Rate>

        <Rate>

          <RatesFrom>1990-01-01T00:00:00</RatesFrom>

          <RatesTo>2018-01-01T00:00:00</RatesTo>

          ...

        </Rate>

      </Rates>

8. Close the project in MSP

9. In PPM, add one more resource/role to the team

10. Export the project to MSP

Expected Results: The project opens successfully in MSP and the newly added resource (from Step 8) has rate dates for the years between 1984-1990 and 1990-2079 as the initial role had after Step 5. 

Actual Results: The project attempts to open, but then throws a 'SchedLink MFC Application has stopped working' error.

Notice how the dates on the rates are 1984-1900 and 1900-2079 for the second resource/role:

      <Rates>

        <Rate>

          <RatesFrom>1984-01-01T00:00:00</RatesFrom>

          <RatesTo>1900-01-01T00:00:00</RatesTo>

          ...

        </Rate>

        <Rate>

          <RatesFrom>1900-01-01T00:00:00</RatesFrom>

          <RatesTo>2079-06-03T00:00:00</RatesTo>

          ...

        </Rate>

      </Rates>

Environment:
CA PPM 15.1 and 15.2 MSP New Driver
Cause:

Caused by DE34986

Resolution:

DE34986 is fixed in CA PPM 15.3 and 15.2 Patch 5 and higher. 

Workaround: Run the Rate Matrix Extraction (RME) job with the first 3 options checked after adding the second resource. 

Additional Information:

TEC1459444: CA PPM and MSP Integration – Support Technical Document Index

TEC1544936: CA PPM and MSP integration known defects - Support Technical Document Index

TEC474741: What does the Rate Matrix Extraction job do and how is it used?

TEC439334: On the 'Rate Matrix Extraction' job page, what do the parameters 'Prepare Rate Matrix Data' and 'Update Rate Matrix Data' do?

TEC439203: On the 'Rate Matrix Extraction' job page, what does the parameter 'Extract Cost and Rate Information for the Scheduler' do ?

TEC528729: Configuring and Scheduling some of the main jobs

TEC1422044: What are the various types of logging available in the MSP New Driver?

CA PPM 15.2 and Jaspersoft Cumulative Patch README Files for OnDemand and OnPremise