Имя: Пароль:
1C
1С v8
Запросы, период, и виртуальные таблицы.
0 kasazanov
 
08.12.12
16:45
Доброго времени суток.
Потихоньку вливаюсь в программирование на 1С. Создавал на этом форуме много тем, и во всех находил поддержку ))
Сейчас начинаю работу с запросами.
Делаю кнопку при нажатии на которую будут выбираться данные из регистра накопления и подставляться в табличную часть документа.
Подскажите, чтобы выбрать данные за период с какого то числа по какое то число, нужно установить параметры в виртуальной таблице или как?
1 GROOVY
 
08.12.12
16:47
Именно там и надо.

Вот тут старые мультики по запросам: http://1c.chistov.pro/search/label/Запросы
2 kasazanov
 
08.12.12
16:47
Спасибо.
3 Нуф-Нуф
 
08.12.12
16:49
тоже пользуюсь моментом, БОЛЬШОЕ СПАСИБО. благодаря тебе за минимальный срок понял что такое запросы на 8ке и с чем едят :)
4 GROOVY
 
08.12.12
16:58
Всегда пожалуйста!
5 kasazanov
 
08.12.12
19:41
А как в запрос выбрать стандартные реквизиты регистра накопления, такие как "регистратор"
6 France
 
08.12.12
19:42
.Регистратор
7 France
 
08.12.12
19:42
имярегистранакопления.регистратор..либо консоль запросов использовать.
8 kasazanov
 
08.12.12
19:44
А в виртуальной таблице можно?
9 kasazanov
 
08.12.12
19:50
В виртуальной таблице регистра не могу выбрать регистратор, в обычной таблице я его нашел
10 France
 
08.12.12
19:52
в виртуально Ыго нет..
11 France
 
08.12.12
19:52
для регистра оборотов можешь поставить детализацию период, и будет и регистратор
12 kasazanov
 
08.12.12
19:52
Выбирать в запрос 2 таблицы и группировать их?
13 France
 
08.12.12
19:54
не понял вопрос
14 kasazanov
 
08.12.12
19:55
Ну а если в запрос выбрать вирутальную таблицу и обычную и сгруппировать их, так не получится?
15 France
 
08.12.12
19:56
получится
16 France
 
08.12.12
19:57
стой стой.. голословное заявление... какие таблицы будешь соединять??
17 kasazanov
 
08.12.12
19:58
Ну мне в запрос нужно получить несколько измерений и ресурсов + 2 стандартных реквизита регистратор и период, потом нужно установить параметр ДатаНачала и ДатаОкончания, вот сижу и думаю как это сделать ))
18 ShoGUN
 
08.12.12
20:03
(17) ЧТО ИМЕННО тебе надо получить? В виртуальных таблицах остатков и оборотов регистратора же не просто так нет, а в связи со здравым смыслом. Либо тебе остатки, либо обороты, либо конкретные записи регистра(реальная таблица регистра). В последней есть регистратор.
19 ShoGUN
 
08.12.12
20:05
+(18) Обычно если итоги по документу имеют смысл(например, резерв по конкретному документу, или расчеты в разрезе документов) - документ добавляется в регистр, как ещё одно измерение.
20 kasazanov
 
08.12.12
20:05
(18) мне нужен оборот за какой то период, использую виртуальную таблицу "обороты" но получить так чтобы на выходе в таблице был еще и регистратор
21 ShoGUN
 
08.12.12
20:06
(20) И как ты будешь присобачивать ОБЩИЕ итоги к конкретному регистратору? Это же обороты не только по нему. А если тебе нужны обороты только по конкретному регистратору - виртуальная таблица особо не нужна.
22 Undefined vs NULL
 
08.12.12
20:08
(20) огласи ВСЮ задачу
23 France
 
08.12.12
20:10
(20) в настройках параметров виртуальной таблицы оборотов выбираешь "Периодичность - Регистратор" и выбираешь.... уже выше тебе на это ответил))
24 kasazanov
 
08.12.12
20:13
(23) Заработало ! Спасибо ))
25 kasazanov
 
08.12.12
20:14
(23) Сразу не вкурил.
26 kasazanov
 
08.12.12
20:54
Для регистра накопления есть 3 документа регистратора, как в запросе установить параметр чтобы он отобрал только строки с регистраторами по 2-м документам а 3-й документ исключил

"ВЫБРАТЬ
|    РасчетЗарПлатыОбороты.Номер,
|    РасчетЗарПлатыОбороты.Комментарий,
|    РасчетЗарПлатыОбороты.Подотчетник,
|    РасчетЗарПлатыОбороты.СуммаДокументаОборот КАК СуммаДокумента,
|    РасчетЗарПлатыОбороты.Регистратор,
|    РасчетЗарПлатыОбороты.Период
|ИЗ
|    РегистрНакопления.РасчетЗарПлаты.Обороты(&ДатаНачала, &ДатаОкончания, Регистратор, ) КАК РасчетЗарПлатыОбороты
|ГДЕ
|    РасчетЗарПлатыОбороты.Подотчетник = &Подотчетник";

Запрос1.УстановитьПараметр("ДатаНачала", ЭтотОбъект.ДатаНачалаНачисления);
Запрос1.УстановитьПараметр("ДатаОкончания", ЭтотОбъект.ДатаОкончанияНачисления);
Запрос1.УстановитьПараметр("Подотчетник", ЭтотОбъект.Водитель);
//Запрос1.УстановитьПараметр("Регистратор", );
Выборка1 = Запрос1.Выполнить().Выбрать();
27 France
 
08.12.12
20:55
где ссылка документ.твойдокумент1 или ссылка докумет.твойещеодиндокумент
28 kasazanov
 
08.12.12
20:57
(27) Это писать в самом запросе или в "установить параметр" ?
29 France
 
08.12.12
20:58
уже ответ)))
ГДЕ
30 kasazanov
 
08.12.12
21:00
ГДЕ
РасчетЗарПлатыОбороты.Регистратор = &Документы.ПриходныйКассовыйОрдер

Так? чето не пойму некак )
31 kasazanov
 
08.12.12
21:10
Не получается ((
32 France
 
08.12.12
21:12
Где РасчетЗарплатыОбороты.Регистратор ССЫЛКА документ.ПриходныйКассовыйОрдер
33 kasazanov
 
08.12.12
21:15
"ВЫБРАТЬ
|    РасчетЗарПлатыОбороты.Номер,
|    РасчетЗарПлатыОбороты.Комментарий,
|    РасчетЗарПлатыОбороты.Подотчетник,
|    РасчетЗарПлатыОбороты.СуммаДокументаОборот КАК СуммаДокумента,
|    РасчетЗарПлатыОбороты.Регистратор,
|    РасчетЗарПлатыОбороты.Период
|ИЗ
|    РегистрНакопления.РасчетЗарПлаты.Обороты(&ДатаНачала, &ДатаОкончания, Регистратор, ) КАК РасчетЗарПлатыОбороты
|ГДЕ
|    РасчетЗарПлатыОбороты.Подотчетник = &Подотчетник
|    РасчетЗарплатыОбороты.Регистратор ССЫЛКА документ.ПриходныйКассовыйОрдер";


Запрос1.УстановитьПараметр("ДатаНачала", ЭтотОбъект.ДатаНачалаНачисления);
Запрос1.УстановитьПараметр("ДатаОкончания", ЭтотОбъект.ДатаОкончанияНачисления);
Запрос1.УстановитьПараметр("Подотчетник", ЭтотОбъект.Водитель);
//Запрос1.УстановитьПараметр("Регистратор", Документы.ПриходныйКассовыйОрдер);

Выборка1 = Запрос1.Выполнить().Выбрать();

Пишет синтаксическая ошибка...
34 France
 
08.12.12
21:16
попроси кого нибудь после ...Подотчетник поставить "И"..
35 kasazanov
 
08.12.12
21:17
(34) Вооооооооо, заработало. Спасибо ! ))
36 kasazanov
 
09.12.12
13:02
Подскажите пожалуйста!
Мне нужно чтобы при закрытии документа если в табличной части нету строк тогда выдавалось какое то сообщение что нужно написать??
Если НЕ ЗначениеЗаполнено(ЭтотОбъект.Пробег) Тогда

это вроде не подходит для табличной части.
37 kasazanov
 
09.12.12
13:06
Хотя извините, Если НЕ ЗначениеЗаполнено(ЭтотОбъект.Пробег) Тогда работает для ТЧ, вопрос отпадает.