برای ثبت فاکتورهای خرید و فروش نیاز به تعیین سال مالی هست که من برای نرم افزار یک جدول ایجاد کردم با نام FiscalYears (سالهای مالی) که سال های مالی کاربر در اون ثبت می شه:
Annotation 2024-05-06 073309.jpg
برای اضافه شدن سال مالی یک رویه در نظر گرفتم که بیشترین تاریخ (سال مالی جدیدتر) بالاتر از بقیه سال های مالی در لیست قرار بگیره:
Sub AcceptFiscalYearForm(ID As Guid)
With MainForm
With .FiscalYearsTableAdapter1.GetDataBySelectRecord(ID )
If .Rows.Count = 0 Then Exit Sub
Dim y, m, d As Integer
With .Item(0)
y = .Year
m = .Month
d = .Day
End With
Dim InsertIndex As Integer = 0
With Me.LendersToolStrip
NewItem = New FiscalYearItem(ID, y, m, d)
For i = 0 To .Items.Count - 1
Select Case DirectCast(.Items(i), FiscalYearItem).Year
Case Is > y
InsertIndex = i + 1
Case Is < y
InsertIndex = i
Exit For
End Select
Next
.Items.Insert(InsertIndex, NewItem)
'.SetExplain(NewItem, "@CapitalerInfo")
End With
End With
End With
RestoretoDefault()
End Sub
Annotation 2024-05-06 073712.jpg
Annotation 2024-05-06 073939.jpg
دستور Query برای بارگذاری آیتم ها:
SELECT ID, Year, Month, Day
FROM FiscalYears
ORDER BY Year DESC