Имя: Пароль:
1C
1С v8
Метрики базы данных 1с и баз mysql
0 -Stanley-
 
02.07.15
14:36
Между базами данных данных существуют большие отличия
Например, вместо атрибутов сущестуют реквизиты. Вместо таблиц -справочники. Возникли большие проблемы с пониманием в системе 1с предприятие, что такое первичный и внешний ключ (если такие вообще имеются). Необходимо сделать расчет следующих метрик: кол-во атрибутов, ключей первичных и внешних, уникальных и неуникальных индексов, глубину дерева связей, найти кол-во ключей в составе суперключа и другие. Знаю, что в базах данных существует information_schema, в которой хранятся все данные и очень удобно осуществлять запросы, для получения нужных метрик(ключей, индексов, атрибутов и других). Если ли что-то похожее для 1с ? Как вообще осуществляется связь между справочниками в 1с (только по наименованию и коду) ? Если так, то как я понимаю, то тогда нельзя таблицы связать по другим реквизитам, которые может создать разработчик. (Например 3 таблицы, хочу связать первую со второй по реквизиту А, а третью с первой по реквизиту Б)
1 Mikeware
 
02.07.15
14:41
"продолжайте наблюдения"©
зы. уж не с хабра ли вы сюда пожаловали?
2 sapphire
 
02.07.15
14:44
(0) Не путайте теплое с мягким
3 cdiamond
 
02.07.15
14:44
платформу 1С для того и придумали, чтобы такой ерундой не страдать
4 sapphire
 
02.07.15
14:45
(3) Да, её придумали, что бы страдало как можно больше :)
5 Mikeware
 
02.07.15
14:45
(4) но другим...
6 cdiamond
 
02.07.15
14:46
(4) да, больше и где угодно, но только не там где (0) :)))
7 Гёдза
 
02.07.15
14:50
(0)Как я понимаю из тех слов, что ты сказал, ты сам не одного не понимаешь?
8 ДенисЧ
 
02.07.15
14:51
Картинка_толстый_бред_питт.пнг
9 Гёдза
 
02.07.15
14:51
Ибо не может человек владеющий терминологией, не смочь узнать что  за ключ у справочника в 1С
10 -Stanley-
 
02.07.15
14:58
есть ссылка на таблицу
но не понимаю, как устроены связи
работаю с 1с два дня, спрашиваю у руководителя производственной практики про устройство базы в 1с и друг друга понять не можем. для mysql я произвел метрики, а для 1с ничего не понятно, как и ничего не понятно руководитю, который и предложил обратиться на этот форум
вот пример запроса

SELECT tables.table_name AS "Имя таблицы",
count(DISTINCT columns.column_name) as "Количество атрибутов"
FROM information_schema.tables, information_schema.columns
WHERE tables.table_name = columns.table_name
AND tables.table_schema = 'bd_inst' AND COLUMNS.TABLE_SCHEMA = 'bd_inst'
GROUP BY tables.table_name

ну и что-то похожее поидее должно быть и для других метрик систем 1с
11 18_plus
 
02.07.15
14:58
(0) одинэсник такой фигнёй не занимается. а 90% даже не поймёт о чём речь.
нужно начинать мыслить другими категориями
12 cdiamond
 
02.07.15
15:00
(10) Да, ваш руководитель знатный тролль :)
13 18_plus
 
02.07.15
15:03
а информацию о количестве реквизитов можно (только непонятно зачем) выгребать через метаданные:

Метаданные.Справочники.Валюты.Реквизиты.Количество()
Метаданные.Справочники.Валюты.ТабличныеЧасти.Количество()
14 fisher
 
02.07.15
15:05
(0)
1) В базе 1С нет схемы как отдельной абстракции по той причине, что одна из главных целей создания 1С - перевести разработчика на более высокий уровень абстракций разработки. Сферический разработчик 1С не должен мыслить в терминах БД, а должен мыслить в терминах прикладной модели фреймворка 1С. Поэтому смирись - легкого пути для тебя нет.
2) первичные ключи и все очевидные из общей модели объектов 1С необходимые индексы 1С создает автоматически. Первичными ключами в 1С для таблиц с объектными сущностями выступает GUID в бинарном поле. Ну а то, что ты нанёс про внешние ключи и связи таблиц, выдаёт в тебе новичка не только в 1С, но и в разработке БД.
3) связи можно создавать какие угодно. Только они не описываются в явном виде (в виде схемы).
15 18_plus
 
02.07.15
15:08
(14) учитывая наличие руководителя производственной практики, странно было бы видеть в ТС профессионала в какой бы то ни было сфере.
16 crasler
 
02.07.15
15:09
Разверни базу 1С на SQL сервер (MSSQL или PosgreSQL) и посмотри что да как!
17 Mikeware
 
02.07.15
15:14
(12) +100500
18 Lama12
 
02.07.15
15:18
Надо же... ветка и даже по сути дела.
(0) Ответы по сути в (11)(12)(14).
Если нужна теория. Есть статья на ИТС. Туда можно получить демо доступ на 3 дня или на 3 недели (точно не помню). В статье подробно описывается как платформа (фреймворк) преобразует объектную модель в реляционную. Разрабтчик работает с абстракциями более высокого уровня.
19 fisher
 
02.07.15
15:29
(0) Надыбай (можно надыбать в электронном виде) книжку "Профессиональная разработка в системе 1С:Предприятие". Там есть подробное описание, как прикладная модель 1С реализуется с терминах БД. И таблицы и поля и индексы и всё-всё-всё.
20 rs_trade
 
02.07.15
15:48
База 1С в итоге все равно таблицы в СУБД. Посчитай для базы поля, индексы да PK и все. Внешних ключей там нет.
21 sapphire
 
02.07.15
16:09
Как собсно, и самой схемы в классическом понимании СУБД
22 Лефмихалыч
 
02.07.15
16:10
(0) автор, тебе это зачем?
23 Гёдза
 
02.07.15
16:10
список всех таблиц базы и полей можно легко получить в MSSQL
24 sapphire
 
02.07.15
16:17
(23) Можно и в файловой, если разобрать 1CD
25 ДенисЧ
 
02.07.15
16:19
(24) А зачем разбирать?
Есть же ПолучитьСтруктуруХранения...
26 Провинциальный 1сник
 
02.07.15
16:29
(0) "Как вообще осуществляется связь между справочниками в 1с"
С помощью реквизита-ссылки. Ссылка - это реквизит, хранящий по сути своей уникальный идентификатор записи в таблице справочника. Но для одинесника ссылка - это указатель на объект в информационной базе.
27 cdiamond
 
02.07.15
16:37
(22) Для отчета по практике вестимо. Если в отчет весь бред бухгалтерский начнет записывать, то его выгонят с ВУЗа.
28 Гёдза
 
02.07.15
16:39
(25) это нужн код на 1с писать, а так можно чистым СКЛ
29 18_plus
 
02.07.15
16:48
вы чо, серьёзно думаете, что отчёт будут читать?
30 France
 
04.07.15
09:03
(26)  "реквизита-ссылки" это ключ ..
зы.. хм, а ведь уже и не все навскидку вспомниться..
Программист всегда исправляет последнюю ошибку.