Skip to main content
Solved

Transport Task Report and Custom Fields

  • October 3, 2025
  • 1 reply
  • 71 views

Forum|alt.badge.img+9

Why doesn’t the Transport Task report support custom fields at the line level?

I was trying to use Report Designer instead of updating our existing Crystal Report since it’s going away, but found it doesn’t support custom fields at the line level of the Transport Task report. I tried everything I could think of and then finally looked at the report package and found

 --Xml_Record_Writer_SYS.Add_Custom_Fields(xml_, 'TransportTaskLine', rec_line_.objkey, 'TRANSPORT_TASK_REP', language_code_);  -- removed since we cant support custom fields here 

If IFS really wants us to move away from Crystal they need to support this basic use case.

This is for Apps 10 Update 22

Best answer by Tracy Norwillo

@Lane  

The reason that this report doesn’t support custom fields at the Transport line level is both simple and complicated.  

Simply put, we must use the objkey to bring custom fields into a report.  The cursor that gets the data must pass that objkey into the Xml_Record_Writer_SYS.Add_Custom_Fields at the proper granularity to ensure that the results are accurate.

You saw that at some point, the report included the objkey in the cursor that fetches line level data.  

--Xml_Record_Writer_SYS.Add_Custom_Fields(xml_, 'TransportTaskLine', rec_line_.objkey, 'TRANSPORT_TASK_REP', language_code_);  -- removed since we cant support custom fields here 

If I look at the report history notes, I can see that the custom field support was removed because it breaks the serial grouping.  

If I look at the current get_line cursor code, I can see that objkey is not included.  The cursor fetches data in two unions, one to get the records without serial numbers (“*”) and one to get the records with serial numbers.  For this second fetch, the actual serial numbers are omitted and the records are summed and grouped. (the serials numbers are added back at a later step)  If the objkeys were included here, it would break that grouping.

With that being said, I think you’d need to customize the report to fetch the objkeys in a separate cursor or add a custom “C_” (not configured) field to the transport task line, then add those to existing cursor.  But in either case, you’d still need to ensure that you don’t break the line grouping in the report.  You want the quantity that shows on the report to be accurate.  

Both of the above customization tasks are complicated and require the use of the IFS Developer Studio to achieve.  

And you’re right, not all reports support custom configured (CF$_) fields.  It all depends on how the data is being fetched.

p.s. don’t shoot the messenger.

1 reply

Forum|alt.badge.img+14
  • Superhero (Partner)
  • Answer
  • October 27, 2025

@Lane  

The reason that this report doesn’t support custom fields at the Transport line level is both simple and complicated.  

Simply put, we must use the objkey to bring custom fields into a report.  The cursor that gets the data must pass that objkey into the Xml_Record_Writer_SYS.Add_Custom_Fields at the proper granularity to ensure that the results are accurate.

You saw that at some point, the report included the objkey in the cursor that fetches line level data.  

--Xml_Record_Writer_SYS.Add_Custom_Fields(xml_, 'TransportTaskLine', rec_line_.objkey, 'TRANSPORT_TASK_REP', language_code_);  -- removed since we cant support custom fields here 

If I look at the report history notes, I can see that the custom field support was removed because it breaks the serial grouping.  

If I look at the current get_line cursor code, I can see that objkey is not included.  The cursor fetches data in two unions, one to get the records without serial numbers (“*”) and one to get the records with serial numbers.  For this second fetch, the actual serial numbers are omitted and the records are summed and grouped. (the serials numbers are added back at a later step)  If the objkeys were included here, it would break that grouping.

With that being said, I think you’d need to customize the report to fetch the objkeys in a separate cursor or add a custom “C_” (not configured) field to the transport task line, then add those to existing cursor.  But in either case, you’d still need to ensure that you don’t break the line grouping in the report.  You want the quantity that shows on the report to be accurate.  

Both of the above customization tasks are complicated and require the use of the IFS Developer Studio to achieve.  

And you’re right, not all reports support custom configured (CF$_) fields.  It all depends on how the data is being fetched.

p.s. don’t shoot the messenger.