Имя: Пароль:
1C
1С v8
ЗначениеВСтрокуВнутр
0 magicSan
 
29.07.15
14:52
значениевстрокувнутр(документы.заказнаряд.найтипономеру("САС000013543"))

возвращает "{"#",7eb1257b-df29-477a-89b8-534b30c9915d,130:b7d30015179e123d11e51bb462be6031}"

ЧТо за???
Вроде как второе ссылается на тип:ссылканадокумент, а первое что?

идентификатор таблицы? 0_о
1 Nikoss
 
29.07.15
14:54
собственно сама ссылка, не?
2 magicSan
 
29.07.15
14:55
Ноги задачи растут из журнала регистраций - достали его тормоза решил перелить из текстовых и так сказать на самом интересном месте .....
3 magicSan
 
29.07.15
14:55
(1) во второй части сама ссылка и тип
4 awa15
 
29.07.15
15:00
7eb1257b-df29-477a-89b8-534b30c9915d - это GUID типа "ДокументСсылка.ЗаказНаряд".
Попробуй сделать ЗначениеВСтрокуВнутр(Тип("ДокументСсылка.ЗаказНаряд")) - увидишь этот же GUID
5 magicSan
 
29.07.15
15:02
(4) Да фиг там в том то и дело
6 magicSan
 
29.07.15
15:05
(4) так всё конецрабочего дня я же час назад делал значениеизстрокизначениевстроку(....)

логи от оригинала работаю в копии ..
7 magicSan
 
29.07.15
15:06
(6) всё работало ....

В копии другие гуид??? да, другие - почему???
8 Defender aka LINN
 
29.07.15
15:07
(5) Иногда лучше слушать, что тебе старшие говорят.
Ссылка, Ссылка2 - РАЗНЫЕ ссылки на ОДИН вид документа (ЧекККМ):
Сообщить(ЗначениеВСтрокуВнутр(Ссылка));
Сообщить(ЗначениеВСтрокуВнутр(Ссылка2));
Результат:
{"#",40687ef7-d632-4da5-8f96-8a6f2f4a87a6,147:b51b6cae8b0b9a8611e4ef66818ccdb6}
{"#",40687ef7-d632-4da5-8f96-8a6f2f4a87a6,147:b51b6cae8b0b9a8611e4ef66818ccdbf}

Теперь ссылки на РАЗНЫЕ виды документов;
{"#",40687ef7-d632-4da5-8f96-8a6f2f4a87a6,147:b51b6cae8b0b9a8611e4ef66818ccdbf}
{"#",c54bc9da-857b-48df-9fa6-2ffdb1e31b32,125:b51b6cae8b0b9a8611e4ef66818ccdd3}
9 magicSan
 
29.07.15
15:32
(8) ты лесом советчик недоделанный.

(4)

значениевстрокувнутр(тип(документы.заказнаряд))
{"T",f42b7f3c-e10b-4df1-bd71-f53d26ffef25}

значениевстрокувнутр(документы.заказнаряд.найтипономеру("АМ00021656"))
{"#",597ae0b0-2398-48d2-8f34-a4ea3803f3f7,130:980f0015179e123d11e4f46cd1ed512e}
10 awa15
 
29.07.15
15:46
(9) Типы ДокументСсылка.БлаБлаБла и ДокументМенеджер.БлаБлаБла - это разные типы.
11 magicSan
 
29.07.15
15:54
(10) я был готов ))))
значениевстрокувнутр(тип(документы.заказнаряд.найтипономеру("АМ00021656")))
{(1)}: Тип не определен (Заказ-наряд АМ00021656 от 01.07.2015 12:57:21)
12 magicSan
 
29.07.15
15:56
(10) значениевстрокувнутр(типзнч(документы.заказнаряд.найтипономеру("АМ00021656")))

{"T",597ae0b0-2398-48d2-8f34-a4ea3803f3f7}

угум ага - то что надо
13 awa15
 
29.07.15
16:07
(12) Ну так все же сделай как я писал в (4): ЗначениеВСтрокуВнутр(Тип("ДокументСсылка.ЗаказНаряд")) - будет тоже самое, что в (12)
14 бомболюк
 
29.07.15
16:20
вид документа определяется числом "130".
15 бомболюк
 
29.07.15
16:21
а то что после ":" - это ссылка на документ
16 МихаилМ
 
29.07.15
23:17
130 - это сквозной номер таблицы в бд.

при определенных обстоятельствах он может быть
для одинаковых конфигураций - разный
17 magicSan
 
30.07.15
06:40
(13) Я из копии пытаюсь прочитать - не читает.

Как узнать какому типу соответствует читаемые мной?

(16) Конечно тип - не ясно тогда зачем первый идентификатор - и почему с копии не читается.

В lgf этому типу документа прописан другой идентификатор. =((
18 МихаилМ
 
30.07.15
10:27
(17)
переберите метаданные объектного типа
сделайте сопоставление метадаоное-гуид
19 Serginio1
 
30.07.15
11:03
(17)


    ТипСтр=ЗначениеВСтрокуВнутр(тип("Справочникссылка.Номенклатура"));
     Сообщить(ТипСтр);
    
      Сообщить(ЗначениеВСтрокуВнутр(Справочники.Номенклатура.ПустаяСсылка()));
      
      Тип=ЗначениеИзСтрокиВнутр(ТипСтр);
      Сообщить(тип);


Выдает

{"T",5ac11bc5-3cde-42e8-b813-92e66544685d}
{"#",5ac11bc5-3cde-42e8-b813-92e66544685d,28:00000000000000000000000000000000}

Откуда легко получить строку для типа. И получить его через ЗначениеИзСтрокиВнутр
20 Serginio1
 
30.07.15
11:06
А из типа его строковое представление через XmlТип(тип)
21 Serginio1
 
30.07.15
11:09
XmlТип(тип).ИмяТипа
22 Radkt
 
30.07.15
11:51
(0) посмотрите что возвращает строчка документы.заказнаряд.найтипономеру("АМ00021656"), без даты может не работать, не смотря на синтаксис помощник
23 magicSan
 
30.07.15
12:18
(18) где там гуид ловить???? Мне смысла нет перебирать - я знаю что за метаданные, знаю гуид ссылки и типа. Вообщем имею строку вида
{7eb1257b-df29-477a-89b8-534b30c9915d,130:b7d30015179e123d11e51bb462be6031}

Из неё судя по контексту можно достать ссылку методом ЗначениеИзСтрокиВнутр() - загвостка в первом значение которое возвращает тип менеджера а не ссылки.

(22) Смотрел конечно первым делом, документ находится.
24 magicSan
 
30.07.15
12:22
Ктонить выгружал журнал регистраций в бд?? Может проще как-то делали .....
25 Serginio1
 
30.07.15
12:25
(23)      Для каждого Стр Из Справочники Цикл
      
          Сообщить(ЗначениеВСтрокуВнутр(стр));
      
      КонецЦикла;
26 magicSan
 
30.07.15
12:47
(25) В том то и дело нету там этого гуид - ощущение что есть таблица с этой ссылкой.

В лгф - {5,7eb1257b-df29-477a-89b8-534b30c9915d,"Документ.ЗаказНаряд",23},

из лгп - {20150701092423,U,
{2422d8f10b660,fd33},67,7,5,61,11,I,"",23,
{"R",130:980f0015179e123d11e4f46cd1ed512e},"Заказ-наряд АМ00021656 от 07.05.2015 17:42:13",1,2,0,84,0,
{0}
},
27 Serginio1
 
30.07.15
13:41
28 Serginio1
 
30.07.15
13:50
29 Serginio1
 
30.07.15
13:54
30 magicSan
 
30.07.15
13:58
(27) "-Чтение формата XML занимает примерно 7 минут(общий 'вес' XML ~20 МБ)" )))) я тут сразу выключил с тестовой базы за неделю файл 200 - да и нафига это надо когда можно текстовые в дбф как минимум закинуть.
(28) на той недели пробывал - бред, цель ускорить работу.


попробую влоб перебором как изначально советовали.

(29) Тоже читал. Спасибо
31 H A D G E H O G s
 
30.07.15
14:04
Кто нибудь понял, что хочет автор?
32 Serginio1
 
30.07.15
14:09
(31)Ему нужно 29
33 Serginio1
 
30.07.15
14:10
3) {"R",id:GUID} – Ссылка c GUID, где метаданные с id. Для получения id метаданных пока нашел только немного извращенный способ – ЗначениеИзСтрокиВнутр(ТипМетаданных.ИмяМетаданных.ПустаяСсылка()) и парсить полученную строку.
34 magicSan
 
30.07.15
14:22
(31) 1. В (1) - убедился что первый параметр тип. Нафига? так и не понял. (Видимо для разных бд в случае одинаковых названий таблиц)

2. В журнале регистраций есть очевидная структура которой не очевидно пользоваться - в лоб не считается.

3. из рег. журнала у определеного типа документов есть идентификатор - откуда его берет 1с - не ясно.

(33) айди я знаю, нафига мне его получать? Я и наименование типа знаю. Зачем все эти движения с перебором когда в 1С хранится по другому - явно не просто так делали.
35 Serginio1
 
30.07.15
14:33
(34) Они просто применили более сокращенную запись.
Ты знаешь, если делаешь отбор по определенному типу. А если отбор по множеству типам?
36 magicSan
 
30.07.15
14:41
(35) ????


значениевстрокувнутр(документы.заказнаряд.найтипономеру("САС000013543"))

возвращает "{"#",7eb1257b-df29-477a-89b8-534b30c9915d,130:b7d30015179e123d11e51bb462be6031}"

- куда проще??? в рег журнале вижу идентификатор этого типа, и ссылку на документ - но что то пошло не так с типом =)))   - возможно они ссылаются на таблицу индексов этой таблицы этим идентификатором ...
37 Serginio1
 
30.07.15
15:41
(36) Да сложный ты человек. Можешь объяснить где,что и как и зачем.
38 magicSan
 
30.07.15
15:48
(37) =) да лан чот я вообще херней стал страдать с восстановлением типов - заливается в бд 5 гигов журнала погляжу как будет поиск - по сути надо-то номер документа в самом простом случае.
39 Serginio1
 
30.07.15
16:01
(38) Теперь понятно. Смотри в сторону SQLite http://1c-programmer-blog.ru/programmirovanie/zhurnal-registracii-v-1s-8.html