![]() |
![]() |
![]() |
|
Кто пользовался ЗначениеВ(Из)СтрокуВнутр? Какие есть подводные камни? | ☑ | ||
---|---|---|---|---|
0
Анютик
01.06.07
✎
15:11
|
Как долго перегоняет туда-обратно? Что быстрее - поиск по Табличной части документа по значению поля или преобразование изстрокивнутр?
|
|||
1
Max_Minsk
01.06.07
✎
15:29
|
(0) В зависимости от объема данных. Второй вопрос совсем не понял.
|
|||
2
Анютик
01.06.07
✎
15:32
|
ну в общем, надо как-то в одной строке табличной части документа хранить еще одну таблицу. идеи пока две - одна - писать во внутр строку, вторая - делать доп таблицу и связывать по гуиду. При отображении этой самой вложенной таблички придется оттбирать значения из доп таблицы по этому самому гуиду. Вот меня и интересует - что быстрее будет работать - развернуть значение из строки или отбор по доп таблице:) Сразу скажу, счет вложенных строк на миллионы не идет, максимум 10-12, я полагаю.
|
|||
3
Max_Minsk
01.06.07
✎
15:41
|
Отбор по-моему намного проще и логичнее.
|
|||
4
Анютик
01.06.07
✎
15:48
|
(3) ну я бы не сказала, что проще...и насчет логичнее есть сомнения. Смотри, придется хранить в обеих таблицах гуид по 36 символов. как думаешь, балготворно отразиться на размере базы? к тому же вторую таблицу целиком. А тут таблица одна. Где бы про механизм обращения в(из) внутреннего значения почитать? как в потрохах все это работает
|
|||
5
Terv
01.06.07
✎
15:50
|
(2) самая большая проблема такого решения... это отсутствия авто контроля ссылочной целостности...
|
|||
6
Анютик
01.06.07
✎
15:51
|
(5) какого именно?:) про две таблицы?
|
|||
7
Денежко
01.06.07
✎
15:51
|
Да и отчеты потом ...перебором чтоле
|
|||
8
Анютик
01.06.07
✎
15:53
|
(7) какие отчеты?! они, вроде, по регистрам собираются, а не по докам. По докам вообще не правильно собирать...или я что-то путаю?
|
|||
9
Анютик
01.06.07
✎
15:54
|
+8 бывают случаи, но они редко. и не моем варианте
|
|||
10
snc
01.06.07
✎
16:06
|
Если обмен данными предполагается, то надо сначала его протестить - вдруг там обнаружатся подводные камни.
|
|||
11
Анютик
01.06.07
✎
16:07
|
(10) именно он. а там какие могут быть? я же объект уже в самой 1с конвертить буду
|
|||
12
snc
01.06.07
✎
16:09
|
Либо символы неправильные:
v8: Я тащусь от функции ЗначениеВСтрокуВнутр, позор. Либо что-то еще. Я не тестировал. |
|||
13
Херрес
01.06.07
✎
16:10
|
В типовых делают доп. таблицу. Вот только связывают не по гуиду а по номеру строки род. таблицы. Следовательно так и надо делать.
Почему потребовались именно гуиды ? |
|||
14
Херрес
01.06.07
✎
16:15
|
(0) ну а если конвертить в строку - подводные камни
а) ссылочная целостность не работает б) запросы по подчинённой таблице работать не будут в) может долго распаковываться большая подчинённая таблица. Да и полученная строка явно будет именть сильно избыточную длину, значит база опухнет вообще такое решение вполне в стиле 7.7 |
|||
15
Анютик
01.06.07
✎
16:20
|
(12) спасибо, почитаю
(13) почему нет - объясню:) мы удалили строку в основной таблице, соответственно, должен номер, по которому идет связь с подчиненной изменится, а то она у нас переподчинится и получится вообще сплошная абракадабра. Это придется отслеживать ручками, так как сделать ссылку на строку табличной части нельзя. Вывод?:) гуиды уникальны - хоть удаляй, хоть добавляй. |
|||
16
Анютик
01.06.07
✎
16:20
|
+15 для 13 - пример из типовой по 8-ке дай? посмотрю
|
|||
17
Херрес
01.06.07
✎
16:41
|
(15) тем не менее в типовых гуиды не используют а обходятся такой простой конструкцией
// Инициализируем значение "КлючСтроки" для установки связи данной таблицы с таблицей // "ДанныеПоСФ". // Значение должно быть уникальным в пределах таблицы ДополнительныеСведения НеУстановлено = Истина; Кандидат = ДанныеПоСФ.Количество(); Пока НеУстановлено Цикл Если ДанныеПоСФ.Найти(Кандидат, "КлючСтроки") = Неопределено Тогда // Уникальное значение ключа ЭлементыФормы.ДанныеПоСФ.ТекущиеДанные.КлючСтроки = Кандидат; НеУстановлено = Ложь; Иначе // Такое значение ключа уже использовано Кандидат = Кандидат + 1; КонецЕсли; КонецЦикла; |
|||
18
Freddy
01.06.07
✎
16:53
|
(0) Пусть представление некоторого элемента:
{"#",fee1806a-227a-40f5-a518-ffb25620e0fb,27:8b78d27d8c5f1670419a59715fb3edf5} Если базу в которой есть запомненные где-либо ссылочные значения в виде строки выгрузить и загрузить, то будет кирдык. Ибо почему-то меняются цифры между "," и ":". В данном примере 27. |
|||
19
Freddy
01.06.07
✎
16:54
|
(17) Ключ строки в типовых - это не номер строки, а просто автоинкрементируемый общий реквизит двух таблиц :)
|
|||
20
Анютик
01.06.07
✎
17:11
|
(17) это откуда? какая конфа?
|
|||
21
Анютик
01.06.07
✎
17:12
|
(18) очень интересно, попробую:)
|
|||
22
Херрес
01.06.07
✎
17:19
|
(20) это БП, документ ВводНачальныхОстатковНДС
|
|||
23
Анютик
01.06.07
✎
17:21
|
(22) замечательно, посмотрю
|
|||
24
DrWatson
01.06.07
✎
17:24
|
(20) УПП, Ввод остатков НДС, например
|
|||
25
Анютик
01.06.07
✎
17:27
|
(24) нету УПП:( ну да не суть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |