powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / SQl запросы
27 сообщений из 27, показаны все 2 страниц
SQl запросы
    #32624188
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программно создала запрос. В INTO указала направление вывода результата запроса- курсор. Где и как я должна записать(программно) или в свойствах, что это курсор а не таблица, например?
...
Рейтинг: 0 / 0
SQl запросы
    #32624194
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Где и как я должна записать(программно) или в свойствах, что это курсор а не таблица, например?
SELECT .... INTO CURSOR <имя_курсора>
Этого достаточно
...
Рейтинг: 0 / 0
SQl запросы
    #32624208
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не найду ошибку. Без Sql запроса В Gride Просматривается вся таблица, а как только записываю Sql запрос(даже для всей таблицы, без каких либо условий) в просмотре пусто. Думаю что в свойствах что-то недоставляю?
...
Рейтинг: 0 / 0
SQl запросы
    #32624253
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ляпну... Авось попаду... ;-)
Источником данных в гриде что указано?
...
Рейтинг: 0 / 0
SQl запросы
    #32624930
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перед выводом формы на экран формируем запрос SQL. Как результат запроса поместить в GRID, поставленный на форму
...
Рейтинг: 0 / 0
SQl запросы
    #32624984
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
THISFOR.твойгрид.recordsourcetype=1
THISFOR.твойгрид.recordsource="твой курсор"
...
Рейтинг: 0 / 0
SQl запросы
    #32625587
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-во! Источник данных смотри!
...
Рейтинг: 0 / 0
SQl запросы
    #32625854
Alex Is
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем сделай так!!

На LOAD формы пусть выполняется твой запрос!

Потом в ините формы:

thisform.grid1.RecordSource = '' && Дабы не валился грид

Сдесь можешь делать любые манипуляции(если необходимо)



thisform.grid1.RecordSource = "Имя курсора"
thisform.grid1.column1.ControlSource = "Имя курсора.Имя поля"
thisform.grid1.column2.ControlSource = ....... и т д
...
...
Рейтинг: 0 / 0
SQl запросы
    #32626064
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделала так
На Load занесла
SELECT Spisa.imen, Spisa.datr ;
FROM ;
spisa ;
WHERE Spisa.datr = DATE()into cursor tmpcur
В Init записала
thisform.grid1.RecordSource = ''
thisform.grid1.RecordSource ="tmpcur"
thisform.grid1.column1.ControlSource = "tmpcur.imen"
thisform.grid1.column2.ControlSource = "tmpcur.Datr"
И все тоже, наименование столбцов в Gride есть(оно и раньше было), а сама таблица пустая и еще выдает ошибку, что нужен индекс по таблице
Что еще сделать?
...
Рейтинг: 0 / 0
SQl запросы
    #32626088
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пробела после DATE() нет?
WHERE Spisa.datr = DATE()into cursor tmpcur

Надо указать для грида
recordsourcetype=1
...
Рейтинг: 0 / 0
SQl запросы
    #32626091
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На этапе проектирования формы в дезайнере убедись, что у тебя стоит для

Grid.RecordSource=(None)

Причем это самое (None) должно быть выделено жирным шрифтом. Ни в коем случае не сбрасывай его по Reset At Default.

Сам запрос можно сделать и в Init-формы (до настройки параметров Grid). В данном случае это непринципиально.

Но вообще-то, проще сделать параметризированное Local View и не мучиться
...
Рейтинг: 0 / 0
SQl запросы
    #32626165
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, пожалуйста, но фразу

Но вообще-то, проще сделать параметризированное Local View и не мучиться

не понимаю(новичек я в FOXpro) а пробел у меня есть.
Все поставила, но все тоже
...
Рейтинг: 0 / 0
SQl запросы
    #32626453
miv32
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пришли свою форму с grid-ом и dbf, из которого данные
берешь, гляну )))
miv32km.ru
...
Рейтинг: 0 / 0
SQl запросы
    #32626483
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НовичекМИзвините, пожалуйста, но фразу

Но вообще-то, проще сделать параметризированное Local View и не мучиться

не понимаю(новичек я в FOXpro) а пробел у меня есть.
Все поставила, но все тоже

Как сделать параметризированное Local View?

-) Открываешь свой проект (надеюсь, собственно файл проекта есть - это файлы pjx, pjt)
-) Переходишь на закладку Data
-) В отображенном там дереве устанавливаешь указатель на узел DataBase - MyBase - Local Views (здесь MyBase - это имя твоей базы данных)
-) Нажимаешь кнопку "New"
-) Для простоты (в качестве обучения) можешь воспользоваться визардом. Т.е. выбрать кнопку "View Wizard"
-) На первом шаге выбираешь таблицу и поля, которые должны попасть в результирующую выборку. В твоем случае это Spisa.imen, Spisa.datr
-) На втором шаге необходимо указать условия отбора (директива WHERE). В твоем случае выбираешь поле Spisa.datr, опреатор "equals", а в окошке Value пишешь "?tdDate" - разумеется без кавычек.
-) Третий шаг пропускаешь (у тебя нет сортировки)
-) На пятом шаге при нажатии кнопки Finish надо будет ввести имя твоего Local View, например, MyView

Теперь если вызовешь на модификацию твой Local View и посмотришь код SQL-запроса, то он будет выглядеть примерно так:

SELECT Spisa.imen, Spisa.datr ;
FROM MyBase!spisa ;
WHERE Spisa.datr = ?tdDate

Вопросительный знак говорит о том, что далее следует параметр, который необходимо заполнять непосредственно перед запуском Local View.

Теперь включаешь этот Local View в DataEnvironment твоей формы обязательно установив свойство этого View.NoDataOnLoad=.T.

В Init-формы пишешь примерно такой код

LOCAL tdDate
tdDate=Date()
REQUERY("MyView")

Для Grid делаешь настройки прямо в дезайнере формы
RecordSource = MyView
RecordSourceType=1 (Alias) - значение по умолчанию

Все. Запускай форму.

Вообще-то, в данном случае можно обойтись и без параметра. Просто написав в условии запроса Spisa.datr = Date(). Но параметр позволяет указать любую дату, не только текущую.
...
Рейтинг: 0 / 0
SQl запросы
    #32626529
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо, получилось сегодня, но я всю форму сделала, начиная с 0, а со старым вчерашним вариантом так ничего и не вышло.
И еще вопрос. Мне нужно ввести дату просчета(прошедший месяц).Как бы вы этот сделали программно.
...
Рейтинг: 0 / 0
SQl запросы
    #32626805
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НовичекММне нужно ввести дату просчета(прошедший месяц).Как бы вы этот сделали программно.

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

LOCAL tdDate
* Первое число прошлого месяца
tdDate = GoMonth(Date(),-1)
tdDate = m.tdDate - DAY(m.tdDate)+1

* Последнее число прошлого месяца
tdDate = Date()
tdDate = m.tdDate - DAY(m.tdDate)

*Далее как и раньше
REQUERY("MyView")

Кстати, можно перестроить View (дать команду REQUERY()) и в процессе работы формы. Это не приведет к разрушению структуры Grid.
...
Рейтинг: 0 / 0
SQl запросы
    #32630109
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все получилось, БОЛЬШОЕ СПАСИБО.
Извините, еще такой вопрос. Из своей базы я хочу выбрать какую- то конкретную запись, определяющий реквизит которой заданный с экрана. Мне немножко непонятен момент снятия этого реквизита с экрана.
...
Рейтинг: 0 / 0
SQl запросы
    #32630160
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НовичекМВсе получилось, БОЛЬШОЕ СПАСИБО.
Извините, еще такой вопрос. Из своей базы я хочу выбрать какую- то конкретную запись, определяющий реквизит которой заданный с экрана. Мне немножко непонятен момент снятия этого реквизита с экрана.

Свойство Value соответствующего объекта. Если речь идет о TextBox, то примерно так:

LOCAL lcValue
lcValue = ThisForm.TextBox1.Value
...
Рейтинг: 0 / 0
SQl запросы
    #32630191
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще. У меня на дискете есть файл с одинаковой длиной записей в формате txt. Как его программно записать в уже созданную здесь таблицу?
...
Рейтинг: 0 / 0
SQl запросы
    #32630217
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SOS!!!!!!!!!
По Local View - непосредственно в нем работает, на форме выдает ошибку
Alias not found, хотя все что вы подсказали сделапа. ??????????????????
...
Рейтинг: 0 / 0
SQl запросы
    #32630875
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НовичекМИ еще. У меня на дискете есть файл с одинаковой длиной записей в формате txt. Как его программно записать в уже созданную здесь таблицу?

Почитай описание команды APPEND FROM

НовичекМSOS!!!!!!!!!
По Local View - непосредственно в нем работает, на форме выдает ошибку
Alias not found, хотя все что вы подсказали сделапа. ??????????????????

Это ты о чем? Непосредственно в чем? Какая форма?
...
Рейтинг: 0 / 0
SQl запросы
    #32635707
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВОПРОС По Local View - непосредственно при его создании Sql запрос работает,файл выводится в Gride правильно, если перехожу в форму, установив все что вы подсказали, выдает ошибку
Alias not found, по отладчику посмотрела что не нравиться в Init формы
REQUERY("Myview"), где Myview название моего Local View ??????????????????
...
Рейтинг: 0 / 0
SQl запросы
    #32635821
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НовичекМВОПРОС По Local View - непосредственно при его создании Sql запрос работает,файл выводится в Gride правильно, если перехожу в форму, установив все что вы подсказали, выдает ошибку
Alias not found, по отладчику посмотрела что не нравиться в Init формы
REQUERY("Myview"), где Myview название моего Local View ??????????????????

Вот это сделано?

ВладимирМ
Теперь включаешь этот Local View в DataEnvironment твоей формы обязательно установив свойство этого View.NoDataOnLoad=.T.
...
Рейтинг: 0 / 0
SQl запросы
    #32635830
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теперь включаешь этот Local View в DataEnvironment твоей формы обязательно установив свойство этого View.NoDataOnLoad=.T.

Извините за мою тупость, но где я должна это записать, сделала активной свою форму - вызвала DataEnvironment для данной формы, а дальше ????????
...
Рейтинг: 0 / 0
SQl запросы
    #32635836
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открыл DataEnvironment, далее

-) Пункт главного меню "DataEnvironment", подпункт ADD (или правой кнопкой мыши на окне DataEnvironment пункт Add)

-) В открывшейся формочке устанавливаешь переключатель "Select" в режим "View", устанавливаешь указатель на твое View и нажимешь кнопку ADD. Закрываешь уже ненужную формочку для добавления объектов

-) Активизируешь в DataEnvironment только что добавленное View и переходишь в окно Properties. Устанавливаешь в нем свойство NoDataOnLoad в значение .T.

Можно еще добавить View по другому:

-) Активизируешь окно DataEnvironment и окно твоего проекта.
-) Нажимаешь мышкой в окне проекта на нужное View и не отпуская тащишь ее в область DataEnvironment. После отпускания мыши View вставится в DataEnvironment. Надо будет только изменить NoDataOnLoad
...
Рейтинг: 0 / 0
SQl запросы
    #32635946
НовичекМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все о том же View.
Большое спасибо. Все получилось, но.....
Я написала запрос, где я указала параметр, но я хочу, чтобы в Gride сначала высвечивался весь файл, а потом при помощи кнопки конкретно (задаю значения параметра по =), и в этом же Gride хочу получить результат по параметру, потом по слудующей кнопке восстанавливаю предыдущее состояние(полный файл). Это возможно(мне кажется, нельзя указать такое значение параметра для просмотра всего файла, потому что я должна поставить =, а не >=), а может для этого нужно несколько View?????. или может быть в Init формы сначала написать запрос и поместить его в Cursor, а потом уже по параметру использовать View?
Очень жду ответа
...
Рейтинг: 0 / 0
SQl запросы
    #32636150
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В принципе, можно менять источник данных для Grid. Т.е. либо собственно таблица, либо View.

Можно еще сконструировать параметризированный View таким образом, чтобы при определенном значении параметра выдавалась вся таблица (хотя это не есть хорошо).

Оба подхода имеют свои достоинства и недостатки. Но прежде чем их обсуждать следует очень подумать: а надо ли тебе отображать ВСЮ таблицу целиком?

Ни один пользователь не сможет охватить такой объем информации "одним взглядом". На практике, если объем информации занимает места больше, чем 2...3 листания, то это уже много! Надо как-то фильтровать данные.

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


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