Имя: Пароль:
1C
 
Кто как смотрит содержимое ВТ на сервере?
,
0 Вася Теркин
 
05.04.19
12:50
Есть процедура на сервере ,там объявлен МенеджерВременныхТаблиц, подключен к запросу. Запрос все отрабатывает, отрабатывает. и остается ВТ_Данные в МВТ
Потом этот МВТ может передаваться в другие процедуры на сервере, к другим Запросам подключаться и т.п.
А вот чем посмотреть содержимое МВТ в отладчике если сразу после заполнения и до передачи дальше поставить точку останова?
Выгрузить в ТаблицуЗначений и посмотреть на экране  - не получится, все на сервере. Как посмотреть чего в ВТ выбрано?
1 Cyberhawk
 
05.04.19
12:53
ИР
2 Вася Теркин
 
05.04.19
12:54
(1) Слишком коротко.
3 piter3
 
05.04.19
12:55
(2) не ленись,поищи
4 yzimin
 
05.04.19
12:56
Запрос.МенеджерВременныхТаблиц.Таблицы[НомерТаблицы].ПолучитьДанные().Выгрузить()
5 OldCondom
 
05.04.19
12:57
(4) + 1.
6 Вася Теркин
 
05.04.19
12:57
(3) Инструментов разработчика у меня нет.
(4) Ок, это уже лучше.
7 OldCondom
 
05.04.19
12:57
хотя чаще просто через мышку "рассчитать значение".
8 piter3
 
05.04.19
12:57
(6) скачать сложно что-ли
9 OldCondom
 
05.04.19
12:58
обычная консоль запросов с ИТС умееть в ВТ. Зачем эти приблуды кривые?
10 Вася Теркин
 
05.04.19
12:59
(9) Хотел прям в коде чтобы в консоль не таскать
11 Вася Теркин
 
05.04.19
13:01
(4) Таблицы не обнаружено.
12 Вася Теркин
 
05.04.19
13:02
Это обычное приложене
13 yzimin
 
05.04.19
13:03
(11) Покажи, как пишешь?
14 Вася Теркин
 
05.04.19
13:05
Ну так и пишу - МВТ - Вычислить. У него нет структуры ,пишет тип объекта - менеждер временных таблиц.
Можно дойти до

Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = МВТ;
    
    
И вычислить "Запрос.МенеджерВременныхТаблиц" то же значение "МенеджерВременныхТаблиц" тип данных "МенеджерВременныхТаблиц"
15 Вася Теркин
 
05.04.19
13:05
Внутри нет таблиц
16 yzimin
 
05.04.19
13:07
покажи скрин что ли отладки
17 Вася Теркин
 
05.04.19
13:09
Куда выложить?
18 Вася Теркин
 
05.04.19
13:14
19 yzimin
 
05.04.19
13:17
(18) где тут код из (4) ?
20 xraf
 
05.04.19
13:23
Чтобы просмотреть содержимое временной таблицы, в типовой конфигурации «Управление торговлей», редакция 11.3 была реализована вспомогательная экспортная функция ПоказатьВременнуюТаблицу общего модуля ОбщегоНазначенияУТ. В качестве параметров нужно передать менеджер временных таблиц (или сам запрос) и имя самой временной таблицы, которую требуется просмотреть. Функция возвращает таблицу значений. Следовательно, в конфигураторе в окне Вычислить выражение можно получить саму временную таблицу:

https://xn----1-bedvffifm4g.xn--p1ai/articles/2017-09-07-4-methods-of-query-debugging/
21 Вася Теркин
 
05.04.19
13:24
22 Вася Теркин
 
05.04.19
13:28
(20) У меня &НаСервере изначально
23 Gucci76
 
05.04.19
13:28
(0) -> (4)

Больше интересует вопрос - кто как находит тексты запросов для этих временных таблиц, для последующей отладки?
24 Cyberhawk
 
05.04.19
13:33
(23) Точку останова перед Запрос.Выполнить(...
25 Вася Теркин
 
05.04.19
13:34
(24) Так и есть
26 Gucci76
 
05.04.19
13:40
(23) Тоже так же -  в замере производительности ищу ".Выполнить(" и точки останова, и копирую текст запроса.
Думал может есть более удобный способ.
Сейчас - когда "мильон" подзапросов это вообще тяжко стало разбираться с кодом.
27 Cyberhawk
 
05.04.19
14:00
"и копирую текст запроса" // Эк ты мыкаешься. Текст запроса далеко не всегда сам по себе юзабелен потом. Параметры и МВТ тоже нужен конечно же. Поэтому (1).
28 Gucci76
 
05.04.19
14:25
(27) Пытался с ИР разобраться, но пока не освоил (((
29 ildary
 
05.04.19
14:27
(0) вот этот вот инструмент: http://catalog.mista.ru/public/335504

умеет вытянуть в себя и текст запроса и все параметры и содержимое МВТ недавно научился.
30 dezss
 
05.04.19
14:36
(21) А где на этом скрине точка останова?
31 dezss
 
05.04.19
14:37
(30) + и еще покажи содержимое МВТ.Таблицы
32 Вася Теркин
 
06.04.19
05:15
(30) Ну выше она, а курсор ниже на Выполнить
33 Вася Теркин
 
06.04.19
05:16
МВТ.Таблицы - поле объекта не обнаружено
34 Вася Теркин
 
06.04.19
06:01
+(33) https://pastenow.ru/edcbe1910922bb071660abccaf7cb876
Курсор дошел до Запрос.Выполнить
35 Вася Теркин
 
06.04.19
06:02
Нет там никаких Таблицы. Там глухо
36 hhhh
 
06.04.19
06:51
(35) ну древним способом тогда попробуй

Функция ПолучитьВТ(МенеджерВрТаб, ИмяВрТаб) Экспорт
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ ВрТаб.* ИЗ " + ИмяВрТаб + " КАК ВрТаб";
    Запрос.МенеджерВременныхТаблиц = МенеджерВрТаб;    
    Возврат Запрос.Выполнить().Выгрузить();
КонецФункции
37 Вася Теркин
 
06.04.19
10:36
(36) Ну я так и смотрел...
38 Вася Теркин
 
06.04.19
10:38
Мое кино ещё вчера закончилось. Тыт чисто академический интерес. Ведь с сервера на клиент передать просто никак нельзя.
39 Garykom
 
гуру
06.04.19
10:43
(38) У тебя работу с файлами отняли на сервере и сеть тоже?
Пиши в логи или передавай сразу на клиента
40 Garykom
 
гуру
06.04.19
10:48
Как вариант сначала ваять (с МВТ) пока нужна отладка в режиме толстого клиента и только затем разносить клиент-сервер.
41 Вася Теркин
 
06.04.19
10:48
(39) Тогда уж в ЖР, чего на диск гадить-то.
Написать я все могу, я про стандартные возможности думал.
Вот раньше хорошо было  - берешь компоновщик, указываешь ему Запрос.Выполнить().Выгрузить() источником и просто показываешь на экран...
А на сервере так не работает с МененджеромВременныхТаблиц...
42 Вася Теркин
 
06.04.19
10:49
(40) Так у нас с началами не очень. Мы ж обычно уже написанное и переписанное много раз правим... Там директивы компиляции не всегда отключить можно.
43 Garykom
 
гуру
06.04.19
10:50
(41) Чем то мне твой плач напоминает писателя фронтэнда на js в браузере который жалуется что он не может посмотреть отладку бэкенда на php на сервере  ))
44 Вася Теркин
 
06.04.19
10:52
Сначала идут франчи и прочие барыги, которые подсаживают клюента на любимый наркотик. Потом клюент как к веществу попривыкнет начинает понимать что его фантазии франч угадывать не хочет. И только потом клюент попадает к нам в лапы.
(43) Отож. Куда не кинь...
45 Garykom
 
гуру
06.04.19
10:54
(42) Значит у вас хреново клиент с сервером поделены.

Сейчас 1С подходит к тому моменту что разработка сложных систем начинает делиться на фронтенд (клиент с УФ), бэкенд (серверный код) и отдельно спецы по запросам 1С и серверам баз данных.
И все это сначала согласовывается в каком виде и как обмен данными а затем пилиться отдельно будет независимо.

А поддержка существующего забагованного решения/кода это да то еще удовольствие. Это блин не ключи подавать.
46 TormozIT
 
гуру
09.04.19
06:57
Отладка запроса и компоновки через ИР Расширение https://youtu.be/qVGXWU8w1W0
47 NUser
 
09.04.19
07:00
(0) Конструктор запросов позволяет это делать
48 TormozIT
 
гуру
09.04.19
07:10
(47) Не согласен. Доказательство есть?
49 Вася Теркин
 
09.04.19
07:19
(45) Мопед не мой. См. 44
В далеких деревнях крайнего севера, востока и даже юга ключи сами себя подают, а умелец если одни есть, так уже хорошо.
Там другой принцип - там не задачу делят, а спеца, который нарасхват.
(46) Расширения с какого релиза совместимости? 8.3.???? Например старые релизы УПП, у которых поддержка вручную идет. УПП же ещё и отраслевая бывает. Тогда там вообще полспециалиста и режим совместимости 8.3.1
Потянет это штука?
50 Конструктор1С
 
09.04.19
07:37
(11) там нужно указывать индекс таблицы, начинающийся с 0. Утащи на табло "Запрос.МенеджерВременныхТаблиц.Таблицы" и нажми F2, откроется список всех ВТ, содержащихся в МВТ, там же и индекс ВТ будет виден
51 Вася Теркин
 
09.04.19
07:38
(50) Колдовство? Сейчас попробую...
52 Web00001
 
09.04.19
08:14
(38) Можно из ТЗ сделать массив строк, со структурами колонками, очень похоже на ТЗ со стороны http://www.1c-cod.ru/code/8PYCUbyJjwXeXNF/
53 Вася Теркин
 
09.04.19
08:35
(52) Это если "только что" сервер вызвал и есть куда вернуть. Я пока до запроса дойду три-четыре серверных модуля пройду и десять функций см (22)  "У меня &НаСервере изначально".
Я не могу доп параметры во все серверные модули во все функции пихать только для обратной трассировки.
вот удобно придумали общие реквизиты. Почему не сделали Общие параметры для всех функций..  включил, выключил. Типа глобальной переменной. Разве что параметр сеанса создать МутьВсякая и в него пихать, а на крайней серверной функции в клиента выкидывать.
54 zehn
 
09.04.19
08:37
(53) > Общие параметры для всех функций
Свят, свят, свят...
55 TormozIT
 
гуру
09.04.19
08:56
(49) Системные требования для расширения тут http://devtool1c.ucoz.ru/index/rasshirenie_variant/0-52
Для низких режимов совместимости и без изменения конфигурации подойдет только вариант Портативный http://devtool1c.ucoz.ru/index/portativniy_variant/0-39 . В нем отладка запроса выглядит немного сложнее https://youtu.be/hiw_aYVOvFc
56 dezss
 
09.04.19
09:14
(33) Ну тогда рой место, где у тебя МВТ заполняется.