Имя: Пароль:
1C
1С v8
v8: СКД помогите с параметрами :((
0 Таня
 
09.03.12
11:53
Решаю задачу

Есть две таблицы оборотов. Надо выбрать значения из первой таблицы за прошлый месяц по отношению ко второй.
Самое интересное, что когда я делаю запрос в консоли запросов, то выдает полную таблицу с нужными данными, а в СКД не дает ничего..
http://savepic.net/2561410.htm
1 aleks-id
 
09.03.12
11:59
разницадат
2 Таня
 
09.03.12
12:00
что разницаДат?
3 aleks-id
 
09.03.12
12:03
тьфу ты. добавитькдате(тут_твоя_дата,месяц,-1)
4 Таня
 
09.03.12
12:04
пробовала, ошибку выдает. Щас покажу
5 Таня
 
09.03.12
12:09
вобщем выдает пустую таблицу, а если такое написать в консоль, то выдает только часть записей.
6 Таня
 
09.03.12
12:11
куда то пропадает строка с отделом продаж
7 Таня
 
09.03.12
13:07
Блин, почему в консоли есть а в скд нет?
8 Таня
 
09.03.12
14:46
Я щас с ума сойду
Почему когда я делаю обработку, в которой запрос
ВЫБРАТЬ
   БюджетОбороты.Подразделение,
   БюджетОбороты.Статья,
   БюджетОбороты.ПериодДействия,
   БюджетОбороты.ПланОборот,
   БюджетОбороты.ДопустимоеПревышениеПланаОборот
ИЗ
   РегистрНакопления.Бюджет.Обороты(, , Месяц, ПериодДействия МЕЖДУ &НачалоПериода И &КонецПериода) КАК БюджетОбороты

То оно работает, А когда это в СКД, то НЕТ!!!
9 Таня
 
09.03.12
14:48
Я щас заплачу!
10 PR
 
09.03.12
14:49
(9) Таня, неужели за восемь лет стажа на МиСте нельзя было научиться писать не капслоком? Позорище.
11 zladenuw
 
09.03.12
14:49
(8) а точно параметры заполняешь в скд ? может в этом причина.
12 Таня
 
09.03.12
14:49
Там НачалоПериода, тип Дата
и КонецПериода , тип Дата
13 Таня
 
09.03.12
14:50
(10) потому что с утра было нормально, а никто не помогал
14 zladenuw
 
09.03.12
14:55
так может указать НачалоПериода и КонецПериода для СКД, в параметрах виртуальной таблицы. хотя..
15 Таня
 
09.03.12
14:58
(14) я не могу их там указать, мне надо прошлый период.
К примеру если НачалоПериода = 01.03.12 и КонецПериода = 31.03.12
то мне надо записи из регистра за февраль
16 Таня
 
09.03.12
14:58
Когда я там пишу ДобавитьКДате(&НачалоПериода, Месяц, -1) то все равно выходит пустая таблица
17 zladenuw
 
09.03.12
15:03
(15) только за февраль или можно все записи  ? если все то указать только  конечную дату. по идее должны получить все обороты до даты конец...хотя.. это 1с :)
18 Таня
 
09.03.12
15:05
Все записи, у которых ПериодДействия = Март
19 zladenuw
 
09.03.12
15:11
(18) да но дата записи регистратора какая ? если судить из (15) то надо прошлый месяц
20 zladenuw
 
09.03.12
15:12
скинь базу. гляну. а то гуща
21 Таня
 
09.03.12
15:16
а куда скинуть?
22 echo77
 
09.03.12
15:18
не надо плакать. Смотри видеокурс п о СКД про установку параметров в виртуальных таблицах
23 Таня
 
09.03.12
15:19
все уже пересмотрела
24 Таня
 
09.03.12
15:19
через компоновку данных пробовала, не помогает
25 GROOVY
 
09.03.12
15:22
У тебя по дефолту в СКД параметры таблицы Бюджет.Обороты _устанавливаются_ а в консоли запросов они у тебя пустые.
26 GROOVY
 
09.03.12
15:22
Я про начало и конец периода.
27 Таня
 
09.03.12
15:23
все, я сделала кажись!
28 zladenuw
 
09.03.12
15:28
(27) да ?
29 Таня
 
09.03.12
15:39
нет, теперь по периодам не разворачивает :( щас выложу
30 Таня
 
09.03.12
15:40
31 Таня
 
09.03.12
15:44
все развернулось. В первой таблице просто месяц не надо было в периодичность ставить
32 Таня
 
09.03.12
15:47
блин, я с ума сойду с этой задачей. Если за два периода брать, то некоторые фактические обороты пропадают куда-то :( Зарплата и ОплатаПокупателей
33 zladenuw
 
09.03.12
15:50
(32) покажи весь код запроса
34 Таня
 
09.03.12
15:51
ВЫБРАТЬ
   ЕСТЬNULL(БюджетОбороты.Подразделение, ДеньгиОбороты.Подразделение) Как Подразделение,
   ЕСТЬNULL(БюджетОбороты.ПериодДействия,ДеньгиОбороты.Период) Как ПериодДействия,
   ЕСТЬNULL(БюджетОбороты.ПланОборот, 0) + ЕСТЬNULL(БюджетОбороты.ДопустимоеПревышениеПланаОборот, 0) КАК План,
   ЕСТЬNULL(ДеньгиОбороты.СуммаОборот, 0) КАК Факт,
   ЕСТЬNULL(ДеньгиОбороты.СуммаОборот, 0) * 100 / (ЕСТЬNULL(БюджетОбороты.ПланОборот, 0) + ЕСТЬNULL(БюджетОбороты.ДопустимоеПревышениеПланаОборот, 0)) КАК ПроцентИсполнения,
   ЕСТЬNULL(БюджетОбороты.Статья, ДеньгиОбороты.Статья) Как Статья
ИЗ
   РегистрНакопления.Бюджет.Обороты({(ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -1)) КАК НачалоПредыдущегоПериода}, {(ДОБАВИТЬКДАТЕ(&КонецПериода, МЕСЯЦ, -1)) КАК КонецПредыдущегоПериода}, , ПериодДействия МЕЖДУ &НачалоПериода И &КонецПериода) КАК БюджетОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Деньги.Обороты(&НачалоПериода, &КонецПериода, Месяц, ) КАК ДеньгиОбороты
       ПО БюджетОбороты.Подразделение = ДеньгиОбороты.Подразделение
           И БюджетОбороты.Статья = ДеньгиОбороты.Статья
           И БюджетОбороты.ПериодДействия = ДеньгиОбороты.Период
35 zladenuw
 
09.03.12
15:53
хм. в консоле пусто если ставлю период 1.03 по 31.03
36 acsent
 
09.03.12
15:55
автозаволнение отключи
37 Таня
 
09.03.12
15:56
(35)там конецПериода сверху если че
38 Таня
 
09.03.12
15:56
(36) не поняла
39 zladenuw
 
09.03.12
15:58
хм. так выводит
ВЫБРАТЬ
   ЕСТЬNULL(БюджетОбороты.Подразделение, ДеньгиОбороты.Подразделение) КАК Подразделение,
   ЕСТЬNULL(БюджетОбороты.ПериодДействия, ДеньгиОбороты.Период) КАК ПериодДействия,
   ЕСТЬNULL(БюджетОбороты.ПланОборот, 0) + ЕСТЬNULL(БюджетОбороты.ДопустимоеПревышениеПланаОборот, 0) КАК План,
   ЕСТЬNULL(ДеньгиОбороты.СуммаОборот, 0) КАК Факт,
   ЕСТЬNULL(ДеньгиОбороты.СуммаОборот, 0) * 100 / (ЕСТЬNULL(БюджетОбороты.ПланОборот, 0) + ЕСТЬNULL(БюджетОбороты.ДопустимоеПревышениеПланаОборот, 0)) КАК ПроцентИсполнения,
   ЕСТЬNULL(БюджетОбороты.Статья, ДеньгиОбороты.Статья) КАК Статья
ИЗ
   РегистрНакопления.Бюджет.Обороты({(ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -1)) КАК НачалоПредыдущегоПериода}, {(ДОБАВИТЬКДАТЕ(&КонецПериода, МЕСЯЦ, -1)) КАК КонецПредыдущегоПериода}, , ) КАК БюджетОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Деньги.Обороты(&НачалоПериода, &КонецПериода, Месяц, ) КАК ДеньгиОбороты
       ПО БюджетОбороты.Подразделение = ДеньгиОбороты.Подразделение
           И БюджетОбороты.Статья = ДеньгиОбороты.Статья
           И БюджетОбороты.ПериодДействия = ДеньгиОбороты.Период
40 zladenuw
 
09.03.12
16:01
почему то вот это не хочет обрабатывать ПериодДействия МЕЖДУ &НачалоПериода И &КонецПериода
41 Таня
 
09.03.12
16:01
(39) ты убрал проверку на период действия. А если в феврале забьют бюджет за май к примеру?
42 Таня
 
09.03.12
16:03
я не пойму куда пропадают факт обороты за март по статье зарплата и оплата покупателей.
43 Таня
 
09.03.12
16:06
http://savepic.net/2610591.htm

это за март -апрель
http://savepic.net/2601375.htm а это за март только
44 zladenuw
 
09.03.12
16:08
индексацию у поля ПериодДействия поставь.
45 Таня
 
09.03.12
16:10
(44) поставила, ничего не изменилось
46 Таня
 
09.03.12
16:12
я правильно поняла у измерения в регистре поставить
47 zladenuw
 
09.03.12
16:14
да. хотя это не вариант
48 Таня
 
09.03.12
16:21
в общем почему то не попадают обороты сделанные документам Расход денег и приход денег
49 Таня
 
09.03.12
16:21
а почему не пойму, все же одинаковое
50 Wern
 
09.03.12
16:31
А почему ты конечную дату на 0 часов берешь? ты же теряешь день. Подозреваю что в этом и дело, когда берешь за март берешь не включая 31 марта, а когда за март-апрель включая 31 марта, видимо 31 марта идет отрицательный оборот который и убивает сумму.
51 Таня
 
09.03.12
16:36
это полтергейст. переделала все документы на январь -февраль и все попало куда нужно. Наверное документы просто с ума сошли вместе со мной.

(50) конечную дату где?
52 Таня
 
09.03.12
16:38
в отчете?
53 Таня
 
09.03.12
16:39
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Деньги.Обороты(&НачалоПериода, КонецПериода(&КонецПериода), Месяц, )
Так надо?
54 Таня
 
09.03.12
16:43
ну или заменю его стандартным периодом, будет конец дня брать.
55 Таня
 
09.03.12
16:44
Всем спасибо!
Ошибка? Это не ошибка, это системная функция.