|
v7: Работа с запросом | ☑ | ||
---|---|---|---|---|
0
SeeWorld
30.09.12
✎
13:10
|
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = " |Период с '09.04.12' по '09.05.12'; |ДокРеал = Документ.РеализацияРозница.ТекущийДокумент; |ДокПерТМЦ = Документ.Реализация.ТекущийДокумент; |Группировка ДокРеал; |Группировка ДокПерТМЦ |" ; Пока Запрос.Группировка("ДокРеал") = 1 Цикл Пока Запрос.Группировка("ДокПерТМЦ ") = 1 Цикл КонецЦикла; КонецЦикла; Почему не срабатывает второй цикл? Чет не пойму как работает запрос. |
|||
1
SeeWorld
30.09.12
✎
13:11
|
Группировка ДокПерТМЦ;
|
|||
2
SeeWorld
30.09.12
✎
13:12
|
Помогите в понимании работы запроса.
|
|||
3
SeeWorld
30.09.12
✎
13:14
|
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = " |Период с '09.04.12' по '09.05.12'; |ДокРеал = Документ.РеализацияРозница.ТекущийДокумент; |ДокПерТМЦ = Документ.ПеремещениеТМЦ.ТекущийДокумент; |Группировка ДокРеал; |Группировка ДокПерТМЦ |" ; Пока Запрос.Группировка("ДокРеал") = 1 Цикл Пока Запрос.Группировка("ДокПерТМЦ ") = 1 Цикл КонецЦикла; КонецЦикла; Почему не срабатывает второй цикл? Чет не пойму как работает запрос. |
|||
4
dangerouscoder
30.09.12
✎
13:24
|
(3) Зачем 2 дока? делай по регистру
|
|||
5
SeeWorld
30.09.12
✎
13:27
|
Перем Запрос;
Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{Запрос(Сформировать) |Период с '09.04.12' по '09.05.12'; |ДокРеал = Документ.РеализацияРозница.ТекущийДокумент; |ДокПерТМЦ = Документ.ПеремещениеТМЦ.ТекущийДокумент; |Группировка ДокРеал; |Группировка ДокПерТМЦ; |"//ЗАПРОС ; Запрос.Выполнить(ТекстЗапроса); Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Отчет"); Таб.ВывестиСекцию("ШапкаДок"); Пока Запрос.Группировка("ДокРеал") = 1 Цикл Док = глНазваниеДокументаВЖурнале(Запрос.ДокРеал); Цена = Запрос.ДокРеал.СуммаВзаиморасчетов; номер = Запрос.ДокРеал.НомерДок; датадок = Запрос.ДокРеал.ДатаДок; время = Запрос.ДокРеал.ПолучитьВремя(); Пока Запрос.Группировка("ДокПерТМЦ") = 1 Цикл Если (Запрос.ДокРеал.Автор = Запрос.ДокПерТМЦ.Автор) и (Запрос.ДокРеал.Контрагент = Запрос.ДокПерТМЦ.Контрагент) и (Запрос.ДокРеал.СуммаВзаиморасчетов = Запрос.ДокПерТМЦ.СуммаНДС) Тогда ТпЦен = Запрос.ДокПерТМЦ.ТипЦен; КонецЕсли; КонецЦикла; ОптЦен = 0; РознЦен = 0; Таб.ВывестиСекцию("СтрокаДок"); КонецЦикла; Таб.Показать("Отчет"); |
|||
6
SeeWorld
30.09.12
✎
13:28
|
По какому регистру именно делать?
|
|||
7
SeeWorld
30.09.12
✎
13:29
|
Там нет типа цены
|
|||
8
МишКа
30.09.12
✎
13:32
|
Пробуй одну гркппировку: Док=Документ.РеализацияРозница.ТекущийДокумент,Документ.ПеремещениеТМЦ.ТекущийДокумент
|
|||
9
SeeWorld
30.09.12
✎
13:35
|
Пробовал, выдает ошибку типа:
Цена = Запрос.ДокРеал.СуммаВзаиморасчетов; {D:\РАБОТА\В ПРОЦЕССЕ\ЗАГОТОВКА.ERT(18)}: Поле агрегатного объекта не обнаружено (СуммаВзаиморасчетов) |
|||
10
dangerouscoder
30.09.12
✎
13:37
|
Что за конфигурация в которой - Запрос.ДокРеал.СуммаВзаиморасчетов = Запрос.ДокПерТМЦ.СуммаНДС
|
|||
11
SeeWorld
30.09.12
✎
13:38
|
А на это не обращайте внимание)
|
|||
12
SeeWorld
30.09.12
✎
13:38
|
Мне главное, чтоб второй цикл заработал)
|
|||
13
МишКа
30.09.12
✎
13:38
|
(9) Что пробовал? Текст покажи.
|
|||
14
SeeWorld
30.09.12
✎
13:40
|
Перем Запрос;
Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{Запрос(Сформировать) |Период с '09.04.12' по '09.05.12'; |ДокРеал = Документ.РеализацияРозница.ТекущийДокумент, Документ.ПеремещениеТМЦ.ТекущийДокумент; |Группировка ДокРеал; |"//ЗАПРОС ; Запрос.Выполнить(ТекстЗапроса); Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Отчет"); Таб.ВывестиСекцию("ШапкаДок"); Пока Запрос.Группировка("ДокРеал") = 1 Цикл Док = глНазваниеДокументаВЖурнале(Запрос.ДокРеал); Цена = Запрос.ДокРеал.СуммаВзаиморасчетов; номер = Запрос.ДокРеал.НомерДок; датадок = Запрос.ДокРеал.ДатаДок; время = Запрос.ДокРеал.ПолучитьВремя(); Пока Запрос.Группировка("ДокРеал") = 1 Цикл Сообщить("Работает"); КонецЦикла; ОптЦен = 0; РознЦен = 0; Таб.ВывестиСекцию("СтрокаДок"); КонецЦикла; Таб.Показать("Отчет"); |
|||
15
МишКа
30.09.12
✎
13:43
|
Значит - нет такого реквизита "СуммаВзаиморасчетов" в одном из документов.
|
|||
16
МишКа
30.09.12
✎
13:44
|
Второй цикл не нужен.
|
|||
17
SeeWorld
30.09.12
✎
13:46
|
Значит отдельно надо прописывать Док = СоздатьОбъект("Документ.ПеремещениеТМЦ.ТекущийДокумент"); и пройтись по нему?
|
|||
18
SeeWorld
30.09.12
✎
13:47
|
Документ.ПеремещениеТМЦ
|
|||
19
МишКа
30.09.12
✎
13:49
|
Не знаю. Зависит от того, что тебе нужно.
|
|||
20
SeeWorld
30.09.12
✎
13:53
|
Мне нужно получить тип цены по которому продали товар, а вытащить тип цены можно с документа "ПеремещениеТМЦ".
|
|||
21
SeeWorld
30.09.12
✎
13:54
|
или я что-то перепутал
|
|||
22
МишКа
30.09.12
✎
13:54
|
Тогда тебе нужно 2 запроса.
|
|||
23
МишКа
30.09.12
✎
13:55
|
(21) Наверняка перепутал. Зачем брать цену из документа?
|
|||
24
SeeWorld
30.09.12
✎
13:55
|
А откуда брать?
|
|||
25
МишКа
30.09.12
✎
13:56
|
Зависит от того, зачем брать.
|
|||
26
МишКа
30.09.12
✎
13:57
|
Что в реализации цены нет?
|
|||
27
SeeWorld
30.09.12
✎
13:57
|
Нужно узнать по какому типу цены продали товар.
|
|||
28
МишКа
30.09.12
✎
13:59
|
А если один товар поступал по нескольким типам?
|
|||
29
SeeWorld
30.09.12
✎
14:00
|
Продать могли только по оптовой или розничной цене.
|
|||
30
SeeWorld
30.09.12
✎
14:00
|
мы товар продаем
|
|||
31
SeeWorld
30.09.12
✎
14:02
|
В реализациироз цены нет(
|
|||
32
МишКа
30.09.12
✎
14:03
|
Если брать тип цен из документа Перемещение, может быть ситуация когда один и тот же товар с разными типами цен.
|
|||
33
SeeWorld
30.09.12
✎
14:06
|
А зачем там тогда стоит тип цены на сумму товаров)
|
|||
34
SeeWorld
30.09.12
✎
14:07
|
я просто стал анализировать журнал документов и заметил что сумма док реалроз совпадает с док перемТМЦ.
|
|||
35
МишКа
30.09.12
✎
14:12
|
(34) И что?
|
|||
36
SeeWorld
30.09.12
✎
14:13
|
Вот и решил, что от туда можно достать тип цены)
|
|||
37
SeeWorld
30.09.12
✎
14:13
|
Откуда еще достать не знаю(
|
|||
38
dangerouscoder
30.09.12
✎
14:13
|
См регистры? или их нет?
|
|||
39
SeeWorld
30.09.12
✎
14:15
|
Есть, но там нет реквизита тип цены.
|
|||
40
МишКа
30.09.12
✎
14:16
|
Достать можно. Непонятно только - зачем.
|
|||
41
SeeWorld
30.09.12
✎
14:17
|
Узнать надо сколько менеджер продал товара по оптовой цене и по розничной цене
|
|||
42
SeeWorld
30.09.12
✎
14:19
|
точнее на какую сумму
|
|||
43
МишКа
30.09.12
✎
14:20
|
(41) Есть еще нормальный документ "Реализация". Там тип цен присутствует.
Уверен, что используется документ РеализацияРозница? |
|||
44
SeeWorld
30.09.12
✎
14:22
|
Используются два документа Реализация и РеализацияРозница)
|
|||
45
МишКа
30.09.12
✎
14:24
|
РеализацияРозница - продажа из магазина. Какой там менеджер? Там кассир.
|
|||
46
SeeWorld
30.09.12
✎
14:25
|
Видимо и по кассе тоже нужно)
|
|||
47
МишКа
30.09.12
✎
14:26
|
И что? Магазин может торговать по оптовой цене?
|
|||
48
SeeWorld
30.09.12
✎
14:27
|
У нас да)
|
|||
49
SeeWorld
30.09.12
✎
14:34
|
У нас через кассу проходят и оптовики и покупатели)
|
|||
50
МишКа
30.09.12
✎
14:35
|
Вот смотри.
Допустим, у тебя 2 документа перемещения. В одном 10 шт. товара по оптовой цене, в другом 10 шт. товара по розничной цене. Продано 15 шт. Как будешь разносить сумму продаж? |
|||
51
МишКа
30.09.12
✎
14:36
|
(49) Тогда тип цен должен быть в документе РеализацияРозница.
|
|||
52
SeeWorld
23.10.12
✎
15:46
|
Скажите пожалуйста, можно ли через номенклатуру запроса, получить тип цену одного наименования номенклатуры?
|
|||
53
Mikeware
23.10.12
✎
15:54
|
пятнично....
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |