powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access, локальная сеть и запрос на выборку
16 сообщений из 16, страница 1 из 1
Access, локальная сеть и запрос на выборку
    #39333803
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем!

Столкнулся с проблемой, не понимаю как ее решить...
Файл, лежит в общей папке, работают в нем одновременно два человека с разных ПК.
Осуществляют телемаркетинг по заданиям.

И есть запрос, который должен получить номер следующего задания.
При это прочитав данные из трех таблиц.

Таблица Предикторы_локал имеет список всех заданий.
Таблица Предикторы_звонки_локал имеет список звонков - звонок создается при выдаче задания, и записывается без даты завершения звонка (открытое задание).
Соответственно надо получить ID следующего задания из таблицы Предикторы-локал , для которого нет ни одной связанной записи в таблице Предикторы_звонки_локал .

Проблема в том, что в одной конфигурации происходит мистика: при выполнении такого запроса - система ИНОГДА не видит открытые звонки, и выдает в работу задание, которое сейчас открыто у другого сотрудника.

Подумал проблема в блокировках, потом я добавил таблицу сессий, в которой прямо указываю с каким заданием сейчас работают сотрудники, но и это не помогло. Та же проблема.

Думаю что проблема в кэшах, почему то на момент формирования Access смотрит не в ту таблицу, которая лежит в общей папке, а во временную, и берет не корректное значение... Но почему так происходит?

Причем эта ошибка повторяется только в одной конфигурации сети - Ноутбук с общей папкой + Ноутбук с доступом к той папке. Пробовали на других компах с разными конфигурациями (через сервер, также на общем диске) - искусственно не смогли повторить такую ситуацию, задания выдаются по очереди и не задваиваются!

Помогите разобраться, в чем может быть проблема?
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39333878
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Толикmanнадо получить ID следующего задания из таблицы Предикторы-локал , для которого нет ни одной связанной записи в таблице Предикторы_звонки_локал .А как именно это делается, нам предложено угадать?
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334036
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сетевая папка может быть настроена на оффлайновый доступ, тогда механизмы доступа к файлу меняются и данные не всегда актуальны. Попробуйте прибить шару на проблемном ноутбуке и подключить ее снова, чтобы не разбираться с настройками
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334053
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, не вложилось что-то...
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334058
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторСетевая папка может быть настроена на оффлайновый доступ, тогда механизмы доступа к файлу меняются и данные не всегда актуальны.

MrShin, то есть в момент чтения он обращается к локальной версии файла, а в момент записи все же пытается достучаться до реальной версии? Значит мне для "синхронизации" надо перед чтением добавить операцию записи (например сессию раньше обновлю) и тогда локальная версия автоматически обновиться и при чтении я получу актуальные данные? Но останется проблема с блокировками...

Пересоздать общую папку попробуем обязательно.
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334071
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТоликmanЗначит мне для "синхронизации" надо перед чтением добавить операцию записи (например сессию раньше обновлю) и тогда локальная версия автоматически обновиться и при чтении я получу актуальные данные? Но останется проблема с блокировками...
Конечно останется. Не надо костылями пытаться обойти то, что должно быть безусловно отключено. Если именно это является причиной, конечно.
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334079
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaТоликmanнадо получить ID следующего задания из таблицы Предикторы-локал , для которого нет ни одной связанной записи в таблице Предикторы_звонки_локал .А как именно это делается, нам предложено угадать?

истина скорее всего здесь, Акина не зря спросил, если бы первый кто вычислил новый ID однозначно сразу его и устаканил бы (вычислил ID, создал новую запись (вплоть до того что уйти с неё на предыдущую, а потом вернуться обратно) думаю не было бы проблем... имхо не явный захват ID... надеюсь клиенты везде и способы подключения одинаковые...
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334091
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Толикman,

А каким образом получаете следующий ключ? Если это поле с автонумерацией, то, по идее не должно быть задваиваивания, даже если создавший запись не сошел с новой записи и не записал ее полностью - автонумератор увеличивает счетчик сразу, вне зависимости от того, была записана новая запись или нет. Если создаете руками - могут быть проблемы, я бы не полагался на самописные алгоритмы. Есть, конечно, свои нюансы с автонумерацией, даже просто форма с подчиненной субформой может при некоторых специфичных условиях сгенерировать в поле с автонумерацией повторяющееся значение даже в однопользовательской среде, но правильно сделанные формы работают без проблем.
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334227
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MrShin, в таблицу Предикторы_локал загружаются клиенты - Каждый клиент и есть задание, но поле Код (ID) устанавливается не счетчиком а запросом, потому что список клиентов сливается из общей базы клиентов, и его номер тянется оттуда для дальнейших связей.

В таблице Предикторы_звонки_локал - ID ставится автоматом.

В момент работы телемаркетологов подгрузки данных не происходит, поэтому задания резервируются из "статического" набора таблицы Предикторы_локал

авторимхо не явный захват ID
Почему же неявный?

Есть таблица с клиентами Предикторы_локал .
Есть таблица с звонками Предикторы_звонки_локал .
По клиенту нет звонка - клиент свободный, берем в работу.
Создаем звонок связанный с клиентом, тем самым резервируем клиента.
Следующий телемаркетолог по такой же логике не получит одного и того же клиента, или я ошибаюсь?

Я понимаю к чему клоните, что в момент запроса другого пользователя, Access может не увидеть созданный звонок (он сейчас создается, прям вот сейчас), но это конфликт в доли секунды, и наверное его можно решить если заблокировать всю таблицу со звонками а не изменяемой записи верно? Это кстати тоже для меня пока вопрос...

Да и проблема не в секундах а в минутах...
Одна позвонил в 14:10 и завершила разговор в 14:20.
Так, пока она говорила с клиентом, второй телемаркетолог в 14:15 взял того же клиента. Ну за 5 минут то все запросы были выполнены?

Во вложении запрос на добавление - он берет код клиента запросом, скрин которого есть выше (там установлен лимит на количество записей = 1), и вставляет новую запись в Предикторы_звонки_локал .
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334267
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТоликmanЕсть таблица с клиентами Предикторы_локал .
Есть таблица с звонками Предикторы_звонки_локал .
По клиенту нет звонка - клиент свободный, берем в работу.
Создаем звонок связанный с клиентом, тем самым резервируем клиента.

мутновато... в этой связке многовато вокруг условий (тем более в запросах), по которым определяется статус занят / свободен...
а если в преликат_локал тупо поставить галочку "занят" ? если оператор сел на запись, то сразу ставит признак "занято", при уходе (завершении) снимает галочку, ну и развить, чтоб отображалось кто висит, сколько висит, возможность принудительного сброса занято (на случай если вместо разговора арм отвалился)... не ?
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334287
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, это я рассматривал, но ввиду обязательности регистрации звонков (их может быть несколько, каждый надо посчитать, например отложенные звонки), решил что добавлять столбцы будет избыточным - ведь уже есть таблица со звонками, в которую записывается результат звонка.

К тому же я писал, что создал еще одну таблицу - сессии, там количество записей по количеству сотрудников работающих в базе - каждые пять минут по таймеру сессия актуализируется, тем самым видно кто отвалился/ушел с работы, кто еще работает.
И там я прямо в лоб пишу номер клиента/задания, с которым сейчас работает сотрудник.

И потом смотрю запросом, если в сессиях данный клиент указан, то не брать его в работу.
В итоге получилась двойная проверка на занятость клиента/задания.

Дело в том, что это все отлично работает в других комбинациях сети/компов, мы больше нигде не смогли повторить такой ошибки.

А вот на конкретных двух компах это вылетает, пока надеюсь на оффлайн доступ...

ИМХО: Ну лично мне кажется, что писать информацию о резервации прямо в той таблице, в которой данные хранятся не совсем этично, я часто пользовался дополнительными таблицами, которые управляли очередями, и всегда работало... Конечно это сопряжено с увеличением времени выполнения запроса, но индексами это все почти нивелируется.
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334306
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Толикman,

ну вам виднее...
наведите мышкой на таблицу сессий в ноуте и посмотрите подсвеченный путь (где она лежит), если путь такой как у всех, то напрашивается вывод, что на этом ноуте не работает таймер по обновлению таблицы сессий...
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334316
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, в том то и дело, что работает!!!))))

Ошибка есть, сессии корректные, звонки есть, все говорит о том, что этого не должно было произойти, но оно случилось...
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334368
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Толикman,

и тут на всех компах тоже одинаково ?
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334407
Толикman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, хороший вопрос, не проверял. у нас access 2010, там в параметрах клиента это, верно же?
...
Рейтинг: 0 / 0
Access, локальная сеть и запрос на выборку
    #39334414
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Толикman,
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access, локальная сеть и запрос на выборку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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