| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod AsyncExport ( | 
|   RecycleBin recycleBin, | 
|   const constcontent Units rows, | 
|   const constcontent Period_MPs columns | 
| ) | 
| { | 
|   TextBody: | 
|   [* | 
|     // rislai Jun-20-2024 (created) | 
|     sortColumns := selectsortedset( columns,Elements,column,true,column.StartDate()); | 
|      | 
|     attributeNames := ShiftPlan::GetAttributeNames(); | 
|      | 
|     columnstring := emit( "" ); | 
|     flag := true; | 
|     traverse( sortColumns,Elements,sortColumn ){ | 
|       if( flag ){ | 
|         attributeXML := rows -> ShiftPlan::GetShiftPlanColumnXML( sortColumn,attributeNames,"attribute" ); | 
|         columnstring := columnstring.Merge( attributeXML ) | 
|         flag := false; | 
|       } | 
|        | 
|       cellxml := rows -> ShiftPlan::GetShiftPlanColumnXML( sortColumn,attributeNames ,"data"); | 
|       columnstring := columnstring.Merge( cellxml); | 
|     } | 
|       | 
|     columnstring -> GroupAll() -> ExportXMLManager::AwaitShiftPlanXMLData( recycleBin ); | 
|   *] | 
| } |