Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Прошу помощи в нескольких вопросах / 19 сообщений из 19, страница 1 из 1
18.12.2009, 15:14
    #36374028
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Здравствуйте.
Подскажите пожалуйста, как можно определить максимальный элемент столбца таблицы.
использовал SLECT MAX()... но тогда вылазит таблица, а мне надо чтобы это максимальное значение было записано в переменную в фоновом режиме для дальнейшего использования
Спасибо.
...
Рейтинг: 0 / 0
18.12.2009, 15:17
    #36374043
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
> Автор: evo9
> использовал SLECT MAX()... но тогда вылазит таблица, а мне надо чтобы это максимальное значение было записано в
> переменную в фоновом режиме для дальнейшего использования

В select есть секция INTO, т.е. куда давать результат, если INTO опущено, будет открыватся окно Browse с результатом
селекта


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.12.2009, 15:55
    #36374184
IMXO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Игорь Горбонос,

CALCULATE eExpressionList [Scope] [FOR lExpression1] [WHILE lExpression2]
[TO VarList | TO ARRAY ArrayName] [NOOPTIMIZE]
[IN nWorkArea | cTableAlias]
...
Рейтинг: 0 / 0
18.12.2009, 16:40
    #36374345
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Игорь Горбонос, спасибо большое, помогло)
Хотел бы еще спросить..
У меня проект состоит из 4 форм:
1 вызывает 2 вызывает 3 и 4. Как сделать так, чтобы при открытии 1 другая скрывалась, а при закрытии возвращалась в родительскую? При вызове 3 формы из второй будет передаваться 1 значение, как это осуществить?
Извините за такие нубские вопросы, просто курсовик надо делать, а изучать досконально VFP нет ни малейшего желания, ибо пользуюсь другим
...
Рейтинг: 0 / 0
21.12.2009, 07:10
    #36376877
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Еще вопрос..
В форме есть грид, как получить значение первого столбца в выделенной строке грида?
Очень срочно надо.. спасибо
...
Рейтинг: 0 / 0
21.12.2009, 08:15
    #36376892
BMJ
BMJ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
значение=столбец1.value
...
Рейтинг: 0 / 0
21.12.2009, 08:36
    #36376908
Kruchinin Pahan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
BMJзначение=столбец1.value
Сказка какая-то.

Источником грида является таблица. Если автор топика в курсе, какая колонка таблицы привязана к первому столбцу грида. То достаточно:
STORE таблица.колонка TO мояпеременная

Со строкой заморачиваться нет необходимости. Указатель записи таблицы итак всегда стоит на активной строке грида.
...
Рейтинг: 0 / 0
21.12.2009, 18:50
    #36378316
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Kruchinin Pahan, о спасибо огромное. Мой курсовик почти готов, щас еще поделаю. Думаю еще бeдет пару вопросов и затем я перестану вас доставать :)
...
Рейтинг: 0 / 0
26.12.2009, 12:50
    #36387781
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Как и обещал... вопросы:
1. В форме есть грид. И кнопка удаления 1 страки из таблицы, которая отображена в данном гриде.
После нажатия кнопки строка фактически удаляется использую (
STORE staff.staff_id TO z && определяю ид выделенной строки
DELETE FROM staff WHERE staff_id = z && удаляю
PACK
) после чего грид из формы исчезает(или его содержимое). Как исправить?
2. есть главная форма с кнопкой вызова другой. в ее коде прописано помимо do form еще и release
так вот ищзза этого релиза происходит такая же хрень как и в п.1. Как исправить?
3. Так как все таки передать параметр из 1 формы в другую?) юзаю
x = 1
DO FORM form WITH x
наверно не то что-то?(
4. Объясните плз как оставить в гриде значения, удовлетворяющие только введенному в textbox
(вообщем в текстбокс вводим например "тест" а в гриде отображаются все записи(в любом столбце совпадение) в которых встречается это слово) это вроде через SET FILTER надо, но я не разобрался как правильно осуществить.
Спасибо за ответы.
...
Рейтинг: 0 / 0
26.12.2009, 13:02
    #36387796
Прошу помощи в нескольких вопросах
evo9Как и обещал... вопросы:
1. В форме есть грид. И кнопка удаления 1 страки из таблицы, которая отображена в данном гриде.
После нажатия кнопки строка фактически удаляется использую (
STORE staff.staff_id TO z && определяю ид выделенной строки
DELETE FROM staff WHERE staff_id = z && удаляю
PACK
) после чего грид из формы исчезает(или его содержимое). Как исправить?
Убрать последнюю команду.
...
Рейтинг: 0 / 0
26.12.2009, 16:08
    #36387904
GermanGM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
2. В форме № 2 программно открывается таблица в используемой рабочей области, либо : Default Datasession+в DataEnvironment табл. с тем же alias-ом, что и в форме № 1, а AutoCloseTables как обычно - .t.;

3, в методе Init вызываемой формы (DO FORM <Форма №2> WITH ...) есть список параметров?
...
Рейтинг: 0 / 0
26.12.2009, 17:43
    #36387967
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
проходящийУбрать последнюю команду.
А так вообще ничего не удаляется. Я так понял что они просто помечаются для удаления. а нужно чтобы при нажатии удалялись и в гриде уже этой строки не было

GermanGM,
2. Можно подробнее, пожалуйста, не понимаю о чем речь вообще идет.
3. эм.. нет. ошибка показывается то в 1 форме.. а что надо прописать в #2?
...
Рейтинг: 0 / 0
26.12.2009, 17:46
    #36387970
Прошу помощи в нескольких вопросах
evo9проходящийУбрать последнюю команду.
А так вообще ничего не удаляется. Я так понял что они просто помечаются для удаления. Да, это стандартный способ удаления.а нужно чтобы при нажатии удалялись и в гриде уже этой строки не было
Для того, что бы строки не было в гриде отнюдь не нужно исползовать pack. Достаточно того, чтобы было установлено set delete on и сдвинуться с удаленной записи в гриде.
...
Рейтинг: 0 / 0
27.12.2009, 13:07
    #36388428
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Вопросы №1 и №3 отпадают, решины. Спасибо за помощь. Остались №2 и №4, жду ответов, а то завтра уже сдавать:)
...
Рейтинг: 0 / 0
27.12.2009, 13:30
    #36388454
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
evo9GermanGM,
2. Можно подробнее, пожалуйста, не понимаю о чем речь вообще идет.

После закрытия дочерней формы возможно закрытие таблицы-источника данных для грида.
После команды release добавь команду
Код: plaintext
WAIT WINDOW USED("my_table")
и отпишись о результате
...
Рейтинг: 0 / 0
27.12.2009, 13:36
    #36388467
GermanGM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
evo9,
2. Где-то у Вас закрывается таблица-источник данных для Grid-а в форме (либо у одного из столбцов с ControlSource - вычисляемое выражение/функция перестало возвращать корректный результат). Поищите в коде причину. Скорее всего, первая. После появления ошибки можно приостановить выполнение программы, перейти в командное окно, набрать SET и просмотреть список таблиц, открытых в данный момент.

4. Наиболее простое решение (легкую иронию оно конечно вызовет но, надеюсь, сойдет...) в процедуре вызова формы №1 (перед DO FORM...) объявите приватную переменную (назовем ее, к примеру, pcFilter),
в textbox-e, в котором вводите выражение для поиска, пропишите ее в св-ве ControlSource, а в событии LostFocus Textbox-a (код, понятное дело, несколько условный):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
pcFilter=allt(pcFilter)
select Table1
set filter to atc(pcFilter,<Поле1>+<Поле2>+[...]+<ПолеN>)> 0 
go top
thisform.grid1.refresh
if !eof()
 thisform.grid1.setfocus
endif

<ПолеN> - наименования полей таблицы (а не столбцов grid), по которым нужен фильтр
...
Рейтинг: 0 / 0
27.12.2009, 15:17
    #36388583
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
Вопрос №2 тоже решен. Странно. оставил DO FORM... и release thisform и все нормально теперь. Видимо тогда просто глюк какой-то был.
остался только 4 вопросец.
GermanGM, выдимо вы меня не так поняли. вот форма

Мне нужно чтобы, например, мы вводим в текстбокс букву П и в гриде остаются только те записи, поле хоть одной из которых начинается на П, если вводим Пе, то только остаются "пе..."
еще хочу сделать, чтобы из текстбокса выбиралось одно из полей и только по нему искалось.
Обновление грида пускай происходит при собыитии text1.onkeypress или как его там.
...
Рейтинг: 0 / 0
27.12.2009, 15:22
    #36388593
evo9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
опечаталсо, не текстбокс, а комбобокса конечно.
...
Рейтинг: 0 / 0
28.12.2009, 14:10
    #36389869
Kruchinin Pahan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прошу помощи в нескольких вопросах
evo9Вопрос №2 тоже решен. Странно. оставил DO FORM... и release thisform и все нормально теперь. Видимо тогда просто глюк какой-то был.
остался только 4 вопросец.
GermanGM, выдимо вы меня не так поняли. вот форма

Мне нужно чтобы, например, мы вводим в текстбокс букву П и в гриде остаются только те записи, поле хоть одной из которых начинается на П, если вводим Пе, то только остаются "пе..."
еще хочу сделать, чтобы из текстбокса выбиралось одно из полей и только по нему искалось.
Обновление грида пускай происходит при собыитии text1.onkeypress или как его там.
Это достаточно громоздкое условие получится. И выполняться оно будет достаточно долго на больших таблицах.
Привязываться надо к событию InteractiveChange вашего TextBox.
В нем надо установить фильтр на таблицу/курсор командой SET FILTER.

А раз вы хотите искать по всем полям, то в условии фильтра придется через OR проверить все поля на совпадение со значением фильтра.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Прошу помощи в нескольких вопросах / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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