Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

The following code is my attempt to dynamically set the size of an array and then to dynamically assign values to it. However it is incomplete and I could do with some assistance.

Posted on 2004-08-30
10
Medium Priority
?
282 Views
Last Modified: 2012-05-05
The following code is my attempt to dynamically set the size of an array and then to dynamically assign values to it. However it is incomplete and I could do with some assistance.

Any feedback would be appreciated.

If someone could complete the missing links in the code I would be very thankful.

Dim MyArray() As Integer
Dim nCountOfRecords As Integer
Dim I As Integer

Dim cnn As String = (ConfigurationSettings.AppSettings("SomeWebSite"))
    Dim objConnection as new sqlConnection(cnn)
     Dim objCommand as new SqlCommand("procThatCountsTheIDs", ObjConnection)
    objCommand.CommandType = CommandType.StoredProcedure
     
     Dim ObjCountRecords as new SqlParameter("@ObjCountRecords",SqlDbType.int)
     ObjCommand.Parameters.Add(ObjCountRecords)
     ObjCountRecords.Direction=ParameterDirection.Output 'Gets the value that will be the array size

Try
     objConnection.Open()
     ObjCommand.ExecuteNonQuery()
     objConnection.Close()
     Catch ex as Exception
     Response.Write("Error:" & ex.Message & "<br/>")
     End Try

' Assign the number of records to the 'nCountOfRecords' variable

nCountOfRecords =(ObjCommand.Parameters("@ObjCountRecords").Value)   'Should this be... (ObjCommand.Parameters("@ObjCountRecords").Value)-1.....?
    ReDim MyArray(nCountOfRecords)   ' re-dimension as needed

'It seems to me, the following code dynamically sets the size of the array so do I need to do another DbQuery and then assign the actual IDs to the  array?
    ' Assignment
    For I = 1 To nCountOfRecords
    MyArray(I) = I '<- this will a assign I to MyArray
    Next

'So now I need some code that assigns the ID to the newly created array

'So code here.............


'Now display ....say....MyArray(4) and MyArray(22)
'Just use a couple of labels or something.

Cheers

PG
0
Comment
Question by:pgilfeather
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
10 Comments
 
LVL 2

Expert Comment

by:dimitry_dimitry
ID: 11930456
Use array.createinstance to create an array of specified type and length.
use array.copy to copy elements from array 1 to array 2, specifying starting and ending bounds.
these routines can be used to implement array resizing.
You can also use ReDim statement
0
 

Author Comment

by:pgilfeather
ID: 11930492
dimitry_dimitry

No point using English....Im using VB.NET

Cheers

PG
0
 
LVL 2

Expert Comment

by:dimitry_dimitry
ID: 11930564
And what?
VB.NET does not allow dynamic array creation methods that I posted?
0
Independent Software Vendors: 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!

 

Author Comment

by:pgilfeather
ID: 11930810
dimitry_dimitry,

Please dont mistake my short response as sarcasm, because I genuinly wasnt trying to be sarcastic.

The reason for such a short response was simply to convey that I was looking for some actual VB.NET code. It clearly says this in my question.

Sorry if I offended you, it was never my intention.

Thanks for trying to help, I really do appreciate it.

Kind Regards

PG
0
 
LVL 3

Expert Comment

by:IceColdas
ID: 11930823
try this one
Dim MyArray() As Integer
...
ReDim Preserve  MyArray(nCountOfRecords)
0
 

Author Comment

by:pgilfeather
ID: 11930846
IceColdas

So how does this fit into my question.

Cheers

PG
0
 
LVL 3

Accepted Solution

by:
IceColdas earned 2000 total points
ID: 11930883
declare at first MyArray as an array of 50 elements (or whatever u want)
read every value in MyArray when u execute the DBquerry, and if the size of the array must grow, then allocate another 50 elements to it. And so on.
0
 

Author Comment

by:pgilfeather
ID: 11930919
Thanks
0

Featured Post

Technology Partners: 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!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
Make the most of your online learning experience.
Six Sigma Control Plans
Loops Section Overview

610 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