我创建了一个SSIS包,用于读取现有文件,并根据文件名和工作表进行更改/移动。我有一个C#脚本任务,这是一个同事编写的,它是为财政年度的开始和结束手动更新的;然而,我们还有其他人使用这个包,所以我想自动化财政年度的日期。
如何根据今天的日期获得当前财政年度的开始日期和结束日期?
我确实找到了Working out start of financial year和How to discover financial Year based on current datetime?,然而,我似乎无法得到最重要的答案。我使用的是Microsoft.Office.Interop.Excel的引用/名称空间,但我不确定这是否有区别。
2021年财政年度为09/01/2020至08/31/2021
今天是2022年8月19日,当前财政年度是09/01/2021 - 08/31/2022,但当我们到达09/01/2022,将改为09/01/2022 - 08/31/2023。
这就是我现在使用的,多次调用FYStart和FYEnd。
public partial class ScriptMain : Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase
{
public void Main()
{
//Update Fiscal Year Here (YYY, MM, DD):
DateTime FYStart = new DateTime(2021, 09, 01);
DateTime FYEnd = new DateTime(2022, 08, 31);发布于 2022-08-19 17:50:34
听起来你是在说,如果当月少于9,那么财政年度就从前一年开始。否则今年就开始了。
如果是这样,则可以在代码中通过以下方式表示:
public static int GetFinancialYearStart(DateTime input)
{
return input.Month < 9 ? input.Year - 1 : input.Year;
}然后,我们只需调用此方法来设置开始日期和结束日期::
int fyStartYear = GetFinancialYear(DateTime.Now);
DateTime fyStart = new DateTime(fyStartYear, 09, 01);
DateTime fyEnd = new DateTime(fyStartYear + 1, 08, 31);或者缩短的版本:
var fyStart = new DateTime(GetFinancialYear(DateTime.Today), 09, 01);
var fyEnd = fyStart.AddYears(1).AddDays(-1);https://stackoverflow.com/questions/73420408
复制相似问题