LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: ФОРМА...
 Тема: ФОРМА
 
 15.06.2007 21:09:00
All
4316 сообщения
1-ый


Тема: ФОРМА
подскажите, пожалуйста, как можно решить следующую
задачу:
БД для магазина. Необходимо создать форму
оформления заказа, причем прежде чем оформлять
заказ, надо проверить, делал ли ЭТОТ КЛИЕНТ заказ
ранее.
Если ранее заказы делались, то данные клиента
добавлять в БД не надо, а вывести сразу форму о
товарах.
Если же заказов не было, то надо сначала вывести форму
для ввода данных о клиенте, а затем форму о товарах.
ПОМОГИТЕ, ПОЖАЛУЙСТА!!!!



P.S. Создание форм
Автор: Олька от 0:00:00 Источник ...
 15.06.2007 21:09:00
wu
3 сообщения


RE: ФОРМА
Эта задача легко решаема.
К примеру (для небольших баз): если имя клиента будет выбираться из контрола 'Поле со списком', соответсвенно использовать событие 'отсутсвие в списке', в том случае если клиент с таким именем отсутсвует в базе и описать функцию добавления нового клиента (как правило через открытие соответсвующей формы (карточка клиента или что-то в етом роде). Если же он есть, то должна сработать автоподстановка значения и пользователь продолжит заполнение заказа.


P.S. Создание форм
Автор: wu от 21.12.2004 16:17:20 Источник ...
 15.06.2007 21:09:00
wu
3 сообщения


RE: ФОРМА
Да. Вот Вам пример такой функции. Достаточно распространенный.

Пример вызова функции из события 'отсутсвие в списке' - AddMyNewData NewData, "frmGoods", Response

И сама функция
*************************************************
Sub AddMyNewData(NewData As String, frm As String, Response As Integer)

NewData = CapitalizeFirst((NewData))

' Выводит окно сообщения с приглашением подтвердить
' добавление нового типа.
strTitle = "Введенное значение отсутствует в базе! "
intMsgDialog = vbYesNo + vbQuestion + vbDefaultButton1
intNewCategory = MsgBox("Добавить '" & NewData & "'?", intMsgDialog, strTitle)

If intNewCategory = vbYes Then

' Удаляет новое имя из поля «КодТипа», позволяя выполнить
' обновление элемента управления при возвращении в форму.
DoCmd.RunCommand acCmdUndo

' Выводит сообщение и уменьшает длину значения
' введенного в поле со списком «КодТипа».
strTitle = "Слишком длинное имя"
intMsgDialog = vbOKOnly + vbExclamation
If Len(NewData) > 255 Then
intTruncateName = MsgBox("Название не может содержать " & "больше 255 символов. Введенное название будет " _
& "обрезано.", intMsgDialog, strTitle)
NewData = Left$(NewData, 255)
End If

DoCmd.OpenForm frm, , , , acFormAdd, acDialog, NewData

Response = acDataErrAdded

'Продолжение без вывода стандартного сообщения об ошибке.
Else
Response = acDataErrContinue
End If
*************************************************


P.S. Создание форм
Автор: wu от 21.12.2004 16:25:40 Источник ...
 15.06.2007 21:09:00
All
4316 сообщения
1-ый


RE: ФОРМА
Большое спасибо!!!


P.S. Создание форм
Автор: Олька от 0:00:00 Источник ...
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: ФОРМА...
ПоискПоиск  Список форумовСписок форумов  
right