存货收发汇总表 二次开发加自定义字段后 界面显示不正常
金蝶云社区-kkkkkkkkkkkkk
kkkkkkkkkkkkk
0人赞赏了该文章 627次浏览 未经作者许可,禁止转载编辑于2019年01月05日 14:15:42

参考这个帖子,发生同样的问题https://vip.kingdee.com/article/32232

using Kingdee.BOS.App.Data;
using Kingdee.BOS.Contracts;
using Kingdee.BOS.Core.Report;
using Kingdee.BOS.Util;
using Kingdee.K3.FIN.HS.App.Report;
using System.Text;

namespace ClassLibrary6
{
public class InOutStockSummaryService3 : InOutStockSummaryService
{
private string[] InOutStockNames;
public override void BuilderReportSqlAndTempTable(IRptParams filter, string tableName)
{
//创建临时表,用于存放自己的数据
IDBService dbservice = Kingdee.BOS.App.ServiceHelper.GetService();
InOutStockNames = dbservice.CreateTemporaryTableName(this.Context, 1);
string strTable = InOutStockNames[0];
//调用基类的方法,获取初步的查询结果到临时表
base.BuilderReportSqlAndTempTable(filter, strTable);
//对初步的查询结果进行处理,然后写回基类默认的存放查询结果的临时表
StringBuilder sb = new StringBuilder();
string strSql = " /*dialect*/SELECT t1.*,tbul1.FNAME as F_PAEZ_Text"
+ ",t1.FINITPrice*tbuc.FCONVERTNUMERATOR as F_PAEZ_Text2"
+ ",t1.FINITQty / tbuc.FCONVERTNUMERATOR as F_PAEZ_Text1"
+ ",t1.FRECEIVEPrice*tbuc.FCONVERTNUMERATOR as F_PAEZ_Text4"
+ ",t1.FRECEIVEQty / tbuc.FCONVERTNUMERATOR as F_PAEZ_Text3"
+ ",t1.FSENDPrice*tbuc.FCONVERTNUMERATOR as F_PAEZ_Text6"
+ ",t1.FSENDQty / tbuc.FCONVERTNUMERATOR as F_PAEZ_Text5"
+ ",t1.FENDPrice*tbuc.FCONVERTNUMERATOR as F_PAEZ_Text8"
+ ",t1.FENDQty / tbuc.FCONVERTNUMERATOR as F_PAEZ_Text7"
+ " into {0} from {1} t1 left join T_BD_MATERIAL tbm on t1.FMATERIALID=tbm.FNUMBER"
+ " left join T_BD_MATERIALBASE tbmb on tbm.FMATERIALID=tbmb.FMATERIALID"
+ " left join T_BD_MATERIALSTOCK tbms on tbm.FMATERIALID = tbms.FMATERIALID"
+ " left join T_BD_UNIT tbu1 on tbms.FSTOREUNITID = tbu1.FUNITID"//库存单位
+ " left join T_BD_UNIT_L tbul1 on tbms.FSTOREUNITID = tbul1.FUNITID"
+ " left join T_BD_UNIT tbu2 on tbmb.FBASEUNITID = tbu2.FUNITID"//基本单位
+ " left join T_BD_UNIT_L tbul2 on tbmb.FBASEUNITID = tbul2.FUNITID"
+ " left join T_BD_UNITCONVERTRATE tbuc on tbuc.FCURRENTUNITID = tbu1.FUNITID and tbuc.FDESTUNITID = tbu2.FUNITID";//物料库存信息--FCONVERTNUMERATOR 单位转化率基本单位为1

sb.AppendFormat(strSql, tableName, strTable);
DBUtils.Execute(this.Context, sb.ToString());

}
public override void CloseReport()
{//删除临时表
if (InOutStockNames.IsNullOrEmptyOrWhiteSpace())
{ return; }
IDBService dbService = Kingdee.BOS.App.ServiceHelper.GetService();
dbService.DeleteTemporaryTableName(this.Context, InOutStockNames);
base.CloseReport();
}
}
}

请老师们帮忙看看