电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

二开付款执行明细单据体

来源:金蝶云社区作者:金蝶2024-09-237

二开付款执行明细单据体

@[TOC](目录) ### 背景 2022年11月份版本,标准产品发布了采购订单付款执行视图查看功能:[https://vip.kingdee.com/link/s/lxX32](https://vip.kingdee.com/link/s/lxX32)。不少客户历史版本不愿意升级,也想实现该功能。由于该付款执行明细后台是一个视图表,原则上只要有了视图表就可以在历史版本进行二开,不外乎就是在BOS增加几个字段。 ### 步骤 1. 新增页签 ![1、添加页签.webp](/download/010043680aab17fc49ba9315eb5127f94040.webp) 2. 新增单据体。为了之后升级不冲突,当前单据体的视图名称需要加客户的开发标识 ==(例如:V_SXIM_PURORDERPAYENTRY),表类型选择视图== ![2、新增单据体.webp](/download/0100bf557fb1431c4b7ba1e916fb1d0f0c59.webp) 3. 新增字段 - 分别新增一个基础资料、三个金额、一个下拉列表、一个日期字段 ![image.webp](/download/0100ba11a3026a794f3799f7c0f1fc3d6893.webp) - 第一个字段:关联单据(FORMID),==字段名取FORMID,标识和属性名不能叫FORMID,必须加开发商标识,避免升级后冲突== ![image.webp](/download/01008fff114561b2499a8fb08119c020aada.webp) - 第二个字段:关联单据编号(FRELATBILLNO),==字段名取FRELATBILLNO,标识和属性名不能叫FRELATBILLNO,必须加开发商标识,避免升级后冲突== ![image.webp](/download/010032d33372aa084c798130c51a110bd7d6.webp) - 第三个字段:申请付款金额(FPAYAPPLYAMOUNT),==字段名取FPAYAPPLYAMOUNT,标识和属性名不能叫FPAYAPPLYAMOUNT,必须加开发商标识,避免升级后冲突== - 第四个字段:付款金额(FPAYAMOUNT),==字段名取FPAYAMOUNT,标识和属性名不能叫FPAYAMOUNT,必须加开发商标识,避免升级后冲突== ![image.webp](/download/0100cdcfd36917684e7aa76259ba6a5754c9.webp) - 第五个字段:退款金额(FREFUNDAMOUNT),==字段名取FREFUNDAMOUNT,标识和属性名不能叫FREFUNDAMOUNT,必须加开发商标识,避免升级后冲突== ![image.webp](/download/0100e14632f8fa7a4cdabd549efc056d42e4.webp) - 第六个字段:核销记录单据(FTYPE),==字段名取FTYPE,标识和属性名不能叫FTYPE,必须加开发商标识,避免升级后冲突== ![image.webp](/download/0100787748841d1a4ab7a5446894815b451b.webp) - 第七个字段:业务日期(FPAYDATE),==字段名取FPAYDATE,标识和属性名不能叫FPAYDATE,必须加开发商标识,避免升级后冲突== ![image.webp](/download/01002dde791b20e54a79bdf31e27d5ca9c2d.webp) ### 视图SQL 1. 执行视图创建语句前先判断是否存在同名视图,如果有就删掉,保证视图创建语句可以重复执行 ```SQL IF EXISTS (SELECT 1 FROM (SELECT NAME AS TABLE_NAME, XTYPE AS TABLE_XTYPE FROM sysobjects WHERE XTYPE = 'U' OR XTYPE = 'V') AS KSQL_USERTABLES WHERE TABLE_NAME = 'V_SXIM_PURORDERPAYENTRY') BEGIN DROP VIEW V_FIN_PURORDERPAYENTRY END ``` 2. 视图创建语句 ```SQL CREATE VIEW V_SXIM_PURORDERPAYENTRY AS select ROW_NUMBER() OVER (order by FID) AS fentryid, FORMID, FBILLID, FRELATBILLNO, FPURBILLNO, FID, FPAYAMOUNT, FPAYAPPLYAMOUNT, FISAYAPPLY, FTYPE, FREFUNDAMOUNT , FUNPAIDAMOUNT ,FPAYDATE from ( --新增付款单关联采购订单 已经审核 select 'AP_PAYBILL' AS FORMID,A.FID AS FBILLID, A.FBILLNO AS FRELATBILLNO,B.FPAYITEM AS FPURBILLNO,B.FPURCHASEORDERID AS FID, sum( B.FPAYTOTALAMOUNTFOR) AS FPAYAMOUNT, 0 AS FPAYAPPLYAMOUNT ,'0' AS FISAYAPPLY,'0' as FTYPE,0 as FREFUNDAMOUNT ,0 as FUNPAIDAMOUNT,A.FDATE AS FPAYDATE from T_AP_PAYBILL A inner join T_AP_PAYBILLENTRY B ON A.FID=B.FID WHERE B.FPURPOSEID=20018 AND B.FPAYITEMTYPE='2' AND B.FPURCHASEORDERID>0 AND A.FDOCUMENTSTATUS='C' AND ISNULL( B.FPURCHASEORDERNO,' ')<>' ' group by A.FID,A.FBILLNO,B.FPAYITEM ,B.FPURCHASEORDERID ,A.FDATE union all --采购订单--付款申请单--付款单 已经审核 select 'AP_PAYBILL' AS FORMID,A.FID AS FBILLID,A.FBILLNO AS FRELATBILLNO,B.FPREPAYORDERNO AS FPURBILLNO,C.FID AS FID, sum( B.FREALPAYAMOUNT) AS FPAYAMOUNT , 0 AS FPAYAPPLYAMOUNT ,'1' AS FISAYAPPLY ,'0' as FTYPE ,0 as FREFUNDAMOUNT ,0 as FUNPAIDAMOUNT,A.FDATE AS FPAYDATE from T_AP_PAYBILL A inner join T_AP_PAYBILLSRCENTRY B ON A.FID=B.FID INNER JOIN T_PUR_POORDER C ON B.FPREPAYORDERNO=C.FBILLNO WHERE A.FDOCUMENTSTATUS='C' AND ISNULL( b.FPREPAYORDERNO,' ')<>' ' AND B.FPURORDERNO=b.FPREPAYORDERNO group by A.FID,A.FBILLNO,B.FPREPAYORDERNO,C.FID ,A.FDATE union all --手工新增采购订单预付关联采购订单 select 'AP_PAYBILL' AS FORMID,A.FID AS FBILLID,A.FBILLNO AS FRELATBILLNO,D.FBILLNO AS FPURBILLNO ,C.FASSBILLID AS FID ,sum( C.FASSAMOUNTFOR) AS FPAYAMOUNT , 0 AS FPAYAPPLYAMOUNT ,'0' AS FISAYAPPLY ,'0' as FTYPE,0 as FREFUNDAMOUNT ,0 as FUNPAIDAMOUNT ,A.FDATE AS FPAYDATE from T_AP_PAYBILL A inner join T_AP_PAYBILLENTRY B ON A.FID=B.FID inner join T_AP_ASSPURCHASEORDER C ON B.FENTRYID=C.FENTRYID AND C.FASSBILLID>0 inner join T_PUR_POORDER D ON C.FASSBILLID=D.FID WHERE A.FDOCUMENTSTATUS='C' group by A.FID,A.FBILLNO,D.FBILLNO ,C.FASSBILLID ,A.FDATE union all --应付付款金额 (1.应付单-付款申请单-付款单 2.应付单-付款单) select 'AP_PAYBILL' AS FORMID,A.FID AS FBILLID,A.FBILLNO AS FRELATBILLNO,B.FPURORDERNO AS FPURBILLNO,C.FID AS FID, sum( B.FREALPAYAMOUNT) AS FPAYAMOUNT , 0 AS FPAYAPPLYAMOUNT, CASE B.FSOURCETYPE WHEN 'CN_PAYAPPLY' then '1' ELSE '0' END AS FISAYAPPLY ,'0' as FTYPE ,0 as FREFUNDAMOUNT ,0 as FUNPAIDAMOUNT ,A.FDATE AS FPAYDATE from T_AP_PAYBILL A inner join T_AP_PAYBILLSRCENTRY B ON A.FID=B.FID AND b.FPREPAYORDERNO=' ' AND ISNULL( B.FPURORDERNO,' ')<>' ' inner join T_PUR_POORDER C ON B.FPURORDERNO=C.FBILLNO WHERE A.FDOCUMENTSTATUS='C' group by A.FID,A.FBILLNO,B.FPURORDERNO ,B.FSOURCETYPE,C.FID ,A.FDATE union all --累计申请金额 SELECT 'CN_PAYAPPLY' AS FORMID,A.FID AS FBILLID,A.FBILLNO AS FRELATBILLNO,B.FPURCHASEORDERNO AS FPURBILLNO,C.FID, 0 AS FPAYAMOUNT, sum(B.FAPPLYAMOUNTFOR) AS FPAYAPPLYAMOUNT, '0' AS FISAYAPPLY ,'0' as FTYPE ,0 AS FREFUNDAMOUNT, sum(B.FUNPAIDAMOUNT) AS FUNPAIDAMOUNT ,A.FDATE AS FPAYDATE FROM T_CN_PAYAPPLY A INNER JOIN T_CN_PAYAPPLYENTRY B ON A.FID=B.FID INNER JOIN T_PUR_POORDER C ON B.FPURCHASEORDERNO=C.FBILLNO WHERE A.FDOCUMENTSTAT

二开付款执行明细单据体

@[TOC](目录)### 背景2022年11月份版本,标准产品发布了采购订单付款执行视图查看功能:[https://vip.kingdee.com/link/s/lxX32](https://...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信