|
v7: Запрос по бух. итогам | ☑ | ||
---|---|---|---|---|
0
Lexxxxx
20.09.11
✎
13:45
|
Есть кодец:
Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьРазделительУчета(Фирма); Ит.ИспользоватьСубконто(ВидыСубконто.НеоборотныеАктивы); // ОС, НМА Если НачКвартала(ДатаДок) = НачМесяца(ДатаДок) Тогда Ит.ВыполнитьЗапрос(НачКвартала(ДатаДок),,СписокСчетов); Иначе Ит.ВыполнитьЗапрос(НачКвартала(ДатаДок),КонМесяца(ДобавитьМесяц(ДатаДок,-1)),СписокСчетов); КонецЕсли; Ит.ВыбратьСубконто(1); Пока Ит.ПолучитьСубконто(1) = 1 Цикл Износ = 0;ПервСтоимость = 0; ИзносНУ = 0;ПервСтоимостьНУ = 0; ПервКво =0; // Для счета 100 износ начисляем на счет 135 Если Сч = СчетПоКоду("10") Тогда Если Ит.Субконто(1).Счет = СчетПоКоду("100") Тогда Продолжить; КонецЕсли; КонецЕсли; Если НачКвартала(ДатаДок) = НачМесяца(ДатаДок) Тогда // месяц - начало квартала Если Ит.ПолучитьСчет(,СчИзноса) = 1 Тогда Износ = Ит.СНК("С"); КонецЕсли; Если Ит.ПолучитьСчет(,Сч) = 1 Тогда ПервСтоимость = Ит.СНД("С"); ПервКво = Ит.СНД("К"); КонецЕсли; Если Ит.ПолучитьСчет(,СчИзносаНУ) = 1 Тогда ИзносНУ = Ит.СНК("С"); КонецЕсли; Если Ит.ПолучитьСчет(,СчНУ) = 1 Тогда ПервСтоимостьНУ = Ит.СНД("С"); КонецЕсли; Иначе //на начало месяца Если Ит.ПолучитьСчет(,СчИзноса) = 1 Тогда Износ = Ит.СКК("С"); КонецЕсли; Если Ит.ПолучитьСчет(,Сч) = 1 Тогда ПервСтоимость = Ит.СКД("С"); ПервКво = Ит.СКД("К"); КонецЕсли; Если Ит.ПолучитьСчет(,СчИзносаНУ) = 1 Тогда ИзносНУ = Ит.СКК("С"); КонецЕсли; Если Ит.ПолучитьСчет(,СчНУ) = 1 Тогда ПервСтоимостьНУ = Ит.СКД("С"); КонецЕсли; КонецЕсли; Непойму, зачем эти игры с периодом в зависимости от начало или нет квартала? Почему не написать: Ит.ВыполнитьЗапрос(НачМесяца(ДатаДок),,СписокСчетов); И брать СНК\СНД все время? Зачем такое было написано?! |
|||
1
chief accountant
20.09.11
✎
14:02
|
Что за отчет-то?
|
|||
2
Lexxxxx
20.09.11
✎
14:15
|
Это документ "НачислениеИзноса" из Бухналтерия ПРОФ для Украины. Ниже в цикле ничего существенного не происходит, так что можно просто считать что там КонецЦикла. Обороты из этих итогов нигде не берутся. Все обращения к ним приведены в процитированном участке кода. Никак не могу понять, для чего эти фокусы?!
|
|||
3
zak555
20.09.11
✎
14:18
|
быдло кодинг ?
|
|||
4
zak555
20.09.11
✎
14:18
|
вот это
Если Сч = СчетПоКоду("10") Тогда Если Ит.Субконто(1).Счет = СчетПоКоду("100") Тогда Продолжить; КонецЕсли; КонецЕсли; жесть |
|||
5
zak555
20.09.11
✎
14:18
|
переписать всё нафиг
|
|||
6
palpetrovich
20.09.11
✎
14:19
|
(2) "НачислениеИзноса" - оно такое НачислениеИзноса :)
сильно зависит от от мочи ударившей в голову законотворцам в какой-то момент ...ну и от периода тоже зы: работает - не трожь! |
|||
7
chief accountant
20.09.11
✎
14:21
|
(6) +1
Хрен его знает, что там у них с законодательстов |
|||
8
chief accountant
20.09.11
✎
14:22
|
7+ *законодательством
|
|||
9
zak555
20.09.11
✎
14:22
|
почему, если
месяц - начало квартала смотришь начальное сальдо, иначе - конечное ? о_0 |
|||
10
Lexxxxx
20.09.11
✎
14:26
|
(9) Дык вот и мне интересно!
|
|||
11
Lexxxxx
20.09.11
✎
14:35
|
ИМНО ведь не может быть случаев, когда начальное сальдо первого дня текущего месяца не равно конечному сальдо последнего дня предыдущего месяца?!
|
|||
12
palpetrovich
20.09.11
✎
14:39
|
(11) не в сальдо дело, вот к примеру комментарий оттудаже:
//Для производственного метода с 01.11.09 износ начисляется со следующего дня зв: таких заморочек встречается немало и далеко не всегда виноваты программеры :) |
|||
13
2S
20.09.11
✎
14:46
|
(0) ужас нах
|
|||
14
Lexxxxx
20.09.11
✎
14:50
|
(12) Ну это уже другой этап, и там свой период. Я говорил о конкретном случае употребления конкретного экземпляра бух. итогов.
|
|||
15
Дык ё
20.09.11
✎
14:50
|
(11) возможно, там нужно получить все НеоборотныеАктивы, которые были на начало квартала, даже если они ликвидированы на начало месяца?
|
|||
16
Lexxxxx
20.09.11
✎
14:56
|
(15) Возможно! Правда не совсем понятно зачем, но это уже тонкости наверное законодательного характера.
|
|||
17
G-Re
20.09.11
✎
15:16
|
Я думаю, что Кодеры пытались следовать решениям Партии и Правительства, которые принципиально спонтанны и непоследовательны, а затем просто следовали принципу "Работает - не трожь". Поэтому и остались какие-то почти бессвязные осколки старого кода.
Но принцип правильный. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |