слетает акс при при обработке записей в рекордсете |
ctime = Now() 'create acc table sk = "select distinct history.ATTRIB_45 into accounts from history order by history.ATTRIB_45" 'таблица 37 000 записей + в рекордсете рс от силы еще на каждую запись с accounts максимум 150 записей DoCmd.RunSQL sk With CurrentDb Set accounts = .OpenRecordset("accounts") Do Until accounts.EOF acc = accounts.Fields("ATTRIB_45") Set rs = .OpenRecordset("select history.S_DATE, history.ATTRIB_45, history.BUCKET from history where history.ATTRIB_45 = '" & acc & "' order by history.S_DATE") i = 0 Do Until rs.EOF i = i + 1 If i = 1 Then bucket_cur_step = rs.Fields("BUCKET"): bucket_pr_step = rs.Fields("BUCKET"): data_pr_step = rs.Fields("S_DATE") If bucket_cur_step = rs.Fields("BUCKET") Then GoTo next_ Else bucket_cur_step = rs.Fields("BUCKET"): data_cur_step = rs.Fields("S_DATE") Set rs2 = .OpenRecordset("temp") rs2.AddNew rs2.Fields("begin_date") = data_pr_step rs2.Fields("ATTRIB_45") = acc rs2.Fields("begin_date_next") = data_cur_step rs2.Fields("BUCKET") = bucket_pr_step rs2.Fields("BUCKET_next") = bucket_cur_step rs2.Update rs2.Close bucket_pr_step = bucket_cur_step data_pr_step = data_cur_step next_: rs.MoveNext Loop rs.MoveLast bucket_cur_step = rs.Fields("BUCKET") data_cur_step = rs.Fields("S_DATE") Set rs2 = .OpenRecordset("temp") rs2.AddNew rs2.Fields("begin_date") = data_pr_step rs2.Fields("ATTRIB_45") = acc rs2.Fields("begin_date_next") = data_cur_step rs2.Fields("BUCKET") = bucket_pr_step rs2.Fields("BUCKET_next") = bucket_cur_step rs2.Update rs2.Close rs.Close accounts.MoveNext Loop accounts.Close End With
http://www.sql.ru/forum/1129362/sletaet-aks-pri-pri-obrabotke-zapisey-v-rekordsete
Комментировать | « Пред. запись — К дневнику — След. запись » | Страницы: [1] [Новые] |