![]() |
![]() |
|
Как в реквизите документа хранить список значений? (v 8.1) | ☑ | ||
---|---|---|---|---|
0
DenSpb
04.07.11
✎
11:54
|
Как в реквизите документа хранить список значений?
|
|||
1
butterbean
04.07.11
✎
11:55
|
таб часть сделай
|
|||
2
DenSpb
04.07.11
✎
11:56
|
не катит, нужно реквизит
|
|||
3
H A D G E H O G s
04.07.11
✎
11:58
|
Хранилище значений
|
|||
4
Сергей Д
04.07.11
✎
11:58
|
Через точку с запятой, либо какой-то другой спецсимвол.
Встречный вопрос: а зачем? |
|||
5
DenSpb
04.07.11
✎
12:05
|
Затем, чтобы можно было указать в Инвентаризации несколько контрагентов
|
|||
6
DenSpb
04.07.11
✎
12:06
|
Как можно хранилище значений здесь заюзать*
|
|||
7
Сергей Д
04.07.11
✎
12:08
|
(5) Типовой документ? Переделывать под ТЧ неохота?
|
|||
8
DenSpb
04.07.11
✎
12:10
|
Документ нетиповой, просто там очень много табличных частей и еще делать несколько нет желания(еще есть для организаций ,складов и еще могут кучу придумать).
|
|||
9
guitar_player
04.07.11
✎
12:10
|
(5) Только ТЧ
|
|||
10
МишельЛагранж
04.07.11
✎
12:10
|
(4) через хранилище все хранится.
Или через ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр |
|||
11
unregistered
04.07.11
✎
12:11
|
(6) Хранилище в данном случае нельзя использовать.
Контроль целостности данных в хранилище при удалении данных не производится. |
|||
12
H A D G E H O G s
04.07.11
✎
12:11
|
(8) Почему нет желания?
|
|||
13
DenSpb
04.07.11
✎
12:11
|
Потому что там очень много табличных частей и еще делать несколько нет желания(еще есть для организаций ,складов и еще могут кучу придумать).
|
|||
14
МишельЛагранж
04.07.11
✎
12:12
|
(6) делаешь реквизит, тип - ХранилищеЗначений
|
|||
15
unregistered
04.07.11
✎
12:12
|
(2) Здесь как раз только ТЧ и катит.
А уж как ты эту табличную часть нарисуешь на форме - твое личное дело - хоть в виде одного поля вводы, хоть в виде списка, хоть в виде текстовой строки. |
|||
16
МишельЛагранж
04.07.11
✎
12:12
|
(11) а зачем ссылочная целостность для справочных данных??
|
|||
17
DenSpb
04.07.11
✎
12:13
|
Если взять тип значения реквизита ЛюбаяСсылка, то не прокатит?
|
|||
18
Сергей Д
04.07.11
✎
12:13
|
(13) Дык, ТЧ как раз для того и придумана, чтобы хранить список значений.
|
|||
19
unregistered
04.07.11
✎
12:13
|
(16) Удалили элемент справочника Контрагенты, ссылка на который присутствовала в этом списке. И что?
В результате имеем битую ссылку в документе. |
|||
20
H A D G E H O G s
04.07.11
✎
12:13
|
(16) Дествительно. Глупостей какихто наговорили...
|
|||
21
МишельЛагранж
04.07.11
✎
12:14
|
(11) ставишь при чтении проверку на "существует контрагент? - ДаНет"
|
|||
22
Сергей Д
04.07.11
✎
12:15
|
(20) Кстати, всегда удивлялся 1С-у после SQL Server-а. Можно (если хватит прав, конечно) удалить элемент справочника, на который есть ссылки... SQL Server такое в жизни бы не позволил.
|
|||
23
H A D G E H O G s
04.07.11
✎
12:15
|
(17) Нет.
(18) Ну ломает его отдельная табличка в базе. Хотяя, я его понимаю. Автор, прикрути отдельный регистр сведений. Пусть твой последователь ококует, когда увидит зоопарк ТЧ и отдельно регистр. Удивляй! |
|||
24
МишельЛагранж
04.07.11
✎
12:16
|
(20) ну если нельзя хранить в "суперской среде разработки" список - то куда деваться? ))
|
|||
25
H A D G E H O G s
04.07.11
✎
12:16
|
(22) Это если foreign key. Но они - тормознутые (говорят).
|
|||
26
unregistered
04.07.11
✎
12:16
|
(21) Супер. И если нет, то что? Выдавать ссобщение пользователю, что он дятел и профигачил при удалении информацию о контрагенте, который фигурировал когда-то раньше в это документе?
|
|||
27
МишельЛагранж
04.07.11
✎
12:18
|
(26) пупер ))
>>"ну если нельзя хранить в "суперской среде разработки" список - то куда деваться? |
|||
28
H A D G E H O G s
04.07.11
✎
12:20
|
(27) Писец.
Рекомендую почитать книгу "Практическое пособие разработчика 1С" и посмотреть на SQL вариант 1С базы данных и узнать про структуру таблиц. |
|||
29
МишельЛагранж
04.07.11
✎
12:20
|
(13) а что за конфа? секретная разработка? ))
|
|||
30
unregistered
04.07.11
✎
12:20
|
(27) >> ну если нельзя....
Ну конечно надо выбрать самое дебильное решение совершенно не гарантирующее целостность данных. Это же очевидно! Особенно, когда задача решается одной элементарной табличной частью. |
|||
31
МишельЛагранж
04.07.11
✎
12:21
|
(28) и давно вы напрямую в SQL из 8-ки пишете? )
|
|||
32
Сергей Д
04.07.11
✎
12:22
|
(25) Ну зато уж точно ничего лишнего не удалишь.
Помнится писали для SQL Server 7 хранимую процедурку, которой даешь ссылку, она удаляет все связанные записи (и все записи, связанные со связанными записями и т.д. рекурсивно), а потом удаляет указанную запись. |
|||
33
DenSpb
04.07.11
✎
12:22
|
Это обычная торговля, документа инвентаризация, но очень сильно переделаннаяя, от нее осталась только суть.
|
|||
34
МишельЛагранж
04.07.11
✎
12:22
|
(30) именно что нужен объект "Список", а не ТЧ.
А делать попу через две других попы - для 1С это нормальное состояние )) |
|||
35
МишельЛагранж
04.07.11
✎
12:23
|
(33) так если у вас там ТЧ даже на склады есть - почему нет отдельного регистра сведений под это дело?
|
|||
36
H A D G E H O G s
04.07.11
✎
12:24
|
(34) Как бы вы сделали, будь на месте 1С?
|
|||
37
DenSpb
04.07.11
✎
12:25
|
На склады нет ТЧ, есть уже других 5 штук, если сделать контрагнетов, организации и склады, то будет 8 ТЧ
|
|||
38
МишельЛагранж
04.07.11
✎
12:26
|
(36) хранить списки как набор значений...
а как еще? ) |
|||
39
unregistered
04.07.11
✎
12:26
|
(36) Не обращая внимания. Он чиста так - потроллить. Всё равно толкового решения не родит, но какашками 1С закидает.
|
|||
40
МишельЛагранж
04.07.11
✎
12:27
|
(37) так сделайте одну на все три измерения ))
|
|||
41
H A D G E H O G s
04.07.11
✎
12:27
|
(37) Отдельный регистр
|
|||
42
H A D G E H O G s
04.07.11
✎
12:28
|
(40) Вот он истый дятлоизм.
|
|||
43
H A D G E H O G s
04.07.11
✎
12:28
|
(38) Физически, с т.з. SQL - как?
|
|||
44
МишельЛагранж
04.07.11
✎
12:29
|
(39) да уж, куда толковее: чуть что - делать виртуальную ТЧ и держать её в уме.
"Делать по-уму и правильно изгаляться - разные состояния". Можете цитировать )) |
|||
45
YF
04.07.11
✎
12:29
|
(37) Все еще упорствуешь?
|
|||
46
rs_trade
04.07.11
✎
12:29
|
(37) лучше 8 ТЧ чем список в реквизите. это вообще бред полный
|
|||
47
DenSpb
04.07.11
✎
12:29
|
Думаю может использовать СохранитьЗначение и Восстановитьзначение, хотя это тоже самое, что и использовать ХранилищеЗначения
|
|||
48
МишельЛагранж
04.07.11
✎
12:30
|
(43) сделать одну таблицу под данные "Список" и писать новое значение списка в новое поле "ИндексN".
Нет? |
|||
49
rs_trade
04.07.11
✎
12:31
|
(47) как потом запросом документ получить по нужному контрагенту?
|
|||
50
YF
04.07.11
✎
12:31
|
(48) При добавлении нового значения новая колонка в таблице появляется?
|
|||
51
PR
04.07.11
✎
12:32
|
Вообще ответ в (1).
Можно так же сделать реквизит шапки, чтобы в него писать представление табличной части, если нужно видеть его в списке документов или отчете. |
|||
52
DenSpb
04.07.11
✎
12:33
|
как потом запросом документ получить по нужному контрагенту?
- согласен, не подойдет СохранитьЗначение |
|||
53
DenSpb
04.07.11
✎
12:33
|
как потом запросом документ получить по нужному контрагенту?
- можно поподробнее? |
|||
54
Сергей Д
04.07.11
✎
12:33
|
(52) А что (по-вашему) подойдет?
|
|||
55
МишельЛагранж
04.07.11
✎
12:34
|
(42) вы уже потеряли нюх с этой 1С ))
вот: Контрагент Организации Склады 1 2 3 4 5 ... n - пишите списки по 3-м измерениям любой протяженности в одну ТЧ )) |
|||
56
DenSpb
04.07.11
✎
12:34
|
< Можно так же сделать реквизит шапки, чтобы в него писать представление табличной части, если нужно видеть его в списке документов или отчете. - Можно поподробнее?
|
|||
57
МишельЛагранж
04.07.11
✎
12:35
|
(51) >>реквизит шапки, чтобы в него писать представление табличной части, если нужно видеть его в списке документов
- это как? вы в представлении ТЧ будете перечислять содержимое всего списка? |
|||
58
Amra
04.07.11
✎
12:35
|
(56) Смотри как в ЗиУПе сделано в кадровых документах, реквизит "Состав"
|
|||
59
fimanich
04.07.11
✎
12:36
|
(0) Если неудобно, что будет лишняя ТЧ на форме, так может на форме юзать список значений, который при записи попадать будет в ТЧ. А так, имхо, ТЧ однозначно, чего велосипеды изобретать.
|
|||
60
H A D G E H O G s
04.07.11
✎
12:37
|
(48) Это как минимум 4 поля отводить под кластерный индекс для ключа и докуа полей под данные (если хотим контроллировать их целостность), либо одно поле под хранилище (image) если на целостность пофиг.
Накуа? |
|||
61
PR
04.07.11
✎
12:37
|
(56)
ТЧ Вася Петя Коля Реквизит шапки "Вася, Петя, Коля" |
|||
62
МишельЛагранж
04.07.11
✎
12:37
|
(58) по-моему, это уже попа через три попы...
прогресс, однако... )) |
|||
63
PR
04.07.11
✎
12:37
|
(57) Почему нет?
|
|||
64
H A D G E H O G s
04.07.11
✎
12:37
|
(55) Избыточность. При условии, что это документ, а не справочник - избыточная избыточность.
|
|||
65
ssh2006
04.07.11
✎
12:38
|
Представляю уже инновационный подход к программированию в 1с - конфа на регистрах сведений! Документ и справочник не нужны - берем два регистра сведений под шапку и табличную часть. Полный контроль.
|
|||
66
PR
04.07.11
✎
12:38
|
(62) Это удобство.
|
|||
67
H A D G E H O G s
04.07.11
✎
12:39
|
(61) Нет.
Данное ТипДанного Контур Контрагент Сигма Контрагент Оптовый Склад Тип данного - не строка, а число |
|||
68
Сергей Д
04.07.11
✎
12:39
|
Ну как же не вспомнить...
Сага о X, Y и Z... ...или о том, как же важно правильно формулировать, чего мы хотим. Однажды Новичок захотел сделать X. Но поскольку Новичок был новичком, X с ходу у него сделать не получилось... Ну, бывает, ничего в этом плохого нет: все мы были когда-то новичками. Чтобы решить проблему, Новичок решил воспользоваться форумом по программированию. Вы думаете он создал там тему вида: "Я хочу получить X. Пытаюсь сделать 111, получаю 222. Как сделать X?"? Нет! Новичок решил (ошибочно, т.к. Новичок пока не обладает достаточным знанием), что если он сумеет сделать Y, то с помощью Y он получит и X. Поэтому он написал: "Делаю 111, получаю 222. Как получить Y?" (ещё бывает, что Новичок задаёт только "Как сделать Y?"). Чаще всего, Y бывает невозможным, некорректным, сложным или вообще страшно извращённым и нелогичным действием. У всех Понимающих людей вопрос "как сделать Y?" вызывает недоумение: зачем это нужно? Это же бессмысленно. Всеми силами (иногда с привлечением утюга!) пытаются выпытать у Новичка Понимающие, что же ему на самом деле нужно. Но не сдаётся Новичок: он же хочет узнать, как сделать Y. Каких только Слонов не рождали глубокие умы, пытаясь постичь неисповедимые пути Новичка! Иногда даже бывает так, что Понимающие знают ответ на вопрос "как сделать Y?", но специально его не говорят, потому что эти действия лишены смысла. Они ещё надеются наставить Новичка на путь истинный. Но вот, используя шаманский бубен, миелофон, шестое чувство, телепатор и прочие БС (Божественные Силы) кто-то из Понимающих вопрошает: - А, может быть, вы хотите сделать X? - Да, я хочу получить X. Как мне сделать Y? - Аааа! Ну тогда вам не нужно Y! Вам нужно Z! Если вы сделете Z так и сяк, то потом с помощью Z вот так и вот этак вы получите X. - Ой, правда. Спасибо! Что ж, вот пример хорошей и доброй концовки, когда все остаются довольными. Но бывает и так, что кто-то из начинающих Понимающих (вчерашний Новичок), думая, что этим он помогает Новичку (или же сам Понимающий, но уже от безысходности, в надежде, что Новичок разумно распорядится даруемой в его руки Божественной Силой), даёт ответ на вопрос "как же сделать Y". Ура! - кричит Новичок и убегает доделывать Страшного Монстра, при встрече с которым потом даже самым смелым Понимающим целый месяц снятся кошмары. Тёмные Силы празднуют победу в этот день. Душа Новичка обречена гореть в геене огненной за грехи свои. А ещё бывает так, что Новичок думает, что ему отвечает другой новичок. И кажется ему, что ответ с Z неверен. И тогда он говорит: "мне не нужен Z! Мне нужно сделать Y!". И если переубедить Новичка в том, что ему нужен Z, не удаётся, Новичок уходит на другой форум, где задаёт вопрос: "Мне нужен X! Как мне сделать Y? Использовать Z не предлагать!!!!!!" Вот так-то. |
|||
69
МишельЛагранж
04.07.11
✎
12:39
|
(64) а списки складов, контрагентов, Васей и организаций в одном документе - это тогда как назвать? ))
|
|||
70
H A D G E H O G s
04.07.11
✎
12:40
|
(69) Криволобая постановка задачи скорее всего
|
|||
71
МишельЛагранж
04.07.11
✎
12:42
|
(70) в объективности вам не откажешь ))
|
|||
72
МишельЛагранж
04.07.11
✎
12:43
|
(65) шапка - где?
ТЧ - в чем? Документ же отменили )) |
|||
73
DenSpb
04.07.11
✎
12:43
|
Криволобая постановка задачи скорее всего - Скорее всего ты не значешь зачем они нужны.
|
|||
74
МишельЛагранж
04.07.11
✎
12:45
|
(60) а остальные типы в 1С разве не так? ))
|
|||
75
H A D G E H O G s
04.07.11
✎
12:45
|
Так чем вариант (67) не катит? Всего 1 тч на сколько хочешь доп реквизитов без избыточности
|
|||
76
H A D G E H O G s
04.07.11
✎
12:46
|
(74) Что значит остальные типы?
|
|||
77
МишельЛагранж
04.07.11
✎
12:47
|
(63) потому что представление показать - это одно, а данные сначала пихать в представление, потом показывать, потом обратно разбирать и получить одно нужное значение - это прогресс из (62)
:) |
|||
78
МишельЛагранж
04.07.11
✎
12:49
|
(74) любой тип данных сложнее примитивного в 1С:
>>Это как минимум 4 поля отводить под кластерный индекс для ключа и докуа полей под данные |
|||
79
ssh2006
04.07.11
✎
12:49
|
(72) Ты не понял - подход подразумевает, что новатор нарисует форму, которая подтянет данные из регистров сведений. Документ готов.
|
|||
80
DenSpb
04.07.11
✎
12:49
|
Amra
58 - 04.07.11 - 12:35 (56) Смотри как в ЗиУПе сделано в кадровых документах, реквизит "Состав" Не увидел в приеме на рабоут реквизита состав. Где можно посмотреть? В каком конкретном доке? |
|||
81
vmv
04.07.11
✎
12:51
|
регулярно на мисте пытаются классическую мастер-деталь реализовать через попу, мдя
|
|||
82
H A D G E H O G s
04.07.11
✎
12:51
|
(78) Еще раз.
Медленно. Что тебе непонятно с типами? |
|||
83
МишельЛагранж
04.07.11
✎
12:51
|
(79) ага, т.е. документ хотя бы в виде отдельной формы - будет?
также, как и возможность получить доступ и сохранить её... |
|||
84
МишельЛагранж
04.07.11
✎
12:52
|
(82) мне-то все понятно, я предлагаю вести еще один - список называется ))
|
|||
85
Жан Пердежон
04.07.11
✎
12:53
|
аргумент в (5) убил
|
|||
86
H A D G E H O G s
04.07.11
✎
12:53
|
(84) Как ты его будешь хранить в базе данных?
|
|||
87
Reset
04.07.11
✎
12:54
|
(82) Дружище, не пытайся что-то объяснить г-ну Лагранжу, тем паче не пытайся понять его. Это программа-бот. Она думать не умеет.
|
|||
89
Reset
04.07.11
✎
12:55
|
По теме - ответ в (1). БЕЗ вариантов.
|
|||
90
МишельЛагранж
04.07.11
✎
12:56
|
(81) ну если поп-классика не устраивает - то да ))
(85) ну хочет человек списать результаты на того, кто "потянет" )) а заранее не знает, кто.... (86) как и остальные - записью |
|||
91
H A D G E H O G s
04.07.11
✎
12:57
|
(90)
как и остальные - записью В какой таблице? |
|||
92
МишельЛагранж
04.07.11
✎
13:00
|
(91) сложно организовать отдельную таблицу?
|
|||
93
ssh2006
04.07.11
✎
13:01
|
(83) Конечно будет) Вообще речь про то что не нужно изобретать велосипеды, подменяя те средства, которые есть в платформе.
|
|||
94
H A D G E H O G s
04.07.11
✎
13:02
|
(92) Отдельную таблицу для конкретного документа, либо отдельную таблицу для всех всех документов (типа глобальный общий список) ?
|
|||
95
GoldenDawn
04.07.11
✎
13:03
|
(10)(3)база должна быть целостной ссылочной структурой, а не помойкой нашпигованной шаманизмом, если этот список только на время существования формы - не зачем его в базе хранить, а если для отчетности ещё понадобиться потом - шаманизмы будут ли наращиваться как снежный ком и тормозить, либо придется переносить таки инфу оотуда в структуры данных 1С
|
|||
96
МишельЛагранж
04.07.11
✎
13:05
|
(94) отдельную таблицу под тип данных "Список"
значения списка - пишутся в поля. Переменной присваивается уникальный ссылка (как любят в 1С). |
|||
97
H A D G E H O G s
04.07.11
✎
13:06
|
(96) Структуру такой таблицы рассказать сможете?
|
|||
98
МишельЛагранж
04.07.11
✎
13:12
|
(97)нет, не буду.
как-то не интересно ковырять "представления" 1С о "правильной" структуре базы, каковая потом тормозит при поиске и периодически вываливается с ошибкой SDBL. Сколько надо, столько пусть и пишут полей - индексы, ссылки, что там еще они считают "новаторским" - в результате все равно это будет работать как и все остальное. |
|||
99
H A D G E H O G s
04.07.11
✎
13:16
|
(98) Типичный подход дятла.
|
|||
100
Grusswelle
04.07.11
✎
13:17
|
Сто!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |