powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Люди, свершилось я создал объектное ядро 2
25 сообщений из 143, страница 4 из 6
Люди, свершилось я создал объектное ядро 2
    #34770520
Фотография FasterHarder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
I started in 1983, in 2007 i still on a case!

Old Nick, а мне просто познавательно, из скольки строк кода состоит ваше ядро(как понял из постов, ваялось на дельфях:)). И второй вопрос, насколько ваша система защищена от чужеродных атак(черный хакинг)?
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34770578
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто приходилось иметь дело с такими базами 1с например (ой не к добру будет помянут)
как вы думаете зачем у них есть такое понятие как регистр?
Не к добру.. :) Регистры в 1С (говорю только о v77) - следствие отсутсвия SQL-движка. На DBF приходится держать промежуточные итоги, ибо очень долго перелопачивать каждый раз полные таблицы DBF. Даже без дополнительных извращений с индексами регистр 1С можно заменить на таблицу актуальных итогов и вьюху по документам - работать будет в разы быстрее, чем РассчитатьРегистрыНа(НачДата)... при этом исчезает необходимость "проведения" как переписывание информации из таблиц документа в таблицы регистра и необходимость пересчета итогов при "открытии периода".
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772556
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bug_scorobey Old NickНу ребята, ну вы чего такие трудные? Ну нахрена я непрограммисту это подсовывать буду?

Это именно для программистов. Это аналог Дельфи с палитрой компонент, только для клиент-сервера. Инструмент имеет набор базовых классов и позволяет расширять палитру. А каждый класс это совокупность структур, процедур в базе и форм на клиенте.

1.еще раз у вас не все так хорошо как кажется ибо плодится неимоверная куча табиц (мне так каца ) если нет тогда действительно интересно
2. отсутствует контроль целосности данных
3.раз плодится куча таблиц то автоматом снеижается производительность

но тем не менее при правильном разруливании ситуации продукт интересн
и нужен он как и 1с для конфигурирования (заточку ) быструюу под БП предприятия

постарайтесь ответит по 3 пунктам

Отвечаю

1. Таблицы плодятся так же как при O/R маппинге. Это тот же маппинг, только на сервере.
Опишу конкретнее

Базовый класс Object - это таблица TObject и вьюха на ней VObject

Таблица

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
create table TObject
(
  OID      int identity( 1 ,  1 ) not null,
  Name     String,
  Ext      String,
  Class    String,
  Deleted  bit default  0 ,
  primary key clustered ( OID ) 
)

create index IX_ClassExt on TObject ( Class, Ext )
end
go

Вьюха

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
exec DropView 'VObject'
go
create view VObject
with view_metadata
as
  select OID, Ext, Name, Class
    from TObject
    where Deleted =  0 
go

на вьюхе висят instead of триггера, которые и пишут в таблицы. Доступа у пользователей к таблицам нет, только к вьюхам

Если мы создаём класс наследник базового (а мы всегда его наследуем от базового, потому что как в паскале, всё наследуется от базового), то создаётся ещё одна таблица, в которой находятся атрибуты класса наследника, например класс Menu, наследуется от Object

Код: plaintext
1.
2.
3.
4.
5.
exec Class 'Menu', 'Object', 'Меню',  0 
  exec Field 'User', 'AUser', 'Пользователь', 'null'
  exec Field 'Action', 'String', 'Действие', 'null'
  exec Field 'Object', 'Object', 'Объект', 'null'
exec Compile

У меню есть наименование, которой хранится в поле TObject.Name и код - TObject.Ext
Появлются поля Пользователь, Действие, Объект. Поле пользователь определяет, кто будет видеть это меню, объект и действие думаю объяснять не надо.

Так вот, процедурой compile создается таблица TMenu

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
create table TMenu
(
  OID       int,
  UserOID   int,
  ActionOID int,
  ObjectOID int,
  primary key clustered ( OID )
)

Если дополнительных атрибутов нет, то таблица с одним единственным полем OID int, потом объясню зачем пустую таблицу создавать

Вьюха

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
create view VMenu
with view_metadata
as
  select o.*,
         m.UserOID,
         UserName = u.Name,
         UserClass = u.Class,
         m.ActionOID,
         ActionName = a.Name,
         ActionClass = a.Class,
         m.ObjectOID,
         ObjectName = ob.Name,
         ObjectClass = ob.Class
    from TMenu m
           join
         VObject o
           on o.OID = m.OID
           left join
         TObject u
           on u.OID = m.UserOID
           left join
         TObject a
           on a.OID = m.ActionOID
           left join
         TObject ob
           on ob.OID = m.ObjectOID
go

Если у класса Menu будут наследники, то они тоже попадут в эту вьюху. К тому же выборка начинается с таблицы TMenu, в которой записей будет меньше чем в родительской, значит выборка будет быстрее, если для класса без атрибутов не создавать таблицу, то выборка будет сложнее, так как просто ограничить полем класс не удастся, наследники не попадут.

Если у класса будет подтаблица (многострочная часть в 1С), то это ещё одна таблица, в которой первым полем будет OID int, оно же будет первым полем в кластерном ключе.

Не буду спорить о том много ли это таблиц, для меня ответ очевиден и выработан он опытом.


2. Контроль целостности данных осуществляется специальными хранимыми процедурами, которые создаются автоматически по метаданным. И поскольку удаление объектов возможно только через вьюхи, то механизм не обойти. Работает надёжно и рукается вразумительно. Можно даже по-русски.

3. Производительность зависит на 95% от архитектуры, а никак не от количества таблиц.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772569
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Codenamed
Автору топика могу посоветовать посмотреть на тулзы для генерации кода, типа CodeSmith. Для генерирования хранимых процедур и кода, добавляющего метаданные - самое то.
Код: plaintext
Step softly, but carry a big gun


Да вроде как и не зачем. Всё уже сделал руками. И таблицы создаются и вьюхи и триггеры и процедуры и даже описание форм.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772618
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FasterHarder
Код: plaintext
I started in 1983, in 2007 i still on a case!

Old Nick, а мне просто познавательно, из скольки строк кода состоит ваше ядро(как понял из постов, ваялось на дельфях:)). И второй вопрос, насколько ваша система защищена от чужеродных атак(черный хакинг)?

Насчёт строчек кода - считать не буду, но немного. Перечислю компоненты

TDBOManager - гвоздь программы
TDBClass - описывает класс базы данных на клиенте
TDBOAction - описывает действие объекта базы данных (метод объекта БД)
TDBObject - экземпляр класса
TDBODataSet - работает с набором данных, отсоединённый датасет, структуру вытаскивает из метаданных, например в property TableName пишем Menu и он находит описание структуры и хранимые процедуры для редактирования

TDBObjectField - наследник TField представляет собой ссылку на объект БД, может инициализировать TDBObject по ссылке

Теперь контролы:

TDBOEdit - панель для редактирования одной записи TDBODataSet, используется в основном в шапке формы редактирования объекта. Хотя ещё и для задания параметров для печати или поиска.
как TObjectInspector, только симпатичнее, использует TLabel, TDBEdit, TDBCheckBox, TDBDateEdit и т.д.

TDBOGrid - что делает понятно, кроме этого ещё показывает поля типа TDBObjectField и умеет их обрабатывать

TDBOTree - дерево объектов БД

TDBOForm - невизуальная компонента для формитрования автоформы.

Помимо компонент есть главная форма, иерархия базовых форм и несколько кастомных.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772680
Фотография U-gene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНе буду спорить о том много ли это таблиц....

Кстати, согласен. Собс-но речь о то и идет, что бы скрыть некую сложность, которую руками трудно сделать а головой удержать.

Но в целом - ИМХО полумеры.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772757
sqllex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bug_scorobey
да вопрос не однозначный
Тогда зачем выдавать такое спорное утверждение без указаний конкретики? Вот потому и "гы" :)
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772802
DDeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Являюсь ведущим разработчиком/идеологом сходного фреймворка. Притом создавшим фирму и продающем решения на нем. Что-же, действительно программисты не любят работать в чужой среде, это сперва, но как талько выясняется что он позволяет уменьшить время на разработку, охотно втягиваются.

Наш отличается тем что он представляет собой базовый набор классов для IDE, также с ней интегрируется, т.е. добавляются мастера и доп.меню в среде. Основой для создания форм документов являются базовые классы, хотя их использование не обязательно. Для кастомизации интегрировали скриптовый язык, хотя я на это смотрел сквозь пальцы, но как в итоге оказалось зря. Некоторые программисты делали на нем весьма интересные вещи.
Генератор сущностей БД ограничили слепком базы и переносом его на другой сервер, где надо проапгрейдить базу. Безопасность рулится с помощью объединенной системы безопасности, т.е. привязка идет к ролям безопасности БД, права на таблицы и т.п. задаются стандартными средствами. Идеологию "все на ХП или вью" не применяем, делаем как можно проще(в рамках допустимого и безопасности). Последним определяющим решением было забить на универсальность и применимость ко всем задачам в сторону основной проблемно-ориентированной области. Получился фреймворк для среды в котором удобно реализовывать определенный круг задач. Поставляем его вместе с исходниками, деньги берем только за сопровождение/внедрение.

Мое мнение таково: объектно-ориентированность фреймворка обычно недостаточно хороша, чтобы заменить среду. Но для определенного круга задач функционала может и хватить. Тут вообщем все зависит от отрасли. Какие прикладные решения, кстати, созданы на базе вашего ФВ?
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772890
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зря забили на объектность системы. Именно с неё у меня всё и началось.
Как оказалось главное правильно определить базовый набор классов, а дальше как по маслу.

Мною на данном ядре сделан документооборот, простенький пока, развивается.
До меня делали оперативный учёт, довольно мощный с распределённой базой в шести городах, с поддержкой ОЛАП, но без метаданных, прототип моей системы.
Еще один человек на ядре, которое вместе начинали сделал для ВМФ учебную базу - тренажёр.
Там правда база постольку поскольку, больше на графику упор. Но это как раз и доказывает универсальность ядра. Я даже придумать не могу задачу, для которой ядро не подошло бы.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34772894
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причём для всех вышеперечисленных задач базовый набор классов один и тот же
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34773092
DDeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Old NickЗря забили на объектность системы. Именно с неё у меня всё и началось.
Как оказалось главное правильно определить базовый набор классов, а дальше как по маслу.Мы не забили. Есть базовые классы документа, справочника, журнала и т.п. Все это бесспорно хорошо, но мало. Поддержка ОЛАП тоже имеется, хотя к серьезным плюсам я ее не отношу. Я это говорю для сравнения. Т.е. мы позиционируем свою платформу как основу для создания приложений в своей отраслевой нише, т.е. наш набор сервисов позволяет написать любую учетную систему на их базе, но так как разработчикам наша(ваша и десяток аналогичных уже проскакивавших по этому форуму) нафиг не нужна, а клиентам вообще пофигу как сделана ваша программа, я думаю есть смысл сделать на прикладной уклон.

Так вы все-таки конкретизируйте, что кроме документооборота(кстати распишите и его) сделано на вашей платформе? Каковы объемы, кол-во пользователей и т.п.

П.С.Как пример платформы приведу Искра, сравните свою с ней.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34775417
sqllex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Old Nick, а вы пробовали тестить производительность и масштабируемость системы, построенной на базе вашего ядра? Это в целом.
В частности же, как себя показала система обеспечения контроля целостности по сравнению со стандартными механизмами СУБД?
Я вижу несколько моментов, которые отрицательно могут сказаться на сабж.
1. Кластерные индексы повсеместно. В системах документооборота, ориентированных на частые запись/редактирование будут тормозить, достигнув какого-то предела. Или мне просто так показалось после ваших примеров.
2. instead of триггера на вьюхах.
3. create view VMenu with view_metadata с множеством одновременных джойнов на TObject. Если подобные view используются повсеместно (или часто, или выбирают много данных, или не дай бог все вместе), то с ростом объема базы будут существвенные тормоза.

Ведь найдется мало задач, которые позволяют заменять вашим подходом проблемы производительности.

Кстати, вам как автору, есть за что покритиковать собственное творение? Какие минусы?
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34779415
Расскажите о языке запросов к объектам хранения; например для загрузки/отображения значений коллекций объектов по заданным условиям (если таковой у Вас есть).
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34780004
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для любого класса сформирована вьюха, где перечислены все его поля, плюс для каждого объектного поля добавлены его имя и тип. Поэтому список выбирается обычным селектом и принимает его компонента TDBODataSet, в этой компоненте этот список хранится в виде обычного датасета. Единственное отличие это поле типа TDBObjectField, это класс наследник TField, которые является fkCalculated и содержит в себе ссылки на три поля, описывающие объектную ссылку. OIDField, NameField и ClassField.

То есть. Ни одна объектная ссылка не инициализирует объект целиком, пока к ней не обратишься.
У компоненты TDBObjectField есть свойство DBObject: TDBObject, оно и предназначено для того чтобы инициализировать объект, получить его методы, его контекстное меню, его формы и т.д.

Только при обращении к этому свойству из базы вытягиваются остальные атрибуты объекта, если они нужны.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34780504
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Информация к размышлению. Так у меня выглядит код разработки класса AUser, это базовый класс, от которого наследуется Пользователь и Роль.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
exec Class 'AUser', 'Object', 'Абстрактный пользователь',  0 
  exec SubTable 'Roles', 'Роли', 'NoTable NoView'
    exec Field 'Role', 'Role', 'Роль', 'Key'
    exec Field 'Level', 'Integer', '', 'InVisible'
    exec Method 'Select', 'AUser_Roles_Select'
    exec Method 'Insert', 'AUser_Roles_Insert'
    exec Method 'Delete', 'AUser_Roles_Delete'
  exec Action 'Roles', 'TfrmAUserRoles', 'Обладает ролями'
    exec Page '', '', 'Edit'
      exec Control 'Name'
      exec Control 'Ext', 'Системное имя'
    exec Page 'Roles', 'Roles', 'Grid'
  exec Folder 'Users&Roles', 'Root', 'Пользователи и роли'
exec Compile
go

exec DropProc 'AUser_Roles_Select'
go
create procedure AUser_Roles_Select
  @OID OID
as
  set nocount on
  select OID = t.ChildOID,
         RoleOID = r.OID,
         RoleName = max(r.Name),
         RoleClass = max(r.Class),
         Level = max(t.Level)
    from TTreePath t
           join
         VRole r
           on r.OID = t.ParentOID
    where t.ChildOID = @OID
      and t.Level >  0 
    group by t.ChildOID, r.OID
go

exec DropProc 'AUser_Roles_Insert'
go
create procedure AUser_Roles_Insert
  @OID     OID,
  @RoleOID OID
as
  set nocount on
  exec Object_AddLink @OID, @RoleOID
go

exec DropProc 'AUser_Roles_Delete'
go
create procedure AUser_Roles_Delete
  @OID     OID,
  @RoleOID OID
as
  set nocount on
  exec Object_RemoveLink @OID, @RoleOID
go
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34781872
anonimouse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторНашел одного человека, владелец софтверной фирмы. Уже год договариваемся. Нутром чует, что ему от этого польза будет, да всё равно боится.

Он не боится. Он опасается, потому как авторЯ лучше буду голодать, но не подарю - психология упертого кодера, либо другого неадеквата.

Сколько встречал ребят с интересными разработками - каждый считает свою систему круче всех вместе взятых. А то, что продукт еще нужно продать клиенту (причем не в убыток) - мозгов почему-то не хватает.

Никто не будет пахать с утра до ночи за умозрительные бенефиты. Не только вы "пашете" (как это ни странно ;) ). Продавать и суппортить клиента - это тоже тяжелый труд.

Бизнес, который расчитывает на долгую жизнь, руководствуется несколько другими стимулами. Вопрос в том, стоит ли вам это объяснять - набивайте шишки сами.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34782802
Codenamed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гы... Продавать надо не эту хрень, она и в подарок никому не нужна. Продавать надо проекты, на ней сделанные, экономя время и деньги на разработке, и получая через это конкурентное преимущество. Или идти продаваться самому в софтверную контору, которая пишет на заказ, архитектором с опытом. Тогда можете внедрить то, что у вас есть, или повторить путь разработки на той платформе, на которой работодатель работает.

Ну не тянет это на полноценное средство разработки, которое можно продать. И, как было отмечено выше, все это еще сопровождать надо, на вопросы клиентов отвечать днем и ночью и пр.

Код: plaintext
Step softly, but carry a big gun
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34786593
DDeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CodenamedГы... Продавать надо не эту хрень, она и в подарок никому не нужна. Продавать надо проекты, на ней сделанные, экономя время и деньги на разработке, и получая через это конкурентное преимущество. Или идти продаваться самому в софтверную контору, которая пишет на заказ, архитектором с опытом. Тогда можете внедрить то, что у вас есть, или повторить путь разработки на той платформе, на которой работодатель работает.

Ну не тянет это на полноценное средство разработки, которое можно продать. И, как было отмечено выше, все это еще сопровождать надо, на вопросы клиентов отвечать днем и ночью и пр.Именно это я и говорил. Только создавая такую контору мы знали на что шли и упор делали сразу на проекты, а не систему. Утверждение, что это не полноценная среда тоже верно. Ну не поверю я что эта программа дотянет до возможностей Дельфи.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787011
Old NickДля любого класса сформирована вьюха, где перечислены все его поля, плюс для каждого объектного поля добавлены его имя и тип. Поэтому список выбирается обычным селектом и принимает его компонента TDBODataSet, в этой компоненте этот список хранится в виде обычного датасета. Единственное отличие это поле типа TDBObjectField, это класс наследник TField, которые является fkCalculated и содержит в себе ссылки на три поля, описывающие объектную ссылку. OIDField, NameField и ClassField.

То есть. Ни одна объектная ссылка не инициализирует объект целиком, пока к ней не обратишься.
У компоненты TDBObjectField есть свойство DBObject: TDBObject, оно и предназначено для того чтобы инициализировать объект, получить его методы, его контекстное меню, его формы и т.д.

Только при обращении к этому свойству из базы вытягиваются остальные атрибуты объекта, если они нужны.
1. Выходт, любимый режим моих юзеров, под названием "хочу скроллить очень длинные и широкие списки", здесь не очень приветствуется?
2. Не очень тут объектное ядро, если формирование коллекций выполняется обычным селектом...
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787019
Фотография Сиоко Асахара
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работа с БД сегодня самый архаичный и отсталый аспект информационных технологий,имхо. Давно пора программам работать с массивами данных на более интеллектуальном прикладном уровне. Сегодняшний уровень напоминает мне бухгалтерскую программу, работающую с диском через контроллер конкретного винчестера используя чтение/запись по абсолютным секторам этого диска.
друзья зовут меня Красавчег Сёка
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787020
Фотография Сиоко Асахара
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А со словом " свершилось ", поосторожнее, оно настраивает на революцию!
друзья зовут меня Красавчег Сёка
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787204
мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сиоко АсахараДавно пора программам работать с массивами данных на более интеллектуальном прикладном уровне.
А что такое "массив данных" в вашем понимании и как с ним можно работать "на более интеллектуальном прикладном уровне" ?
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787610
Mumytroll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавлю свои пять копеек.
Являюсь видущим програмером, который сопровождает объектный фреймворк. Идеология очень похожа на то, что описано выше. Могу сказать на своем опыте, для малых и средних задач фреймворки такого типа подходят. Для крупных ну мягко говоря не приемлимы, поскольку накладные расходы возрастают в сотни раз. И мнимая простота оборачивается кашмаром в разработке.
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34787717
2b&2b
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MumytrollЯвляюсь в и дущим програ м ером ... тынц

Хто здесь ?
...
Рейтинг: 0 / 0
Люди, свершилось я создал объектное ядро 2
    #34791462
ruhavik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так а чего нового написали то?
DSL еще один получился то в конце то.
...
Рейтинг: 0 / 0
25 сообщений из 143, страница 4 из 6
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Люди, свершилось я создал объектное ядро 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]