|
Ошибка в запросе | ☑ | ||
---|---|---|---|---|
0
AnisaL
03.03.14
✎
08:45
|
Доброе утро!
Ошибка в запросе: "Ожидается имя таблицы" ЛЕВОЕ СОЕДИНЕНИЕ &Agapovka_contract_parameter_type_1 КАК Agapovka_contract_parameter_type_1 |
|||
1
Wobland
03.03.14
✎
08:46
|
утро доброе!
это просто отлично! |
|||
2
ДенисЧ
03.03.14
✎
08:46
|
Это где же Вы, мэм, такую конструкцию вычитали?
Торжественно разрешаю подойти к оному и дать ему в морду лица, а потом плюнуть на труп.... |
|||
3
dk
03.03.14
✎
08:49
|
(0) делай не через параметры, а через текст запроса
ЛЕВОЕ СОЕДИНЕНИЕ " +Agapovka_contract_parameter_type_1 +" КАК "+Agapovka_contract_parameter_type_1+" |
|||
4
Wobland
03.03.14
✎
08:49
|
а я тем временем немного поцитирую типовых
Запрос.Текст = " |ВЫБРАТЬ Спр1.Ссылка КАК Ссылка, |Спр1." + ПолучитьЗначениеНастройки("Имя реквизита") + " КАК ЗначениеРеквизита |Из Справочник." + мВидОбрабатываемогоСправочника + " КАК Спр1, Справочник." + мВидОбрабатываемогоСправочника + " КАК Спр2 |ГДЕ Спр1." + ПолучитьЗначениеНастройки("Имя реквизита") + " = Спр2." + ПолучитьЗначениеНастройки("Имя реквизита") + " И Спр1.Ссылка <> Спр2.Ссылка"; |
|||
5
AnisaL
03.03.14
✎
08:51
|
(4) я потом эту переменную заменяю через:
Запрос.Текст = СтрЗаменить(Запрос.Текст, "&contract_parameter_type_1", "ВнешнийИсточникДанных."+Строка(БазаДанных)+".Таблица.contract_parameter_type_1"); |
|||
6
Wobland
03.03.14
✎
08:52
|
(5) никак не заменяется, да?
|
|||
7
AnisaL
03.03.14
✎
08:53
|
(6) заменяется , только не (0) м случае, там сразу в конструкторе запроса ругается
|
|||
8
Wobland
03.03.14
✎
08:54
|
(7) это хорошо или плохо?
|
|||
9
Starhan
03.03.14
✎
08:54
|
(5) может и эту да не ту...
|
|||
10
AnisaL
03.03.14
✎
08:54
|
Вообщем решила проблему так:
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | Agapovka_contract_parameter_type_1.cid КАК cid, | Agapovka_contract_parameter_type_1.val КАК val | ИЗ | ВнешнийИсточникДанных.Agapovka.Таблица.contract_parameter_type_1 КАК Agapovka_contract_parameter_type_1 | ГДЕ | Agapovka_contract_parameter_type_1.pid = 12) КАК ВложенныйЗапрос1 | ПО Agapovka_contract_parameter_type_6.cid = ВложенныйЗапрос1.cid |
|||
11
AnisaL
03.03.14
✎
08:58
|
(10) точнее так:
Запрос.Текст = "ВЫБРАТЬ | contract_parameter_type_6.cid, | contract_parameter_type_6.val КАК датавыдачи, | ВложенныйЗапрос1.val КАК номерпаспорта, | ВложенныйЗапрос.val КАК кемвыдан |ИЗ | &contract_parameter_type_6 КАК contract_parameter_type_6 | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | contract_parameter_type_1.cid КАК cid, | contract_parameter_type_1.val КАК val | ИЗ | &contract_parameter_type_1 КАК contract_parameter_type_1 | ГДЕ | contract_parameter_type_1.pid = 12) КАК ВложенныйЗапрос1 | ПО contract_parameter_type_6.cid = ВложенныйЗапрос1.cid | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | contract_parameter_type_1.cid КАК cid, | contract_parameter_type_1.val КАК val | ИЗ | &contract_parameter_type_1 КАК contract_parameter_type_1 | ГДЕ | contract_parameter_type_1.pid = 14) КАК ВложенныйЗапрос | ПО contract_parameter_type_6.cid = ВложенныйЗапрос.cid |ГДЕ | contract_parameter_type_6.pid = 16"; |
|||
12
Wobland
03.03.14
✎
09:00
|
убери вложенные
|
|||
13
AnisaL
03.03.14
✎
09:00
|
(12) как?
|
|||
14
Wobland
03.03.14
✎
09:04
|
"ВЫБРАТЬ
| contract_parameter_type_6.cid, | contract_parameter_type_6.val КАК датавыдачи, | ВложенныйЗапрос1.val КАК номерпаспорта, | ВложенныйЗапрос.val КАК кемвыдан |ИЗ | &contract_parameter_type_6 КАК contract_parameter_type_6 | ЛЕВОЕ СОЕДИНЕНИЕ &contract_parameter_type_1 КАК contract_parameter_type_1 | ПО contract_parameter_type_6.cid = contract_parameter_type_1.cid | И contract_parameter_type_1.pid = 12 | ЛЕВОЕ СОЕДИНЕНИЕ &contract_parameter_type_1 КАК contract_parameter_type_1 | ПО contract_parameter_type_6.cid = ВложенныйЗапрос.cid | И contract_parameter_type_1.pid = 14 |ГДЕ | contract_parameter_type_6.pid = 16"; |
|||
15
AnisaL
03.03.14
✎
09:08
|
(14) {ВнешняяОбработка.КонсольЗапросов_82.МодульОбъекта(89)}: Ошибка при вызове метода контекста (НайтиПараметры): {(8, 26)}: Ожидается имя таблицы
ЛЕВОЕ СОЕДИНЕНИЕ <<?>>&contract_parameter_type_1 КАК contract_parameter_type_1 Такая же ошибка как у меня была |
|||
16
AnisaL
03.03.14
✎
09:08
|
(15) + так что без вложенного запроса никак
|
|||
17
Wobland
03.03.14
✎
09:09
|
всё правильно, так и должно быть при бездумном копировании чужого кода
|
|||
18
AnisaL
03.03.14
✎
09:11
|
(17) это ты себя упрекаешь?
|
|||
19
1Сергей
03.03.14
✎
09:12
|
(14) а нельзя было одним левым обойтись?
| ПО contract_parameter_type_6.cid = contract_parameter_type_1.cid | И (contract_parameter_type_1.pid = 12 | ИЛИ contract_parameter_type_1.pid = 14) |
|||
20
Wobland
03.03.14
✎
09:13
|
(18) а вот и нет
(19) а как отличать кемвыдан от датывыдачи? может, и можно, я тут спинным мозгом думаю |
|||
21
Wobland
03.03.14
✎
09:13
|
(20) *от номерапаспорта
|
|||
22
AnisaL
03.03.14
✎
09:14
|
(20) ты же "гуру 1с", я даже не сомневалась что ты можешь ошибиться
|
|||
23
1Сергей
03.03.14
✎
09:15
|
ну, да...
в (14) дофига ошибок, но в целом, мысля правильная |
|||
24
Wobland
03.03.14
✎
09:15
|
(22) я каждый день ошибаюсь, это моя работа
|
|||
25
1Сергей
03.03.14
✎
09:15
|
(22) он намерено ошибся
|
|||
26
МОРЖ
03.03.14
✎
09:16
|
(21) Я тебя не понимаю, был вопрос, почему не работает схема А. Ты говоришь: "Ваша схема А гофно, и вообще, где вы... бла бла бла.." и через 10 постов предлагаешь туже схему... Она опять не работает и ты опять бла... бла... Ты зачем сюда пишешь, объясни?
|
|||
27
Wobland
03.03.14
✎
09:17
|
(25) ну, положим, от ненамеренное невнимательности ;)
|
|||
28
Wobland
03.03.14
✎
09:17
|
(26) я предлагаю избавиться от двух лишних запросов
|
|||
29
МОРЖ
03.03.14
✎
09:18
|
(22)попробуйте во временной таблице получить таблицу из переменной и уже в следующем пакете совершить соединение
|
|||
30
AnisaL
03.03.14
✎
09:23
|
(27) ладно, прощаем) с кем не бывает ;)
|
|||
31
AnisaL
03.03.14
✎
09:24
|
(29) а использование вложенных запросов не допускается?
|
|||
32
1Сергей
03.03.14
✎
09:25
|
Кстати, могу ошибаться, но вроде со внешними источниками напрямую нельзя соединяться. Так что, возможно, мы с Wobland не правы. Поправьте нас, если это так
|
|||
33
Wobland
03.03.14
✎
09:26
|
(32) а что-то было такое, да..
да пофих. в крайнем случае выбрать что-то извне поместить contract_parameter_type_1; и т.д. |
|||
34
AnisaL
03.03.14
✎
09:34
|
(32) (33) К сожалению нельзя использовать виртуальные таблицы: выдается ошибка "Получение данных из нескольких источников данных недопустимо"
|
|||
35
Wobland
03.03.14
✎
10:11
|
припоминаю, как я результат запроса к внешнему источнику грузил в ТЗ, а потом ТЗ отдавал дальше. то ли я был молод, то ли я был молод и столкнулся с магией внешних источников в 1С
|
|||
36
ДенисЧ
03.03.14
✎
10:14
|
(34) чо??
|
|||
37
1Сергей
03.03.14
✎
10:16
|
о, питерские гопники подтянулись :)
|
|||
38
ДенисЧ
03.03.14
✎
10:17
|
(37) Ты, пацанчик, с каковы раёну?
|
|||
39
Wobland
03.03.14
✎
10:25
|
(38) а ты читать разучился?
|
|||
40
Feunoir
03.03.14
✎
10:28
|
(0) Кузя? http://ukrmobi.com/uploads/posts/2012-05/kuzya-pavel-volya-oblomis.jpg
Сколько себя помню, из параметров никогда выбирать нельзя было. Только через промежуточную временную таблицу. |
|||
41
Wobland
06.03.14
✎
17:42
|
(35) нашёл
Запрос.Текст=ПолучитьТекстЗапроса(); // FROM ВнешнийИсточникДанных.ТиС.Таблица.dbo__1SJOURN AS ЖурО ТЗ=Запрос.Выполнить().Выгрузить(); ТЗ=Запрос.Выполнить().Выгрузить(); Запрос.Текст= "ВЫБРАТЬ |ПОМЕСТИТЬ ТЗ |ИЗ | &ТЗ КАК ТЗ |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ |ИЗ | ТЗ КАК ТЗ | |СГРУППИРОВАТЬ ПО | |УПОРЯДОЧИТЬ ПО |ИТОГИ |ПО |
|||
42
Wobland
06.03.14
✎
17:43
|
(41) вроде этоги не не мог посчитать. но, может, и ещё что-то. перекидывал через ТЗ
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |