Имя: Пароль:
1C
1С v8
Для чего конструктор запросов постоянно вставляет ПРЕДСТАВЛЕНИЕ?
0 Помогите
 
25.07.13
07:37
Вместе с нужными полями типа:

    ТоварыОстатки.Товар,

вставляет ненужные:

    ПРЕДСТАВЛЕНИЕ(ТоварыОстатки.Товар),

Задолбался уже удалять. Как заставить его не вставлять их? И для чего он это делает?
1 Галахад
 
гуру
25.07.13
07:43
Вопроса не понял.

А так представление штука нужная. Если выводить в больших списках ссылку, времени будет уходить довольно много.
2 Капитан О
 
25.07.13
07:43
где ты взял такой конструктор?
3 Zerg80
 
25.07.13
07:45
(0) Почитай что это такое, и подумай - зачем :)
4 Помогите
 
25.07.13
07:46
(1) Так и так выводится ссылка. ПРЕДСТАВЛЕНИЕ вообще не используется.
(2) в консоли отчетов.
5 CepeLLlka
 
25.07.13
07:46
Меня Паша Чистов в своих видео учил что использовать ПРЕДСТАВЛЕНИЕ это правильно.. я ему доверяю на 100%..
6 CepeLLlka
 
25.07.13
07:46
(4) Скинь на почту плиз такую консоль??
7 Помогите
 
25.07.13
07:48
(6) скинул
8 Mitriy
 
25.07.13
07:52
(0) потому что в обычных отчетах, если не выводить представление, то ссылка будет преобразовываться в представление при выводе. Чтобы не терять на это времени при выводе, представление получается напрямую в запросе...
9 Starhan
 
25.07.13
07:53
(0) типичный 1сник без знания азов
10 Помогите
 
25.07.13
07:56
Все, разобрался. Это консоль отчетов такая хитрая, сама подставляет представление даже если его явно не выбирать. Да и нельзя его явно выбрать.
11 Mitriy
 
25.07.13
07:57
(10) а я говорю, что можно... давай голосовалку..
12 Jokero
 
25.07.13
08:02
вроде правило такое, если выводишь юзеру, то представление, если программно обрабатываешь, то ссылка.
(в момент вывода пользователю система делает еще один запрос к БД для разрешения ссылок и приведения их в удобочитаемый вид)
13 Помогите
 
25.07.13
08:03
(11) Можно если нет ссылки. А если есть ссылки, консоль прячет выбор представления и сама его выводит в колонке где выбрана ссылка
14 EvgeniuXP
 
25.07.13
08:14
(1) да обычно расшифровка нужна, а не текстик :)
15 Помогите
 
25.07.13
08:17
Все равно не ясно нафиг нужно это представление, если есть

ТоварыОстатки.Товар.Наименование
16 Starhan
 
25.07.13
08:21
17 CepeLLlka
 
25.07.13
08:25
(15) Вот тут не нужно.. а если будешь брать ссылку.. то нужно..
18 Помогите
 
25.07.13
08:26
(16) ПРЕДСТАВЛЕНИЕ() разве не делает соединение со второй таблицей?
19 Ненавижу 1С
 
гуру
25.07.13
08:32
(18) с какой второй?
если ты выводишь в колонку ссылку, то она снова лезет в базу узнать свое представление, то есть неявный запрос в цикле
20 magicSan
 
25.07.13
08:40
(19) лезет, но скорее всего шарит не все поля
21 magicSan
 
25.07.13
08:41
(19) между представление(док.ссылка) и док.ссылка на громадных отчетах разница чувствуется. Впрочем может из-за обработки данных после запроса
22 Помогите
 
25.07.13
09:09
(19) с таблицей Справочник.Товары
23 Maxus43
 
25.07.13
09:31
ещё тут чтоле?
Представление на скуле для докмента например это 2 поля, Дата и номер. Если в запросе не выбрать Представление - то при выводе на экран для 1000 документов пойдёт 1000 запросов этих мелких на сервер, за датой-номером
24 EvgeniuXP
 
25.07.13
09:42
(23) в 8.3.3 представление уже задается вручную.
25 EvgeniuXP
 
25.07.13
09:42
(+24) в смысле состав задают.
26 magicSan
 
25.07.13
09:52
(23) дак там кроме представление ещё все поля таблицы документа вытащит
27 magicSan
 
25.07.13
09:53
(26) всмысле если н евыбрать представление
28 Maxus43
 
25.07.13
09:53
(26) што?
29 Maxus43
 
25.07.13
09:53
(27) не, запрос дополнительный на номер-дату-ссылку будет только
30 magicSan
 
25.07.13
10:04
(29) млять, это елси через представление() , а если просто ссылка то вся таблица подтянится
31 Помогите
 
25.07.13
10:12
(30) с чего ты это взял?
32 mikecool
 
25.07.13
10:18
(30) еще и блобы потянет?
33 Maxus43
 
25.07.13
10:27
вот для справочника, для каждого элемента отдельный запросик:

xec sp_executesql N'SELECT
T1._IDRRef,
T1._Description
FROM _Reference14 T1 WITH(NOLOCK)
WHERE T1._IDRRef = P1',N'P1 varbinary(16)',0x8EAB0007E932825B11DDC6A04D4B8125
34 Maxus43
 
25.07.13
10:28
(33) + Это если запрос просто по Ссылка, потом куча таких мелких при выводе
35 Maxus43
 
25.07.13
10:29
запрос изначальный:
SELECT TOP 500
T1._IDRRef
FROM _Reference14 T1 WITH(NOLOCK)
36 Maxus43
 
25.07.13
10:36
ко всем полям таблицам обращается когла во встроенном языке пишем ЭлементСправочника.Ссылка например
37 Помогите
 
25.07.13
10:37
(33) ну другое дело. А вся таблица ему не нужна
38 Помогите
 
25.07.13
10:37
(36) с чего ты это взял?
39 Maxus43
 
25.07.13
10:38
(38) смотрел потомучто
40 Maxus43
 
25.07.13
10:38
(37) я и не говорил что нужна
41 Помогите
 
25.07.13
10:40
(39) чото не верица. Не такой тупой тот кто написал 1С
42 magicSan
 
25.07.13
10:41
(31) отладку открой
43 Maxus43
 
25.07.13
10:43
(41) именно не тупой. Объект весь читается и кэшируется, потом не полезет в БД за ним, а будет брать у себя. ЕМНИП
44 Maxus43
 
25.07.13
10:53
H A D G E H O G s вещай подробней)
45 Помогите
 
25.07.13
11:00
если я выбрал

ВЫБРАТЬ
    ТоварыОстатки.Товар

вместо

ВЫБРАТЬ
    ТоварыОстатки.Товар.Ссылка

то все поля выбрались, или только ссылка и наименование?
46 Maxus43
 
25.07.13
11:04
(45) тут будет неявное соединение со справочником. Не надо через точку
47 Maxus43
 
25.07.13
11:05
+ выберется только ссылка, и там и там, но запросы будут разные
48 Помогите
 
25.07.13
11:12
все понятно
49 magicSan
 
25.07.13
11:19
(48) врут
50 Maxus43
 
25.07.13
11:20
(49) > (33)(35) Запросы профайлера тоже врут? о чем речь вообще?
51 magicSan
 
25.07.13
11:33
да чо то профайлер, мыслить надо глобально, возвращается выборка - которая лезет туда куда не надо.
52 magicSan
 
25.07.13
11:34
в частности по ссылке если видит её
53 magicSan
 
25.07.13
11:35
причем там в элементах выборки возвращается какое то дикое декартовое произведение между элементами и их полями
54 Maxus43
 
25.07.13
11:35
(51) куда лезет выборка? Что за глобальный взгляд, который не отражает действительность? Всё что происходит в БД описано выше, с примерами запроса. НИкуда больше ничего не лезет
55 magicSan
 
25.07.13
11:36
(53) причем там в элементах выборки возвращается какое то дикое декартовое произведение между элементами-сылками и их полями
56 Maxus43
 
25.07.13
11:36
(53) примеры в студию. что за голословные утверждения?
57 magicSan
 
25.07.13
11:38
(54) ага, получили из запроса ссылка дальше в выборке при обращении через точку из воздуха берутся данные да?
58 ДенисЧ
 
25.07.13
11:40
(57) А всегда говорят, что в запросе сразу нужно получать всё, что нужно, чтобы через точку не лезть. Так что это не выборка лезет, а ты
59 magicSan
 
25.07.13
11:43
(58) кароче если в запросе была ссылка,

после оператора Выборка.Следующий(), элемент выборка.ссылка будет содержать реквизиты ссылки
60 Maxus43
 
25.07.13
11:43
(57) естественно полезет, если обращаешся.
Сы тут сугубо и трегубо про запросы говорили, откуда выборка вылезла я не понял
61 ilpar
 
25.07.13
11:44
Представление в запросе по сути делает тоже, что если просто ссылку присвоить ячейке.

Тут мутно все.

А вот черезточку параметры у объекта получать не ГУТ.
62 Maxus43
 
25.07.13
11:44
(59) если обращаешся через точку, либо отладчиком смотришь. ДО этих действий запрос на реквизиты в БД не полезет
63 magicSan
 
25.07.13
11:44
(60) ну дак ты после запроса я так понимаю его в файл выгружаешь не обрабатываешь там никак да???
64 rs_trade
 
25.07.13
11:45
(5) На курсах научили, делаю. А почему не знаю?
65 Maxus43
 
25.07.13
11:47
(63) Это зависит от кода, что ты дальше делаешь с элементом выборки. Если просто движения в регистр по нему делаешь - ни за какими реквизитами никто никуда не полезет
66 Maxus43
 
25.07.13
11:50
Отладчик тоже получает значения в реальном времени. Когда обращаешся - тогда и лезет. Если в отладчике видно реквизиты - не значит что они там были изначально
67 Fragster
 
гуру
25.07.13
11:50
все забывают, что представление - это далеко не всегда наименование. в 8.3 так вообще эту идею развили сильно.
68 Maxus43
 
25.07.13
11:51
(67) не забываем... (24) :)
тут спорим о другом уже
69 magicSan
 
25.07.13
11:55
(66) я не про табло, а про когда в нем на элементе выборки жмешь f2 . В выборке ссылка на товар и склад , в середине выборки при обращении к товар.единицы идет запрос "онлайн" в бд?? чо млин он буит каждый раз в бд лезть на каждой итерации  выборки?
70 ДенисЧ
 
25.07.13
11:56
(59) Он будет содержать только тогда, когда ты к ним обратишься. И тогда уже будет запрос в базу
71 Maxus43
 
25.07.13
11:56
(69) будет лезть, если ты обратишся к его реквизитам.
По примеру (33) же лезет на каждый документ, когда выводится на экран юзеру он
72 ДенисЧ
 
25.07.13
11:57
(69) Да, онлайн запрос. А что странного?
73 Maxus43
 
25.07.13
11:58
(69) Открыли америку по оптимизации тебе чтоли?
74 Fragster
 
гуру
25.07.13
11:59
(69) ты не замечал, что если все поля получить в запросе, убрав из выборки Выборка.Ссылка.Наименование, работает намного быстрее?
75 magicSan
 
25.07.13
12:00
тихо тихо - налетели
76 Maxus43
 
25.07.13
12:02
(75) ну ты же упорствуешь в своей убеждённости, несмотря на примеры запросов с профайлера и т.д.
77 magicSan
 
25.07.13
12:02
(72) иммеется в виду на одной итерации мне нужен реквизит на второй нет - в первом случае лезет, во втором нет?
78 ДенисЧ
 
25.07.13
12:03
(77) Как только обратился - лезет. Или в базу, или в кеш. Но лезет.
79 magicSan
 
25.07.13
12:05
(76) прое#ался - бывает. Америку не открыли. Но напомнили. Когда то давно давно .... потом был перерыв пару лет на пхп и возврат в 1с. о боже какой же кайф получать данные в выборке, не то что в пхп ))))
80 magicSan
 
25.07.13
12:05
видимо это и заткнуло разум
81 magicSan
 
25.07.13
12:05
и логику
82 magicSan
 
25.07.13
12:12
млять вообще всё логично когда в 7.7 напрямую со скулем работали ... всё так и было получили сразу всё что надо либо в запросе лезли если надо, но это бррррр.
83 Maxus43
 
25.07.13
12:14
(82) это ещё логичнее. Получай что надо в запросе сразу, кто мешает? А вот если что-то забыл - изволь подождать, пока платформа сама, невзирая на склероз разраба полезет в БД
84 magicSan
 
25.07.13
12:16
(83) я к тому что если напрямую в скуль лезть.
85 Maxus43
 
25.07.13
12:22
(84) 8-ка запросами считай что напрямую юзает, если не заметил от 7-шных недозапросов сильно отличается. Почти 1 в 1 скуль
86 magicSan
 
25.07.13
12:46
(85) конструктор меня прёт больше просто шикарен, или кто видел ченить подобное для других бд?? я даже не особо, может кто знает? (mysql)
87 Maxus43
 
25.07.13
12:56
(86) в скуле есть конструктор, но он по сравнению с 1с конечно УГ, там легче запросы писать руками
88 magicSan
 
25.07.13
13:02
(87) нук вот сейчас мельком глянул всякие субд - туфта
89 magicSan
 
25.07.13
13:03
(87) многие 1с ники не видели не пробывали, мне повезло - я видел всё это гогно , теперь делая запрос в 1 с я наслаждаюсь ))))
90 Помогите
 
25.07.13
13:19
Может для MySQL есть канструктор запросов? Мне как раз щас нужно
91 KAO111
 
25.07.13
13:23
(90) dbForge Data Studio много для чего, но в 1С конструктор все равно мощней