проблема такая - отчет в нем две группы заголовков + во второй группе содержание
2. вторую группу не знаю как нумеровать - вообще не понимаю
3. наполнение второй группы нумерую по формуле CumulativeSum( 1 for group 2 )
подскажите плиз формулу для нумерации второй группы
ps
может и эти формулы неправильные - но что-то считают вроде
pps
да- версия PDM 4.40
1. первую группу нумерую через вспомогательное вычисляемое поле 'gr' по формуле CumulativeSum ( GR for all) где gr - соответственно вычисляемое поле лежащее на уровне первой группы с формулой If (GetRow() = First(GetRow() for group 2), 1, 0)Как сделать 3х уровневую нумерацию в группах и подгруппах
- Александр
- Активный участник
- Сообщения: 1658
- Зарегистрирован: 24 авг 2006, 08:06
- Используемое ПО: Lotsia PDM PLUS
- Откуда: 55.745578,37.665825
Как сделать 3х уровневую нумерацию в группах и подгруппах
Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный
- Anderyt
- Активный участник
- Сообщения: 777
- Зарегистрирован: 15 июл 2004, 13:15
- Используемое ПО: Lotsia PDM PLUS
- Откуда: Тюмень
- Контактная информация:
Re: Как сделать 3х уровневую нумерацию в группах и подгруппа
CumulativeSum( 1 for group 1 ) не сработает?
или такую же фишку, как для первой группы, через новое вычисляемое поле..
пробовал уже?
или такую же фишку, как для первой группы, через новое вычисляемое поле..
пробовал уже?
лучше день потерять, потом за пять минут долететь!
- Anderyt
- Активный участник
- Сообщения: 777
- Зарегистрирован: 15 июл 2004, 13:15
- Используемое ПО: Lotsia PDM PLUS
- Откуда: Тюмень
- Контактная информация:
Re: Как сделать 3х уровневую нумерацию в группах и подгруппа
вроде что то получилось..
в заголовке 2-й группы сделал выч. поле gr1 с выражением If (GetRow() = First(GetRow() for group 2), 1, 0)
потом в заголовке 2-й группы - выч. поле для номера с выражением CumulativeSum ( GR1 for group 1)
в заголовке 2-й группы сделал выч. поле gr1 с выражением If (GetRow() = First(GetRow() for group 2), 1, 0)
потом в заголовке 2-й группы - выч. поле для номера с выражением CumulativeSum ( GR1 for group 1)
лучше день потерять, потом за пять минут долететь!
- Александр
- Активный участник
- Сообщения: 1658
- Зарегистрирован: 24 авг 2006, 08:06
- Используемое ПО: Lotsia PDM PLUS
- Откуда: 55.745578,37.665825
Re: Как сделать 3х уровневую нумерацию в группах и подгруппа
получилось вот как
для первой группы (в области заголовка)
вычисляемое поле Gr1= If (GetRow() = First(GetRow() for group 1), 1, 0)
номер группы = CumulativeSum ( Gr1 for all)
....для второй группы (в области заголовка)
....вычисляемое поле Gr2= If (GetRow() = First(GetRow() for group 2), 1, 0)
....номер группы =CumulativeSum ( Gr2 for group 1)
........для элементов второй группы (в области данных)
........номер элемента=CumulativeSum( 1 for group 2 )
Андрюха - спасибо за содействие!!!
для первой группы (в области заголовка)
вычисляемое поле Gr1= If (GetRow() = First(GetRow() for group 1), 1, 0)
номер группы = CumulativeSum ( Gr1 for all)
....для второй группы (в области заголовка)
....вычисляемое поле Gr2= If (GetRow() = First(GetRow() for group 2), 1, 0)
....номер группы =CumulativeSum ( Gr2 for group 1)
........для элементов второй группы (в области данных)
........номер элемента=CumulativeSum( 1 for group 2 )
Андрюха - спасибо за содействие!!!

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный
- Anderyt
- Активный участник
- Сообщения: 777
- Зарегистрирован: 15 июл 2004, 13:15
- Используемое ПО: Lotsia PDM PLUS
- Откуда: Тюмень
- Контактная информация:
Re: Как сделать 3х уровневую нумерацию в группах и подгруппа

тебе спасибо! у нас недавно была не очень актуальная похожая задача - забили в итоге.. до игр с getrow и firstrow не додумались

лучше день потерять, потом за пять минут долететь!
- Старик Крупский
- Активный участник
- Сообщения: 803
- Зарегистрирован: 27 июл 2006, 22:17
- Откуда: Москва
Re: Как сделать 3х уровневую нумерацию в группах и подгруппа
В практических рекомендациях в свое время мне попался раздел "Нумерация групп в формах". Там практически то же самое:
"Зачастую возникают ситуации, когда в формах, допускающих группировку, требуется проставить порядковый номер в заголовке группы. Решение этой задачи состоит в том, чтобы с помощью одного вычисляемого «пометить» начало новой группы единицей, а с помощью другого – подсчитать и отобразить нарастающий итог этих пометок. Оба вычисляемых поля размещаются в области заголовка группы.
Приведем содержание вычисляемых полей. Выражение вычисляемого поля, «помечающего» начало группы выглядит так:
If (GetRow() = First(GetRow() for group 1), 1, 0)
Дадим этому полю имя, например, GR. На это имя будет ссылаться второе вычисляемое поле.
Выражение вычисляемого поля, подсчитывающего нарастающий итог пометок и отображающего порядковый номер группы выглядит так:
CumulativeSum ( GR for all)
Чтобы не нарушать оформление, поле GR можно сделать скрытым."
"Зачастую возникают ситуации, когда в формах, допускающих группировку, требуется проставить порядковый номер в заголовке группы. Решение этой задачи состоит в том, чтобы с помощью одного вычисляемого «пометить» начало новой группы единицей, а с помощью другого – подсчитать и отобразить нарастающий итог этих пометок. Оба вычисляемых поля размещаются в области заголовка группы.
Приведем содержание вычисляемых полей. Выражение вычисляемого поля, «помечающего» начало группы выглядит так:
If (GetRow() = First(GetRow() for group 1), 1, 0)
Дадим этому полю имя, например, GR. На это имя будет ссылаться второе вычисляемое поле.
Выражение вычисляемого поля, подсчитывающего нарастающий итог пометок и отображающего порядковый номер группы выглядит так:
CumulativeSum ( GR for all)
Чтобы не нарушать оформление, поле GR можно сделать скрытым."
"Лучше меньше, да лучше" (C)