|
|
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 13:41 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
Тебе со стороны базы - или со стороны языка? Если через язык 1С - посмотри, как выглядит для интересующего тебя объекта результат ЗначениеВстрокуВнутр Можно по значению _IDRRef (и зная тип объекта) собрать такую строку и получить объект ЗначениеИзСтрокиВнутр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 13:56 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
Мне нужно на встроенном языке 1С перебирать RecordSet - результат "прямого запроса" к базе СКЛ и находить соответствующие _IDRRef ссылки на объекты. ЗначениеВСтрокуВнутр от ссылки возвращает Строка "{"#",3c417719-35b4-4a63-a790-fb0e2da0ae49,20:acf250505450303011da5ccf323afa04}", что не очень соответствует ;) [_IDRRef] [binary](16), вроде 0x907350505450303011D995E8B855BEE4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 14:19 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
Все же следует озвучить версию 1С. Для разных версий - разные подходы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 14:26 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
8.1 (8.0) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 14:39 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
Следует использовать связку УникальныйИдентификатор и ПолучитьССылку В приведенном примере: 20:acf250505450303011da5ccf323afa04 - это представление объектной ссылки 20: - это идентификатор типа. acf250505450303011da5ccf323afa04 - это собственно IdRef (ее представление в языке) Как именно этот формат соотносится с IDRRef] [binary](16), вроде 0x907350505450303011D995E8B855BEE4, в каком порядке байты располагать - предлагаю разобраться самостоятельно на примере какой-нибудь ссылки. Из строчного представления IdRef делается ID= новый УникальныйИдентификатор("acf250505450303011da5ccf323afa04"); Затем получаем ссылку нужного типа: ссылка = Справочники[ИмяСправочника].ПолучитьСсылку(Ид); ИмяСправочника (или документа) - можно получить для IdRef след.образом: для полей простого типа - по типу поля, как он задан в конфигурации. для полей составного типа - у ссылки есть одно или два доп.поля( смотря насколько этот тип составной). первое указывает на категорию ссылки (если это необходимо - справочник это или документ или еще что-нибудь). Второе - собственно идентификатор типа (это 20 в нашем примере). Нужно использовать [ИмяСправочника], которое этому значению в конфигурации соответствует. Узнать идентификаторы типов можно через метод ПолучитьСтруктуруХраненияДанных для 8.1 или через внешнюю обработку, которая попадалась для 8.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 14:56 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
СПАСИБО. ну если ты так добр, мож намекнешь, чем binary (16) в строку конвртнуть? чтоб совсем уже хорошо было ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.04.2008, 15:25 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
ignorantчем binary (16) в строку конвртнуть? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2008, 01:40 |
|
||
|
как из _IDRRef получиь ссылку на объект в терминах 1С?
|
|||
|---|---|---|---|
|
#18+
ignorantСПАСИБО. ну если ты так добр, мож намекнешь, чем binary (16) в строку конвртнуть? чтоб совсем уже хорошо было ;) а у меня полуился такой вариант: ALTER function [dbo].[getStringUUID] (@binaryUUID binary(16)) returns char(40) as begin declare @buffer varchar(40) select @buffer = replace(convert(varchar(40),cast(@binaryUUID as uniqueidentifier)), '-', '') return right(@buffer, 8) + '-' + substring(@buffer, 21, 4) + '-' + substring(@buffer, 17, 4) + '-' + substring(@buffer, 7, 2) + substring(@buffer, 5, 2) + '-' + substring(@buffer, 3, 2) + substring(@buffer, 1, 2) + substring(@buffer, 11, 2) + substring(@buffer, 9, 2) + substring(@buffer, 15, 2) + substring(@buffer, 13, 2) end ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 09:43 |
|
||
|
|

start [/forum/topic.php?fid=28&msg=35233107&tid=1521832]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 349ms |

| 0 / 0 |
