ник: kot_k_k
работать только нужно не с таблицами а формами.
алгоритм:
делаем форму Товар на основании табл Товар.
делаем форму Заказ на основании таблы Заказы (конечно кошернее делать ее на осовании временной таблы, чтобы юзер мог поиздеваться над заказом а топом подумав сохранил его в таблице Заказы, но это потома)
на поле которое принимает Код_Товара в конструкторе вешаем событие "Двойное нажатие".
оно просит выбрат программу/выражение/макрос.
можно сделать макрос на открытие формы товары. но кодом кажется проще.
Private Sub Поле_DblClick(Cancel As Integer)
Kod_Global=0
DoCmd.OpenForm "Товар", , , , , acDialog
If Kod_Global=0 then Exit Sub
Поле=Kod_Global
Me.Поле.Requery
End Sub
|
в форме Товар на событие "Двойное нажатие" (тут можно для поля или для области данных)
вешаем следующее
Private Sub Товар_DblClick(Cancel As Integer)
Kod_Global = Me.Id_Товар
DoCmd.Close acForm, Me.Name ' закрывает текущую активную форму
End Sub
|
создать нужно модуль и туда поместить описание глобальной переменной Kod_Global
Option Compare Database
Public Kod_Global as Variant
|
че происходит - нажали 2 раза на поле - открылась форма Товар в режиме диалога, вабрали нужный товар двойным кликом мыша, глобальной переменной присовили код товара, закрыли форму присвоили полю с кодм товара значение глобальной переменной.
все должно работать.
п.с. если не знаешь как программно открыть форму или еще может помочь макрос создания кнопки - запускаешь, делаешь кнопкус нужным - смотришь в свойствах кнопки событие Нажатие кнопки там будет готовый код сделаный мастером - переписываем в нужное место и ОК.