Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 379
  • Last Modified:

Get year portion of the date

trying to get just the 2 digit year portion o fthe date

Below is my code.

If the month is greater than 9 i need to go to the next year 2011 but i just want the 11 part, if it is less than 9 i want to stay witht eh current fical year.

How can i just get the 2 digit year portion.

Private Function GenerateAutoNumber(ByVal VDATE As Date, ByVal currentNumber As String) As String
        Dim CurrMonth As String = DateTime.Now.ToString("MM")
        Dim Curryear As Double = Convert.ToDouble(currentNumber.Substring(0, 2))
        Dim CurrJulian As String = Convert.ToDouble(currentNumber.Substring(3, currentNumber.Length - 7))
        Dim TodayJulian As String = DateTime.Now.DayOfYear.ToString
        Dim AcnYear As DateTime
        Dim AcnJulian As String
        Dim Incriment As String
     
        If CurrMonth > "9" Then
            AcnYear = DateTime.Now.AddYears(1).ToString
            Response.Write(AcnYear)
            Response.End()
        Else
            Response.Write(DateTime.Now.ToString)
            Response.End()
        End If

        Dim autoNumber As Double = Convert.ToDouble(currentNumber.Substring(7, currentNumber.Length - 7))

        Dim strNumber As String = (autoNumber + 1).ToString("000")

        Return Year(VDATE).ToString.Substring(2) & "-" & VDATE.DayOfYear.ToString("000") & "-" & strNumber.Substring(0, strNumber.Length)
    End Function

Open in new window

0
kdeutsch
Asked:
kdeutsch
  • 2
  • 2
  • 2
  • +2
2 Solutions
 
ZhaolaiCommented:
           AcnYear = DateTime.Now.AddYears(1).ToString.SubString(2)
0
 
golftechCommented:

        Dim d As DateTime
        d = DateTime.Now()
        Dim m As Integer
        m = d.Month
        If m > 9 Then

        Else

        End If
0
 
kdeutschAuthor Commented:
Zhaolai

I have tried that and what i get in a response.write is
15/2011 9:57:41 AM

it looks like it just eliminates the 09 instead of getting the 11 in 2011.
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
EYoungCommented:
Dim mYear as integer
If Val(Mid(Format(Now(),"MM/dd/yyyy"), 1, 2)) > 9 Then
   mYear = Val(Mid(Format(Now(),"MM/dd/yyyy"), 7, 4)) + 1
EndIf
mYear = Mid(Str(mYear), 3, 2)
0
 
ZhaolaiCommented:
Ooops, my bad...
Try this:
AcnYear = DateTime.Now.AddYears(1).Year.ToString.SubString(2)

0
 
sybeCommented:
Why don't you just add 3 months to the current date, and then get the year.

<%
Year = Year(DateAdd("m", 3, Now()))
%>

and if you just want the last 2 numbers: subtract 2000:

<%
Dim YourWantedYear As Integer = Year(DateAdd("m", 3, Now())) - 2000
%>

(I know I use VBScript functions, they work in vb.net as well)
0
 
sybeCommented:
> If the month is greater than 9 i need to go to the next year 2011 but i just want the 11 part, if it is less than 9 i want to stay witht eh current fical year.

You are missing the part when the month is exactly 9.
0
 
kdeutschAuthor Commented:
Thanks
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 2
  • 2
  • 2
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now