| Quintiq file version 2.0 | 
| #parent: #root | 
| StaticMethod GenerateData ( | 
|   InterfaceDataset interfaceDataset, | 
|   const MacroPlan macroplan, | 
|   String executor | 
| ) | 
| { | 
|   Description: '生成可以下发的客户需求(PPA+IDS)数据' | 
|   TextBody: | 
|   [* | 
|     // 甄兰鸽 Aug-20-2024 (created) | 
|     loginfo                := maxobject(  interfaceDataset, InterfaceLoginfo, loginfo, loginfo.Name() = Translations::InterfaceDataset_CustomerDemandPPAIDS_Name(), loginfo.InterfaceDateTime() ); | 
|     if( not isnull( loginfo ) ){ | 
|       if( not loginfo.IsShow() ){ | 
|         loginfo.Delete(); | 
|       }else{ | 
|         loginfo.Last( false ); | 
|       } | 
|       interfaceDataset.CustomerDemandPPAIDS( relflush ); | 
|     } | 
|     nowdate                := DateTime::ActualTime(); | 
|     loginfo                := interfaceDataset.InterfaceLoginfo( relnew, ExecuteUser         := executor | 
|                                                                  , Name                      := Translations::InterfaceDataset_CustomerDemandPPAIDS_Name() | 
|                                                                  , InterfaceDateTime         := nowdate | 
|                                                                  , Message                   := '客户需求(PPA+IDS)数据推送' | 
|                                                                  , Last                      := true | 
|                                                                   ); | 
|     traverse( interfaceDataset, CustomerDemandIDS.Row, row ){ | 
|       traverse( row, Cell, cell ){ | 
|         cd                  :=interfaceDataset.CustomerDemandPPAIDS( relnew, Product           := row.Name() | 
|                                                                      , DemandDate              := cell.Column().StartDate() | 
|                                                                      , DemandQty               := [Number]cell.Value() | 
|                                                                      , VersionName             := macroplan.ScenarioName() | 
|                                                                      , InterfaceTime           := nowdate | 
|                                                                      , FactoryName             := row.Factory() | 
|                                                                      , Fac                     := ifexpr( row.Factory() = FinancialProductionReport::GetDefaultCCUnit(), 'CC', 'DL' )   | 
|     //                                                                 , VersionFlag             := versionflag | 
|                                                                      ); | 
|         loginfo.CustomerDemandPPAIDS( relinsert, cd ); | 
|       } | 
|     } | 
|     loginfo.TotalRow( loginfo.CustomerDemandPPAIDS( relsize ) ); | 
|     CustomerDemandPPAIDS::Publish( interfaceDataset, loginfo ); | 
|   *] | 
| } |