|
|
|
| Добрый день. Есть такая задача: есть 2 таблицы, в них содержаться некие целочисленные данные. Нужно их перемножить и вписать в третью таблицу, Но нужно чтобы это делалось автоматически, тоесть при вводе данных в таблицы. Буду очень рад советам. Заранее благодарен. Access 2003. | |
|
| |
|
|
|
| глупостями занимаетесь - калькулируемые поля не следует хранить (есть исключения) | |
|
| |
|
|
|
| а что вы тогда посоветуете? Как мне тогда это реализовать? | |
|
| |
|
|
|
| как известно, понять задачу - решить ее на 50%.
изложите суть задачи, а не свое решение | |
|
| |
|
|
|
| нужно посчитать некую зарплату нпример. В одной таблице ставка, в другой кол-во рабочих дней. В третьей таблице должна храниться сумма ЗП. Как то так. | |
|
| |
|
|
|
| И еще должна быть как минимум табличка "Работник", связанная с таблицами "Ставки", "РабочиеДни" и "Зарплаты". | |
|
| |
|
|
|
| именно, но вопрос то не в этом)
Ну так что ребят? Поможете? | |
|
| |
|
|
|
| Если всё-таки Access, то для расчёта зарплаты надо написать запрос, вида:
SELECT Salary.Amount * Work.Hours AS MonthSalary, Workers.LastName
FROM Workers INNER JOIN ... etc.
|
И распечатать его в виде ведомости на выплату зарплаты. А если надо перемножить один массив данных на другой, тогда Excel.
Так что пробуйте, с запросом поможем.
И вопрос, как раз и получается в том, что у Вас за таблицы? Другими словами, какова структура данных? | |
|
| |
|
|
|
| хм. Как раз таки нужно расчитать массив. Примерно два десятка записей. А можна как нибудь после запроса записать значения в таблицу а не только сделать запрос, с запросом то всё в порядке. Или можно расчёт произвести в Excel, но результаты записать в таблицу?
ЗЫ: советуют не хранить расчётные данные. Ну чтож, придётся хранить в виде отчёта. Больше спасибо всем за помощь
Последний вопрос. Советуют не хранить высчиляемые значения но результат то можно как нибудь выдернуть?? | |
|
| |
|
|
|
| На самом деле не советуют хранить результаты вычислений, ведь их можно получить в любой момент запросом. Потом, если придётся что-то исправить в данных, то надо и снова пересчитывать, обновляя результаты.
Хотя, на форумах поднимают время от времени тему о хранении результатов вычислений (например, остатки на складе) за определённый период времени, с целью уменьшения времени вычисления. Так называемые "срезы", или "закрытые периоды". Скорее всего, пока сам лично не столкнёшься с проблемой чрезмерного увеличения времени вычислений...
Но в Вашем случае всё просто, так что лучше не хранить - излишне, эти данные Вы не будете использовать в дальнейших расчётах, т.е. зарплата в марте не зависит от зарплаты в феврале, январе, декабре прошлого года и т.п. ;-) | |
|
| |
|
|
|
|
...т.е. зарплата в марте не зависит от зарплаты в феврале, январе, декабре прошлого года...
|
А сумма подоходного налога зависит.
Вот зарплату я бы все-таки хранил. (Сугубо личное мнение, возможно не совпадающее с мнением редакции) | |
|
| |
|
|
|
| А можно поинтересоваться структурой таблиц и формулой расчета зарплаты.......(или по какому принципу перемножать таблицы)
а зарплата в октябре может зависеть от зарплаты в декабре прошлого года если это отпускные, больничные и тд | |
|
| |
|
|
|
| Вообще ето комерческая тайна) Но скажу что там ещё как минимум 2 множетеля и условие. (Это в зарплате)
Ксли отбросить остальные не имеющие к зарплате таблицы то получается: Таблица "Работники", "Зарплата", "График". В работниках хранится там самая ставка, в графике кол-во дней. | |
|
| |
|
28 Кб. |
|
| Обо всем и не о чем. Можно кусочек базы с таблицами? Ведь надо знать структуру базы. Может простыми запросами можно. Даю простой пример, далекий от совершенства. Там запросы на добавление, вычисление. Может что подойдет. Оформление на уровне детсада, но запросов достаточно.
При небольшом усложнении можно контролировать записи после добавления, что бы нельзя было добавить более 1 раза, завязки лучше делать на код сотрудника, но это детали.
PS Попутный вопрос: нет ли примера выбора данных в одной таблице по 2 или 3 полям? (Отобрали записи в одном поле, затем из тех что отобрали отсеиваем по второму, наконец по третьему). В ходе отбора в полях отображается инфа типа как у sample. (отбор данных по полю со списком) Только по 3 полям. У него если поставить отбор на второе поле, сбивается отобранное по первому. | |
|
| |