Имя: Пароль:
1C
1C 7.7
v7: Подскажите по БухгалтерскиеИтоги 1с 77
,
0 CepeLLlka
 
12.09.13
16:06
Получаю БИ по периодам и субконто..

Перебираю результат в цикле, сначала перебираю периоды, получив период, выбираю субконто и перебираю уже их и вывожу результат в сообщения..

Отображает результат только по 2ум субконто, а в ОСВ по счету за данный период есть результаты по 4ём.. как так?
1 KishMish
 
12.09.13
16:12
смотря что ты делаешь. обороты или остатки смотришь. а с кодом было бы легче
2 zak555
 
12.09.13
16:15
ИспользоватьСубонто -- два раза
3 CepeLLlka
 
12.09.13
16:16
Понял.. потому что м*дак :) Всем спасибо :)
В одном случае суммовой результат.. в другом количественный.. вот и всё.. Сорри, ребята.
4 CepeLLlka
 
12.09.13
16:16
А я выбирал только суммовой..
5 zak555
 
12.09.13
16:18
ты написал, что у тебя результат по двум субконто, а в осв 4 их
6 CepeLLlka
 
12.09.13
16:21
(5) Зак зак.. милый мой друг :) Я наверное не очень удачно выразился..
Субконто одно - Контрагенты..
А вот результаты были в одном случае по 2ум, в другом по 4ём.
7 CepeLLlka
 
12.09.13
16:21
(5) Прости пожалуйста.. ввёл в заблуждение.. малоопытный я ещё :(
8 CepeLLlka
 
25.09.13
11:10
Ребята.. снова беда..
Пытаюсь получить итоги за период вот таким образом..


ИТ = СоздатьОбъект("БухгалтерскиеИтоги");
ИТ.ИспользоватьСубконто(ВидСубконто, СписокСубконто, 1, 1);
ИТ.ВыполнитьЗапрос(НачДата, КонДата, Счет,,,1,4,1);
ИТ.ВыбратьПериоды(1,,,1);
Пока ИТ.ПолучитьПериод() = 1 Цикл


И вот.. если НачДата = КонДата, тогда ИТ.ВыбратьПериоды(1,,,1) = 0, при условии, что за этот период нет данных, а если есть то всё ок..
Но если брать период хотя бы за 2 дня, тогда всё ок.. выводит нули всё нормально.. а ноль за один день не хочет выводить.. Что я делаю не так?
9 zak555
 
25.09.13
11:13
ВыбратьПериоды(<?>,,,)
Синтаксис:
ВыбратьПериоды(<ФлагВсе>,<ФлагДК>,<Номер>,<РазвСальдо>)
Назначение:
Открывает выборку периодов.
Возвращает  1 - если действие выполнено и в выборке есть хотя бы один период; 0 - если действие не выполнено или в выборке нет ни одного периода.
10 KishMish
 
25.09.13
11:26
(8) а ИТ.ВыполнитьЗапрос(НачДата, КонДата, Счет,,,1,4,1)=0?
11 Стрелок
 
25.09.13
11:32
могу выслать конструктор бухгалтерских запросов для 7.7 очень удобная штука прямо с алгоритмом выборки.
12 CepeLLlka
 
25.09.13
11:38
(9)Спасибо, СП читать ДенисЧ научил уже :)
(10) Сек.. сейчас проверю
13 CepeLLlka
 
25.09.13
11:41
(10)Нет, выдаёт = 1
14 zak555
 
25.09.13
11:42
(13) это потому что ты остатки считаешь
15 CepeLLlka
 
25.09.13
11:56
(14)Чего? Зак.. ну что ты какой :) Выражайся яснее жее :)
Какие остатки я считаю? Почему тогда если брать период 01.08.13 и 02.08.13 всё выводит, а если брать 01.08.13 и 01.08.13, то не выводит.. Ммм?
16 zak555
 
25.09.13
12:09
4 --- это что ?
17 CepeLLlka
 
25.09.13
12:49
(16)СП дать почитать? :)
18 CepeLLlka
 
25.09.13
12:52
(16)Это периодичность же.. 4 - означает что периоды будут по дням.
19 CepeLLlka
 
25.09.13
12:59
Ну же.. ребята.. почему не работает? За два дня отбирает.. за один нет.. ппц же :)
20 zak555
 
25.09.13
13:03
(17) в конфигураторе про числа не написано
21 zak555
 
25.09.13
13:04
(19) движения по товару есть 02.08.13 ?
22 CepeLLlka
 
25.09.13
13:04
(21)Тоже нет.. иначе бы понятно всё было сразу..
23 zak555
 
25.09.13
13:05
а если период выбрать 02.08.13 и 02.08.13 ?
24 CepeLLlka
 
25.09.13
13:06
(23) Секундочку
25 CepeLLlka
 
25.09.13
13:07
Ничего не меняется.. за один день не хочет брать данные :(
26 CepeLLlka
 
25.09.13
13:12
Надо ждать когда придут Ёпрст, и ДенисЧ, они чай точно знают..
27 zak555
 
25.09.13
13:32
а если сделать не день, а проводку скажем ?
28 CepeLLlka
 
25.09.13
13:44
(27)А зачем мне данные по каждой проводке, если мне нужны данные целиком за день? :)
Выбирать для начала в разрезе, а потом обратно складывать? :)
29 CepeLLlka
 
25.09.13
14:19
Вобщем пока написал условие.. перебирать периоды только тогда, когда период больше одного дня...
Но это же не правильно.. буду апать, ждать Ёпрст или других Гуру :)
30 CepeLLlka
 
25.09.13
16:04
АаААааАПп!
31 CepeLLlka
 
25.09.13
22:11
Есть кто живой?
32 ОмелянКосопысд
 
26.09.13
02:06
там глюков немеряно. ты еще на черный запрос к бухитогам пожалуйся =)
вывали это всё в таблицу значений, дополни как надо и забудь..
P.S.
но релиз платформы я бы проверил. (а так же ДБФ/SQL)
33 CepeLLlka
 
26.09.13
12:56
Релиз 27, ДБФ

На с SQL только начинаю работать.. поставил тестово.. надо будет на 3 сервера развернуть.. буду писать тут вам :)

Гуру может появились тут? :)
34 CepeLLlka
 
26.09.13
15:50
Ребята.. подскажите пожалуйста..

Чёт я уже устал сёдня, башка не соображает..
Пишу вот так:

ИТ.ИспользоватьСубконто(ВидСубконто, СписокСубконто, 1, 1);
ИТ.ВыполнитьЗапрос(Начало, КонДата, Счет,,,1,,1);
ИТ.ВыбратьСубконто(1);


ИТ.ВыбратьСубконто(1) = 1 только тогда, когда есть данные по выбранным субконто за этот период, а если нет данных.. то не выбирает субконто..
Как сделать чтобы выбирал, независимо от того были данные или нет..??
35 CepeLLlka
 
26.09.13
15:57
В 8ке в 100 раз легче, чем тут :) Половина не работает.. половина хз как.. да и сам ещё не очень :)
36 vladko
 
26.09.13
16:53
(35) тебе же говорят, что костяк формирования данных создай в конструкторе бух.запросов. Там все нужные данные вытащишь, а далее уже дописывай как надо тебе обработать данные
37 vladko
 
26.09.13
16:54
зачем писать бух.запрос руками, когда есть нормальный конструктор.
38 Chai Nic
 
26.09.13
16:57
(35) Неправда. Бухитоги в семерке весьма прилично работают. Просто к ним нужна привычка.. как и к виртуальным таблицам регистров в восьмерке.
39 Абыр
 
26.09.13
17:01
(34) В чем проблема? Получить нолики по всему СписокСубконто, если не было остатков-движений?
40 CepeLLlka
 
26.09.13
17:13
(39) Дааа :(
41 CepeLLlka
 
26.09.13
17:14
(38) Тогда почему не работает то, что в (8)?
42 zak555
 
26.09.13
17:21
(34) очень просто

ИТ.ВыбратьСубконто(1);
Размер_СЗ = СписокСубконто.РазмерСписка();
Для н = 1 по Размер_СЗ Цикл
   ИТ.ПолучитьСубконто(1,,СписокСубконто.ПолучитьЗначение(н)));
43 CepeLLlka
 
26.09.13
17:23
(42)Спасибо.. это я знаю..
Я не знаю можно ли штатными средствами..
Если вдруг можно, а я тут велосипеды леплю, циклы рисую..
Это уж на крайняк.. если не выйдет.. как не вышло с (8)
44 Абыр
 
26.09.13
17:24
(40) Обходи свой СписокСубконто и собирай в ТЗ, например. Там где ИТ.ПолучитьСубконто() = 1 как в (42) берешь показатели из итогов, в противном случае - нолики.
45 Абыр
 
26.09.13
17:25
(43) Штатно не включить в выборку значения субконто, по которым совсем нет отличных от нуля итогов в запросе.
46 CepeLLlka
 
26.09.13
17:26
(44) Да это понятно..
(45) Вот это тот ответ который мне нужен :)
47 CepeLLlka
 
26.09.13
17:28
(45) А по (8)?
48 zak555
 
26.09.13
17:28
(45) включает

только баг, когда период запроса один день
49 CepeLLlka
 
26.09.13
17:30
(48)Он здесь про другое же, Зак..
Но по логике.. да.. почему тогда работает (8) на 2 дня..
50 CepeLLlka
 
26.09.13
17:32
Фигня какая-то.. у меня (34) На половину позиций работает.. на половину нет.. на контрагентов работает.. а на СтатьиОбщехозяйственныхЗатрат нет.. %)
51 CepeLLlka
 
26.09.13
17:34
Или может из-за счетов.. там 012, а тут 26..
52 zak555
 
26.09.13
17:36
(49) работает, если Дата2-Дата1 > 0


(50) (51) список счетов и их аналитику распиши
53 CepeLLlka
 
26.09.13
17:36
(45) Инфа 100% Включаются контрагенты по 012 счёту, а СтатьиОбщехозЗатрат по 26 не включаются :)
54 CepeLLlka
 
26.09.13
17:38
Ну 26 всё так-же..
А 012 - Кол+, Заб+, Акт - АП, Субконто1 - Контрагенты..

Всё..
55 zak555
 
26.09.13
17:38
(53) укажи так :

ИТ.ИспользоватьСубконто(, , 1, 1);

и будет тебе счастье =)
56 CepeLLlka
 
26.09.13
17:40
У меня так и есть

ИТ.ИспользоватьСубконто(ВидСубконто, СписокСубконто, 1, 1);
57 CepeLLlka
 
26.09.13
17:42
Хотя по группам можно убрать.. у меня не будет групп в этом отчёте..
58 Абыр
 
26.09.13
17:44
По (8)
То, что выборка пустая, если НачДата = КонДата и итогов на счете за этот день нет - это так и должно быть. Вопрос такой: если НачДата <> КонДата и при этом выборка по периодам непустая, точно-преточно итоги за эти дни пустые?
59 CepeLLlka
 
26.09.13
17:46
(58)Даааааааа инфа 146%

Только что перепроверил ещё раз..

9 452 670 - Ammy admin ID если не верите..
60 zak555
 
26.09.13
17:47
(56) убери ВидСубконто / СписокСубконто
61 CepeLLlka
 
26.09.13
17:47
(60)Почему?
62 CepeLLlka
 
26.09.13
17:48
(58)Вроде понял...
Данных за этот период нет.. но зато есть сальдо на начало..
Поэтому и есть выборка..
63 CepeLLlka
 
26.09.13
17:49
Ппц.. вот я лох.. очевидно же было..
64 zak555
 
26.09.13
17:50
(61) убери -- тогда итоги будут по двум счетам
65 Абыр
 
26.09.13
17:51
(63) Дык да, ТипИтогов в ВыполнитьЗапрос() надо учитывать
66 CepeLLlka
 
26.09.13
17:52
(64)Чего? :) Ты поехавший что-ли? :)

(65) Ща проверю... сделаю так.. чтобы сальдо было по 26 и нужному мне субконто, а движений не было.. и гляну будут выбирать и нет..
Но по логике то должны..
67 zak555
 
26.09.13
18:02
пример

Счет1 ВидСубконто1 есть итоги
Счет2 ВидСубконто2 есть итоги

хочу получить одни запросом итоги по двум счетам

если я напишу

ИТ.ИспользоватьСубконто(ВидСубконто1, , 1, 1);
ИТ.ВыполнитьЗапрос(Начало, КонДата, "Счет1,Счет2",,,1,,1);

то итоги будут только по счету1, ибо сточкой
ИТ.ИспользоватьСубконто(ВидСубконто1, , 1, 1);
я наложил фильтр на обработку результатов

а чтобы мне получить всё-таки итоги в разрезе аналитики мне надо написать следующее

ИТ.ИспользоватьСубконто(, , 1, 1);
ИТ.ВыполнитьЗапрос(Начало, КонДата, "Счет1,Счет2",,,1,,1);
68 CepeLLlka
 
26.09.13
18:03
(67)Не хочу тебя обижать конечно.. но мне кажется я нигде не писал тут что моя проблема заключается в том, что я не могу получить данные по двум счетам сразу..
Моя проблема несколько иного характера..
69 Grinot
 
26.09.13
18:10
Недавно был у юристов на консультации (http://www.adres495.ru/moskva/nalogovaya-21/), у них так же прога глючила
70 zak555
 
26.09.13
18:13
(68) в 54 и 51 говорится о двух счетах

(69) спамер, иди отсюдова
71 CepeLLlka
 
26.09.13
18:13
Кароче :) Не могу я создать сальдо на 2ом счёт с предыдущего месяца..

Так как они его закрывают.. причём закрывают общей суммой..
Я поставил по одной статье в дебет 26 за прошлый месяц большую сумму.. ну чтобы у меня он не полностью закрылся то..
И вот.. смотрю сальдо за август.. в общих итогах сальдо есть,  по статьям нет.. почему так.. тоже не знаю :)
АбабРЛБрБрБрБрБ :)
72 CepeLLlka
 
26.09.13
18:14
Вобщем выход один.. писать ЦЫыыыыклыы! :)
73 Абыр
 
27.09.13
09:07
(71) по статьям сальдо нет поди потому, что учет по этому субконто только по оборотам)
74 CepeLLlka
 
27.09.13
13:30
(73)Да :) Это я вечером дома уже нагуглил :)
75 CepeLLlka
 
01.10.13
12:02
Ребята.. это снова я..
Ухожу на обед.. задам вопрос.. может кто поможет..
Передаю параметр в функцию, ошибку выдаёт..

Функция Сделать(ТЗ = 0) - это работает норм..
А вот это..

Функция Сделать(ТЗ = ПолучитьПустоеЗначение()) - Не работает..
Это так и должно быть? Или я ошибся просто где-то?
76 Aleksey
 
01.10.13
12:06
так и должно
77 CepeLLlka
 
01.10.13
14:42
Это очень плохо..
А что если я хочу передать в этот параметр и цифру и число и дату к примеру.. ?
78 zak555
 
01.10.13
14:48
Перем ПолученноеПустоеЗначение;

Функция Сделать(ТЗ = ПолученноеПустоеЗначение)
//
КонецФункции

ПолученноеПустоеЗначение = ПолучитьПустоеЗначение();
79 CepeLLlka
 
01.10.13
14:50
(78)Во! Уважаю братишка! Спасибо тебе!
80 CepeLLlka
 
04.10.13
13:35
(78)Забил тогда.. сейчас вернулся к заданию..
Не работает это :(
81 Абыр
 
04.10.13
13:49
можно так, но это изврат:

Функция Сделать(ТЗ =  "НиктоИНикогдаНеПередастСюдаТакоеЗначение")
Если ТЗ = "НиктоИНикогдаНеПередастСюдаТакоеЗначение" Тогда
ТЗ = ПолучитьПустоеЗначение();
КонецЕсли;
КонецФункции
82 CepeLLlka
 
04.10.13
14:22
(81)Идея в (75)
Чтобы можно было передавать и "Текстт" и Цифру - 5, и 'Дату'
83 Абыр
 
04.10.13
15:09
(82) передавай, кто мешает? нет же строгой типизации