Имя: Пароль:
1C
1С v8
Делать ли документ основание составного типа?
,
0 MaiorovYury
 
17.08.17
15:47
Добрый день,
кто как думает - что предпочтительнее
Есть документ Накладная
Может создаваться на основании Заявки, а может на основании другой накладной - тогда это возвратная накладная
Что лучше
1) Сделать поле ДокументОснование составного типа (Заявка, Накладная)
2) Сделать 2 поля - Заявка, НакладнаяКВозврату
Вроде бы с учетом поиска по полю составного типа предпочтительнее второй вариант, тем более, насколько я понимаю, на размер базы это скажется незначительно.
Но тогда вопрос почему в типовых делают поле ДокументОснование составного типа?
1 Timon1405
 
17.08.17
15:49
потому что жизнь длинная и непредсказуемая, завтра надо будет вводить на основании РТУ, а после завтра введете еще свой документ основание, зачем городить кучу реквизитов?
2 lodger
 
17.08.17
15:49
потому что могут.
потом с этими составными полями есть нюанс при запросах, но это решаемо.
3 Волшебник
 
модератор
17.08.17
15:49
составной тип
4 MaiorovYury
 
17.08.17
15:51
(1) тогда получается, если ничего не меняется, то лучше первый вариант?
5 MaiorovYury
 
17.08.17
15:52
(2), (3) так а чем составной тип лучше?
6 Heckfy
 
17.08.17
15:52
(0) У тебя не коррелируется
"
с учетом поиска по полю составного типа
"
и второй вариант. Во втором варианте не составной тип
7 MaiorovYury
 
17.08.17
15:55
(6) перефразирую
"с учетом того, что я всегда могу однозначно определить по какому полю искать - по Заявке или Накладной, а поиск по составному полю в первом варианте требует больше ресурсов -
предпочтительнее второй вариант"
Так лучше?)
8 Timon1405
 
17.08.17
15:56
(5) да тем лучше, это одно поле.
смотрите, допустим вам нужно получить поле "номер" документа основания
в случае 1 вы напишете в запросе ДокОснование.Номер и платформа сама развернет это в 2 левых соединения с вашими типами документов.
в случае 2 вам самому придется писать чтото вроде
выбрать Естьnull(Заявка.Номер,НакладнаяКВозврату.Номер) как номер
результат будет 1 но телодвижений меньше
плюс масштабируемость на будущее
главное с ней не переборщить и не делать там там "ДокументССылка"
9 lodger
 
17.08.17
15:56
(5) ну ресурсов оно требует не то чтобы очень много.
учитывать это при запросах несложно.
зато появляется вариативность.
когда заказчику через месяц е..нет в голову сделать Накладная на основании десятка разных объектов.
10 MaiorovYury
 
17.08.17
15:56
Пожалуй уточню свой вопрос
Приведите причины "за" составной тип)
11 MaiorovYury
 
17.08.17
15:58
(8) хороший пример - спасибо)
12 MaiorovYury
 
17.08.17
15:59
(9) не исключаю конечно такой возможности)
13 Dmitrii
 
гуру
17.08.17
16:01
(0) Если исходить из чистой логики, то должно быть два отдельных поля:
- Заявка - заявка
- Накладная - накладная, по которой поступил возвращаемый товар.
У возвратной накладной будет заполнено оба поля - и Заявка, и Накладная.

PS В данном случае это вопрос методологии учета и конкретного  автоматизируемого бизнес-процесса. Это вопрос, на который должен ответить бизнес-заказчик.
А составное - не составное, поиск - не поиск - это чисто техническая лирика.
14 MaiorovYury
 
17.08.17
16:06
(13) вот в том то и дело, что я не вижу смысла хранить Заявку в возвратной накладной. Тут заявка - это заявка курьеру забрать груз. Потом по ней делается Накладная. Зачастую даже заявки не будет.
Но вообще я понял - спасибо)
15 mistеr
 
17.08.17
16:10
(0) В типовых есть такая полезная команда - показать структуру подчиненности документа. Чтобы она работала, основание должно быть одно, составного типа.

Это я ответил на вопрос почему так делают в типовых. А как сделать у тебя, сам решай.
16 lodger
 
17.08.17
16:14
(15) в критерий отбора закинуть 2 поля - Заявка, НакладнаяКВозврату. тогда все попадет в структуру подчиненности документа.
17 h-sp
 
17.08.17
16:14
(15) там можно в структуре подчиненности хоть 20 оснований задать, что-то вы не в теме.
18 mistеr
 
17.08.17
16:19
(17) Хм... Когда я туда смотрел, было так. Возможно, это было давно.
19 Dmitrii
 
гуру
17.08.17
16:28
(15) ерунду говоришь.