|
отбор заявок без введенных на основании них реализаций | ☑ | ||
---|---|---|---|---|
0
LivingStar
27.09.13
✎
13:12
|
УТ 10.3, нужно отобрать документы ЗаказПокупателя, на основании которых не было введено документов реализация товаров услуг. Как это можно сделать?
|
|||
1
Галахад
гуру
27.09.13
✎
13:13
|
А если было. Но на часть товара?
|
|||
2
Godofsin
27.09.13
✎
13:14
|
(1) Проверять таб.часть
|
|||
3
goleaff2006
27.09.13
✎
13:14
|
левое соединение
|
|||
4
Godofsin
27.09.13
✎
13:15
|
на пустую ссылку проверяй
|
|||
5
goleaff2006
27.09.13
✎
13:15
|
по номенклатуре характеристике и основанию качеству =)
|
|||
6
spu79
27.09.13
✎
13:16
|
заказ - в мае, к нему 3-4 поступления (полностью закрыты/не закрыты), далее 7-8 реализаций (по текущий день). куда относить?
|
|||
7
LivingStar
27.09.13
✎
13:25
|
Основание если есть, то как тут указать документ для которого данный является основанием.
(3)(4) Левое соединение и проверка на пустую ссылку с чем? И как связывать, по какому полю? |
|||
8
goleaff2006
27.09.13
✎
13:27
|
по номенклатуре характеристике и основанию качеству =)Основание =ссылка
|
|||
9
goleaff2006
27.09.13
✎
13:28
|
Че не можешь связать две таб части документов что ли?
|
|||
10
goleaff2006
27.09.13
✎
13:30
|
где основание=NULL
|
|||
11
LivingStar
27.09.13
✎
13:32
|
так верное?
ВЫБРАТЬ ЗаказПокупателя.Ссылка, ЗаказПокупателя.Контрагент, ЗаказПокупателя.СкладГруппа, ЗаказПокупателя.СуммаДокумента ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО ЗаказПокупателя.Товары.Номенклатура = РеализацияТоваровУслуг.Товары.Номенклатура И (ЗаказПокупателя.Товары.Номенклатура = NULL) ГДЕ ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата |
|||
12
Ненавижу 1С
гуру
27.09.13
✎
13:33
|
смотреть остатки по регистру ЗаказыПокупателей
|
|||
13
goleaff2006
27.09.13
✎
13:34
|
по Документ.ЗаказПокупателя.Ссылка=Документ.РеализацияТоваровУслуг.Основание
|
|||
14
LivingStar
27.09.13
✎
13:34
|
(12) а зачем остатки? В (11) запрос вроде выбирает, все ли нет только, правильно ли, незнаю.
|
|||
15
Ненавижу 1С
гуру
27.09.13
✎
13:35
|
(14) в (11) дурь написана, если реализация по нескольким заказам?
|
|||
16
LivingStar
27.09.13
✎
13:37
|
(15) А как по регистру то смотреть?
|
|||
17
Ненавижу 1С
гуру
27.09.13
✎
13:37
|
(16) смотришь остатки, если количество больше 0, то значит заказ выполнен не полностью
|
|||
18
LivingStar
27.09.13
✎
13:42
|
(13) Я так попробовал:
ВЫБРАТЬ ЗаказПокупателя.Ссылка, ЗаказПокупателя.Номер, ЗаказПокупателя.Дата, ЗаказПокупателя.Контрагент, ЗаказПокупателя.СкладГруппа, ЗаказПокупателя.СуммаДокумента ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО (ЗаказПокупателя.ДокументОснование = NULL) ГДЕ ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата |
|||
19
Ненавижу 1С
гуру
27.09.13
✎
13:43
|
(18) критинизм 80 уровня
|
|||
20
LivingStar
27.09.13
✎
13:52
|
(13) У документа РеализацияТоваровУслуг нет реквизита Основание!
|
|||
21
eklmn
гуру
27.09.13
✎
13:55
|
(19) он аждый день так отжигает, че удивлятся то? )
|
|||
22
ptiz
27.09.13
✎
13:58
|
(21) +100
Иногда порываюсь написать ответ на вопрос, но сдерживаюсь, ибо - бесполезно. |
|||
23
eklmn
гуру
27.09.13
✎
13:59
|
(22) +1
|
|||
24
catena
27.09.13
✎
14:00
|
Который день человек выкладывает запросы по документам... Его кто-нибудь предупредил, что документы бывают непроведенными?
|
|||
25
LivingStar
30.09.13
✎
06:30
|
(24) Ваше замечание учел, проверяю выборку по документам на проведение и отсутствие пометки удаления.
Но вот выборку так и не смог получить нормальную, во всех выше приведенных запросах в выбранных документах ЗаказПокупателя присутствуют подчиненные документы РеализацияТоваровУслуг. |
|||
26
LivingStar
30.09.13
✎
06:34
|
Как задать в выборке что бы отбирались документы ЗаказПокупателя только те у которых нет в подчиненности документов?
|
|||
27
maxibon
30.09.13
✎
06:45
|
Так в УТ (если память не изменяет) типовой отчет есть по Заказам.
|
|||
28
hhhh
30.09.13
✎
06:46
|
(26) да, уж
ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслуг.ЗаказПокупателя = ЗаказПокупателя.Ссылка И (ЗаказПокупателя.ДокументОснование ЕСТЬ NULL) |
|||
29
maxibon
30.09.13
✎
06:47
|
+(27) он все показывает.
|
|||
30
LivingStar
30.09.13
✎
06:48
|
(27) Поищу, только в ЗаказеПокупателя ДокументОснование - это не реализация товаров услуг и соединение по номенклатура и null не работают!
(28) ДокументОснование в вашем запросе не относится к документу РеализацияТоваровУслуг. В чем суть запроса? |
|||
31
LivingStar
30.09.13
✎
06:52
|
(29) Я его запустил, но пока не дождался что бы он что либо бы вывел. Отчет просто повис и все ((((
|
|||
32
LivingStar
30.09.13
✎
06:55
|
(29) Про какой точно вы отчет говорите?
|
|||
33
hhhh
30.09.13
✎
07:01
|
(31) вам надо взять помощника. Такого умного и крепкого подавана.
|
|||
34
alexiv79
30.09.13
✎
07:08
|
(32) Во-первых,запросы делать лучше по регистрам, как уже написали. Во-вторых, Ненавижу 1С все правильно написал в (12), (15) и (17)
|
|||
35
alexiv79
30.09.13
✎
07:14
|
+(34) Если очень нужно выбрать подчиненные документы, в УТ 10.3 есть критерий отбора, называется "СвязанныеДокументы" - посмотри как используется - ищутся подчиненные документы
|
|||
36
alexiv79
30.09.13
✎
07:16
|
(35) И еще - в типовых конфигурациях очень много механизмов уже написано-типа разбить строку по разделителям, ФИО с инициалами и т.д. - я лично стараюсь использвоать стандартные функции из конфы-не надо изобретать велосипед, где не надо
|
|||
37
LivingStar
30.09.13
✎
07:20
|
(36) Это правильно, пока я не нащел для себя решения.
|
|||
38
alexiv79
30.09.13
✎
07:23
|
(37) см 35
|
|||
39
LivingStar
30.09.13
✎
07:26
|
Пробую выбирать из регистра накопления ЗаказыПокупателей.Остатки.
вопрос 1). Не получается задавать количество в параметрах регистра, там его совсем нет. Можно накладывать условие только на период. Или количество есть в условии не в параметрах запроса к регистру накопления. Пока остальные вопросы затуманены. ВЫБРАТЬ ЗаказыПокупателейОстатки.КоличествоОстаток, ЗаказыПокупателейОстатки.Номенклатура, ЗаказыПокупателейОстатки.ЗаказПокупателя ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&Период, ) КАК ЗаказыПокупателейОстатки ГДЕ ЗаказыПокупателейОстатки.КоличествоОстаток > 0 |
|||
40
alexiv79
30.09.13
✎
07:28
|
(39) параметры только на измерения регистра, в условии можно и по ресурсам. Условия на группировки по ресурсам смотри "ИМЕЮЩИЕ"
|
|||
41
alexiv79
30.09.13
✎
07:29
|
(40) в смысле если нужно по группировкам проверить ресурсы на условие (например по группам номенклатуры), то используют "ИМЕЮЩИЕ"
|
|||
42
alexiv79
30.09.13
✎
07:31
|
(39) Для начала посмотри видеокурсы павла Чистова (ака Groovy) - есть у него на сайте - очень понятно и доходчиво (Павел, спасибо вам за курсы). Потом книгу Габеца "Профессиональная разработка" купи-хорошая вещь, пригодится
|
|||
43
LivingStar
30.09.13
✎
07:32
|
(41) Раньше не припомню что бы пользовался этой инструкцией.
(42) Что то я совсем запустил это дело (((( Нужно обязательно заняться! Почему то запрос по ЗаказуПокупателейОстатки виснет и все либо что то отбирает что мне нее нужно совсем ! |
|||
44
alexiv79
30.09.13
✎
07:38
|
(43) Я сейчас готовлюсь на спеца по платформе - разбираю решения тестовых задач-тоже неплохой способ прокачать скилл-но надо основные понятия знать хотя бы. С 8-кой работаю плотно около 2-х лет
|
|||
45
alexiv79
30.09.13
✎
07:40
|
(43) п 2. У тебя группировка по количеству идет - количествоОстаток надо в сумму запихать хотя бы
ВЫБРАТЬ ЗаказыПокупателейОстатки.Номенклатура, ЗаказыПокупателейОстатки.ЗаказПокупателя, Сумма(ЗаказыПокупателейОстатки.КоличествоОстаток) Как Остаток ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&Период, ) КАК ЗаказыПокупателейОстатки ГДЕ ЗаказыПокупателейОстатки.КоличествоОстаток > 0 СГРУППИРОВАТЬ ЗаказыПокупателейОстатки.Номенклатура, ЗаказыПокупателейОстатки.ЗаказПокупателя |
|||
46
alexiv79
30.09.13
✎
07:44
|
+(45) СГРУППИРОВАТЬ ПО конечно же
|
|||
47
LivingStar
30.09.13
✎
07:55
|
(46) Запрос повис и все (((( По идее мне не нужна номенклатура в запросе. И в выборке нужны документы ЗаказПокупателя у которых нет в структуре привязанных документов. Они должны идти на первом месте, после документы ЗаказПокупателя по которым есть документы реализация товаров услуг, но сумма документов реализация товаров услуг меньше суммы ЗаказаПокупателя. Что бы видеть что заказ выполнен не полностью.
|
|||
48
alexiv79
30.09.13
✎
07:57
|
(47) Это все в одном запросе надо сделать-или нужен отчет в котором это все выведется?
|
|||
49
LivingStar
30.09.13
✎
08:00
|
(48) Я думал делать пакетными запросами, в одном одно в другом другое и все вывести в итоговом запросе, но пока не получается.
|
|||
50
LivingStar
30.09.13
✎
08:02
|
(48) Пока что нет четкого представления. как это можно выбирать из регистра накопления ЗаказыПокупателей.
|
|||
51
LivingStar
30.09.13
✎
08:02
|
Возможно его нужно связывать с каким лмбо другим регистрам.
|
|||
52
LivingStar
30.09.13
✎
08:05
|
26 записей, за 1 день, выбирались довольно долго!!!
ВЫБРАТЬ ЗаказыПокупателейОстатки.ЗаказПокупателя, СУММА(ЗаказыПокупателейОстатки.КоличествоОстаток) КАК КоличествоОстаток ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(, ) КАК ЗаказыПокупателейОстатки ГДЕ ЗаказыПокупателейОстатки.КоличествоОстаток > 0 И ЗаказыПокупателейОстатки.ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказыПокупателейОстатки.ЗаказПокупателя |
|||
53
alexiv79
30.09.13
✎
08:11
|
(52) Навскидку такой запрос
ВЫБРАТЬ ЗаказыПокупателейОстатки.ЗаказПокупателя КАК ЗаказПокупателя, СУММА(ЗаказыПокупателейОстатки.КоличествоОстаток) КАК ОстатокПоЗаказам, ПродажиОбороты.КоличествоОборот КАК КоличествоПродаж ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонПериода, ) КАК ЗаказыПокупателейОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты ПО ЗаказыПокупателейОстатки.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя СГРУППИРОВАТЬ ПО ЗаказыПокупателейОстатки.ЗаказПокупателя, ПродажиОбороты.КоличествоОборот УПОРЯДОЧИТЬ ПО КоличествоПродаж, ЗаказПокупателя |
|||
54
alexiv79
30.09.13
✎
08:13
|
+(53) немного не доделал
ВЫБРАТЬ ЗаказыПокупателейОстатки.ЗаказПокупателя КАК ЗаказПокупателя, СУММА(ЗаказыПокупателейОстатки.КоличествоОстаток) КАК ОстатокПоЗаказам, СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоПродаж ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонПериода, ) КАК ЗаказыПокупателейОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты ПО ЗаказыПокупателейОстатки.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя СГРУППИРОВАТЬ ПО ЗаказыПокупателейОстатки.ЗаказПокупателя УПОРЯДОЧИТЬ ПО КоличествоПродаж, ЗаказПокупателя |
|||
55
LivingStar
30.09.13
✎
08:16
|
(53) Этот же запрос будет выбирать данные за весь период (((
И в нем не заданно что бы к примеру отобрались ЗаказыПокупателя без подчиненных документов РеализацияТоваровУслуг. |
|||
56
alexiv79
30.09.13
✎
08:18
|
(55) там левое соединение - те.е выбирутся все остатки по заказам и реализации по этим заказам-где реализации нет-в упорядочить по клочиству - где 0 то делаем вывод, что реализаций по этому заказу не было
|
|||
57
LivingStar
30.09.13
✎
08:31
|
(56) А как в данном случае быть с периодом? Задавать его в условии? Если нужно посмотреть такие документы скажем за месяц какой либо?
ВЫБРАТЬ ЗаказыПокупателейОстатки.ЗаказПокупателя КАК ЗаказПокупателя, СУММА(ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0)) КАК ОстатокПоЗаказам, СУММА(ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0)) КАК КоличествоПродаж ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонПериода, ) КАК ЗаказыПокупателейОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты ПО ЗаказыПокупателейОстатки.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя СГРУППИРОВАТЬ ПО ЗаказыПокупателейОстатки.ЗаказПокупателя УПОРЯДОЧИТЬ ПО КоличествоПродаж, ЗаказПокупателя |
|||
58
Мимохожий Однако
30.09.13
✎
08:34
|
Достаточно типового отчета Анализ заявок покупателей.
|
|||
59
LivingStar
30.09.13
✎
08:34
|
странно, почему это нельзя сделать по документам? Сделать связь по ЗаказуПокупателя и РеализацииТоваровУслуг
|
|||
60
Мимохожий Однако
30.09.13
✎
08:36
|
(59)Ага и выкинуть эти противные регистры.
|
|||
61
LivingStar
30.09.13
✎
08:37
|
(58) Отчеты->Продажи->Анализ заказов->Анализ заказов покупателей
вы про этот отчет? |
|||
62
LivingStar
30.09.13
✎
08:39
|
(58) Поставил все галки, формирую отчет за 1 день. Хочу посмотреть что он выведет.....
|
|||
63
LivingStar
30.09.13
✎
08:43
|
(62) Вот он стоит и весит этот отчет, я хотел сделать более упрощенную выборку.
|
|||
64
Мимохожий Однако
30.09.13
✎
08:48
|
Сколько весит в граммах?
|
|||
65
alexiv79
30.09.13
✎
08:48
|
(59) Можно и по документам - но как ты остатки по документам посмотришь? Здесь же проще все-смотрим остатки по заказам, смотрим продажи по заказам и соединяем данные. Короче надо тебе основы смотреть-выше я уже писал-нет понимания того, что хочешь сделать и самое главное как
|
|||
66
LivingStar
30.09.13
✎
08:54
|
(65) Я хочу отобрать документы ЗаказПокупателя по котоым нет документов РеализацияТоваровУслуг, и те по которым сумма документа не равна. Как это правильно сделать я не знаю, и если есть много способов я рассматриваю, выбирая более правильный и понятный. Отчет в (61) не устраивает что он стоит и висит выбирая данные за 1 день. Тут уже много написали как и что, остается рпобовать делать выборки и смотреть проверять результаты. Хочу сделать описанную выборку работающей быстрее.
|
|||
67
Мимохожий Однако
30.09.13
✎
08:56
|
Допустим, ты нашел нужные Заказы покупателя, а дальше что?
|
|||
68
LivingStar
30.09.13
✎
10:03
|
(67) Нужно их вывести. Менеджер сможет выявить среди них потерявшуюся заявку, которую завели но не создали на неё реализацию. Реализация осуществилась но в базе её нет. Так же она сможет спросить, почему, по той или иной заявке прошла не полная реализация. Если сумма по документу РеализацияТоваровУслуг меньше чем сумма документа ЗаявкаПокупателю.
|
|||
69
PaulBC
30.09.13
✎
10:15
|
Есть Ведомость по заказам покупателей, Анализ заказов покупателей. Зачем велосипеды изобретать?
|
|||
70
Мимохожий Однако
30.09.13
✎
10:16
|
(69) см (63) )))
|
|||
71
alexiv79
30.09.13
✎
10:22
|
(68) А под суммой документа Реализация товара что понимается? Сумма всего. А если в реализации скидку сделали и сумма заявки больше получилась?
|
|||
72
alexiv79
30.09.13
✎
10:23
|
(68) ИМХО-надо номенклатуру и количество смотреть
|
|||
73
LivingStar
30.09.13
✎
10:27
|
(72) Возможно да, нужно смотреть номенклатуру, или количество. Или пусть уже сам менеджер разбирается и находит свой ответ почему сымма разная. Или действительно сравнивать номенклатуру и количество.
|
|||
74
Мимохожий Однако
30.09.13
✎
10:28
|
А еще есть "Рабочее место менеджера по продажам". Но не в коня корм.
|
|||
75
alexiv79
30.09.13
✎
10:34
|
(73) Я думал это для какой-то обработки нужно-если для отчетов-используй сткандартные отчеты-выше уже все написали. Для ускорения ставь как можно больше фильтров-по организации, подразделению, группе номенклатуры и т.д.-может дать существенное ускорение
|
|||
76
alexiv79
30.09.13
✎
10:36
|
+(75) Или сохранить стандартный отчет и модернизировать - чтобы ускорить-но там надо понимать. что делаешь
|
|||
77
LivingStar
30.09.13
✎
10:44
|
(76) Если в запрос что в (57) перенести НачДата и КонДата в условие. Что бы не обрабатывать весь период. Как вы думаете стоит это делать?
|
|||
78
LivingStar
30.09.13
✎
10:48
|
(77+) Думал что установка периода между будет как то влиять на скорость выполнения запроса. Но нет никак не влияет! Практически столько же стоит выполняется запрос.
|
|||
79
alexiv79
30.09.13
✎
11:10
|
(77) Тут такая ситуация - нужны остатки по заказам покупателя- они в принципе могут быть от любой даты-те.е. месячной давности и т.д.- в данной ситуации период выставить получится только по дате окончания периода. Чтобы сделать отбор более полный, нужно использовать врем таблицу- поставить условие на реализации по заказам покупателей из врем таблицы А мой запрос из (54) долго выполняется?
|
|||
80
alexiv79
30.09.13
✎
11:13
|
+(79) можно еще добавить отбор по номенклатуре из врем таблицы-но мне кажется, что отбора по заказам хватит-проверять надо
|
|||
81
alexiv79
30.09.13
✎
11:22
|
(78) Запрос в врем таблицей - развернуто по заказу, номенклатуре и характеристике
ВЫБРАТЬ ЗаказыПокупателейОстатки.ЗаказПокупателя КАК ЗаказПокупателя, СУММА(ЗаказыПокупателейОстатки.КоличествоОстаток) КАК ОстатокПоЗаказам, ЗаказыПокупателейОстатки.Номенклатура, ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры ПОМЕСТИТЬ времОстаткиПоЗаказам ИЗ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонПериода, ) КАК ЗаказыПокупателейОстатки СГРУППИРОВАТЬ ПО ЗаказыПокупателейОстатки.ЗаказПокупателя, ЗаказыПокупателейОстатки.Номенклатура, ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ времОстаткиПоЗаказам.ЗаказПокупателя КАК ЗаказПокупателя, времОстаткиПоЗаказам.Номенклатура КАК Номенклатура, времОстаткиПоЗаказам.ОстатокПоЗаказам КАК ОстатокПоЗаказам, ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0) КАК КоличествоПродажи ИЗ времОстаткиПоЗаказам КАК времОстаткиПоЗаказам ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты( , &КонПериода, , ЗаказПокупателя В (ВЫБРАТЬ времОстаткиПозаказам.ЗаказПокупателя ИЗ времОстаткиПозаказам КАК времОстаткиПозаказам)) КАК ПродажиОбороты ПО времОстаткиПоЗаказам.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя И времОстаткиПоЗаказам.Номенклатура = ПродажиОбороты.Номенклатура СГРУППИРОВАТЬ ПО времОстаткиПоЗаказам.ЗаказПокупателя, времОстаткиПоЗаказам.Номенклатура, времОстаткиПоЗаказам.ОстатокПоЗаказам, ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0) УПОРЯДОЧИТЬ ПО КоличествоПродажи, ЗаказПокупателя, Номенклатура ИТОГИ СУММА(ОстатокПоЗаказам), СУММА(КоличествоПродажи) ПО ОБЩИЕ, ЗаказПокупателя, Номенклатура |
|||
82
alexiv79
30.09.13
✎
11:27
|
+(81) еще связь по характеристике номенклатуры не сделал - но это уже по аналогии. Это пример как делать через врем таблицу- в консоли запросов посмотри что где устанавливается
|
|||
83
LivingStar
30.09.13
✎
11:42
|
(79) Да вот запрос ваш + условие между НачДата и КонДата, все не могу дождаться пока выполнится ((((
|
|||
84
LivingStar
30.09.13
✎
11:44
|
(81) Спасибо большое, переношу в консоль.
|
|||
85
LivingStar
30.09.13
✎
11:47
|
К примеру на сервере запустил отчет Анализ заказов покупателей, так результата так и не дождался... Вышло сообщение не достаточно памяти. Сервер похоже не тянет. Рассматривается перевод УТ, на новый сервер, это вероятно поможет!!!
|
|||
86
alexiv79
30.09.13
✎
12:00
|
(85) Сколько пользователей? какой объем оперативы? терминал? SQL?
|
|||
87
alexiv79
30.09.13
✎
12:02
|
Для терминала надо 200 -250 метров оперативы на пользователя примерно у нас примерно 80 пользователей, 24 гига оперативы - пока нормально все
|
|||
88
LivingStar
30.09.13
✎
12:16
|
(86) Терминал KRDC, SQL Server, пользователей около 20, памяти 15 Гб
|
|||
89
eklmn
гуру
30.09.13
✎
12:24
|
интересно, когда alexiv79 устанет? делаем ставки, господа!
|
|||
90
alexiv79
30.09.13
✎
12:31
|
(89) Да в принципе не напрягает-другое дело что LivingStar явный семерочник, 8-ку только изучает, азы надо подтягивать. Я 2-года назад также спрашивал, вовремя перещел на 8-ку-сейчас у нас только с 7.7 делать нечего, рабоыт почти нет
|
|||
91
LivingStar
30.09.13
✎
13:25
|
(90) Я не изучаю восьмерку, есть определенные пробелы в некоторых местах, таких как СКД, Запросы, Конвертация данных. Так как любая из этих тем может быть как угодно углублена.
|
|||
92
LivingStar
30.09.13
✎
13:27
|
(91+) Там где я счейчас работаю ставят разные задачи, последнее время касающиеся различных выборок, для чего нужно использовать запросы. Этот опыт мне интересен!!! Жаль только что ни один из запросов из этой темы я не могу нормально посмотреть и поэксперементировать с ними. Так как они все весят ((( Или это дело в сервере, или в объеме объектов в базе, может в чем ещё.
|
|||
93
alexiv79
30.09.13
✎
13:27
|
(91) СКД тема хорошая, конвертацию тоже смотрел, но не глубоко - планы простые создавал. В запросах вроде немного понимаю что-то уже - короче на текущую деятельность знаний хватает, но спец по платформе это уже уровень
|
|||
94
alexiv79
30.09.13
✎
13:29
|
(92) Ну я отчетов наверное около сотни за 2 года сделал, разбирался в том числе и по отчетам в УПП, УТ.Для ЗУп делал отчеты. Еще тема- когда в СКд используются внешние данные - например тз-удобно тем, что Тз заполняешь как хочешь, потом на ее базе СКд делаешь и выводишь в отчет-удобно
|
|||
95
LivingStar
30.09.13
✎
13:32
|
(94) Нравится когда результат отчета можно проверять оперативно. А не сидеть как сейчас вот я не ждать когда он там что выведет!!! Может есть какое то решение подобной ситуации что в (81), что бы тянкть не по конец периода, а как то ограничивать выборку!!!
|
|||
96
alexiv79
30.09.13
✎
13:33
|
(95) Уже этот запрос выполняется?
|
|||
97
alexiv79
30.09.13
✎
13:33
|
(95) Копию базы на свой комп и там эксперементировать - если комп конечно не овощной
|
|||
98
LivingStar
30.09.13
✎
13:34
|
(96) Да взял его попробовать. Ничего из того что накидал в дереве запросов сегодня не получилось корректно посмотреть. В основном все зависает!!!
(97) На моем компе вообще под virtual box копия базы, тама это дело висит ещё сильнее.... |
|||
99
LivingStar
30.09.13
✎
13:36
|
(97) Это уж тогда дома ставить 16Гб и 64х битную систему, ускорит ли это работу???
|
|||
100
alexiv79
30.09.13
✎
13:37
|
(98) Печаль. Надо базу смотреть-объем таблиц, может сжатие базы сделать - может регистры не закрываются.
(99) у меня дома 2-х ядерный Intel E5200, SSD Диск и 4 гига оперативы-все нормально работает, достаточно быстро |
|||
101
LivingStar
30.09.13
✎
13:38
|
(100) Видимо SSD диск способствует этому!!!
|
|||
102
alexiv79
30.09.13
✎
13:41
|
(101) Ну диск неплохой OCZ Vertex 4 - рекомендую
|
|||
103
LivingStar
01.10.13
✎
05:03
|
(102) Похоже что по регистрам мне не получится пока сделать данную выборку. Так как сильно подвисает, не возможно потестировать. Пришла мысль делать по документам, может по ним удастся.
|
|||
104
LivingStar
01.10.13
✎
05:39
|
(13) Подскажите пожалуйста, вы пишете что можно связать 2 виртуальные таблицы, где в 1ой выборка ЗаказаПокупателя, во второй РеализацияТоваровУслуг связав их примерно как вы указали:
Документ.ЗаказПокупателя.Ссылка=Документ.РеализацияТоваровУслуг.Основание мне не понятно что вот это Документ.РеализацияТоваровУслуг.Основание, у документа РеализацияТоваровУслуг нет реквизита Основание. |
|||
105
goleaff2006
01.10.13
✎
06:13
|
(104)В реализаций, где то же указывается ссылка на заказ вот по этому реквизиту и связывать =)Может реквизит сделка называется, точно не помню.
|
|||
106
LivingStar
01.10.13
✎
06:21
|
(105)
Сделал вот такую выборку, которая без труда открывается за день, как наверное и на более большие периоды. Реквизит "ЗаказПокупателя" который виден в консоле запросов у документа РеализацияТоваровУслуг назвал как "Основание". В выборке видно что выбираются документы ЗаказПокупателя и РеализацияТоваровУслуг которые были введены на их основании! Почему, добавляя условие ИЛИ (ВТ_ЗаказПокупателя.ЗаказПокупателя = NULL) или такое И (ВТ_ЗаказПокупателя.ЗаказПокупателя = NULL) в выборке появляются строки, у которых нет в выборке реализации, но открыв сам документ реализация есть в структуре подчиненности тогда такая строка не должна попадать, а она есть, как быть в этом случае? Как отобрать те к которым не привязаны документы РеализацияТоваровУслуг ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, СУММА(РеализацияТоваровУслуг.СуммаДокумента) КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК Основание ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание |
|||
107
goleaff2006
01.10.13
✎
06:21
|
либо в табчасти колонка заказ покупателя если она заполняется.
|
|||
108
goleaff2006
01.10.13
✎
06:24
|
ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = null или is null точно не помню
|
|||
109
LivingStar
01.10.13
✎
06:25
|
(106+) В выборках по документу ЗаказПокупателя и реализацияТоваровУслуг так же учет табличные части но не использовал их, это я так на всякий случай. Пока хочу разобраться почему не выбирает ЗаказыПокупателя без РеализацииТоваровУслуг, когда я указываю NULL в соединении
(108) Попробую, получается мы проверяем на Null не существующий документ а вообще отсутствующий !!! Как то не совсем это в голове укладывается. |
|||
110
goleaff2006
01.10.13
✎
06:26
|
в правой части заказы а левое соединение даст null по реализации если ее нету для заказа.
|
|||
111
goleaff2006
01.10.13
✎
06:28
|
http://1cexpo.ru/obuchenie-1s-predpriyatie/23-prakticheskoe-ispolzovanie-zaprosov-v-1s-8/46-soedinenie-zaprosov.html читай как соединения работают
|
|||
112
LivingStar
01.10.13
✎
06:34
|
(111) Попробовал вот так, то же самое. Не знаете случайно что я не так делаю???
ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание И (ВТ_РеализацияТоваровУслуг.Основание Is NULL) |
|||
113
goleaff2006
01.10.13
✎
06:37
|
не и ,а
имеющие ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL |
|||
114
goleaff2006
01.10.13
✎
06:37
|
отбор нужно наложить уже на результат, а ты сразу отбираешь с условием.
|
|||
115
LivingStar
01.10.13
✎
06:48
|
(114) пишет что поле не входит в группа ВТ_ЗаказПокупателя.ЗаказПокупателя
ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL |
|||
116
LivingStar
01.10.13
✎
06:49
|
(115+) Что то нужно видимо поправить, пока не понял что...
|
|||
117
goleaff2006
01.10.13
✎
06:52
|
результат сначала сгруппируй , учи язык запросов.
|
|||
118
LivingStar
01.10.13
✎
06:56
|
(117) А как его там сгруппировать? Там и Ссылка на документ ЗаказПокупателя есть, и ссылка на документ реализацияТоваровУслуг и Основание документа РеализацияТоваровУслуг и их суммы
|
|||
119
chelentano
01.10.13
✎
06:59
|
(118) забей, не твоё это, смени профессию
|
|||
120
LivingStar
01.10.13
✎
07:03
|
(117)
Вот так сгруппировал, в выборке присутствуют строки по ЗаказамПокупателя, без записей по документам РеализацииТоваровУслуг, но открывая сам документ ЗаказПокупателя видно что у него в структуре подчиненности есть документы РеализацияТоваровУслуг ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, СУММА(РеализацияТоваровУслуг.СуммаДокумента) КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК Основание ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя, СУММА(ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) КАК СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание |
|||
121
goleaff2006
01.10.13
✎
07:06
|
А открывая реализацию что в ней видно?
|
|||
122
goleaff2006
01.10.13
✎
07:07
|
что то в запросе не вижу ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL этой строчки.
|
|||
123
LivingStar
01.10.13
✎
07:08
|
(122) я не могу никуда прилепить эту строку, ругается на неё ((((
|
|||
124
chelentano
01.10.13
✎
07:08
|
(120) ты всё ещё не понял, что заказы находятся в табличной части реализации?
|
|||
125
goleaff2006
01.10.13
✎
07:11
|
(123) быть такого не может
|
|||
126
LivingStar
01.10.13
✎
07:14
|
(123) Сейчас ругается синтаксическая ошибка СГРУППИРОВАТЬ
ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание |
|||
127
goleaff2006
01.10.13
✎
07:17
|
это клиника!!
ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL это в самый конец надо запихать после сгруппировать. |
|||
128
LivingStar
01.10.13
✎
07:19
|
(127) Извиниие!!! Один момент!!!
|
|||
129
LivingStar
01.10.13
✎
07:28
|
Приведенный ниже запрос ничего не выбирает. Можно выявить почему? Я уже пробовал и проведение комментировать, все равно ничего. А документы такие есть!!! Как понять почему он не выводит?
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, СУММА(РеализацияТоваровУслуг.СуммаДокумента) КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК Основание ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя, СУММА(ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) КАК СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL |
|||
130
goleaff2006
01.10.13
✎
07:30
|
107 пост и 124 пост =))
|
|||
131
goleaff2006
01.10.13
✎
07:33
|
может "Есть Null" вместо "= null" попробуй написать
|
|||
132
goleaff2006
01.10.13
✎
07:33
|
что тогда выдает?
|
|||
133
LivingStar
01.10.13
✎
07:34
|
(130)
меняю ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг = NULL на ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.Основание = NULL выборка отсутствует ((( |
|||
134
LivingStar
01.10.13
✎
07:34
|
(132) попробую, но не думаю что он не понимает того что я написал....
|
|||
135
goleaff2006
01.10.13
✎
07:35
|
должно частично взлететь ..
|
|||
136
LivingStar
01.10.13
✎
07:36
|
(132) Видимо я ошибался, исправил на
ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.Основание Есть Null первая строка была без реализации, буду проверять дальше! (135) Спасибо! А почему частично? До этого пробовал тоже всякие запросики, бывало что и без реализации попадают и с реализацией ((( Как то не точно выбирает чтоли? |
|||
137
goleaff2006
01.10.13
✎
07:38
|
яя уже писал 107 пост и 124 пост =))вот эти реализации ты не как в запросе не отлавливаешь.
|
|||
138
goleaff2006
01.10.13
✎
07:38
|
то есть в документе реализации основание может быть не указанно а в таб части для конкретной номенклатуры, может быть указан заказ.
|
|||
139
LivingStar
01.10.13
✎
07:43
|
(135) первыя строка в выборке без реализации, последняя с реализацией, и видно это все только в структуре подчинения... Не сбита ли какая логическая целостность?
(138) Понятно!!! То есть документы РеализацияТоваровПоставщику могут быть созданы на основании ЗаказаПоставщику, а могут быть созданы независимо, то есть без связи по реквизиту Основание. Я правильно понимаю? И если я учту в выборке отбор по табличной части, то она будет точнее? |
|||
140
goleaff2006
01.10.13
✎
07:45
|
так ты эту реализацию открой посмотри, что в ней есть и дальше думай что да как и почему.
|
|||
141
LivingStar
01.10.13
✎
07:45
|
(139) Отсутствовать это поле ЗаказПокупателя которое является основанием не может же случайным образом? Я думал Реализацию всегда делают на основании, спрошу сейчас!!!!
|
|||
142
goleaff2006
01.10.13
✎
07:54
|
(139)и вообще задача получается такая два множества из одного вычесть другое. http://www.1c-h.ru/?p=917
можно обойтись запрсом по регистру заказы покупателей.Первое множество где регистртор заказ покупателей, второе где регистратор реализация товаров и услуг, и измерение Заказ покупателя не пустое.Вроде как то так. |
|||
143
LivingStar
01.10.13
✎
07:57
|
(140) Кажется я понял! Запрос представленный ниже, отбирается по документам. И если попадаются документы ЗаказПокупателя с привязанными к ним документами РеализацииТоваровУслуг, а по условию такого не должно быть, то эти документы выходят за отбираемый период. То есть если стоит сентябрь, то попадут все документы ЗаказПокупателя по которым нет документов РеализацияТоваровУслуг в этом же периоде. Но так же попадут документы ЗаказПокупателя по которым есть документы РеализацияТоваровУслуг за 01.10.2013 например. Это уже нужно обрабатывать видимо отдельно, если так делать.
|
|||
144
LivingStar
01.10.13
✎
07:58
|
(142) Там только нельзя будет наложить условие на выборку? Зависает она.
|
|||
145
LivingStar
01.10.13
✎
07:59
|
(143+) Запрос
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, СУММА(РеализацияТоваровУслуг.СуммаДокумента) КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК Основание ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя, СУММА(ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) КАК СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.Основание Есть Null |
|||
146
LivingStar
01.10.13
✎
08:00
|
(142) Или же можно подумать как сделать подобное по документам, принимая в счет то что можно будет наложить период.
|
|||
147
goleaff2006
01.10.13
✎
08:00
|
(144) если правильно написать запрос то не должно зависнуть по идее =)
|
|||
148
goleaff2006
01.10.13
✎
08:01
|
145 И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата если это убрать то тогда нормально отработает.
|
|||
149
LivingStar
01.10.13
✎
08:06
|
(148) Ок, спасибо, попробую.
|
|||
150
alexiv79
01.10.13
✎
11:14
|
(129) Шел второй день... А ты упорный
Вот здесь непонял совсем ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; |
|||
151
alexiv79
01.10.13
✎
11:14
|
+(150) Нахрена так сложно? Что хотел получить в этом куске?
|
|||
152
alexiv79
01.10.13
✎
11:17
|
+(151) Вот так не проще?
ВЫБРАТЬ ЗаказПокупателяТовары.Ссылка, СУММА(ЗаказПокупателяТовары.Ссылка.СуммаДокумента) КАК СуммаДокумента ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ГДЕ ЗаказПокупателяТовары.Ссылка.Дата МЕЖДУ &НачПериода И &КонПериода СГРУППИРОВАТЬ ПО ЗаказПокупателяТовары.Ссылка |
|||
153
alexiv79
01.10.13
✎
11:19
|
+(150) И зачем здесь соединение между табличной частью и доком? Если бы номенклатуру допустим добавил в времТаблицу, еще понятно, хотя ит не оптимально. И то просто по табличной части делаешь и все
|
|||
154
alexiv79
01.10.13
✎
11:23
|
(145) 2 запрос-надо делать по регистру продажи
ИМЕЮЩИЕ - это итоги по группировка. Проверка на NULL это ЕстьNULL(ВТ_РеализацияТоваровУслуг.Основание,0)=0 |
|||
155
LivingStar
02.10.13
✎
07:29
|
(152) Проше, я попробовал выбрать вместе с табличной частью на будущее, может придется её использовать, но пока она просто прицеплена.
(153) Связал её с документом по ссылке потому что видел что так делают. Сам до конце не понимая зачем, можно же выбрать Тч а из неё и ссылку и все другие реквизиты через точки. То есть так то же выбирает. Оставил. в пакетах по ЗаказуПокупателя и РеализациитоваровУслуг убрал СУММА( по сумме документа, так как суммы в итоговом запросе были не из документов а ссуммированные каким то образом от куда то... В итоге сейчас в тоговом запросе увидел что он выбирает и документы у которых есть реализации, не понял пока почему. Период задан на пакет ЗаказПокупателя и попала в выборку запись с реализацией из этого же периода ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, ЗаказПокупателя.СуммаДокумента КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка, ЗаказПокупателя.СуммаДокумента ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, РеализацияТоваровУслуг.СуммаДокумента КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК ОснованиеРеализацииТоваровУслуг ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя, РеализацияТоваровУслуг.СуммаДокумента ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя КАК ЗаказПокупателя, СУММА(ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг, СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) КАК СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг ЕСТЬ NULL |
|||
156
LivingStar
02.10.13
✎
07:34
|
(148) видимо не помогло это (((
|
|||
157
LivingStar
02.10.13
✎
10:59
|
(154) предлагаете эту проверку включить за место
ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг ЕСТЬ NULL и в выборке останутся только заказы покупателей без привязанной реализации товаров услуг? |
|||
158
alexiv79
02.10.13
✎
12:06
|
(157) ИМЕЮЩИЕ ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг ЕСТЬ NULL
Еще раз ИМЕЮЩИЕ проверяет сумма ан Условие, к примеру в данном запросе можно так сделать ИМЕЮЩИЕ СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) > 1000 Проверку на NULL надо делать в секции ГДЕ ЕстьNULL(ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг,0) = 0 |
|||
159
ProProg
02.10.13
✎
12:08
|
.... сколько дятлов собралось.
|
|||
160
alexiv79
02.10.13
✎
12:09
|
+ (158) или ЕстьNULL можно использовать в секции ВЫБРАТЬ, к примеру
ВЫБОР КОГДА ЕстьNULL(ВТ_РеализацияТоваровУслуг.ОснованиеРеализацииТоваровУслуг,0) = 0 ТОГДА "Нет дока-основания" ИНАЧЕ "Есть док-основание" КОНЕЦ |
|||
161
LivingStar
02.10.13
✎
12:31
|
(158) Может я конечно чего не допонял, но вот в этом запросе в первом выбранном заказе есть подчиненная реализация.
(160) ВЫБОР это видимо можно использовать в пакетном запросе по документу РеализацияТоваровУслуг ? ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказПокупателя ИЗ Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателя ПО ЗаказПокупателяТовары.Ссылка = ЗаказПокупателя.Ссылка ГДЕ ЗаказПокупателя.ПометкаУдаления = ЛОЖЬ И ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК РеализацияТоваровУслуг, СУММА(РеализацияТоваровУслуг.СуммаДокумента) КАК СуммаРеализацииТоваровУслуг, РеализацияТоваровУслугТовары.ЗаказПокупателя КАК Основание ПОМЕСТИТЬ ВТ_РеализацияТоваровУслуг ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка ГДЕ НЕ РеализацияТоваровУслуг.ПометкаУдаления И РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Ссылка, РеализацияТоваровУслугТовары.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказПокупателя.ЗаказПокупателя, СУММА(ВТ_ЗаказПокупателя.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, СУММА(ВТ_РеализацияТоваровУслуг.СуммаРеализацииТоваровУслуг) КАК СуммаРеализацииТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИЗ ВТ_ЗаказПокупателя КАК ВТ_ЗаказПокупателя ЛЕВОЕ СОЕДИНЕНИЕ ВТ_РеализацияТоваровУслуг КАК ВТ_РеализацияТоваровУслуг ПО ВТ_ЗаказПокупателя.ЗаказПокупателя = ВТ_РеализацияТоваровУслуг.Основание СГРУППИРОВАТЬ ПО ВТ_ЗаказПокупателя.ЗаказПокупателя, ВТ_РеализацияТоваровУслуг.РеализацияТоваровУслуг, ВТ_РеализацияТоваровУслуг.Основание ИМЕЮЩИЕ ЕСТЬNULL(ВТ_РеализацияТоваровУслуг.Основание, 0) = 0 |
|||
162
alexiv79
02.10.13
✎
12:32
|
(161) про ВЫБОР написал просто, как пример, где использовать ЕстьNULL
|
|||
163
alexiv79
02.10.13
✎
12:34
|
+(162) Изучай курсы по запросам - я так же поначалу пытался понять, только больше запутываешься. Надо базовые знания. Видеокурсы Павла Чистова посмотрим - там немного, только главное рассказано
|
|||
164
LivingStar
02.10.13
✎
12:36
|
(163) Так запрос то в (161) или в (155), эти запросы можно как то подстроить что бы выбиралось как нужно, только ЗаказыПокупателя за установленный период, без подчиненных документов РеализацияТоваровУслуг?
|
|||
165
alexiv79
02.10.13
✎
13:02
|
(164) Вот запрос
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателя, СУММА(ЗаказПокупателя.СуммаДокумента) КАК СуммаЗаказаПокупателя ПОМЕСТИТЬ ВТ_ЗаказыПокупателей ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя ГДЕ ЗаказПокупателя.Проведен И ЗаказПокупателя.Дата МЕЖДУ &НачДата И &КонДата СГРУППИРОВАТЬ ПО ЗаказПокупателя.Ссылка ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ЗаказыПокупателей.ЗаказПокупателя, СУММА(ВТ_ЗаказыПокупателей.СуммаЗаказаПокупателя) КАК СуммаЗаказаПокупателя, ПродажиОбороты.Регистратор, ПродажиОбороты.СтоимостьОборот, ПродажиОбороты.Регистратор.СуммаДокумента ИЗ ВТ_ЗаказыПокупателей КАК ВТ_ЗаказыПокупателей ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты( , , Регистратор, ЗаказПокупателя В (ВЫБРАТЬ ВТ_ЗаказыПокупателей.ЗаказПокупателя ИЗ ВТ_ЗаказыПокупателей КАК ВТ_ЗаказыПокупателей)) КАК ПродажиОбороты ПО ВТ_ЗаказыПокупателей.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя ГДЕ ЕСТЬNULL(ПродажиОбороты.Регистратор, 0) = 0 СГРУППИРОВАТЬ ПО ВТ_ЗаказыПокупателей.ЗаказПокупателя, ПродажиОбороты.Регистратор, ПродажиОбороты.СтоимостьОборот, ПродажиОбороты.Регистратор.СуммаДокумента |
|||
166
LivingStar
02.10.13
✎
13:09
|
(165) То есть из регистра Продаживыбирается заранее ограниченный список документов ЗаказПокупателя где отсутствует регистратор.
Спасибо!!! При возможности проверю его, посмотрю выборку. Но а запросы (161) и (155) обречены на провал и не излечимы??? |
|||
167
alexiv79
02.10.13
✎
13:14
|
(166) первым шагом выбираем заказы за период и помещаем в врем таблицу. Во втором делаем выборку по регистру продажи -выбираем реализации - дял ускорения ставлю условие на физическую таблицу -
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты( , , Регистратор, ЗаказПокупателя В (ВЫБРАТЬ ВТ_ЗаказыПокупателей.ЗаказПокупателя ИЗ ВТ_ЗаказыПокупателей КАК ВТ_ЗаказыПокупателей) В отличии от условия в ГДЕ, это уловие устанавливается до выборки - т.е. установили, потом сделали выборку. Условие в ГДЕ действует подругому-сначала запрос выполнится, потом по условию отберутся нужные. |
|||
168
alexiv79
02.10.13
✎
13:16
|
+ (167) Т.к. делаю левое соединение, то попадут все записи из ВТ_ЗаказыПокупателей и только те записи регистра продаж, которые соответствую условие. Где не выбирутся, регистратор будет NULL - на что и ставится проверка в
ГДЕ ЕСТЬNULL(ПродажиОбороты.Регистратор, 0) = 0 |
|||
169
alexiv79
02.10.13
✎
13:17
|
Запрос в (161) работает, только по-моему много лишнего в нем
|
|||
170
LivingStar
02.10.13
✎
16:27
|
(161) Так я его выполняю, и первый отобранный в нем заказ, как и второй имеет связанную с ним реализацию, я так полагаю что это означает что он не корректно работает (((
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |