Переключение на Главную Страницу Страницы: [1] 2 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) Развернутое сальдо? (число прочтений - 15943 )
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Развернутое сальдо?
03. Января 2009 :: 21:19
Печать  
Помогите, господа проф. 1С программеры - я любитель

Есть счет и все проводки по нему:
Код
Выбрать все
Проводки
Дата проводки	Дт	Кт	Содержание проводки
01.01.08	200,00		начисление суммы
02.01.08	-50,00		корректировка начисления
03.01.08		50,00	погашение суммы 


Мне нужно получить на 04.01.2008 итоговую сумму оборотов по дебету (в данном примере 150) и такую же сумму по кредиту (50).
Самый простой вариант, насколько я понимаю, сделать выборку всех проводок и вычислить суммы сложением.
Упоминаемые суммы называются развернутым сальдо? Можно ли их получить с помощью функций СКДРС и СККРС без того, чтобы делать бух. запрос за весь период с начала появления проводок до нынешнего момента?
У меня следующий код не приносит желаемого результата (счет НАЧ активно-пассивный):
Код
Выбрать все
	ГРФ = СоздатьОбъект("БухгалтерскиеИтоги");
	ГРФ.ИспользоватьСубконто(ВидыСубконто.Сотрудники);
	ГРФ.ВыполнитьЗапрос(, РабочаяДата(), "НАЧ");
	Колво = 3;
	ГРФ.ВыбратьСубконто(ВидыСубконто.Сотрудники);
	Пока (ГРФ.ПолучитьСубконто(ВидыСубконто.Сотрудники) = 1) И (Колво > 0) Цикл
		Сообщить("Сотрудник = " + ГРФ.Субконто(ВидыСубконто.Сотрудники));
		Сообщить("СКД = " + ГРФ.СКД() + "   СКК = " + ГРФ.СКК() + "   ДО = " + ГРФ.ДО() + "   КО = " + ГРФ.КО() + "   СКДРС = " + ГРФ.СКДРС() + "   СККРС = " + ГРФ.СККРС());
		Колво = Колво - 1;
	КонецЦикла; 


Выводит:
Код
Выбрать все
Сотрудник = Иванов
СКД = 0   СКК = 2137.97   ДО = 0   КО = 0   СКДРС = 0   СККРС = 0 

  
Наверх
 
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #1 - 04. Января 2009 :: 08:33
Печать  
blindvic писал(а) 03. Января 2009 :: 21:19:
Упоминаемые суммы называются развернутым сальдо?

Упоминаемые суммы называются оборотами. Дебетовое и Кредитовое соответственно. Их можно получить с помощью методов .ДО() и .КО()
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #2 - 04. Января 2009 :: 08:36
Печать  
blindvic писал(а) 03. Января 2009 :: 21:19:
Можно ли их получить [...ошибочное мнение пропущено...] без того, чтобы делать бух. запрос за весь период с начала появления проводок до нынешнего момента?

Можно. Методы ДО и КО работают не только в режиме бухзапроса. Но бухзапрос в общем случае работает быстрее.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #3 - 04. Января 2009 :: 08:43
Печать  
blindvic писал(а) 03. Января 2009 :: 21:19:
У меня следующий код не приносит желаемого результата

В качестве бреда попробуй перед циклом по субконто добавить еще цикл по счетам. ВыбратьСчета() ПолучитьСчет()
  
Наверх
www  
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Развернутое сальдо?
Ответ #4 - 04. Января 2009 :: 20:21
Печать  
fez писал(а) 04. Января 2009 :: 08:33:
blindvic писал(а) 03. Января 2009 :: 21:19:
Упоминаемые суммы называются развернутым сальдо?

Упоминаемые суммы называются оборотами. Дебетовое и Кредитовое соответственно. Их можно получить с помощью методов .ДО() и .КО()


Цитата:
st13
11 - 09.02.08 - 15:54
     
(10) Опять не понял.
Под развернутым сальдо я понимаю следующее: по договору продали сено на 100= руб, получили оплау на 100= руб.

Используя развернутое сальдо я должен получить по моему примеру СКД62=100, а СКК62=100, т.е должны суммироваться все дебетовые обороты и отдельно все кредитвые. Если взять Ит.СКК()=0, т.е. конечное сальдо равно 0.


Темный Эльф
12 - 09.02.08 - 16:05
     
(11)Сальдо - это сальдо. Обороты - это обороты. Не путайте теплое с мягким.


http://www.forum.mista.ru/topic.php?id=322273#11

Я вот рассуждаю как топикстартер, но он по-видимому ответа не получил
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Развернутое сальдо?
Ответ #5 - 04. Января 2009 :: 20:29
Печать  
fez писал(а) 04. Января 2009 :: 08:36:
blindvic писал(а) 03. Января 2009 :: 21:19:
Можно ли их получить [...ошибочное мнение пропущено...] без того, чтобы делать бух. запрос за весь период с начала появления проводок до нынешнего момента?

Можно. Методы ДО и КО работают не только в режиме бухзапроса. Но бухзапрос в общем случае работает быстрее.

У имел в виду не получение без бухзапроса, а бухзапрос без периода - на конечную дату.
У меня такая проблема:
У меня есть счет с 3 субконто. Мне нужно получить сумму оборотов по дебету с самого начала появления проводок по определенным субконто до текущего момента. На данный момент мне это приходится делать через бухзапрос с даты заведомо далекой до текущей даты. Я перебираю дебетовые обороты и суммирую их. Но запрос очень долгий - на моем счету очень много проводок.
Я и подумал, что нужную мне сумму 1С хранит (промежуточные сальдо до дебету и кредиту соответственно). Как мне их получить?
  
Наверх
 
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Развернутое сальдо?
Ответ #6 - 04. Января 2009 :: 20:43
Печать  
fez писал(а) 04. Января 2009 :: 08:43:
blindvic писал(а) 03. Января 2009 :: 21:19:
У меня следующий код не приносит желаемого результата

В качестве бреда попробуй перед циклом по субконто добавить еще цикл по счетам. ВыбратьСчета() ПолучитьСчет()

Не-а. ВыбратьСчета(, , , 1) тоже не помог. Здесь что-то коцептуально не в порядке..
  
Наверх
 
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #7 - 05. Января 2009 :: 11:06
Печать  
То, что тебе нужно - в 1С называется оборотом. Дебетовым и кредитовым. Точка. Никак иначе, кроме как получить сумму оборотов за большой период, твою задачу штатным бухзапросом не решить.

Сальдо в 1С - это конечный остаток. Если дебетовый оборот 100 и кредитовый - 100, то конечное сальдо будет нулевое. И кредитовое и дебитовое. На счете ничего нет, потому и сальдо нулевое. Это просто.

Развернутое сальдо - это когда мы берем общее сальдо по счету (ненулевое) и "разворачиваем" его (получаем дополнительную аналитику) по корсчетам например. Или по субконто.

А то, что тебе нужно - это суммарные обороты за очень большой период. В качестве начальной даты можно брать Дата(0) - по любому попадешь.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #8 - 05. Января 2009 :: 11:06
Печать  
blindvic писал(а) 04. Января 2009 :: 20:43:
Не-а. ВыбратьСчета(, , , 1) тоже не помог. Здесь что-то коцептуально не в порядке..

Код покажи.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #9 - 05. Января 2009 :: 11:07
Печать  
blindvic писал(а) 04. Января 2009 :: 20:29:
Я и подумал, что нужную мне сумму 1С хранит (промежуточные сальдо до дебету и кредиту соответственно).

Ты ошибся.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #10 - 05. Января 2009 :: 11:11
Печать  
blindvic писал(а) 04. Января 2009 :: 20:21:
http://www.forum.mista.ru/topic.php?id=322273#11

Я вот рассуждаю как топикстартер,

Ну и зря Улыбка

blindvic писал(а) 04. Января 2009 :: 20:21:
но он по-видимому ответа не получил

Он получил ответ. И судя по всему - не один раз. Вопрос в том: услышал ли он этот ответ? А если услышал, то понял ли?
  
Наверх
www  
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Развернутое сальдо?
Ответ #11 - 05. Января 2009 :: 12:23
Печать  
Код
Выбрать все
Проводки
Дата проводки	Дт	Кт	Содержание проводки		Сальдо Дт	Сальдо Кт
01.01.08	200,00		начисление суммы		200,00		0,00
02.01.08	-50,00		корректировка начисления	150,00		0,00
03.01.08		50,00	погашение суммы			150,00		50,00

Сальдо на 04.01.2008
СКД	СКК	Вид счета
100,00		Активный
	-100,00	Пассивный
150,00	50,00	Активно-пассивный 


Верно ли следующее:
1С хранить остатки по счету на конец каждого месяца - отдельно по дебету (далее Сальдо Дт) и по кредиту (Сальдо Кт).
При появлении проводки пересчитываются остатки на конец текущего месяца.
Если нужен остаток посреди месяца, берутся остатки на конец месяца и в обратном порядке прибавляются проводки с конца месяца до нужного момента.
Если счет активный, тогда СКД = Сальдо Дт - Сальдо Кт; СКК = 0
Если счет пассивный, тогда СКД = 0; СКК = Сальдо Кт - Сальдо Дт
Если счет активно-пассивный, тогда СКД = Сальдо Кт; СКК = Сальдо Дт
?
Насчет выделенного желтым - то, что я написал, неверно:
Цитата:
Для того чтобы определить конечное сальдо по активно-пассивному счету используют следующее правило: к начальному сальдо прибавляют месячный оборот по той стороне счета, где отражено начальное сальдо, и вычитают месячный оборот по противоположной стороне счета. Положительная разность составит конечное сальдо, которое будет отражено на той же стороне счета, где и начальное; а отрицательная разность — что сальдо перейдет на противоположную сторону счета по отношению к начальному. Если по активно-пассивному счету нет начального сальдо, то конечное сальдо определяется сравнением месячных оборотов и отражается на той стороне счета, где оборот больше. Необходимо отметить, что развернутое сальдо в активно-пассивных счетах в обычном порядке вывести невозможно. Оно определяется по данным аналитического учета. Аналитический учет дает информацию о состоянии расчетов с каждым дебитором и кредитором, а также об общей сумме дебиторской и кредиторской задолженности

Но мне нужны вот эти самые цифры, хотя я не знаю как они правильно называются и, уж тем более, как их получить.
  
Наверх
 
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #12 - 05. Января 2009 :: 13:00
Печать  
blindvic писал(а) 05. Января 2009 :: 12:23:
Верно ли следующее:
1С хранить остатки по счету на конец каждого месяца - отдельно по дебету (далее Сальдо Дт) и по кредиту (Сальдо Кт).

Нет. 1С хранит единый остаток. Он может быть или дебетовым, или кредитовым.

blindvic писал(а) 05. Января 2009 :: 12:23:
При появлении проводки пересчитываются остатки на конец текущего месяца.

месяца проводки и всех последующих месяцев.

blindvic писал(а) 05. Января 2009 :: 12:23:
Если нужен остаток посреди месяца, берутся остатки на конец месяца и в обратном порядке прибавляются проводки с конца месяца до нужного момента.

Или берутся остатки на начало месяца и прибавляются проводки с начала месяца.

blindvic писал(а) 05. Января 2009 :: 12:23:
Если счет активный, тогда СКД = Сальдо Дт - Сальдо Кт; СКК = 0

Если счет активный, то СКК = 0, а СКД (сальдо конечное дебетовое) = Сальдо ДТ. Ноль никто не вычитает, зачем?

blindvic писал(а) 05. Января 2009 :: 12:23:
Если счет пассивный, тогда СКД = 0; СКК = Сальдо Кт - Сальдо Дт

Аналогично. Если счет пассивный, то СКД = 0, а СКК (сальдо конечное кредитовое) = Сальдо Кт. Ноль никто не вычитает, зачем?

blindvic писал(а) 05. Января 2009 :: 12:23:
Если счет активно-пассивный, тогда СКД = Сальдо Кт; СКК = Сальдо Дт
?

Если счет активно-пассивный, то на счете есть ненулевое или СКД, или СКК. Ну или оба, разумеется.

В твоем примере из предыдущего сообщения, окончательное Сальдо Дт (СКД) будет равно 100, а Сальдо Дт (СКК) будет равно нулю.

Пример того, как и для чего оно было задумано.
Есть счет 50. Наличные в кассе. Показатель "Сальдо" означает, сколько денег в кассе. Денег в кассе не может быть меньше нуля, так что Сальдо Кт не может быть больше нуля. Стало быть, счет - активный. Сальдо на этом счете может быть только дебетовое.

Показатель "Оборот Дт" обозначает, сколько денег к нам приходило.

Показатель "Оборот Кт" обозначает, сколько денег от нас уходило.

Если к нам пришло 1000 рублей, а ушло 990 - то сальдо будет только одно, дебетовое, и равно оно будет десяти рублям. А кредитовое сальдо будет равно нулю.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Развернутое сальдо?
Ответ #13 - 05. Января 2009 :: 13:03
Печать  
blindvic писал(а) 05. Января 2009 :: 12:23:
Но мне нужны вот эти самые цифры, хотя я не знаю как они правильно называются и, уж тем более, как их получить.

Отлично. Уже прогресс.

Эти цифры правильно называются оборотом за весь период деятельности. Дебетовый и кредитовый обороты соответственно.
Их так и получают: считают обороты от "начала времен" и складывают. Да, операция долгая. Поскольку ее выполнение требуется достаточно редко - ее никто и не оптимизировал.
  
Наверх
www  
IP записан
 
blindvic
Senior Member
****
Отсутствует



Сообщений: 486
Местоположение: Moldova
Зарегистрирован: 23. Июня 2008
Пол: Мужской
Re: Развернутое сальдо?
Ответ #14 - 05. Января 2009 :: 13:06
Печать  
fez писал(а) 05. Января 2009 :: 13:00:
blindvic писал(а) 05. Января 2009 :: 12:23:
Верно ли следующее:
1С хранить остатки по счету на конец каждого месяца - отдельно по дебету (далее Сальдо Дт) и по кредиту (Сальдо Кт).

Нет. 1С хранит единый остаток. Он может быть или дебетовым, или кредитовым.

Меня этот пункт больше всего интересует.
Значит нужные мне цифры (150,00 и 50,00 из приведенного примера) нельзя получить из уже имеющихся остатков, а только анализируя обороты?

Или есть еще какой-нибудь способ? Прямые запросы?
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 
ОтправитьПечать