Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Горизонтальное вычитание множества полей!!!  [new]
IgorGer
Member

Откуда:
Сообщений: 47
Здравствуйте!!!

Постановка задачи следующая. Есть таблица "rezult", где есть следующие поля:

id - лицевой счет
dolg - сумма долга
nac50 - начисление за 50-й период (например за декабрь 2004 г.)
nac49 - начисление за 49-й период
.... и т. д.
nac1 - начисление за 1-й период.

Соответственно по истечению января 2005 г. появится поле nac51.

Надо из долга вычитать начисления из каждого поля до тех пор пока долг не станет отрицательным числом по каждому лицевому счету, т.е.:

itogo=dolg-nac50-nac49-...>0,
например: dolg=500; nac50=300; nac49=100; nac48=150 и т.д., тогда 500-300-100=100, а если вычитать nac48, то уже будет отрицательное число и перебор полей по этой строке надо прекратить и в результате вывести число 100.

В итоге надо вывести поля (id, itogo, kolvo)
kolvo - это поле, где выводится количество полей nacXXX, которое участвовало в вычитании для получения результата.

Как это сделать? Очень нужно?

С уважением, Игорь!!!
26 янв 05, 09:06    [1273577]     Ответить | Цитировать Сообщить модератору
 Re: Горизонтальное вычитание множества полей!!!  [new]
paparome
Member

Откуда: Москва
Сообщений: 4312
ИМХО:
Что-то у вас со структурой базы не то.
Обычно - динамически изменямое число перменный (да еще и однотипных) располагают в базе не в ширину, а в высоту (в "подчиненной" табле)

По теме вопроса:
Написать функцию, которой будет передаваться значение первичного ключа, а она уже в цикле while будет считать (и возвращать) результат.
ИМХО: будет просто и наглядно, намного нагляднее нежели мы сейчас тут будем замудреный запрос писать
26 янв 05, 09:14    [1273595]     Ответить | Цитировать Сообщить модератору
 Re: Горизонтальное вычитание множества полей!!!  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Нормализовать данные и использользовать перекретные запросы/формы.
26 янв 05, 09:20    [1273606]     Ответить | Цитировать Сообщить модератору
 Re: Горизонтальное вычитание множества полей!!!  [new]
paparome
Member

Откуда: Москва
Сообщений: 4312
Программист-Любитель
Нормализовать данные и использользовать перекретные запросы/формы.

???
И как тут перекрестие поможет???

PS: Чисто для самообразования спросил.
26 янв 05, 09:22    [1273611]     Ответить | Цитировать Сообщить модератору
 Re: Горизонтальное вычитание множества полей!!!  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Однородные поля (временные интервалы, например) чудно вытягиваются в столбики перекрестными запросами.
26 янв 05, 09:38    [1273641]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить