通过sql脚本制造单据分录数据
1、进入查询分析器,选择如下SQL,点击运行服务器端脚本 ,(以应付单分录为例),获取对应的插入sql语句
Geninsert select * from T_AP_OtherBillEntry where FPARENTID = '应付单分录id'
执行结果如下: insert into t_ap_otherbillentry(FID, FSEQ, FMATERIALID, FMEASUREUNITID, FASSISTPROPERTYID, FEXPENSEITEMID, FACCOUNTID, FRECIEVEPAYAMOUNT, FRECIEVEPAYAMOUNTLOCAL, FVERIFYAMOUNT, FVERIFYAMOUNTLOCAL, FUNVERIFYAMOUNT, FUNVERIFYAMOUNTLOCAL, FLOCKVERIFYAMT, FLOCKVERIFYAMTLOCAL, FLOCKUNVERIFYAMT, FLOCKUNVERIFYAMTLOCAL, FREMARK, FQUANTITY, FPRICE, FTAXPRICE, FACTUALPRICE, FDISCOUNTRATE, FTAXRATE, FTAXAMOUNT, FTAXAMOUNTLOCAL, FAMOUNT, FAMOUNTLOCAL, FPARENTID, FDISCOUNTAMOUNT, FDISCOUNTAMOUNTLOCAL, FSOURCEBILLID, FSOURCEBILLENTRYID, FSOURCEBILLASSTACTID, FHISUNVERIFYAMOUNT, FHISUNVERIFYAMOUNTLOCAL, FCOREBILLTYPEID, FCOREBILLID, FCOREBILLENTRYID, FCOREBILLNUMBER, FCOREBILLENTRYSEQ, FTRACKNUMBER, FAPPRINTBILLID, FAPPRINTBILLENTRYID, FASSISTUNITID, FASSISTQTY, FDISCOUNTTYPE, FOPPACCOUNTID, FWRITTENOFFBASEQTY, FLOCALWRITTENOFFAMOUNT, FUNWRITEOFFBASEQTY, FLOCALUNWRITEOFFAMOUNT, FINVOICEDBASEQTY, FINVOICEDAMT, FBASEUNITID, FBASEQTY, FREALPRICE, FISINVOICED, FISFULLWRITEOFF, FISPRESENT, FINVOICENUMBER, FVERIFYQTY, FLOCKVERIFYQTY, FROWTYPEID, FMATERIALNAME, FAPPORTIONAMTLOCAL, FCONTRACTNUMBER, FCONTRACTENTRYSEQ, FCONTRACTBILLID, FCONTRACTENTRYID, FAPPORTIONAMOUNT, FUNAPPORTIONAMOUNT, FREQUESTEDPAYAMT, FRECSENDORGUNITID, FPROJECTID, FTRACKNUMBERZCID, FREVERSEDBASEQTY, FCOMPANYID, FBILLDATE, FLOT, FPAYABLEDATE, FMATERIALMODEL, FBIZFLOWRELATION, FFUNDFLOWITEMID, FCOSTCENTERID, FISQTYZERO, FINVOICEREQQTY, FINVOICEREQBASEQTY, FUNINVOICEREQQTY, FUNINVOICEREQBASEQTY, FINVOICEREQAMOUNT, FINVOICEREQAMOUNTLOCAL, FUNINVOICEREQAMOUNT, FUNINVOICEREQAMOUNTLOCAL) values ('JC3MHUGXTQmghR+4kX7m3+1NvIE=', 1, N'c6oAAAA71ftECefw', 'gw5fUwEOEADgAAsRwKgSOFuCXFc=', null, null, null, 150, 150, 0, 0, 150, 150, 150, 150, 0, 0, null, 5, 30, 30, 30, 0, 0, 0, 0, 150, 150, 'lkmOtuZRQdOfSRuA4mgQckjaOnE=', 0, 0, null, null, null, 0, 0, null, null, null, null, 0, null, null, null, null, 0, -1, null, 0, 0, 5, 150, 0, 0, 'gw5fUwEOEADgAAsRwKgSOFuCXFc=', 5, 30, 0, 0, 0, null, 0, 0, null, '加权物料A', 0, null, 0, null, null, 0, 150, 0, null, null, null, 0, N'c6oAAAAAMsnM567U', {ts'2020-12-15 00:00:00'}, null, {ts'2020-12-15 00:00:00'}, '小城镇vsd', null, null, null, 0, 0, 0, 5, 5, 0, 0, 150, 150);
2、编写脚本
var cn = null;
var st = null;
var sql = "insert into t_ap_otherbillentry(FID, FSEQ, FMATERIALID, FMEASUREUNITID, FASSISTPROPERTYID, FEXPENSEITEMID, FACCOUNTID, FRECIEVEPAYAMOUNT, FRECIEVEPAYAMOUNTLOCAL, FVERIFYAMOUNT, FVERIFYAMOUNTLOCAL, FUNVERIFYAMOUNT, FUNVERIFYAMOUNTLOCAL, FLOCKVERIFYAMT, FLOCKVERIFYAMTLOCAL, FLOCKUNVERIFYAMT, FLOCKUNVERIFYAMTLOCAL, FREMARK, FQUANTITY, FPRICE, FTAXPRICE, FACTUALPRICE, FDISCOUNTRATE, FTAXRATE, FTAXAMOUNT, FTAXAMOUNTLOCAL, FAMOUNT, FAMOUNTLOCAL, FPARENTID, FDISCOUNTAMOUNT, FDISCOUNTAMOUNTLOCAL, FSOURCEBILLID, FSOURCEBILLENTRYID, FSOURCEBILLASSTACTID, FHISUNVERIFYAMOUNT, FHISUNVERIFYAMOUNTLOCAL, FCOREBILLTYPEID, FCOREBILLID, FCOREBILLENTRYID, FCOREBILLNUMBER, FCOREBILLENTRYSEQ, FTRACKNUMBER, FAPPRINTBILLID, FAPPRINTBILLENTRYID, FASSISTUNITID, FASSISTQTY, FDISCOUNTTYPE, FOPPACCOUNTID, FWRITTENOFFBASEQTY, FLOCALWRITTENOFFAMOUNT, FUNWRITEOFFBASEQTY, FLOCALUNWRITEOFFAMOUNT, FINVOICEDBASEQTY, FINVOICEDAMT, FBASEUNITID, FBASEQTY, FREALPRICE, FISINVOICED, FISFULLWRITEOFF, FISPRESENT, FINVOICENUMBER, FVERIFYQTY, FLOCKVERIFYQTY, FROWTYPEID, FMATERIALNAME, FAPPORTIONAMTLOCAL, FCONTRACTNUMBER, FCONTRACTENTRYSEQ, FCONTRACTBILLID, FCONTRACTENTRYID, FAPPORTIONAMOUNT, FUNAPPORTIONAMOUNT, FREQUESTEDPAYAMT, FRECSENDORGUNITID, FPROJECTID, FTRACKNUMBERZCID, FREVERSEDBASEQTY, FCOMPANYID, FBILLDATE, FLOT, FPAYABLEDATE, FMATERIALMODEL, FBIZFLOWRELATION, FFUNDFLOWITEMID, FCOSTCENTERID, FISQTYZERO, FINVOICEREQQTY, FINVOICEREQBASEQTY, FUNINVOICEREQQTY, FUNINVOICEREQBASEQTY, FINVOICEREQAMOUNT, FINVOICEREQAMOUNTLOCAL, FUNINVOICEREQAMOUNT, FUNINVOICEREQAMOUNTLOCAL) values ((select newbosid('ED4DBC81')), ?, N'c6oAAAA71ftECefw', 'gw5fUwEOEADgAAsRwKgSOFuCXFc=', null, null, null, 150, 150, 0, 0, 150, 150, 150, 150, 0, 0, null, 5, 30, 30, 30, 0, 0, 0, 0, 150, 150, 'lkmOtuZRQdOfSRuA4mgQckjaOnE=', 0, 0, null, null, null, 0, 0, null, null, null, null, 0, null, null, null, null, 0, -1, null, 0, 0, 5, 150, 0, 0, 'gw5fUwEOEADgAAsRwKgSOFuCXFc=', 5, 30, 0, 0, 0, null, 0, 0, null, '加权物料A', 0, null, 0, null, null, 0, 150, 0, null, null, null, 0, N'c6oAAAAAMsnM567U', {ts'2020-12-15 00:00:00'}, null, {ts'2020-12-15 00:00:00'}, '小城镇vsd', null, null, null, 0, 0, 0, 5, 5, 0, 0, 150, 150)";
try{
cn = com.kingdee.bos.framework.ejb.EJBFactory.getConnection(ctx);
st = cn.prepareStatement(sql);
var count = 100000; //需要插入的条数,这里为十万条
for(var i=1;i<count;i++){
st.setInt(1,i+1);
st.addBatch();
if(i%5000==0||i==(count-1)){
st.executeBatch();
}
}
st.executeBatch();
} finally {
com.kingdee.util.db.SQLUtils.cleanup(st, cn);
}
注释:需要修改FID, FSEQ的值,一个设置为(select newbosid('对应的bosType')),另外一个为?,(bosType 可以通过分录的fid 获取 如果分录编号FSEQ为0 或者 没有记录,则i需要设置从0开始,为1 则i需要从1开始,以此类推,最后选择需要运行的脚本,点击运行服务器端脚本即可)
通过sql脚本制造单据分录数据
本文2024-09-16 22:12:09发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-46587.html