powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вопрос про создание динамически таблицы
6 сообщений из 6, страница 1 из 1
Вопрос про создание динамически таблицы
    #32374601
dima_18
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите!
На форме находится grid в dataenvironment находится таблица с названием
table_massiv
Создаю каждый раз create table table_massiv(&stroka)
где переменная - stroka: формирует названия полей новой таблицы
затем добавляю в цикле строки:
for i = 1 to kol_vo_strok
append blank
endfor
переменная kol_vo_strok - запрашиваемая сколько строк добавить
в итоге формируется данная таблица с данным пустым кол-во записей
Нужно в grid мне ее заполнить у меня не чего не получается. Я делаю
еще следующее:
ThisFormSet.form1.grdTable_massiv.ColumnCount = kol_vo_stolb
ThisFormSet.form1.grdTable_massiv.&df.ControlSource = table_massiv.&dstolb
т.е. каждому столбцу пишу controlSource
а В КОНЦЕ ДЛЯ ДАННОГО ГРИДА setFocus
Помогите - как в только что фомирующеся таблицу динамически
в gride добавлять элементы
заранее спасибо
...
Рейтинг: 0 / 0
Вопрос про создание динамически таблицы
    #32374742
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
А ошибочки не возникают в этой строке?
Код: plaintext
1.
ThisFormSet.form1.grdTable_massiv.&df.ControlSource = table_massiv.&dstolb 


А вообще-то, стоит обратить внимание на свойства грида RecordSource и RecordSourceType. Выставить их для начала в "table_massiv" и 1 соответственно, и закомментировать строки:
Код: plaintext
1.
ThisFormSet.form1.grdTable_massiv.ColumnCount = kol_vo_stolb 
ThisFormSet.form1.grdTable_massiv.&df.ControlSource = table_massiv.&dstolb 


Не забыть поставить св-во ReadOnly в .F.

Потом запустить всю эту бодягу, и посмотреть, что получиться.

При этом не стоит забывать, что объект Grid не содержит в себе средств для добавления записей в источник данных... То исть нуна извращаться самостоятельно.
...
Рейтинг: 0 / 0
Вопрос про создание динамически таблицы
    #32375218
dima_18
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за отклик!
Но не чего хорошего не получилось
то что:

А вообще-то, стоит обратить внимание на свойства грида RecordSource и RecordSourceType. Выставить их для начала в "table_massiv" и 1 соответственно. Это у меня было - те строки что посоветовали закоментировать - сделал вообще grid стал не отображаться

Так что подскажите еще советом(пожалуйста)!
...
Рейтинг: 0 / 0
Вопрос про создание динамически таблицы
    #32375239
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
Есть у меня подозрение, что таблица table_massiv в dataenvironment реально существует на диске и не содержит ни одной строки.
В этом случае create table table_massiv(&stroka) создает новую таблицу,
НО
открывается новая таблица с псевдонимом отличным от table_massiv!!!

Из-за чего к гриду привязывается не вновь созданная таблица, а та, что прописана в dataenvironment. А так как строк в ней 0, то и редактировать нечего!

Возможные решения:
1. Удалить из dataenvironment таблицу table_massiv.
2. Свойство dataenvironment.AutoOpenTables поставить в .F.
3. Добавить перед create table ... :
Код: plaintext
1.
2.
3.
if used( "table_massiv" )
   use in  "table_massiv" 
endif
...
Рейтинг: 0 / 0
Вопрос про создание динамически таблицы
    #32375263
dima_18
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал ввсячески не как не получается из этих способов.
А дела следующие у меня создал таблицу(3 столбца)
и добавил какое-то кол-во записей(например 3).
При просмотре таблицы он дает мне заполнить 3 столбца и только
3 строки - т.е. нормально вроде бы.
Если же заново загружаю форму - и не задавая ни каких параметров
в gride я могу заполнить 3 строки - 4 не дает но зато
кол-во столбцов очень много и тем самым вылезаем за границу

Я весь в отчаянии - не знаю чего делать!!
Подскажите пожалуйста
...
Рейтинг: 0 / 0
Вопрос про создание динамически таблицы
    #32375331
Фотография Hel!Riser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Создание таблицы ессно происходит в frm.Load()?
2. чтоб не напрягаца с макроподстанофкой пользуй переоткрытие таблицы с новым челофским альясом.
типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
cName='qTemp'
CREATE TABLE &cTemp (Field1 C( 10 ), Field2 C( 20 ))
nArea=SELECT()

USE &cTemp IN  0  ;
	ALIAS MyAlias ;
	AGAIN
SELECT (nArea)
USE 

INSERT INTO MyAlias  VALUES ('asd1', 'qwe1')
INSERT INTO MyAlias VALUES ('asd2', 'qwe2')
INSERT INTO MyAlias VALUES ('asd3', 'qwe3')

GO TOP IN MyAlias

3. В frm.Init() делаешь присвоение сырца грида на название альяса. прокатит толька шлл:ем держи!
Код: plaintext
this.grd.RecordSource= "MyAlias" 
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вопрос про создание динамически таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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