ник: Скорп
не..не то
это класический способ построения форм на основе таблиц
так, вот мой вариант (пока не полный)..
1. кликаем на нужные нам флажки (таким образом выбираем именно те расчеты, которые должны быть в заказе)
изврат, который тут понадобился выглядит так:
Private Sub Выбрать_В_Заказ_Click()
DoCmd.GoToRecord , , acNext
DoCmd.GoToRecord , , acPrevious
End Sub
|
зачем это нужно - для того, чтобы в таблице Расчеты обязательно поставился флажок в True, иначе нужно было бы кликать на соседнем поле мышкой
2. В таблице Заказы нужно создать новую запись. Ничего другого не придумал, как скинуть в табл. Заказы, например, КодКлиента из табл. Расчеты. Таким образом мы получим новую запись (новый заказ с новым номером) и новый номер отобразим в поле заголовка ленточной формы
Новый_№_Заказа = DMax("[№_Заказа]", "Заказы")
|
критерием выбора записей в табл. Расчеты является:
- Выбрать_В_Заказ=true и №_Заказа - Is Null (т.е. те, которые мы только что выбрали)
весь код на кнопке "Сформировать заказ" выглядит так:
Private Sub Сформировать_Заказ_Click()
DoCmd.RunSQL "INSERT INTO Заказы ( КодКлиента )" _
& "SELECT DISTINCT Расчеты.КодКлиента FROM Расчеты WHERE (((Расчеты.№_Заказа) Is Null) AND ((Расчеты.Выбрать_В_Заказ)=Yes));"
Новый_№_Заказа = DMax("[№_Заказа]", "Заказы")
End Sub
|