zoukankan      html  css  js  c++  java
  • 使用维度显示

    在ax中有许多窗体都有维度显示功能,例如生产订单、销售订单等等…

    下面介绍一下,如果在自己开发的窗体中使用维度显示功能。

    维度显示,是调用了class  InventDimCtrl_Frm来完成的。

    步骤:

    1. 声明InventDimCtrl_Frm 类 InventDimCtrl_Frm  inventDimCtrl_Frm;
    2. 在窗体中添加InventDim表作数据源,并且Join上主数据源
    3. 设置数据源InventDim数据源LinkType成InnerJoin
    4. 在Form中的Grid添加一个Group,并将InventDim中字段拖入此Group中。并设置Group的DataSource为InventDim
    5. 在Form 中添加方法 updateDesign(InventDimFormDesignUpdate mode) 代码如下:
      void updateDesign(InventDimFormDesignUpdate mode)
      {
          InventDimParm       inventDimParm;
          ;
    6.     switch (mode)
          {
              case InventDimFormDesignUpdate::Init        :
                  if (!inventDimCtrl_Frm)
                      inventDimCtrl_Frm = new InventDimCtrl_Frm(element);
                  inventDimCtrl_Frm.parmSkipOnHandLookUp(true);
                  inventDimParm.initItemDimAllGrp();
                  inventDimCtrl_Frm.parmDimParmVisibleGrid(inventDimParm);
              case InventDimFormDesignUpdate::Active,
                   InventDimFormDesignUpdate::FieldChange :
                  inventDimParm.initDimActive(element.inventTable().DimGroupId);              inventDimCtrl_Frm.parmDimParmEnabled(inventDimParm);
                  inventDimCtrl_Frm.formSetControls(true);
                  break;

              default : throw error(strfmt("@SYS54195",funcname()));
          }
      }

    7. 在窗体Init中调用UpdateDesign方法。
    8. 在窗体中新建方法 inventDimSetupObject方法,代码如下:
      Object inventDimSetupObject()
      {
          return inventDimCtrl_Frm;
      }
    9. 覆盖数据源Prodtable方法 Active()方法,在此处Super()之后执行:
      element.updateDesign(InventDimFormDesignUpdate::Active);
    10. 覆盖数据源的ValidateWrite(),在Super之前执行:
      Prodtable.InventDimId = InventDim::FindOrCreate(inventDim).InventDimId;
    11. 在数据源ProdTable下的字段ItemID 覆盖方法Modified()写入代码:
      Super();
      element.UpdateDesign(InventDimFormDesignUpdate::FieldChange);
      InventDim.ClearNotSelectedDim(element.inventDimSetupObject().parmDimParmEnabled());
    12. 最后在Form 中添加剂menuButton设置MenuItem指向 InventDimParmFixed 数据源指向ProdTable;
  • 相关阅读:
    阿铭每日一题 day 1 20180111
    计算机网络之基础链路
    android学习笔记 对话框合集
    android 音乐播放器简单实现
    Service的生命周期&Service绑定方法
    android学习笔记 Service
    android学习笔记 activity生命周期&任务栈&activity启动模式
    android 短信助手demo
    android 显示意图
    java 多线程断点下载demo
  • 原文地址:https://www.cnblogs.com/perock/p/2382046.html
Copyright © 2011-2022 走看看