|
Запрос через прямое подключение к базе | ☑ | ||
---|---|---|---|---|
0
Масянька
03.05.24
✎
14:21
|
День добрый!
В ЗУП загрузить данные из УПП. Прямое подключение (COM). Ругается на перечисление: МассивОпераций = Новый Массив; МассивОпераций.Добавить(БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаПочтой); МассивОпераций.Добавить(БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаЧерезБанк); МассивОпераций.Добавить(БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаЧерезСберБанк); МассивОпераций.Добавить(БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаЧерезЗапрплату); МассивОпераций.Добавить(БазаУПП.Перечисления.ВидыОперацийСДивидендами.Возврат); ЗапросУПП = БазаУПП.NewObject("Запрос"); ЗапросУПП.Текст = "ВЫБРАТЬ | РегистрацияОперацийСДивидендами.Ссылка, | РегистрацияОперацийСДивидендами.Ссылка.Представление КАК ПредставлениеДок, | РегистрацияОперацийСДивидендами.Номер КАК Номер, | РегистрацияОперацийСДивидендами.Дата КАК Дата, | РегистрацияОперацийСДивидендами.ВидОперации.Ссылка КАК ВидОперации, | РегистрацияОперацийСДивидендами.Протокол КАК Протокол, | РегистрацияОперацийСДивидендами.Ответственный КАК Ответственный |ИЗ | Документ.РегистрацияОперацийСДивидендами КАК РегистрацияОперацийСДивидендами |ГДЕ | РегистрацияОперацийСДивидендами.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РегистрацияОперацийСДивидендами.ВидОперации.Ссылка В (&ВидОперации) | И РегистрацияОперацийСДивидендами.Проведен = ИСТИНА | И РегистрацияОперацийСДивидендами.ПометкаУдаления = ЛОЖЬ | |УПОРЯДОЧИТЬ ПО | Дата"; ЗапросУПП.УстановитьПараметр("ДатаНач", ДатаНач); ЗапросУПП.УстановитьПараметр("ДатаКон", ДатаКон); ЗапросУПП.УстановитьПараметр("ВидОперации", МассивОпераций); Без "Ссылка" - тоже ругается. Что не так? Спасибо. |
|||
1
arsik
гуру
03.05.24
✎
14:19
|
Массив то у тебя текущей базы. Попробуй вариант через ИЛИ. Тем более в запросе можно значения перечислений сразу указать.
|
|||
2
Мультук
гуру
03.05.24
✎
14:21
|
(0)
МассивОпераций = БазаУПП.NewObject("массив"); |
|||
3
Garykom
гуру
03.05.24
✎
14:22
|
(0) Перепиши код из лапши на ящик
Так что на входе параметры - на выходе результат И сразу все будет понятно Ну и (1)+ https://forum.infostart.ru/forum9/topic124275/ |
|||
4
RomanYS
03.05.24
✎
14:22
|
(1) +1
(0) попробуй так: МассивОпераций = БазаУПП.NewObject("Массив"); |
|||
5
Масянька
03.05.24
✎
14:23
|
(1) Отладчик показывает - COMОбъект.
|
|||
6
Garykom
гуру
03.05.24
✎
14:23
|
(3)+ Если переписать - будет потом легче этот изврат с com-соединения на http-сервис перевести
|
|||
7
Масянька
03.05.24
✎
14:24
|
(2) (4) СПАСИБО!!!!!!!!!!!!!!!
|
|||
8
Garykom
гуру
03.05.24
✎
14:30
|
(2) (4) Вот интересно почему
БазаУПП.NewObjectа не БазаУПП.НовыйОбъект? |
|||
9
arsik
гуру
03.05.24
✎
14:31
|
А вот это какой то треш
РегистрацияОперацийСДивидендами.ВидОперации.Ссылка |
|||
10
Garykom
гуру
03.05.24
✎
14:32
|
(8)+ В смысле я понимаю что NewObject это наследие COM/OLE
Но ведь не сложно в платформе сделать глобальную функцию НовыйОбъект(), доступную в т.ч. через внешнее соединение и выполняющее тоже? |
|||
11
Garykom
гуру
03.05.24
✎
14:34
|
(9) РегистрацияОперацийСДивидендами.Ссылка.Представление
тебя не смущает? |
|||
12
Масянька
03.05.24
✎
14:34
|
А как достучаться до значения перечисления? В запросе.
| РегистрацияОперацийСДивидендами.ВидОперации КАК ВидОперации, |
|||
13
Garykom
гуру
03.05.24
✎
14:36
|
||||
14
arsik
гуру
03.05.24
✎
14:36
|
(11) Да там вообще полный треш.
|
|||
15
Масянька
03.05.24
✎
14:40
|
+(12) Только через ВЫБОР и преобразование к строке?
|
|||
16
Мультук
гуру
03.05.24
✎
14:40
|
(9)(11)
Все-равно будет вторая серия, ибо "В ЗУП загрузить данные из УПП" И даже не знаю какое из слов "ЗУП, загрузить, COM, сопоставление" здесь страшнее. P.S. Масянька, может, не надо ? Может после майских само рассосется? Может бухи руками внесут ? |
|||
17
Масянька
03.05.24
✎
14:43
|
(16) Мне вот интересно, обо...ть - это для "гениев" в порядке вещей? Или у вас (под "вами" я имею ввиду небольшую часть мужского населения) комплексы?
Если человек мужского рода спрашивает, несмотря на уровень вопроса, нормально отвечаете. А тут прямо "конкурс альфа-самцов"... |
|||
18
Garykom
гуру
03.05.24
✎
14:46
|
(17) у тебя уровень вопросов плохо коррелирует с длиной полоски и банальными ответами в гугле
|
|||
19
Масянька
03.05.24
✎
14:47
|
(18) То, что гугл выдает на получение значения перечисления - нельзя назвать ответами.
Хотя, тебе виднее... |
|||
20
Garykom
гуру
03.05.24
✎
14:47
|
(16) синхронизация-сопоставление тут страшнее всего
особенно когда не один к одному |
|||
21
Garykom
гуру
03.05.24
✎
14:48
|
(19) странно у меня гугл сразу выдает ЗНАЧЕНИЕ(Перечисление.ПолФизическихЛиц.Мужской)
|
|||
22
arsik
гуру
03.05.24
✎
14:50
|
(17) Это детские ошибки пользователя у которого стаж: 16 лет 10 мес. И пол тут не при чем.
|
|||
23
Garykom
гуру
03.05.24
✎
14:52
|
(15) ВЫБОР нужен для составных реквизитов в запросах, вместе с ВЫРАЗИТЬ
|
|||
24
Масянька
03.05.24
✎
14:53
|
(22) (23) Запрос выше - как получить значение перечисления (ВидОперации - это перечисление)?
|
|||
25
Масянька
03.05.24
✎
14:53
|
+ (24) Мне подойдет строка.
|
|||
26
Garykom
гуру
03.05.24
✎
14:57
|
(24) Сколько платишь?
|
|||
27
Мультук
гуру
03.05.24
✎
14:57
|
(25)
ПРЕДСТАВЛЕНИЕ(РегистрацияОперацийСДивидендами.ВидОперации) КАК ВидОперации, Так пойдет ? |
|||
28
Масянька
03.05.24
✎
14:59
|
(27) СПАСИБО!
|
|||
29
Масянька
03.05.24
✎
15:00
|
(26) Тебе - нисколько.
|
|||
30
Garykom
гуру
03.05.24
✎
15:05
|
(27) Смысл от такого?
Когда по идее надо как в (1) написано через ИЛИ РегистрацияОперацийСДивидендами.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийСДивидендами.ВыплатаПочтой) ИЛИ РегистрацияОперацийСДивидендами.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийСДивидендами.ВыплатаЧерезБанк) ИЛИ ... |
|||
31
arsik
гуру
03.05.24
✎
15:08
|
(30) А еще лучше как то так
ВЫБРАТЬ Номенклатура.Ссылка КАК Ссылка ИЗ Справочник.Номенклатура КАК Номенклатура ГДЕ Номенклатура.ВидНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ВидыНоменклатуры.Товар), ЗНАЧЕНИЕ(Перечисление.ВидыНоменклатуры.Услуга)) |
|||
32
Garykom
гуру
03.05.24
✎
15:13
|
(31) Чисто визуально лучше, на уровне субд тоже самое
И сложней допиливать такой запрос, комменты как было и новые строки добавлять |
|||
33
SleepyHead
гуру
03.05.24
✎
15:16
|
(0)
И РегистрацияОперацийСДивидендами.ВидОперации.Ссылка В (Значение(Перечисление.ВидыОперацийСДивидендами.ВыплатаПочтой), Значение(Перечисление.ВидыОперацийСДивидендами.ВыплатаЧерезБанк)) Прямо в запросе указывай все значения, которые тебе нужны |
|||
34
Мультук
гуру
03.05.24
✎
15:19
|
(32) (31)
Боюсь, что её интересует значение выборки из УПП в ЗУП | РегистрацияОперацийСДивидендами.ВидОперации КАК ВидОперации, после выполнения запроса и это значение нужно как-то с чем-то сравнивать ? Если выборка.ВидОперации = БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаПочтой Тогда {делаем что-то } ИначеЕсли выборка.ВидОперации = БазаУПП.Перечисления.ВидыОперацийСДивидендами.ВыплатаЧерезБанк Тогда {делаем что-то другое} КонецЕсли; |
|||
35
Garykom
гуру
03.05.24
✎
15:22
|
(34) ага (20)
в этом случае ВЫБОР КОГДА ТОГДА и прямо в запросе прописываем строковые значения для сопоставления типа все Выплата.. - это одно, Возврат другое |
|||
36
Garykom
гуру
03.05.24
✎
15:24
|
(35)+ можно даже значения в запрос через параметры передать, которые подставятся и по которым потом удобно сравнивать
|
|||
37
arsik
гуру
03.05.24
✎
15:24
|
Из запроса как то можно получить имя значения перечисления, а не представление?
|
|||
38
Garykom
гуру
03.05.24
✎
15:29
|
(37) см (36) передать ТЗ и сопоставить
|
|||
39
Масянька
03.05.24
✎
15:36
|
(35) А как же (23)?
|
|||
40
Масянька
03.05.24
✎
15:37
|
Если что - у меня таблица заполняется, как надо.
|
|||
41
Garykom
гуру
03.05.24
✎
15:39
|
(39) так это тоже самое почти
рассматривай свои значения перечисления как составной реквизит из разных значений, которые приводить надо уверен еще наткнешься в запросах на составные реквизиты |
|||
42
Масянька
03.05.24
✎
16:01
|
(41) В тему:
Идет заседание в рейстаге, присутствуют Гитлер, Гимлер, Мюллер. Заходит Штирлиц, ставит на стол поднос с апельсинами, берет из сейфа документы и уходит. Гитлер в гневе: — Это кто? Гимлер и Мюллер в один голос: — Это русский разведчик Исаев. Гитлер: — Так, арестуйте его! — Бесполезно. Скажет, что апельсины приносил... |
|||
43
Волшебник
03.05.24
✎
16:05
|
(42) Совершенно не в тему, но это ж Масянька...
|
|||
44
MaximSh
06.05.24
✎
14:02
|
(0) нет ли здесь орфографической ошибки ВыплатаЧерезЗапрплату?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |