Переключение на Главную Страницу Страницы: 1 ... 4 5 [6] 7 8 ... 17 ОтправитьПечать
Очень популярная тема (более 25 ответов) AccountsRecordset v3.17. Прямые запросы к БИ. (число прочтений - 137636 )
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #75 - 14. Марта 2009 :: 23:39
Печать  
Содержимое поста перенес туда - http://www.1cpp.ru/forum/YaBB.pl?num=1237144933

Иван, очень прошу, ты как знающий человек помоги плиз.
« Последняя редакция: 15. Марта 2009 :: 19:22 - vandalsvq »  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Vadim
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 27. Декабря 2007
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #76 - 24. Марта 2009 :: 11:03
Печать  
А документация есть по данному классу?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #77 - 24. Марта 2009 :: 11:13
Печать  
berezdetsky писал(а) 14. Июня 2007 :: 10:33:
Подробности - в описании .ert.

  

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


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 27. Декабря 2007
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #78 - 24. Марта 2009 :: 11:32
Печать  
Ой, прошу прощения Круглые глаза. Ведь долго думал, спросить-не спросить про документацию. Оказалось не зря думал Улыбка
  
Наверх
 
IP записан
 
Vadim
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 27. Декабря 2007
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #79 - 24. Марта 2009 :: 14:23
Печать  
А к не родной базе нельзя создать запрос? Имеется вот такой код:

Код
Выбрать все
       Перем тз;

	ИБ=СоздатьОбъект("ODBCDataBase");
	ИБ.ПрисоединитьИБ(НекийПуть);
	рс=СоздатьОбъект("AccountsRecordset");
	рс.УстБД(ИБ);

	ТекстЗапроса = "
	|SELECT ОсновнойОстатки.Счет
	|	, ОсновнойОстатки.Субконто1
	|	, ОсновнойОстатки.Субконто1_вид
	|	, ОсновнойОстатки.СуммаОстатокДт
	|	, ОсновнойОстатки.КоличествоОстатокДт
	|FROM $БИОстатки.Основной(:ВыбДата,,,
	|		(Материалы),) AS ОсновнойОстатки
	|	INNER JOIN _1SACCS AS ПланСчетов (NOLOCK) ON ОсновнойОстатки.Счет = ПланСчетов.ID
	|ORDER BY ПланСчетов.SCHKOD";

	рс.УстановитьТекстовыйПараметр("ВыбДата", '01.01.09');
	тз = рс.ВыполнитьИнструкцию(ТекстЗапроса);
 



получаю в ответ:
AccountsRecordset::СформироватьОшибку(Строка Ошибка=План счетов 'Основной' не найден!) : План счетов 'Основной' не найден!
вм.СформироватьОшибку(Ошибка);

В родной базе этот запрос отрабатывает корректно. Не подскажете, в чём проблема?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #80 - 24. Марта 2009 :: 14:52
Печать  
Парсинг привязан к метаданным и к концу рассчитанного периода текущей ИБ. Выполняй запрос в OLE-подключении.
  

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


I Love YaBB 2!

Сообщений: 29
Зарегистрирован: 27. Декабря 2007
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #81 - 24. Марта 2009 :: 14:57
Печать  
berezdetsky писал(а) 24. Марта 2009 :: 14:52:
Парсинг привязан к метаданным и к концу рассчитанного периода текущей ИБ. Выполняй запрос в OLE-подключении.


Спасибо, понял.
  
Наверх
 
IP записан
 
g00d
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #82 - 31. Марта 2009 :: 18:43
Печать  
berezdetsky писал(а) 24. Марта 2009 :: 14:52:

знаю что бессовестно просить
но возможно ли реализовать следующее
сейчас в БИОстатки  и в БИОстаткиОбороты (за это особенное спасибо !) можно получить

           <Имя Ресурса>Остаток
           <Имя Ресурса>ОстатокДт
           <Имя Ресурса>ОстатокКт
что в принципе аналоги СНД, СНК, СКД или СКК в зависимости от условий периода
так вот с толкнулся  с тем что часто бывает необходимо аналоги СНДРС,СКДРС,СНКРС,СККРС (развернутое сальдо)
основное отличие в отображение итога дебетового или кредового сальдо по субконто для ненулевых

пока это возможно сделать тремя запросами с последующей склейкой, и последующей группировкой
приблизительно так
Код
Выбрать все
	ТекстЗапроса = "
	|SET NOCOUNT ON
	| select  
	| 	 Основной.Счет  [Счет $Счет.Основной]
	|	,'' as Субконто1
	|	, Основной.СуммаНачальныйОстатокДт as СНД
	|	, Основной.СуммаНачальныйОстатокКт as СНК
	|	, Основной.СуммаОборотДт as ДО
	|	, Основной.СуммаОборотКт as КО
	|	, Основной.СуммаКонечныйОстатокДт as СКД
	|	, Основной.СуммаКонечныйОстатокКт as СКК
	|	, 0 as СНДРС
	|	, 0 as СНКРС
	|	, 0 as СКДРС
	|	, 0 as СККРС
	| FROM $БИОстаткиОбороты.Основной(:НачДата, :КонДата ~, , , , , , ) AS Основной
	|UNION ALL
	| select  
	| 	 Основной.Счет  [Счет $Счет.Основной]
	|	, Основной.Субконто1 [Субконто1 $Субконто]
	|	, sum(0) as СНД
	|	, sum(0) as СНК
	|	, sum(0) as ДО
	|	, sum(0) as КО
	|	, sum(0) as СКД
	|	, sum(0) as СКК
	|	, CASE  WHEN sum(Основной.СуммаОстатокДт)-sum(Основной.СуммаОстатокКт)>0 THEN sum(Основной.СуммаОстатокДт)-sum(Основной.СуммаОстатокКт) ELSE 0 END as СНДРС
	|	, CASE WHEN sum(Основной.СуммаОстатокКт)-sum(Основной.СуммаОстатокДт)>0 THEN sum(Основной.СуммаОстатокКт)-sum(Основной.СуммаОстатокДт) ELSE 0 END as СНКРС
	|	, 0 as СКДРС
	|	, 0 as СККРС
	| FROM $БИОстатки.Основной(:НачДата,,,,) AS Основной
	|group by Основной.Счет,Основной.Субконто1,Основной.Субконто1_вид
	|having sum(Основной.СуммаОстатокДт)<>sum(Основной.СуммаОстатокКт)
	|UNION ALL
	| select  
	| 	 Основной.Счет  [Счет $Счет.Основной]
	|	, Основной.Субконто1 [Субконто1 $Субконто]
	|	, sum(0) as СНД
	|	, sum(0) as СНК
	|	, sum(0) as ДО
	|	, sum(0) as КО
	|	, sum(0) as СКД
	|	, sum(0) as СКК
	|	, 0 as СНДРС
	|	, 0 as СНКРС
	|	, CASE  WHEN sum(Основной.СуммаОстатокДт)-sum(Основной.СуммаОстатокКт)>0 THEN sum(Основной.СуммаОстатокДт)-sum(Основной.СуммаОстатокКт) ELSE 0 END as СКДРС
	|	, CASE WHEN sum(Основной.СуммаОстатокКт)-sum(Основной.СуммаОстатокДт) >0 THEN sum(Основной.СуммаОстатокКт)-sum(Основной.СуммаОстатокДт) ELSE 0 END as СККРС
	| FROM $БИОстатки.Основной(:КонДата~,,,,) AS Основной
	|group by Основной.Счет,Основной.Субконто1,Основной.Субконто1_вид
	|having sum(Основной.СуммаОстатокДт)<>sum(Основной.СуммаОстатокКт)";
	тз=SQL.ВыполнитьИнструкцию(ТекстЗапроса);  

	//Debug.ViewVT(тз);
	тз.GroupBy("Счет","СНД,СНК,ДО,КО,СКД,СКК,СНДРС,СНКРС,СКДРС,СККРС");

 



и естественно это не самым лучшим образом влияет на производительность
в общем такие вот дела
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #83 - 01. Апреля 2009 :: 07:59
Печать  
g00d писал(а) 31. Марта 2009 :: 18:43:
это не самым лучшим образом влияет на производительность

Именно по-этому развёрнутое сальдо не реализовано как набор дополнительных полей. А нужный результат, как видишь, можно получить и существующими средствами.

А в чём фишка - считать БИОстаткиОбороты с разворотом по всем субконто, передавать это всё на клиента и сворачивать там?
  

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


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #84 - 01. Апреля 2009 :: 15:57
Печать  
berezdetsky писал(а) 01. Апреля 2009 :: 07:59:
Именно по-этому развёрнутое сальдо не реализовано как набор дополнительных полей. А нужный результат, как видишь, можно получить и существующими средствами.

А в чём фишка - считать БИОстаткиОбороты с разворотом по всем субконто, передавать это всё на клиента и сворачивать там?

Извини туплю, ни как не пойму вопрос
п.с.
Жаль тогда надо подумать как оптимально получить развернутое сальдо, все таки 1сная функция достаточно быстро работает
  
Наверх
 
IP записан
 
g00d
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: AccountsRecordset v3.00. Прямые запросы к БИ.
Ответ #85 - 01. Апреля 2009 :: 16:47
Печать  

кстати сейчас был приятно удивлен, когда в запросе $БИОборотыДтКт в условии заработал отбор по реквизиту проводки!
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.03. Прямые запросы к БИ.
Ответ #86 - 01. Апреля 2009 :: 18:41
Печать  
Будь осторожнее с недокументированными возможностями  Подмигивание  - БИОборотыДтКт не всегда строится по проводкам.
  

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


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: AccountsRecordset v3.03. Прямые запросы к БИ.
Ответ #87 - 01. Апреля 2009 :: 21:31
Печать  
berezdetsky писал(а) 01. Апреля 2009 :: 18:41:
Будь осторожнее с недокументированными возможностями  Подмигивание  - БИОборотыДтКт не всегда строится по проводкам.

а подробнее ? в каких случаях  он строитсяне попроводкам?

ну в дебаге видно что условие вставляется в запрос 1sentry
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.03. Прямые запросы к БИ.
Ответ #88 - 02. Апреля 2009 :: 09:05
Печать  
Если БИОборотыДтКт считаются без разворота по субконто с периодичностью от месяца, используется таблица _1SBKTTLC.
  

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


I Love YaBB 2!

Сообщений: 68
Зарегистрирован: 13. Ноября 2006
Re: AccountsRecordset v3.03. Прямые запросы к БИ.
Ответ #89 - 02. Апреля 2009 :: 10:35
Печать  
berezdetsky писал(а) 02. Апреля 2009 :: 09:05:
Если БИОборотыДтКт считаются без разворота по субконто с периодичностью от месяца, используется таблица _1SBKTTLC.

спасибо, а вообще жаль, что 1с позволяет хранить итоги только по реквизиту проводки
указанного как разделитель учета...
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 4 5 [6] 7 8 ... 17
ОтправитьПечать