|  | 
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Как сделать более правильно ввод поступлений оплат, если клиенту нужны подробности за какой конкретно документ оплата? Причем клиент может и не написать ничего в платежке и заплатить хрен знает как и за что. Хотелось бы совета у тех кто с этим уже столкнулся. Выставление счетов там не практикуется. Надо автоматизировать хаос... Сейчас планируется следующее: Ввод реквизитов документа оплаты и Общей суммы (Главная таблица) В ПодчиненойТаблице расписываем СуммуДокумента и КодДокумента, за котроый (типа за который) пришла оплата Таким образом программа всегда работает с ОбщейСуммой, а данные из ПодчиненойТаблицы отражают Документ - Сумму Документа (расчетное поле) - и СуммуОплаты (к-ая не может быть больше СуммыДокумента). А суммы всех оплат документов не могут быть больше ОбщейСуммы. При вводе я предполагаю сделать такой финт: После заполнения ОбщейСуммы выдатьвсе последние документы (за исключением уже оплаченных полностью) и на автомате разбить общую сумму платежа по суммам документа (отсортированы по убыванию) (если конечно платеж бъется). Теперь маленькие проблемы: А если вся сумма документов на 100 000, а платеж на 200 000 (типа преодоплата)? Так же еще имеются проблемы, которые и подтолкнули на мысль- что я что-то не правильно делаю. Подскажите? ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 10:34 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ А про дебет/кредит слышал ? С этим такие вещи проще решать. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 10:53 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ 2 __Eugene Да слышал я про дебет-кредит. Но только слышал :( и никогда не работал с такой организации БД. Распиши мне Д|К для оплаты, у которой не ясно что за что, и может вообще не за что. Д Касса| К Расчет с поставщиками. А где за какой документ оплата?Субконто использовать? Да и главное - прога не использует "двойную запись". Может отсюда все беды. Как решить-то.Хотя бы примерно. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 11:04 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Если я правильно понял, то примерно так: Есть две таблички DOC_REG и DOC_REG_CLOSING в DOC_REG запосятся все документы укоторые необходимо закрывать оплатой, а так же сам документа оплаты. Поля такие: DOC_ID - код документа, DOC_TYPE_ID - тип документа, AMOUNT - сумма документа, AMOUNT_CLOSE - закрытая сумма по документу в DOC_REG_CLOSING информация какой документ чем закрыт Поля такие: DOC_ID - код закрываемого документа, DOC_CLOSE_ID - код документа которым закрываем, AMOUNT - на сколько закрываем Соотвественно первые два поля FK на DOC_REG. в DCO_REG_CLOSING делаем перекрестные записи, т.е. DOC_ID и код документа (накладная) и код оплаты. Избыточность небольшая. Ну а процедуру разноски оплаты по документам надеюсь догадаетесь как сделать. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 15:11 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Спасибо,  но я бы не хотел использовать отдельную таблицу для уже оплаченных документов /хотя м.б. я и не прав, де нормализация не табу/ Хочу делать расчет динамически: проверяем "закрытость" документа. Если Разность этих сумм (Сумма документа и Sum(СуммаРазнесеннаяПоДанномуДок-ту) будет равна нулю - значит документ оплачен, если болше то разрешаем разнести толкьо на это число. Хотя .... ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 15:50 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Похоже, вы "забурились" в дебри финансовых систем :-)).  Имеет смысл связывать оплаты и отгрузки динамически. Также, предусмотреть возможность "явного" связывания оплат и отгрузок(или счетов). ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 18:01 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Возможно и забурились. Но если информации где-то не возникает, то ее и учитывать невозможно . Я с такой же бодягой разбирался как-то. Что в результате пришлось сделать - в обязательном порядке в документе с оплатой писать, что за платеж и за что. Откуда человечек возьмет эту информацию - это уже его проблемы были. Де-факто получилось, что сидел на телефоне, звонил, выяснял... :о)  Правда, был один положительный момент - достаточно было выяснить, какие группы товаров был платеж. Скажем, для примера, торговала организация трикотажем и продуктами. Ему надо было только понять, за одежду этот платеж или за продукты. Этих групп было меньше 10. А в бухгалтерском учете получалась жопа - у контрагента образовывалась задолженность, потом периодически гасилась. А за что именно эта задолженность - уже концов было не найти. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 25.04.2003, 18:43 |  | ||
| 
Вопрос по заносу в БД оплат | |||
|---|---|---|---|
| #18+ Хочу делать расчет динамически: проверяем "закрытость" документа. Если Разность этих сумм (Сумма документа и Sum(СуммаРазнесеннаяПоДанномуДок-ту) будет равна нулю - значит документ оплачен, если болше то разрешаем разнести толкьо на это число.   А что в этой схеме не динамического ? По документу всегда виден остаток не закрытой суммы. А закрытие отрабатывается при сохранении документа оплаты или оплачиваемый документ. У нас тоже ситуация. Существую 3 вида оплат: 1. За конкретный(ые) счет(а) 2. За конкретную отгрузку 3. По конкретному договору (в данном случае счет/отгрузка не определены). В первом случае имеем конкретные ссылки на документы. С этим все понятно. Во втором случае просматриваем DOC_REG и находим все счета по договру, которые не закрыты и понеслось .... По моему мнению лучше описать сразу какие возможные документы необходимо закрывать и чем. Ведь может возникнуть НАПРИМЕР ситуация оплата не деньгам, а натурой (:-)))) или другими видами документов. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 26.04.2003, 22:40 |  | ||
|  | 

| start [/forum/topic.php?fid=32&msg=32149520&tid=1546990]: | 0ms | 
| get settings: | 10ms | 
| get forum list: | 13ms | 
| check forum access: | 4ms | 
| check topic access: | 4ms | 
| track hit: | 43ms | 
| get topic data: | 11ms | 
| get forum data: | 3ms | 
| get page messages: | 43ms | 
| get tp. blocked users: | 1ms | 
| others: | 14ms | 
| total: | 146ms | 

| 0 / 0 | 
