Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Начал изучать VFP, и у меня по хожу возникают небольшие вопросы, где-то искать их долго, так как точно не знаю где искать, поэтому решил задавать их здесь, знающему человеку легко будет подсказать, как сделать или где прочесть. 1) Я умею программировать на VB, Фокс очень похож на него, но почему-то я не смог через программу поменять Caption у label, выдаёт ошибку, а мне надо изменять. 2) Мне нужно изменять число цифр после запятой, как это сделать? А то типы в Фоксе не похожи на другие языки 3) Как из формы(кода) вызывать функции, которые я оформил, как программу? А то он пишет, что не может найти, когда вызываю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 16:42 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
1. MyForm.MyLabel.Caption="Привет!" 2. см. SET DECIMALS 3. см. SET PROCEDURE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 16:52 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Одессит1) Я умею программировать на VB, Фокс очень похож на него, но почему-то я не смог через программу поменять Caption у label, выдаёт ошибку, а мне надо изменять. В FoxPro есть несколько специальных ссылок на объекты: ThisFormSet - ссылка на текущий FormSet ThisForm - ссылка на текущую форму This - ссылка на текущий объект Parent - ссылка на объект-контейнер, внутри которого непосредственно расположен текущий объект. Все эти ссылки работают только внутри соответствующих методов и событий. Т.е. невозможно обратится к форме по ссылке ThisForm из-вне самой формы. Соответсвенно, изменить реквизит объекта можно так: ThisForm.MyLable.Caption = "Новый текст" Более подробно об адресации к формам почитай здесь http://www.foxclub.ru/kb/index.php?sid=75423&aktion=artikel&rubrik=004&id=4&lang=ru Одессит2) Мне нужно изменять число цифр после запятой, как это сделать? А то типы в Фоксе не похожи на другие языки FoxPro сам меняет количество знаков после запятой (если речь идет о переменных памяти). А вот отображает в соответствии с настройками SET DECIMALS SET FIXED Одессит3) Как из формы(кода) вызывать функции, которые я оформил, как программу? А то он пишет, что не может найти, когда вызываю Почитай описание команд PROCEDURE FUNCTION Там дана последовательность, в которой FoxPro производит поиск процедур и функций. Кроме того, обрати внимание на опцию IN в команде DO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 17:45 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы, но кое-что хочу уточнить 1) Чуть повозившись я и сам понял, как присваивать, вернее понял, что присваивать можно только строку, а у меня тип Дата, я даже использовал функцию str(), но она не помогла, вернее она стала причиной ошибки. Так что у меня вопрос, как label присваивать значения типа Дата. Для ТексБокса это делается через Value, а с меткой как? 2) Ага разобрался. Значит надо перед каждым изменением количества ставить эту надпись. Мне нужно было, чтоб в ТексБоксы выводились числа в каждом с разным количеством цифр после запятой. 3) В этом языке есть много чего для меня нового. Значит мне надо написать SET PROCEDURE TO [адрес папки, в которой я сохраняю программные модули] Так? Это писать в самом начале главной программы? Или мне через эту команду вызывать процедуры? Просто не могу понять, что в хэлпе написанно, а примеров нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 19:39 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ОдесситСпасибо за ответы, но кое-что хочу уточнить 1) Чуть повозившись я и сам понял, как присваивать, вернее понял, что присваивать можно только строку, а у меня тип Дата, я даже использовал функцию str(), но она не помогла, вернее она стала причиной ошибки. Так что у меня вопрос, как label присваивать значения типа Дата. Для ТексБокса это делается через Value, а с меткой как? Содержимое любого Caption - это символьная строка. Значит любое значение надо перевести в символьный вид. Универсальная функция конвертации чего угодно к символьному типу (начиная с версии VFP6) TRANSFORM() Кроме того, для каждого типа данных есть своя, специфическая, функция конвертации. Для типа Date это DTOC() DTOS() Одессит2) Ага разобрался. Значит надо перед каждым изменением количества ставить эту надпись. Мне нужно было, чтоб в ТексБоксы выводились числа в каждом с разным количеством цифр после запятой. Нет. Не нужно. Почитай описание свойств TextBox.Format - способ отображения ранее введенных значений TextBox.InputMask - способ отображения в процессе ввода (изменения) значений Например: TextBox.InputMask = "999,999,999.9999" Здесь символы маски - это не есть реальные цифры, точки и запятая. Это спец.символы. Каждый из которых имеет вполне определенное назначение. Подробности в описании. Одессит3) В этом языке есть много чего для меня нового. Значит мне надо написать SET PROCEDURE TO [адрес папки, в которой я сохраняю программные модули] Так? Это один из вариантов. Другие варианты почитай в описании к ранее приведенным командам по этому же вопросу. Одессит Это писать в самом начале главной программы? Или мне через эту команду вызывать процедуры? Назначение настройки SET PROCEDURE - это указать FoxPro, где еще следует поискать нужную процедуру или функцию, помимо SET PATH и других способов указания. Только ни в коем случае не используй абсолютных путей доступа (начиная с диска C:\MyDir\...) Всегда используй относительные пути. Относительно текущей (по умолчанию) директории. По поводу путей и расположения файлов почитай здесь http://www.foxclub.ru/kb/index.php?sid=114698&aktion=artikel&rubrik=004&id=5&lang=ru ОдесситПросто не могу понять, что в хэлпе написанно, а примеров нет Ну, так сам экспериментируй! 5 минут экспериментов и все ясно. И не надо по пол-дня ждать ответов в конфе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 20:55 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Только ни в коем случае не используй абсолютных путей доступа (начиная с диска C:\MyDir\...) Всегда используй относительные пути. Относительно текущей (по умолчанию) директории. А где задаётся директория по умолчанию? И как её узнать? В остальном понятно. Пишу на конфу, так как на поиски уже тратил больше 5 минут времени, пока отвечаете я изучаю что-то другое. Ещё раз спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 21:26 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Help Set Default Проверить текущую установку можно так: ? sys(5) + sys(2003) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 21:30 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Одессит А где задаётся директория по умолчанию? И как её узнать? У тебя ссылки на http://www.foxclub.ru не работают? Или просто лень сходить почитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 22:19 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Одессит2) Ага разобрался. Значит надо перед каждым изменением количества ставить эту надпись. Мне нужно было, чтоб в ТексБоксы выводились числа в каждом с разным количеством цифр после запятой. Нет. Не нужно. Почитай описание свойств TextBox.Format - способ отображения ранее введенных значений TextBox.InputMask - способ отображения в процессе ввода (изменения) значений Например: TextBox.InputMask = "999,999,999.9999" Здесь символы маски - это не есть реальные цифры, точки и запятая. Это спец.символы. Каждый из которых имеет вполне определенное назначение. Подробности в описании. Почитал Хэлп по этим свойствам, поэкспериментировал, но так и не понял, что я должен и куда писать, чтоб изменять только количество цифр после запятой. Никто не подскажет? На 9 у меня пишет какие-то *, и они не меняются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 22:30 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Одессит А где задаётся директория по умолчанию? И как её узнать? У тебя ссылки на http://www.foxclub.ru не работают? Или просто лень сходить почитать? Уже скачал статьи, просто руки пока не доходят почитать, а там не так уж и просто найти по нужной проблеме, надо всё перечитывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2005, 22:31 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
авторПочитал Хэлп по этим свойствам, поэкспериментировал, но так и не понял, что я должен и куда писать, чтоб изменять только количество цифр после запятой Вот значение InputMask и надо менять. Строка ThisForm.TextBox.InputMask = "999,999,999.9999" означает что вы выдодишь числовое значение длиной 16 позиций из которых 9 цифр под целую часть и 4 под дробную, одна позиция под десятичный разделитель и две под разделители разрядов. Если выводимое число имеет большую целую часть то будут звездочки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 09:20 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Так, что-то никак не могу разобраться со 2-м вопросом, уже прочёл ссылку, сделал несколько способов, а ошибка всё та же. Вот что я указывал в файле CONFIG.FPW Код: plaintext 1. Проверяю при заходе текущую директорию - ? sys(5) + sys(2003), получаю C:\Documents and Settings\Алексей\My Documents\Visual FoxPro Projects Т.е то, что и без этого файла конфигурации, default не сработал Но, ведь я и path указал. Т.е. кажется, что сам файл не запускается. Пробовал в разных местах его располагать, не помогает, ну и написано, что там где проект, а проект у меня в той папке. В чём у меня проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 15:34 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Default в файле конфигурации писать не надо. И вообще, явное задание текущей (по умолчанию) директории лучше избегать. Какой именно файл конфигурации был захвачен при загрузке среды FoxPro можно узнать через функцию ?SYS(2019) Также, текущую директорию можно определить следующим образом: ?FullPath("") Пустые кавычки, в данном случае, обязательны Проверить, будет ли тот или иной файл "виден" в среде FoxPro можно так: ?File('MyFile.prg') Проверить текущую SET-настройку можно так: ?SET("Path") ?SET("Procedure") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 18:53 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМDefault в файле конфигурации писать не надо. И вообще, явное задание текущей (по умолчанию) директории лучше избегать. Какой именно файл конфигурации был захвачен при загрузке среды FoxPro можно узнать через функцию ?SYS(2019) Если ничего не выдаёт, значит ничего не захватил? А где устанавливать надо, какой файл должен быть захвачен? Решил проблему, через Set Default в коде программы, но мне нужен файл конфигурации, так как туда надо написать CODEPAGE=1251, кстати, а для exe-шника ему тоже будет нужен файл конфигурации с этой строкой? И как задать в коде программы то, что в файле конфигурации я пишу как screen=off? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2005, 19:33 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Еще раз. Почитай здесь http://www.foxclub.ru/kb/index.php?sid=114698&aktion=artikel&rubrik=004&id=5&lang=ru Там подробно расписано как надо запускать FoxPro и куда девать config.fpw ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2005, 16:15 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМЕще раз. Почитай здесь http://www.foxclub.ru/kb/index.php?sid=114698&aktion=artikel&rubrik=004&id=5&lang=ru Там подробно расписано как надо запускать FoxPro и куда девать config.fpw Читал При запуске среды FoxPro в качестве директории по умолчанию устанавливается директория, где расположен сам файл проекта, а все прочие файлы проекта располагаются в поддиректориях. Единственное, что я не делал, так это ярлыки. А что это единственный способ? А где же многовариантность? Тем более написанно: Однако есть способ лучше Т.е. значит есть другие, хуже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 11:24 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
У меня есть ещё вопрос: 4) Как узнать, какие файлы мне нужны для моей программы, чтоя я мог запустить её на другом компьютере. В VB для этого есть программа "Package and Deployment Wizard". Что-то естьтакое в FoxPro, или надо самому искать все файлы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 11:32 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ОдесситУ меня есть ещё вопрос: 4) Как узнать, какие файлы мне нужны для моей программы, чтоя я мог запустить её на другом компьютере. В VB для этого есть программа "Package and Deployment Wizard". Что-то естьтакое в FoxPro, или надо самому искать все файлы? До версии VFP6 включительно - это пункт меню Tools->Wizrads->Setup Начиная с версии VFP7 - это внешняя программа InstallShield Большая просьба. Читай то, что действительно написано, а не то, что ты хотел бы прочитать. Сначала попытайся сделать так как написано и только потом экспериментируй с новыми способами. Не надо пытаться подходить к новому языку программирования со стериотипами, выработанными в другом языке. Это не относится только к FoxPro. Это вообще общий принцип изучения новых языков программирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 12:35 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Одессит При запуске среды FoxPro в качестве директории по умолчанию устанавливается директория, где расположен сам файл проекта, а все прочие файлы проекта располагаются в поддиректориях. Единственное, что я не делал, так это ярлыки. А что это единственный способ? А где же многовариантность? Встречный вопрос: Что Вы подразумеваете под термином "многовариантность" применительно к модификации одного проекта ОдесситТем более написанно: Однако есть способ лучше Т.е. значит есть другие, хуже. Я привел наиболее простые способы запуска проекта для его правки и подключения файла конфигурации. FoxPro - это язык, который требует повышенной самодициплины от программиста. Если программист что-то не сделал, то FoxPro сам, в меру своего понимания, попробует выполнить действия не сделанные программистом. А вот насколько эти автоматические действия будут правомерны - это уже другой вопрос. Насчет других способов. Откройте Help по FoxPro перейдите на закладку "Поиск" и выполните поиск по ключевому слову "config". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 13:09 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ВладимирМFoxPro - это язык, который требует повышенной самодициплины от программиста. Если программист что-то не сделал, то FoxPro сам, в меру своего понимания, попробует выполнить действия не сделанные программистом. А вот насколько эти автоматические действия будут правомерны - это уже другой вопрос. Так в том то и дело, что меня удивляет некоторые вещи, которые при написании языка сделать легко, но они не реализованы. Почему ФоксПро автоматически не устанавливает для каждого проекта свой начальный путь по месту нахождения проекта, в котором он и будет искать различные файлы. Да и вообще можно было все внешние настройки встроить в свойства проекта. Я не вижу, почему те способы, что сделаны, лучше. Зачем тратить время на настройку, когда это может делать компьютер, а ты только следишь, чтоб всё было верно. Но, это скорее претензии к создателям VFP Большая просьба. Читай то, что действительно написано, а не то, что ты хотел бы прочитать. Сначала попытайся сделать так как написано и только потом экспериментируй с новыми способами. Не надо пытаться подходить к новому языку программирования со стериотипами, выработанными в другом языке. Это не относится только к FoxPro. Это вообще общий принцип изучения новых языков программирования. Стереотипы - это опыт. Находя подобии я быстрее его изучаю, а так пришлось бы с нуля начинать. Да, возникают проблемы, когда подобий нет, но это один из недостатков метода. В любом случае мой метод позволяет сразу писать программы на незнакомом языке, а потом уже его отлаживать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 16:45 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ОдесситТак в том то и дело, что меня удивляет некоторые вещи, которые при написании языка сделать легко, но они не реализованы... Стереотипы - это опыт. Находя подобии я быстрее его изучаю, а так пришлось бы с нуля начинать. Да, возникают проблемы, когда подобий нет, но это один из недостатков метода. В любом случае мой метод позволяет сразу писать программы на незнакомом языке, а потом уже его отлаживать. Чуствуешь противоречие? Твой опыт говорит одно, а конкретная реализация в данном языке программирования принципиально другая. Причем заметь, я говорю не о том, что что-то можно сделать, а что-то нельзя. Я говорю о том, как сделать то или другое. Стереотипы (опыт) - это очень коварная штука. Просто нельзя на основании опыта программирования в одном языке делать какие-то предположения в другом. Не получается. Языки программирования отличаются прежде всего способом решения тех или иных задач. Т.е. именно стереотипами программирования! Например, в FoxPro есть такая замечательная штука. Называется макроподстановка. Это когда ты в переменную записываешь команду или фрагмент команды, а потом этот записанный фрагмент исполняется как собственно команда. Когда я пытаюсь применить стереотип программирования основанный на макроподстановках в другом языке программирования я сталкиваюсь с большими проблемами. И совершенно справедливо. Нечего лезть со своим уставом (стереотипом) в чужой монастырь (язык программирования)! Между прочим, когда в объявлениях о приеме на работу пишут, что нужен стаж работы на конкретном языке не менее 3 лет, то я их вполне понимаю. Это именно тот срок, конда ты наконец вырабатываешь стереотипы программирования на конкретном языке. Это действительно требует времени. Причем значительно большего чем просто освоить какие-то команды и функции языка. Кодить-то можно научиться за пару недель (а то и быстрее). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2005, 19:39 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Написал программу. Теперь мне надо было её запустить в другое ОС, где нет Фокса. В папку Виндоус я скопировал такие файлы: msvcr71.dll, vfp9r.dll, vfp9rrus.dll, gdiplus.dll. Попробывал запустить программу выдаётся ошибка, что файл vfp9r.dll неправельный или повреждён. Что мне делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 15:39 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Hi Одессит! 1) При запуске фокса с ярлыка, берётся конфиг из той папки что указана как "стартовая", или из папки с vfpN.exe - если он там есть конечно. При запуске "открытием pjx/pjt файла из проводника/FAR/TotalCommander/etc" берётся тот конфиг что находится в папке с этим самым файлом. Наконец всегда можно воспользоваться ключом -C FileName для явного указания какой конфиг использовать. 2) При запуске готового exe используется тот конфиг который в этот exe "вкомпилирован", или тот что лежит рядом с exe. AFAIK ключик -C тоже работает (елси нету вкомпилированного конфига, или есть там включено ALLOWEXTERNAL - это для VFP8 и старше). 3) PATH и DEFAULT лучше не писать в конфиге. В принципе там совсем немного установок, которые НЕ ИМЕЮТ АНАЛОГОВ в программном коде. CODEPAGE=1251, SCREEN=OFF одни из таких. В принципе все остальные "недублируемые" настройки практически используются крайне редко. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 15:48 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Ага, теперь понял в чём была моя ошибка, я открывал проект из самого Фокса, поэтому он и не находил файл конфигурации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 16:10 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Так кто-то мне поможет с настройкой прогы, чтоб она работала на другом компе? Эту прогу я написал на день рождения своей девушки(у неё фокса нет), который, кстати, сегодня. Хоть прога личная, но я могу дать исходники, чтоб кто-то скомпелировал у себя и прислал мне архив с библиотеками. Ну, или объясните, почему прога может ругаться на то, что библиотека повреждена. У меня ФоксПро 9. Буду благодарен за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 16:32 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
>В папку Виндоус я скопировал такие файлы А надо в WINDOUS\SYSTEM для Win9X, WINNT\SYSTEM32 или WINDOWS\SYSTEM32 для Win2K и XP. Кроме того их можно просто оставить в том каталоге, в котором лежит и сам фоксовский exe-шник ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2005, 22:45 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Hi Одессит! Теперь мне надо было её запустить в другое ОС, где нет Фокса Видимо та ОС это древняя Win98 - тогда поставь там dcom98.exe который обновит систему до более-менее приемлемого состояния :) А вообще надо пользоваться InstallShield или иным инструментом создания дистрибутивов, а не "копированием файлов" :) Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 02:15 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Burn>В папку Виндоус я скопировал такие файлы А надо в WINDOUS\SYSTEM для Win9X, WINNT\SYSTEM32 или WINDOWS\SYSTEM32 для Win2K и XP. Кроме того их можно просто оставить в том каталоге, в котором лежит и сам фоксовский exe-шник Если бы я копировал не туда куда надо, то выдавалась бы ошибка, что не может найти библиотеки, а выдавалась другая. А копировал я действительно в Систем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 09:59 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Igor Korolyov Hi Одессит! Теперь мне надо было её запустить в другое ОС, где нет Фокса Видимо та ОС это древняя Win98 - тогда поставь там dcom98.exe который обновит систему до более-менее приемлемого состояния :) А вообще надо пользоваться InstallShield или иным инструментом создания дистрибутивов, а не "копированием файлов" :) А что это за dcom98.exe? Где его взять? А то завтра мне ещё по практики показывать программу нужно, а у них кажись тоже 98. А с InstallShield я ещё не разбирался ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 10:02 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Интересная ошибка, даже не знаю, как это можно исправить, может кто-то подскажет. У меня на форме два ЛистБокса, в них информация должна поступать из таблиц. Делаю я это примерно так Код: plaintext 1. 2. 3. Может я как-то таблицы не правильно сделал? Кто что посоветует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 14:00 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Добавление к предыдущему сообщению Весь код выглядет так: Код: plaintext 1. 2. 3. 4. 5. Если поменять последнии две строчки местами, то ошибка соответственно будет в другом запросе и таблице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2005, 19:29 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
С предыдущем вопросом я сам разобрался, там надо было использовать курсор, а не таблицу. Но у меня появлась новая проблема, причём ошибки, которые возникают очень смешные. Мне надо: 1) Открывать таблицу через проводник 2) Использовать её в программе, как обычную таблицу Но, как это правельно сделать? Я использую элемент commonDialog. Получаю в переменную строку с адресом. Код: plaintext 1. 2. 3. Код: plaintext 1. 2. 3. 4. 5. У кого-то есть примеры программ, где используется commonDialog для открытия и подключения таблиц с дальнейшим использованием в запросе? Если можете скиньте на мыло - odessit-ua@ukr.net ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2005, 20:29 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Hi Одессит! > SELECT * FROM bdF INTO CURSOR bd Зачем выбирать все записи я не понимаю - сделай ей USE под определённым алиасом и работай. А так - у тебя нету ни макро, ни именованного выражения - это раз, и нету NOFILTER - что нужно для такого запроса чтобы сделать "правильный" курсор а не "фильтрованную таблицу" Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 05:20 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Igor Korolyov Hi Одессит! > SELECT * FROM bdF INTO CURSOR bd Зачем выбирать все записи я не понимаю - сделай ей USE под определённым алиасом и работай. А как это правлиьно сделать? Можно пример кода? А то я делаю, а он ошибку выдаёт, что-то про доступ, точно не помню А так - у тебя нету ни макро, ни именованного выражения - это раз, и нету NOFILTER - что нужно для такого запроса чтобы сделать "правильный" курсор а не "фильтрованную таблицу" Честно говоря вообще ничего не понял. Вам не сложно хоть какой-то примерный код вставлять? Просто мне так легче понять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 10:26 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
По поводу Алиаса. Я написал так Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 12:38 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 16:33 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
quot Urri] Код: plaintext Ой, спасибо, работает. А как закрывать таблицы при завершении работы? А то при следующем запросе выдаётся ошибка, что файл используется. И ещё одна ошибка, я уже про неё писал, это то, что при использовании commonDialog меняется каталог по умолчанию. Мне что перед его использованием нужно сохранять путь к каталогу, а потом снова устанавливать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 23:00 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
>А как закрывать таблицы при завершении работы? Если открыл: USE (bdf) IN 0 ALIAS bd То закрыть: USE IN bd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2005, 23:36 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Hi Burn! Лучше USE IN SELECT("bd") - на случай непреднамеренного досрочного её закрытия :) А возникающие проблемы с ошибкой совместного доступа наводят на грустные мысли про SET EXCLUSIVE ON :( Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 01:09 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Возникла одна проблема, не могу из таблицы удалить запись, делаю это так: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 21:21 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Что такое "удаление" в FoxPro смотри во вложенном файле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 21:30 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
А, понял, у меня доступ открыт только для чтения этой таблицы. Добавляь могу, а вот удалять нет. А как изменить доступ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 23:10 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Не видел предыдущее сообщение. Спасибо за подсказку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2005, 23:15 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Так, всёравно не разобрался. Моя проблема там не описана. У меня к проекту подключено две таблицы client и station. Я в коде к ним для открытия вообще не обращаюсь, хотя в lstst.RowSource я указываю такой запрос: select * from stations into cursor tmpSt Далее я пытаюсь добавлять или удалять. Когда создаю проект, т.е. работаю в Визуал ФоксПро, то при операции PACK выдаётся ошибка, что файл используется, поэтому я включил Deleted On и написал PACK в form.Unload, это помогло. Изменение SET EXCLUSIVE ничего не давало Но при запуске готового еxe выдаётся другая ошибка. Что невозможно обновить курсор, так как он доступен только для чтения. А как поменять доступ к моей таблице? И где это сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 09:29 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
А не включил ли ты случайно таблицы внутрь exe-шника? Исключи немедленно (опция exclude в проекте). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 09:46 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
Да, и кстати, операциями типа PACK так разбрасываться негоже. Обычно в формах делают только DELETE, а физическую чистку - которая, кстати, приводит к пересозданию файла - можно вынести в административную часть программы, которую запускают, когда никто из пользователей не работает. Ночью, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 09:50 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
ОдесситНо при запуске готового еxe выдаётся другая ошибка. Что невозможно обновить курсор, так как он доступен только для чтения. А как поменять доступ к моей таблице? И где это сделать? http://www.sql.ru/faq/faq_topic.aspx?fid=251 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 10:49 |
|
||
|
Несколько вопросов.
|
|||
|---|---|---|---|
|
#18+
UrriДа, и кстати, операциями типа PACK так разбрасываться негоже. Обычно в формах делают только DELETE, а физическую чистку - которая, кстати, приводит к пересозданию файла - можно вынести в административную часть программы, которую запускают, когда никто из пользователей не работает. Ночью, например. В моей таблице не будет больше 10 записей и работает только в одном месте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 15:43 |
|
||
|
|

start [/forum/topic.php?all=1&fid=41&tid=1595053]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
64ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 412ms |

| 0 / 0 |
