Имя: Пароль:
1C
1С v8
Помогите написать простой запрос для УПП
0 Простенький вопросик
 
20.11.12
07:14
Помогите написать простой запрос, который бы вывел остаток взаиморасчетов с контрагентом на дату.
Вот я такой пробовал написать, чтото не работает

       запрос2=новый запрос;

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

  запрос2.УстановитьПараметр("датакон",текущаядата());
1 Cube
 
20.11.12
07:15
(0) За "ВзаиморасчетыСКонтрагентами.Период = &датакон" - расстрелять!
2 Рэйв
 
20.11.12
07:17
За неиспользование виртуальной таблицы Остатки предварительно прострелить обе коленки.
3 Cube
 
20.11.12
07:18
(0) Вот как надо:

ВЫБРАТЬ
   ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток КАК Сумма
ИЗ
   РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки(&Период, ДоговорКонтрагента = &ДоговорКонтрагента) КАК ВзаиморасчетыСКонтрагентамиОстатки
4 Гефест
 
20.11.12
07:25
медленно убери руки и отойди от УПП
5 ДенисЧ
 
20.11.12
07:26
(4) не только от УПП, а вообще от 1с..
6 Простенький вопросик
 
20.11.12
07:30
(3)
вроде работает, спасибо
7 Простенький вопросик
 
20.11.12
07:49
(3)
А может подскажете еще, как получить оплаты от клиента за период и сумму реализованных товаров за тот же период?
8 ДенисЧ
 
20.11.12
07:50
(7) А может, ты сначала документацию прочитаешь? :-)
9 Простенький вопросик
 
20.11.12
07:51
(8)
где бы это еще писалось...
10 Cube
 
20.11.12
07:52
(7) Хочу, чтоб ты сам разобрался, поэтому только намекну: регистр накопления "ВзаиморасчетыСКонтрагентами" содержит записи с видом "Приход" и "Расход". Кассовые и банковские документы делают один вид записей, а реализация товаров и услуг - другой тип. Усёк?
11 Cube
 
20.11.12
07:53
(9) Где написано как работать в УПП? Книжек полно, ты хоть одну прочел? Сомневаюсь...
12 Простенький вопросик
 
20.11.12
07:54
(11)
книжек то много, но они по пользовательской части
13 Cube
 
20.11.12
07:56
(12) )))) Смешно)) А как ты, не зная как ДОЛЖЕН работать калькулятор, будешь программировать кнопки на нем?
Не зная пользовательской части - не лезь в конфигуратор. Только так.
14 Простенький вопросик
 
20.11.12
07:58
(13)
что я не так написал, не срабатывает синтаксис запроса

       запрос2.Текст="ВЫБРАТЬ
                     |    ВзаиморасчетыСКонтрагентамиОбороты.СуммаВзаиморасчетовПриход
                     |ИЗ
                     |    РегистрНакопления.ВзаиморасчетыСКонтрагентами.Обороты(&Период, ДоговорКонтрагента = &ДоговорКонтрагента) КАК ВзаиморасчетыСКонтрагентамиОбороты";
15 Рэйв
 
20.11.12
08:01
(14)Вроде далеко до пятницы еще...
16 Cube
 
20.11.12
08:01
(14) Потому что, не зная какие параметры есть у виртуальной таблицы, не нужно писать запрос от руки, пользуйся конструктором запросов, он в v8 оч. неплох.
17 ДенисЧ
 
20.11.12
08:02
(14) Дыкобжешьвашумамашу! Может, конструктор запроса запустишь? Специально для таких сделан...
18 Рэйв
 
20.11.12
08:02
(14)ВНИМАТЕЛЬНО прочитай код из (3).
Много думай.
19 Простенький вопросик
 
20.11.12
08:17
(18)
ну допустим договор я понял как добавить не в виртуальную таблицу. Как задать диапазон периода может подскажете?
20 Простенький вопросик
 
20.11.12
08:27
Ну а тут что не так?
    запрос3=новый запрос;

       запрос3.Текст="ВЫБРАТЬ
                     |    ВзаиморасчетыСКонтрагентами.СуммаВзаиморасчетов,
                     |    ВзаиморасчетыСКонтрагентами.ДоговорКонтрагента
                     |ИЗ
                     |    РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ВзаиморасчетыСКонтрагентами
                     |ГДЕ
                     |    ВзаиморасчетыСКонтрагентами.Регистратор.Дата МЕЖДУ &датанач И &датакон
                     |    И ВзаиморасчетыСКонтрагентами.ДоговорКонтрагента = &ДоговорКонтрагента";

  запрос3.УстановитьПараметр("датанач",этаформа.ЭлементыФормы.НачПериода.Значение);
   запрос3.УстановитьПараметр("датакон",этаформа.ЭлементыФормы.КонПериода.Значение);

  запрос3.УстановитьПараметр("ДоговорКонтрагента",стр.ссылка);
21 drcrasher
 
20.11.12
08:29
Волшебник , сделай разрешение материться в таких ветках! ПАЖАЛУЙСТА!
22 Гефест
 
20.11.12
08:30
быстро убери руки и отпрыгни от УПП
23 Cube
 
20.11.12
08:37
(20) РАССТРЕЛЯТЬ!!! Я ещё в (1) предлагал!)
24 Простенький вопросик
 
20.11.12
08:38
А вот так может правильно, вроде какой то результат выводится?

    запрос3=новый запрос;

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

  запрос3.УстановитьПараметр("датанач",этаформа.ЭлементыФормы.НачПериода.Значение);
   запрос3.УстановитьПараметр("датакон",этаформа.ЭлементыФормы.КонПериода.Значение);

  запрос3.УстановитьПараметр("ДоговорКонтрагента",стр.ссылка);
25 Cube
 
20.11.12
08:38
Ооооо, посоны, судя по "запрос3.УстановитьПараметр("ДоговорКонтрагента",стр.ссылка);" у него запрос в цикле!!!))
Однозначно расстрел.
26 Cube
 
20.11.12
08:39
(24) Расстрелять!
27 Простенький вопросик
 
20.11.12
08:41
(26)
Ну ты вначале скажи как правильно
28 Рэйв
 
20.11.12
08:41
Жаль , что ТС, не девушка. За такие выкрутасы можно было бы фотку ВСЕлесс стребовать:-)
29 Cube
 
20.11.12
08:42
(27) Правильно в (8).
30 rinatru
 
20.11.12
08:49
ну хоть самооценку поднял ))))
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.