|
|
|
| Прошу помощи.
вот небольшой мой код
Set rst_det = CurrentDb.OpenRecordset("select * from det")
If Not rst_det.EOF Or Not rst_det.BOF Then
rst_det.MoveLast
rst_det.MoveFirst
End If
rst_det.MoveFirst
Do While rst_det.EOF = False
rst_det.Edit
if ******* ‘ выполнение инструкций
rez = text_int ‘ присваиваю переменной полученное значение в результате выполнения инструкции
End If
rst_det.Fields(16) = rez ‘ записываю в поле строки полученное значение
rst_det.Update ‘ обновляю
rst_det.MoveNext перемещаюсь к следующей записии
Loop
При выполнении если число строк меньше 9492шт то все нормально все работает
Если больше то rst_det.Edit выскакивает ошибка
Run-time error 3052
Превышено число блокировок файлов общего доступа увеличьте значение параметра реестра MaxLoksPerFile
что делаю не правильно не додумкаю.
а делаю яследующее, вначале создаю временную таблицу с данными выгружаемую из удаленного файла и далее поледнее поле в этой таблицы заполняю в зависимости от значения полей полученной из файла и выгружаю все в ексель. | |
|
| |
|
64 Кб. |
|
| 1.MaxLoksPerFile -увеличить раза в 2
2.Попробовать запросом. (Не знаю, что означает
в зависимости от значения полей полученной из файла
|
наверное какое-нибудь суммирование или что-то в этом роде.) | |
|
| |
|
|
|
| 1.попробую, но это решение только на одном компьютере, а отчет запускаю на разных компах. и скорее всего это не то решение
2. здесь в зависимости, что содержится в определеной ячейке, выбирается нужная формула для подсчета. | |
|
| |
|
|
|
| Программно
DBEngine.SetOption dbMaxLocksPerFile, 20000 | |
|
| |