AX: grid中添加checkbox, edit 方法

主要借用临时表 TmpFrmVirtual

public class FormRun extends ObjectRun
{
TmpFrmVirtual tmpFrmVirtual;
}

// grid 上添加一个checkbox 控件,DataMethod设为IsSelected方法
edit NoYes IsSelected(boolean set, ABCPickListBatch _pickTable, NoYes value)
{
NoYes ret;
;

select tmpFrmVirtual
where tmpFrmVirtual.TableNum == _pickTable.TableId &&
tmpFrmVirtual.RecordNo == _pickTable.RecId;

if (tmpFrmVirtual.RecId)
ret = NoYes::Yes;
if (set)
{
if (value)
{
tmpFrmVirtual.TableNum = _pickTable.TableId;
tmpFrmVirtual.RecordNo = _pickTable.RecId;

tmpFrmVirtual.write();

ret = NoYes::Yes;
}
else
{
tmpFrmVirtual.delete();
ret = NoYes::No;
}
}

return ret;
}

// 获取是否选择一条或多条记录
boolean IsBatchSelected()
{
;

select firstonly tmpFrmVirtual;
if (!tmpFrmVirtual.RecId)
{
info("@ABC2012");
return false;
}
return true;
}

//-----------------------------------------------------------
 
   

// 更新选择行
void UpdateSelectedRecord()
{
ABCPickListBatch pickList;
;

super();

if(!element.IsBatchSelected())
return;

ttsbegin;
while select tmpFrmVirtual
{

select forupdate pickList
where tmpFrmVirtual.RecordNo == pickList.RecId &&
tmpFrmVirtual.TableNum == pickList.TableId;
pickList.UserId = formRun.curEmplId();
pickList.update();

}

ttscommit;
ABCPickListBatch_ds.executeQuery();
delete_from tmpFrmVirtual; // 删除临时表记录,表示deselected
}



// 单击按钮,弹出Form选择EmployeeId, 将所选择行的UserId 更新为所选择的EmployeeId
void clicked()
{
Args args;
Object formRun;
ABCPickListBatch pickList;
;

super();

if(!element.IsBatchSelected())
return;

args = new Args();
args.name(formstr(ABCEmpSelect));

formRun = classfactory.formRunClass(args);
formRun.init();
formRun.run();
formRun.wait();

if (formRun.closedOK())
{
ttsbegin;
while select tmpFrmVirtual
{

select forupdate pickList
where tmpFrmVirtual.RecordNo == pickList.RecId &&
tmpFrmVirtual.TableNum == pickList.TableId;
pickList.UserId = formRun.curEmplId();
pickList.update();

}

ttscommit;
ABCPickListBatch_ds.executeQuery();
delete_from tmpFrmVirtual;
}
}


转载于:https://www.cnblogs.com/aot/archive/2010/11/27/1889635.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值