Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Очень популярная тема (более 25 ответов) AccountsRecordset (число прочтений - 8481 )
bidler
Junior Member
**
Отсутствует



Сообщений: 68
Зарегистрирован: 06. Октября 2006
AccountsRecordset
11. Мая 2007 :: 06:53
Печать  
Можно ли из этого запроса выборку сразу сохранить во временную таблицу на сервере ?
Я делаю это чере ТЗ, а можно ли сразу одним запросом ?
|SELECT
|ОсновнойОстатки.Субконто2 as Dogovor,
|ОсновнойОстатки.Субконто2_вид
|ОсновнойОстатки.Субконто3 as Dok,
|ОсновнойОстатки.Субконто3_вид,
|ОсновнойОстатки.СуммаОстатокКт,
|FROM ,(Счет = :ВыбСч777)) AS ОсновнойОстатки
|INNER JOIN _1SACCS AS ПланСчетов (NOLOCK) ON ОсновнойОстатки.Счет =ПланСчетов.ID
|ORDER BY ПланСчетов.SCHKOD

Кстати, спасибо автору класса, очень помогает Улыбка
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #1 - 11. Мая 2007 :: 07:58
Печать  
Цитата:
Код
Выбрать все
SELECT select_list
[ INTO new_table ]
FROM ... 


Arguments
new_table
Specifies the name of a new table to be created, based on the columns in the select list and the rows chosen by the WHERE clause...

А если таблица-получатель уже есть, то
Код
Выбрать все
INSERT INTO table_name
SELECT ... 

  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Mikeware
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 262
Зарегистрирован: 27. Июля 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #2 - 11. Мая 2007 :: 08:13
Печать  
Select ... into #имяВремТаблицы from...
  
Наверх
ICQ  
IP записан
 
bidler
Junior Member
**
Отсутствует



Сообщений: 68
Зарегистрирован: 06. Октября 2006
Re: AccountsRecordset
Ответ #3 - 11. Мая 2007 :: 08:15
Печать  
Ага, вот и автор появился.
Еще раз спасибо за класс.
И за подсказку тоже, сейчас попробую.
  
Наверх
 
IP записан
 
bidler
Junior Member
**
Отсутствует



Сообщений: 68
Зарегистрирован: 06. Октября 2006
Re: AccountsRecordset
Ответ #4 - 28. Мая 2007 :: 12:41
Печать  
Не было времени попробовать.
Сейчас пробую на простом примере- не пашет. Почему ?
|SELECT
|  CAST(LEFT(Жур.Date_Time_IDDoc, 8) as DateTime) as ДатаДок,
|Жур.IDDoc as [Док $Документ],
|  Жур.IDDocDef as Док_вид
|INTO
|  #TempTab
|FROM    
|  _1SJourn as Жур (nolock)
|INNER JOIN
|  $Документ.ЗаявлениеНаВозврат as зу ON зу.IDDoc=Жур.IDDoc and $зу.Договор=:выбДог
|INNER JOIN
|   $Справочник.ДоговораСтрахования as дог ON дог.ID=$зу.Договор
|WHERE
|  Жур.Date_Time_IDDoc BETWEEN :Д1 AND :Д2~ AND
|  Жур.IDDocDef = $ВидДокумента.ЗаявлениеНаВозврат

Таблица #TempTab не создается. Но и ошибок не выдает  Печаль
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #5 - 28. Мая 2007 :: 12:48
Печать  
Это временная таблица. Она хранится в течении одного сеанса.
Попробуй после своего запроса сделать:
"select * from #TempTab".
  
Наверх
 
IP записан
 
bidler
Junior Member
**
Отсутствует



Сообщений: 68
Зарегистрирован: 06. Октября 2006
Re: AccountsRecordset
Ответ #6 - 28. Мая 2007 :: 12:50
Печать  
Да я понимаю.
При попытке взять из нее данные выдает вот это:

State 42S01, native 2714, message [Microsoft][ODBC SQL Server Driver][SQL Server]There is already an object named '#TempTab' in the database.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #7 - 28. Мая 2007 :: 13:03
Печать  
bidler писал(а) 28. Мая 2007 :: 12:50:
Да я понимаю.
При попытке взять из нее данные выдает вот это:

State 42S01, native 2714, message [Microsoft][ODBC SQL Server Driver][SQL Server]There is already an object named '#TempTab' in the database.

Только что попробывал у себя - всё нормально работает. А ты как пытаешься взять из неё данные?
  
Наверх
 
IP записан
 
bidler
Junior Member
**
Отсутствует



Сообщений: 68
Зарегистрирован: 06. Октября 2006
Re: AccountsRecordset
Ответ #8 - 28. Мая 2007 :: 13:21
Печать  
ВыполнитьИнструкцию - не работает,
Выполнить - работает.

Это принципиально ?
  
Наверх
 
IP записан
 
yuraer
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 11
Зарегистрирован: 13. Июня 2007
Re: AccountsRecordset
Ответ #9 - 13. Июня 2007 :: 11:25
Печать  
Где скачать класс AccountsRecordSet?
Спасибо.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #10 - 13. Июня 2007 :: 12:14
Печать  
« Последняя редакция: 14. Июня 2007 :: 10:39 - berezdetsky »  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
yuraer
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 11
Зарегистрирован: 13. Июня 2007
Re: AccountsRecordset
Ответ #11 - 26. Июня 2007 :: 08:50
Печать  
Выложите плиз работающую обработку (может есть у кого ОСВ Улыбка),
а то ничего не получается.

Пробую пример из описания в случае с V1 возвращается пустая таблица,
а  с V2 -ошибка.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #12 - 26. Июня 2007 :: 08:54
Печать  
В описании нет примера ОСВ.  Озадачен

Выложи свою обработку с ошибкой.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
yuraer
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 11
Зарегистрирован: 13. Июня 2007
Re: AccountsRecordset
Ответ #13 - 26. Июня 2007 :: 09:17
Печать  
выкладываю
код запроса скопировал из описания
  

AccountTest.zip ( 7 KB | Загрузки )
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset
Ответ #14 - 26. Июня 2007 :: 09:43
Печать  
Обработка рабочая. У тебя может не работать по причинам:
  • ВыбДата > КонецРассчитанногоПериодаБИ() (пустой результат)
  • У ВыбГруппаСчетов нет видов субконто МестаХранения и ТМЦ (пустой результат)
  • В конфигурации не определены виды субконто МестаХранения и ТМЦ (ошибка)
  • Остатков действительно нет (пустой результат)

Собственно ошибкой AccountsRecordset можно считать только п.1. Могу изменить по желанию: либо расчет в этом случае - по КонецРассчитанногоПериодаБИ(), либо вывод сообщения об ошибке.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать