Переключение на Главную Страницу Страницы: 1 ... 11 12 [13] 14 15 ... 17 ОтправитьПечать
Очень популярная тема (более 25 ответов) AccountsRecordset v3.17. Прямые запросы к БИ. (число прочтений - 137620 )
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #180 - 05. Октября 2010 :: 15:53
Печать  
mash писал(а) 05. Октября 2010 :: 15:44:
При попытке задания в таблице БИОборотыДтКт условия вида "ВидДокумента != $ВидДокумента.ПоступлениеТМЦ" выдает вот такую ошибку -
"The column prefix '_1SJOURN_vt' does not match with a table name or alias name used in the query".

Версия класса 3.11. В чем может быть дело ?

а версия 1с++  какая ?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #181 - 05. Октября 2010 :: 17:18
Печать  
mash писал(а) 05. Октября 2010 :: 15:44:
В чем может быть дело ?

Цитата:
           ПозицияДокумента
           ВидДокумента

                 Существуют только в том случае, если указана периодичность Документ.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #182 - 06. Октября 2010 :: 06:54
Печать  
2 berezdetsky. Извиняюсь за беспокойство - разобрался. Случайно это условие попало и в таблицу БИОстатки, в том же запросе. Оттуда эта проблема.
  

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #183 - 26. Октября 2010 :: 08:28
Печать  
Установил 3.11 и вот такой запрос
[code]
     |select -- зачеты
     |      СубконтоКт1 Контрагент,
     |      СубконтоКт2 Договор,
     |      СчетДт,
     |      СчетКт,
     |      ПозицияДокумента,
     |      -СуммаОборот Оплачено
     |from
     |      $БИОборотыДтКт.Новый(:начДата,:конДата~
     |            ,Документ
     |            ,
     |            ,СчетДт = :сч601
     |            ,(Контрагенты)
     |            ,СчетКт = :сч601
     |            ,(Контрагенты, Договора)
     |            ,СубконтоДт1 != СубконтоКт1
     |      ) ТаблицаЗачетыКт
[/code]
стал выдавать в том числе обороты Д10 К60 (в сложной проводке) - почему то игнорируя условия по счету дебета. При этом сч601, понятное дело, определено как СчетПоКоду("60.1")
  

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #184 - 26. Октября 2010 :: 11:16
Печать  
Исправлю. Установи пока в конструкторе

МетаданныеОтборПоСчету = 0;
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.11. Прямые запросы к БИ.
Ответ #185 - 26. Октября 2010 :: 12:57
Печать  
сделал. все стало на свое место. С этим связан еще один артефакт. Вот такой запрос [code]
select -- зачеты
     Субконто1,
     Субконто2,
     ПозицияДокумента,
     СуммаОборотДт-СуммаОборотКт
from
     $БИОбороты.Новый(:начДата,:конДата~
           ,Документ
           ,
           ,exists(select val from #СчетаРасчетовСКонтрагентами where Счет = val)
           ,(Контрагенты, Договора)
           ,Субконто1 != КорСубконто1
           ,exists(select val from #СчетаРасчетовСКонтрагентами where КорСчет = val)
           ,Контрагенты
     ) Зачеты
[/code]

удваивает суммы оборотов, если они составлены из нескольких проводок в одном документе. При отключении отбора по счетам все встает на место.
  

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #186 - 27. Октября 2010 :: 13:42
Печать  
[quote author=mash link=1181817217/180#183 date=1288081715]почему то игнорируя условия по счету дебета[/quote]
Исправлено в v3.12

[quote author=mash link=1181817217/180#185 date=1288097854]удваивает суммы оборотов, если они составлены из нескольких проводок в одном документе.[/quote]
Не воспроизводится. В # таблицах есть группы счетов?

[sub][font=Courier New]СуммаОборотДт-СуммаОборотКт = СуммаОборот[/font][/sub]
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #187 - 28. Октября 2010 :: 07:09
Печать  
Группы счетов есть, но так как добавляется через УложитьСписокОбъектов, то я полагал что это корректно отрабатывается ?
  

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #188 - 28. Октября 2010 :: 07:57
Печать  
mash писал(а) 28. Октября 2010 :: 07:09:
Группы счетов есть, но так как добавляется через УложитьСписокОбъектов, то я полагал что это корректно отрабатывается ?

После УложитьСписокОбъектов с указанием плана счетов там групп быть не может - это обрабатывается корректно.
Если не указывать план счетов, будет уложено содержимое списка - здесь приключается задница, когда в списке есть субсчета входящих в этот же список счетов. В этом смысл отбора по счетам - проводки можно отбирать и по счетам и по группам любого уровня. Т.ч. если в # таблице будет больше одного счёта, которому соответствует счёт проводки, проводка будет выбрана столько же раз. Это by design.
  

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


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #189 - 29. Октября 2010 :: 14:59
Печать  
berezdetsky писал(а) 28. Октября 2010 :: 07:57:
После УложитьСписокОбъектов с указанием плана счетов там групп быть не может - это обрабатывается корректно.

Если не указывать план счетов, будет уложено содержимое списка - здесь приключается задница, когда в списке есть субсчета входящих в этот же список счетов. В этом смысл отбора по счетам - проводки можно отбирать и по счетам и по группам любого уровня. Т.ч. если в # таблице будет больше одного счёта, которому соответствует счёт проводки, проводка будет выбрана столько же раз. Это by design.

Добавлю, что первый вариант снижает производительность и, как правило, лишает смысла использование отбора по счетам. Второй способ эффективнее и, при правильном использовании, выдаёт корректный результат.
  

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


1C++ rocks!

Сообщений: 5
Зарегистрирован: 16. Ноября 2010
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #190 - 16. Ноября 2010 :: 14:36
Печать  
Все попытки с выборкой оборотов по заданному счету Кт дают ошибку
Вот пример из ранних страниц Прямые запросы к БД › Прямые запросы к бухгалтерским итогам (как понял ,он был рабочий)
|SELECT   ОсновнойОборотыДт.СчетКт [КоррСчет $Счет.Основной]
|            , ОсновнойОборотыДт.СубконтоДт1 [Контрагент $Субконто]
|            , ОсновнойОборотыДт.СубконтоДт1_вид Контрагент_вид
|            , ОсновнойОборотыДт.СуммаОборот СуммаОборотДт 
|            , 0 СуммаОборотКт 
|FROM $БИОборотыДтКт.Основной(:НачДата, :КонДата ~,,,
|            (СчетДт = :Счет),
|            Контрагенты, БезСубконто
|      ) AS ОсновнойОборотыДт 
|
|UNION ALL
|
|SELECT   ОсновнойОборотыКт.СчетДт [КоррСчет $Счет.Основной]
|            , ОсновнойОборотыКт.СубконтоКт1 [Контрагент $Субконто]
|            , ОсновнойОборотыКт.СубконтоКт1_вид Контрагент_вид
|            , 0 СуммаОборотДт 
|            , ОсновнойОборотыКт.СуммаОборот СуммаОборотКт 
|FROM $БИОборотыДтКт.Основной(:НачДата, :КонДата ~,,,
|            (СчетКт = :Счет),
|            БезСубконто, Контрагенты
|      ) AS ОсновнойОборотыКт

У меня дает ошибку  AccountsRecordset::ÑôîðìèðîâàòüÎøèáêó(Ñòðîêà Îøèáêà=State 42S22, native 207, message [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'Ñ÷åòÊò'.) : State 42S22, native 207, message [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name СчетКт.
Что не так ???
  
Наверх
 
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #191 - 02. Декабря 2010 :: 13:56
Печать  
В версии 3.12 при включенном отборе по счетам в виртуальную таблицу "БИОбороты" попадает только первая подходящая по условиям проводка из операции. Отключение в классе отбора по счетам "МетаданныеОтборПоСчету                   = 0;" решает проблему. Ощущение, что из таблицы отбора счетов получаешь top 1 в разрезе документа.
  

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #192 - 02. Декабря 2010 :: 15:01
Печать  
Тестовую базу с отчётом и парой ручных операций можешь сделать?
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
mash
1c++ donor
Отсутствует


1C++ v. 3.0.1.23

Сообщений: 148
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #193 - 03. Декабря 2010 :: 11:10
Печать  
Да, пожалуйста. Правда в процессе подготовки примера выяснилась любопытная особенность - класс работает правильно если поставить условие соответствия счету (можно группе) типа
Код
Выбрать все
Счет = :выбСчет 

, и неправильно если используются конструкции типа
Код
Выбрать все
Счет in (select val from #tmp) 

или (как в примере)
Код
Выбрать все
exists(select val from #tmp where val = Счет) 

  

test_016.zip ( 65 KB | Загрузки )

Поспешность наносит ущерб
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: AccountsRecordset v3.12. Прямые запросы к БИ.
Ответ #194 - 03. Декабря 2010 :: 13:00
Печать  
ok. На выходных посмотрю.
  

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