ThinkGeo.com    |     Documentation    |     Premium Support

Shape file date column retrieving the data

Could you please take a look at the attached example.

I have a shape file in wich i have a date column.

But thinkgeo shapefeaturesource in columnvalues is not giving me a valid date format.

Can you help me with this?



In the test page i have two buttons, a gridview, a label and a calendar control.




when i press the first button the gridview is filled with all (untyped) data.




When i press the second button, i put the value from the date field (as string) into the a label value. 

And i would like to select the date in the calendar, but is gives me the exception:

System.InvalidCastException: Conversion from string "20080924" to type 'Date' is not valid. at Microsoft.VisualBasic.CompilerServices.Conversions.ToDate(String Value) at 



 



sThinkGeo_SHPDateProblem.zip (48 KB)

Hi, Rui



I think the problem is caused by that you want to convert the date string to Date object and so the exception throws.

I suggest that when you have got the string from the date filed of Shape File and parse it manually. Please refer to the code below:




                lblDateValue.Text = features.First().ColumnValues.Item("DELIB_ELAB")
                Dim year As Integer = lblDateValue.Text.Substring(0, 4)
                Dim month As Integer = lblDateValue.Text.Substring(4, 2)
                Dim day As Integer = lblDateValue.Text.Substring(6, 2)
                Dim dt As DateTime = New DateTime(year, month, day)
                cal.TodaysDate = dt


Also if the date format is different from yyyymmdd and you need to change the code.


Thanks,


Khalil



Khalil, thanks. 
 After some research found out that in dbf the Date field are allways stored as 8byte, allways as YYYYMMDD, so like you’ve said i’ve to parse it. 
  
 I was hoping that in you ColumnValues you returned the Date as “YYYY/MM/DD”, so i could use it directly without having to verify if is or not a shp layer. 
  
 But no problem, it’s fixed. :)

Rui, 
  
 You’re welcome. OK, we will consider your suggestion about it. If you still have any problems please feel free to let me know. 
  
 Thanks, 
 Khalil