gifts2017

Как я оптимизировал проведение документов в ТиС

Опубликовал Павел Шемякин (toypaul) в раздел Программирование - Практика программирования

Неожиданный опыт оптимизации конфигурации "Торговля и Склад" для SQL

Итак. Обратился ко мне очередной клиент с просьбой оптимизировать проведение документов в конфигурации "Торговля и Склад". База в формате SQL. Были поставлены определенные задачи - сейчас период неделя проводился за ночь, необходимо, чтобы за ночь проводилось 3 или хотя бы 2 недели. Прикинув по своему опыту, предупредил клиента, что в режиме проведения на точку актуальности коим является восстановление последовательности или прочие аналогичные проведения с восстановлением последовательности ускорения большого не бывает - обычно в 1.5 раза. Решили все же попробовать.

С помощью библиотеки ToySQL и набора оптимизации ТиС, которые опробованы уже не на одном десятке клиентов сделал работу. Отдал клиенту на проверку. В общем-то так и получилось. Ускорение примерно составило 1.5 раза.

Стали думать, что же можно сделать еще. Обычно после такой оптимизации результат всех устраивал. Возможно кто-то сам потом дорабатывал мой код, поэтому кроме стандартных действий я ничего не предпринимал. Сказал, чтобы клиент сделал замер производительности в отладчике (до этого также делали замер, который показал что 80% времени уходит на расчет итогов). Сделали замер. Каково же было мое удивление, когда выяснилось, что примерно 60% времени выполнения кода уходило на получение данных констант и периодических реквизитов. Причем по сути своей это были постоянные величины, которые почти никогда не менялись. После этого заменили обращение к константами и периодическим реквизитам на обращение к переменным в глобальном модуле. Такие действия дали прирост еще 30%. В общем получился довольно неплохой результат, которым остались все довольны - в том числе и я.

з.ы. Отладчик в 1С полезная штука! :)

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Михаил (Mikeware) 16.12.08 13:59
Павел, ты удивляешь :-)
2. Павел Шемякин (toypaul) 16.12.08 14:01
приятно что кого-то еще можешь удивить :)
3. Сhe Burashka (CheBurator) 16.12.08 14:12
О, блин! Статья - бяковая!!! ;-) так сказать отчет о внедрении...
4. Сhe Burashka (CheBurator) 16.12.08 14:20
но все равно - полезное зерно есть...
5. Артур Аюханов (artbear) 16.12.08 14:39
6. Альтаир (Altair777) 16.12.08 14:43
А в чем, все-таки, суть полученного ускорения? Какая версия SQL Server'а?

Нечто подобное было и у меня, но решил с помощью 1С++. Методом ReconnectNative().
Честно говоря, кроме рекламы фирмы 1С и самовосхваления в этой статье я ничего полезного не заметил.

А эта фраза меня убила просто :-)
"Прикинув по своему опыту, предупредил клиента, что в режиме проведения на точку актуальности коим является восстановление последовательности или прочие аналогичные проведения с восстановлением последовательности ускорения большого не бывает - обычно в 1.5 раза".
На русский ее можно перевести? А то смысл как-то ускользает.

P.S. Кстати, я в десятки раз ускорил. Все зависит от документов, у меня были по несколько тысяч строк.
7. Павел Шемякин (toypaul) 16.12.08 14:56
- СКЛ 2005
- рыконнектнативе здесь нафик не нужен ибо 2005. да и средства оптимизации, которые я применяю решают ее и без этого на 2000 сервере.
- не заметил полезного? читать надо не по диагонали и включать серое вещество.
- рекламы фирмы 1С здесь нет
- самовосхваления тоже нет. если кажется - крестится надо
- по-моему богатому опыту, который заключается в переделки нескольких десятков конфигураций ТиС на платформе SQL при среднем размере документа в 10 строк проведение документа на точку актуальности можно ускорить прямыми запросами в 1.5 раза. так понятно или еще разжевать?
- не я начал мерятся членами, но продолжу. при 1000 строк ускорение получается раз в 30-50.
8. Альтаир (Altair777) 16.12.08 15:23
(7)
---------------------------------------------------------------
Это что угодно, но не "Записки автоматизатора". :-)
Ты не указал никаких данных. Ни об версию SQL, ни о размере документов, ни о методе решения

---------------------------------------------------------------
> по-моему богатому опыту, который заключается в переделки нескольких десятков конфигураций ТиС на платформе SQL при среднем размере документа в 10 строк

При чем тут ТИС это или не ТИС? Все зависит от профиля организации.
Продавцы мебели до десятка строк в накладую забивают, аптечные фирмы тысячи... или больше :-)

---------------------------------------------------------------
> - не заметил полезного? читать надо не по диагонали и включать серое вещество.
Не хами.

---------------------------------------------------------------
> - рекламы фирмы 1С здесь нет
А ссылочки на сайт 1С, где предлагается КУПИТЬ?

---------------------------------------------------------------
> - самовосхваления тоже нет. если кажется - крестится надо
А как же про твой "богатый" опыт? :-)

---------------------------------------------------------------
> - не я начал мерятся членами, но продолжу
Да нет, парниша, ты и начал :-)

---------------------------------------------------------------
Ты в 1С когда последний работал? Посмотрел твой профиль на www.free-lance.ru. Мда... Какое отношение твоя бурная деятельность имеет к 1С? :-)
10. Доржи Цыденов (support) 16.12.08 15:50
А мне понравилось, пиши еще, Паша.
13. Василий Демидов (Душелов) 16.12.08 16:03
(11) > я 1С занимался когда ты еще под стол пешком ходил, и до сих пор занимаюсь.

Посмотрел, я тоже с 7.5 начал заниматься, а многие тут присутствующие еще с 6-ки и раньше... Эт не повод так волноваться...
14. Сергей (seermak) 16.12.08 16:08
Ребята, извините, но что-то конец года на вас раздражающе действует - все чаще переходите на личности: Не нравится минусуйте, игнорируйте. Скоро стрелку забивать будете и по мордасам :-)
artbear; Душелов; +2 Ответить
15. Аркадий Кучер (Abadonna) 16.12.08 16:10
Чего уж так накинулись?
Например, "Каково же было мое удивление, когда выяснилось, что примерно 60% времени выполнения кода уходило на получение данных констант и периодических реквизитов." - совсем не безполезная информация
20. Альтаир (Altair777) 16.12.08 16:17
(15) Кто ее может подтвердить? Мне она, если честно, показалась не совсем достоверной.
И не забывайте, что все зависит от базы.
33. Доржи Цыденов (support) 16.12.08 16:32
Паша, здесь так не принято общаться.
37. Павел Шемякин (toypaul) 16.12.08 16:36
(33) Доржи, учту. Но я вроде вполне корректно отвечал на оскорбления. Да и на вопросы по существу ответил. Кто не понял - сам виноват :). Если подчищать будешь, подчищай все до конца.
39. Сергей Лунев (luns) 16.12.08 16:38
Самое интересное, что и в 8 тоже они этим грешат (константы в цикле читать).. сам правил некоторые документы.
40. Альтаир (Altair777) 16.12.08 16:43
Доржи, верни, пожалуйста, мой коммент, где я извинился за то, что сказал, что это реклама фирмы 1С. И уточнил, что это реклама ToySQL.
Что в этом такого крамольного было? :-)
41. Доржи Цыденов (support) 16.12.08 16:44
(37) Я конечно понимаю, что ты уже устал объяснять про эффективность ToySQL, но разве это не повод сделать развернутый ответ, думаю никто не сомневается, что это было одним из мотивов написания этой статьи.
42. Аркадий Кучер (Abadonna) 16.12.08 16:45
off-top. Глючок, однако. Захожу глянуть в комменты, вижу ТОЛЬКО окно для ввода коммента №17 и больше ничего. Ни "назад", ни "вперед", ни других комментариев.
43. Доржи Цыденов (support) 16.12.08 16:46
(40) Под горячую руку попалась. Да, реклама ToySQL и что? Еще раз говорю, миссия у нас такая.
44. Аркадий Кучер (Abadonna) 16.12.08 16:46
+(42) Во, ввел 17, ктр. на самом деле оказался 42 - и все появилось
45. Василий Демидов (Душелов) 16.12.08 16:47
Да где же в моих постах оскорбления-то?
46. Павел Шемякин (toypaul) 16.12.08 16:49
(41) мотив-то как раз другой был :) и речь совсем не про эффективность ToySQL, а про то, что можно и нужно оптимизировать и типовыми методами. после оптимизации прямыми запросами это более очевидно, так как до оптимизации этого не было видно. а ссылки просто пришлись к месту. у кого-то это вызвало странную реакцию.
47. Альтаир (Altair777) 16.12.08 16:49
(43) Да ничего такого. Просто я удивился, что коммент зарезали :-)
48. Альтаир (Altair777) 16.12.08 16:54
(46) О методах оптимизации здесь только одно - "заменили обращение к константами и периодическим реквизитам на обращение к переменным в глобальном модуле".

> речь совсем не про эффективность ToySQL
Как Катон Старший все время про Карфаген, так и автор все время про ToySQL?
:-)
49. Доржи Цыденов (support) 16.12.08 17:07
(46) верим, отчего же не поверить :). В моей практике был случай, когда надо было ускорить проведение, я даже примерял к этому делу ToySQL, но все разрешилось типовым способом. Запрет работы задним числом, и получение итогов в момент проведения на Точку Актуальности. Глобальное перепроведение тоже со сдвигом ТА.
Задним числом работали пару человек, хорошо проинструктированные к чему это может привести.
Необъяснимо, но факт, в базе не было отрицательных остатков. :)
50. Альтаир (Altair777) 16.12.08 17:12
(49) Отрицательные остатки - это не самое страшное.
Партионный учет - вот зло :-)
Когда нужно перепроводить для восстановления последовательности списания партий.
51. Доржи Цыденов (support) 16.12.08 17:21
(50) Ну, соответственно с партиями тоже было все в порядке, работали почти в реальном времени.
52. Сhe Burashka (CheBurator) 16.12.08 17:44
кста, на головной странице на этот топик вот такая инфа:
Комментарии (4294967295)
..
+ еще: использование при частых обращениях для периодических реквизитов объекта "Периодический" позволяет получить выигрыш до 25%
53. Альтаир (Altair777) 16.12.08 17:57
(52) И страницы сбились тоже. Когда кликаешь в http://infostart.ru/comments/ попадаешь на 3-ью которой больше нет. Или пока нет :-)

Комментарии (29)
Страницы: ← Назад 1 3
54. Михаил (Mikeware) 17.12.08 11:51
(20) Подтвердить ее может любой, кто пробовал попрофилировать работу 1С.
56. Альтаир (Altair777) 17.12.08 12:35
(15), (20), (54)

(0) > Сказал, чтобы клиент сделал замер производительности в отладчике (до этого также делали замер, который показал что 80% времени уходит на расчет итогов). Сделали замер. Каково же было мое удивление, когда выяснилось, что примерно 60% времени выполнения кода уходило на получение данных констант и периодических реквизитов.

Вчитайтесь и не тормозите! Исковеркали базу, в которую насовали кучу периодических реквизитов? И мало того, еще и в ОбработкаПроведения() их всунули?

> 15. Abadonna 16.12.2008 16:12:55
> Чего уж так накинулись?
> Например, "Каково же было мое удивление, когда выяснилось, что примерно 60% времени выполнения кода уходило на получение данных констант и периодических реквизитов." - совсем не безполезная информация

И чем же это полезно? Для тебя лично и для всех?
Частный случай в единичной базе.
Сейчас провел замер в Комплексной для Украины (7.70.023). Типовой ТиС нет по рукой.
Документ РасходнаяНакладная

Модуль Строка Кол Время %(Время)
-------------------------------------------------------------------
Глобальный модуль 8732 ВремРегистры.РассчитатьРегистрыНа(Конт.ТекущийДокумент()); 1 0.32026 84.92
-------------------------------------------------------------------
Глобальный модуль 4433 Ит.ВыполнитьЗапрос(Конт.ТекущийДокумент(),,спСчета); 1 0.00717 1.90
-------------------------------------------------------------------
Документ.РасходнаяНакладная.Модуль Документа 510 ДвиженияРегистров(); 1 0.00403 1.07
-------------------------------------------------------------------
Глобальный модуль 816 Реквизит=Метаданные.Документ(ВидДокумента).РеквизитТабличнойЧасти(ИмяРеквизита); 18 0.00283 0.75
-------------------------------------------------------------------
Документ.РасходнаяНакладная.Модуль Документа 536 Операция.Записать(); 1 0.00229 0.61
-------------------------------------------------------------------
Глобальный модуль 805 Реквизит=Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита); 14 0.00213 0.57
58. Павел Шемякин (toypaul) 17.12.08 12:49
причем так будет для любой типовой ТиС! коих гораздо больше 50% используется. в каком месте это единичный случай. тоже не ясно.
63. АЛьФ (АЛьФ) 17.12.08 13:10
Предлагаю автору не отвечать на грубость, а Altair777 покинуть эту тему, если она его так раздражает.
65. Альтаир (Altair777) 17.12.08 13:12
(63) Я ее покинул, но тут защитничек пришел, мой коммент минусанул.
Я считаю, что необоснованно.
66. АЛьФ (АЛьФ) 17.12.08 13:15
2(65) Разбирайся в личке с такими вопросами.
67. Павел Шемякин (toypaul) 17.12.08 13:19
(63) предложение принимается :)
70. Михаил Ражиков (tango) 17.12.08 13:24
"прилюдность" инет-оскорблений весьма условна.
т.е. никого на самом деле не трогает чужая ругань в чужой адрес.
а если трогает, то это уже проблема :)
72. Альтаир (Altair777) 17.12.08 14:13
А теперь элементарная математика

(0)
> до этого также делали замер, который показал что 80% времени уходит на расчет итогов
> Ускорение примерно составило 1.5 раза
> примерно 60% времени выполнения кода уходило на получение данных констант и периодических реквизитов

Допустим, раньше проведение выполнялояь за 100 секунд.
Из них 80 уходило на расчет итогов. Пусть даже на расчет периодики уходило остальные 20.
После "ускорения", проведение выполняется 100/1,5=67 секунд.
Допустим, что уменьшение пошло только за счет расчета итогов.
И на него теперь тратится 80-33=47 сек.
На периодику - остальные 20.
И сколько это получается? 30%, а не "примерно 60%", как заявил автор.

"Поздравляю вас, гражданин, соврамши" :-)
74. АЛьФ (АЛьФ) 17.12.08 14:42
2(72) Слушай, ты начинаешь реально раздражать. Подумать и вникнуть не пробовал? Математика-то на уровне второго класса:
Пусть раньше проводилось за 100 секунд. Ускорили в 1,5 раза, получили время выполнения 67 секунд. Из них (оставшихся!) 60% уходило на чтение констант и периодики. Ускорили этот процесс, получили прирост в 30% и итоговое время выполнения примерно 23 секунды.
75. АЛьФ (АЛьФ) 17.12.08 14:43
+(74) поправка: "итоговое время выполнения примерно 44 секунды."
76. Аркадий Кучер (Abadonna) 17.12.08 14:48
Блин, ну вполне же безобидный топик был... Парад планет, однако (Планет, не про тебя ;))
77. Альтаир (Altair777) 17.12.08 14:56
(74) > з них (оставшихся!) 60% уходило на чтение констант и периодики

Как на них могло уходить 60%, т.е. 40 секунд, если ДО оптимизации на них уходило не более 20 секунд?
И при чем тут твое раздражение? Я конкретно доказал, что автор подтасовал факты, что бы показать свои выдающиеся успехи в "оптимизации".

> Ускорили этот процесс, получили прирост в 30% и итоговое время выполнения примерно 23 секунды.

А это тут причем? Я про дальнейшую оптимизацию не упоминал.
78. Олег Пономаренко (O-Planet) 17.12.08 14:59
Ржал. Прикольно читать комментарии с вырезкой в 10 шт. Очень напоминает на анекдот, что остались только "в" и "на". Похоже, топик был зачетный. Посмотрел, кто автор... Нет, не ОН... 0_о
79. Альтаир (Altair777) 17.12.08 15:03
(78) > Посмотрел, кто автор... Нет, не ОН... 0_о
А очень похоже :-)
80. Павел Шемякин (toypaul) 17.12.08 15:04
в (72) вроде верно посчитано. почему так вышло мне уже лень объяснять и разбираться. вполне возможно что до оптимизации замер делался только на накладных, а после оптимизации на всех документах. и ускорение в 1.5 раза я со слов клиента сказал.

написал то, что сам лично в замерах считал. до оптимизации - 80% (примерно) на расчет итогов. после оптимизации в сумме 60% на константы и периодику
81. Павел Шемякин (toypaul) 17.12.08 15:06
посмотрел хистори в аське. на константы уходило 50% :)
82. Альтаир (Altair777) 17.12.08 15:09
(74) АЛьФ > 2(72) Слушай, ты начинаешь реально раздражать.
(80) toypaul > в (72) вроде верно посчитано.

АЛьФ, ты ничего не хочешь по этому поводу сказать? Извиниться хотя бы :-)
83. Альтаир (Altair777) 17.12.08 15:16
(81) toypaul > посмотрел хистори в аське. на константы уходило 50% :)
ржунимагу :D
Автор, в шапке не забудь поменять.
84. АЛьФ (АЛьФ) 17.12.08 15:17
2(82) Ты полностью прочитал (80)? Сам извиниться не хочешь?
85. Альтаир (Altair777) 17.12.08 15:19
(84) > 2(82) Ты полностью прочитал (80)?
А ты еще (81) прочитай
86. АЛьФ (АЛьФ) 17.12.08 15:21
2(85) И что? Это оправдывает твое хамство?
87. Альтаир (Altair777) 17.12.08 15:21
И, вообще...
"мне уже лень объяснять", "вполне возможно", "со слов клиента", "на константы уходило 50%"
После этих слов как-то не верится во все остальное
88. Альтаир (Altair777) 17.12.08 15:26
(86) > 2(85) И что? Это оправдывает твое хамство?

Мое хамство?
(7) toypaul > - не заметил полезного? читать надо не по диагонали и включать серое вещество.
Вот это хамство.
И я, в отличии от некоторых, включил серое вещество и посчитал. И доказал.

А если оставить тему хамства - я был прав?
И при чем тут мое оправдание? АЛьФ по непонятной причине в (74) оторвался на меня, а теперь я же и должен оправдываться? :-)
89. АЛьФ (АЛьФ) 17.12.08 15:32
2(88) Да ты ж ворвался в эту тему сразу с хамством:
"Честно говоря, кроме рекламы фирмы 1С и самовосхваления в этой статье я ничего полезного не заметил.", "На русский ее можно перевести? А то смысл как-то ускользает.".
И продолжаешь хамить до сих пор. Предложено тебе уже было уйти из ветки, раз уж тебя так тема раздражает. Или ты на бан напрашиваешься?
90. Альтаир (Altair777) 17.12.08 15:48
(89) Я ни на что не напрашиваюсь.

> кроме рекламы фирмы 1С
за это я извинился в убитом без причины комменте

> и самовосхваления
Я написал конкретные вещи, почему я считаю, что автор исказил информацию, что бы показать себя в лучшем виде. Так оно и оказалось.

> ничего полезного не заметил
Тут я был не прав. Я заметил.
Что былые заслуги информатора часто не дают людям собственными мозгами оценить достоверность той или иной информации, подаваемую им в лучших традициях Канадской Оптовой Кампании
91. Vasily Kushnir (vasilykushnir) 17.12.08 16:00
А ну брысь в разные углы! Нашли, елы-палы из-за чего копья ломать...

1-й факт: чтение констант и периодики всегда более затратно, чем прописанные в глобанике псевдоконстанты - так это ежу понятно. Тут автору плюс. НО!!! Зачем глобальник? Вот Альф защищает автора, а по скромности не предложил очевидное решение: дополнительный глобальный модуль с помощью Формекса. В Дгм все переменные переназначаются динамически (юзеру только выйти и снова зайти в 1С или перезагрузить ДГМ).

2-й факт: Альтаир доказал, да и сам автор признал, что некоторые цифры мягко говоря среднепотолочные. А это уже минус - не трэба дадьку нас дурить.:-))

Вывод: да нифига страшного! Плюс на минус, как известно дает ноль, но аж никак не прикупом в морду (в смысле оскорблений) - полковник был такая сука, что пасовал на семи тузах... Так что пожали друг другу руки, мысленно хряпнули по рюмочке и перешли к конструктивному диалогу. А то ей-богу, попрошу у Альфа или у Суппорта права и буду сносить все комметы от первого до последнего, если среди них заваляется хоть один матюгальный (шутка, конечно, но в каждой сказке есть доля сказки...).
92. Альтаир (Altair777) 17.12.08 16:09
(91) > Альтаир доказал, да и сам автор признал, что некоторые цифры мягко говоря среднепотолочные. А это уже минус

Я, собственно говоря, поэтому и поставил минус.
93. Vasily Kushnir (vasilykushnir) 17.12.08 16:11
> АЛьФ : ...Предложено тебе уже было уйти из ветки, раз уж тебя так тема раздражает. Или ты на бан напрашиваешься?

А вот здесь я че-то не допонял - налей еще (:-)) ). На ИС уже цензура? Уже надо спрашивать, в какую ветку заходить, а в какую низзя?
Я могу, конечно, создать свой сайт якобы об 1С и если кому-то не понравится история моего друга о любовных похождениях, или рассказ моей любовницы о новой моде на бикини, то и забанить его могу!
Но кому такой сайт будет интересен? И куда мы катимся?
94. Михаил Ражиков (tango) 17.12.08 17:09
(91) полковник был совершенно прав, кто-то ведь спер у него восьмого туза?!
95. Михаил Ражиков (tango) 17.12.08 17:09
короче, "Неожиданный опыт оптимизации" :)
96. Альтаир (Altair777) 17.12.08 17:21
(93) > Но кому такой сайт будет интересен? И куда мы катимся?

Не знаю... Я, пожалуй, на мисту.
Там попроще общаться будет. И с Альфом, и с Тем-О-Ком-Нельзя.
А то угрожают за правду забанить. Или за несоблюдение субординации?
Мы не в армии :-)
97. АЛьФ (АЛьФ) 17.12.08 17:46
2(93) На ИС с самого нача было принято вести конструктивный диалог без перехода на "сам дурак". Нам бы хотелось, чтобы здесь было общество профессионалов, а не склока базарных баб. К сожалению, последнее время (с увеличением числа посетителей портала) наметилась тенденция к переносу на портал привычного им формата общения. Один привычно хамнул, второй привычно ответил и понеслась.
Так вот иногда приходится напоминать, что не в каждом споре рождается истина и если тебя что-то сильно не устраивает, то лучше отказаться от продолжение разговора. Причем отказаться должен тот, кто комментирует чужой блог, а не автор блога. У комментарора всегда есть возможность создать свою запись в блоге или статью с полным разбором аналогичной ситуации в качестве полноценного ответа и запостить ссылку в комментарии к изначальной статье. Такие "ответы" (а то и целые цепочки взаимых ответов) на портале сплошь и рядом находятся. И именно такой подход будет корректным, профессиональным и правильным в рамках портала.
Если же есть желание просто посклочничать, то для этого есть куча мест в интернете. В крайнем случае можно использовать личку, т.к. чужие склоки очень мало кому интересно читать.
98. АЛьФ (АЛьФ) 17.12.08 17:47
2(96) Для Мисты твой стиль общения как раз очень подходящий. Здесь мы стараемся все же такого не допускать.
99. Аркадий Кучер (Abadonna) 17.12.08 18:07
(98) Леш, а дурной пример заразителен :) Вспомни, когда и откуда началась базарная склока. Вообще на инфостарте...
101. ineoosaki (ineoosaki) 17.12.08 20:38
Автору - однозначно минус, за статью со "среднепотолочными" цифрами "из асек, со слов ..." и т.д.
Altair777`у - жирный плюс за бдительность, и потраченное время на критику никчемной статейки.
vasilykushnir; venger; Altair777; O-Planet; olga1974; +5 Ответить 2
102. Альтаир (Altair777) 17.12.08 23:58
(101) спасибо :-)
O-Planet; vasilykushnir; venger; PeRom; +4 Ответить
103. Vasily Kushnir (vasilykushnir) 19.12.08 09:42
(101) Абсолютно согласен. Но на категоричный минус статья все-таки не "тянет" - есть в ней зерно истины. Да и считаю, что с минусами надо бы поосторожней, пощетельней как-то... А то на десятелетней давности юморную статью плюса не жалеем, а за не очень красиво поданную статьюю или программу минус влепить - всегда пожалуйста. Тем более считаю - минуса на комметы признаком моветона. Ну высказался человек - это его мнение, а за что минус? Или минусующий свое мнение считает выше рангом?... Странно все в датском королевстве...
104. Альтаир (Altair777) 24.12.08 20:41
Забавно, на мисте афтар никак не отреагировал на то, что его статейка - отстой :-)
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа