Python实现报表联查单据

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

Python实现报表联查单据

一、【使用场景】: 二开一张简单账表,双击明细行,通过python脚本实现联查单据


二、【代码示例】:

import clr
clr.AddReference("System")
clr.AddReference("System.Core")
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.Core")
clr.AddReference("Kingdee.BOS.DataEntity")
clr.AddReference("Kingdee.BOS.ServiceHelper")
from System import *
from System.Collections.Generic import *
from System.ComponentModel import *
from Kingdee.BOS.Core.Bill import *
from Kingdee.BOS.Core.DynamicForm import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.Core.Metadata import *
from Kingdee.BOS.Core.Metadata.FormElement import *
from Kingdee.BOS.Core.Permission import *
from Kingdee.BOS.Core.Report import *
from Kingdee.BOS.Core.Report.PlugIn import *
from Kingdee.BOS.Core.Report.PlugIn.Args import *
from Kingdee.BOS.Core.SqlBuilder import *
from Kingdee.BOS.Orm.DataEntity import *
from Kingdee.BOS.ServiceHelper import *
from Kingdee.BOS.Resource import *

def CellDbClick(e):
    fbillNo = str(this.View.GetCurrentRowValue("FBILLNO"))
    formId = str(this.View.GetCurrentRowValue("FFORMID"))
    fm = MetaDataServiceHelper.GetFormMetaData(this.View.Context, formId)
    form = fm.BusinessInfo.GetForm()
    param = QueryBuilderParemeter()
    param.FormId = formId
    param.FilterClauseWihtKey = "FBILLNO = '" + fbillNo + "'"
    
    # 获取到单据内码
    param.BusinessInfo = fm.BusinessInfo
    tolist = List[SelectorItemInfo]()
    tolist.Add(SelectorItemInfo(form.PkFieldName))
    param.SelectItems = tolist
    dynObjs = QueryServiceHelper.GetDynamicObjectCollection(this.View.Context, param)
    
    # 联查单据展示
    para = BillShowParameter()
    para.OpenStyle.ShowType = ShowType.MainNewTabPage
    para.FormId = formId
    para.Status = OperationStatus.VIEW
    para.PKey = str(dynObjs[0]["FID"])
    this.View.ShowForm(para)


3.webp


二、【实现效果】:

1.webp



2.webp





以上分析及处理方案是一些个人的理解,如有不对之处,还请指正。

Python实现报表联查单据

一、【使用场景】: 二开一张简单账表,双击明细行,通过python脚本实现联查单据二、【代码示例】:import clrclr.AddReference("System")c...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息