![]() |
![]() |
![]() |
|
Как определить тип ссылки в колонки таблицы SQL | ☑ | ||
---|---|---|---|---|
0
NcSteel
24.05.11
✎
11:53
|
Если реквизит составной , то в SQL добавляется колонки TYPE, RTREF (тип ссылки), RRREF (собственно ссылки) + колонки с префиксами характеризующие простые типы.
Как определить что у нас лежит в реквизите и какого типа ? |
|||
1
NcSteel
24.05.11
✎
11:59
|
ВОт простой пример:
TYPE = 0x08 RTRef = 0x00000097 RRRef = 0xB1040014C2628BAB11E085C5E8DEB3B1 Где взять информацию о типе ссылки. |
|||
2
DrZombi
гуру
24.05.11
✎
12:00
|
(0)А чем вам не нравится типовые запросы?
|
|||
3
NcSteel
24.05.11
✎
12:01
|
(2) Объемы не выдерживают.
|
|||
4
NcSteel
24.05.11
✎
12:04
|
По идее это соответствие можно получить создав тестовые записи средствами 1С и прочитав их. Но не хочется применять такой алгоритм.
|
|||
5
МихаилМ
24.05.11
✎
12:06
|
один изних номер таблицы
по номеру (он уникальный в пределах бд ) поймёте TYPE |
|||
6
H A D G E H O G s
24.05.11
✎
12:08
|
(3) То есть
|
|||
7
NcSteel
24.05.11
✎
12:08
|
0x00000097
и есть номер таблицы но что за номер ? Порядковый? или номер referenceXXX , где XXX и есть номер ? |
|||
8
NcSteel
24.05.11
✎
12:08
|
(6) Все очень долго.
|
|||
9
H A D G E H O G s
24.05.11
✎
12:08
|
(8) Как ты можешь сам помочь?
|
|||
10
NcSteel
24.05.11
✎
12:10
|
(9) как бы чтение меня не волнует )
|
|||
11
H A D G E H O G s
24.05.11
✎
12:10
|
(8) Вон, в v8: Странные тормоза УПП тоже все очень долго.
Однако, что у меня в замере производительности было около 3 секунды, что в профайлере около 3000 миллисекунд. Все так же. |
|||
12
H A D G E H O G s
24.05.11
✎
12:11
|
(10) Писать будешь? Угу?
|
|||
13
Sammo
24.05.11
✎
12:11
|
(7) 97 преобразуй в 10тичное и добавь Document
|
|||
14
NcSteel
24.05.11
✎
12:11
|
(12) Я этого не говорил )))) как бы.
|
|||
15
H A D G E H O G s
24.05.11
✎
12:11
|
(10) Будь осторожен. Не зря 1С это запрещает напрямую.
|
|||
16
NcSteel
24.05.11
✎
12:11
|
(13) А если справочник?
|
|||
17
NcSteel
24.05.11
✎
12:12
|
(15) Если бы не был осторожен , то мне на TYPE и RTRef было бы наплевать и заполнял бы нулами.
|
|||
18
NcSteel
24.05.11
✎
12:15
|
Так стало известно что необходимо колонку RTRef конвертировать в десятичное число и мы получим номер таблицы . Но RRRef может содержать ссылки на любой объект конфигурации (справочник, документ, ПВХ и т.д.) Как узнать этот тип?
|
|||
19
NcSteel
24.05.11
✎
12:18
|
Если взять пример с (1) то после конвертации получим:
TYPE = 8 RTRef = 152 RRRef = 0xB1040014C2628BAB11E085C5E8DEB3B1 8 - это справочник ? |
|||
20
Sammo
24.05.11
✎
12:20
|
(18) Емнип, это как раз _type
Пытаюсь вспомнить - где видел таблицу. "0x08 - документ" |
|||
21
NcSteel
24.05.11
✎
12:21
|
Если же тип не составной то нету определителя (TYPE, RTRef) Следовательно и нет возможности определить тип . Слава богу есть СТруктураХаренинияБД.
|
|||
22
NcSteel
24.05.11
✎
12:21
|
(20) Видимо придется создать базу и со всеми возможными типами в реквизите и протестировать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |