powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Доступ в сети VFP+VFP
8 сообщений из 8, страница 1 из 1
Доступ в сети VFP+VFP
    #34937237
str_vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите пожалуйста понять, как организовать работу в сети. Раньше это была не сетевая прога на VFP, т.е на каждом компе стояло по копии ПО в которые операторы вносили данные, потом БД объединялась и обрабатывалась дальше. Теперь нужно чтобы операторы обращались к одной БД в сети. Переход на SQL, MySQL пока не возможен (надо уметь с ними работать), сервера отдельного нет. т.е. БД будет стоять на компе одного из операторов. Как правильно обращатья к БД из клинетской части, что должно быть на клиенте, а что на сервере (БД), нужен ли ODBC. Укажите пожалуйста структуру и минимум команд для соединения (SQLConnect, SQLDisConnect), где транзакциии. Дело в том, что начитался всего чего смог найти, а в голове только каша, мне хоть один простой пример как достучаться по сети к БД записать в таблички данные. Заранее спасибо.
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937293
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расшарь папку, выдели права для юзеров, на машинках подключи сетевой диск и пользуй как локальными дбф-ками. Только опять же как написана программа? Блокировки, эксклюзивное использование таблиц и пр.
Лучше конечно исползовать отдельную машину для файл-сервера. Чтобы небыло такого:
база у Мишы, Миша в отпуске и ни кто не знает его пароль. Или База у Светы, а Света решила пораньше уйти с работы и выключила комп :) а в это время Миша заносил данные и база екнулась :)
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937354
str_vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программка написана без блокировок, но думаю переделать с командами flock и тд. смогу. Права раздавать в winde, компы в общем пользовании входят на них без паролей и пользуют общим скопом.
Т.е. как понял работаешь как с локальной Бд (как один пользователь) единственно добавляешь разделение доступа к таблицам или их полям в момент записи. Нужна буферизация? (ранее не использовал такие вещи, но представление что такое имею)
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937372
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй воспользоватся поиском - тема обсуждалась неоднократно. Почитай про буфферизацию и блокировки.
Если кратко - таблицы открываешь неисклюзивно. Все операции требующие есклюзивного доступа выносятся в отдельный модули и выполняются администратором по мере необходимости. Для таблиц включаешь буфферизацию (лично я предпочитаю оптимистическую табличную) редактируешь данные в буффере, потом проверяешь не именились ли данные в таблице (т.е. не успел ли кто отредактировать запись до тебя) если изменились - принимаешь решение сбрасывать свои изменения или нет. Если решил сбрасывать - выполняешь TableUpdate() Смотришь что она возвращает и если обновление не прошло разбирешься почему
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937405
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
str_vladПрограммка написана без блокировок, но думаю переделать с командами flock и тд. смогу. Права раздавать в winde, компы в общем пользовании входят на них без паролей и пользуют общим скопом.
Т.е. как понял работаешь как с локальной Бд (как один пользователь) единственно добавляешь разделение доступа к таблицам или их полям в момент записи. Нужна буферизация? (ранее не использовал такие вещи, но представление что такое имею)
Впринципе ,уфферизация заменяе собой самопальное - RLock(), SCATTER, редактирование, GATHER, UNLOCK
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937571
Fffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Существуют и другие возможности.

Если в будущем предполагается переход на клиент-сервер (SQL Server и т.д.), есть смысл сразу избрать такую технологию.
1. Данные хранятся на самом надежном компьютере (файл-сервер).
2. В начале работы программа, работающая на локальном компьютере, при помощи запросов к данным на файл-сервере получает данные в локальные курсоры.
Код: plaintext
1.
2.
3.
Select ..., ...,
From \\Путь к данным на ФС\ИмяТаблицы
Into Cursor ИмяКурсора NoFilter ReadWrite

После выборки таблицы можно сразу закрывать.

3. Добавлять, изменять и удалять данные командами SQL
Insert, Update, Delete.

Продумать алгоритм создания на ФС и получения индексов.

После этих операций таблицы также лучше закрыть.

4. Путь к данным на сервере лучше не задавать в запросе,
а хранить отдельно на клиенте.

5. Измененные данные можно также передавать не в процессе работы программы, а в конце сеанса. В этом случае нагрузка на таблицы будет еще меньше.

При такой технологии работы писать надо чуть больше кода. Но код этот достаточно простой.
И при последующем переходе на клиент-сервер можно будет взять готовую модель.
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937682
str_vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Операторов не больше трех-четырех больше и не будет (обычно 2), данные они вносят постоянно, сохраняя информацию и только после этого могут распечатать нужный бланк (это обязательное условие). Однако они выбирают много информации из справочников (каждый отдельной табличкой). Заносят данные сразу в 3 связанные таблички (по принципу один ко многим tab1->tab2->tab3 т.е если косяк в третей то и в первую сохранять не надо).
Вообще спасибо за уже предоставленную информацию многое уже прояснилось.
1. Лучше расшарить сетевой диск выложить на него БД
2. прописать отдельно пути к ней
3. Обращаться к табличкам используя буферизацию (думаю с записью в таблички через транзакцию где tableupdate )
4. таблички использовать у юзеров через set exclusive off
Я правильно понял?
Вот индексы их нужно создать на сервере, а пользователю спецально тянуть как-то не надо?
И .. рационально ли при таком количестве пользователей создавать клиент-серверную систему?
...
Рейтинг: 0 / 0
Доступ в сети VFP+VFP
    #34937753
Fffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Доступ в сети VFP+VFP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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