zoukankan      html  css  js  c++  java
  • AX 2009 多元素扩展类型和其界面控件的使用

    多元素扩展类型

    AX下扩展类型,除了关联表外,还有个多元素扩展的特性。表字段继承这个扩展类型后,这个表字段就会像数组一样来使用。

    扩展类型下建立的多个元素

    表里显示只会有一个字段,但是实际上是一个数组字段

    AX的控件都有父类。IntEdit控件,其父类是FormIntControl。RealEdit控件,其父类是FormRealControl。等等对应,不多例举。

    这样就可以轻松获取控件,并操作。

    不做细讲,代码很简单。直接贴出功能代码,看注释即可明白

    public void Sreach(TransDate day = today())
    {
        int                             m_T,m_count,m_c,m_j,m_d;
        utcDateTime                     m_StartTime,m_EndTime;
        TransDate                       m_Day;
        ProdJournalTable                m_ProdJourTable;
        ProdJournalRoute                m_ProdJourRoute;
        ProcessYieldAmountTable         m_TempTable;
        ProdTable                       m_ProdTable;
        FormIntControl                  m_IntControl;
        ProcessYieldCountTable          m_CountTable;
        ;

        m_Day = day - 1;
        m_c = 0;
        m_CountTable.clear();

        for(m_T = 0;m_T < 24;m_T++)
        {
            m_StartTime = DateTimeUtil::newDateTime(m_Day,72000 + 3600 * m_T);
            m_EndTime = DateTimeUtil::newDateTime(m_Day,72000 + 3600 * (m_T + 1));
            m_count = 0;
            ttsbegin;

            while select m_ProdJourRoute join m_ProdJourTable where m_ProdJourRoute.JournalId == m_ProdJourTable.JournalId
            && m_ProdJourTable.Posted == true && m_ProdJourTable.PostedDateTime >= m_StartTime
            && m_ProdJourTable.PostedDateTime <= m_EndTime
            {
                //奇偶判断,这边是单行双字段显示
                if(m_t mod 2)
                {
                    m_j = 2;
                }
                else
                {
                    m_j = 1;
                }

                m_count++;

                m_TempTable.clear();
                m_TempTable.TimeTitle = strfmt("%1 - %2",m_StartTime,m_EndTime);
                m_TempTable.ProdId[m_j] = m_ProdJourRoute.ProdId;
                m_TempTable.ItemId[m_j] = ProdTable::find(m_ProdJourRoute.ProdId).ItemId;
                m_TempTable.FlowId[m_j] = m_ProdJourRoute.IWS_FlowId;
                m_TempTable.QtyGood[m_j] = m_ProdJourRoute.QtyGood;
                m_TempTable.TransDateTime[m_j] = m_ProdJourTable.PostedDateTime;
                m_TempTable.insert();
            }

            if(!m_ProdJourRoute)
            {
                m_TempTable.clear();
                m_TempTable.TimeTitle = strfmt("%1 - %2",m_StartTime,m_EndTime);
                m_TempTable.insert();
            }

            ttscommit;

            //label setting
            m_c = m_T + 1;
            m_IntControl = element.design().controlName(strfmt("ProcessYieldCountTable_YieldCount[%1]",m_c));
            m_IntControl.label(strfmt("%1 - %2",strdel(DateTime2str(m_StartTime,0),0,7),strdel(DateTime2str(m_EndTime,0),0,7)));

            m_CountTable.YieldCount[m_c] = m_count;
        }
     
        m_CountTable.insert();
        //设置临时表
        
    //刷新数据源
        ProcessYieldAmountTable.setTmpData(m_TempTable);
        ProcessYieldAmountTable_ds.research();
        ProcessYieldCountTable.setTmpData(m_CountTable);
        ProcessYieldCountTable_ds.research();
    }
  • 相关阅读:
    python 学习常见问题笔记
    mac os 使用 from scipy.misc import imread ImportError: cannot import name 'imread'
    mac解决安装提示“xxx软件已损坏,打不开,您应该将它移到废纸篓”的提示
    一文搞懂HMM(隐马尔可夫模型)
    docker从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面
    centos 7 安装python3 & pip3
    HTK HResults计算字错率(WER)、句错率(SER)
    sublime text3安装ConvertToUTF8
    intellij idea 解决2019年4月到期延期问题
    Python 3 教程
  • 原文地址:https://www.cnblogs.com/Kurodo/p/2193115.html
Copyright © 2011-2022 走看看