Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / 2 таблицы - как лучше сделать? / 9 сообщений из 9, страница 1 из 1
04.05.2007, 17:34
    #34505909
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
имеется 2 таблицы. в одной из них информация по зарплате. содержит поля:
nomer - integer autoinc
fio - char
chislo - date
nachisleno - float
nalog - float
k_vidache - float


вторая таблица - вычеты

nomer - integer autoinc
fio - char
chislo - date

собственно вот что нужно:
в отчете показать зарплату определенного работника с учетом вычетов (если они были) за определенный период
просто отчет по зарплате за нужный период я сделал. а тут - проблема. сильно не пинайте - я понимаю что книга мне в руки, но тут дело горит...
...
Рейтинг: 0 / 0
04.05.2007, 17:51
    #34505954
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
даже вот как... надо, чтобы при добавлении записи в таблицу зарплаты через форму смотрелась дата и в таблице с вычетами искалось были ли для данного рабочего в этом месяце вычеты. если были, то нужно в поле k_vidache еще вычесть сумму взыскания
...
Рейтинг: 0 / 0
04.05.2007, 18:41
    #34506079
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
Ну и откуда нам известно что у вас за данные в этих замечательных таблицах и не менее замечательных полях ?
1. По какому полю или полям связаны таблицы . Подозреваю, что это fio или fio и chislo.
Если это так- то связь по ФИО - ужас
А как-же однофамильцы ? Про табельный номер или ИНН слышали ?
2. Что у вас в chislo - в обеих таблицах ?
В зарплате - дата расчета / отчетный месяц (его первое или последнее число) ... ?
В вычетах - то что в зарплате или дата начала или окончания действия этих вычетов ?

PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец.
Кстати если это зарплата - почему такая структура ?
Что-то тут не то в консерватории - опишите что вы собственно делаете.
...
Рейтинг: 0 / 0
04.05.2007, 18:48
    #34506095
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
-=AlexiS=-Ну и откуда нам известно что у вас за данные в этих замечательных таблицах и не менее замечательных полях ?
1. По какому полю или полям связаны таблицы . Подозреваю, что это fio или fio и chislo.
Если это так- то связь по ФИО - ужас
А как-же однофамильцы ? Про табельный номер или ИНН слышали ?


конечно слышали. я написал, что как лучше сделать, вот чего =) именно по табельному номеру и сделаем... по фио конечно глупо, но вариант совпадения именно полностью ФИО минимален. но возможен.

-=AlexiS=-
2. Что у вас в chislo - в обеих таблицах ?
В зарплате - дата расчета / отчетный месяц (его первое или последнее число) ... ?
В вычетах - то что в зарплате или дата начала или окончания действия этих вычетов ?


chislo - дата выдачи зарплаты или дата совершения вычета за нарушение

-=AlexiS=-
PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец.
Кстати если это зарплата - почему такая структура ?
Что-то тут не то в консерватории - опишите что вы собственно делаете.

ну, по-моему не совсем принципиально в чем хранить деньги, ну да ладно, сделаем money :) почему такая структура - потому что именно так мне ее описали. я просто практику прохожу... фокспро немного проходили, а тут столкнулся с реальной задачей и куча вопросов возникла...
...
Рейтинг: 0 / 0
04.05.2007, 18:51
    #34506111
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
-=AlexiS=-
PS и зачем вам деньги хранить в Float ? Для этого есть Money ну или Numeric на худой конец.

еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp
...
Рейтинг: 0 / 0
04.05.2007, 19:00
    #34506130
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp

Это я извиняюсь - в фоксе Currency .
Просто работаю с MS SQL - а там это money.

Опять-же насчет того что не важно в чем хранить данные - очень важно !!!
В фоксе еще "более- менее" там достаточно просто изменить размерность или тип.
А поработайте с любым SQL сервером и поймете .
...
Рейтинг: 0 / 0
04.05.2007, 19:07
    #34506142
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
-=AlexiS=- еще раз извиняюсь заранее, но почему-то я не нашел типа поля money... или совсем дурак? numeric вижу, а вот money - хоть убей нет. юзаю vfp

Это я извиняюсь - в фоксе Currency .
Просто работаю с MS SQL - а там это money.

Опять-же насчет того что не важно в чем хранить данные - очень важно !!!
В фоксе еще "более- менее" там достаточно просто изменить размерность или тип.
А поработайте с любым SQL сервером и поймете .

это все замечательн... спасибо что подсказали... но вот вопрос мой до сих пор актуален... может я что-то криво описал? как-нибудь более доступно объяснить что нужно?
...
Рейтинг: 0 / 0
04.05.2007, 19:42
    #34506182
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
по-поводу связывания таблиц по полю табельный номер или ИНН. тут дело в том, что в таблице с зарплатами ведь будут дублирующиеся записи, т.к. человек каждый месяц получает зарплату... первичным ключиком быть не может. или сделать составной ключ? табельный номер+дата?
...
Рейтинг: 0 / 0
04.05.2007, 20:52
    #34506269
snowdeath
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 таблицы - как лучше сделать?
вот такой вариант...
таблица 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 мая. в итоге можно создать результирующую таблицу. проблема в том, что это как-то надо реализовать... какие будут мысли? может быть я в корне вообще все неправильно делаю?
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / 2 таблицы - как лучше сделать? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]