Переключение на Главную Страницу Страницы: 1 ... 11 12 [13] 14 15 ... 17 ОтправитьПечать
Очень популярная тема (более 25 ответов) Прямые запросы к бухгалтерским итогам (число прочтений - 124022 )
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #180 - 31. Июля 2008 :: 12:14
Печать  
   В модуле документа при проведении жутко тормозит, если документ прошлого месяца. Если документ конца этого месяца все работает быстро. В чем может быть причина?        

           |SELECT
     |ОсновнойОстатки.Субконто1 AS [С1 $Субконто]
     |,ОсновнойОстатки.Субконто1_вид
     |,SUM(ОсновнойОстатки.КоличествоОстатокДт) AS КДт
     |FROM $БИОстатки.Основной(:Выбдата~,,((Счет =:Счет)  AND (Субконто2=:Склад)),) AS Ост      
     |WHERE
     |(ОсновнойОстатки.КоличествоОстатокДт<>0)
     |GROUP BY
     | ОсновнойОстатки.Субконто1
     |,ОсновнойОстатки.Субконто1_вид
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #181 - 31. Июля 2008 :: 12:30
Печать  
Странно, что он вообще работает - с условием по субконто в секции УсловиеСчета. Круглые глаза И где отбор по разделителю учёта?
  

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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #182 - 31. Июля 2008 :: 12:54
Печать  
А для чего разделитель учета?
Так правильно?
    SELECT
    |ОсновнойОстатки.Субконто1 AS [С1 $Субконто]
    |,ОсновнойОстатки.Субконто1_вид
    |,SUM(ОсновнойОстатки.КоличествоОстатокДт) AS КДт
    |FROM $БИОстатки.Основной(:Выбдата~,,(Счет =:Счет),) AS Ост      
    |WHERE  
    |(ОсновнойОстатки.КоличествоОстатокДт<>0)  
    |AND (ОсновнойОстатки.Субконто2=:Склад)
    |GROUP BY
    | ОсновнойОстатки.Субконто1  
    |,ОсновнойОстатки.Субконто1_вид

И что за условие счета у меня в описании написано      $БИОстатки.<ПланСчетов>(<ГраницаРасчета>,<Соединение>,<Условие>,<Субконто>)
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #183 - 31. Июля 2008 :: 13:21
Печать  
RuporAbsurda писал(а) 31. Июля 2008 :: 12:54:
А для чего разделитель учета?

Если в конфигурации определён разделитель учёта, условие по нему рекомендуется для повышения эффективности (попадание в индекс).

RuporAbsurda писал(а) 31. Июля 2008 :: 12:54:
Так правильно?

:Счет - это элемент или группа?

RuporAbsurda писал(а) 31. Июля 2008 :: 12:54:
И что за условие счета у меня в описании написано      $БИОстатки.<ПланСчетов>(<ГраницаРасчета>, <Соединение>, <Условие>, <Субконто>)

Это было давно и не правда.  Улыбка Таким был синтаксис первой версии класса. Начиная со второй это

$БИОстатки.<ПланСчетов>(<ГраницаРасчета>, <Соединение>, <УсловиеСчета>, <Субконто>, <Условие>)
  

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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #184 - 31. Июля 2008 :: 13:33
Печать  
Где взять?
Если заменить все придется переписывать?
Еще вопрос если указать вместо даты СформироватьПозициюДокумента() будет работать или нужно через md?
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #185 - 31. Июля 2008 :: 13:51
Печать  
RuporAbsurda писал(а) 31. Июля 2008 :: 13:33:
Где взять?
Если заменить все придется переписывать?
Еще вопрос если указать вместо даты СформироватьПозициюДокумента() будет работать или нужно через md?

http://www.1cpp.ru/forum/YaBB.pl?num=1181817217
Да.
С первым модификатором будет работать.
  

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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #186 - 01. Августа 2008 :: 11:21
Печать  
Можно ли оптимизировать такой запрос, чтобы пошустрее работал?

|SELECT
     |ОсновнойОстатки.Субконто1 AS [Субконто1 $Субконто]
     |,ОсновнойОстатки.Субконто1_вид
     |,ОсновнойОстатки.Субконто2 AS [Субконто2 $Субконто]
     |,ОсновнойОстатки.Субконто2_вид
     |,SUM(ОсновнойОстатки.КоличествоОстатокДт) AS КоличествоДт
     |FROM $БИОстатки.Основной(:ВыбДата~,,,,(Счет =:Счет)) AS ОсновнойОстатки            
     |WHERE
     |(ОсновнойОстатки.КоличествоОстатокДт<>0)
     | AND  (ОсновнойОстатки.Субконто2 =:Склад)
     |GROUP BY
     | ОсновнойОстатки.Субконто1
     |,ОсновнойОстатки.Субконто1_вид
     |,ОсновнойОстатки.Субконто2
     |,ОсновнойОстатки.Субконто2_вид
  
Наверх
 
IP записан
 
Mikeware
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 262
Зарегистрирован: 27. Июля 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #187 - 01. Августа 2008 :: 11:34
Печать  
RuporAbsurda писал(а) 01. Августа 2008 :: 11:21:
Можно ли оптимизировать такой запрос, чтобы пошустрее работал?

|SELECT
     |ОсновнойОстатки.Субконто1 AS [Субконто1 $Субконто]
     |,ОсновнойОстатки.Субконто1_вид
     |,ОсновнойОстатки.Субконто2 AS [Субконто2 $Субконто]
     |,ОсновнойОстатки.Субконто2_вид
     |,SUM(ОсновнойОстатки.КоличествоОстатокДт) AS КоличествоДт
     |FROM $БИОстатки.Основной(:ВыбДата~,,,,(Счет =:Счет)) AS ОсновнойОстатки            
     |WHERE
     |(ОсновнойОстатки.КоличествоОстатокДт<>0)
     | AND  (ОсновнойОстатки.Субконто2 =:Склад)
     |GROUP BY
     | ОсновнойОстатки.Субконто1
     |,ОсновнойОстатки.Субконто1_вид
     |,ОсновнойОстатки.Субконто2
     |,ОсновнойОстатки.Субконто2_вид

А разве в данном случае не ругается на отсутсвие агрегатных функций????
  
Наверх
ICQ  
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #188 - 01. Августа 2008 :: 11:39
Печать  
SUM(ОсновнойОстатки.КоличествоОстатокДт) AS КоличествоДт - это имеется ввиду?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #189 - 01. Августа 2008 :: 12:25
Печать  
ОсновнойОстатки.Субконто1_вид и ОсновнойОстатки.Субконто2_вид можно вывести из группировки, если поставить в селек-листе: MAX(ОсновнойОстатки.Субконто1_вид) и MAX(ОсновнойОстатки.Субконто2_вид) соответственно. (если я правильно понял смысл запроса)
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #190 - 01. Августа 2008 :: 13:29
Печать  
RuporAbsurda писал(а) 01. Августа 2008 :: 11:21:
Можно ли оптимизировать такой запрос, чтобы пошустрее работал?

:Счет - это группа или элемент? Сколько и каких типов у него субконто? Разделитель учёта определён?
  

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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #191 - 04. Августа 2008 :: 06:12
Печать  
Счет это элемент, 2 субконто типа справочник, без разделителя учета.
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #192 - 04. Августа 2008 :: 08:06
Печать  
Код
Выбрать все
|SELECT ОсновнойОстатки.Субконто1 [Субконто1 $Справочник]
|	, ОсновнойОстатки.КоличествоОстатокДт AS КоличествоДт
|FROM $БИОстатки.Основной(:ВыбДата~,,,
|		Субконто1,
|		(Счет = :Счет) AND (Субконто2 = :Склад)) AS ОсновнойОстатки
|WHERE (ОсновнойОстатки.КоличествоОстатокДт <> 0) 


Если счёт активный - выбирать поле ОсновнойОстатки.КоличествоОстаток и убрать секцию WHERE.
Если счёт валютный - вернуть Sum и Group By.
  

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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #193 - 04. Августа 2008 :: 11:35
Печать  
К сожалению не получилось.
Результаты замеров:
176 (1 вариант)
256 (2 вариант)
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #194 - 04. Августа 2008 :: 11:50
Печать  
Цитата:
- Приборы?
- Тридцать три!
- Что "тридцать три"?
- А что "приборы"?

Смех

Сравнивать в таких случаях надо IO или планы выполнения.
  

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