Имя: Пароль:
1C
1C 7.7
v7: поясните плиз по бухитогам
0 DES
 
23.10.12
18:30
Есть
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч,,,,"День","С");
Дает
БухИт.СНД() нуль
БухИт.СКД() нуль
А
БухИт.ВыполнитьЗапрос(,ДатаДок,Сч,,,,"День","С");
БухИт.СНД() 123.45
БухИт.СКД() 123.45

Почему на день документа не расчитывается СНД  в первом случае ?
1 zak555
 
23.10.12
18:33
а так что даёт
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч,,,,"День",1);

?
2 zak555
 
23.10.12
18:33
+ может наоборот результаты ?
3 DES
 
23.10.12
18:37
(1) так это одинаково
4 zak555
 
23.10.12
18:37
(3) ты провеь
5 DES
 
23.10.12
18:38
Проверил.

На счету есть сумма до этого дня.
почему она не отображается ?
БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета,БанковскийСчет,2);
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч,,,,"День","S");

пусто
6 DES
 
23.10.12
18:39
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
и так пусто
7 DES
 
23.10.12
18:40
счет дебетовый активный
8 zak555
 
23.10.12
18:40
ты лучше задачу опиши, что нужно получить
9 zak555
 
23.10.12
18:41
так что покажет

БухИт.ВыполнитьЗапрос(ТекущийДокумент(),ТекущийДокумент() ,Сч,,,,"День","S");
10 DES
 
23.10.12
18:48
так тоже 0
11 zak555
 
23.10.12
18:48
а так

БухИт.ВыполнитьЗапрос(ТекущийДокумент(),ТекущийДокумент() ,Сч);
12 DES
 
23.10.12
18:48
нужно получить на форме банковской выписки надпись сколько на счету бабок.
13 zak555
 
23.10.12
18:49
в СЧ точно 51 счет ?
14 DES
 
23.10.12
18:50
точно,
так же
БухИт.ВыполнитьЗапрос(,ДатаДок,Сч,,,,"День","С");
правильную сумму показывает
15 Ёпрст
 
23.10.12
18:52
пересчитай итоги
16 zak555
 
23.10.12
18:53
> нужно получить на форме банковской выписки надпись сколько на счету бабок

ва что в типовой конфе этиого нет ?
17 DES
 
23.10.12
18:54
(15) уже не раз
(16) это не типовая, типовой - нет
18 Chai Nic
 
23.10.12
18:54
Вообще, если нужно получить только сальдо, без оборотов - не надо указывать начальную дату. Это значительно облегчит выполнение запроса.
19 DES
 
23.10.12
18:54
(18) т.е. ?
20 Chai Nic
 
23.10.12
18:56
И еще, непонятно, накойфиг указывать период в запросе "День", если нужны остатки.
21 DES
 
23.10.12
18:57
(20) это уже танцы с бубном
изначально так
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
22 Chai Nic
 
23.10.12
19:00
(21) Забей на эти танцы. В любом случае перидичность итогов тут не нужна.
Разбирайся с отбором по субконто...
23 DES
 
23.10.12
19:04
спс
24 Ёпрст
 
23.10.12
19:08
размер таблички бухитогов какой хоть ?
ВК есть, если да, то какие ?
bkend32 родной ?
25 Chai Nic
 
23.10.12
19:12
БИ=СоздатьОбъект("БухгалтерскиеИтоги");
БИ.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета,БанкСчет,2);
БИ.ВыполнитьЗапрос(,ВыбДата,"51");
Сальдо=БИ.СКД("С");
Сообщить(Сальдо);

--
Вот так точно работает.
26 DES
 
23.10.12
22:09
размер нормальный
ВК есть формекс, 1с++ и еще 3-4
bkend32 наверно родной
27 DES
 
24.10.12
12:18
Ы, ничего не понимаю...

   БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
   БухИт.ВыполнитьЗапрос(,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());

дает

БухИт.СНД()=0
БухИт.СКД()=17910.49
БухИт.СНД()=234939.89
БухИт.СКД()=234939.89

правильно ?
28 DES
 
24.10.12
12:20
а вот так
   //БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
   //Сообщить("БухИт.СНД()=" + БухИт.СНД());
   //Сообщить("БухИт.СКД()=" + БухИт.СКД());
   БухИт.ВыполнитьЗапрос(,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
дает
БухИт.СНД()=17910.49
БухИт.СКД()=17910.49
29 DES
 
24.10.12
12:20
Памагитяяяяя!!!!
30 пипец
 
24.10.12
12:23
чудес не бывает
31 chief accountant
 
24.10.12
12:27
(29) в твоей супер-пупер нетиповой конфе хоть что-то типовое есть?
32 DES
 
24.10.12
12:32
нет
33 zak555
 
24.10.12
12:34
удали все ВК и попробуй заново
34 Ёпрст
 
24.10.12
12:35
И это, bkend32 воткни родной.
35 zak555
 
24.10.12
12:36
автор, у тебя БД файловая ?
36 DES
 
24.10.12
12:38
да
37 DES
 
24.10.12
12:39
удалил ВК
   БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
   БухИт.ВыполнитьЗапрос(,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
   БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
дает
БухИт.СНД()=0
БухИт.СКД()=17910.49
БухИт.СНД()=234939.89
БухИт.СКД()=234939.89
БухИт.СНД()=217029.4
БухИт.СКД()=234939.89
38 DES
 
24.10.12
12:40
по идее правильное вот это
БухИт.СНД()=217029.4
39 zak555
 
24.10.12
12:42
херня какая-то
40 zak555
 
24.10.12
12:42
чему равен СЧ и датаДок ?
41 DES
 
24.10.12
12:42
bKEnd 7.70.027  2.68мБ 04-12-2006
42 DES
 
24.10.12
12:44
сч = СчетПоКоду("###.#")
ДАтаДок =  01.10.2012
43 DES
 
24.10.12
12:46
###.# мои цифры
44 zak555
 
24.10.12
12:47
какие цифры -- распиши счёт
45 DES
 
24.10.12
12:48
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч.Код);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
БухИт.ВыполнитьЗапрос(,ДатаДок,Сч.Код);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч.Код);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
БухИт.ВыполнитьЗапрос(,ДатаДок,Сч.Код);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч.Код);
   Сообщить("БухИт.СНД()=" + БухИт.СНД());
   Сообщить("БухИт.СКД()=" + БухИт.СКД());
   
дает
БухИт.СНД()=0
БухИт.СКД()=17910.49

БухИт.СНД()=234939.89
БухИт.СКД()=234939.89

БухИт.СНД()=217029.4
БухИт.СКД()=234939.89

БухИт.СНД()=234939.89
БухИт.СКД()=234939.89

БухИт.СНД()=217029.4
БухИт.СКД()=234939.89
46 DES
 
24.10.12
12:49
(44) разве не без разницы ?
47 zak555
 
24.10.12
12:50
напиши так :


Сч = СчетПоКоду("51")
48 zak555
 
24.10.12
12:51
ИспользоватьСубконто ты точно не используешь ?
49 DES
 
24.10.12
12:54
(48) не помогло
50 DES
 
24.10.12
12:54
использую
51 zak555
 
24.10.12
12:56
весь код показывай
52 DES
 
24.10.12
12:57
см. (5)
53 DES
 
24.10.12
13:00
вот так вроде бы правильно
БухИт.ВыполнитьЗапрос(,ДатаДок,Сч.Код);
БухИт.ВыполнитьЗапрос(ДатаДок,ДатаДок,Сч.Код);
Сообщить("БухИт.СНД()=" + БухИт.СНД());
Сообщить("БухИт.СКД()=" + БухИт.СКД());
54 Chai Nic
 
24.10.12
13:17
(53) Что за ахинея, запрос два раза, зачем?
55 Chai Nic
 
24.10.12
13:26
Читайте ЖКК - если указана только конечная дата, то рассчитывается только конечные сальдо. То, что возвратят методы получения начальных сальдо, в таком режиме не определено в документации, и в принципе может быть каким угодно - к ним не следует обращаться.
Так же, с точностью до наоборот - если указана только дата начала.
56 DES
 
24.10.12
13:30
почему тогда оно работае так ?
57 DES
 
24.10.12
13:31
Если не дать первый Запрос, по второй выдаст нули
58 Chai Nic
 
24.10.12
13:38
Так вам нужно начальное сальдо или нет? Начнем с этого.
59 DES
 
24.10.12
13:44
нужно начальное сальдо на день поведения выписки
60 DES
 
24.10.12
13:44
или мне взять конечное за день до выписки ?
61 Chai Nic
 
24.10.12
13:45
Тогда вот как-то так надо
--

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

--
62 DES
 
24.10.12
13:55
оки, щас проверю
63 chief accountant
 
24.10.12
13:57
база SQL?
64 DES
 
24.10.12
13:59
Нуль !
65 DES
 
24.10.12
14:00
DBF
66 DES
 
24.10.12
14:01
а вот так работает
   БухИт.ВыполнитьЗапрос(,,Сч);
   БухИт.ВыполнитьЗапрос(ДатаДок,,Сч);
67 chief accountant
 
24.10.12
14:02
(65) странно, но попробуй в обычный запрос как в (1) добавить
БухИт.ВыбратьСчета(1);
Пока БухИт.ПолучитьСчет()=1 Цикл
68 Chai Nic
 
24.10.12
14:10
(64) А в ОСВ по счету что выдает?
69 chief accountant
 
24.10.12
14:13
(68) ничего, ибо (32)
70 Chai Nic
 
24.10.12
14:14
Предлагаю выгрузить тестовую базу и выложить на файлообменик какой-нибудь.
71 DES
 
24.10.12
14:23
ОСВ
Оборотно-сальдовая ведомость по счету: ###.1                        
Банковские счета                        
за Октябрь 2012 г.                        
Субконто    Сальдо на начало периода        Обороты за период        Сальдо на конец периода    
   Дебет    Кредит    Дебет    Кредит    Дебет    Кредит
<...>    217 029,40                217 029,40    
Расчетный счет            72 628,36    55 405,42    17 222,94    
Итого развернутое    217 029,40                234 252,34    
Итого    217 029,40        72 628,36    55 405,42    234 252,34
72 Chai Nic
 
24.10.12
14:25
(71) Нафига за октябрь, ты за ДатаДок давай
73 DES
 
24.10.12
14:26
Датадок 01.10.12
74 chief accountant
 
24.10.12
14:30
(73) нутык сделай ОСВ за один день
75 DES
 
24.10.12
14:31
Сальдо на начало          обороты      сальдо на конец  
Дебет      Кредит Дебет    Кредит      Дебет    Кредит
217029,40                217029,40    
       72628,36 55405,42       17 222,94
76 DES
 
24.10.12
14:31
за день
217 029,40                217 029,40
       18 012,00    101,51    17 910,49
77 DES
 
24.10.12
14:32
итого
217029,40        18012,00    101,51    234939,89
78 DES
 
24.10.12
14:34
(70) не могу.
Долго ржать будете, не сможете работать, вас уволят
79 chief accountant
 
24.10.12
14:36
(76) ну тык значит запрос покажет
БИ=СоздатьОбъект("БухгалтерскиеИтоги");
БИ.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета,БанкСчет,2);
БИ.ВыполнитьЗапрос(ДатаДок,ДатаДок,"51");

БИ.СНД()=0
БИ.ДО()=18012,00
БИ.КО()=101,51
БИ.СКД()=17910,49
80 Chai Nic
 
24.10.12
14:37
А почему в ОСВ пустое субконто <...>?
81 chief accountant
 
24.10.12
14:39
(80) не выбран р/с в проводках
82 DES
 
24.10.12
14:58
(79) а как правильно получить БИ.СНД()=217 029,40  ?
83 chief accountant
 
24.10.12
14:59
(82) убрать
БИ.ИспользоватьСубконто(ВидыСубконто.БанковскиеСчета,БанкСчет,2);
84 DES
 
24.10.12
15:22
так мне же нужно по определенному счету !!!
85 Chai Nic
 
24.10.12
15:24
(82) Если надо по определенному счету - используй субконто (которое и является расчетным счетом). Если надо в целом по всем банковским счетам - не используй.
86 DES
 
24.10.12
15:32
кажется что-то начинаю понимать
87 chief accountant
 
24.10.12
15:43
(86) чего там понимать? В ОСВ все видно
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.