Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: как присвоить уникальные имена переменным Добавлено: 01.01.03 17:28  

Автор вопроса:  DmitryM
Имеется собственный класс clsEmployee, который имеет ряд свойств, таких как Имя, Фамилия и т.д.
  Количесво определяемых объкетов типа clsEmployee может меняться в зависимости от количества записей возвращенных
  во запросу.
  Как определить эти переменные с униакльными именами типа empl1, empl2 или как-то именаче.
  Если присваиваю массиву то запоминается только последнее присоваение.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #1 Добавлено: 01.01.03 20:32

Попробуй перебрать записи в цикле, и получишь столько emp-ов,сколько у тебя записей!!!.Если не то, то поконкретней задай вопрос, а то может я чего не понял!!!

empl & rs.AbsolutePosition+1

Ответить

Номер ответа: 2
Автор ответа:
 DmitryM



Вопросов: 4
Ответов: 2
 Профиль | | #2 Добавлено: 02.01.03 15:22

Результаты запроса помещаются в DataSet.

Затем в цикле перебираются все записи и должны определяться переменные. Сложность именно в определении переменной как класса (Dim empl as New clsEmployee работает, но надо чтоюбы имена переменных менялись empl1, empl2 и т.д) если задавить стейтмент как Dim empl & i as New clsEmployee, (где i as integer) выдается ошибка что ожидается окончание стейтмента.

Есть еще одна сложность что из цикла необходимо вызвать процедуру определения переменных, т.к. при определении переменной внутри цикла ее зона видимости ограничивается телом цикла, поэтому перееннцю надо передавать в виде аргумента в процедуру. Например:

Public Sub FillTheList(ByVal sSQLString As String)

lstListDocuments.Items.Clear()

Dim dsResult As New DataSet()

dsResult = GetDataSet(sConnectionString, sSQLString) 'функция работы с базой данных все работает нормально

Dim nElements As Integer = dsResult.Tables(0).Rows.Count - 1

Dim i As Integer

For i = 0 To nElements

'здесь должно быть пределение переменой Dim empl as  clsEmployee

Call NewEmployee(empl) ' определяем объект

With dsResult.Tables(0).Rows(i)

empl.FirstName = CInt(.Item("Empl_FirstName"))

empl.LastName = CStr(.Item("Empl_LastName"))

empl.Department = CDate(.Item("Empl_Department"))

doc(i).FileName = CStr(.Item("Doc_File"))

End With

lstListDocuments.Items.Add(empl.Empl_FullName)

Next

End Sub

Public Shared Sub NewEmployee(ByVal empl As clsEmploye)

empl = New clsEmployee()

End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам