Имя: Пароль:
1C
1C 7.7
v7: Помогите с запросом в 1с 7.7
0 Dmitry1c
 
29.12.13
16:13
Отличается итог по количеству с итогом по оборотке. Что я делаю не так?

        Ит=СоздатьОбъект("БухгалтерскиеИтоги");
    Ит.ИспользоватьПланСчетов(ПланыСчетов.Основной);
    Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура,,1);
    Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты,,1);
    Ит.ИспользоватьСубконто(ВидыСубконто.Договоры,,1);
    Ит.ВыполнитьЗапрос(,ДатаНачала,"ТАР.П",,,,,"К");
    Ит.ВыбратьСубконто(1);
    Пока Ит.ПолучитьСубконто()=1 Цикл
            
    Ит.ВыбратьСубконто(2);
    
    Пока Ит.ПолучитьСубконто(2) = 1 Цикл
        
        
        Ит.ВыбратьСубконто(3);
        
        Пока Ит.ПолучитьСубконто(3) = 1 Цикл
                
                Если Ит.СКД("К")<>0 Тогда
                    
                    тзТара.НоваяСтрока();
                    тзТара.Номенклатура=Ит.Субконто(1);
                    тзТара.Контрагент = Ит.Субконто(2);
                    тзТара.Договор    = Ит.Субконто(3);
                    тзТара.Количество  =Ит.СКД("К");
                    
                    
                    
                КонецЕсли;
                
            КонецЦикла;  
        КонецЦикла;
        

    КонецЦикла;
    
    тзТара.ВыбратьСтроку();
    
    
    ИтогКол = тзТара.Итог("Количество");
    Сообщить(ИтогКол);
1 Dmitry1c
 
29.12.13
16:14
Точнее, не с запросом, а с кодом...
2 Dmitry1c
 
29.12.13
16:15
Причем, если делать выборку только по номенклатуре (уровень 1), то количество совпадает, а в моем случае больше.
3 Dmitry1c
 
29.12.13
16:17
Может я в оборотку криво смотрю? Ибо общего итога по количеству в ней нет, я просто на калькуляторе посчитал.
4 Voronve
 
29.12.13
16:22
Сам понимаешь, время тяжелое, предновогоднее - подарки жене, любовнице, бушке ...
Сколько ?
5 Dmitry1c
 
29.12.13
16:23
(4) а ты проблему увидел?
6 Dmitry1c
 
29.12.13
16:23
(4) точнее, ошибку
7 Dmitry1c
 
29.12.13
16:29
Насколько я понял, у меня написано все правильно, но оборотка почему-то меньшие остатки показывает
8 Dmitry1c
 
29.12.13
16:31
Этот код возвращает результат по количеству меньше, чем в (0)


Ит=СоздатьОбъект("БухгалтерскиеИтоги");
    Ит.ИспользоватьПланСчетов(ПланыСчетов.Основной);
    Ит.ИспользоватьСубконто(ВидыСубконто.Номенклатура,,1);
    Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты,,1);
    Ит.ИспользоватьСубконто(ВидыСубконто.Договоры,,1);
    Ит.ВыполнитьЗапрос(,ДатаНачала,"ТАР.П",,,,,"К");
    Ит.ВыбратьСубконто(1);
    Пока Ит.ПолучитьСубконто()=1 Цикл
            
    //Ит.ВыбратьСубконто(2);
    
    //Пока Ит.ПолучитьСубконто(2) = 1 Цикл
        
        
        //Ит.ВыбратьСубконто(3);
        
       // Пока Ит.ПолучитьСубконто(3) = 1 Цикл
                
                Если Ит.СКД("К")<>0 Тогда
                    
                    тзТара.НоваяСтрока();
                    тзТара.Номенклатура=Ит.Субконто(1);
                    тзТара.Контрагент = Ит.Субконто(2);
                    тзТара.Договор    = Ит.Субконто(3);
                    тзТара.Количество  =Ит.СКД("К");
                    
                    
                    
                КонецЕсли;
                
            //КонецЦикла;  
        //КонецЦикла;
        

    КонецЦикла;
    
    тзТара.ВыбратьСтроку();
    
    
    ИтогКол = тзТара.Итог("Количество");
    Сообщить(ИтогКол);
9 ТакВотЖе
 
29.12.13
16:40
выводишь ТЗ на просмотр и ответа на свой вопрос в ней не видишь?
10 Dmitry1c
 
29.12.13
16:43
(9) вижу, что результаты в ТЗ отличаются, хочу понять - почему. И мне нужен результат как в (8)
11 Dmitry1c
 
29.12.13
16:44
(9) только чтобы там разбивка еще по контрагентам и договорам была.
12 Dmitry1c
 
29.12.13
16:49
Блин. Вроде простой вопрос.

Почему результат по количеству в (0) и в (8) отличается?
13 ТакВотЖе
 
29.12.13
16:58
ну, я же ТЗ не вижу)
14 Dmitry1c
 
29.12.13
17:00
В оборотке 7.7 вообще можно итог по количеству посмотреть?
15 Voronve
 
29.12.13
17:00
(12) Да потому что у тебя в 0 и 8 разница по детализации. В результате детализация по первому субконто совпадает а далее - нет. Ищи в БД проаодки с незаполненным 2 и 3 субконто
16 ТакВотЖе
 
29.12.13
17:02
(14) в общем случае количество не суммируется, потому что суммировать штуки с метрами и литрами как-то не айс)
17 Dmitry1c
 
29.12.13
17:04
(16) там счет забалансовый, руками добавленный, по которому учет ведется по количеству только в штуках
18 ТакВотЖе
 
29.12.13
17:05
ну, нарисуй для него оборотку и прикрути туда итог по количеству) делов-то)
19 Dmitry1c
 
29.12.13
17:07
(15) есть пустые субконто, но там остатки по кредиту, я их не учитываю (вроде как)
20 Dmitry1c
 
29.12.13
19:35
пока ап
21 ТакВотЖе
 
29.12.13
19:46
чего зря апать-то)
давай базу или TeamViewer
22 viktor_vv
 
29.12.13
20:38
А счет какой, активно-пассивный ? Тогда у тебя по первому субконто свернутые остатки, а детальные развернутые. То есть сальдо дебетовое по номенклатуре учитывает кредитовые сальдо по нижним группировкам.
23 viktor_vv
 
29.12.13
20:39
Если не ошибаюсь используй тогда СКДРС()
24 viktor_vv
 
29.12.13
20:42
(23) + Только в выбратьСубконто() пятый параметр установи.
25 Dmitry1c
 
29.12.13
21:00
(22) забалансовый счет, правда на нем есть помимо дебетовых остатков и кредитовые остатки(!)
26 Dmitry1c
 
29.12.13
21:00
(24) и спасибо за помощь, хоть что-то смогу проверить
27 Dmitry1c
 
29.12.13
21:01
пока делаю пересчет итогов, мало ли базка битая
28 Dmitry1c
 
29.12.13
21:03
Так. Тестирование и исправление - только пересчет итогов. Сколько будет делаться на базке 5 гб?
29 viktor_vv
 
29.12.13
21:05
(28) сколько весит 1sentry.dbf ? Но скорее всего то что я написал.
30 Dmitry1c
 
29.12.13
21:05
(24) у оборотки есть развернутое сальдо тоже. И оно тоже не совпадает с итогом с примером кода в (0)
31 Dmitry1c
 
29.12.13
21:06
(29) 1.5 гб
32 hhhh
 
29.12.13
21:08
до боя курантов
33 Dmitry1c
 
29.12.13
21:09
(32) в смысле не до сегодняшней ночи даже? имеет смысл убить процесс и скопировать базу заново?
34 viktor_vv
 
29.12.13
21:09
(31) тогда надолго, наверное в часах измеряется, смотря какой комп.
35 Dmitry1c
 
29.12.13
21:10
(34) ксеон 2.0, 8 оперативки, дисковая подсистема неизвестна
36 viktor_vv
 
29.12.13
21:13
И это, там при превышении 1гига дбфки могут уже глюки появляться, на регистрах так точно, на бухитогах не уверен, но таки поискал бы заплатку hogik'а , ну и порезать бы не мешало от греха подальше. А то на 2 гигах уже будет в любом случае грустно.
37 Dmitry1c
 
29.12.13
21:14
(36) именно вот этой дбфки? я в семерке мало чего понимаю.
38 viktor_vv
 
29.12.13
21:22
(37) глюки после 1 гига этой , это файл с проводками (не уверен) и RAXXX для регистров. 2гига ограничение на размер любой дбфки.
39 Dmitry1c
 
29.12.13
21:29
(38) все, я все понял, у меня все правильно, просто в оборотке в случае остатков по кредиту по другому договору у контрагента оборотка их как раз сворачивает в минус в деталях
40 Dmitry1c
 
29.12.13
21:29
(38) спасибо большое!