Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проясните, пожалуйста, ситуацию, хотя бы в общих чертах / 8 сообщений из 8, страница 1 из 1
01.03.2004, 10:20
    #32425798
Cranz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах:
есть 2 машины - как вбивать, удалять, изменять данные по локальной сети в одной таблице. VFP7.0, XP. Огромное спасибо всем, кто откликнется!
...
Рейтинг: 0 / 0
01.03.2004, 10:31
    #32425816
Hel!Riser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
работаешь так же как в локальной сессии, тока разница в открытии таблиц - опция SHARED в комманде USE и разные блокирофки выполнять при редактировании записей. Об этом лучше в книжках или хельпе почитать
...
Рейтинг: 0 / 0
01.03.2004, 10:39
    #32425832
Cranz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
Я пытался через установку ODBC-соединение. Выбираю по SELECT в курсор на локальной машине, вставляю запись в курсор. КАК заставить обновиться исходную таблицу. И вообще, правильной ли это подход?
...
Рейтинг: 0 / 0
01.03.2004, 10:42
    #32425837
???????___
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
а вот у меня не используется команда USE вообще... каждая форма в приватной датасессией.... блокировок не ставлю... на контролы форм навешены не сами поля а поля соответствующих селектов.. которые сбрасываются в исходные таблицы при нажатии так сказать на кнопку "Записать"
Все работает в сети и нормально.. правда специально не проверял что будет если 3 человека будут править одну и ту же запись - скорей всего сохранятся исправления того, кто последний нажал "Записать"
Покидайте в меня камнями - где же у меня жестокие огрехи.. только конструктивно плиз
...
Рейтинг: 0 / 0
01.03.2004, 16:19
    #32426662
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
Cranz
В общих чертах Hel!Riser уже объяснил.

Тебя вообще не должно волновать где физически расположена таблица. Работаешь так, как буд-то она лежит на машине клиента. Нужно только в файле конфигурации Config.fpw (это обчный текстовый файл) или непосредственно в программе настроить пути доступа к таблицам:

Для Config.fpw
PATH=\\ServerName\ShareFolder

Для программы
SET PATH TO \\ServerName\ShareFolder

Ну, и разумеется все таблицы и собственно базы данных следует открывать в режиме SHARED. Для этого можно сделать глобальную настройку SET EXCLUSIVE OFF.

Подключаться к таблицам через ODBC драйвер для связи в среде FoxPro - это не очень хорошая идея. Резко возрастает количество различных проблем.

Если ты взял курсор через SQLExec(), то для обновления источника необходимо ручками прописать еще один SQLExec() или сделать массу настроек CursorSetProp() чтобы сделать такой курсор обновляемым.

Того же самого результата можно добиться создав RemoteView, но здесь мы пойдем по кругу: RemoteView существует только в базе данных - а как сделать совместное использование одной базы данных.

???????___
Если ты явно не используешь команду USE - это еще не значит, что она не используется вообще. В твоем случае таблицы все-равно открываются через USE, просто ты этого не видишь. Это берет на себя DataEnvironment формы.

По поводу того, что лучше: работать с переменными памяти (GATHER/SCATTER или как у тебя SELECT) или использовать буферизацию. Лично я использую буферизацию.

Как-то была дискуссия с ярым сторонником использования переменных памяти, но убедить его так и не удалось. Буферизация - проще, но он уперся - а вот я привык так. Ну и ладно, пусть работает. Строго говоря - это есть симуляция буферизации "своими руками". Хочется тебе лишней работы - это твои проблемы.
...
Рейтинг: 0 / 0
01.03.2004, 16:41
    #32426715
ноль
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
Владимир, а у вас глюк будет если:
PATH=\\ServerName\ShareFolder , будет больше 255 байт.
Лучше сперва мапить каталог сервера, , ну допустим на E:\
Тогда получится :
PATH= E:\
И все.
...
Рейтинг: 0 / 0
01.03.2004, 17:27
    #32426841
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
Ноль
Сначала надо выйти на этот предел, а потом искать решение. Возможно, в Вашей задаче действительно используются такие длинные пути, но как правило речь идет об 1...2 уровнях вложенности причем имена как сервера, так и папок редко превышают 15...20 символов. Т.е. 255 символов хватает для указания 5...6 разных сетевых директорий.

Мы же говорим о подключении некоторой служебной папки, которую прочие пользователи вообще не должны видеть. Т.е. ей нет смысла давать некоторое "осмысленное" имя вроде: "Данные для совместного использования в моей сетевой программе".

Также нет смысла организовывать доступ к ней через начиная с диска "C:\", вполне достаточно зашарить только эту папку.

Фактически, это вопрос скорее организационный, чем программный.
...
Рейтинг: 0 / 0
01.03.2004, 18:17
    #32426924
Васек
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проясните, пожалуйста, ситуацию, хотя бы в общих чертах
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проясните, пожалуйста, ситуацию, хотя бы в общих чертах / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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