![]() |
![]() |
![]() |
|
ПродажиПоОплате | ☑ | ||
---|---|---|---|---|
0
tnadya
02.04.12
✎
11:45
|
Вопрос к знатокам. Помогите, где можно покопать. Есть отчет ПродажиПоОплате в файловом режиме работы 1С он работает минут 5, при переброски базы в SQL данный отчет с теми же настройками формируется минут за 30 или более. При чем не зависит от SQL postgrey или майкрософтовский. Из этого делаю вывод, что "собака" зарыта в базе 1С, что-то не так для SQL-ных таблиц. Может кто сталкивался с такой проблемой.
Вот код Запроса, именно он долго работает в SQL ТекстЗапроса = " |ВЫБРАТЬ РАЗРЕШЕННЫЕ | ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот КАК СуммаПродажи, | ПродажиСДатамиЦенИДатамиКурсов.КоличествоОборот КАК КоличествоОборот, | ПродажиСДатамиЦенИДатамиКурсов.КоличествоОборот * ПродажиСДатамиЦенИДатамиКурсов.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ПродажиСДатамиЦенИДатамиКурсов.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЕдиницДляОтчетовОборот, | ПродажиСДатамиЦенИДатамиКурсов.СебестоимостьОборот КАК Себестоимость, | ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот - ПродажиСДатамиЦенИДатамиКурсов.СебестоимостьОборот КАК Маржа, | ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот - ПродажиСДатамиЦенИДатамиКурсов.СебестоимостьОборот КАК ЧистаяМаржа, | ((ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот - ПродажиСДатамиЦенИДатамиКурсов.СебестоимостьОборот)/ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот)*100 КАК Рентабельность, //Макар. 2009.11.12. | 0 КАК СуммаЗатрат, | РСЦеныКомпании.Цена * ПродажиСДатамиЦенИДатамиКурсов.КоличествоОборот * ПродажиСДатамиЦенИДатамиКурсов.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РСЦеныКомпании.ЕдиницаИзмерения.Коэффициент * РСКурсыВалютыЦен.Курс / РСКурсыВалютыЦен.Кратность * РСКурсыВалютыУпрУчета.Кратность / РСКурсыВалютыУпрУчета.Курс * &КоэффициентОтБазовогоТипа КАК ПлановаяСебестоимость, | ПродажиСДатамиЦенИДатамиКурсов.СуммаПродажиОборот - РСЦеныКомпании.Цена * ПродажиСДатамиЦенИДатамиКурсов.КоличествоОборот * ПродажиСДатамиЦенИДатамиКурсов.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РСЦеныКомпании.ЕдиницаИзмерения.Коэффициент * РСКурсыВалютыЦен.Курс / РСКурсыВалютыЦен.Кратность * РСКурсыВалютыУпрУчета.Кратность / РСКурсыВалютыУпрУчета.Курс * &КоэффициентОтБазовогоТипа КАК ПлановаяПрибыль, | ПродажиСДатамиЦенИДатамиКурсов.Регистратор КАК ДокументРеализации, | ПродажиСДатамиЦенИДатамиКурсов.Период КАК Период, //Макар. 2009.10.30. | ПродажиСДатамиЦенИДатамиКурсов.ПериодМесяц КАК ПериодМесяц, //Макар. 2009.10.30. | ПродажиСДатамиЦенИДатамиКурсов.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ПродажиСДатамиЦенИДатамиКурсов.Подразделение КАК Подразделение, | ПродажиСДатамиЦенИДатамиКурсов.ЗаказПокупателя КАК ЗаказПокупателя, | ПродажиСДатамиЦенИДатамиКурсов.ДоговорВзаиморасчетовПокупателя КАК ДоговорВзаиморасчетовПокупателя, | ПродажиСДатамиЦенИДатамиКурсов.ЗаказПокупателя.Ответственный КАК Ответственный, | ПродажиСДатамиЦенИДатамиКурсов.ЗаказПокупателя.ОтветственныйИнженер КАК ОтветственныйИнженер, | ПродажиСДатамиЦенИДатамиКурсов.Номенклатура КАК Номенклатура, | ПродажиСДатамиЦенИДатамиКурсов.Контрагент КАК Покупатель |{ВЫБРАТЬ | СуммаПродажи, | КоличествоОборот, | КоличествоЕдиницДляОтчетовОборот, | Себестоимость, | Маржа, | ЧистаяМаржа, | Рентабельность, | СуммаЗатрат, | ПлановаяСебестоимость, | ПлановаяПрибыль, | ДокументРеализации.*, | Период, //Макар. 2009.10.30. | ПериодМесяц, //Макар. 2009.10.30. | ХарактеристикаНоменклатуры.*, | ЗаказПокупателя.*, | Ответственный.*, | ОтветственныйИнженер.*, | ДоговорВзаиморасчетовПокупателя.*, | Покупатель.*, | Подразделение.*, | Номенклатура.*, | ПродажиСДатамиЦенИДатамиКурсов.ДокументПродажи.*} |ИЗ ( |ВЫБРАТЬ | ПродажиОбороты.СтоимостьОборот*ДопКоэффициент КАК СуммаПродажиОборот, | (ВЫБОР КОГДА (ПродажиСебестоимостьОбороты.СтоимостьОборот) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ПродажиСебестоимостьОбороты.СтоимостьОборот КОНЕЦ + ВЫБОР КОГДА (ПродажиСебестоимостьКорректировка.Стоимость) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ПродажиСебестоимостьКорректировка.Стоимость КОНЕЦ)*ДопКоэффициент КАК СебестоимостьОборот, | ПродажиОбороты.КоличествоОборот*ДопКоэффициент КАК КоличествоОборот, | ПродажиОбороты.Регистратор, | ПродажиОбороты.Период, //Макар. 2009.10.30. | НАЧАЛОПЕРИОДА(ПродажиОбороты.Период, МЕСЯЦ) КАК ПериодМесяц, | ПродажиОбороты.Номенклатура, | ПродажиОбороты.ХарактеристикаНоменклатуры, | ПродажиОбороты.ДоговорКонтрагента КАК ДоговорВзаиморасчетовПокупателя, | ПродажиОбороты.Контрагент, | ПродажиОбороты.ЗаказПокупателя, | ПродажиОбороты.Подразделение, | ПродажиОбороты.ДокументПродажи, | СписокРегистраторов.ДатаКурсаВалютыУпрУчета, | МАКСИМУМ(РСЦеныКомпании.Период) КАК ДатаЦены, | МАКСИМУМ(РСКурсыВалют.Период) КАК ДатаКурсаВалютыЦены |ИЗ | РегистрНакопления.Продажи.Обороты(, &ДатаКон, Регистратор, | {Номенклатура.*, ХарактеристикаНоменклатуры.*, ЗаказПокупателя.*, Подразделение.*, ДоговорКонтрагента.* КАК ДоговорВзаиморасчетовПокупателя, Контрагент.* КАК Покупатель, ДокументПродажи.*} | ) КАК ПродажиОбороты // Ниже пошел запрос, отвечающий за передачу Продажам только тех регистраторов, которые оплатились // в течение периода отчета. | ВНУТРЕННЕЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ РАЗЛИЧНЫЕ | ОсновнаяТаблица.Регистратор, | ОсновнаяТаблица.Сделка, | МАКСИМУМ(ВЫБОР КОГДА | ВЫБОР //документ не был оплаченным на ДатаНач | КОГДА НеоплаченныеНаДатуКон.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период < НеоплаченныеНаДатуКон.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуКон.Период | И ОсновнаяТаблица.Регистратор<НеоплаченныеНаДатуКон.ПервыйРегистратор | ИНАЧЕ | ОсновнаяТаблица.Период <= &КонДата | КОНЕЦ | И | ВЫБОР //и стал оплаченным на ДатаКон | КОГДА НеоплаченныеНаДатуНач.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период > НеоплаченныеНаДатуНач.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуНач.Период | И ОсновнаяТаблица.Регистратор>=НеоплаченныеНаДатуНач.ПервыйРегистратор | ИНАЧЕ | ОсновнаяТаблица.Период >= &НачДата | КОНЕЦ ТОГДА 1 | ИНАЧЕ -1 КОНЕЦ) КАК ДопКоэффициент, | МАКСИМУМ(РСКВ.Период) КАК ДатаКурсаВалютыУпрУчета //это даты курсов | ИЗ | РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ОсновнаяТаблица | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК РСКВ | ПО РСКВ.Валюта = &ВалютаУпрУчета И РСКВ.Период<=ОсновнаяТаблица.Период | ЛЕВОЕ СОЕДИНЕНИЕ ("+ТекстВложенногоЗапросаПоНеоплаченнымДокументамНаДатуКон+") КАК НеоплаченныеНаДатуКон | ПО НеоплаченныеНаДатуКон.ДоговорКонтрагента = ОсновнаяТаблица.ДоговорКонтрагента | И НеоплаченныеНаДатуКон.Сделка = ОсновнаяТаблица.Сделка | ЛЕВОЕ СОЕДИНЕНИЕ ("+ТекстВложенногоЗапросаПоНеоплаченнымДокументамНаДатуНач+") КАК НеоплаченныеНаДатуНач | ПО НеоплаченныеНаДатуНач.ДоговорКонтрагента = ОсновнаяТаблица.ДоговорКонтрагента | И НеоплаченныеНаДатуНач.Сделка = ОсновнаяТаблица.Сделка | ГДЕ | ВЫБОР //документ не был оплаченным на ДатаНач | КОГДА НеоплаченныеНаДатуКон.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период < НеоплаченныеНаДатуКон.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуКон.Период | И ОсновнаяТаблица.Регистратор<НеоплаченныеНаДатуКон.ПервыйРегистратор | ИНАЧЕ | ОсновнаяТаблица.Период <= &КонДата | КОНЕЦ | И | ВЫБОР //и стал оплаченным на ДатаКон | КОГДА НеоплаченныеНаДатуНач.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период > НеоплаченныеНаДатуНач.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуНач.Период | И ОсновнаяТаблица.Регистратор>=НеоплаченныеНаДатуНач.ПервыйРегистратор | ИНАЧЕ | ОсновнаяТаблица.Период >= &НачДата | КОНЕЦ | ИЛИ | ВЫБОР //документ был оплаченным на ДатаНач, т.е. находился левее границы | КОГДА НеоплаченныеНаДатуНач.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период < НеоплаченныеНаДатуНач.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуНач.Период | И ОсновнаяТаблица.Регистратор<НеоплаченныеНаДатуНач.ПервыйРегистратор | ИНАЧЕ | ОсновнаяТаблица.Период < &НачДата | КОНЕЦ | И | ВЫБОР //и стал НЕоплаченным на ДатаКон, т.е находится правее границы | КОГДА НеоплаченныеНаДатуКон.ДоговорКонтрагента ЕСТЬ НЕ NULL ТОГДА | ОсновнаяТаблица.Период > НеоплаченныеНаДатуКон.Период | ИЛИ ОсновнаяТаблица.Период = НеоплаченныеНаДатуКон.Период | И ОсновнаяТаблица.Регистратор>=НеоплаченныеНаДатуКон.ПервыйРегистратор | ИНАЧЕ | Ложь //этот вариант предполагает, что появились неоплаченные документы | КОНЕЦ | СГРУППИРОВАТЬ ПО | ОсновнаяТаблица.Регистратор, | ОсновнаяТаблица.Сделка | ) КАК СписокРегистраторов | ПО ПродажиОбороты.Регистратор = СписокРегистраторов.Регистратор | И ВЫБОР КОГДА ПродажиОбороты.ДоговорКонтрагента.ВедениеВзаиморасчетов = ЗНАЧЕНИЕ(Перечисление.ВедениеВзаиморасчетовПоДоговорам.ПоЗаказам) | ТОГДА ПродажиОбороты.ЗаказПокупателя = СписокРегистраторов.Сделка | ИНАЧЕ ИСТИНА | КОНЕЦ // Себестоимость продаж, списываемая сразу | ЛЕВОЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ СУММА(СтоимостьОборот) КАК СтоимостьОборот, Номенклатура, ХарактеристикаНоменклатуры, ЗаказПокупателя, Регистратор | ИЗ РегистрНакопления.ПродажиСебестоимость.Обороты(,&ДатаКон,Регистратор) КАК ПродажиСебестоимость | СГРУППИРОВАТЬ ПО Номенклатура, ХарактеристикаНоменклатуры, ЗаказПокупателя, Регистратор) ПродажиСебестоимостьОбороты | ПО ПродажиОбороты.Регистратор = ПродажиСебестоимостьОбороты.Регистратор | И ПродажиОбороты.Номенклатура = ПродажиСебестоимостьОбороты.Номенклатура | И ПродажиОбороты.ХарактеристикаНоменклатуры = ПродажиСебестоимостьОбороты.ХарактеристикаНоменклатуры | И ПродажиОбороты.ЗаказПокупателя = ПродажиСебестоимостьОбороты.ЗаказПокупателя // Себестоимость продаж, списываемая при корректировке | ЛЕВОЕ СОЕДИНЕНИЕ | (ВЫБРАТЬ СУММА(Стоимость) КАК Стоимость, Номенклатура, ДокументДвижения, ХарактеристикаНоменклатуры, ЗаказПокупателя, Подразделение | ИЗ РегистрНакопления.ПродажиСебестоимость КАК ПродажиСебестоимость |// ГДЕ ПродажиСебестоимость.ДокументДвижения <> Неопределено | СГРУППИРОВАТЬ ПО Номенклатура, ДокументДвижения, ХарактеристикаНоменклатуры, ЗаказПокупателя, Подразделение | ) ПродажиСебестоимостьКорректировка | ПО ПродажиСебестоимостьКорректировка.Номенклатура = ПродажиОбороты.Номенклатура | И ПродажиСебестоимостьКорректировка.ХарактеристикаНоменклатуры = ПродажиОбороты.ХарактеристикаНоменклатуры | И ПродажиСебестоимостьКорректировка.ДокументДвижения = ПродажиОбороты.Регистратор | И ПродажиСебестоимостьКорректировка.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя | И ПродажиСебестоимостьКорректировка.Подразделение = ПродажиОбороты.Подразделение // ... // Цены для плановой себестоимости | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК РСЦеныКомпании | ПО РСЦеныКомпании.ТипЦен = &ТипЦенПлановойСебестоимости | И ПродажиОбороты.Номенклатура = РСЦеныКомпании.Номенклатура | И ПродажиОбороты.ХарактеристикаНоменклатуры = РСЦеныКомпании.ХарактеристикаНоменклатуры | И РСЦеныКомпании.Период<=ПродажиОбороты.Период // Курсы валют для плановой себестоимости | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК РСКурсыВалют | ПО РСКурсыВалют.Валюта = РСЦеныКомпании.Валюта | И РСКурсыВалют.Период<=РСЦеныКомпании.Период |СГРУППИРОВАТЬ ПО | ПродажиОбороты.СтоимостьОборот*ДопКоэффициент, | (ВЫБОР КОГДА (ПродажиСебестоимостьОбороты.СтоимостьОборот) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ПродажиСебестоимостьОбороты.СтоимостьОборот КОНЕЦ + ВЫБОР КОГДА (ПродажиСебестоимостьКорректировка.Стоимость) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ПродажиСебестоимостьКорректировка.Стоимость КОНЕЦ)*ДопКоэффициент, | ПродажиОбороты.КоличествоОборот*ДопКоэффициент, | ПродажиОбороты.Регистратор, | ПродажиОбороты.Период, //Макар. 2009.10.30. | НАЧАЛОПЕРИОДА(ПродажиОбороты.Период, МЕСЯЦ), //Макар. 2009.10.30. | ПродажиОбороты.Номенклатура, | ПродажиОбороты.ХарактеристикаНоменклатуры, | ПродажиОбороты.Контрагент, | ПродажиОбороты.ДоговорКонтрагента, | ПродажиОбороты.ЗаказПокупателя, | ПродажиОбороты.Подразделение, | ПродажиОбороты.ДокументПродажи, | СписокРегистраторов.ДатаКурсаВалютыУпрУчета |) КАК ПродажиСДатамиЦенИДатамиКурсов |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК РСЦеныКомпании | ПО РСЦеныКомпании.ТипЦен = &ТипЦенПлановойСебестоимости | И РСЦеныКомпании.Период = ПродажиСДатамиЦенИДатамиКурсов.ДатаЦены | И РСЦеныКомпании.Номенклатура = ПродажиСДатамиЦенИДатамиКурсов.Номенклатура | И РСЦеныКомпании.ХарактеристикаНоменклатуры = ПродажиСДатамиЦенИДатамиКурсов.ХарактеристикаНоменклатуры |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК РСКурсыВалютыУпрУчета | ПО РСКурсыВалютыУпрУчета.Период = ПродажиСДатамиЦенИДатамиКурсов.ДатаКурсаВалютыУпрУчета | И РСКурсыВалютыУпрУчета.Валюта = &ВалютаУпрУчета |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют КАК РСКурсыВалютыЦен | ПО РСКурсыВалютыЦен.Валюта = РСЦеныКОмпании.Валюта | И РСКурсыВалютыЦен.Период = ПродажиСДатамиЦенИДатамиКурсов.ДатаКурсаВалютыЦены |} |ОБЪЕДИНИТЬ ВСЕ |ВЫБРАТЬ | 0 КАК СуммаПродажи, | 0 КАК КоличествоОборот, | 0 КАК КоличествоЕдиницДляОтчетовОборот, | 0 КАК Себестоимость, | 0 КАК МАРЖА, | -ЗатратыОбороты.СуммаОборот КАК ЧистаяМаржа, | 0 КАК Рентабельность, //Макар | ЗатратыОбороты.СуммаОборот КАК СуммаЗатрат, | 0 КАК ПлановаяСебестоимость, | 0 КАК ПлановаяПрибыль, | ЗатратыОбороты.Регистратор КАК ДокументРеализации, | ЗатратыОбороты.Период КАК Период, //Макар. 2009.10.30. | НАЧАЛОПЕРИОДА(ЗатратыОбороты.Период, МЕСЯЦ) КАК ПериодМесяц, | NULL КАК ХарактеристикаНоменклатуры, | ЗатратыОбороты.Подразделение КАК Подразделение, | ЗатратыОбороты.Заказ КАК ЗаказПокупателя, | ЗатратыОбороты.Заказ.ДоговорКонтрагента КАК ДоговорВзаиморасчетовПокупателя, | ЗатратыОбороты.Заказ.Ответственный КАК Ответственный, | ЗатратыОбороты.Заказ.ОтветственныйИнженер КАК ОтветственныйИнженер, | ЗатратыОбороты.СтатьяЗатрат КАК Номенклатура, | ЗатратыОбороты.Заказ.Контрагент КАК Покупатель |{ВЫБРАТЬ | СуммаПродажи, | КоличествоОборот, | КоличествоЕдиницДляОтчетовОборот, | Себестоимость, | Маржа, | ЧистаяМаржа, | Рентабельность, //Макар. | СуммаЗатрат, | ПлановаяСебестоимость, | ПлановаяПрибыль, | ДокументРеализации.*, | Период, //Макар. 2009.10.30. | ПериодМесяц, //Макар. 2009.10.30. | ХарактеристикаНоменклатуры.*, | Покупатель.*, | ЗаказПокупателя.*, | ДоговорВзаиморасчетовПокупателя, | Ответственный.*, | ОтветственныйИнженер.*, | Подразделение.*, | Номенклатура.*} |ИЗ РегистрНакопления.Затраты.Обороты(&ДатаНач, &ДатаКон, Регистратор {&Периодичность}, Заказ <> НЕОПРЕДЕЛЕНО) КАК ЗатратыОбороты |{ГДЕ | ЗатратыОбороты.Подразделение.* КАК Подразделение, | ЗатратыОбороты.Заказ.Ответственный.* КАК Ответственный, | ЗатратыОбороты.Заказ.ОтветственныйИнженер.* КАК ОтветственныйИнженер, | ЗатратыОбороты.Заказ.Контрагент.* КАК Покупатель, | ЗатратыОбороты.Заказ.ДоговорКонтрагента.* КАК ДоговорВзаиморасчетовПокупателя, | ЗатратыОбороты.Заказ.* КАК ЗаказПокупателя, | ЗатратыОбороты.СтатьяЗатрат КАК Номенклатура, | 0 КАК СуммаПродажи, | 0 КАК КоличествоОборот, | 0 КАК КоличествоЕдиницДляОтчетовОборот, | 0 КАК Себестоимость, | 0 КАК МАРЖА, | -ЗатратыОбороты.СуммаОборот КАК ЧистаяМаржа, | 0 КАК Рентабельность, //Макар. 2009.11.12 | ЗатратыОбороты.СуммаОборот КАК СуммаЗатрат, | 0 КАК ПлановаяСебестоимость, | 0 КАК ПлановаяПрибыль | //СВОЙСТВА | //КАТЕГОРИИ |} |{УПОРЯДОЧИТЬ ПО | ЗаказПокупателя.*, | Подразделение.*, | Покупатель.*, | Ответственный.*, | ОтветственныйИнженер.*, | Номенклатура.*, | СуммаПродажи, | КоличествоОборот, | КоличествоЕдиницДляОтчетовОборот, | Себестоимость, | Маржа, | ЧистаяМаржа, | СуммаЗатрат, | ПлановаяСебестоимость, | ПлановаяПрибыль, | Период, | ПериодМесяц | //СВОЙСТВА |} |ИТОГИ | СУММА(СуммаПродажи), | СУММА(КоличествоОборот), | СУММА(КоличествоЕдиницДляОтчетовОборот), | СУММА(Себестоимость), | СУММА(Маржа), | СУММА(ЧистаяМаржа), //| СУММА(СуммаПродажи) / СУММА(СуммаПродажи) КАК Рентабельность, //Макар. 2009.11.12. | ВЫБОР | КОГДА СУММА(СуммаПродажи) <>0 //| КОГДА ЗаказПокупателя ЕСТЬ НЕ NULL | ТОГДА СУММА(СуммаПродажи-Себестоимость) / СУММА(СуммаПродажи) * 100 | ИНАЧЕ 0 | КОНЕЦ КАК Рентабельность, //Макар. | СУММА(СуммаЗатрат), | СУММА(ПлановаяСебестоимость), | СУММА(ПлановаяПрибыль) | |ПО ОБЩИЕ | |{ИТОГИ ПО | ЗаказПокупателя.*, | Подразделение.*, | Покупатель.*, | Ответственный.*, | ОтветственныйИнженер.*, | Период, //Макар. 2009.10.30 | ПериодМесяц, //Макар. 2009.10.30 | Номенклатура.* | //СВОЙСТВА |} |"; |
|||
1
hhhh
02.04.12
✎
11:56
|
(0) ну так и должно быть. Самая быстрая база - это файловая в монопольном режиме. А дальше по убыванию.
НУ и у вас выбирается информация абсолютно по всей базе и еще по регистраторам: РегистрНакопления.Продажи.Обороты(, &ДатаКон, Регистратор, ну то есть там десятки миллионов строк в выборке, а может и миллиарды. Поэтому 30 минут для такой выборки - это нормально. |
|||
2
Ненавижу 1С
гуру
02.04.12
✎
11:57
|
Макар отжег!
|
|||
3
tnadya
02.04.12
✎
12:02
|
Я написала свой отчет, он работает гораздо быстрее, но народ привык к этому при переходе на SQL будет много вопросов.
Так ничего сделать нельзя для убыстрения этого отчета? |
|||
4
Ненавижу 1С
гуру
02.04.12
✎
12:05
|
(3) пусть отвыкают, не ну конечно хотят медленно, то пусть работают
|
|||
5
Ненавижу 1С
гуру
02.04.12
✎
12:06
|
(3) в конце концов интерфейс внешне можно сделать идентичным
|
|||
6
tnadya
02.04.12
✎
12:06
|
Ясно, спасибо.
|
|||
7
Maxus43
02.04.12
✎
12:07
|
переписывать в ипеня этот запрос, теже соединения с вложенными запросами и т.д.
|
|||
8
tnadya
02.04.12
✎
12:10
|
можно попробовать повозиться с ним. Если получится, то выложу что получилось.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |