Значение в столбце в зависимости от категории

  • Автор темы Nash
  • Дата начала
N

Nash

Гость
#1
Подскажите, пожалуйста.
Допустим есть документ с многозначным полем, в котором есть два значения. Есть представление с первым столбцом, категоризированным по этому полю.
Соответственно, данный документ в этом представлении отображен два раза.
Вопрос, можно ли сделать так, чтобы в зависимости от того, в какой из двух категорий он сейчас отображен, во втором (третьем и т.д.) столбце отображалось то или иное значение? Т.е. формула этого столбца не отображала одно и то же поле, а отображалось определенное значение, которое зависит от того, в какой категории он находится.

Заранее спасибо.
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#2
Значение вычисляемое или из другого многозначного поля? Если второе (и число значений одинаковое), то просто указываете это поле, если первое, то можно указать формулу вида @Replace(CategoryField; "Cat1" : "Cat2"; "Value1" : "Value2"), этот столбец оставляете несортированным.
 
N

Nash

Гость
#3
Значение вычисляемое или из другого многозначного поля? Если второе (и число значений одинаковое), то просто указываете это поле, если первое, то можно указать формулу вида @Replace(CategoryField; "Cat1" : "Cat2"; "Value1" : "Value2"), этот столбец оставляете несортированным.
Смотрите, дело такое. В многозначном поле хранятся числа от 0 до 27. Соответственно их может быть одно либо несколько.
Допустим, в каком-то документе в этом поле хранятся числа 3, 13, 21.
Тогда категоризация должна быть такая (если в базе только один этот документ):

3
<Значение поля FieldName3>
13
<Значение поля FieldName13>
21
<Значение поля FieldName21>

Т.е. документ отображается один, а значения во втором столбце разные - того поля, которое должно отображаться в данной категории.
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#4
Если соответствующие значения полей FieldName... не могут быть пустыми, то во второй колонке пишем @Trim(FieldName1 : FieldName2 : ... : FieldName27).
 
N

Nash

Гость
#5
Если соответствующие значения полей FieldName... не могут быть пустыми, то во второй колонке пишем @Trim(FieldName1 : FieldName2 : ... : FieldName27).
Разве это не выведет в каждом из трех строчек, отображающих документ, одно и то же значение для всех трех категорий <Значение поля FieldName3>:<Значение поля FieldName13>:<Значение поля FieldName21> ?
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#6
N

Nash

Гость
#7
Nash
А Вы попробуйте. Только у второго поля не должно быть сортировки, флаг Show multiple values as separate entries — вкл.

Multiple values in multiple rows in multiple columns
Multiple values in view columns revisited: the effect of column order
Чтобы видеть этот контент необходимо: Войти или зарегистрироваться
Спасибо большое. Узнал что-то новое для себя. Только вот с моей задачей мне это не помогло. У меня там два первых столбика категоризированы. С одним работает ,с двумя - нет.
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#8
Спасибо большое. Узнал что-то новое для себя. Только вот с моей задачей мне это не помогло. У меня там два первых столбика категоризированы. С одним работает ,с двумя - нет.
Опишите задачу подробнее, что в каких столбцах должно выводиться, в каких полях хранится, может удастся по-другому реализовать.

Например, один категоризованный столбец с формулой CategoryField + "\\" + @Trim(FieldName1 : FieldName2 : ... : FieldName27)
 
N

Nash

Гость
#9
Опишите задачу подробнее, что в каких столбцах должно выводиться, в каких полях хранится, может удастся по-другому реализовать.

Например, один категоризованный столбец с формулой CategoryField + "\\" + @Trim(FieldName1 : FieldName2 : ... : FieldName27)
Да надобность по сути уже отпала.
А вообще задача следующая:
В зависимости от того, на какие из 27-и подразделений назначено выполнение поручения, в документе отображены подформы для данных подразделений. На каждой подформе названия полей отличаются числом в конце имени FieldName0, FieldName1,...,FieldName27. Среди полей есть поле со статусом выполнения и поле с ответственным за выполнение.
В итоге, если поручение назначено на три подразделения, то оно должно быть отображено в трех категориях. Т.е. первый столбец - номер подразделения. Второй столбец - тоже категоризирован - это статус выполнения. Более того, там не просто должен быть отображен статус именно для этого подразделения, а в случае, если выполнение просрочено, должна быть запись "Просрочено". Т.е. сравнивать сегодня и Дедлайн именно для этого подразделения. Т.е. второй столбец обязательно должен быть категоризирован. А в третьем столбце - просто значение поля в зависимости от подразделения.
 

nvyush

Well-Known Member
Lotus team
22.04.2009
2 317
0
48
Подмосковье
#10
Т.е. первый столбец - номер подразделения. Второй столбец - тоже категоризирован - это статус выполнения. Более того, там не просто должен быть отображен статус именно для этого подразделения, а в случае, если выполнение просрочено, должна быть запись "Просрочено". Т.е. сравнивать сегодня и Дедлайн именно для этого подразделения. Т.е. второй столбец обязательно должен быть категоризирован. А в третьем столбце - просто значение поля в зависимости от подразделения.
Если без "просрочено", то первые два столбца объединяем в Podrazdelenie + "\\" + @Trim(Status1 : Status2 : ... : Status27), третий, соответственно, @Trim(FieldName1 : FieldName2 : ... : FieldName27).
 
N

Nash

Гость
#11
Если без "просрочено", то первые два столбца объединяем в Podrazdelenie + "\\" + @Trim(Status1 : Status2 : ... : Status27), третий, соответственно, @Trim(FieldName1 : FieldName2 : ... : FieldName27).
Все-таки надо с "просрочено". Да и говорю, необходимость отпала.
Все равно, огромное Вам спасибо!
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 435
351
homepage.mac.com
#12
списки, в колонках, отображаются соответственно...
т.е. низя оттобразить значений в одной колонке меньше, чем в соседней (за исключением единственного)
др. словами - два списка в колонках должны иметь одинаковое кол-во мемберов