![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 06.05.2013
Сообщений: 6
|
![]()
Здравствуйте. Работаю на Delphi XE и FierBrid 2.5.
Мне нужно сделать программу (точнее несколько) для сети аптек. Интересует оптимизация работа с конкретными данными: -Работа с остатком товаров; -Работа с ценами продажи. Я сделал предварительную БД, но мне кажется что она не достаточна быстра. Может кто сталкивался - прошу ответить |
![]() |
![]() |
![]() |
#2 |
Подтвердите свой е-майл
Регистрация: 29.08.2012
Сообщений: 4,011
|
![]()
с вашей базой вряд ли кто сталкивался
|
![]() |
![]() |
![]() |
#3 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Я сталкивался с товарооборотом. Что тебя интересует?
I'm learning to live...
|
![]() |
![]() |
![]() |
#4 |
Регистрация: 06.05.2013
Сообщений: 6
|
![]()
Про кол-во(остаток) товаров:
Я собираюсь сделать следующее: В спр.тов. добавит поле "Остаток по коду товара", а после сохранения нового прихода прибавлять пришедшее кол-во к нужным товарам. Если по одному коду товара (в одном приходе) будет несколько карточек(напр. - с разными ценами), то суммировать по коду товара и прибавлять к текущим остаткам в спр. товаров. - Так будет правильно по кол-ву? Про цену продажи: По одному коду товара может быть несколько карточек(несколько приходов), все они хранятся в табл.Приходов, а в окне продажи должны выводится все товары(где имеется остаток), цены продажи, остаток(это основное), а цена должна выбираться из самой старой карточки, где есть остаток. Т.е. для 5000 товаров при каждом обновлении запроса - будет выводиться цена из мин. карточки по коду. Я сделал это с помощью Grou by, но всё равно не достаточно быстро. Может хранить цену вместе с тек. остатком в спр. товаров? и каждый раз пересчитывать - так вроде не правильно.. Как мне с тек. ценой продажи работать? |
![]() |
![]() |
![]() |
#5 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Однако законом тебе обязательно нужно от этого товара избавится. Вопрос: Что ты будешь делать? Аннулировать товар убрав его из ассортимента? Балланс периода не сойдется. Сальдо нулевое не получишь, потому что половину уже продал. Причем накладные выписанные на этот товар, если ты его уберешь из базы, окажутся фиктивными, ибо они больше никуда указывать не будут (это от налоговой привет). Ни в коем разе нельзя смешивать остатки прихода и расхода со справочником ассортимента!!! Ни в коем! Делай как полагается - приход\расход отдельными документами, которые потом аналитическими моделями (функциями, методами) консолидируются в сальдовую ведомость. Т.е. у тебя будет куча записей с полем-флагом приход или расход, а далее запрос типа Код:
Цитата:
Ты продаешь чупачупс по 5 баксов, вдруг цены на бензу повышают его до 6 баксов. Ты уже проданный товар тоже будешь в итоговом отчете по новой цене считать? Цитата:
Так что тебе нужно будет оперировать в накладных и старым чупачупсом (что на складе мыши доедают) и новым, по другой ценовой характеристике. Вообще не рекомендуется что-то так просто из справочников товара удалять. Лучше ввести новый товар (пусть и тот же самый) с новым номенклатурным и договором.
I'm learning to live...
Последний раз редактировалось Stilet; 06.05.2013 в 19:19. |
|||
![]() |
![]() |
![]() |
#6 |
Регистрация: 06.05.2013
Сообщений: 6
|
![]()
У меня заказчик сам так пожелал сделать. В окне продажи, для одного товара будет:
-Одна строчка с общими данными - общий остаток и цена из мин. карточки, но цену продажи можно изменить; -А в доп. окне можно будет просмотреть все карточки по товару(где есть остаток) и выбрать нужную карточку(по серии, цене...) и продать. Тогда мне надо сделать отдельную табл. для остатков, прибавлять после прихода, отнимать после продажи. так? Для цены может сделать в т.Приходов доп. поле, в котором будет отмечаться что цена из данной карточки является - текущей ценой продажи(для первой строчки)? Главное чтобы быстродействие не пострадало от этого. |
![]() |
![]() |
![]() |
#7 | |||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Ну как быть в случае смены цены до закрытия периода, особенно если не весь товар распродан без ввода нового товара, без приема его на приход по другим накладным? Не понимаю... Цитата:
Но в принципе да - можно две разных таблицы. Цитата:
I'm learning to live...
|
|||
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
![]()
rusl_92, я бы Вам вообще посоветовал взять за шкирку бухгалтера этих самых аптек и потребовать от него полного расклада: как и что должно считаться. Потому что ни один программист не знает всей этой каши досконально. Вам тут просто повезло, что Виталий довольно прилично в этом разбирается. А так - подобные системы пишутся в тесном взаимодействии с теми, кто в них работать должен. Вот когда ясно себе уясните, как это работает, сразу сможете без всяких вопросов решить, как это делать.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
![]() |
![]() |
![]() |
#9 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Цитата:
Вот же камень преткновения. rusl_92 может быть в чем то и прав, ТЗ то четкого нет. Но если это так то это просто глупость какая-то.
I'm learning to live...
|
||
![]() |
![]() |
![]() |
#10 |
Регистрация: 06.05.2013
Сообщений: 6
|
![]()
Я с ними советуюсь, у меня только вопросы по тому как мне правильно сконструировать БД, чтобы быстро инфо. выводилась. Для аптекарей нет разницы как программа работает-лишь бы работала, а для меня головная боль при проектировании БД.)
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа для контролирования сети | bookkc | Помощь студентам | 3 | 02.11.2010 21:41 |
Чат для локальной сети | KORN | Софт | 6 | 23.09.2010 20:57 |
Чат для локальной сети | MeTeOpA | Общие вопросы .NET | 11 | 16.03.2010 07:48 |
Чат для локальной сети | Vladya | Компоненты Delphi | 4 | 18.05.2009 20:47 |
Программирование для сети - Сокеты | Frozen inside | Помощь студентам | 1 | 17.04.2009 01:13 |