Вверх ↑
Ответов: 16884
Рейтинг: 1239
#1: 2014-02-04 20:00:18 ЛС | профиль | цитата
sashaoli писал(а):
Но вот возникает ситуация, когда пользователь обнаружил ошибку в проводке (не та сумма, счет по дебету или кредиту) например в январе, хотя данные уже есть за март, в "provod". Изменяет это в табл. "provod". Естественно после изменения данных нужно произвести пересчет оборотов и остатков по определенным счетам начиная с периода в котором произведены изменения и заканчивая последним периодом, который имеется в проводках.
Когда-то исправления в карточках счетов не допускались. Никаких подтирок и помарок. Да ещё и в закрытом месяце. Делалась "обратная" проводка в том месяце, когда была обнаружена ошибка. В твоём случае - в марте. Допустивший ошибку - лишался премии. И это работало очень эффективно.
Какой бардак в бухучете в Украине сегодня - не знаю.

Про ORDER BY и GROUP BY tsdima дал исчерпывающую информацию.

описание SQLite писал(а):
Если SQLite.dll скомпилирована с опцией SQLITE_ENABLE_UPDATE_DELETE_LIMIT то синтаксис UPDATE может быть дополнен операторами ORDER BY и LIMIT
Как скомпилирована dll, которой ты пользуешься, тоже не знаю.

Ну и на закуску
SELECT sch_id, max(period) AS "на дату" , (ost_n + sum(ob_d)- sum(ob_k)) AS ost_k FROM itogi WHERE strftime('%Y-%m', period)='2014-01' GROUP BY sch_id;
Выдаст тебе сальдо на конец месяца по всем счетам за январь месяц 2014 года. А так за год:
SELECT sch_id, max(period) AS "на дату" , (ost_n + sum(ob_d)- sum(ob_k)) AS ost_k FROM itogi WHERE strftime('%Y', period)='2014' GROUP BY sch_id;
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0