Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Проблемі с Grid / 24 сообщений из 24, страница 1 из 1
12.05.2009, 22:18
    #35981757
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Есть форма с элементом Grid
Нужно организовать 2 задания:
1. Чтобы на форме в Grid выводились не все записи, а тока соответствуещие "реєстраційному_номеру".
Введёному на форме выше.
2. Чтобы поле "Виконавець" в Grid работало как ComboBox, а выбор производился из следуещей таблицы "Виконавці" с поля "ПІБ"
...
Рейтинг: 0 / 0
12.05.2009, 22:21
    #35981766
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
...
Рейтинг: 0 / 0
13.05.2009, 01:25
    #35981944
CTAC-KO
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
1) не рекомендую использовать кириллицу в названиях объектов, а тем более специфические украинские символы (как в txtРеєстраційний_номер), лучше все же использовать латиницу ( транслитерацию), но лучше всего по-английски - и язык подучишь и глюков меньше, короче сплошные плюсы :)
2) Если нужен вывод по рег.номеру в гриде, это можно сделать несколькими способами
- наложить на таблицу грида фильтр по соотв. условию
- сделать ревыборку в таблицу для грида по соотв. условию
3) чтобы в поле грида был комбо, его туда надо сначала всунуть и назначить контролом. Это делается в дизайнере - кликаешь на нужную колонку, потом выбираешь создание комбо и опять кликаешь по той колонке. В результате в окошке Properties можно будет увидеть, что в этой колонке 2 контрола - текстбокс и комбо, причем первый можно удалить. И еще у колонки надо будет сменить св-во Sparse
...
Рейтинг: 0 / 0
13.05.2009, 10:55
    #35982404
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Присоеденяюсь к "предыдущему оратору"
не стоит использовать для наименования полей кирилицу, а уж тем более украинские буквы.
Хотя это напрямую и не связано , но меня например были проблемы при создании файлов с украинскими и русскими буквами в имени.
Я так понимаю что вам удобно "таскать" поля и таблицы на форму - они создаються с украинскими Caption - но эту проблему можно решить по другому - в дизайнере таблиц заполните поле Caption , и при перетаскивании наименования будут браться оттуда - это даже удобнее , потому что там можно использовать пробелы.
Насчет вопросов - они уже тут многократно обсуждались.
Первый вопрос решаеться массой способов - фильтр / представление / SQL / Курсорадаптер
Второй - уже обьяснили - не забудь только сменить св-во Sparse - иначе комбик будет виден только при выделении ячкейки.
Также советую сходить на фоксклуб- там есть ссылка на русский хелп и на http://firststeps.ru/
...
Рейтинг: 0 / 0
14.05.2009, 17:49
    #35986361
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Ребята спасибо.
О кирилеце знаю, и переименовую элементы, только после возникновения проблемы, просто всё сразу сейчас менять уже поздно.
С комбо в гриде всё получилось, спасибо.
А от с грид не могу понять:
Как наложить на таблицу грида фильтр по соотв. условию или сделать ревыборку в таблицу для грида по соотв. условию.
Если можно какое то пример пожалуйста.
...
Рейтинг: 0 / 0
14.05.2009, 18:08
    #35986431
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
пример


обратите на внимание на телодвижения, происходящие при
выборе значения комбика:

формируется динамич-е услови и делается рефреш курсора
...
Рейтинг: 0 / 0
14.05.2009, 18:39
    #35986533
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Всё отлично это, то что мне нужно, но есть ПРОБЛЕМА, в этом примере не вижу формы, - и по этому не могу посмотреть код на кнопках.
Пользуюсь visual FoxPro 9.0 проэкт сделал работает, но как он работает посмотреть не могу, помогите.
...
Рейтинг: 0 / 0
14.05.2009, 18:47
    #35986550
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
автор в этом примере не вижу формы

а это ихто?
шучу ...

в данном примере используется так называемая
класс-форма (vcx-форма)

когда Вы займетесь разработкой классов, то поймете,
что ....

пока можете посмотреть пример и то-же самое сотворить и с обычной формой,
но получить риск свала лисы с ног
...
Рейтинг: 0 / 0
14.05.2009, 20:30
    #35986758
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Вот застрял на кнопке "+" - добавить новую запись в грид.
APPEND BLAN
thisform.grid1.SetFocus()

Вместо того что бы добавить мне предлагается изменить существующею запись.
...
Рейтинг: 0 / 0
14.05.2009, 20:41
    #35986773
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
AlexDoomВот застрял на кнопке "+" - добавить новую запись в грид.
APPEND BLAN
thisform.grid1.SetFocus()

Вместо того что бы добавить мне предлагается изменить существующею запись.

Разобрался,
Нужно сначала фокус задать, а потом редактировать, наверное )), ну в общем так работает

thisform.grid1.SetFocus()
APPEND BLANK
...
Рейтинг: 0 / 0
14.05.2009, 21:48
    #35986856
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
авторНужно сначала фокус задать, а потом редактировать, наверное

что-то я Ваших бубнов не понимаю.

возможно Вам поможет
Код: plaintext
1.
append blank in ...

+
Код: plaintext
1.
2.
insert into ... (...)
  values (..)

смысл дергать фокус на грид имеет только для того, чтобы встать на нужную область.
...
Рейтинг: 0 / 0
15.05.2009, 07:55
    #35987109
GermanGM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
AlexDoom,
refresh Grid-a после APPEND BLANK сделать забыли просто-напросто.
...
Рейтинг: 0 / 0
18.05.2009, 21:56
    #35992800
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
GermanGM,
спасибо, я ещё перед APPEND BLANK добавил GO BOTTOM
вообщем спасибо нужного эфекта пока достиг.
...
Рейтинг: 0 / 0
19.05.2009, 16:20
    #35994574
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
Возникла новая проблема, есть следующая грид и нужно что бы в колонку "виконавці" можна было добавлять значения с таблицы "виконавці" с колонки "піб".
Проблема состоит в том что значение колонки в грид имеет несколько значений с таблицы.
Тоесть в одной записи грид должно быть много исполнителей(виконавців).
Как можно это сделать?
...
Рейтинг: 0 / 0
19.05.2009, 16:21
    #35994579
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
...
Рейтинг: 0 / 0
19.05.2009, 16:22
    #35994584
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
...
Рейтинг: 0 / 0
19.05.2009, 16:41
    #35994656
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
проблема сделать связь один-ко-многим?
...
Рейтинг: 0 / 0
19.05.2009, 17:05
    #35994756
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
прошелмимо,

проблема отобразить
...
Рейтинг: 0 / 0
19.05.2009, 17:07
    #35994766
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
прошелмимопроблема сделать связь один-ко-многим?

И связь здесь не один ко многим,
поле одной таблицы связано с полем другой таблицы и все,
Где здесь один ко многим?
...
Рейтинг: 0 / 0
19.05.2009, 17:25
    #35994836
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
авторПроблема состоит в том что значение колонки в грид имеет несколько значений с таблицы.
Тоесть в одной записи грид должно быть много исполнителей(виконавців).


авторГде здесь один ко многим?

вот то, что Вы описываете и называется связь один-ко-многим

т.е. к одной записи в таблице привязываете несколько записей из другой
сделайте доп.грид рядом, в котором отображайте отобранные записи из справочника
ваших витконавцев
...
Рейтинг: 0 / 0
19.05.2009, 17:44
    #35994896
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
http://forum.foxclub.ru/read.php?29,387621


я так понимаю, что Вы ушли туда ума пытать?
...
Рейтинг: 0 / 0
19.05.2009, 17:53
    #35994917
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
прошелмимо,

Я розсматривал этот вариант, но он не пойдет.
Потому что в основном гриде будет много записей(допучтим 10)
и к каждой записи надо примерно 4 исполнителя. Как это отобразить в дополнительной грид?
Такой вариант хорош и я его использовал когда одна запись в основном гриде.
...
Рейтинг: 0 / 0
19.05.2009, 18:13
    #35994945
прошелмимо
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
реализация многие-к-многим
с отображением отборов в результирующем курсоре одной строкой

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
Create CURSOR  pp (tt i, kk i)
Insert into pp values ( 1 , 2 )
Insert into pp values ( 2 , 1 )

Create cursor справочник (id i autoinc, value v( 10 ))
Insert into справочник (value) values ("Вася")
Insert into справочник (value) values ("Петя")
Insert into справочник (value) values ("Коля")
Insert into справочник (value) values ("Маша")
Insert into справочник (value) values ("Вера")

Create cursor отборы (id i autoinc, tt_pp i, id_справочник i)
Insert into отборы (tt_pp, id_справочник) values ( 1 , 2 )
Insert into отборы (tt_pp, id_справочник) values ( 1 , 3 )

Insert into отборы (tt_pp, id_справочник) values ( 2 , 5 )
Insert into отборы (tt_pp, id_справочник) values ( 2 , 3 )
Insert into отборы (tt_pp, id_справочник) values ( 2 , 4 )

Select tt, Cast(select_отборы(tt) as v( 100 )) as value_отборы, kk ;
	from pp
		
Return 


Function select_отборы
Lparameters tnId
Select t2.value as value ;
	from отборы t1 ;
		left join справочник t2 on  t1.id_справочник=t2.id ;
	where tt_pp=tnId ;
	into CURSOR temp
Local lcRetValue
lcRetValue = ""	
Scan
	lcRetValue = lcRetValue + Iif(!Empty(lcRetValue),",","")+ value
endscan	
Use in temp
Return lcRetValue


как вариант ищите примеры реализации связи
многие-к-многим
...
Рейтинг: 0 / 0
20.05.2009, 09:13
    #35995701
AlexDoom
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемі с Grid
прошелмимо,

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


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