|
|
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Подскажите как лучше и правильнее делать, открывать таблицы в Init формы через команду Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 14:17 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Зависит от конкретной задачи. Для очень большого круга задач вполне достаточно включить таблицу в DataEnvironment. Если же по каким-либо причинам необходимо вручную контролировать открытие и закрытие таблиц, то это надо делать в событиях формы LOAD и UNLOAD по той причине, что в INIT-формы открывать таблицы уже "поздно", поскольку инициализация объектов формы выполняется до метода INIT-формы. Это значит, что при открытии таблицы в INIT-формы придется вручную повторить процесс привязки объектов формы к таблицам для некоторых объектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 14:35 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Даже если Вы их добавите в Data Envinroment их все равно придется открывать и закрывать. Лично я делаю так (при отладке): 1. Создаю программный файл. 2. В нем открываю базу данных. 3. Затем открываю все таблицы в свободной рабочей области Use myTable in 0 4. А в формах обращаюсь к нужной таблице через Select Select myTable А когда компилирую файл, то в главную процедуру приложения переношу туда весь код открытия базы данных и таблиц (см. выше). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 14:42 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Мамы всякие нужны, мамы всякие важны .... Как правильнее - вряд ли кто скажет ... Можно говорить о том, как привычнее, как оптимальнее при решении конкретной задачи и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 14:57 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Away_NДаже если Вы их добавите в Data Envinroment их все равно придется открывать и закрывать. Почему? При настройках AutoOpen = .T. и AutoClose = .T. (это значения по умолчанию) все произойдет автоматически. Away_NЛично я делаю так (при отладке): 1. Создаю программный файл. 2. В нем открываю базу данных. 3. Затем открываю все таблицы в свободной рабочей области Use myTable in 0 4. А в формах обращаюсь к нужной таблице через Select Select myTable А когда компилирую файл, то в главную процедуру приложения переношу туда весь код открытия базы данных и таблиц (см. выше). Даже для работы в FPD такой подход кажется избыточным. Зачем же открывать ВСЕ таблицы? А как быть с Private DataSession? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 14:58 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Почему? При настройках AutoOpen = .T. и AutoClose = .T. (это значения по умолчанию) все произойдет автоматически. Я fox я изучаю всего год (и скажу честно, что мне многому еще нужно поучиться при работе с этой СУБД ). Но сколько я не создавала формы, даже если эти настройки стоят (AutoOpen, AutoClose), Fox все равно требовал открыть соответствующую таблицу. Поэтому я выбрала метод, хоть и громоздкий, но верный: буду знать, что в последствии не вылетит ошибка: Canot access the selected table или что-нибудь в этом роде. Может есть более простой способ, но пока я к этому еще не пришла. Как говорится: "делать буду пока так, как сказала мама". С уважением Away_N. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 15:19 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Away_N ВладимирМ Почему? При настройках AutoOpen = .T. и AutoClose = .T. (это значения по умолчанию) все произойдет автоматически. Я fox я изучаю всего год (и скажу честно, что мне многому еще нужно поучиться при работе с этой СУБД ). Но сколько я не создавала формы, даже если эти настройки стоят (AutoOpen, AutoClose), Fox все равно требовал открыть соответствующую таблицу. Поэтому я выбрала метод, хоть и громоздкий, но верный: буду знать, что в последствии не вылетит ошибка: Canot access the selected table или что-нибудь в этом роде. Может есть более простой способ, но пока я к этому еще не пришла. Как говорится: "делать буду пока так, как сказала мама". Чтобы сказать в чем проблема, надо знать ТОЧНОЕ сообщение об ошибке. Т.е. дословно. На что Fox ругался? Более того, в какой момент это сообщение возникает? На этапе разработки приложения или же при запуске готового EXE? При работе с DataEnvironment надо очень тщательно следить за текущей директорией и настройкой SET PATH, поскольку они являются определяющими при автоматическом поиске файлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 15:30 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Кстати, ВладимирМ, по ходу дискута у меня возник к Вам вопрос именно по команде Set Path. Следующая запись команд использует текущую дирректорию, и в каталогах bmp;class;data;dhelp;forms;prg;report ищет соответствующие типы файлов? авторDEFAULT=.\ path=bmp;class;data;dhelp;forms;prg;report Я правильно понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 15:44 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
В таком синтаксисе, директории, перечисленные в PATH - это относительные пути. Относительно текущей директории. Но это именно пути . Какие именно типы файлов там лежат для FoxPro не имеет никакого значения. FoxPro будет искать файл во всех перечисленных путях. Вне зависимости от его типа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 15:54 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
ВладимирМВ таком синтаксисе, директории, перечисленные в PATH - это относительные пути. Относительно текущей директории. Но это именно пути . Какие именно типы файлов там лежат для FoxPro не имеет никакого значения. FoxPro будет искать файл во всех перечисленных путях. Вне зависимости от его типа. То есть,программа при переносе на другую машину будет привязываться именно к тому каталогу, куда ее поместили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 15:57 |
|
||
|
Use или DataEnvironment
|
|||
|---|---|---|---|
|
#18+
Away_N ВладимирМВ таком синтаксисе, директории, перечисленные в PATH - это относительные пути. Относительно текущей директории. Но это именно пути . Какие именно типы файлов там лежат для FoxPro не имеет никакого значения. FoxPro будет искать файл во всех перечисленных путях. Вне зависимости от его типа. То есть,программа при переносе на другую машину будет привязываться именно к тому каталогу, куда ее поместили? Да. Если каким-либо способом не будет изменена текущая директория. Но, по умолчанию, привязка будет именно к тому каталогу, куда поместили программу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2007, 17:06 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34704497&tid=1588923]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 182ms |
| total: | 284ms |

| 0 / 0 |
