|
v7: Временные таблицы и 1С++ | ☑ | ||
---|---|---|---|---|
0
woha
10.04.13
✎
08:52
|
Доброго утра! Подскажите, пожалуйста, есть возможность в 1С++ сделать из таблицы значений 1С сделать временную таблицу SQL и если есть то как?
Спасибо. |
|||
1
ДенисЧ
10.04.13
✎
08:53
|
Есть.
ВыполнитьИзТЗ() - вроде так метод называется. пишешь запрос на create table и insert, и вызываешь. Примеров не дам - ищи на 1cpp.ru |
|||
2
woha
10.04.13
✎
08:54
|
(1) Спасибо.
|
|||
3
woha
10.04.13
✎
09:01
|
(1) insert делать обязательно?
|
|||
4
ДенисЧ
10.04.13
✎
09:02
|
(3) А как ты данные в таблицу положишь? :-)
|
|||
5
woha
10.04.13
✎
09:08
|
(4)думал, что ВыполнитьИзТЗ() сам их туда положит. :)
|
|||
6
woha
10.04.13
✎
09:09
|
(4)Выходит таблицу построчно надо перебрать, чтобы она стала временной?
|
|||
7
ДенисЧ
10.04.13
✎
09:10
|
(6) Это за тебя сделает ВыполнитьИзТЗ(). Но чтобы она смогла это сделать, ей нужно сказать, что делать...
|
|||
8
ДенисЧ
10.04.13
✎
09:12
|
Вот нашёл пример
http://www.1cpp.ru/forum/YaBB.pl?num=1162025223 |
|||
9
woha
10.04.13
✎
09:17
|
(8) Странный пример. Чтобы получить временную таблицу кроме інсерт надо еще и селектом пройтись по справочнику.
|
|||
10
ДенисЧ
10.04.13
✎
09:18
|
(9) Селект там для примера получения из временной.
А тебе что надо? Создание вт и вставка в неё данных - есть. |
|||
11
woha
10.04.13
✎
09:20
|
Еще один пример. Похоже на танцы с бубном.
rc = СоздатьОбъект("ODBCRecordSet"); rc.Execute("DELETE FROM [TestSQL].[dbo].[MyTable]"); rc.Close(); rc.Prepare("INSERT INTO MyTable (NAME, AGE, SALARY, DATEOFBIRTH) VALUES(?, ?, ?, ?)"); тз = СоздатьОбъект("ТаблицаЗначений"); тз.НоваяКолонка("NAME","Строка",,,,,,0); тз.НоваяКолонка("AGE","Число",4,,,,,); тз.НоваяКолонка("SALARY","Число",18,2,,,,0); тз.НоваяКолонка("DATEOFBIRTH","Дата",,,,,,0); for i = 1 to 10 do тз.НоваяСтрока(); тз.NAME = "Панферов Вартан"; тз.AGE = 28; тз.SALARY = 1453.12; тз.DATEOFBIRTH = '17.11.1974'; тз.НоваяСтрока(); тз.NAME = "Гусев Дмитрий"; тз.AGE = 23; тз.SALARY = 1233.99; тз.DATEOFBIRTH = '09.03.1980'; enddo; rc.ExeSQL_FromTV(тз); |
|||
12
woha
10.04.13
✎
09:22
|
(10) Спасибо за помощь. Думаю уже разберусь. Тяжеловато используя сначала одну компоненту для прямых запросов, перейти на другую.
|
|||
13
КонецЦикла
10.04.13
✎
09:30
|
А что тут тяжелого? TSQL остался таким же...
select a into #t from b или insert into #t select a from b |
|||
14
woha
10.04.13
✎
09:34
|
(13) есть альтернатива, попроще, но платная.
ToyTemp=Query.CreateTemp(); ToyTemp.ВыгрузитьТаблицу("#TTOV",Ттов) и все танцы. |
|||
15
art_id
10.04.13
✎
09:35
|
недавно курил тему с ВТ, вот
http://www.forum.mista.ru/topic.php?upd&id=659638 |
|||
16
woha
10.04.13
✎
10:13
|
(15) спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |