AX 2009 多元素扩展类型和其界面控件的使用
2011-09-27 14:30
645 查看
多元素扩展类型
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();
}
相关文章推荐
- AX 2009 扩展类型控件的Lookup的写法
- 找出整个AX系统使用某个扩展类型的所有表和字段
- 9.1.2 使用类型扩展追加成员
- MFC界面控件位置大小控制的EasySize使用说明
- 编写高质量代码改善C#程序的157个建议——建议101:使用扩展方法,向现有类型“添加”方法
- Cutting Edge:使用客户端行为扩展ASP.NET DataGrid 控件
- [导入]使用Flash打造可定义界面风格的文件上传控件
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- C#:DataGridView中列类型使用时间控件和下拉列表的自动匹配
- 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- 使用chrome查看Android webView各个元素的控件方法
- 第九章 使用高级界面控件
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
- 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用
- 12-界面控件之listView使用java代码和xml文件不同方式实现列表显示
- 使用函数指针,完成一个sort()函数,能对任何类型的数组元素进行排序: 回调函数 以及 memcpy ()原型实现
- 元素类型C++ 标准模板库STL 队列 queue 使用方法与应用介绍(一)
- WPF中使用Style设置界面控件外观属性