• 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;
    }
    }


  • 相关阅读:
    3.数据库分类
    2.Oracle数据库安装教程
    1.Oracle数据库简介
    MySQL最全存储引擎、索引使用及SQL优化的实践
    大数据各个工具随笔
    初入Shell
    第4章 DDL数据定义
    第3章 Hive数据类型
    第2章 Hive安装
    MySQL 创建数据库
  • 原文地址:https://www.cnblogs.com/aot/p/1889635.html
Copyright © 2020-2023  润新知