Текущий архив: 2003.09.18;
Скачать: CL | DM;
Вниз
Правильно посчитать отчет Найти похожие ветки
← →
Юля П (2003-08-28 10:14) [0]У меня неправильно считается итоговая сумма долгов.
Скорее всего это потому, что у меня в одном поле содержаться и рублевая и долларовая суммы. И как-то неправильно суммируется рублевая сумма. Помогите, пожалуйста.
← →
Polevi (2003-08-28 10:17) [1]кроме суммы есть валюта и курс - отношения валют друг к другу.
умножай сумму каждой проводки на коефф, соотв той валюте в которой ты хочешь получить результат и курсу проводки
← →
Sergey13 (2003-08-28 10:26) [2]2Юля П (28.08.03 10:14)
>Скорее всего это потому, что у меня в одном поле содержаться и рублевая и долларовая суммы
Если нет указания на тип валюты, то налицо ошибка проектирования. Если есть то Polevi © (28.08.03 10:17) [1]
← →
Юля П (2003-08-28 11:17) [3]Там где рубли я умножаю на курс, а где доллары делю, т.к. мне нужены долги и долларах и в рублях в одном отчете. Сумма за каждый отдельный материал и в рублях и в долларах выводится правильно. Но итоговая сумма долгов складывается не правильно.
Не понимаю почему
← →
DenK_vrtz (2003-08-28 11:20) [4]В чем выводится(считается) сумма?
Код?
← →
MsGuns (2003-08-28 11:29) [5]Запрос на итоговую сумму в студию !
← →
Hawk2 (2003-08-28 11:31) [6]Юля П (28.08.03 11:17) [3]>
Там где рубли я умножаю на курс, а где доллары делю, т.к. мне нужены долги и долларах и в рублях в одном отчете.
Это в два этапа или одновременно? Получается там где была сумма в рублях станут доллары, а где была сумма в долларах станут рубли. И для чего эти манипуляции.
Сумма за каждый отдельный материал и в рублях и в долларах выводится правильно. Но итоговая сумма долгов складывается не правильно.
Не понимаю почему.
А Вы при подсчете отличаете Дебет от Кредита?
← →
Anatoly Podgoretsky (2003-08-28 11:40) [7]Она и не получится, поскольку в результате деления могут получаться неправильные дроби
← →
MsGuns (2003-08-28 11:56) [8]Ну да, щас Кашпировский, Чумак и баба Соня соберутся и по фотографии вылечат у девочки флюс ;)))
← →
Юля П (2003-08-28 12:14) [9]Можно хоть что-нибудь сделать?
Код вот такой ужасный:
procedure TMainForm.Debit1Click(Sender: TObject);
var i,j : Integer;
var RDate : TDate;
var Currdebit, Tot_dol, Tot_rus, CurrdebitR: Real;
begin
//
← →
HSolo (2003-08-28 12:26) [10]"Что-нибудь" сделать всегда можно :))
Приведите структуру таблиц.
← →
MsGuns (2003-08-28 12:40) [11]>Юля П (28.08.03 12:14) [9]
Ух, круто !!! Ни одного комментария, ни отступов, ни внятнообозванных сущностей БД. И все без единого запроса.
А что, на SQL у вас в конторе лежит вето ?
← →
Юля П (2003-08-28 12:45) [12]Это структура главной таблицы Material.db:
ID AutoInc 0
NN String 5
Contra String 30
MatName String 30
MatMass String 10
SchetD Date 0
MatNVag String 20
MatOtpr Date 0
MatTrans String 5
MatPost Date 0
MatDogov String 7
MatRusPr String 15
MatTotPrice String 15
DogovorN String 15
DogovorD Date 0
GarantN String 15
GarantD Date 0
NakladN String 15
NakladD Date 0
SchetFakN String 15
SchetFakD Date 0
CertificatN String 15
CertificatD Date 0
PrihOrdN String 15
PrihOrdD Date 0
DeadLine Date 0
MatComment String 100
HTP String 11
SchetN String 15
DebitYN Boolean 0
NShop String 3
FinN String 7
PrihRBN String 15
PrihRBD Date 0
Table: Course
Data Date 0
Course String 7
Таблица Debit.db
DNN String 5
DContra String 30
DMatName String 30
DNetto String 10
DDebit_dol String 15
DDebit_rus String 15
Таблица Dummy.db (временная):
DummyDate Date 0
DummyDate2 Date 0
DummyContra String 30
Table: MoneyToPay
NN String 5
MoneyDate Date 0
Price_rus1 String 15
Price_Dollar String 15
NPoruch String 5
DummyMatName String 30
← →
Danilka (2003-08-28 12:45) [13]MsGuns © (28.08.03 12:40)
камментариев есть немножко, но они, похоже, на греческом. :))
← →
HSolo (2003-08-28 12:56) [14]> Юля П (28.08.03 12:45) [12]
ОК, начало положено :)
Следующий этап. Что за информация в какой таблице находится? Как они друг с другом связаны? Я понимаю, для Вас это давно очевидно, но мне, например, название MoneyToPay позволяет лишь догадываться, что речь идет о деньгах, а Price_Dollar - робко предположить, что это и есть та самая долларовая сумма. А уж что есть NN / DNN - тут без телепатического модуля никак, а он у меня в ремонте :)
← →
MsGuns (2003-08-28 13:01) [15]>Юля П (28.08.03 12:45) [12]
Мдя... Я надеюсь, что это не ваше дитятко, Юля ? А Вам просто его нянчить ? Похоже, весь движняк по материалам всунут в одну таблу, зато для курса суперразработчик предусмотрел целых две.
"... это смутно мне напоминает индо-пакистанский инцидент" (ВВС (с)) А именно ДОСовские клипперно-дэбэфные базы, писанные студентами-недоучками.
Самое интереснон, что нет даже справочника материалов. "Бензопила Дружба" будет шлепаться на клаве столько раз, сколько встречалась в приходно-расходных документах и, естественно, каждый раз разными буквами (если, конечно, программер не исправил глюк горе-разработчика и не придумал перед добавлением предлагать выбор из списка существующего)
Резюме. ИМХО, 1.Существующую прогу вместе с БД - в печку, 2.разработать нормальную структуру "от документа", 3.Перекачать инфу из старой БД в новую (придется написать еще и конвертялку)
Кстати, заодно и распрощаться с Парадоксом как с примусом и патефоном.
← →
MsGuns (2003-08-28 13:10) [16]>HSolo © (28.08.03 12:56) [14]
>А уж что есть NN / DNN - тут без телепатического модуля никак, а он у меня в ремонте :)
Это-то как раз самое несложное.
Все эти многочисленные, как тараканы, <чего-там>.N|D не что иное как № и дата этого самого <чего-то там> - видно из текста. Зачем таблица движения хранит эту инфу в каждой строке спецификации каждого документа - одному Господу (вкупе с разработчиком) известно. Причем, похоже, что даже отметки об оплате живут в "свальном грехе" с кол-вом, ценой, номером сертификата, даверенностью и т.д. И при этом все - даже суммы - в символах !!!! (Может, это импортированная из откуда-то инфа. И что-то мне шепчет на ухо, что без 1ц тут дело не обошлось,- согрешила бабушка с лабрадором-то ;)))
Короче, крутизнааааааа !!!
← →
DenK_vrtz (2003-08-28 13:12) [17]Конкурс "Мать моя - женщина" или "Телепат года" продолжается! :-)
← →
HSolo (2003-08-28 13:15) [18]> MsGuns © (28.08.03 13:01) [15]
Вот к Вашему резюме я и пытаюсь подвести человека. Следующим был бы вопрос "а почто в одной таблице-то?"
"Дедушка бабушку опередил" (с) :))
← →
Hawk2 (2003-08-28 13:24) [19]Юля без обид, но если это вы написали, то думаю Вам еще рановато заниматься такими вещами, а если это ктото другой, то я б ему морду набил.
← →
MsGuns (2003-08-28 13:28) [20]>Hawk2 © (28.08.03 13:24) [19]
>Юля без обид, но если это вы написали, то думаю Вам еще рановато заниматься такими вещами, а если это ктото другой, то я б ему морду набил
Малевичу при жизни тоже морду били. Да и Ван Гога не очень почитали ;)))
← →
Юля П (2003-08-28 13:33) [21]> HSolo
В таблице Material.db содержится информация по поступающему материалу: когда пришел (NakladD), от какой организации (Contra), по какой цене (MatDogov), вес (MatMass), сумма за материал (МатТотPrice (цена*вес)), NN - код записи (вводится вручную). Это основные поля в этой таблице.
Course.Db содержит число и значение курса на это число.
MoneyToPay.db
NN(код записи из Material.db), MoneyDate(дата, когда было оплачено за материал), Price_rus1 (сумма в рублях), Price_Dollar(сумма в долларах), NPoruc(номер платежного поручения).
Dummy.db временная таблица, используется, чтобы вывести материалы за месяц, за декаду. В ней сравниваются даты между собой.
← →
Hawk2 (2003-08-28 13:36) [22]Так то оно так, но прежде чем за что-то браться нужно хоть какие-то книги почитать. Кроме Делфи нужно и о БД коечто знать. Код программы написан, но от правильно организованной структуры БД тоже многое завист.
← →
MsGuns (2003-08-28 14:10) [23]Я так понял, что ребеночек все же того... родненький ;)))
Тогда совет.
Для начала комп не нужен. Нужен только карандаш и бумага (листиков 5-6 для задачи такого плана)
1. Определить объекты БД:
- Приходная накладная
- Расходная накладная
- Поставщик (контрагент)
- Получатель (склад)
- Материал
- Группа материалов
...
2. Для каждого объекта определить его характеристика (свойства). Например, для накладной приходной это №, Дата, Поставщик, Сумма по накладной, Сумма НДС, Валюта, Инф-ция о доставке (№ авто, инфа путевого листа, № и дата доверенности и т.д.)
3. Установить общие для двух или более объектов характеристики и "вынести их за скобки", т.е. сделать справочники, а в самих документах характеристику заменить на ссылку к этому справочнику.
4. Установить межтабличные связи "один-ко-многим". Т.е. к примеру все приходы имеют 2 "этажа". На первом это т.н. заголовки, т.е. №, Дата и т.д., а на 2-м фактура, т.е. Материал, кол-во, цена и т.д.
Ну и в том же духе дальше. Очень рекомендую последовать совету Hawk2 © (28.08.03 13:36) [22], поверьте, этот человек знает, что говорит.
Страницы: 1 вся ветка
Текущий архив: 2003.09.18;
Скачать: CL | DM;
Память: 0.51 MB
Время: 0.009 c