limj
2023-10-07 2b1ef6e8b1faae2d9f73a426c7318eb909efeb39
优先级因子菜单
已修改19个文件
已添加7个文件
351 ■■■■ 文件已修改
_Main/BL/Type_PriorityFactor/StaticMethod_GetCoeffcientByName.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityFactor/StaticMethod_GetNameList.qbl 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityPolicy/StaticMethod_GetCalcFormula.qbl 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityPolicy/StaticMethod_GetCalcStr.qbl 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityPolicy/StaticMethod_RollBackCalcStr.qbl 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityPolicy/StaticMethod_RollBackStr.qbl 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityResult/StaticMethod_GetRemindFormula.qbl 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_DialogEditPriorityFactor/Method_New.def 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuDel_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuNew_OnClick.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Component_ListPriorityPolicy.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Component_PanelPriorityPolicyOperation.def 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_DataHolderPriorityPolicy_OnCreated.def 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_DataHolderPriorityPolicy_OnDataChanged.def 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnCreated.def 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/_ROOT_Component_FormPriorityPolicy.def 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
_Main/BL/Type_PriorityFactor/StaticMethod_GetCoeffcientByName.qbl
@@ -11,7 +11,7 @@
    // NBoTk Sep-21-2023 (created)
    
    data := selectobject( owner,PriorityFactor,p,
                          p.BusinessType() = businessType and p.Name() = name
                           p.Name() = name
                          )
    
    return data.Coefficient();
_Main/BL/Type_PriorityFactor/StaticMethod_GetNameList.qbl
@@ -11,7 +11,6 @@
    value := "";
    
    strList := selectuniquevalues(  owner,PriorityFactor,p,
                                   p.BusinessType() = businessType,
                                    p.Name()
                                   );
    
_Main/BL/Type_PriorityFactor/StaticMethod_InitData.qbl
@@ -1,8 +1,7 @@
Quintiq file version 2.0
#parent: #root
StaticMethod InitData (
  MacroPlan owner,
  String businessType
  MacroPlan owner
)
{
  TextBody:
@@ -10,6 +9,14 @@
    // NBoTk Sep-15-2023 (created)
    // businessType
    // result := "集团面板;专业显示事业部;外卖CELL;非显;运动健康;运动健康事业部;手机事业部;特种显示;汽车电子事业部;车载显示事业部;IT事业部";
    businessType := "";
    // å¦‚果已经存在优先级数据 åˆ™ä¸åšå¤„理
    list := selectset( owner,PriorityFactor,p,true);
    if( list.Size() = 0 )
    {
    // æ·»åŠ äº‹ä¸šéƒ¨å¯¹åº”çš„é¢„åˆ¶ä¼˜å…ˆçº§å› å­æ•°æ®
    owner.PriorityFactor(relnew,Name := "客户策略" ,Desc := "将事业部计算的优先级,按该细分项比例阶梯确定该项得分。如:81%≤X≤100% 5分,61%≤X≤80% 4分", BusinessType := businessType );
    owner.PriorityFactor(relnew,Name := "客户等级" ,Desc := "根据需求数据中客户,匹配客户等级",BusinessType := businessType);
@@ -30,5 +37,7 @@
    {
        PriorityFactorDetails::InitData( owner,e); 
    }
    }
  *]
}
_Main/BL/Type_PriorityPolicy/StaticMethod_GetCalcFormula.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetCalcFormula (
  MacroPlan macroPlan,
  String formula
) as String
{
  TextBody:
  [*
    // NBoTk Oct-7-2023 (created)
    priorityFactor := null( PriorityFactor);
    traverse( macroPlan,PriorityFactor,p)
    {
         if( formula.StartsWith( p.Name()) )
         {
            priorityFactor := p;
         }
    }
    value := priorityFactor.Name() + "[" + [String]priorityFactor.Coefficient() +"*L]";
    return value;
  *]
}
_Main/BL/Type_PriorityPolicy/StaticMethod_GetCalcStr.qbl
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,94 @@
Quintiq file version 2.0
#parent: #root
StaticMethod GetCalcStr (
  MacroPlan macroPlan,
  String formula,
  String lastCalcStr
) as String
{
  TextBody:
  [*
    // NBoTk Oct-7-2023 (created)
    calcStr := "";
    remindFormula := formula;
    // éåŽ†ä¼˜å…ˆçº§å› å­é…ç½®
    if( not remindFormula = '' )
    {
                  // ä»Žèµ·å§‹ä½ç½®å¼€å§‹åŒ¹é…
            if(remindFormula.StartsWith( "+" ))
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + "+" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else if( remindFormula.StartsWith( "-" ))
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + "-" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else if( remindFormula.StartsWith( "*" ) )
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + "*" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else if( remindFormula.StartsWith( "/" ) )
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + "/" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else if( remindFormula.StartsWith( "(" ) )
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + "{" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else if( remindFormula.StartsWith( ")" ) )
            {
                remindFormula := remindFormula.SubString( 1,remindFormula.Length()-1);
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                calcStr := lastCalcStr + ")" + calcStr;
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
            else
            {
                // ä¸æ˜¯ç¬¦å· ç›´æŽ¥èŽ·å–è®¡ç®—åŽçš„æ•°å€¼
                calcStr := PriorityPolicy::GetCalcFormula(macroPlan,remindFormula);
                // æˆªå–掉已经计算的优先级因子 é€’归计算
                remindFormula := PriorityResult::GetRemindFormula( remindFormula,macroPlan);
                PriorityPolicy::GetCalcStr(  macroPlan,remindFormula,calcStr);
            }
    }
    return calcStr;
  *]
}
_Main/BL/Type_PriorityPolicy/StaticMethod_RollBackCalcStr.qbl
@@ -28,7 +28,7 @@
        } 
    }
    
    nameList := PriorityFactor::GetDataByBusinessType(  owner,businessType);
    nameList := PriorityFactor::GetDataByBusinessType(  owner,"");
    traverse( nameList,Elements,e)
    {
        nameText := e.Name() + "[" + [String]e.Coefficient() + "*L]"
_Main/BL/Type_PriorityPolicy/StaticMethod_RollBackStr.qbl
@@ -10,7 +10,6 @@
  [*
    // NBoTk Sep-21-2023 (created)
    value := stringData;
    symbolList := construct( structured[String]);
    symbolList.Add( "+")
    symbolList.Add( "-")
@@ -28,7 +27,7 @@
        } 
    }
    
    nameList := PriorityFactor::GetDataByBusinessType(  owner,businessType);
    nameList := PriorityFactor::GetDataByBusinessType(  owner,"");
    traverse( nameList,Elements,e)
    {
        if( stringData.EndsWith( e.Name()))
@@ -37,7 +36,6 @@
             value := stringData.SubString( 0,end);
        } 
    }
    return value;
  *]
}
_Main/BL/Type_PriorityResult/StaticMethod_CalculateScore.qbl
@@ -17,7 +17,6 @@
    remindFormula := formula;
    
    // éåŽ†ä¼˜å…ˆçº§å› å­é…ç½®
    if( not remindFormula = '' )
    {
            // ä»Žèµ·å§‹ä½ç½®å¼€å§‹åŒ¹é… 
@@ -70,7 +69,7 @@
                PriorityResult::CalculateBracketScore(calcStr,customerOrder,businessType,macroPlan,globalOTDTable);
                
                // æˆªå– ) åŽçš„字符继续进行计算
                remindFormula := remindFormula.SubString( rightBracket,remindFormula.Length());
                remindFormula := remindFormula.SubString( rightBracket,remindFormula.Length()-1);
            }
            else
            {
@@ -83,6 +82,6 @@
    }
    
    // æ²¡æœ‰åŒ¹é… å…¬å¼è®¡ç®—完成
    return lastScore;
    return score;
  *]
}
_Main/BL/Type_PriorityResult/StaticMethod_GetRemindFormula.qbl
@@ -27,7 +27,6 @@
         }
    }
    
    info( "remindStr = " + str );
    return str;
  *]
}
_Main/BL/Type_PriorityResult/StaticMethod_calculatePriorityResult.qbl
@@ -16,7 +16,6 @@
    {
         // äº‹ä¸šéƒ¨ä¿¡æ¯
         businessType := e.BusinessType();
         //businessType :=  "手机事业部";
         
         // èŽ·å–å¯¹åº”äº‹ä¸šéƒ¨è®¡ç®—å…¬å¼
         priorityPolicys := selectobject( macroPlan,PriorityPolicy,p,p.BusinessType() = businessType and p.Name() = priorityPolicyName);
@@ -24,7 +23,6 @@
         
         // é€’归处理计算公式 èŽ·å–å½“å‰è®¢å•çš„å¾—åˆ†
         value := PriorityResult::CalculateScore( formula,e,businessType,macroPlan,0.0,globalOTDTable);
         // ç”Ÿæˆä¼˜å…ˆçº§å› å­è·‘分结果
         priorityResult := macroPlan.PriorityResult(relnew,CustomerOrderID := e.ID(),BusinessType := businessType,Customer := e.CustomerName(),CustomerID := e.CustomerID(),
                                                     DemandDate := e.EndDate(),ProductID := e.ProductID(),Quantity := e.Quantity(),SalesSegmentName := e.SalesSegmentName(),
@@ -56,6 +54,10 @@
                                   result.PriorityResultScore()
                                   )
    
    // Quintiq优先级分10级 éœ€è¦åˆ†æ®µè®¡ç®—
    subLevel := resultList.Size() div 10;
    subLevelCount := 0;
    priorityValue := 1;
    traverse( resultList,Elements,e)
    {
@@ -70,15 +72,24 @@
              
              // åˆ›å»ºä¼˜å…ˆçº§æ•°æ® éœ€è¦å…ˆæ¸…除上一次的计算结果
              // åˆ¤æ–­å½“前customerOrder是否存在
              oldPriority := selectobject( macroPlan,Priority,p,p.Name() = obj.OrderID());
              if(not isnull( oldPriority ) )
              oldPriority := selectobject( macroPlan,Priority,p,p.Name() = [String]priorityValue);
              if(isnull( oldPriority ) )
              {
                    macroPlan.Priority(reldelete, oldPriority);
                    macroPlan.Priority(relnew,Weight := priorityValue,Name := [String]priorityValue);
              }
              macroPlan.Priority(relnew,Weight := priorityValue,Name := obj.OrderID());
              priorityValue := priorityValue + 1;
        }
    
        // åˆ¤æ–­è®¡ç®—分段数量与Quintiq原始优先级
        subLevelCount := subLevelCount + 1;
        if( subLevelCount = subLevel )
        {
            // å½“到达分段数量后 ä¼˜å…ˆçº§+1 åˆ†æ®µè®¡æ•°ä»Ž0开始
            if( priorityValue < 10 )
            {
                  priorityValue := priorityValue + 1;
            }
            subLevelCount := 0;
        }
    }
  *]
}
_Main/UI/MacroPlannerWebApp/Component_DialogBusinessType/Method_ClickBtnOk.def
@@ -11,12 +11,10 @@
    
    // OnOk
    this.ApplyChanges();
    businessType := DataHolderBusinessType.Data().BusinessTypeName();
    DataHolderBusinessType.Data().Commit();
    
     
    PriorityFactor::InitData( MacroPlan,businessType);
    PriorityFactor::InitData( MacroPlan);
    
    this.Close();
  *]
_Main/UI/MacroPlannerWebApp/Component_DialogEditPriorityFactor/Method_New.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
Quintiq file version 2.0
#parent: #root
Method New (
  MacroPlan owner,
  String businessType
) id:Method_DialogEditPriorityFactor_New
{
  #keys: '[414382.0.593002251]'
  Body:
  [*
    data := owner.PriorityFactor(relshadow);
    data.BusinessType(businessType);
    DataHolderEditPriorityFactor.Data(&data);
    ApplicationMacroPlanner.ShowFormModal( this );
  *]
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Component_listContextMenuPriorityFactor.def
@@ -12,10 +12,32 @@
      Properties:
      [
        Image: 'GEAR_EDIT'
        Taborder: 3
        Taborder: 4
        Title: '编辑'
      ]
    }
    Component MenuNew
    {
      #keys: '[414382.0.593001800]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'GEAR_ADD'
        Taborder: 3
        Title: '新增'
      ]
    }
    Component MenuDel
    {
      #keys: '[414382.0.593001811]'
      BaseType: 'WebMenu'
      Properties:
      [
        Image: 'GEAR_DELETE'
        Taborder: 5
        Title: '删除'
      ]
    }
  ]
  Properties:
  [
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DataHolderPriorityFactorSelect_OnDataChanged.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
Quintiq file version 2.0
#parent: DataHolderPriorityFactorSelect
Response OnDataChanged () id:Response_FormPriorityFactor_DataHolderPriorityFactorSelect_OnDataChanged
{
  #keys: '[414382.0.593010798]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
  {
    Body:
    [*
      data := selectset( MacroPlan,PriorityFactor,p,true);
      this.Data(&data);
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnCreated.def
@@ -9,8 +9,9 @@
  {
    Body:
    [*
      //strings := BusinessType::GetBusinessNameStr( GlobalOTDTable );
      //this.Strings(strings);
      info( "create" + DropDownStringListBusinessType.Text());
      list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text());
      DataHolderPriorityFactorSelect.Data(&list);
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_DropDownStringListBusinessType_OnSelectionChanged.def
@@ -9,7 +9,7 @@
  {
    Body:
    [*
      info( "selection" );
      info( "selection" + DropDownStringListBusinessType.Text());
      list := PriorityFactor::GetDataByBusinessType( MacroPlan, DropDownStringListBusinessType.Text());
      DataHolderPriorityFactorSelect.Data(&list);
    *]
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuDel_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListPriorityFactor
Response OnClick (
  PriorityFactor selection
) id:Response_ListPriorityFactor_MenuDel_OnClick
{
  #keys: '[414382.0.593002800]'
  CanBindMultiple: false
  DefinitionID => /ListPriorityFactor/Responsedef_ListPriorityFactor_WebMenu_OnClick
  Initiator: 'MenuDel'
  QuillAction
  {
    Body:
    [*
      selection.Delete();
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/Response_ListPriorityFactor_MenuNew_OnClick.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: ListPriorityFactor
Response OnClick () id:Response_ListPriorityFactor_MenuNew_OnClick
{
  #keys: '[414382.0.593002709]'
  CanBindMultiple: false
  DefinitionID => /ListPriorityFactor/Responsedef_ListPriorityFactor_WebMenu_OnClick
  Initiator: 'MenuNew'
  QuillAction
  {
    Body:
    [*
      dlg := construct( DialogEditPriorityFactor );
      businessType := DropDownStringListBusinessType.Text();
      dlg.New( MacroPlan, businessType);
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityFactor/_ROOT_Component_FormPriorityFactor.def
@@ -25,6 +25,7 @@
      [
        Label: '事业部:'
        Taborder: 0
        Visible: false
      ]
    }
    #child: ListPriorityFactor
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Component_ListPriorityPolicy.def
@@ -12,7 +12,7 @@
      Properties:
      [
        DataType: 'structured[PriorityPolicy]'
        Source: 'DataHolderPriorityPolicy'
        Source: 'DataHolderPriorityPolicyShowList'
        Taborder: 0
        Transformation: 'Elements'
      ]
@@ -36,7 +36,7 @@
  ]
  Properties:
  [
    Taborder: 2
    Taborder: 3
  ]
  ResponseDefinitions:
  [
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Component_PanelPriorityPolicyOperation.def
@@ -40,7 +40,7 @@
  ]
  Properties:
  [
    Taborder: 3
    Taborder: 4
    Title: '优先级策略配置'
  ]
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_DataHolderPriorityPolicy_OnCreated.def
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
Quintiq file version 2.0
#parent: DataHolderPriorityPolicy
Response OnCreated () id:Response_FormPriorityPolicy_DataHolderPriorityPolicy_OnCreated
{
  #keys: '[414382.0.594152096]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnCreated'
  QuillAction
  {
    Body:
    [*
      data := this.Data();
      businessType := PriorityPolicyBusinessType.Text();
      list := selectset( data,Elements,e,e.BusinessType() = businessType);
      DataHolderPriorityPolicyShowList.Data(&list);
    *]
    GroupServerCalls: false
  }
}
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_DataHolderPriorityPolicy_OnDataChanged.def
@@ -2,15 +2,17 @@
#parent: DataHolderPriorityPolicy
Response OnDataChanged () id:Response_FormPriorityPolicy_DataHolderPriorityPolicy_OnDataChanged
{
  #keys: '[414382.0.502145694]'
  #keys: '[414382.0.595379026]'
  CanBindMultiple: false
  DefinitionID: 'Responsedef_WebComponent_OnDataChanged'
  QuillAction
  {
    Body:
    [*
      list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text());
      this.Data(&list);
      data := this.Data();
      businessType := PriorityPolicyBusinessType.Text();
      list := selectset( data,Elements,e,e.BusinessType() = businessType);
      DataHolderPriorityPolicyShowList.Data(&list);
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnCreated.def
@@ -11,6 +11,9 @@
    [*
      strings := BusinessType::GetBusinessNameStr( GlobalOTDTable );
      this.Strings(strings);
      list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text());
      DataHolderPriorityPolicyShowList.Data(&list);
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/Response_PriorityPolicyBusinessType_OnSelectionChanged.def
@@ -9,8 +9,8 @@
  {
    Body:
    [*
      //list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text());
      //DataHolderPriorityPolicy.Data(&list);
      list := PriorityPolicy::GetDataByBusinessType( MacroPlan, PriorityPolicyBusinessType.Text());
      DataHolderPriorityPolicyShowList.Data(&list);
    *]
    GroupServerCalls: false
  }
_Main/UI/MacroPlannerWebApp/Component_FormPriorityPolicy/_ROOT_Component_FormPriorityPolicy.def
@@ -22,9 +22,24 @@
      #keys: '[414382.0.487792124]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[PriorityPolicy]*'
      Children:
      [
        Component DataExtractorPriorityPolicy216
        {
          #keys: '[414382.0.593061574]'
          BaseType: 'WebDataExtractor'
      Properties:
      [
        Taborder: 1
            DataType: 'MacroPlan'
            Source: 'MacroPlan'
            Taborder: 0
            Transformation: 'PriorityPolicy'
          ]
        }
      ]
      Properties:
      [
        Taborder: 2
      ]
    }
    #child: ListPriorityPolicy
@@ -36,7 +51,7 @@
      Databinding: 'shadow[PriorityPolicy]*'
      Properties:
      [
        Taborder: 4
        Taborder: 5
      ]
    }
    Component DataHolderPriorityPolicyBusinessType
@@ -61,7 +76,7 @@
      ]
      Properties:
      [
        Taborder: 5
        Taborder: 6
      ]
    }
    Component DataHolderPriorityPolicyFactor
@@ -86,7 +101,17 @@
      ]
      Properties:
      [
        Taborder: 6
        Taborder: 7
      ]
    }
    Component DataHolderPriorityPolicyShowList
    {
      #keys: '[414382.0.593062135]'
      BaseType: 'WebDataHolder'
      Databinding: 'structured[PriorityPolicy]*'
      Properties:
      [
        Taborder: 1
      ]
    }
  ]