向多页TABLE中插入数据时,新增行总是在当前页的最后一行

CODE IN CO

OATableBean table =
                (OATableBean)webBean.findChildRecursive("LineTable");
            int numOfRowsDisplay = table.getNumberOfRowsDisplayed();
            Serializable[] param01 = { new Number(numOfRowsDisplay) };
            Class[] classType = new Class[] { Number.class, };
            am.invokeMethod("addPlanLines", param01, classType);

CODE IN AM

public void addPlanLines(Number numOfDisplay) {
        OADBTransaction tsn = this.getOADBTransaction();

        CuxPosAuditPlanLinesFullVOImpl lineVO =
            getCuxPosAuditPlanLinesFullVO();
        Number planId = getPlanId();

        lineVO.setMaxFetchSize(0);
        if (!lineVO.isPreparedForExecution()) {
            lineVO.setWhereClause(null);
            lineVO.executeQuery();
        }

        RowSet localRowSet = lineVO.getRowSet();

        int i = 1;
        int j = numOfDisplay.intValue();
        int rangeStart = localRowSet.getRangeStart();
        int rangeSize = localRowSet.getRangeSize();
        int rowCountInRange = localRowSet.getRowCountInRange();
        int i1;
        if (rowCountInRange + i <= j)
            i1 = rowCountInRange;
        else {
            i1 = j - i;
        }
        CuxPosAuditPlanLinesFullVORowImpl row =
            (CuxPosAuditPlanLinesFullVORowImpl)lineVO.createRow();
        if (rangeSize < i1) {
            rangeSize++;
            localRowSet.setRangeSize(rangeSize);
            localRowSet.setRangeStart(rangeStart);
        }

        row.setPlanId(planId);
        Number pk = getSequenceValue("CUX_POS_AUDIT_PLAN_LINES_S");
        row.setLineId(pk);
        row.setOrgId(new Number(tsn.getOrgId()));
        row.setOrgName(getOrgName(tsn.getOrgId()));
        localRowSet.insertRowAtRangeIndex(i1, row);
        localRowSet.setCurrentRowAtRangeIndex(i1);
    }


方法二:

这种方法有点小问题:

仅仅在第一页有效,应该可以再修改修改,懒得改了

calculVO.insertRow(row);
 int fetched = calculVO.getFetchedRowCount();
 fetched = fetched > 9 ? 9 : fetched;
 if (fetched > 0)
 {
   int current = fetched % 10;
   if (current == 0)
   {
     fetched = 9;
   } else
   {
     fetched = current > 9 ? 9 : current;
   }
 }
 calculVO.insertRowAtRangeIndex(fetched, row);
时间: 2024-08-08 21:51:54

向多页TABLE中插入数据时,新增行总是在当前页的最后一行的相关文章

向数据库中插入数据时字符集或查询是数据无法正常显示出现乱码问题

当向数据库插入数据出错或出局无法正常显示出现乱码时.首先应该想到的是数据库的编码问题.查看当前数据库服务器默认对数据库处理的字符集 show variables like  'character_set%'; character_set_client: 默认客户端来的数据格式 character_set_connection : 连接层字符集 character_set_database:  当前数据库字符集 character_set_results:服务器给外部的字符集 假如客户端字符集与数

MYSQL中插入数据时出现的问题:

问题: mysql> insert tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('Y400N 14.0英寸笔记本','笔记本','联','3990',default,default); ERROR 1366 (HY000): Incorrect string value: '\xB4\xE7\xB1\xCA\xBC\xC7...' for column 'goods_name

向已有的table中插入数据

table: <table id="seleted-table" class="table table-bordered table-hover" style="display: table"> <thead> <tr> <th width="50%">#</th> <th width="50%">name</th> <

2014.11.26 向MySQL数据表中插入数据时,显示“syntax error”时应检查

插入语句: "insert into tablename (a,b,c,d) values(1,2,3,4)" 插入结果: a b c d 1 2 3 4 有误时,请检查: 1.名值对有没有写错: 2.代码的字符串处理有没有问题: 3.代码中的列名和表中的列名是不是一一对应的: 4.定义的列名是否跟SQL语句中的关键字重复,例如dec等.

django rest framework 向数据库中插入数据时处理外键的方法

一.models.py中 from django.db import models class UserModel(models.Model) user_name = models.CharField() class MyModel(models.Model) author = models.Foreignkey(user) age = models.CharField() 二. 序列化文件 serializers.py 中创建序列化类 from rest_framework.serialize

inserted触发器,一张表插入数据时,同时向另外一张表插入数据

有时候,一个服务器上有多个数据库,需要向其中一个数据库的表中插入数据时, 同时向另外一个数据的表里插入数据. 可以利用触发器和同义词(建立同义词的方法省略), 在一个数据库的表里插入数据时,同时向另外一个数据库的表里插入数据. 触发器代码如下: create trigger userInsertTrigger on [user] for insert as begin begin insert into usertab(UserID,UserAccount,UserPassword,UserNa

用java向mysql数据库中插入数据为空

利用java面向对像编程,向数据库中插入数据时.遇到插入的数据为空的情况.在此做一小结: 1.数据库连接正正常 2.sql语句没有问题 3.程序没有报异常 4.代码: import java.util.Scanner; import org.junit.Test;public class JDBCTest { //2).在测试方法testAAddStudent()中 //1.获取从控制台输入的Student对象:Student student=getStudentFromConsole(); /

Mybatis + Mysql 插入数据时中文乱码问题

近日跟朋友一起建立一个项目,用的是spring+mybatis+mysql. 今天碰到一个mybatis向mysql中插入数据时,中文显示为'???'的问题,拿出来说下. 对于数据库操作中出现的中文乱码,一般有两种情况: 数据库本身设置 连接数据库时,jdbc的编码设置 对于第一种情况,可以查看自身的mysql设置: show variables like '%character%' 显示指定编码可解决问题: <!-- 1. 数据源 : DriverManagerDataSource -->

向视图中插入数据的 注意事项

视图除了进行查询记录外,也可以利用视图进行插入.更新.删除记录的操作,减少对基表中信息的直接操作,提高了数据的安全性. 在视图上使用INSERT语句添加数据时,要符合以下规则. (1)使用INSERT语句向数据表中插入数据时,用户必须有插入数据的权利. (2)由于视图只引用表中的部分字段,所以通过视图插入数据时只能明确指定视图中引用的字段的取值.而那些表中并未引用的字段,必          须知道在没有指定取值的情况下如何填充数据,因此视图中未引用的字段必须具备下列条件之一.