
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.05.2007, 17:34
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
имеется 2 таблицы. в одной из них информация по зарплате. содержит поля: nomer - integer autoinc fio - char chislo - date nachisleno - float nalog - float k_vidache - float вторая таблица - вычеты nomer - integer autoinc fio - char chislo - date собственно вот что нужно: в отчете показать зарплату определенного работника с учетом вычетов (если они были) за определенный период просто отчет по зарплате за нужный период я сделал. а тут - проблема. сильно не пинайте - я понимаю что книга мне в руки, но тут дело горит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 17:51
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
даже вот как... надо, чтобы при добавлении записи в таблицу зарплаты через форму смотрелась дата и в таблице с вычетами искалось были ли для данного рабочего в этом месяце вычеты. если были, то нужно в поле k_vidache еще вычесть сумму взыскания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 18:41
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
Ну и откуда нам известно что у вас за данные в этих замечательных таблицах и не менее замечательных полях ? 1. По какому полю или полям связаны таблицы . Подозреваю, что это fio или fio и chislo. Если это так- то связь по ФИО - ужас А как-же однофамильцы ? Про табельный номер или ИНН слышали ? 2. Что у вас в chislo - в обеих таблицах ? В зарплате - дата расчета / отчетный месяц (его первое или последнее число) ... ? В вычетах - то что в зарплате или дата начала или окончания действия этих вычетов ? PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец. Кстати если это зарплата - почему такая структура ? Что-то тут не то в консерватории - опишите что вы собственно делаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 18:48
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
-=AlexiS=-Ну и откуда нам известно что у вас за данные в этих замечательных таблицах и не менее замечательных полях ? 1. По какому полю или полям связаны таблицы . Подозреваю, что это fio или fio и chislo. Если это так- то связь по ФИО - ужас А как-же однофамильцы ? Про табельный номер или ИНН слышали ? конечно слышали. я написал, что как лучше сделать, вот чего =) именно по табельному номеру и сделаем... по фио конечно глупо, но вариант совпадения именно полностью ФИО минимален. но возможен. -=AlexiS=- 2. Что у вас в chislo - в обеих таблицах ? В зарплате - дата расчета / отчетный месяц (его первое или последнее число) ... ? В вычетах - то что в зарплате или дата начала или окончания действия этих вычетов ? chislo - дата выдачи зарплаты или дата совершения вычета за нарушение -=AlexiS=- PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец. Кстати если это зарплата - почему такая структура ? Что-то тут не то в консерватории - опишите что вы собственно делаете. ну, по-моему не совсем принципиально в чем хранить деньги, ну да ладно, сделаем money :) почему такая структура - потому что именно так мне ее описали. я просто практику прохожу... фокспро немного проходили, а тут столкнулся с реальной задачей и куча вопросов возникла... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 18:51
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
-=AlexiS=- PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец. еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 19:00
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp Это я извиняюсь - в фоксе Currency . Просто работаю с MS SQL - а там это money. Опять-же насчет того что не важно в чем хранить данные - очень важно !!! В фоксе еще "более- менее" там достаточно просто изменить размерность или тип. А поработайте с любым SQL сервером и поймете . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 19:07
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
-=AlexiS=- еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp Это я извиняюсь - в фоксе Currency . Просто работаю с MS SQL - а там это money. Опять-же насчет того что не важно в чем хранить данные - очень важно !!! В фоксе еще "более- менее" там достаточно просто изменить размерность или тип. А поработайте с любым SQL сервером и поймете . это все замечательн... спасибо что подсказали... но вот вопрос мой до сих пор актуален... может я что-то криво описал? как-нибудь более доступно объяснить что нужно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 19:42
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
по-поводу связывания таблиц по полю табельный номер или ИНН. тут дело в том, что в таблице с зарплатами ведь будут дублирующиеся записи, т.к. человек каждый месяц получает зарплату... первичным ключиком быть не может. или сделать составной ключ? табельный номер+дата? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2007, 20:52
|
|||
|---|---|---|---|
|
|||
2 таблицы - как лучше сделать? |
|||
|
#18+
вот такой вариант... таблица fiotab - в ней содержится только соответствие фамилии с табельным номером. tabnomer - integer autoinc PRIMARY key fio таблица zarplata - в ней содержится инфа по тому когда, сколько начислено зарплаты без учета вычетов tabnomer - integer. regular chislo - дата выдачи зарплаты nachisleno - сколько денег начислено всего (не включая вычеты за нарушения) nalog - налог на прибыль k_vidache - сколько выдать денег (без учета нарушений) таблица vicheti tabnomer - integer. regular chislo - дата совершения нарушения zachto - за что вычитаем sumdeneg - вычитаемая сумма связал таблицы один ко многим. т.е. fiotab+zarplata, fiotab+vicheti поставил целостность данных на оба отношения update: cascade, delete: cascade, unsert: ignore собственно говоря. мне нужно где-то каким-то образом получить ИТОГОВУЮ зарплату. т.е. к примеру зарплату выдаем 25 мая. смотрим в таблице нарушений есть ли какие либо вычеты из зарплаты с 1 по 25 мая. если нету, то ИТОГОВАЯ зарплата равна зарплате по полю zarplata.k_vidache если же обнаруживаем какие-либо нарушения (их может быть несколько), то ИТОГОВАЯ зарплата=zarplata.k_vidache-каждое нарушение с 1 по 25 мая. в итоге можно создать результирующую таблицу. проблема в том, что это как-то надо реализовать... какие будут мысли? может быть я в корне вообще все неправильно делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=41&mobile=1&tid=1589400]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
143ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 476ms |

| 0 / 0 |
