|
|
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Стоит задача: разобраться и построить модель базы 1С на MSSQL Server'e. Не знаком с 1С и даже пока не знаю каким образом к 1С прикручивается база MSSQL Server. Но перед глазами вижу свершившийся факт. Есть база с кучей таблиц без единой связи между ними. Хотелось бы понять, по какому принципу 1С создаёт таблицы в базе MSSQL, по какому принципу даёт имена таблицам, столбцам в этих таблицах, и самое главное по какому принципу 1С связывает таблицы! Пока что я понял одно - внешними ключами ребята из 1С не пользуются(: Я сделал реинжениринг и посмотрел модель - много таблиц, в которых есть индексы по полям и Primary Key в каждой таблице. Таблицы делятся на следующие типы если судить по их названиям: _1S, CJ, CL, DH, DT, RA, RG, SC например типичные названия для таблиц из этой базы: DH1634, SC367... в каждой таблице есть столбец ROW_ID, что радует. есть столбцы с именами ID, CODE, DESCR, ISMARK, VERSTAMP - тоже вроде понятно, но есть столбцы с именами SP6279, SP557, .... - что то мне подсказывает, что это и есть типа внешние ключи - ссылки на идентификаторы в других таблицах, а может и нет. Кто может подсказать где расписаны принципы построения структуры базы на MSSQL бухгалтерской системы 1С? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2007, 19:20 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
В каталоге базы данных 1С есть файл 1Сv7.dds в нем расписаны структуры таблиц. Если коротко, то: _1S - разные системные таблицы (константы, журналы документов и т.п.), DH - Это шапка документа DT - Табличная часть документа RA - Регистр остаков RG - регистр движений SC - справочник. Что касается столбцов SP6279, SP557 и т.п. это различные реквизиты, что за что отвечает соответственно описано в 1Сv7.dds. За подробностями можешь обратиться на http://www.1csql.ru/materials/articles.html или http://www.mista.ru. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2007, 07:47 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
DmKF Что касается столбцов SP6279, SP557 и т.п. это различные реквизиты, что за что отвечает соответственно описано в 1Сv7.dds. Спасибо за ответ! Это значит, что в этом файле прописаны все связи между таблицами? Т.е. если есть таблица SC123 с перечнем сотрудников, есть таблица SC456 с перечнем отделов в фирме и в таблице сотрудников SC123 есть поле SP178, в котором хранятся идентификаторы (поле ID) таблицы SC456, т.е. ссылки на отделы, в которых работают сотрудники, то эта связь будет прописана в файле 1Сv7.dds? А в каком формате? У меня пока просто нет этого файла, но чтобы его взять, нужно быть уверенным, что там эта нужная мне информация точно есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2007, 10:52 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
А каким образом можно посмотреть этот файл 1Сv7.dds? Какой у него формат? Это текстовой файл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2007, 13:26 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Да, это обычный текстовый файл. Пример файла кинул в почту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2007, 15:02 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
DmKFДа, это обычный текстовый файл. Пример файла кинул в почту. Спасибо огромное! Попытаюсь разобраться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2007, 17:36 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Вообще то не все так просто как описано в файле*.dds. Связи таблиц(отношения) и полей определяются в файле конфигурации.ВСЕ,что вводится в конфигурацию нумеруется последовательно(это идентификаторы объектов).Эти номера(если это персистент объекты) и являются номерами полей и файлов(стоящие после разных там DH,DT,SP и пр.). Но СВЯЗИ таблиц можно получить только из файла конфигурации.Модель 1С - это модель Экселя,добавленная и урезанная для нужд бухгалтерии, а MSSQL(или DBase файлы) - это просто место хранения(карман) и искать в кармане модель бессмысленно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2007, 11:26 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
teusВообще то не все так просто как описано в файле*.dds. СВЯЗИ таблиц можно получить только из файла конфигурации. А как называется этот файл конфигурации? Какой он имеет формат? Как и чем его можно просмотреть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2007, 15:55 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Файл конфигурации(метаданных) имеет расширение .md(или .mds).Это на самом деле файл типа storage, как и Эксел.Чем можно смотреть - всем что можно смотреть storage файлы(см. у Мелкомягких). другой вопрос - а зачем его смотреть? Задачей,которую Вы себе ставите,я занимался лет 10 назад. вывод - зачем это нужно: написать свой 1С - ха-ха...1С это прежде всего агрессивный маркетинг,лобби не менее сильное,почти криминальная повязка всех,кто входит в этот бизнес. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2007, 14:11 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Я смотрю специальным редактором StreamEditor файл конфигурации 1С с расширением .MD. Не могу там ничего понять - какой то код на русском языке. Неужели нет нигде простого и чёткого описания: такое то поле в такой то таблице - это ссылка на идентификатор в такой то таблице? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2007, 15:49 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Да,я тоже им пользовался...Простого и четкого описания структуры 1С - нет,это бизнес,на котором делают деньги. Но у меня все таки остается вопрос- что Вы хотите сделать? И еще - модели 1С в смысле нотации UML тоже нет.Понять 1С еще как то можно,если считать ее как одну из реализаций(корявой,убогой,но работающей) архитектуры MDA(model-driven architecture). Кстати,файл с расширением *.dd(dds) есть файл отображения(mapping в смысле MDA) на реляционный карман объектов 1С,индексы которые Вы там видите - только для внутреннего употребления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2007, 11:26 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
teus...что Вы хотите сделать? У меня есть 1С-ная sql-ная база. Мне нужно написать десктопное приложение на языке Visual C++, которое будет соединяться с этой базой, вытаскивать из её таблиц необходимые данные и представлять их в нужном виде. Для этого мне нужно чётко знать структуру базы. Сейчас я просто хочу вывести список отделов фирмы с сотрудниками, работающими в этих отделах. Для этого мне нужно знать как связаны таблица-справочник сотрудников SC123 с таблицей-справочником отделов SC456. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.04.2007, 01:57 |
|
||
|
База 1С на MSSQL Server'е 2000
|
|||
|---|---|---|---|
|
#18+
Беда в том,что идентификаторы объектов в базах 1С отличаются от конфигурации к конфигурации,и даже моя таблица SC123 м.б. другим справочником. В свое время для разовых работ(или на период,пока не менялась конфигурация) все делал вручную,анализируя "внутренности" необходимых таблиц(записывая имена полей и их внутренний ID). При изменении конфигурации вследствие внесения нового кода либо при обновлении приходится опять все заново перекомпилировать.В общем жуть. Ни времени ни рук не хватило для какого-то регулярного решения.Сейчас я уже не занимаюсь 1С,но была у меня задумка в свое время - написать программу,которая считывает в некую таблицу из файла конфигурации имена объектов и их отображение во внутренние(в *.dd) имена(что-то вроде расширенного файла *.dd). эта таблица д.находиться в базе же(для связывания внешними программами). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2007, 13:36 |
|
||
|
|

start [/forum/topic.php?fid=56&msg=34444422&tid=2016188]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 353ms |

| 0 / 0 |
