涉税数据采集会计期间开放(允许未结账期间采集涉税数据)

近期处理特殊业务(做笔记):需要将系统涉税数据采集会计期间开放(允许未结账期间采集涉税数据)
实现方案:插件:二开重写税务管理-涉税数据采集表单插件 放开期间选择;bos界面:涉税数据采集表单 取消 标准插件 并 注册启用二开插件;
标准插件:Kingdee.K3.FIN.IV.Business.PlugIn.IntegrationTax.TaxItgDataCollectionPlugIn

达到效果:

二开重写代码(仅供参考):
using Kingdee.BOS;
using Kingdee.BOS.App.Data;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using Kingdee.K3.FIN.IV.Business.PlugIn.IntegrationTax;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Linq;
namespace XXXX.Business.Plugin.IV_TAXITGDATACLCT
{
[HotUpdate]
[Description("涉税数据采集表单插件-含未结账")]
public class TaxItgDataCollectionPlugIn_CustomerDev : TaxItgDataCollectionPlugIn
{
public override void DataChanged(DataChangedEventArgs e)
{
int num = 0;
string fieldKey;
if ((fieldKey = e.Field.Key.ToUpperInvariant()) == null)
{
return;
}
if (!(fieldKey == "FACCOUNTBOOKID"))
{
if (fieldKey == "FYEAR")
{
DynamicObject dynamicObject = View.Model.GetValue("FACCOUNTBOOKID") as DynamicObject;
num = (dynamicObject != null) ? Convert.ToInt32(dynamicObject["Id"]) : 0;
if (!e.NewValue.IsNullOrEmptyOrWhiteSpace() && num != 0)
{
if (!acctBook_YearPeriod_Dic.ContainsKey(num))
{
acctBook_YearPeriod_Dic.Add(num, GetCloseYearPeriodByAccountBook(base.Context, num));
}
}
}
}
else if (!e.NewValue.IsNullOrEmptyOrWhiteSpace() && Convert.ToInt64(e.NewValue) != 0)
{
num = Convert.ToInt32(e.NewValue);
if (!acctBook_YearPeriod_Dic.ContainsKey(num))
{
acctBook_YearPeriod_Dic.Add(num, GetCloseYearPeriodByAccountBook(base.Context, num));
}
}
base.DataChanged(e);
}
public Dictionary<int, List<int>> GetCloseYearPeriodByAccountBook(Context ctx, int accountBookId)
{
Dictionary<int, List<int>> dictionary = new Dictionary<int, List<int>>();
string strSQL = st
涉税数据采集会计期间开放(允许未结账期间采集涉税数据)
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



