|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - [решено] IIF в Access. Не выполняется условие. |
|
Прочие БД - [решено] IIF в Access. Не выполняется условие.
|
Пользователь Сообщения: 56 |
Работа с Б/Д происходит через программу использующую язык Transact-SQL
Здравствуйте господа форумчане !!! Очень нужна ваша помощь есть следующая Б/Д (Это только малая ее часть) Нужно чтобы запрос qdfServices выполнялся следующим образом: Если [ServicesType] = 'Монтаж' то [Price] = [OrderAmountCalc] / 100 *[Pct] Если [ServicesType] = 'Доставка' то [Pct] = Null а поле [Price] заполнять с клавиатуры Если [ServicesType] = 'Подъем на этаж' то [Price] = [FloorCalc] - 1 *50 + 150 Составили вот такую формулу, Access пишет что не проходит IIf([ServicesType]="Монтаж";[Price]=[OrderAmountCalc]/100*[Pct];IIf([ServicesType]="Доставка";[Pct]="" And [price]="";IIf([ServicesType]="'Подъем на этаж";[Price]=[FloorCalc]-1*50+150))) |
|
Отправлено: 18:31, 08-01-2012 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Цитата NecroTYN:
|
|
------- Отправлено: 15:57, 09-01-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать Цитата Delirium:
|
|
Отправлено: 20:20, 09-01-2012 | #3 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 06:22, 10-01-2012 | #4 |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать Цитата Delirium:
|
||
Отправлено: 18:48, 11-01-2012 | #5 |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать отредактировли составленное ранее выражение
IIf([ServicesType]="Подъем на этаж",([FloorCalc]-1) * 50 + 150,IIf([ServicesType]="Монтаж",[OrderAmountCalc] / 100 * Val(IIf(pct Is Null,1,pct)))) но в таком случае при значении "Доставка" в [ServicesType], поле [Price] когда в него вводишь значение остается всегда пустым... что делать ??? |
Отправлено: 08:57, 15-01-2012 | #6 |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать Наверное сразу стоит сказать что работа с Б/Д происходит через программу использующей язык Transact-SQL
|
Отправлено: 10:07, 15-01-2012 | #7 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать NecroTYN, открою тебе секрет - неважно, какая используется программа, Transact-SQL все равно используется при составлении запросов в SQL.
В твоем же случае это не T-SQL запрос, а обыкновенное условие в ACCESS. Данную формулу куда подставляешь, в форму или в запрос Access? Может быть, стоит поискать другой способ проверки введенных данных? |
------- Отправлено: 01:06, 16-01-2012 | #8 |
Пользователь Сообщения: 56
|
Профиль | Отправить PM | Цитировать Цитата Delirium:
Цитата:
SELECT tblServices.ID, tblServices.QuantityServices, tblServices.AmountServices, tblServices.Pct, tblServices.OrderID, tblOrdersProducts.Amount AS OrderAmountCalc, tblSales.Floor AS FloorCalc, tblServices.ServicesType, IIf(ServicesType="Подъем на этаж",(FloorCalc-1) * 50 + 150,IIf(ServicesType="Монтаж",OrderAmountCalc / 100 * Val(IIf(pct Is Null,1,pct)))) AS PriceServices FROM (tblServices LEFT JOIN tblOrdersProducts ON tblServices.OrderID = tblOrdersProducts.OrderID) LEFT JOIN tblSales ON tblServices.OrderID = tblSales.OrderID Цитата Delirium:
|
|||
Последний раз редактировалось NecroTYN, 16-01-2012 в 17:04. Отправлено: 12:16, 16-01-2012 | #9 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Условие на кол-во процессов | Pavlon | Скриптовые языки администрирования Windows | 10 | 18-01-2011 12:51 | |
Условие на появление окна! | depodimon | AutoIt | 1 | 18-02-2010 15:27 | |
C/C++ - Условие выбора | ShadowMas | Программирование и базы данных | 4 | 22-02-2009 21:42 | |
[решено] IF EXIST <условие> goto | Pozia | AutoIt | 1 | 18-01-2009 19:20 | |
Unable to access the computer. Access is denied | Maf1a | Microsoft Windows NT/2000/2003 | 2 | 13-07-2007 15:42 |
|