powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ???что к чему я не пойму???
25 сообщений из 36, страница 1 из 2
???что к чему я не пойму???
    #36403644
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята помогите с проблемой я раньше программы не когда не писал, а это надобность заставила.
Вопрос такой, как сделать так чтоб поля выбранные через комбобоксы из одной таблицы сохранялись в другую?
Как сделать счетчик для таблицы, чтобы когда в неё добавлялись записи в ней автоматом нумеровались строки?
Какой программный код нужно прицепить к кнопке чтоб при нажатии на неё все данные сохранялись?
Заранее спасибо.
(и может кто знает где найти литературу для такого рода ответов?)
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36403710
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

Счетчик - поле Integer (AutoInc)

Чтобы данные сохранялись - выбрать буферизацию формы - Optimistic и сохранять через TableUpdate() - подробнее в хэлпе.

Комбобокс - Combo
настроить свойства
Код: plaintext
1.
2.
3.
4.
5.
Combo.RowSourceType    = SqlStatement
Combo.RowSource        = select id, field1 from myTable1 into cursor curTemp order by field1
Combo.ColumnWidths     =  0 , 400 
Combo.BoundColumn      =  2 
Combo.ControlSource    = MyTable2.table1_id
Сохраняться будет значение id из myTable1 в поле MyTable2.table1_id. В комбо будет показано field1.

как-то так
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36403949
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36404376
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо за ответы AmKad и LUCIAN,
только я нечего не понял, вы не могли бы поподробнее?
Пожалуйста очень надо!
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36404700
LUCIAN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Liprikon7,
В таблицу путевые листы:
СТРУКТУРА P_LIST -путевые листы

1 N_PUT C(10,0)
2 DATA_P D(8,0)
3 LIC_KAR C(10,0)
4 KODA C(3,0)
5 TN_WOD C(5,0)
6 REZIM C(1,0)
7 SOPR_OTD C(3,0)
8 KODP C(3,0)
9 ID_PUT I(4,0)
10 DNK N(2,0)
На основании справочников:

СТРУКТУРА SP_AWT-справочник автомобилей

1 NAM C(49,0)
2 DWWODA D(8,0)
3 DAT_IZN D(8,0)
4 N_LICENZ C(10,0)
5 PRAW C(1,0)
6 PRTOP C(1,0)
7 ID_AWT I(4,0)

СТРУКТУРА SOTRUD-справочник сотрудников(водителей)

1 TN C(5,0)
2 FIO C(40,0)
3 NACO L(1,0)
4 DR D(8,0)
5 KRAB C(1,0)
6 SPEC C(4,0)
7 DATP D(8,0)
8 UFIO C(25,0)
надо ввести KODA , TN_WOD (код автомобиля,таб.№ водителя)
для этого используется 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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
 	ADD OBJECT form1.pageframe1.page1.grdl_put AS grid WITH ;
		ColumnCount =  9 , ;
		DeleteMark = .F., ;
		HeaderHeight =  40 , ;
		Height =  269 , ;
		Left = - 3 , ;
		Panel =  1 , ;
		RecordSource = "l_put", ;
		RecordSourceType =  1 , ;
		RowHeight =  23 , ;
		Top =  14 , ;
		Width =  744 , ;
		Name = "grdL_put", ;
	*- - - - - - - - - - - - - - 
		Column4.ControlSource = "l_put.koda", ;
		Column4.Width =  146 , ;
		Column4.Sparse = .F., ;
		Column4.Name = "Column4", ;
		Column5.ControlSource = "l_put.tn_wod", ;
		Column5.Width =  124 , ;
		Column5.Sparse = .F., ;
		Column5.Name = "Column5", ;
		Column6.ControlSource = "l_put.rezim", ;
		Column6.Width =  96 , ;
		Column6.Sparse = .F., ;
		Column6.Name = "Column6", ;
		Column7.ColumnOrder =  8 , ;
		Column7.ControlSource = "l_put.sopr_otd", ;
		Column7.Width =  163 , ;
		Column7.Sparse = .F., ;
		Column7.Name = "Column7", ;
		Column8.ColumnOrder =  9 , ;
		Column8.ControlSource = "l_put.kodp", ;
		Column8.Width =  143 , ;
		Column8.Sparse = .F., ;
		Column8.Name = "Column8", ;
		Column9.ColumnOrder =  7 , ;
		Column9.ControlSource = "l_put.DNK", ;
		Column9.Width =  52 , ;
		Column9.Name = "Column9"


*- - - - - - 
	ADD OBJECT form1.pageframe1.page1.grdl_put.column4.header1 AS header WITH ;
		FontSize =  10 , ;
		Alignment =  2 , ;
		Caption = "Автомобиль", ;
		Name = "Header1"


	ADD OBJECT form1.pageframe1.page1.grdl_put.column4.combo1 AS combobox WITH ;
		BoundColumn =  2 , ;
		ColumnCount =  2 , ;
		ColumnWidths = "233,30", ;
		RowSourceType =  3 , ;
		RowSource = ['SELECT NAM,PADR(ID_AWT,3) AS KODA,N_LICENZ FROM SP_AWT WHERE SP_AWT.PRAW IN ("1","3") ORDER BY NAM INTO CURSOR CAWT'], ;
		ControlSource = "P_LIST.KODA", ;
		Height =  24 , ;
		Left =  296 , ;
		Style =  2 , ;
		Top =  35 , ;
		Width =  263 , ;
		Name = "Combo1"


	ADD OBJECT form1.pageframe1.page1.grdl_put.column5.header1 AS header WITH ;
		FontSize =  10 , ;
		Alignment =  2 , ;
		Caption = "Водитель", ;
		Name = "Header1"


	ADD OBJECT form1.pageframe1.page1.grdl_put.column5.combo1 AS combobox WITH ;
		BoundColumn =  2 , ;
		ColumnCount =  2 , ;
		ColumnWidths = "120,36", ;
		RowSourceType =  3 , ;
		RowSource = "SELECT UFIO,TN FROM SOTRUD ORDER BY UFIO INTO CURSOR CWOD", ;
		ControlSource = "P_LIST.TN_WOD", ;
		Height =  24 , ;
		Left =  108 , ;
		Style =  2 , ;
		Top =  36 , ;
		Width =  156 , ;
		Name = "Combo1"
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36404818
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7только я нечего не понял, вы не могли бы поподробнее?
У большинства объектов FoxPro есть такое свойство ControlSource. В этом свойстве указывается то, куда будет записан результат выбора/ввода значения в соответсвующий объект.

Также значение поля, указанного в ControlSource определяет значение, которое будет отображено при открытии формы.

Например, если указать в ComboBox.ControlSource имя поля таблицы, то результат выбора ComboBox автоматически будет записан в текущую запись указанной таблицы в указанное поле.

Для ComboBox источником данных выпадающего списка является то, что будет указано в свойстве ComboBox.RowSource. В паре к этому свойству задействуется еще свойство ComboBox.RowSourceType, которое определяет тип того, что указано в ComboBox.RowSource

Дополнительная проблема заключается в том, что, как правило, необходимо отобразить в ComboBox значение одного поля таблицы, а записать значение другого поля выбранной записи. Эта проблема решается путем выбора в качестве источника данных выпадающего списка нескольких столбцов. Отображатся будет первый столбец, а выбираться значение второго.

Из какого именно столбца надо выбрать значение, указывается в свойстве ComboBox.BoundColumn. А чтобы скрыть (не отображать) второй столбец ему указывается ширина в 0 пикселей через свойство ComboBox.ColumnWidths.

Если выбираемое значение имеет числовой тип данных, то необходимо еще дополнительно установать свойств ComboBox.BoundTo = .T. Правда, с этим может быть связана проблема, подробно описанная здесь

Не отображается выбранное значение в ComboBox

Насчет литературы, вот здесь http://www.foxclub.ru/ есть ссылка на 3 книги.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36404880
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята спасибо вам за ответы я сейчас попробую а вечером отпишусь.
Кстати литература по вашей ссылке ВладимирМ супер! вот только приобрести её у меня возможности нет, а скачать не откуда.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405352
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну вот опять проблема.
Запись из поля n_doma.n_doma не хочет добовлятся в комбобокс.
Выдаёт ошибку: Error #107 in Resetcolumn (0): Несовпадение типа оператора и операнда.
Я немного распишу как устроена моя база может кто что и посоветует.

У меня есть 6 таблиц, картинку я прикрепил, если не отобразится тогда можно скачать здесь 25кб.

Таблица: ARJ это главная таблица, сюда будет формироваться весь архив
Таблица: KLAS здесь выбирается из списка комбобокса поле name (вид отопления)
Таблица: UTHASTOK принцип тот же здесь выбирается из списка комбобокса поле name (участок)
Таблица: UL здесь выбирается из списка комбобокса поле name (улица)
Таблица: KOTELNAY здесь выбирается из списка комбобокса поле name (котельная)
Таблица: N_doma здесь выбирается из списка комбобокса поле name (номер дома)

Возможно вы спросите зачем такая структура базы?
Дело в том что мне надо чтобы при выборе определённых полей из таблиц улица и котельная автоматически можно было выбрать только те дома из таблицы дома которые соответствуют полям таблиц улица и котельная, ну и соответственно при выборе всех трёх значений должен формироваться признак в таблицу ARJ (архив).
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405579
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

В какой момент возникает ошибка?
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405821
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сразу же при попытке в Buildere добавить поле в Selected fields:.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405892
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

Это вы комбобокс билдером настраиваете? :)
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405937
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKadLiprikon7,

Это вы комбобокс билдером настраиваете? :)
Ну да....
а что?
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36405956
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

А ручками свойства как было приведено выше настроить не желаете? :)
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36406080
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKadLiprikon7,

А ручками свойства как было приведено выше настроить не желаете? :)

Да вы правы ручками получилось, я и не думал что это имеет значение.
Вот как бы ещё кнопочку сюда впихнуть с сохранением всех выбранных позиций в архив?
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36406094
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7AmKadLiprikon7,

А ручками свойства как было приведено выше настроить не желаете? :)

Да вы правы ручками получилось, я и не думал что это имеет значение.
Вот как бы ещё кнопочку сюда впихнуть с сохранением всех выбранных позиций в архив?

Куда вы хотите сохранять "выбранные позиции"?
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36406528
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKad,

Мне надо чтобы чтоб при нажатии кнопки сохранить из таблиц
ul.name
kotelnay.name
n_doma.n_doma

заносилась отметка в таблицу ARJ поле svod .

И ещё мне интересно как сделать так чтоб при выборе ul.name и kotelnay.name в поле n_doma.n_doma мне предоставлялись строки соответствующие таблицам ul и kotelnay а не все подряд что там есть.

Я на всякий случай интерфейс прикреплю с подписанными полями, я думаю разобрать будет не сложно.
Основная задумка это чтобы все заполненные поля сохранялись в таблицу ARJ.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36407338
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди ну ответьте же наконец!!!!!!!!!!!!!!!!!
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36407424
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

Во первых сохранение при оптимистической буферизации формы (Form.BufferMode = Ottimistic) делается через TableUupdate.

Во вторых заменить значение ячейки можно через replace
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36407506
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKadLiprikon7,

Во первых сохранение при оптимистической буферизации формы (Form.BufferMode = Ottimistic) делается через TableUupdate.

Во вторых заменить значение ячейки можно через replace

А вы не могли бы чуть больше конкретики добавить.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36407851
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Liprikon7, прочитайте хоть одну книжку по фокспро. Сразу же часть вопросов отпадет. Почему за вас кто-то должен вашу работу делать?
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36408754
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FfffffffffffffffLiprikon7, прочитайте хоть одну книжку по фокспро. Сразу же часть вопросов отпадет. Почему за вас кто-то должен вашу работу делать?

К сожалению в нете я ненашол нормальной литературы,
а из той что есть пользу извлечь очень сложно, да и пишут они не о том что надо.
А то что у меня много вопросов вы уж извините.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36408993
Liprikon7,

Проблема в том, что ответом на подобные вопросы будут курсы лекций по теории реляционных баз данных и методам создания баз данных в среде Visual Foxpro. Видимо, проводить заочное обучение желающих нет, что неудивительно :-)
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36409744
Местами администратор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7FfffffffffffffffLiprikon7, прочитайте хоть одну книжку по фокспро. Сразу же часть вопросов отпадет. Почему за вас кто-то должен вашу работу делать?

К сожалению в нете я ненашол нормальной литературы,
а из той что есть пользу извлечь очень сложно, да и пишут они не о том что надо.
А то что у меня много вопросов вы уж извините.

Ты не прав. Сам научился при помощи книг + инет. Пусть и не лисинный бог, но любую программу (БД) написать смогу на очень приличном уровне. Все мои вопросы можешь увидеть на sql.ru, не так их и много.

Есть такие люди, которым не дано... Подумай над этим.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36410566
Liprikon7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Местами администратор,

Вы возможно правы на счёт не дано!
Но как завещал Ленин трудится, трудится, трудится!
Поэтому я постараюсь не терять надежды, но в преть буду задавать вопросы только по крайней необходимости.
И напоследок, я буду очень признателен за ответ.
Вы не могли бы мне посоветовать литературу для написания кодов в Visual FoxPro
Я не магу понять какой язык запросов использует Visual FoxPro, он очень похож на SQL но посмотрев посты на форуме я стал сомневаться, взять к примеру вот этот код

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
If MESSAGEBOX("Сохранить изменения?", 4 + 32 ,"Сохранение") =  6 
 IF TABLEUPDATE( 0 ,.T.,"disp1")
       MESSAGEBOX('OK')
 ELSE
       MESSAGEBOX('BAD')
 ENDID
.......
ENDIF

Я в SQL такова вроде не встречал, может я ошибаюсь? Или не те книги читал?
Спасибо за ответы.
...
Рейтинг: 0 / 0
???что к чему я не пойму???
    #36410591
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liprikon7,

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


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