壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2934|回复: 2

IFS's ERP刷新后自动选择某行的功能实现

[复制链接]
发表于 2007/9/11 07:51:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
实际问题:
  以2K4为例,在批号工序报告时,每报表一次,系统会自动刷新并且把MOUSE指向第一行且选中;
造成的困扰是,资料比较多时,USER查找批号/工序资料耗时
解决办法:
  写一刷新过程,目的是在刷新前记下当前行号,再执行刷新过程,然后再选中记下的行号;
实现方法:
Step1)  新定义一变量 nMyRow;
Step2) 刷新前记下当前行号 例如:Set nMyRow = nRow
Step3) 写Refresh过程
Function: Refresh
Description:
Returns
Parameters
Static Variables
Local variables
Actions
  --执行刷新动作
  Call SalSendMsg( i_hWndFrame, PM_DataSourceRefresh, METHOD_Execute, 0 )
--把已选中的行,取消选中
Set nRow = TBL_MinRow
While SalTblFindNextRow( hWndForm, nRow, ROW_Selected, 0)
   Call SalTblSetRowFlags( hWndForm, nRow, ROW_Selected, FALSE)
--改变焦点位置并且选中刷新前的行
Call SalTblSetFocusRow ( hWndForm, nMyRow )
Call SalTblSetRowFlags( hWndForm, nMyRow, ROW_Selected, TRUE )
  Step4) 在需要刷新的地方调用 Call Refresh();
GAME OVER! foreveryday007 20051216
F1 HELP
1>
bOk = SalTblSetFocusRow ( hWndTbl, nRow )
Sets a table window's focus frame row.
Parameters
hWndTbl Window Handle. The handle (or name) of a table window.
nRowNumber.  The row number of the row to which to apply the focus frame.
Return Value
bOk is TRUE if the function succeeds and FALSE if it fails.
IFS Client Developer
2>
bOk = SalTblSetRowFlags ( hWndTbl, nRow, nFlags, bSet )
Sets or clears a table window row's flags.
Parameters
hWndTbl Window Handle. The handle (or name) of a table window.
nRowNumber.  The row number of the row whose flags you want to set or clear.
nFlags Number. The row flags. You can combine any of the ROW_* flags using the OR (|) operator.
bSet Boolean. Whether to set (TRUE) or clear (FALSE) the specified flags.
Return Value
bOk is TRUE if the function succeeds and FALSE if it fails.
Example
The internal function SelectAllRows loops through all rows in a scroll range, selecting each one. SalTblQueryScroll gets the scroll range, and SalTblSetRowFlags selects each row by setting its ROW_Selected flag.
Internal Functions
   Function: SelectAllRows
   ...
      Actions
Call SalTblQueryScroll ( hWndTbl, nPosRow, nMinRow, nMaxRow )
Set nRow = nMinRow
         While ( nRow <= nMaxRow )
Call SalTblSetRowFlags ( hWndTbl, nRow, ROW_Selected, TRUE )
Set nRow = nRow + 1
IFS Client Developer

作者Blog:http://blog.csdn.net/foreveryday007/
发表于 2007/9/14 12:37:40 | 显示全部楼层
这是个旧贴,很早以前看过的
 楼主| 发表于 2007/9/14 13:23:59 | 显示全部楼层
希望楼上的经常来发表看法呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 19:55 , Processed in 0.012739 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表