Solved

Argument 'DateValue' cannot be converted to type 'Date'.

Posted on 2003-11-18
4
1,909 Views
Last Modified: 2013-12-03
This is the line giving me the error: Dim CP = DateAdd("m", CouponMonths, CurrentCoupon)

That line is located in the following function:

Function CoupPrev(ByVal CurrentCoupon As Object, ByVal MaturityDate As Object, ByVal PaymentsPerYear As Double, ByVal Basis As Integer)
        ' Date of previous coupon to Current Coupon
        Dim CouponMonths = (12 / PaymentsPerYear) * -1
        Dim CP = DateAdd("m", CouponMonths, CurrentCoupon)
        If EndOfMonth(CurrentCoupon) And Not EndOfMonth(CP) Then
            Do
                CP = DateAdd("d", 1, CP)
            Loop Until EndOfMonth(CP) = True
        End If
        CoupPrev = CP
    End Function

This is the call to a function that then calls the function above causing the error:

BondPrice = KJUNK.BondPrice(CDbl(Me.txtParValue.Text), _
                                          (10 - 12 - 1999), _ ' these will be changed to variables once the code works
                                          (11 - 13 - 2001), _ ' these will be changed to variables once the code works
                                          CDbl(Me.txtRate.Text), _
                                          CDbl(Me.txtYield.Text), _
                                          CDbl(Me.txtRedemption.Text), _
                                          periods, _
                                          0)

I have been given the code to calculate Bond Price and I just need to call the code in the file KJUNK.  I'm not sure what is causing the problem but I feel it has something to do with the way I am passing in the Dates.  I've read up on some documentation but it seems right to me according to everything I have read so far.

Any thoughts?
0
Comment
Question by:roopi
  • 2
  • 2
4 Comments
 
LVL 1

Accepted Solution

by:
M_o_n_t_y earned 250 total points
ID: 9773445
Hi Roopi,

You're getting the error because CurrentCoupon is not a Date datatype. Make sure you are passing your dates in as a date type, like so:

CType("11-13-2001", Date)

Also, you may want to change your dim statement to:

Dim CP as Date = DateAdd("m", CouponMonths, CurrentCoupon)

Also, is your CurrentCoupon object supposed to be a Date? It's hard to tell 'cause it comes into the function "as Object". Are you sure you don't mean to be adding the date to MaturityDate or something?

                                     Monty
0
 

Author Comment

by:roopi
ID: 9773804
Monty I'm going to try that.  CurrentCoupon is a date.

The thing is I was provided with alot of VB6 code and now I'm building an ASP.NET application that uses this code.

I'm not sure if you can tell but this is a Financial Calculator for Bond Price.  Pretty much all I need to do is pass the data into the provided code and display the answer.  However I seem to be getting alot of errors and they are all relating to the date and ojects.

The code wasn't documented so it is difficult to follow and all the dates are being passed as objects.  I'm going to try your suggestion and if it works without to many headaches I'll go with it otherwise I'll cut my loses and just start from scratch and code it myself.

I'll post an update.
0
 
LVL 1

Expert Comment

by:M_o_n_t_y
ID: 9774068
A bit off subject, but...  coincidentally I know of an org looking for a Bond Management piece... is your software for Bond Management? If so, is it for those who issue bonds or for those that purchase them? If it's the former, please let me know. Thanks, and good luck!
0
 

Author Comment

by:roopi
ID: 9789392
Monty thanks for the advice.  It was excellent and worked perfectly.  We are developing simple financial calculators and a stock market simulator.   Nothing with Bond Management yet...

Thanks again,

Roopi
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
This video discusses moving either the default database or any database to a new volume.
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now