|
Как правильно 🠗 (Волшебник 19.05.2014 17:06) | ☑ | ||
---|---|---|---|---|
0
m_roose
19.05.14
✎
13:02
|
Нужно выбрать данные по оплате заказов покупателей. Как правильнее делать запрос в 1с, по регистрам накопления или можно просто по документам все смотреть?
|
|||
1
Wobland
19.05.14
✎
13:04
|
просто по документам все смотреть нельзя
|
|||
2
m_roose
19.05.14
✎
13:06
|
(1) а почему?
|
|||
3
Godofsin
19.05.14
✎
13:08
|
(2) гладиолус?
|
|||
4
m_roose
19.05.14
✎
13:09
|
(3) так сложно подсказать?( если бы знала толковую книжку, где это можно почитать, не спрашивала бы здесь(
|
|||
5
jsmith82
19.05.14
✎
13:10
|
(4) Ёмана, деточка. Регистры для того и нужны, чтобы к ним запросы составлять
|
|||
6
m_roose
19.05.14
✎
13:13
|
если б в них можно было так легко разобраться.. просто непонятно почему именно регистры нужно, если все тоже самое можно сделать через документы
|
|||
7
vicof
19.05.14
✎
13:15
|
(6) Отличная книжка "Проф разработка 8.2", советую
|
|||
8
m_roose
19.05.14
✎
13:17
|
(7) спасибо
|
|||
9
Kalambur
19.05.14
✎
13:41
|
(0) для начала нужно так "как правильно заводить ветки"
|
|||
10
batmansoft
19.05.14
✎
13:46
|
(6) Потому что один и тот же регистр могут двигать разные документы. Сделаешь запрос по документам, а потом (после обновления или доработок программиста) добиться еще один документ. Будешь переделывать запрос?
|
|||
11
Серго62
19.05.14
✎
13:52
|
(10) >>Потому что один и тот же регистр могут двигать разные документы
и это не единственная причина... |
|||
12
m_roose
19.05.14
✎
13:56
|
тогда новый вопрос! по какому регистру смотреть какая была сумма оплаты по заказу покупателя? самостоятельно не смогла разобраться
|
|||
13
Серго62
19.05.14
✎
13:59
|
(12) Может быть по тому же регистру, в который пишет документ оплаты?
|
|||
14
batmansoft
19.05.14
✎
14:00
|
(12) Смотря какая конфа. Но, скорее всего, в его названии присутствует слова Заказ(ы) и Покупатель(я,ю)
|
|||
15
FIXXXL
19.05.14
✎
14:01
|
(12) если не включено по договорам "отслеживать по заказам" хрен тебе а не отчет
|
|||
16
Крошка Ру
19.05.14
✎
14:02
|
РН ВзаиморасчетыСКонтрагентами
|
|||
17
Kookish
19.05.14
✎
14:02
|
Но лучше всего все-таки залезть в конфигуратор и там посмотреть, по каким регистрам накопления документ делает движения. Дальше подключаем женскую интуицию и женскую логику...
|
|||
18
hhhh
19.05.14
✎
14:02
|
(12) а оно вам точно надо? Запрос писать? Можно ведь воспользоваться готовым отчетом.
|
|||
19
FIXXXL
19.05.14
✎
14:03
|
себя спроси: "как у меня заказы привязаны к оплатам?"
дальше запрос :) |
|||
20
Серго62
19.05.14
✎
14:03
|
(18) Готовым не интересно :-)
|
|||
21
FIXXXL
19.05.14
✎
14:04
|
(16) не путай, другой РН :)
|
|||
22
m_roose
19.05.14
✎
14:05
|
(17) в том то и проблема, там куча регистров, по которым документы оплаты делают движения. я не могу понять, по какому правильно нужно делать запрос.
(18) готового отчета не нашла, нужно выводить заказы и по ним сумму оплаты, которая была, или не была и вообще поэтому и созрела вся эта тема, потому что если делать запрос просто по документам, то проблем нет, это я могу сделать. |
|||
23
FIXXXL
19.05.14
✎
14:07
|
(22) конфу скажешь?
|
|||
24
m_roose
19.05.14
✎
14:09
|
(23) комплексная
|
|||
25
Серго62
19.05.14
✎
14:09
|
(22) Ищи тот регистр, в который пишут оба документа: заказ и док.оплаты
|
|||
26
Крошка Ру
19.05.14
✎
14:10
|
(21) А, ну да ))
|
|||
27
FIXXXL
19.05.14
✎
14:12
|
(25) где вас учат...
|
|||
28
m_roose
19.05.14
✎
14:12
|
(25) ну по вашей логике это РН - расчеты с контрагентами)
|
|||
29
m_roose
19.05.14
✎
14:39
|
ну ребяяят, помогите, пожалуйста. если допустим это РН расчеты с контрагентами. то дальше что делать, как запрос составить? какое поле будет показывать оплату? я так понимаю, нужно смотреть ресурс СуммаВзаиморасчетов, ибо там больше никаких и нет. но насколько я поняла, этот ресурс показывает задолженность контрагента по этому заказу. а как узнать сумму оплаты?
|
|||
30
andreymongol82
19.05.14
✎
14:42
|
(29) А чем все-таки не устраивает "ведомость по заказам"?
|
|||
31
FIXXXL
19.05.14
✎
14:44
|
(29) там поле есть Заказ-Сделка
заполнено? |
|||
32
m_roose
19.05.14
✎
14:45
|
(31) да
|
|||
33
m_roose
19.05.14
✎
14:48
|
(30) там вроде как не показывается сумма оплаты.. а если это и она, то в каком то странном виде, непонятном для пользователя
|
|||
34
КонецЕсли
19.05.14
✎
14:53
|
(32)
запрос: выбрать Сделка,СуммаВзаиморасчетовОстаток из РегистрНакопления.РасчетыСКонтрагентами.Остатки() дальше сама |
|||
35
Михаил Козлов
19.05.14
✎
14:59
|
(29) Оплаты и отгрузки - по РН ВзаиморасчетыСКонтрагентами. Отчет: ведомость по взаиморасчетам с контрагентами. Если ведение взаиморасчетов в договоре НЕ по заказам, то не увидите.
В РН РасчетыСКонтрагентами фиксируется потенциальная (не фактическая) задолженность: клиент заказа на 100 руб, но не платил и ему не отгружали - так 100 руб. и будет висеть. При заполнении платежного документа из этого регистра можно взять непогашенные заказы (чтобы распределить по ним общую сумму платежа). |
|||
36
m_roose
19.05.14
✎
15:30
|
(34) это я и сама написала, мне непонятно что дальше с этим делать..
|
|||
37
m_roose
19.05.14
✎
15:32
|
(35) это я все в курсе. но если учесть, что мне нужны анализировать именно заказы покупателей, то подходит РН расчеты с контрагентами, т.к. именно по нему заказ покупателя может делать движения.
|
|||
38
FIXXXL
19.05.14
✎
15:39
|
(36) 1с - это ж хня
любой запрос напишет :) |
|||
39
catena
19.05.14
✎
15:41
|
Забавно, почти полста постов и ниодного запроса на фотку... Куда мир катится?
|
|||
40
m_roose
19.05.14
✎
15:42
|
(39) сама удивилась)
|
|||
41
Wobland
19.05.14
✎
15:43
|
(39) я себе новую учётку обживаю. пока котиков поставил, лайкаю сижу
|
|||
42
Hans
19.05.14
✎
15:43
|
(40) Зачем тебе эта информация? Типовые отчеты смотрела?
|
|||
43
catena
19.05.14
✎
15:44
|
(41)Как котиков? А как же обезьянки?
|
|||
44
m_roose
19.05.14
✎
15:46
|
(42) ну смотрела конечно же. неужели вы думаете, что я настолько тупа, что прежде чем ломать голову, не посмотрела типовой функционал..
|
|||
45
Wobland
19.05.14
✎
15:46
|
(43) обезьянок я тоже лайкаю. пока не видят котики. т-ссс
|
|||
46
ДенисЧ
19.05.14
✎
15:46
|
А давайте поправим....
Фотку в студию!!! |
|||
47
Wobland
19.05.14
✎
15:47
|
+(46) не взлетит же без неё
|
|||
48
Александр_
Тверь 19.05.14
✎
15:48
|
(0) делай по регистрам. Не вникай пока зачем и почему. Просто прими это на веру.
По документам тоже можно, есть даже случаи когда это лучший путь. Сейчас не этот случай. |
|||
49
Hans
19.05.14
✎
15:48
|
(44) Есть же отчет "Анализ заказов покупателей" не подходит?
|
|||
50
m_roose
19.05.14
✎
15:50
|
(49) на мой взгляд не подходит, если вы подскажете где там можно увидеть сумму оплаты по заказу, я буду вам очень признательна
|
|||
51
Крошка Ру
19.05.14
✎
15:51
|
Что интересно: помогают одни, а фотку требуют другие...
|
|||
52
m_roose
19.05.14
✎
15:51
|
(48) спасибо, пытаюсь. но чувствую брошу я это дело и сделаю по документам
|
|||
53
ДенисЧ
19.05.14
✎
15:51
|
(50) Если у вас в базе не вводится счёт, по которому вам платят, то овощь вы что увидите.
|
|||
54
Wobland
19.05.14
✎
15:51
|
(51) лично я дал правильный ответ в самом начале
|
|||
55
mikecool
19.05.14
✎
15:52
|
ВзаиморасчетыСКонтрагентами
или ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов(если в договоре взаиморасчеты по документам расчетов) |
|||
56
Александр_
Тверь 19.05.14
✎
15:54
|
(52) надо себя перебороть. Что-то новое всегда кажется сложным, запутанным, ненужным.
Но если ты хочешь быть хорошим специалистом, то послушай совет. Разберись с регистрами, зачем они нужны. Сделав это один раз (да, до результата пройдет много больше времени чем могло бы) в следующий раз будет на много проще. Не придется переучиваться и менять привычки. Не придется ходить по граблям. |
|||
57
КонецЕсли
19.05.14
✎
15:57
|
(52)
"это я и сама написала, мне непонятно что дальше с этим делать.." А что тебе "непонятно" с регистром, при этом "понятно" с документами? |
|||
58
m_roose
19.05.14
✎
15:58
|
(53) не очень вас понимаю
(55) взаиморасчеты ведутся по заказам, вроде бы все, по документам расчета нет (56) разбиралась, но уже давно, в памяти почти ничего не осталось, поэтому сейчас не могу разобраться (57) непонятно как из ресурса СуммаВзаиморасчета вытащить именно сумму оплаты. насколько я понимаю, там показывается задолженность контрагента или я не понимаю.... в этом основная моя сложность |
|||
59
Александр_
Тверь 19.05.14
✎
16:11
|
(58)
попробую просто... Документ фиксирует какое-то событие (покупка товара, продажа, возврат, приход денег и т.д.) Само по себе любое событие имеет много различных аспектов, например: Покупка товара покупателем - это уменьшение остатка, увеличение денег (или задолженности контрагента). Тебя сейчас из всего разнообразия аспектов интересуют только те, что влияют на взаиморасчеты с клиентами. На взаиморасчеты с клиентами могут множество событий, которые фиксируются различными документами, такими как: Реализация товаров и услуг Возврат товара Платежное поручение входящие Платежное поручение исходящее Поступление доп расходов Расходный кассовый ордер Приходный кассовый ордер и т.д. - и большое количество других! Чтобы получить правильные, корректные данные по документам тебе нужно написать запрос в котором будут фигурировать все эти документы! Причем с учетом нюансов их использования. Это большая и сложная работа. Более того, при любом изменении, которые внесут разработчики при обновлении, запрос придется переписывать. Чтобы избежать всех этих проблем существуют регистры (это одна из их функций). Регистр - это такая хитрая таблица, в которую пишут только то что нужно по определенному аспекту (или нескольким аспектам). Т.е. это такая выжимка нужных тебе данных. Причем если разработчик изменит логику поведения какого-то документа, то она сам учет это в проведении по регистру. Тебе не придется думать об этом. |
|||
60
Hans
19.05.14
✎
16:11
|
(58) Вобщем в регистре анализировать расход по оборотам, причем отбирать по виду документа, т.к. такие же движения может делать и закрытие заказа.
|
|||
61
КонецЕсли
19.05.14
✎
16:13
|
(58) вытаскивай суммаВзаиморасчетовРасход из виртуальной таблицы Обороты с периодичностью Регистратор и отбором в где Регистратор ссылка Документ.Блаблабла
Но, как написано в (59) там много возможных документов "оплат" |
|||
62
m_roose
19.05.14
✎
16:24
|
(61) а можно как вариант? беру я значит все заказы, какие мне нужно проанализировать, соединяю их с РН взаиморасчетов. При этом в РН получаю только движения, которые делались документами оплаты для заказов, соответственно группирую эти данные по заказам и суммирую суммы взаиморасчетов
|
|||
63
John83
19.05.14
✎
16:24
|
я вот такую штуку сделал при выводе заказа в списке
ВЫБРАТЬ СУММА(ВЫБОР КОГДА ЗаказыПокупателейОбороты.Регистратор ССЫЛКА Документ.ЗаказПокупателя ИЛИ ЗаказыПокупателейОбороты.Регистратор ССЫЛКА Документ.КорректировкаЗаказаПокупателя ТОГДА ЗаказыПокупателейОбороты.СуммаВзаиморасчетовОборот ИНАЧЕ 0 КОНЕЦ) КАК СуммаЗаказа, ЗаказыПокупателейОбороты.ЗаказПокупателя ПОМЕСТИТЬ СуммаЗаказов ИЗ РегистрНакопления.ЗаказыПокупателей.Обороты(, , Регистратор, ЗаказПокупателя В (&СписокЗаказов)) КАК ЗаказыПокупателейОбороты СГРУППИРОВАТЬ ПО ЗаказыПокупателейОбороты.ЗаказПокупателя ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ЕСТЬNULL(СуммаЗаказов.ЗаказПокупателя, РасчетыСКонтрагентамиОстатки.Сделка) КАК Сделка, СуммаЗаказов.СуммаЗаказа - ЕСТЬNULL(РасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток, 0) КАК Оплачено ИЗ СуммаЗаказов КАК СуммаЗаказов ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКонтрагентами.Остатки(, Сделка В (&СписокЗаказов)) КАК РасчетыСКонтрагентамиОстатки ПО (РасчетыСКонтрагентамиОстатки.Сделка = СуммаЗаказов.ЗаказПокупателя) ; //////////////////////////////////////////////////////////////////////////////// УНИЧТОЖИТЬ СуммаЗаказов |
|||
64
m_roose
19.05.14
✎
16:29
|
(63) а &СписокЗаказов это что?
|
|||
65
John83
19.05.14
✎
16:35
|
(64) по-моему название параметра само за себя говорит
вот вся процедура |
|||
66
John83
19.05.14
✎
16:35
|
Процедура СписокПриПолученииДанных(Элемент, ОформленияСтрок)
МассивСсылок = Новый Массив; СоответствиеОформлений = Новый Соответствие; Для Каждого ОфомрлениеСтроки Из ОформленияСтрок Цикл СоответствиеОформлений.Вставить(ОфомрлениеСтроки.ДанныеСтроки.Ссылка, ОфомрлениеСтроки); МассивСсылок.Добавить(ОфомрлениеСтроки.ДанныеСтроки.Ссылка); КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СУММА(ВЫБОР | КОГДА ЗаказыПокупателейОбороты.Регистратор ССЫЛКА Документ.ЗаказПокупателя | ИЛИ ЗаказыПокупателейОбороты.Регистратор ССЫЛКА Документ.КорректировкаЗаказаПокупателя | ТОГДА ЗаказыПокупателейОбороты.СуммаВзаиморасчетовОборот | ИНАЧЕ 0 | КОНЕЦ) КАК СуммаЗаказа, | ЗаказыПокупателейОбороты.ЗаказПокупателя |ПОМЕСТИТЬ СуммаЗаказов |ИЗ | РегистрНакопления.ЗаказыПокупателей.Обороты(, , Регистратор, ЗаказПокупателя В (&СписокЗаказов)) КАК ЗаказыПокупателейОбороты | |СГРУППИРОВАТЬ ПО | ЗаказыПокупателейОбороты.ЗаказПокупателя |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЕСТЬNULL(СуммаЗаказов.ЗаказПокупателя, РасчетыСКонтрагентамиОстатки.Сделка) КАК Сделка, | СуммаЗаказов.СуммаЗаказа - ЕСТЬNULL(РасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток, 0) КАК Оплачено |ИЗ | СуммаЗаказов КАК СуммаЗаказов | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКонтрагентами.Остатки(, Сделка В (&СписокЗаказов)) КАК РасчетыСКонтрагентамиОстатки | ПО РасчетыСКонтрагентамиОстатки.Сделка = СуммаЗаказов.ЗаказПокупателя |; | |//////////////////////////////////////////////////////////////////////////////// |УНИЧТОЖИТЬ СуммаЗаказов"; Запрос.УстановитьПараметр("СписокЗаказов", МассивСсылок); Результат = Запрос.Выполнить(); Если НЕ Результат.Пустой() Тогда Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл ОформлениеСтроки = СоответствиеОформлений.Получить(Выборка.Сделка); ОформлениеСтроки.Ячейки.Оплачено.Значение = Выборка.Оплачено; КонецЦикла; КонецЕсли; КонецПроцедуры |
|||
67
m_roose
19.05.14
✎
16:42
|
(66) спасибо, попробую, но только опять не понятно чем мой вариант не катит? проверила, он правильно работает..
|
|||
68
Wobland
19.05.14
✎
16:42
|
(67) на этом наборе данных
|
|||
69
John83
19.05.14
✎
16:43
|
(67) если честно, тему не читал - просто поделился своим кодом
|
|||
70
m_roose
19.05.14
✎
16:53
|
(68) не поняла?
|
|||
71
Серго62
19.05.14
✎
16:53
|
(67) Читай (59) там все объяснено.
|
|||
72
Wobland
19.05.14
✎
16:56
|
(70) есть уверенность в том, что всё будет хорошо с другими данными?
|
|||
73
Серго62
19.05.14
✎
16:59
|
Может еще вот это внесет какую-то ясность:
http://comprog.org/index/4_4_registry_svedenij_registry_nakoplenija/0-237# |
|||
74
m_roose
19.05.14
✎
17:03
|
(73) спасибо, ничего нового я там для себя не подчеркнула
|
|||
75
DexterMorgan
19.05.14
✎
17:11
|
(74) Для самых твердолобых, которые считают что (59) ерунда и все равно можно делать запрос к документам: для регистров накопления предусмотрено хранение итогов в спец. таблицах, получение данных из которых значительно быстрее, чем из документов
|
|||
76
m_roose
19.05.14
✎
17:14
|
(75) я и не спорю вообще то, что через документы лучше. где вы видите вообще мое возмущение по этому поводу? я не считаю (59) ерундой. не умничайте
|
|||
77
m_roose
19.05.14
✎
17:40
|
(69) спасибо еще раз. в консоли запросов работает все, но вот в через сКД не работает, там появляются параметры периода, которые не удаляются, и с ними отчет ничего не возвращает
|
|||
78
Hans
19.05.14
✎
17:48
|
Вобщем для этой задачи и запрос по документам будет не худшим решением, неудивлюсь если по производительности это может стать лучшим решением. ИМХО, если проектируется конфигурация с нуля для этого вопроса должен быть создан отдельный оборотный регистр.
|
|||
79
FIXXXL
19.05.14
✎
18:38
|
(55) развела таки :)
m_ если нет в РН движухи - нет запроса |
|||
80
John83
19.05.14
✎
19:33
|
(77) какой запрос в скд пытаешься запихнуть?
|
|||
81
m_roose
19.05.14
✎
21:10
|
(80) ну так который вы написали
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |