![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
подсчёт кол-во в складской программе [D7, Paradox]
@k@DElpher © (2005-04-22 20:00:00)Здравствуйте,
пишу программу по учёту склада(ну и остального:))
есть две таблицы Парадокса:
покупки, продажи
структуры почти одинаковые:
ID(ключ),IDDoc-номер,как документа, имя документа(накладная №3),
GOODID- номер товара из таблицы товаров,Amount -Кол-во и так далее...
Как вы заметили здесь даны не документы, а товары со свойствами на принадлежность к одному документу(IDDoc).
Так вот мне надо так подсчитывать суммы, чтоб оно относилось к одному документу, и выводить это юзеру, как таблицу накладных с суммами, и например остатки по этим таблицам...
в общем там разберусь- главное, что использовать? Куда думать:)? У кого подглядеть?
или, если, кто знает - где взять примеры, и где почитать касательно именно этой темы(разработки бухгалтерских и складских программ на Delphi...
( писать буду на Delphi 2005:) )
Заранее благодарен:)...
@k@DElpher (2005-05-08 14:02:00) [1]
> Ну, примерно, не претендуя на крутость :
> - Список клиентов (отправителей, получателей), включая сам
> склад и частных лиц
> - Список документов (обязательно включить отправителя и
> получателя)
> - Справочник товаров
> - Проводки, привязанные к документу (как строки документа).
> Я бы включил дублем тоже отправителя и получателя, потом
> легче отчеты делать, но можно и оставить нормализованным,
> то есть доставать их потом из документа.
> - Остатки по каждому клиенту и товару
Ну в общем я сам придумал ТОЧНО такую же схему:)...+ цены, ед.Изм...
Разве что, я не делал ОСТАТКИ... Потому что в этом можо смотреть только общие... А одна из самых главных фишек это остатки з периоды:)! о всё же сделаю... может быть... Чтоб всегда оперативно посмотреть можно было:)
А такие проводки вроде бы называются ДВИЖЕНИЕМ(товара)
ANB (2005-05-06 16:33:00) [2]
> А если не только их, но все "соответствующие физические
> файлы"?
- даже если я тебе всю папку скопирую, не факт, что ты быстро разберешся, как это все поднять. Oracle хитрая штука. Я, например, не знаю как это сделать. Мне проще дамп снять. Хотя наши админы грят, что умеют, но это геморрно.
В принципе, можно и локальные файлы так закрыть, что даже если вынесешь - не скоро в них разберешся.
Fay (2005-05-06 16:25:00) [3]Sergey13 © (06.05.05 15:02) [122]
физические
ANB © (06.05.05 14:48) [121]
физические
Не стоит спорить. Такие героические люди (wHammer и др.) работая сами, создают рабочие места и для других программистов. Надо ценить это 8)
Sergey13 (2005-05-06 15:02:00) [4][112] wHammer © (06.05.05 13:36)
>За исключением "продвинутых" транзакций никаких важных приемуществ у клиент-сервера за все время не нашел.
Ну хоть что-то хорошее. 8-)
2[114] wHammer © (06.05.05 14:18)
>т.к. например документ, хранит информацию, например сумму накладной, не только в таблице документа, но и во всех связанных с этим документам таблицам по которым он делает "проводки", поэтому разобраться во всем и изменить сумму везде будет довольно сложно.
Всем. Включая автора проги. А уж найти причину расхождений (а они я уверен бывают, и не редко) вообще невозможно. 8-)
2[117] ANB © (06.05.05 14:38)
> - хе, ну дам я тебе dbf от таблспейсов ораклы, чего ты с ними делать то будешь ?
А если не только их, но все "соответствующие физические файлы"?
ANB (2005-05-06 14:48:00) [5]
> расчет зарплаты/налогов, а кому такие данные красть понадобиться
- помнится слушок ходил на моей старой работе, что одному прогу кое что открутили напрочь, за то, что вынес с работы всего одну таличку - список клиентов. И продать, кажись, успел.
Зарплата в Москве - вообще вещь секретная.
Я тоже много писал для локалок и сейчас забыл это все как страшный сон.
Danilka (2005-05-06 14:46:00) [6][118] wHammer © (06.05.05 14:44)
Ну, вот есть у меня, например, знакомые, которые как-раз очень пекутся, чтобы база поставшиков никуда не ушла.
Danilka (2005-05-06 14:45:00) [7][117] ANB © (06.05.05 14:38)
Клиент-сервер. Это я написал к тому - что имея доступ к файлам БД, можно ее вскрыть всегда. Про Орокол были обсуждения и методики на sql.ru года полтора назад, когда я туда часто заглядывал.
Не хекс-редактором, конечно-же, приносишь на другой сервер и там шаманишь, как именно - не интересовался, просто отметил, что можно. Если тебе надо - ищи.
wHammer (2005-05-06 14:44:00) [8]ANB © (06.05.05 14:24) [115]
Danilka © (06.05.05 14:30) [116]
Да я ведь не оспариваю, я ведь специально подчеркнул в [112] слово "важных". Извените, но настолько важных проектов как например "база стратегических запасов природных ресурсов России" я конечно не делал. Делал учетные задачи, склады, планирование и расчет зарплаты/налогов, а кому такие данные красть понадобиться? Кто и кому их сможет продать?
ANB (2005-05-06 14:38:00) [9]
> с любой базой, хоть Орокловой
- хе, ну дам я тебе dbf от таблспейсов ораклы, чего ты с ними делать то будешь ?
И что, Oracle - не клиент/сервер ?
Danilka (2005-05-06 14:30:00) [10][114] wHammer © (06.05.05 14:18)
Крадут не для того, чтобы в суде что-то доказывать, а, например, для того, чтобы продавать компашки: "паспортные данные всех россиян, свежайшая база 2005 года", да и еще причин дофига, тот-же список поставщиков наработаный годами.
И украсть сервер намного сложнее и заметнее, чем уговорить знакомую тетку операционистку вставить флешку и все скачать. И разобраться потом с любой базой, хоть Орокловой, имея соответствующие физические файлы - это лишь вопрос времени.
А в клиент-сервере можно, например, все сделать через вьюхи, которые фильтруют по юзеру таблицы и дают ему доступ только к тем записям таблиц, куда ему можно. А на сами таблицы вообще ни у кого доступа нет. Тригера, логи, при правильной организации можно очень сильно сузить круг подозреваемых в утечке информации.
Это я еще не касался организации бизнесс-процессов на сервере, когда для исправления ошибок или каких-либо изменений, нет нужды перекомпилять программу и переустанавливать ее на десятках рабочих мест.
ANB (2005-05-06 14:24:00) [11]
> Большого смысла ее красть я не вижу
- ну во первых воруют базы для использования информации в ней. Хотя ты прав. Локальную базу при желании можно защитить, а унести базу можно и с сервера. Просто многие вещи на SQL + хранимки и триггера делаются намного легче, чем при локальных таблицах. Кстати, я видел и смешанные подходы.
wHammer (2005-05-06 14:18:00) [12]
> Danilka © (06.05.05 13:59) [113]
Если человек имееет базу но не имеет прав доступа к информации в базе через приложения клиента то поправить что-либо в ней физически будет довольно сложно, т.к. например документ, хранит информацию, например сумму накладной, не только в таблице документа, но и во всех связанных с этим документам таблицам по которым он делает "проводки", поэтому разобраться во всем и изменить сумму везде будет довольно сложно.
А что касается краж, то это отдельная тема, украсть, при желании можно все, например сам сервер. Однако, насколько я знаю, никая БД не может обладать юридической силой. Т.е. она не может быть доказательством в суде, например при нарушениях в уплате налогов. Большого смысла ее красть я не вижу. Хотя возможно я и ошибаюсь.
Danilka (2005-05-06 13:59:00) [13][112] wHammer © (06.05.05 13:36)
Ну-ну. Самое простейше - пришел я с флешкой, забрал все твои парадоксовские файлы и все. Делаю с ними что угодно.
А если клиент-сервер, то не имея физ.доступа к серверу, при правильно написаной системе, ты никогда не сможешь украсть базу.
И это не единственная проблема, их есть куча, просто влом рассказывать очевидные вещи.
wHammer (2005-05-06 13:36:00) [14]Мне например также все в 99-м (когда начинал) пели что Interbase это супер, ведь это клиент-сервер, а DBF и Paradox - файл-сервер а потому отстой полный. После написания пару приложений под Interbase (правда с небольшим количеством таблиц), придя на новую работу познакомился с человеком, который на Paradox'е мог сделать и делал всё. Знал его возможности от и до. Ну и меня завербовал. Теперь всегда использую именно Paradox. ИМХО к плюсам можно отнести бесплатность и простоту. За исключением "продвинутых" транзакций никаких важныхприемуществ у клиент-сервера за все время не нашел. Зато знаю полно "тупых" кодеров, извените, которые гнут пальцы налево и направо про Interbase и про SQL, хотя сами ничего кроме справочных приложений типа техпроцессов не написали, а про какой-либо учет вообще ничего не слышали. Ни одной временной таблицы у себя я также не создал. Так что я msguns'а поддерживаю полностью.
ANB (2005-05-06 13:06:00) [15]
> Я имею в виду проводку бухгалтерскую, а ты ?
- нет конечно. Я проводками называю все движение того, что учитывается. Привычка :))). Проще строки документа одновременно считать проводками.
Бухгалтерские, я так понял, не очень нужны.
А отложенное проведение . . . Как сказать. Я делал 2 варианта. Снятие остатка сразу и блокировка, а потом проводка. У обоих есть достоинства и минусы.
msguns (2005-05-06 13:01:00) [16]>ANB © (06.05.05 12:45) [109]
>А проводки не суммовые
Мы, видимо, разный смысл вкладываем в это слово. Я имею в виду проводку бухгалтерскую, а ты ?
Если просто документ проведен или нет, то для этого хватает статуса документа (int или char(1)): не введен, введен (суммы совпадают с контрольными), проведен, откачен.
Все ИМХО, ессно ;)
ANB (2005-05-06 12:45:00) [17]
> msguns © (06.05.05 09:21) [108]
- автор топика просил ПРОСТОЙ склад. Для розницы. Зачем там счета и заказы ? Потом можно добавить. А проводки не суммовые, а количественные - типа : отправитель, получатель, код товара, количество, документ.
Кстати, на этой простой схеме можно довольно сложный учет построить. У меня было тоже самое + суммовой учет и у меня ни разу не было проблем, что я не смог выполнить требования заказчика. Хотя ставил и частникам и средним торговым конторам, типа военторга.
А вот хранение остатков в проводках уже проходили. Потом, чтобы их получить, запрос по 30 минут выполняется.
msguns (2005-05-06 09:21:00) [18]>ANB © (05.05.05 13:28) [104]
Насчет проводок - это ты загнул ;) Если их добавлять в БД, то надо еще как минимум пару справочников (план счетов, корреспонденции+типовые проводки) + схему их экспорта на Баланс (Гл.Книга) или бух.программу.
Где платежи ? Где прайсы ? Как в "списке документов" держать счета, заявки и заказы, не говоря уж о накладных возвратов ? Что делать с внутренним перемещением ? Розницы типа нету ?
Как быть с инвентаризацией, пересортицей и списанием ?
Danilka (2005-05-05 21:32:00) [19][102] Fay © (04.05.05 15:28)
Хм, работает! Спасибо. :)
Sergey13 (2005-05-05 13:53:00) [20]2[104] ANB © (05.05.05 13:28)
таблица под остатки вообще не нужна. В зависимости от вида учета их можно хранить или в товарах или в документах.