![]() |
![]() |
![]() |
|
Запрос к оборотному регистру | ☑ | ||
---|---|---|---|---|
0
Asadoff
09.06.12
✎
23:09
|
//
Функция ПолучитьНндОснНач(Начало,Конец,Код) Экспорт Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СУММА(РегистрПланСчетовОсновнойОбороты.СуммаОборотКт) КАК СуммаОборотКт |ИЗ | РегистрБухгалтерии.РегистрПланСчетовОсновной.Обороты | (&НачДата, &КонДата, , Счет.Код = &СчетКт, , ) | КАК РегистрПланСчетовОсновнойОбороты"; Запрос.УстановитьПараметр("СчетКт", Код); Запрос.УстановитьПараметр("НачДата", Начало); Запрос.УстановитьПараметр("КонДата", Конец); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Возврат ВыборкаДетальныеЗаписи.СуммаОборотКт; КонецЦикла; КонецФункции // Что не так? Параметры запросу передаются а при этом функция возвращает 0. (в регистре точно есть данные = проверял) Помогите плиз ногами больно не бить (первые попытки написать запрос) |
|||
1
Пеппи
09.06.12
✎
23:13
|
типичная ошибка- перепутал даты у параметров. :)
|
|||
2
Лефмихалыч
09.06.12
✎
23:20
|
передавай не код счета, а ссылку и в запросе сравнива "СчетКт = &СчетКт" безо всяких кодов
|
|||
3
Asadoff
09.06.12
✎
23:21
|
||||
4
Пеппи
09.06.12
✎
23:23
|
Движения были только первого числа? Обрати внимание на секунды у даты.
|
|||
5
Лефмихалыч
09.06.12
✎
23:23
|
а какого хрена счет делает в оборотном регистре?
|
|||
6
Пеппи
09.06.12
✎
23:24
|
а нет, у тебя месяцы разные же.
|
|||
7
Пеппи
09.06.12
✎
23:25
|
Проверяй свой запрос сначала в консоли отчетов, так лучше будет для тебя.
|
|||
8
Asadoff
09.06.12
✎
23:25
|
(4) Движения были посередине периода
(5) Это Оборотный регистр Бухгалтерии, там кореспонденции должны быть |
|||
9
Лефмихалыч
09.06.12
✎
23:28
|
(8) для корреспонденций придуманы регистр бухгалтерии. Сдается мне, экзамент ты завалишь
|
|||
10
Пеппи
09.06.12
✎
23:28
|
Скорее всего что у тебя ошибка со счетом.
Обычно пишут так Счет=&Счет Запрос.УстановитьПараметр("СчетКт", ПланыСчетов.Хозрасчетный.Материалы); |
|||
11
Лефмихалыч
09.06.12
✎
23:30
|
(10) играй гармонь (2)
|
|||
12
Пеппи
09.06.12
✎
23:30
|
У тебя типовая конфигурация? Я подумала уже что самодельная.
|
|||
13
Пеппи
09.06.12
✎
23:31
|
(11) я подробнее ))
|
|||
14
Asadoff
09.06.12
✎
23:33
|
||||
15
Asadoff
09.06.12
✎
23:34
|
(10) передача счета происходит из формы документа
// Стр.НндОснНач = ОбщиеБух.ПолучитьНндОснНач(НачалоГода(Объект.Дата),НачалоМесяца(Объект.Дата),Стр.НндОснКт); // |
|||
16
Живой Ископаемый
09.06.12
✎
23:36
|
погодите... а как РБ может быть "оборотным"?
|
|||
17
Живой Ископаемый
09.06.12
✎
23:36
|
2(9)у него так и написано:
РегистрБухгалтерии.РегистрПланСчетовОсновной |
|||
18
Asadoff
09.06.12
✎
23:42
|
||||
19
Asadoff
09.06.12
✎
23:44
|
||||
20
Asadoff
09.06.12
✎
23:47
|
(9) на тему экзамена = ЭтоДляМеняКомплимент;
(я только учусь, опыт 0, обучение около месяца...) |
|||
21
Живой Ископаемый
09.06.12
✎
23:47
|
2(19) да, напутал. РБ не бывает оборотным или необоротным. Он в общем-то всегда остаточный, по крайней мере по счетам (по каждой отдельной аналитике, если для нее указано что она оборотная - оборотный), а то что ты показал - это виртуальная таблица "Обороты" твоего РБ.
И она например может быть пустой.. Например потому что итоги не рассчитаны. Физические записи в регистре есть, а оборотов - нет |
|||
22
Лефмихалыч
09.06.12
✎
23:47
|
(19) ты всех запутал. Это не оборотный регистр, а регистр бухгалтерии и иего виртуальная таблица Обороты. Матчасть у тебя не курена
|
|||
23
Asadoff
09.06.12
✎
23:49
|
я предупреждал))) я реально первые запросы пишу!
|
|||
24
Живой Ископаемый
09.06.12
✎
23:51
|
запросы тут к счастью не при чем.
|
|||
25
Asadoff
09.06.12
✎
23:53
|
(21) (22) тогда с регистра (а не с ВТ) должно всё получиться!
пошел делать. Спасибо всем, вы оперативно вмешались в мои мучения! |
|||
26
Живой Ископаемый
09.06.12
✎
23:54
|
2(25) ну то есть рассчитать итоги по регистру и сделать как надо - это выше твоих сил?
|
|||
27
Asadoff
09.06.12
✎
23:59
|
(26) В данной конфе могут не быть расчитаны итоги, так как возмажны ситуации когда всё будет вводиться один раз в квартал (или полугодие)
|
|||
28
Asadoff
10.06.12
✎
00:12
|
Всё как Вы и говорили
// Функция ПолучитьНндОснНач(Начало,Конец,Код) Экспорт Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СУММА(РегистрПланСчетовОсновной.Сумма) КАК Сумма |ИЗ | РегистрБухгалтерии.РегистрПланСчетовОсновной КАК РегистрПланСчетовОсновной |ГДЕ | РегистрПланСчетовОсновной.Период > &НачДата | И РегистрПланСчетовОсновной.Период < &КонДата | И РегистрПланСчетовОсновной.Счет.Ссылка = &СчетКт"; Запрос.УстановитьПараметр("СчетКт", Код); Запрос.УстановитьПараметр("НачДата", Начало); Запрос.УстановитьПараметр("КонДата", Конец); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Возврат ВыборкаДетальныеЗаписи.Сумма; КонецЦикла; КонецФункции // Работает на ура!!!! Из регистра а не из ВТ |
|||
29
Asadoff
10.06.12
✎
00:14
|
Долго я бы без вас мучался!
Искренне благодарен, большое человеческое Спасибо! |
|||
30
hhhh
10.06.12
✎
01:16
|
(29) а за что спасибо. в реальной жизни всё получают из ВТ. Получается, ты ничему не научился.
|
|||
31
Asadoff
10.06.12
✎
01:32
|
(30) Почему же? Принципы одни и те же, или ещё что-то я не учёл?
|
|||
32
Asadoff
10.06.12
✎
01:50
|
(30) А разве ВТ не создают дополнительные запросы, которые по сравнению с обращением к регистру являются более ресурсоёмкие?
Или я снова что-то напутал? (в примере что выше, нет принципиальной разнице по производительности, а при этом из ВТ если не подсчитаны все ИТОГИ данные получаем неадекватные, а из регистра всегда пож-та!) Разве в конкретном случае что-то теряется? |
|||
33
hhhh
10.06.12
✎
02:08
|
(32) как раз наоборот. ВТ - это промежуточные сгуппированные данные. Допустим в регистре за месяц у тебя лежат 100000 записей, а в вт обороты по месяцам 1000 записей. Ну и прикинь, где более ресурсоемкое.
|
|||
34
Asadoff
10.06.12
✎
02:27
|
(33) Это весомый довод, я обязательно учту эту особенность ВТ.
(просто на сегодняшний день поставлена задача написать первую (примитивную, конечно) конфигурацию, она пишется больше в целях обучения... простейший учёт услуг на микропредприятии с одним видом деятельности и одним приходящим бухгалтером... песочница для начинающего))) трудности ещё впереди, и придёт и их черёд а сегодня я радуюсь как ребёнок (или как сборная России, 4/1 после матча с Чехом), от того, что заработал первый запрос! |
|||
35
Худой
10.06.12
✎
15:21
|
(33)Можно сказать, что ВТ это аналог вьюшки в оракле или прочей СУБД?
|
|||
36
sapphire
10.06.12
✎
15:45
|
(35) чердак совсем поехал?
|
|||
37
Пеппи
10.06.12
✎
15:56
|
(36) Почему? Недавно только обсуждали эту тему и вынесли такой же вердикт. :)
|
|||
38
Худой
10.06.12
✎
17:30
|
(36)Ты себе диагноз ставишь?
Ты, хоть раз, с нормальными СУБД работал? |
|||
39
Живой Ископаемый
10.06.12
✎
18:14
|
2(35) более или менее.
|
|||
40
sapphire
10.06.12
✎
19:03
|
(37)(38) ВТ к вьюшкам не относится никак.
|
|||
41
Живой Ископаемый
10.06.12
✎
19:04
|
2(40)ктож тебе поверит...
|
|||
42
sapphire
10.06.12
✎
19:05
|
(41) пофиг, но истина дороже (с)
|
|||
43
Живой Ископаемый
10.06.12
✎
19:07
|
да, мы знаем.. слава богу (40) к истине не относится никак...
|
|||
44
sapphire
10.06.12
✎
19:09
|
(43) в (37)(38) я тебя не заметил
|
|||
45
Худой
11.06.12
✎
02:43
|
Хорошо. Если, уж, "истина дороже". Тогда что такое виртуальные таблицы?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |