|
|
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Имеем: Одна Категория Вино-водочного изделия имеет много Наименований изделий (1:М). Пример:Категория - Водка имеет много наименований (Водка пшеничная, Водка анисовая, Абсент); категория-Коньяк (Коньяк армянский, Коньяк французский). Один Магазин имеет много Наименований водки, а одно Наименование водки может находиться во многих магазинах. То есть связь многие ко многим (М:М). Значит связующие таблицы будут Приход и Расход и Остатки. Или Приход и Расход в одну таблицу объединить, сделав столбец Операция? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 22:20 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Во-первых, делай срезу дерево категорий чтобы потом не было мучительно больно. Во-вторых, таки да, приход-расход это одна таблица движений товара. В-третьих, не делай таблицу остатков пока совсем уж не прижмёт, с ней хлопот не оберёшься. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 22:46 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВо-первых, делай срезу дерево категорий чтобы потом не было мучительно больно. Во-вторых, таки да, приход-расход это одна таблица движений товара. В-третьих, не делай таблицу остатков пока совсем уж не прижмёт, с ней хлопот не оберёшься. А в какую таблицу тогда поле остатков делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 23:08 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаА в какую таблицу тогда поле остатков делать? Ни в какую. Считай их на лету как сумму оборотов пока железо будет справляться. К этому моменту ты поднаберёшься достаточно опыта чтобы провести денормализацию правильно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 23:15 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВыcпрошайкаА в какую таблицу тогда поле остатков делать? Ни в какую. Считай их на лету как сумму оборотов пока железо будет справляться. Что-то не пойму. Так вывод числа остатка надо где-то показать. Где? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 23:39 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаТак вывод числа остатка надо где-то показать. Где? Где надо, там о показывай. Какое отношение показ информации имеет к её хранению? Правильный ответ - никакого. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2014, 23:48 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВо-первых, делай срезу дерево категорий чтобы потом не было мучительно больно. Имеется ввиду например: 1CategoryIDCategoryIDP Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 00:21 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Есть несколько способов хранения дерева в БД, выбор конкретного зависит от условий выборки, размеров и других требований. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 01:51 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, Если для курсовой и только проект , то оставляй как есть... покатит... реализуемо... По поводу вопросов: ВыcпрошайкаИли Приход и Расход в одну таблицу объединить, сделав столбец Операция? - довольно спорно... с одной стороны удобно - два разреза в одном месте и можно одним запросом посчитать вычисляемый остаток за период, но если работать в режиме онлайн то при розничной продаже (в расходе) будет болтаться под ногами весь приход, и наоборот - в приходе будет болтаться под ногами вся продажа - отсюда возможны тормоза... есть семечки удобнее из посуды в которой только семечки, а не из той, в которой семечки с сухим горохом в перемешку... ВыcпрошайкаА в какую таблицу тогда поле остатков делать? Если таблицы остатков нет - то можно посчитать остатки запросами на лету и вывести в форму или отчет: весь приход в магазин за период минус весь расход за период... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 02:01 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВыcпрошайкаА в какую таблицу тогда поле остатков делать? Ни в какую. Считай их на лету как сумму оборотов пока железо будет справляться. К этому моменту ты поднаберёшься достаточно опыта чтобы провести денормализацию правильно. То бишь достаточно, чтобы сделать таблицу остатков :). Чего сразу-то не сделать? Учитывая что первые шаги выглядят очень вменяемо... Только в остаток лучше добавить поле "Дата остатка" и признак "Актуальный"... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 02:27 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
АнатоЛойТо бишь достаточно, чтобы сделать таблицу остатков :). Чего сразу-то не сделать? Потому что сейчас он не сможет сделать её правильно. Т.е. стабильной при многопользовательской нагрузке и не вызывающей взаимоблокировок. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 12:12 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovАнатоЛойТо бишь достаточно, чтобы сделать таблицу остатков :). Чего сразу-то не сделать? Потому что сейчас он не сможет сделать её правильно. Т.е. стабильной при многопользовательской нагрузке и не вызывающей взаимоблокировок. Откуда мнение про "многопользовательскую нагрузку" и "взаимоблокировки"? ТС даже про СУБД ничего не говорил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 23:03 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Вот кажется так должно выглядеть, с учетом ваших замечаний. Проверю вот только в субботу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 23:46 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
АнатоЛойDimitry Sibiryakovпропущено... Потому что сейчас он не сможет сделать её правильно. Т.е. стабильной при многопользовательской нагрузке и не вызывающей взаимоблокировок. Откуда мнение про "многопользовательскую нагрузку" и "взаимоблокировки"? ТС даже про СУБД ничего не говорил... MS SQL Express 2012 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 23:47 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
АнатоЛойОткуда мнение про "многопользовательскую нагрузку" и "взаимоблокировки"? Один пользователь не набьёт такую кучу данных чтобы понадобилась денормализация в виде хранимых агрегатов. Обычное, простейшее ведение хранимых агрегатов триггерами означает сериализацию доступа к таблице этих агрегатов. У большинства СУБД это вызывает конвульсии в виде блокировок (в том числе и при откате транзакций). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2014, 23:49 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаПоправил Может поправил, а может испортил... Перспективные возможные плюхи и недочеты к тому, что ты поправил: 1. Ну раз у тебя в Изделии есть Остаток (это хорошо - имеешь цифру без пересчета), то почему нет там Пришло и Продано по такому же принципу (чтоб тоже пересчет не делать) + будет быстрый контроль: Пришло - Ушло = Остаток... 2. Представь теперь, что тебе твою движуху нужно привязать к документам: Приход к накладной (Дата, №, Поставщик), а Расход к Чеку (Дата, №, Время, Дисконтная карта, продавец, и т.д.).... У накладных номера идут от Поставщиков (АД-2014-75634), а у Чеков это от № 1 в начале смены и до .... и так каждый день от №1 и до... конца смены... 3. Расход бывает: Продажа, Брак, Списание, Возврат Поставщику, Кража, Подарки, .... Причем это так... мелкие брызги... на твой рукописный шедевр... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 01:28 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovВ-третьих, не делай таблицу остатков пока совсем уж не прижмёт, с ней хлопот не оберёшься. Эт почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 09:09 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, я вот не очень понял изменения задачи... Изначально считали остатки по магазинам, сейчас же есть только общий остаток без возможности просмотра по каждому магазину в отдельности... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 09:34 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
vmagВыcпрошайкаПоправил Может поправил, а может испортил... Перспективные возможные плюхи и недочеты к тому, что ты поправил: 1. Ну раз у тебя в Изделии есть Остаток (это хорошо - имеешь цифру без пересчета), то почему нет там Пришло и Продано по такому же принципу (чтоб тоже пересчет не делать) + будет быстрый контроль: Пришло - Ушло = Остаток... 2. Представь теперь, что тебе твою движуху нужно привязать к документам: Приход к накладной (Дата, №, Поставщик), а Расход к Чеку (Дата, №, Время, Дисконтная карта, продавец, и т.д.).... У накладных номера идут от Поставщиков (АД-2014-75634), а у Чеков это от № 1 в начале смены и до .... и так каждый день от №1 и до... конца смены... 3. Расход бывает: Продажа, Брак, Списание, Возврат Поставщику, Кража, Подарки, .... Причем это так... мелкие брызги... на твой рукописный шедевр... 1)Как нет? В таблице Изделия есть вычисляемое свойство ФактическийОстаток, который вычисляется как КоличествоПрихода - КоличествоРасхода из таблицы ДвижениеИзделия 2,3) Я знаю что такое расход, но мне пока кроме абстрактного убытия изделия ничего не надо. Документов тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 09:50 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
еще: Приход и расход он разный бывает Отправка не проданной продукции в другой магазин (или возврат поставщику) это что? Возврат продукции покупателем это что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 09:53 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineВыcпрошайка, я вот не очень понял изменения задачи... Изначально считали остатки по магазинам, сейчас же есть только общий остаток без возможности просмотра по каждому магазину в отдельности... Это вычисляемое свойство. Оно будет считаться методом, типа: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 09:54 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
dma_caviarЭт почему? А как работает MS SQL в следующей ситуации? 1) Транзакция 1 изменила остаток на +100500 2) Транзакция 2 изменила остаток на -100500 3) Транзакция 2 закоммитилась 4) Транзакция 1 откатилась Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 12:21 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, однако я так и не уловил момента почему отказались хранить остатки товара по каждому магазину (и теперь их надо будет рассчитывать), а общие остатки хранить будем. Их также можно рассчитывать в случае необходимости, запрос будет отличаться только тем, что в group by будет отсутствовать id магазина ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 12:43 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineВыcпрошайка, однако я так и не уловил момента почему отказались хранить остатки товара по каждому магазину (и теперь их надо будет рассчитывать), а общие остатки хранить будем. Их также можно рассчитывать в случае необходимости, запрос будет отличаться только тем, что в group by будет отсутствовать id магазина Не отказался. Сам пока не знаю что получится, потому что не могу сейчас попробовать эту новую схему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 13:13 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, ну так и добавь поле фактического остатка в таблицу движений. И вычисляй его при записи в неё прихода или расхода. Если приход товара в магазин, находишь последнюю запись об этом товаре в указанный магазин (не важно приход или расход) и плюсуешь к полученному запросом значению остатка значение прихода. Всю информацию записываешь в таблицу движений, при расходе разница только в том, что минусуешь. И всё что тебе нужно будет в таблице. Даже можно будет простым запросом строить историю остатков на любую дату. А из справочника изделий остатки лучше убрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 14:45 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.Fontaine, то есть получается из трёх таблиц слепили одну. С избыточностью информации конечно, ухудшением целостности данных, но зато как ты хочешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 14:50 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineВыcпрошайка, ну так и добавь поле фактического остатка в таблицу движений. Не очень удачная схема - никаких выигрышей по сравнению с отдельной таблицей остатков она не несет, только проблемы 1. Что Вы будете делать с несколькими строго одновременными операциями? 2. Что будет, если операцию движения будет редактировать позже? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 14:52 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Кот Матроскин, однозначно неудачная (я кстати про это написал), но всё же думаетеся мне, удачнее, чем выделение фактических остатков в таблицу изделий. Проблемы (особенно первая) описанные Вами присутствуют и при записи остатков в таблицу изделий. Во-вторых, почему последнюю запись надо брать по времени? А id на что? Ну а про редактирование, это уж пусть извращаются авторы, раз шибко хочется видеть это поле. Конечно, при хранении только текущего значения остатков можно просто определить величину изменения при редактировании и записать новое значение в поле остатков таблицы изделий, но ведь при моём варианте после определения величины изменения можно же update забабахивать на все последующие записи движения этого товара в этом магазине. Просто хранение остатков без привязки к магазинам это вообще чушь какая-то.... Никакого анализа по этой цифре не сделаешь, соответственно она не особо и нужна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 15:02 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineПросто хранение остатков без привязки к магазинам это вообще чушь какая-то.... Никакого анализа по этой цифре не сделаешь, соответственно она не особо и нужна Не путайте божий дар с яичницей. Остаток без привязки к магазину - отличный показатель для планирования закупки новой оптовой партии (с последующей поставкой в магазины) :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2014, 18:49 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Вот что получается при такой схеме. Ну и где тут остатки по отдельному Магазину(Подразделению) должны лечь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2014, 12:30 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Наверное все равно придется делать таблицу Остатки. Вот скрин. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2014, 12:32 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаНаверное все равно придется делать таблицу Остатки. Вот скрин. Схема с таблицей Остатки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2014, 12:33 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
И еще, никак не пойму в каком месте кода нужно сделать проверку на нуль? А то ошибку выдает. Выделил цветом. Хотя свойство QuantityIncoming имеет цифирь, но пишет что объект не имеет значения. Подскажите плиз. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2014, 12:42 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаВот что получается при такой схеме. Ну и где тут остатки по отдельному Магазину(Подразделению) должны лечь? До этого момента мне казалось, что мы проектируем БД. Оказывается разрабатываем интерфейс... В данной форме согласен, остатки по магазину не нужны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2014, 08:39 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineВыcпрошайкаВот что получается при такой схеме. Ну и где тут остатки по отдельному Магазину(Подразделению) должны лечь? До этого момента мне казалось, что мы проектируем БД. Оказывается разрабатываем интерфейс... А разве одно другому должно противоречить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2014, 09:17 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, откуда такая мыль про противоречие двух совершенно не связанных процессов. База данных проектируется для хранения данных, приложение - для отображения их. Как удобно хранить для понимания структуры, так и хранишь данные, потом как удобно воспринимать информацию, так и отображаешь. Никаких противоречий в этом вопросе быть не может ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2014, 11:36 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Mr.FontaineВыcпрошайка, откуда такая мыль про противоречие двух совершенно не связанных процессов. База данных проектируется для хранения данных, приложение - для отображения их. Как удобно хранить для понимания структуры, так и хранишь данные, потом как удобно воспринимать информацию, так и отображаешь. Никаких противоречий в этом вопросе быть не может Да это понятно. Картинки привел для наглядности. Просто хотелось бы чтобы результат сразу видел пользователь, без предварительного клика на кнопку, которая бы выводила отчет. Поэтому и таблицу Остатки сделал. Выглядеть примерно будет так как на скрине. Какие проблемы будут в хранении не знаю. Может у кого есть другое мнение. тогда приведите пример правильной схемы БД, ну и картинку желательно увидеть как данные выглядят в юзер интерфейсе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2014, 22:31 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
Выcпрошайка, мнений по схеме БД в этом топике напривилили уже порядочно. Тебе самому выбирать какой лучше. Лично мне кажется, более правильным решение отказа от хранения остатков и справочники должны хранить только справочную информацию. Так-то полной постановки задачи не было, потому я напишу по тому, что писал ты. Во-первых, займёмся справочниками. таблица Категории (id категории, наименование, id родителя) таблица Изделия (id изделия, наименование, id категории) таблица Магазины (id магазина, наименование) ну и одна рабочая таблица Движение (id движения, id изделия, id магазина, дата, направление (расход или приход), количество) При этом остатки можно вычислить простым запросом, который схематично выглядит так: Код: sql 1. Если не надо считать остатки по магазинам, то и не указывай в запросе id магазина. Или сделать этот запрос вьюхой при необходимости определения общих остатков выполнять запрос Код: sql 1. Вот и всё проктирвование БД по твоеим требованиям Конечно, при необходимости, можно подобавлять ещё кучу полей и таблиц. Например, в справочники статус изделия, категории, магазина (типа активен, не активен и т.п.) В таблицу движений добавить единицы измерения в какой единице пришло или ушло изделие. При этом конечно следует создать справочник единиц измерений: id единицы измерения, наименование, id базовой единицы измерения, коэффициент пресчёта в базовую единицу измерения (например, один раз пришло 12 бутылок водки, в следующий раз 5 ящиков водки, чтобы правильно сосчитать остатки требуется иметь возможность перевода бутылок в ящики и наоборот) Да много что ещё можно добавить при необходимости А уж как это выводить пользователю, это совершенно другая тема, к проектированию БД не имеющая никакого отношения. Но это тебе и самому понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2014, 08:43 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
ВыcпрошайкаИмеем: Одна Категория Вино-водочного изделия имеет много Наименований изделий (1:М). Пример:Категория - Водка имеет много наименований (Водка пшеничная, Водка анисовая, Абсент); категория-Коньяк (Коньяк армянский, Коньяк французский). Один Магазин имеет много Наименований водки, а одно Наименование водки может находиться во многих магазинах. То есть связь многие ко многим (М:М). Значит связующие таблицы будут Приход и Расход и Остатки. Или Приход и Расход в одну таблицу объединить, сделав столбец Операция? классно рецептус -> сходи на 1с чую ща меня запинают почем зрря но - сходи на 1с не пожалеешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2014, 23:26 |
|
||
|
Просветите по схеме
|
|||
|---|---|---|---|
|
#18+
9681ВыcпрошайкаИмеем: Одна Категория Вино-водочного изделия имеет много Наименований изделий (1:М). Пример:Категория - Водка имеет много наименований (Водка пшеничная, Водка анисовая, Абсент); категория-Коньяк (Коньяк армянский, Коньяк французский). Один Магазин имеет много Наименований водки, а одно Наименование водки может находиться во многих магазинах. То есть связь многие ко многим (М:М). Значит связующие таблицы будут Приход и Расход и Остатки. Или Приход и Расход в одну таблицу объединить, сделав столбец Операция? классно рецептус -> сходи на 1с чую ща меня запинают почем зрря но - сходи на 1с не пожалеешь А чего именно там смотреть то надо? Ну стоит на компе у меня 1с. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2014, 10:45 |
|
||
|
|

start [/forum/topic.php?all=1&fid=32&tid=1540878]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
152ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 495ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...