Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Код кнопки для добавления записей через форму, созданную из двух таблиц  [new]
DimaN_ru16
Member

Откуда:
Сообщений: 2
Помогите пожалуйста написать код для добавления данных в таблицы. У меня при нажатии на кнопку добавить невозможно вводить данные в поля, где данные выводятся из второй (дочерней) таблицы.
А именно поля: "название должности", "оклад", "выполняемые функции"

К сообщению приложен файл. Размер - 57Kb
19 дек 10, 12:50    [9962856]     Ответить | Цитировать Сообщить модератору
 Re: Код кнопки для добавления записей через форму, созданную из двух таблиц  [new]
igorbik
Member

Откуда: Мск
Сообщений: 578
DimaN_ru16,

ну, дык надо добавлять новые записи не только в таблицу 1, но и таблицу 2. И тут же заполнить автоматом ключевые поля обеих таблиц одинаковыми значениями. Отрефрешить форму. И придет тебе счастье: сможешь заполнить все поля.
19 дек 10, 19:49    [9963553]     Ответить | Цитировать Сообщить модератору
 Re: Код кнопки для добавления записей через форму, созданную из двух таблиц  [new]
DimaN_ru16
Member

Откуда:
Сообщений: 2
Я тебя не понял, я в FoxPro тока новичек. Можешь на примере показать, или код написать. У нас препод сам не понимает FoxPro. Может скинешь мне часть бд. Плиз
20 дек 10, 18:36    [9968845]     Ответить | Цитировать Сообщить модератору
 Re: Код кнопки для добавления записей через форму, созданную из двух таблиц  [new]
igorbik
Member

Откуда: Мск
Сообщений: 578
DimaN_ru16, не по адресу. Может, кто из местных поможет, или на freelance.ru
20 дек 10, 18:49    [9968907]     Ответить | Цитировать Сообщить модератору
 Re: Код кнопки для добавления записей через форму, созданную из двух таблиц  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
А при чем здесь FoxPro? Точнее так, "что" надо сделать препод должен знать, если хоть как-то разбирается в реляционных СУБД. У него может быть вопрос только "как".

Т.е. как минимум, препод должен объяснить, что записи надо дабавлять во все связанные таблицы. А чтобы таблицы остались "связанными" надо в создаваемую запись подчиненной таблицы сразу же записать код записи главной (Primary Key)

PK (в теории) должно генерится автоматически при добавлении записи в главную таблицу. Далее просто дается команда Insert-SQL для создания новой записи в подчиненной таблице и автоматической записи FK.

Вот ЭТО препод просто обязан знать, поскольку это общий принцип работы с реляционными базами данных. Вне зависимости от какого-либо языка программирования. Если препод не знает даже этого, то стоит серьезно подумать о смене преподователя.

Если все ранее написанное понятно, то далее начинается именно "как". Т.е. техническая реализация в конкретном языке программирования. Тут тоже все просто. Лезешь в код кнопки "добавить" (метод Click()) и после DoDefault() вставляешь команду Insert-SQL для вставки записи в подчиненную таблицу.

В FoxPro вызов кода текущего метода класса-родителя - это функция DoDefault().

DoDefault() нужен для того, что Вы, очевидно, создали форму при помощи построителя. Т.е. существует иерархия классов, связанных с кнопками. Как следствие, прежде, чем добавлять свой код надо позволить выполниться коду класса-родителя.
20 дек 10, 19:28    [9969163]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить