|
Помогите с запросом (НЕ новичок) | ☑ | ||
---|---|---|---|---|
0
jk3
23.07.12
✎
14:15
|
Сабж на картинке: http://i40.fastpic.ru/big/2012/0723/3d/a2770a24f4a22807235850c388f1983d.png
Есть идеи как это получить запросом? |
|||
1
sapphire
23.07.12
✎
14:17
|
(0) Если количество строк в табличной части ВСЕГДА равно количеству проводок, то запросто :)
|
|||
2
jk3
23.07.12
✎
14:19
|
(1) Нет, как раз таки всегда НЕ равно
|
|||
3
iceman2112
23.07.12
✎
14:20
|
чето не понятно Услуги разные или там просто одна и та же - Услуги
|
|||
4
DSSS
23.07.12
✎
14:21
|
(0) почему нельзя соединить таблицы по Субуонто и Счету?
|
|||
5
iceman2112
23.07.12
✎
14:21
|
если услуги разные, то соединение. В чем проблема?
|
|||
6
jk3
23.07.12
✎
14:22
|
(4) А попробуй. В результате получишь 4 строки, а не 2.
|
|||
7
Сияющий Асинхраль
23.07.12
✎
14:22
|
(0) Если услуги разные то можно, а если одинаковые то вообще непонятно что ты чему сопоставляешь
|
|||
8
jk3
23.07.12
✎
14:22
|
(3) Это для наглядности, субконто и счёт одинаковые, что в табличной части, что в проводках.
|
|||
9
DSSS
23.07.12
✎
14:23
|
(6) Предварительная упаковка во вложенных запросах или временных таблицах тоже не поможет?
|
|||
10
qeos
23.07.12
✎
14:23
|
нельзя
|
|||
11
Cube
23.07.12
✎
14:23
|
(6) Да ну? Ну тогда ты что-то темнишь. Давай реальные скриншоты из базы и конфу озвучь.
|
|||
12
jk3
23.07.12
✎
14:24
|
(7) Грубо говоря, количество пишется в таб.части, а сумма высчитывается при проведении и записывается в проводки.
Описание пользователя: ну это же просто, берешь из таб.части кол-во, а из проводок сумму. Ага, просто, блин. |
|||
13
jk3
23.07.12
✎
14:25
|
(11) Можно, но только это не быстро, ибо затереть надо кое-какую инфу на скринах.
(9) Всмысле упаковка? |
|||
14
gosn1ck
23.07.12
✎
14:26
|
(12) я не понял почему соединить нельзя? откуда тут 4ем строкам браться?
зы в бухии не силен, но почему количество нельзя в проводки засунуть? это сложно? |
|||
15
Irek-kazan
23.07.12
✎
14:26
|
ну вот такой вариант
Выбрать счет, субконто, сумма(кол-во), сумма(сумма) из (выбрать счет, субконто, кол-во, 0 как сумма из таблицы1 объединить все выбрать счет, субконто, 0 как кол-во, сумма из таблицы1) сгруппировать по счет, субконто |
|||
16
Сияющий Асинхраль
23.07.12
✎
14:27
|
(3) Тогда исходя из какого принципа количеству в 100 соответствует сумма 150, а не 500...
Я бы сделал из всего этого запросом единственную строку, которая суммировала бы суммы и количества по Счету и Субконто, иными словам делай группировку после соединения и все |
|||
17
iceman2112
23.07.12
✎
14:27
|
если разные услуги - то соединение. Напиши своё соединнение посмотрим откуда у тебя 4.
|
|||
18
Irek-kazan
23.07.12
✎
14:27
|
+(15) ошибся вторая часть объединить все вместо таблица1 надо таблица2
|
|||
19
Сияющий Асинхраль
23.07.12
✎
14:27
|
(15) +100
про это и сказал в (16) |
|||
20
DSSS
23.07.12
✎
14:27
|
(12) В первом вложенным запросе получаем счет субконто, количество. Групировка субконто, счет, СУММА(Кол-во) во втором вложенном запросе получаем сч, субконо, Сумма(Сумма)
Соединяем. что будет неправильно? |
|||
21
jk3
23.07.12
✎
14:28
|
(14) Исходная база какая есть, такая есть, отчёт нужен.
(17) Повторяюсь, услуги - одинаковые. |
|||
22
gosn1ck
23.07.12
✎
14:29
|
(21) клёво, но в чем сложность я так и не понял. тут должно работать как соединение так и объединение
|
|||
23
Lacerta
23.07.12
✎
14:29
|
Ввести по счету количественный учет и в проводках его дописывать к сумме
|
|||
24
Ненавижу 1С
гуру
23.07.12
✎
14:32
|
выбрать Счет, Субконто1, Сумма(Количество)
поместить ТЧСвернуто из ТЧ сгруппировать по Счет, Субконто1; выбрать СчетДт, СубконтоДт1, Сумма(Сумма) поместить ПроводкиСвернуто из Проводки сгруппировать по СчетДт, СубконтоДт1; выбрать ТЧ.Счет, ТЧ.Субконто1, ТЧ.Количество, Сумма(ПроводкиСвернуто.Сумма)*ТЧ.Количество/Сумма(ТЧСвернуто.Количество) из ТЧ левое соединение ТЧСвернуто по ТЧ.Счет=ТЧСвернуто.Счет и ТЧ.Субконто1=ТЧСвернуто.Субконто1 левое соединение ПроводкиСвернуто по ТЧ.Счет=ПроводкиСвернуто.СчетДт и ТЧ.Субконто1=ПроводкиСвернуто.СубконтоДт1 |
|||
25
gosn1ck
23.07.12
✎
14:38
|
в топике переменная "новичок" какое имеет значение?
|
|||
26
jk3
23.07.12
✎
14:40
|
(17) Сорри за размер скрина по ширине, меньше не получается
Вот исходный док: http://i43.fastpic.ru/big/2012/0723/d6/967b4d1e56655fc4e537e1e1b13e22d6.png Вот изначальный запрос:
Вот результат: http://i41.fastpic.ru/big/2012/0723/58/612b7f2e152f8accc87d025fdf44cf58.png |
|||
27
Irek-kazan
23.07.12
✎
14:41
|
чем вариант (15) не устаривает?
|
|||
28
Ненавижу 1С
гуру
23.07.12
✎
14:43
|
(27) ему немного не так надо, ИМХО, конечно
|
|||
29
jk3
23.07.12
✎
14:44
|
(27) В том варианте 1 строка получается, так я и сам могу.
Нужен результат, как на скрине в (0) |
|||
30
Ненавижу 1С
гуру
23.07.12
✎
14:44
|
(29) пробовал (24)?
|
|||
31
jk3
23.07.12
✎
14:47
|
(30) Пробую, в процессе...
А не опираясь на числовую колонку в ТЧ, эта задача вообще как-нибудь решается? |
|||
32
Ненавижу 1С
гуру
23.07.12
✎
14:48
|
(31) ну может чисто теоретически порядок номеров (не сами номера) строк в ТЧ и движениях будет одинаков
|
|||
33
jk3
23.07.12
✎
14:51
|
(32) Так и есть, в общем случае задача такая, что нужно сопоставить строкам табличной части строки проводок, при том, что номера строк и номера проводок не совпадают, но находятся в одной и той же последовательности.
|
|||
34
Ненавижу 1С
гуру
23.07.12
✎
14:52
|
(33) ну вот с этим можно "поиграться", но я бы (24) выбрал
|
|||
35
jk3
23.07.12
✎
14:52
|
Т.е. 1-ой строке ТЧ будет соответствовать 1-я проводка (но она не обязательно первая среди всех проводок документа, в примере третья),
2-ой строке ТЧ 2-я проводка (в примере пятая), и т.д. |
|||
36
qeos
23.07.12
✎
14:53
|
а спрашивали "на куа"?
|
|||
37
jk3
23.07.12
✎
14:53
|
Скатился до частностей, т.к. общий случай мне показался вообще не решаемый с помощью запроса...
|
|||
38
xenos
23.07.12
✎
14:53
|
(0) В 8.3 есть функция МестоВПорядке
|
|||
39
jk3
23.07.12
✎
15:01
|
(34) Проверил, способ работает, но деление, дроби, округление...
В идеале пронумеровать 1,2,3... отобранные проводки документа, тогда просто соединение по номеру строки и всё. Статью Книга знаний: v8: Нумерация строк в запросе читал, но сюда приспособить не получилось (по крайней мере с 1-го раза) |
|||
40
Абыр
23.07.12
✎
15:01
|
в проводке номер строки документа есть?
|
|||
41
jk3
23.07.12
✎
15:04
|
(40) Нет, конечно, иначе это было бы слишком просто.
|
|||
42
Жан Пердежон
23.07.12
✎
15:04
|
(37) чтобы он был решаемый - его надо сначала сформулировать.
(39) нумерация, внезапно есть в: Книга знаний: v8: Нумерация строк в запросе |
|||
43
jk3
23.07.12
✎
15:07
|
(42) Дык, вот в том же ж и проблема.
Правильно поставленный вопрос уже содержит в себе 50% ответа. (42) В книге знаний опираются на наименовании, на что здесь опираться, хз. |
|||
44
Ненавижу 1С
гуру
23.07.12
✎
15:07
|
(43) на номера строк
|
|||
45
jk3
23.07.12
✎
17:12
|
(44) Спасибо!
Решил задачу в общем виде путём перенумерации таблицы проводок, начиная с единицы, и простому соединению по номерам строк:
|
|||
46
Ненавижу 1С
гуру
23.07.12
✎
17:13
|
(45) главное не удивляться когда порядок проводок внезапно может быть изменен
|
|||
47
qeos
23.07.12
✎
17:17
|
а где ты работаешь и как твоя фамилия?
|
|||
48
qeos
23.07.12
✎
17:18
|
чтоб я стобой не связывался
|
|||
49
jk3
23.07.12
✎
17:27
|
(46) Всё равно они пишутся в цикле "Для каждого", поэтому всегда будет нормально работать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |