Не обновляется Msflexgrid из рекордсета

Тема в разделе "Visual Basic", создана пользователем h7h2vC, 22 апр 2008.

Статус темы:
Закрыта.
  1. h7h2vC

    h7h2vC Гость

    Здравствуйте, есть процеду добавления записи в таблицу ACCESS:
    Код (Text):
    cn.Execute "INSERT INTO Variants (VariantNum, Step, ElementCode, work_code, WorkPlaceID, RoutingID) " & _
    "VALUES (" & cVariantNum & ", '" & txtStep.text & "', '" & cPart & "', '" & cWork_code & "', '" & cRM_code & "', " & cRoutingID & ")"
    И есть процедурка обновления MSFlexGrid1 из рекордсета, вызываемая сразу после добавления:
    Код (Text):
    'Заполняем таблицу новым маршрутом
    Public Sub DrawNewRoute(cn As ADODB.Connection, frmName As Form)
    Dim str_sql As String
    Dim rst As ADODB.Recordset
    Set rst = New ADODB.Recordset

    Call CloseADOConnection(cn) 'Закрываем подключение
    Call PerformADOConnection(cn) 'Открываем подключение

    str_sql = "SELECT Variants.Step, works.work_name, Structure.StructureName AS Name, Routing.Norm, Routing.Norm2, Variants.VariantID, Routing.RoutingID, Variants.WorkPlaceID, Variants.work_code, Variants.Step, works.work_name " & _
    "FROM (((Structure INNER JOIN Work_WorkPlace ON Structure.StructureID = Work_WorkPlace.WorkPlaceID) INNER JOIN works ON Work_WorkPlace.work_code = works.work_code) INNER JOIN Routing ON (works.work_code = Routing.work_code) AND (Structure.StructureID = Routing.WorkPlaceID)) INNER JOIN Variants ON (Variants.RoutingID = Routing.RoutingID) AND (Variants.work_code = works.work_code) AND (Structure.StructureID = Variants.WorkPlaceID) AND (Routing.RoutingID = Variants.RoutingID) " & _
    "WHERE (((Variants.ElementCode) = '" & Form3.DataGrid1.Columns(1).text & "')) " & _
    "AND Variants.VariantNum = " & CInt(frmName.cboVariantNum.text) & " " & _
    "ORDER BY Variants.Step"

    rst.Open str_sql, cn, adOpenDynamic, adLockReadOnly, adCmdText
    rst.Requery
    Дело в том, что если было 3 записи, мы добавили 1, то rst.RecordCount все равно будет равняться 3 сразу после добавления и обновления. Если же скопировать этот запрос (str_sql), сразу после добавления, в ACCESS то количество записей вернется верное, т.е. 4
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей