Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2009, 13:41   #11
kazhan
 
Регистрация: 26.12.2008
Сообщений: 8
По умолчанию

фёдор спасибо за помощ! Общую сумму я понимаю как вывести а как это дело сделать чтоб по отделам? нужны дополнительные таблици в базе или нет? Ведь когда документ переходит в следующий отдел то должен происходить перерасчет сум по отделам.
я только учусь!!!
kazhan вне форума Ответить с цитированием
Старый 13.01.2009, 13:53   #12
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

нет, создавать дополнительные таблицы я пока не вижу смысла, иначе получется избыточность данных. просто надо построить правильно структуру данных и написать запросы к таблице. в общем, что б не мучить вас сделайте, что-ти выподающего списка с наименованием отдела и в дбгриде выведите документы которые относились к этим отделам, а потом просто посчитайте сумму. в принципе и все.
фЁдОр вне форума Ответить с цитированием
Старый 13.01.2009, 14:03   #13
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Структура:
1. Таблица work:
- уникальный идентификатор заказа
- наименование заказа
- стоимость заказа
2. Таблица otdel (справочник):
- уникальный идентификатор отдела
- наименование отдела
3. Таблица Provodki:
- уникальный идентификатор записи
- идентификатор заказа
- идентификатор отдела
- дата поступления
- дата передачи

Всякие суммы и прочее - запросами. Связи - очевидны.
mihali4 вне форума Ответить с цитированием
Старый 13.01.2009, 17:58   #14
kazhan
 
Регистрация: 26.12.2008
Сообщений: 8
По умолчанию

mihali4 спасибо за помощ! Мой теперешний вариант структуры БД практически такой как и Ваш. Сегодня пробую писать саму прогу завтра думаю будет первоначальный результат. Я выложу исходники если Вам не трудно посмотрите и дайте свои рекомендации.
я только учусь!!!
kazhan вне форума Ответить с цитированием
Старый 14.01.2009, 12:23   #15
kazhan
 
Регистрация: 26.12.2008
Сообщений: 8
Вопрос

Ребята как сделать проверку на ввод номера? если такой номер есть то выводится сообщение об этом и предлагается изменить номер и только после этого сохранить в базе
я только учусь!!!
kazhan вне форума Ответить с цитированием
Старый 14.01.2009, 12:47   #16
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Сделайте поле номер в базе уникальным и при попытки создать запись с таким же номером выдастся Exception который можно обработать.
Или написать триггер на проверку.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 16.01.2009, 19:31   #17
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

Цитата:
Сообщение от kazhan Посмотреть сообщение
Ребята как сделать проверку на ввод номера? если такой номер есть то выводится сообщение об этом и предлагается изменить номер и только после этого сохранить в базе
а если просто поставить автоинкрементный тип у этого поля... значение само будет генерироваться и все... или я что то не так понял
maLoy*508 вне форума Ответить с цитированием
Старый 19.01.2009, 15:58   #18
kazhan
 
Регистрация: 26.12.2008
Сообщений: 8
Вопрос Как правельно сделать запрос?

Помогите сделать запрос. Мне нужно в одной таблице отсортировав по значению поля1 получить сумму зачений по полю2 которое вошло в выборку
Пробовал написать так:
Selekt SUM (Sum)
From allr
Where Otdel

Но результат это сумма всей колонки в таблице. Помогите!!!
я только учусь!!!
kazhan вне форума Ответить с цитированием
Старый 19.01.2009, 16:14   #19
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Цитата:
Сообщение от kazhan Посмотреть сообщение
Помогите сделать запрос. Мне нужно в одной таблице отсортировав по значению поля1 получить сумму зачений по полю2 которое вошло в выборку
Пробовал написать так:
Selekt SUM (Sum)
From allr
Where Otdel

Но результат это сумма всей колонки в таблице. Помогите!!!
Selekt SUM (Sum)
From allr
Where Otdel = ????
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 19.01.2009, 16:19   #20
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

добавить в запрос GROUP BY КодОтдела
(ну или по чём у Вас там отделы разделяются):
Код:
SELECT КодОтдела, Sum(Sum) From allr group by KodOtdel
p.s. уж сколько раз твердили - НЕ НАЗЫВАЙТЕ ВЫ ИМЕНА ПОЛЕЙ КЛЮЧЕВЫМИ СЛОВАМИ!!! Косяки и проблемы могут вылезти в любой момент!!!
зачем ВАм поле с наименованием SUM??!??! нужели нельзя назвать его SumDoc или SumAct или, хотя бы, Sum001 ??!
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать базу данных Master of Puppets Microsoft Office Excel 5 10.06.2008 13:34
Как создать базу данных? LeonKing Помощь студентам 4 07.05.2008 14:11
Как правельно составить запрос!! Areostar SQL, базы данных 3 16.02.2008 19:49
Как создать базу данных knazty Помощь студентам 15 18.11.2007 19:49
Надо разработать базу данных. Для учета карт-экспресс оплаты, платежей и т.д. Coolern Помощь студентам 1 12.06.2007 23:56