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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.06.2014, 22:07   #1
Alex_UA
 
Регистрация: 09.06.2014
Сообщений: 5
По умолчанию БД склад комунального педприятия

Добрый день, уважаемые форумчане.
Возникла проблема написания складской программы для комунального предприятия.
Опишу суть: склад в основном полу-пуст, т.е. материалы закупаются у разных поставщиков, хоть иногда на рынке (приходной документ) и тут же списываются на адрес - улица + дом + место: подъезд, подвал, крыша... (накладная). Закупил завсклад - выдал завсклад. Мне казалось все просто: приход - дата, номер док, id_категория материалов, id_материалы, кол-во, цена,id_поставщик. Расход - дата, номер док, id_материалы, кол-во, id_адрес. Запрос-приход минус расход вот и остатки! Ведомость ведется по месяцу приход-расход, остатки перенес на начало следующего месяца, сдал ведомость в бухгалтерию, забыл о ней пусть бухгалтерия отчеты делает. Но материалы считаются на приходе по средней стоимости, а ГСМ списывются на машину + водитель, малоценка отдельной ведомостью. Это все можно реализовать запросами, но если не правильна суть - фундамент программы, то все насмарку. Начал делать программу, но почитав форумы о бухгалтерии и организации БД склад, понял, что все надо делать заново. Таблицы не те, взгляда в будущее нет, остатки не фиксируются(может это и не надо). Помогите пожалуйста правильно организовать таблицы, не приход и расход, а как-то по другому, (правильно как бы по теории). Если я правильно понял, то приход это и есть склад или материалы это склад, или документы на материалы. А остатки это состояние материала или документов на материал на опр. дату. Совсем запутался с этими мнениями на разных форумах.
Вот начало моей неправильной программы (не судите строго, DELPHI скачал в первых числах мая - почти ничего не знаю), кому не понятна моя бессвязная просьба, там спецы посмотрят должны понять. Спасибо.
Вложения
Тип файла: rar склад кп new.rar (116.6 Кб, 58 просмотров)
Alex_UA вне форума Ответить с цитированием
Старый 01.07.2014, 11:52   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

по теории как раз приход расход и если нужно инвентаризация (остатки).

текущий остаток = остатки на дату(последняя инвентаризация) + приход после даты инвентаризации - расход после даты инвентаризации

сумма любого документа (приход/расход) считается как сумма Всех его составляющих)

информация о документе (номер прихода/расхода) хранится в самом документе , а не в каждой строке материала

группа материала свойство самого материала и хранить ее ссылку надо в материалах а не поставках и расходах.

sklad.rar модернизированная база

Для наглядного представления о структуре данных и о внесенных изменениях рекомендую использовать Access -> Сервис ->Схема данных.

Рекомендую отказаться от ADOTable в пользу TADOCommand (использовать для ввода данных SQL команды Insert |Update |Delete ).
Для показа я понимаю у вас уже использован SQL (TADOquery).
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 01.07.2014 в 12:01.
evg_m вне форума Ответить с цитированием
Старый 01.07.2014, 13:22   #3
Alex_UA
 
Регистрация: 09.06.2014
Сообщений: 5
По умолчанию

evg_m
Огромное спасибо за уделенное мне время и внимание.Так же за исправление и рекомендации к моей БД. Как я понял данная база жизнеспособна, т.е. приход-расход разные таблицы и не надо объединять в одну - оборот. Вы пишете, что надо таблицу остатки. Она заполняется с помощью запроса. Так? Я думал на все приходы и (-)расходы поставить фильтр по дате вот и остатки на дату. А Вы предлагаете таблицу остатки. Это, как я понял, чтобы можно было заархивировать и очистить таблицы приход и расход, а если, что надо, то ивлечь из архива и посмотреть. Правильно?
Категории материалов занес в приход/расход, потому, что мне надо реализовывать ГСМ (категория материалов "водители") отдельной ведомостью, малоценку ("малоценка") отдельной, вот думал запрос+фильтр на категорию. Или сделать отдельный приход/расход на ГСМ и приход/расход на малоценку?
Еще раз спасибо за помощь.
Alex_UA вне форума Ответить с цитированием
Старый 01.07.2014, 13:26   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
т.е. приход-расход разные таблицы и не надо объединять в одну
Я бы объединил и видом определил направление движения. Так проще потом будет с запросами. Там в движении впоследствии может появиться списание, переоценка и прочее. Для каждого свою таблицу?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 01.07.2014 в 13:28.
Аватар вне форума Ответить с цитированием
Старый 01.07.2014, 15:47   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Категории материалов занес в приход/расход, потому, что мне надо реализовывать ГСМ (категория материалов "водители") отдельной ведомостью,
Цитата:
вот думал запрос+фильтр на категорию.
В таком разе вводится тип документа (в данном случае расходного) ГСМ (но делается это не новой таблицей, а полем в таблице расходных документов).
можно поле-флаг (=0|1) на каждый тип (при добавлении типа надо проводить "реорганизацию" БД)
можно одно поле на все типы и задавать значение ={ГСМ/МАЛОЦЕНКА/...} (при добавлении проблем нет, но не совсем оптимальна работа фильтров)
можно поле-ссылку + справочник типов (надо следить за справочником)

Это не категория материала, это тип документа названный также как категория (два разных понятия с одинаковым названием).

Чтобы понимать где надо(можно) объединить/разделить таблицы почитайте про нормальные формы (1,2,3).

возможно все ваши категории на самом деле и есть эти типы документов(т.е. типы документов в которые может быть включен данный материал), тогда это просто недопонимание из-за
1.незнания предметной области с моей стороны
2.неудачного названия.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 01.07.2014 в 15:59.
evg_m вне форума Ответить с цитированием
Старый 01.07.2014, 19:26   #6
Alex_UA
 
Регистрация: 09.06.2014
Сообщений: 5
По умолчанию

evg_m
Вот спасибо, вот оно! . Конечно! Не категория материалов, а поле в таблице документов на ГСМ, малоценку, и материалы на адреса. А категории нужны мне для того, чтобы не было длинных списков на материалы в справочниках, вот и разбил их на группы - категории.
А что касательно предложения уважаемого Аватар, то в случае создания общей таблицы, как-то, видимо, надо объединить всех поставщиков и потребителей в одну таблицу "контрагенты" и я затрудняюсь объединить (магазин - приход) с (адресом:ул., дом, кв. и лицом выполнившим работы - расход).
Alex_UA вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
БД склад ZveR999 Microsoft Office Access 0 30.05.2012 15:40
БД Склад ара Microsoft Office Access 1 09.04.2011 00:00
БД склад kent4 Microsoft Office Access 0 15.02.2011 16:39
Склад Ribun Microsoft Office Access 10 16.12.2010 00:14
Склад Dgon777 Microsoft Office Access 0 06.11.2010 14:16