Сортировка
Select messages from
# through # FAQ
[/[Print]\]

-> Программирование отчетов в БЭСТ-5

#1: Сортировка Author: _Андрей_Location: Иванов А.В. PostPosted: 04 Oct 2007 10:15
    —
Подскажите пожалуйста, как в оборотной ведомости сделать сортировку по коэффициенту оборачиваемости? Если можно - поподробнее... И еще: очень часто приходится отчеты экспортировать в Excel, где они получаются огромные, куча лишних строк и столбцов.... Можно ли как нибудь от них избавится?

#2:  Author: _Андрей_Location: Иванов А.В. PostPosted: 05 Oct 2007 13:01
    —
Не понимаю причину молчания... Это очень сложно? Или я что-то не то спросил

#3: Re: Сортировка Author: dshlykovLocation: Дмитрий Шлыков PostPosted: 08 Oct 2007 17:27
    —
Добрый день!
_Андрей_ wrote:
Подскажите пожалуйста, как в оборотной ведомости сделать сортировку по коэффициенту оборачиваемости? Если можно - поподробнее... И еще: очень часто приходится отчеты экспортировать в Excel, где они получаются огромные, куча лишних строк и столбцов.... Можно ли как нибудь от них избавится?

За сортировку в складских отчетах отвечает параметр cFilting. В данный параметр записывется выражение из итоговых строк курсора, по которому необходимо сортировать отчет. В Вашем случае необходимо добавить следующий код в событие OnClick кнопки выполнить:
Code:
DataSet1.Params['cSorting'] := 'iif(SB+SE=0,0,SR/(0.5*(SB+SE)))';
Если необходимо сделать сортировку по другим полям и коэффициенту оборачиваемости код должен быть следующим (например по группе и коэффициенту оборачиваемости):
Code:
DataSet1.Params['cSorting'] := 'GRUP+STR(iif(SB+SE=0,0,SR/(0.5*(SB+SE))),11,4)';

_Андрей_ wrote:
И еще: очень часто приходится отчеты экспортировать в Excel, где они получаются огромные, куча лишних строк и столбцов.... Можно ли как нибудь от них избавится?

Избавится от них можно только выравняв все объекты отчета друг относительно друга. Любой зазор междк объектами дает такой эффект при экспорт

#4:  Author: _Андрей_Location: Иванов А.В. PostPosted: 02 Nov 2007 11:38
    —
Еще такой вопрос: как поставить условие, чтобы в отчет выводились (не выводились) товары, с коэффициентом оборачиваемости, скажем, менньше 0.1?

#5:  Author: dshlykovLocation: Дмитрий Шлыков PostPosted: 02 Nov 2007 12:29
    —
Добрый день!
_Андрей_ wrote:
Еще такой вопрос: как поставить условие, чтобы в отчет выводились (не выводились) товары, с коэффициентом оборачиваемости, скажем, менньше 0.1?
Этот вопрос можно решить двумя способами:
1. Установить итоговую фильтрацию источника:
Code:
DataSet1.Params['cHaving'] := DataSet1.Params['cHaving'] + if(LENGTH(DataSet1.Params['cHaving'])<>0,' and ','')+'iif(SB+SE=0,0,SR/(0.5*(SB+SE)))>0.1';

2. Не выводить эти строки в отчете. Для этого в событии OnBeforePrint секции MasterData надо проверить это условие: вывводить или не выводить секцию:
Code:
If if(DialogForm.DataSet1."SB"+DialogForm.DataSet1."SE"=0,0,DialogForm.DataSet1."SR"/(0.5*(DialogForm.DataSet1."SB"+DialogForm.DataSet1."SE")))<0.1 Then Visible := False
Else Visible := True;



-> Программирование отчетов в БЭСТ-5


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group