Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
далее делаем два куба физических (КубОстатков и КубДвиженийОстатков) на основе соответствующих вьюх и виртуальный куб (КубОстатковИДвиженийОстатков) соответственно из двух данных. я не беду останавливаться на том как источник данных сделать и т.п. мелочи. 1. сделаем шаровые измерения которые учавствут у нас в обоих кубах и по которым мы будем связывать кубы: 1.1. Период на основе вьюхи dbo.VIEW_DWH_VREMA_RGRA_99 тут просто тип зададим что это временное измерение в иерархией год,месяц,день. создали отпроцессим его 1.2. Номенклатура возьмем сразу источником таблицу SC33 (это тут у меня номенклатура храниться) это у нас Parent-Child измерение зададим столбец кто парент и столбец кто чилд 1.3. Склад возьмем сразу источником таблицу SC31 (склады у мене тута) это просто плоское измерение без всяких иерархий 2. общие измерения сделали делаем кубы: 2.1. КубОстатков сделаем как на рисунке: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 09:46 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
2.2. КубДвиженийОстатков сделаем тоже как на рисунке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 09:50 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
замечаем что в КубДвиженийОстатков мы Дату движения (DATA_DVIJENIA) связали с периодом (PERIOD). 2.3. ну и делаем вируальный КубОстатковИДвиженийОстатков визардом он очень выстренько создаеться, но тут другая засада если приходы и расходы суммируються как нам и надо, то с остатком (наследие куба остаков) не все так просто. короче будем писать вычисление остатков на любую дату, мы селаем немного проще вычислим НачОстаток на дату котоый считаеться как сумма остатка на начало месяца а потом сумма всех приходов минус сумма всех расходов до данной даты в месяце, ладно короче СМ для НачОстаток=([Период].CurrentMember.FirstSibling,[Measures].[Ostatok])+sum([Период].CurrentMember.FirstSibling:[Период].CurrentMember,[Measures].[Prihod]-[Measures].[Rashod])-([Measures].[Prihod]-[Measures].[Rashod]) можно еще и КонОстаток=([Период].CurrentMember.FirstSibling,[Measures].[Ostatok])+sum([Период].CurrentMember.FirstSibling:[Период].CurrentMember,[Measures].[Prihod]-[Measures].[Rashod]) можно еще и приходы и расходы сделать как СМ, вычислим еще и средне дневной остаток СрДнОстаток=Avg(Descendants([Период],[Период].[Day]),([Measures].[НачОстаток]+[Measures].[КонОстаток])/2) т.к. мы все наши меры сделали СМ, то можно виртуральные Prihod, Rashod и Ostatok отключить Visible=False ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 10:02 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
ну вот мы получили КубОстатковИДвиженийОстатков с измерениями: Период, Номенклатура, Склад с мерами: НачОстаток, Приход, Расход, Коностаток, СрДнОстаток и пользуясь своим любимым клиентом www.msolapvb.narod.ru можем любоваться полученными результатами 8-). Народ если у кого есть пояснения или дополнения или исправления прошу постить будем народ после сюды отправлять. типа FAQ сделаем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 10:09 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Интересно. Только вы забыли уточнить, что поле date_time_iddoc в таблице движений регистра появляется после установки галочки - "быстрая обработка движений". Еще не совсем понял ваши мохинации с convert? Зачем так усложнять себе жизнь? Не судьба сделать left(date_time_iddoc,8) в результате строка типа '20010101' и так MSSQL воспринимается как дата, после чего можно получить и месяц и год :) Так же в RG хранятся не остатки на начло месяца, а остатки на ТА :) (если я не понял вас - поправьте меня), для высичления Остатка на дату можно воспользоваться такой вот конструкцией: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 12:42 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
спс за поправки, мои манипуляции с convert Это точно махинации спс за уточнение а насчет регистров, вот документация: Остаточный регистр Реализуется с помощью двух таблиц: RGxxx и RAxxx. Первая таблица содержит значения функции НачОст на начало каждого периода указанного в меню системы "Операции - Управление оперативными итогами" в секции "Периодичность сохранение остатков". Значение данной функции может хранится на начало каждой пятидневки, десятидневки, на начало каждых пятнадцати дней, на начало каждого месяца. Для каждого регистра данная опция действует одинаково, таким образом нет возможности установить разную периодичность для разных регистров. Замечу, что кроме функции НачОст можно также получить и функцию КонОст, так как остаток на начало текущего периода является остатком на конец предыдущего. Если вам нужно получить остаток на начало какого-то периода, то для поля PERIOD вы должны указать значение начала предыдущего периода (то есть НачОст(01.01.2002) ~ PERIOD = 20020112). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 13:07 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Эт я читал :) Только там написано так, что можно подумать, что если сейчас 02.01.2005, то таблица RG хранти дынные только на 01.01.2005, а вот нет :) прикол в том, что она хранит на ТА, т.е. учитывая 02.01.2005. Если посмотреть в profiler-е, то функция СводныйОстатко() - обрабатывается как select SUM(XXX) from RGxxx where <усливие>, а НачОст считатется вот так select SUM(XXX) from RGxxx where PERIOD = НачПредыдущегоМесяца <усливие> ЗЫ я долго тормозил по этому поводу, когда наткнулся на то, что мои предположения о том что хранится в RG неверны :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 13:19 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
8-) ладно сделаем по другому если в конфигураторе стоит детализация по месяцу то и осттки там будут храниться на начало кажого месяца, запрос select * from rg99 выбирает PERIOD SP3603 SP101 SP100 SP102 2004-08-01 00:00:00.000 0 4 1 10000.00000 2004-09-01 00:00:00.000 0 4 1 10000.00000 2004-10-01 00:00:00.000 0 4 1 10000.00000 2004-11-01 00:00:00.000 0 4 1 10000.00000 2004-12-01 00:00:00.000 0 4 1 10000.00000 2005-01-01 00:00:00.000 0 4 1 10003.00000 2005-02-01 00:00:00.000 0 4 1 9995.00000 2005-03-01 00:00:00.000 0 4 1 9995.00000 2005-04-01 00:00:00.000 0 4 1 9995.00000 2005-05-01 00:00:00.000 0 4 1 9995.00000 2005-06-01 00:00:00.000 0 4 1 9995.00000 2005-06-01 00:00:00.000 0 5 1 2.00000 2005-07-01 00:00:00.000 0 4 1 9995.00000 2005-07-01 00:00:00.000 0 5 1 2.00000 2005-08-01 00:00:00.000 0 4 1 9995.00000 2005-08-01 00:00:00.000 0 5 1 2.00000 где PERIOD это дата остаков, SP3603 -фирма, SP101 -номенклатура, SP100 -склад, SP102 -остаток точка актуальности у меня стоит на 07.08.2005 какой релиз платформы у вас? т.к. я получил то что и ожидал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 14:56 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
у меня релиз 25... все поля один в один, как у вас :) ну вот мои данные (для чистоты эксперимента отобрал такие товары которые двигались в период НачМесяца и ТА) : вот этос и данные по нему Код: plaintext 1. 2. Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. Код: plaintext 1. 2. 3. 4. 5. Код: plaintext 1. 2. Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. Следовательно данные, у которых период = 01.07.05 хранят на самом деле остаток на конец 7-го или начало 8-го месяца, а данные с периодом 01.08.05 отображают состояние остатков на ТА :) А наткнулся я на это, когда написал миграцию на тригерах остатков и у меня полезли минуса :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 15:40 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
А вот запрос функции КонОст на конец 01.07.2005 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 3. 4. ЗЫ... Следовательно RG хранит данные по тек месяцу на ТА, а на прошедшие мес. на его конец :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 15:46 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
ха говорим об одном и томже самое что интересное, для этого я в просмотре SELECT CONVERT(smalldatetime, DATEADD([Month], 1, dbo.RG99.PERIOD), 104) AS PERIOD_OSTATKOV, dbo.SC33.ID AS TovarID, dbo.SC31.ID AS SkladID, dbo.RG99.SP102 AS OSTATOK FROM dbo.RG99 INNER JOIN dbo.SC33 ON dbo.RG99.SP101 = dbo.SC33.ID INNER JOIN dbo.SC31 ON dbo.RG99.SP100 = dbo.SC31.ID GROUP BY dbo.RG99.PERIOD, dbo.SC33.ID, dbo.SC31.ID, dbo.RG99.SP102 период сдвигаю на месяц вперед, чтобы получить настоящие нормальные остатки на начало месяца, а ТА получаеться у меня уже в след. месяце, в тоже время остатки на любую дату в любом месяце и даже в текущем вычисляються MDX выражением НачОстаток=([Период].CurrentMember.FirstSibling,[Measures].[Ostatok])+sum([Период].CurrentMember.FirstSibling:[Период].CurrentMember,[Measures].[Prihod]-[Measures].[Rashod])-([Measures].[Prihod]-[Measures].[Rashod]) где беруться сотатки на первое число текщего месяца потом суммируються обороты от первого числа до текущего времени (но в этом случае у нас проссумируються и обороты данного дня) поэтому на начало дня мы отнимем обороты дня, можно былобы взять [Период].PrevMember но тогда остаток на первое число непарльно считаеться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 16:27 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Теперь на основе этого куба можно посчитать спрос на товар, расход в день и спрогнозировать спрос :) Если сюда добавить еще сопоставление товаров, то и на сопутствующие товары можно это тоже расчитать и таким образом планировать рынок :) Хе-хе, долго у меня такой отчет просят :) Теперь осталось это все как то разгрести.... А вы в каких целях используюте этот куб? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 16:35 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
вот все что ты Сергей сказал то и делаем, счас переходим на новое хранилище, в старом небыло детализации до товара и много других вкусностей и просто постоянно на форуме народ просит как остатки посчитать как среднее посчитать как использовать таблицы остатков и движений, решил собраться и написать как и что сделать. и вот еще забыл одну весчь: иногда нам требуеться смотреть сводные данные в сравнении с каким либо прошлим периодом ну к примеру года сравнивать друг с другом по месяцам вот как на рисунке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 16:55 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
для этого достаточно сделать два виртуальных измерения на основе Периода: одно это Год которое содержит года и Месяц содержит месяца. эти измерения процессим запихиваем в наши кубы и физические и виртуальные, поэтапно процессим все что меняли, ну и получаем такую простую но очень полезную аналитику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 17:00 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Оч... полезная штука, надо бы у себя что-нибудь забабахать :) Анализ месяцев друг с другом у меня есть, но тока через ТЗ, а это сам понимаешь гемор еще тот и несколько часов расчета если приличный период задать Надо бы кубик, который бы отображал остатки на день каждого товара, чтоб можно было выяснить почему товар не продовался, потому что его не было или просто не было спроса, конечно идеальный вариант еще и по времени это все развести :) Тогда не кислый кубик получится... Так же нужны наверное раскладка по брендам в разрезе вида товара, который делится на подвиды и применения в разных условиях :) А какие еще у вас есть разработки? Оч. интересно, давно хочется сделать номальную аналитику, но как то не получается все, т.к. с кубами не сталкивался, надо изучать, а времени как всегда никто не дает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 17:08 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
ну мы разработали кучу всяких показателей, что порой сами забываем что учавствует в их расчетах, но в основном показатели берем из анализа хозяйственной деятельности, немного изменяем под оперативный учет, ну что у нас есть такого это: потребности в оборотных средствах, коэффициенты ликвидности, оборачиваемости, эффективности, расчеты плановых показателей (остатков оборотных средств, продаж) и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 17:26 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
а примеры можно? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 17:29 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
ну вот к примеру КоэффициентОборачиваемостиОстатков=([Measures].[Остаток зак сум]*1.5)/[Measures].[Прод розн сум] ПотребностьВОборотныхСредствах=[Measures].[СрДнОстЗакСумм]/[Measures].[Прод розн сум] ПрибыльНа1рубльОстаков=[Measures].[Прибыль]/[Measures].[СрДнОстЗакСумм] интересно почему в КоэффициентОборачиваемостиОстатков остаток на 1,5 умножаеться, надо будет у экономистов узнать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2005, 17:39 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Валекну вот к примеру КоэффициентОборачиваемостиОстатков=([Measures].[Остаток зак сум]*1.5)/[Measures].[Прод розн сум] ПотребностьВОборотныхСредствах=[Measures].[СрДнОстЗакСумм]/[Measures].[Прод розн сум] ПрибыльНа1рубльОстаков=[Measures].[Прибыль]/[Measures].[СрДнОстЗакСумм] интересно почему в КоэффициентОборачиваемостиОстатков остаток на 1,5 умножаеться, надо будет у экономистов узнать Привет! А можно узнать что здесь есть Остаток зак сум Прод розн сум - это чистые продажи? СрДнОстЗакСумм Прибыль - это наценка я так понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:07 |
|
||
|
1с MS AS Excel Остаток
|
|||
|---|---|---|---|
|
#18+
Olf Валекну вот к примеру КоэффициентОборачиваемостиОстатков=([Measures].[Остаток зак сум]*1.5)/[Measures].[Прод розн сум] ПотребностьВОборотныхСредствах=[Measures].[СрДнОстЗакСумм]/[Measures].[Прод розн сум] ПрибыльНа1рубльОстаков=[Measures].[Прибыль]/[Measures].[СрДнОстЗакСумм] интересно почему в КоэффициентОборачиваемостиОстатков остаток на 1,5 умножаеться, надо будет у экономистов узнать Привет! А можно узнать что здесь есть Остаток зак сум Прод розн сум - это чистые продажи? СрДнОстЗакСумм Прибыль - это наценка я так понимаю? как написано так и читать Остаток зак сум - остаток товара в закупочных ценах, Прод розн сум - продано товара в розничных ценах, СрДнОстЗакСумм - Средне дневные остатки в закупочных суммах, Прибыль - прибыль (разница м/у продано в розн. суммах и зак. суммах) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2005, 17:30 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=33213565&tid=1870884]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 379ms |

| 0 / 0 |
