Ошибка "Overflow", добавление узлов в TreeView если "key" в таблице больше 5 знаков
|
|
Четверг, 14 Апреля 2016 г. 08:12
+ в цитатник
Столкнулся с проблемой. Не добавляются узлы в TreeView при key и parent =123456. Если 12345 то все отлично. Никак не пойму в чем косяк. Помогите найти.Спасибо.
Option Compare Database
Option Explicit
'добавление узлов в TreeView при открытии (рекурсивная процедура)
Public Function TreeView_Node_Add(obj_TreeVieW As Object, i As Integer, sParentKey As String) As Boolean
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset("SELECT * FROM TablTree WHERE [Parent] = " & i)
Do Until rst.EOF
Call TV_ДобавитьУзел(obj_TreeVieW, "Key" & CStr(rst![Key]), rst("Text"), sParentKey)
'вызываем повторно, каждый раз подставляя текущее значение Кеу на место Parent,
'таким образом "вытягивается" вся цепочка каждой группы.
Call TreeView_Node_Add(obj_TreeVieW, rst![Key], "Key" & CStr(rst![Key]))
rst.MoveNext
Loop
End Function
Option Compare Database
Option Explicit
Public NodeRS As Recordset
Function TV_ДобавитьУзел(var_TreeView As Control, _
var_Ключ As Variant, _
var_Текст As String, _
Optional var_РодительскийКлюч = Null, _
Optional var_ОтношениеКРодителю = tvwChild, _
Optional var_Recordset As Recordset) As Boolean
Dim boolUseRS As Boolean
Dim ndNode As Object
If Not var_Recordset Is Nothing Then
boolUseRS = True
Else
boolUseRS = False
End If
If Nz(var_РодительскийКлюч) = "" Then
Set ndNode = var_TreeView.Nodes.Add(, var_ОтношениеКРодителю, var_Ключ) ' = var_Текст
Else
Set ndNode = var_TreeView.Nodes.Add(var_РодительскийКлюч, var_ОтношениеКРодителю, var_Ключ) ' = var_Текст
End If
ndNode.Text = var_Текст
If boolUseRS Then
var_Recordset.AddNew
var_Recordset!Key = var_Ключ
var_Recordset!Text = var_Текст
var_Recordset.Update
End If
End Function
http://www.sql.ru/forum/1209818/oshibka-overflow-dobavlenie-uzlov-v-treeview-esli-key-v-tablice-bolshe-5-znakov
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-