|
v7: Почему не работает код? | ☑ | ||
---|---|---|---|---|
0
zak555
18.02.14
✎
09:02
|
такой
|ТД = Справочник.Договоры.ТекущийЭлемент; |Наименование = Справочник.Договоры.Наименование; |Код = Справочник.Договоры.Код; |Владелец = Справочник.Договоры.Владелец; |Группировка ТД; |Условие(Владелец = ВыбВладелец); |
|||
1
XLife
18.02.14
✎
09:03
|
это не код
|
|||
2
Voronve
18.02.14
✎
09:04
|
|ТД = Справочник.Договоры.ТекущийЭлемент;
|Наименование = Справочник.Договоры.Наименование; |Код = Справочник.Договоры.Код; |Контрагент = Справочник.Договоры.Владелец; |Группировка Контрагент; |Группировка ТД; |Условие(Контрагент = ВыбВладелец); |
|||
3
ДенисЧ
18.02.14
✎
09:05
|
Что есть ВыбВладелец?
|
|||
4
dk
18.02.14
✎
09:05
|
а если группировку убрать?
|
|||
5
Chai Nic
18.02.14
✎
09:06
|
Выкинь бяку и не связывайся с ней. Я про черные запросы.
|
|||
6
Guk
18.02.14
✎
09:06
|
(5) не надо вводить новичка в заблуждение...
|
|||
7
zak555
18.02.14
✎
09:07
|
(2) мне не нужна группировка по контрагенту
|
|||
8
zulu_mix
18.02.14
✎
09:07
|
а где проверка на группу?
|
|||
9
zak555
18.02.14
✎
09:07
|
(3) контрагент
|
|||
10
zak555
18.02.14
✎
09:08
|
(4) ничего
|
|||
11
Рэйв
18.02.14
✎
09:08
|
(7)А ты пробовал перебрать подчиненнвый справочник без .ИспользоватьВладельца() или предварительного цикла по владельцам? Та же хрень только впрофиль
|
|||
12
dk
18.02.14
✎
09:08
|
(9) убери условие и проверь
|
|||
13
Рэйв
18.02.14
✎
09:08
|
получишь фигу с маслом
|
|||
14
v4442
18.02.14
✎
09:08
|
(18) сделай конструктором
//******************************************* // Процедура генерации запроса Сформировать. // Процедура Сформировать() Перем Запрос, ТекстЗапроса, Таб; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |ТекущийЭлемент = Справочник.Договоры.ТекущийЭлемент; |Код = Справочник.Договоры.Код; |Наименование = Справочник.Договоры.Наименование; |Владелец = Справочник.Договоры.Владелец; |Группировка ТекущийЭлемент; |Условие(Владелец = ВыбВладелец); |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; // Подготовка к заполнению выходных форм данными запроса Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); // Заполнение полей "Заголовок" Таб.ВывестиСекцию("Заголовок"); Состояние("Заполнение выходной таблицы..."); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0); Пока Запрос.Группировка(1) = 1 Цикл // Заполнение полей ТекущийЭлемент Таб.ВывестиСекцию("ТекущийЭлемент"); КонецЦикла; // Вывод заполненной формы Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать", ""); КонецПроцедуры |
|||
15
zak555
18.02.14
✎
09:09
|
(6) иван, твои ответы на мисте были все не правильные по это вопросу
|
|||
16
zak555
18.02.14
✎
09:09
|
(8) нах?
|
|||
17
v4442
18.02.14
✎
09:09
|
+ 14 РАБОТАЕТ
|
|||
18
zak555
18.02.14
✎
09:09
|
(12) без условия работает
|
|||
19
zulu_mix
18.02.14
✎
09:09
|
(16) у группы есть владелец?
|
|||
20
zak555
18.02.14
✎
09:10
|
(11) думаешь нельзя перебрать без ИспользоватьВладельца ?
|
|||
21
dk
18.02.14
✎
09:11
|
(18) значит что=то не то в выбвладелец
может реквизит формы такой есть или переменная переопределяется где-то |
|||
22
zak555
18.02.14
✎
09:12
|
так тоже не работает
|ТД = Справочник.Договоры.ТекущийЭлемент; |Наименование = Справочник.Договоры.Наименование; |Код = Справочник.Договоры.Код; |Владелец = Справочник.Договоры.Владелец; |Группировка Владелец; |Группировка ТД; |Условие(Владелец = ВыбВладелец); |
|||
23
v4442
18.02.14
✎
09:14
|
(22) вроде сегодня не пятница ))))
|
|||
24
zak555
18.02.14
✎
09:16
|
(19) нет
(21) точно контрагент ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |ТД = Справочник.Договоры.ТекущийЭлемент; |Наименование = Справочник.Договоры.Наименование; |Код = Справочник.Договоры.Код; |Владелец = Справочник.Договоры.Владелец; //|Группировка Владелец; |Группировка ТД; |Условие(Владелец = ВыбВладелец); |"; Если ТипЗначенияСтр(ВыбВладелец)= "Справочник" Тогда Если ВыбВладелец.Вид() = "Контрагенты" Тогда Сообщить("Это же контрагент"); КонецЕсли; КонецЕсли; |
|||
25
dk
18.02.14
✎
09:17
|
ну значит нет у этого контры договоров
|
|||
26
zak555
18.02.14
✎
09:17
|
(23) что тут не так ?
|
|||
27
v4442
18.02.14
✎
09:18
|
проверь на другом контрагенте или на другой базе
|
|||
28
dk
18.02.14
✎
09:23
|
(25) + либо выбран не элемент, а группа контров
|
|||
29
Builder
18.02.14
✎
09:26
|
ВыбВладелец - элемент формы?
Если это просто переменная, то были такие глюки. Сделай элементом формы и проверь. |
|||
30
ЧеловекДуши
18.02.14
✎
09:32
|
"Ложки не существует" (нео) :)
|
|||
31
Chai Nic
18.02.14
✎
09:34
|
Черный запрос - хуже перебора
|
|||
32
ДенисЧ
18.02.14
✎
09:34
|
(31) Бред непроснувшегося - хуже бреда пьяного.
|
|||
33
Guk
18.02.14
✎
09:34
|
(15) по этому вопросу у меня не было ни одного ответа...
|
|||
34
Guk
18.02.14
✎
09:35
|
(31) чушь и непонимание работы платформы...
|
|||
35
Builder
18.02.14
✎
09:35
|
(31) Вы не любите кошек? Вы их просто не умеете готовить...
|
|||
36
Drac0
18.02.14
✎
09:37
|
(0) База на скуле?
|
|||
37
dk
18.02.14
✎
09:37
|
шо та автор пропал
|
|||
38
aka AMIGO
18.02.14
✎
09:41
|
СПД = СоздатьОбъект("Справочник.Договоры");
СПД.ИспользоватьВладельца("ВыбВладелец"); СПД.ВыбратьЭлементы(); Пока СПД.ПолучитьЭлемент() = 1 Цикл Сообщить(СПД.ТекущийЭлемент()); КонецЦикла; |
|||
39
Chai Nic
18.02.14
✎
09:42
|
(34) Ну как-то за 12 лет поддержки переписанной наполовину бухгалтерии ни разу не возникало потребности в черных запросах. Один спец из франча написал несколько отчетов на черных запросах - они дичайше тормозили. Пришлось переписать на выборки. Впоследствии многое было переделано под прямые запросы. Но черные запросы сразу считаю для себя неприемлемым, убогим и корявым решением.
Как увидел, как на них выполняются отборы.. Черный запрос качивает всю исходную таблицу с sql-сервера на клиента в виде dbf-файла в каталог временных файлов, потом последовательным перебором фильтрует, сортирует и тому подобное. Кошмар. |
|||
40
Guk
18.02.14
✎
09:44
|
(39) переносить процесс выборки из базы с сервера на клиента, это технологически неправильно...
|
|||
41
Chai Nic
18.02.14
✎
09:45
|
(35) Еще будучи на курсах по семерке много-много лет назад, услышал от преподавателя (из сертифицированного учебного центра 1с) мнение о том, что "я не рекомендую использовать стандартные запросы", и опыт это мнение подтверждает.
(40) Черные запросы большей частью выполняются на клиенте, а не на сервере. При этом с сервера перекачивается офигенное количество лишней информации. |
|||
42
Guk
18.02.14
✎
09:47
|
(41) "Черные запросы большей частью выполняются на клиенте"
это каким образом?... |
|||
43
Guk
18.02.14
✎
09:47
|
+(42) вроде на клиенте только обработка выборки идет...
|
|||
44
ДенисЧ
18.02.14
✎
09:50
|
(41) "Черные запросы большей частью выполняются на клиенте, а не на сервере. "
Если ту не умеешь писать ччёрные запросы, которые выполняются на сервере - это твоя и только твоя проблема. |
|||
45
Builder
18.02.14
✎
09:50
|
(39) Ну да, в бухгалтерии черные запросы действительно не особо нужны :)
Но переписывать запросы на выборки - бред... |
|||
46
Chai Nic
18.02.14
✎
10:07
|
(43) Этого мало? Дрючить каталог временных файлов чтением-записью дбфок, вместо того, чтобы без шума и пыли обработать открытый курсор базы по установленному индексу.
|
|||
47
Chai Nic
18.02.14
✎
10:08
|
(44) Нахрена? Есть же нормальные прямые запросы через 1c++.
|
|||
48
Fedor-1971
18.02.14
✎
10:15
|
(24) попробуй использовать: "Условие(Владелец В ВыбВладелец)".
|
|||
49
ДенисЧ
18.02.14
✎
10:16
|
(47) Есть компании, где ВК запрещены.
|
|||
50
Chai Nic
18.02.14
✎
10:19
|
(49) Я про такие не слышал, но возможно они и есть.. психов в принципе хватает среди руководителей, есть и параноики)
|
|||
51
aka AMIGO
18.02.14
✎
10:25
|
(24)-й точно работает!!..
даже странно © :) |
|||
52
1Сергей
18.02.14
✎
10:25
|
// |Условие(Владелец = ВыбВладелец);
|Условие(ТД в ВыбВладелец); |
|||
53
1Сергей
18.02.14
✎
10:26
|
(52) сторно. С родителем попутал
|
|||
54
aka AMIGO
18.02.14
✎
10:27
|
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |ТД = Справочник.Договоры.ТекущийЭлемент; |Наименование = Справочник.Договоры.Наименование; |Код = Справочник.Договоры.Код; |Владелец = Справочник.Договоры.Владелец; //|Группировка Владелец; |Группировка ТД; |Условие(Владелец = ВыбВладелец); |"; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; Пока Запрос.Группировка(1) = 1 Цикл Сообщить(Запрос.ТД); КонецЦикла; вот проверенный код результат: Основной договор" - т.к. других у приятеля нет.. ну не вводит он их, за ненадобностью :) результат абсолютно корректный проверено в ТиС |
|||
55
aka AMIGO
18.02.14
✎
10:29
|
||||
56
aka AMIGO
18.02.14
✎
10:31
|
(52) ИМХО в случае ТС не суть важно, "в" или "=", но с "в" тоже работает
|
|||
57
zak555
18.02.14
✎
10:50
|
(25) есть
(27) аналогично |
|||
58
zak555
18.02.14
✎
10:51
|
(29) эелемент формы
|
|||
59
zak555
18.02.14
✎
10:51
|
*эелемент
|
|||
60
zak555
18.02.14
✎
10:51
|
**элемент = )
|
|||
61
aka AMIGO
18.02.14
✎
10:52
|
(57) выложи файлик, интересно..
|
|||
62
zak555
18.02.14
✎
10:52
|
(33) в 0 -- подвопрос
а я про твой пост как найти элемент по реквизиту в подчиненном справочнике? |
|||
63
v4442
18.02.14
✎
10:52
|
(60) Выложи обработку, очень интересно поглазеть
|
|||
64
zak555
18.02.14
✎
10:53
|
(36) файловая
|
|||
65
zak555
18.02.14
✎
10:56
|
обработка
http://yadi.sk/d/-SeHY_wwJ6fmz |
|||
66
viktor_vv
18.02.14
✎
10:57
|
(39) "наполовину бухгалтерии" как бы черные запросы по бухгалтерским итогам очень не кошерные, и с этим никто особо не спорит. Но это не значит, что они для всего не кошерные. Хотя сам уже практически не пользуюсь.
|
|||
67
viktor_vv
18.02.14
✎
10:59
|
(39) "Черный запрос качивает всю исходную таблицу с sql-сервера" ты вроде на Odavid не похож, а фигню такую же пишешь.
|
|||
68
aka AMIGO
18.02.14
✎
10:59
|
||||
69
v4442
18.02.14
✎
11:00
|
(65) 1.ert работает,
что за ПОФИГУРАЦИЯ у тебя? |
|||
70
zulu_mix
18.02.14
✎
11:02
|
(65) проверь может индексы в базе слетели
|
|||
71
oslokot
18.02.14
✎
11:04
|
(65) 1.ert работает, КА
|
|||
72
zak555
18.02.14
✎
11:05
|
(68) (71) странно
(69) самопальная (70) снёс, переидексирую |
|||
73
aka AMIGO
18.02.14
✎
11:06
|
(72) БУ - работает
|
|||
74
zak555
18.02.14
✎
11:08
|
убийство индексов не помогло
|
|||
75
aka AMIGO
18.02.14
✎
11:09
|
(72) у тебя справочник "Договоры" - подчинен контрагентам?
|
|||
76
zak555
18.02.14
✎
11:09
|
(75) естественно
|
|||
77
aka AMIGO
18.02.14
✎
11:15
|
(76) приведи вот такой скрин: http://gyazo.com/42efe5a8b19407a71bdd0856828f3ed9
|
|||
78
Fedor-1971
18.02.14
✎
11:15
|
(74) Тестирование и исправление БД?
(76) проверил или уверен? |
|||
79
Chai Nic
18.02.14
✎
11:16
|
(66) Практически для всего, за исключением регистров. Там их убожество на фоне стандартных методов работы с итогами выглядит совершенством)
|
|||
80
zak555
18.02.14
✎
11:18
|
проблема отпала =)
|
|||
81
aka AMIGO
18.02.14
✎
11:18
|
(80) колись тогда :)
|
|||
82
zak555
18.02.14
✎
11:20
|
на самом деле у контра не была подчинённых договоров
визуально в справочнике договора отражались элементы без владельца |
|||
83
aka AMIGO
18.02.14
✎
11:21
|
(82) ййэххх!! :)
|
|||
84
oslokot
18.02.14
✎
11:21
|
опять чуда не произошло :(
|
|||
85
ДенисЧ
18.02.14
✎
11:22
|
такой большой мальчик и так лоханулся...
|
|||
86
aka AMIGO
18.02.14
✎
11:24
|
(82) тогда запрос измени, чтоб из карточки контрагента выбирался этот элемент-договор
|
|||
87
aka AMIGO
18.02.14
✎
11:24
|
+86 и условие убери
|
|||
88
aka AMIGO
18.02.14
✎
11:26
|
конфу не переделывай, укажешь договоры "Подчиненным" - устроишь базе падучую
|
|||
89
zak555
18.02.14
✎
11:29
|
(85) затупил =)
|
|||
90
aka AMIGO
18.02.14
✎
11:30
|
(89) да ладно.. если база чужая - ошибка неизбежна
во всех типовых-то - подчиненный.. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |