Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / DBGRID / 4 сообщений из 4, страница 1 из 1
30.11.2010, 22:02
    #36987412
DUDALS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBGRID
Всем доброго времени суток.
Не могу неделю разобраться. На форуме не нашел. Суть вопроса: Почему в процессе разработки работает, а при компилировании глючит. Вот часть кода ставящего фильтр на количество записей по определенному условию.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
....
Select Case Me.cmbFiltr.ListIndex
Case  0  'область
strSQLFiltr = "SELECT * FROM FIO WHERE AdrOblast = '"
    If iSelCheck =  1  Then
        For iCheck =  1  To iAllCheck
          If Me.lstFiltr.Nodes(iCheck).Checked Then
                strSQLFiltr = strSQLFiltr & Me.lstFiltr.Nodes(iCheck).Text
          End If
        Next
    Else
    bolCheck = False
        For iCheck =  1  To iAllCheck
          If Me.lstFiltr.Nodes(iCheck).Checked Then
            If bolCheck = False Then
                strSQLFiltr = strSQLFiltr & Me.lstFiltr.Nodes(iCheck).Text
                bolCheck = True
            Else
                strSQLFiltr = strSQLFiltr & "' OR AdrOblast = '" & Me.lstFiltr.Nodes(iCheck).Text
            End If
          End If
        Next iCheck
    End If
    dtaTemp.RecordSource = strSQLFiltr & "' ORDER BY Fam, Im, Ot, God"
    dtaTemp.Refresh
    If Not (Me.dtaTemp.Recordset.EOF) And Not (Me.dtaTemp.Recordset.BOF) Then
        Me.dtaTemp.Recordset.MoveLast
        iCountFiltrRec = Me.dtaTemp.Recordset.RecordCount
        bolFiltr = True
    Else
        bolFiltr = False
    End If
Case  1 
....
If bolFiltr = True Then
    'устанавливаем фильтр
    frmMain.optFiltr.Value =  1 
    frmMain.optFiltr.Caption = "СНЯТЬ ФИЛЬТР"
    frmMain.optFiltr.ForeColor = &HFF&
        frmMain.dtaInfo.RecordSource = dtaTemp.RecordSource
        frmMain.dtaInfo.Refresh
        frmMain.dbgFIO.Refresh
        frmMain.stbInfo.Panels( 3 ).Text = iCountFiltrRec 'Информация о количестве записей
        'End With
    'MsgBox "Найдено " & iCountFiltrRec & " записей удовлетворяющих условию.", vbOKOnly + vbInformation, "Фильтр установлен!"
    Unload Me
Else
    MsgBox "Записей удовлетворяющих условию не найдено.", vbOKOnly + vbCritical, "Внимание!"
    frmMain.optFiltr.ForeColor = &H0&
    frmMain.optFiltr.Value =  0 
    frmMain.optFiltr.Caption = "УСТАНОВИТЬ ФИЛЬТР"
    'frmMain.mnuFile.Checked = False
    Unload Me
End If
...
Понимаю, что DBGRID не ахти, но ... не хочу переписывать много кода и переходить на другой грид.
Буду очень признателен за помощь.
...
Рейтинг: 0 / 0
30.11.2010, 23:22
    #36987499
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBGRID
В чем глюк-то?
...
Рейтинг: 0 / 0
01.12.2010, 05:46
    #36987715
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBGRID
DUDALS,

Потому что Вы видимо используете Menu Run, а не Run with Debug. Если это так, то используйте последнее, и скорее всего при разработке заглючит тоже. У меня перед глазами щас нет VB, могу неточно что-то назвать.
...
Рейтинг: 0 / 0
01.12.2010, 07:48
    #36987750
DUDALS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DBGRID
Shocker.Pro,

Глюк в том, что сформированный запрос и обновление грида выполняется только в среде разработки. В компилированной версии видно, что запрос выполняется (выводятся только нужные записи), но потом отображаются все записи. Проверял запрос через msgbox и так и так. В среде разработки 2 идущих в подряд msgboxa показывают 2 одинаковых запроса к базе, а в компилированной 1 запрос "select * from FIO where AdrOblast = 'МИНСКАЯ' order by Fam, Im, Ot, God", а сразу идущий за этим msgbox показывает, что запрос ни с того ни с сего стал "select * from FIO order by Fam, Im, Ot, God" - без where. Сломал уже моСг.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / DBGRID / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]