|
|
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Здраствуйте, у меня такая проблема. В гриде 4 столбца(3 беруца из представления с помощью запроса, 1 пустой). Первые 3 редактировать нельзя, последний можно. Св-ва readOnly выставил правильно для всех столбцов, но всё равно не даёт редактировать последний столбец. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2007, 14:12 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
1. Что является источником данных для Grid. Этот источник сам по себе редактировать можно? 2. Что является источником данных для столбца? Вычисляемые выражения по определению нельзя редактировать. Только собственно поля таблицы-источника. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2007, 14:43 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Для грида SQL-запрос представления, которое не редактируеца, а для столбцов - первые 3 - это столбцы из запроса, а 4 - thisform.grid1.column4.ControlSource = ''. Пробовал везде readOnly=.F., всё равно не один столбец не редактируца :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2007, 15:26 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Допустим, как я понял: Grid.RecordSourceType=SqlStatement(5) Grid.RecordSource="SELECT Col1,Col2,Col3, EditField FROM someview" Дело в том, что результат запроса - курсор, и причем только на чтение Рекомендую лучше сделать так: Dataenvironment.beforeopentables() { CREATE CURSOR ForGrid (COL1 тип,COL2 тип, COL3 тип, EditField тип) } Для грида Grid.RecordSourceType="Alias"(не помню значение) Grid.RecordSource="ForGrid" а в курсор ForGrid данные брать из представления таким образом: INSERT INTO ForGrid SELECT Col1,Col2,Col3,EditField FROM someview потом для первых трех: Grid.Column#.ReadOnly=.T. для последнего - .F. После этого точно будет редактироваться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2007, 17:45 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
2 Bl@ze¶ox: большое спасибо, так заработало, но осталаясь небольшая проблемка. Столбец, который можно редактировать, при загрузке грида должен быть пустым. Если знаеете как, буду сильно благодарен за помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 09:43 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Не вижу проблемы, если тип поля символьный, то просто переписываем INSERT подобным образом: INSERT INTO ForGrid SELECT Col1,Col2,Col3,'' as EditField FROM someview, где '' -пустая строка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 11:12 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
2 Bl@ze¶ox: огромное спасибо, очень мне помогли. Похоже надо больше внимания уделить SQL-ю. Я про такое никогда не слышал. о_О СПС :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 12:11 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Зачем таки е сложности? CREATE CURSOR ForGrid (COL1 тип,COL2 тип, COL3 тип, EditField тип) а в курсор ForGrid данные брать из представления таким образом: INSERT INTO ForGrid SELECT Col1,Col2,Col3,EditField FROM someview Чем не устраивает SELECT Col1,Col2,Col3,"" AS EditField FROM someview INTO CURSOR ForGrid READWRITE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 12:20 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Можно и так, но тогда это все надо засовывать в метод DataEnvironment.AfterOpenTables() Да и просто мне так привычнее мониторить курсоры, учитывая C/S. Просто сила привычки, что для ввода новых данных нужно что-то иметь сначала, особо если нет локальных таблиц... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 12:38 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 14:57 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Могу возразить только то, что длина значания свойства в VFP9 без использования + составляет 255 символов, в остальном, в данном случае согласен с ВладимирМ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 18:07 |
|
||
|
Grid всё время readOnly
|
|||
|---|---|---|---|
|
#18+
Bl@ze¶oxМогу возразить только то, что длина значания свойства в VFP9 без использования + составляет 255 символов В смысле, при заполнении свойства в дизайнере. При программном заполнении - до 8К. И не только в VFP9, но и в младших версиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2007, 19:13 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34991512&tid=1588442]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 367ms |

| 0 / 0 |
