На повестке дня) два вопроса

  • Автор темы stonew1987
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

stonew1987

Гость
#1
@PickList - расскажите поподробней о её таком плюсе, как загрузка всех сталбцов независимо от формулы?
как загружать отдельный столбец знаю))))
@IsCategory расскажите о ней))) и как её использовать?\

и как реализовать такую иерархию(каждое изделие включает в себя некоторые комплектующие и изделия нижнего ранга)

Представление:
>изделие
....комплектующее
....>изделие
..........комплектующее
..........комплектующее
....комплектующее
....комплектующее
....>изделие
..........комплектующее
..........комплектующее
..........>изделие
.................комплектующее
.................комплектующее
..........
Заранее огромное спасибо
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#2
по поводу иерархии... тебе просто нужно иметь три формы:
1) изделие (document);
2) изделие (response to response);
3) комплектующее (response to response);

для первых двух делаешь подформу, которая будет реализовывать общий для них механизм, т.е. тебе не придется дублировать код для них.
таким образом ты сможешь создать аналогичный к первому, но ответный к нему документ. а на форме 2 можно добавить полей, которые будут какие-то важные сведения о документе родителе содержать...

по поводу собак в хэлпе все написано
 
S

stonew1987

Гость
#3
по поводу собак в хэлпе все написано
Вот что там написано @PickList( [Custom] : [Single] ; "" : "" ; "(IzdelView)" ; "Выбор родительского документа" ; "";2 )
но меня унтересует ""загрузка всех сталбцов независимо от формулы""
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
по поводу иерархии... тебе просто нужно иметь три формы:
1) изделие (document);
2) изделие (response to response);
3) комплектующее (response to response);
Это сложнее реализовать, да и глубина вложенности минимальна(((
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Представление:
>изделие
....комплектующее
....>изделие
..........комплектующее
..........комплектующее
....комплектующее
....комплектующее
....>изделие
..........комплектующее
..........комплектующее
..........>изделие
.................комплектующее
.................комплектующее

Остаётся вопрос открытым
Я пытаюсь сделать через, к примеру, пока 10 зафиксированных столбцов,
В форме есть поле(с множественными переменными) в нём по сути должна храниться вся иерархия
а в столбцах пока поле[1], поле[2] ......
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
2
36
Россия, Калуга
#4
Вот что там написано @PickList( [Custom] : [Single] ; "" : "" ; "(IzdelView)" ; "Выбор родительского документа" ; "";2 )
но меня унтересует ""загрузка всех сталбцов независимо от формулы""
Непонятно. Какой формулы, какая загрузка?

Это сложнее реализовать, да и глубина вложенности минимальна(((
Почему сложнее? Такую иерархию можно реализовать только через response. При необходимости можно использовать финт DEFAULT $Ref = ..., но суть всё равно та же.
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#6
кхм... боюсь, что ты не понимаешь того, что такое ответные документы в лотусе, и как строить для них представление...

если мне память не изменяет, то ты сможешь создать до 32-36 уровней ответных документов (вложенности).
форма 1 позволит тебе создать основной документ, корневой.
форма 2 - ответный к нему, т.е. вложенный, а также вложенный к этому вложенному.
форма 3 - ответный к любому из документов.

т.о. то, что тебе надо очень даже реализуемо.

теперь о @PickList... я не зря упомянул о справке. @PickList не имеет такого "плюса" как ""загрузка всех сталбцов независимо от формулы""

если тебе надо достать несколько значений из документа, который выбирают @PickList'ом, то для этого придется воспользоваться доп. конструкциями.

к примеру, можно сделать вид, в котором в первом столбце (скрытом от пользователя) будет unid документа, который и будет получать @PickList, потом по этому униду мы можем достать значения полей, либо воспользовавшись @GetDocField, либо связкой @DbLookup + специальный вид...

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

т.е. варианты реализации есть...

исользуйте вложенные представления
ну что за глупости? :) это ж только будет перегружать интерфейс
 
S

stonew1987

Гость
#7
Спасиб, будем думать над этим, как появятся новые вопросы, отпешусь)))
 
S

stonew1987

Гость
#8
Вопрос:
Я не очень понял по поводу
@IsCategory
@IsCategory( trueString )
@IsCategory( trueString ; falseString )
Написано: Используется в формуле столбца, возвращает указанную строку, если любой элемент в строке представления определен как категория.

Расскажите о ней подробнее, а то мне не понятно её применение :)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#9
та мутная формула ;)

@IsCategory
возвращает *, если в строке вида (в столбцах справа от столбца, вызывающего функцию) есть категории
если строка не категория, а документ, то возвращает пустую строку

@IsCategory( trueString )
аналогично, только вместо * возвращает значение trueString

@IsCategory( trueString ; falseString )
аналогично, только вместо * возвращает значение trueString,
а вместо пустой строки falseString...

функцию нужно обязательно лепить левее от столбца в котором может быть категория...

я вот только не пойму, если документ содержит ответные, т.е. является и документом, и категорией, то что она вернет :))
 
S

stonew1987

Гость
#10
Akupaka понимаешь какая штука, я препаду про отклики втирал, ток он говорит, что через отклики не надо делать, и сказал мне поколдовать с функцией @IsCategory, я над формой тружусь сейчас)))
А возмодно такое чтобы в одном столбще отображалить и категории и документы? А длина столбцов всего 3, надо както сделать чтобы при этой длине поле полностью отображалось))) т.е. залезало на другие столбцы как это делает категория)))
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#11
О_о не очень представляю что нужно получить :)

короче гря, если у документа есть ответный, то он будет выглядеть как категория
 
S

stonew1987

Гость
#12
Как лучше и проще посчитать количество документов в представлении?
Спасибо
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#14
можно потыкать пальцем
можно выделить галочками, если в представлении отображаются только доки, без категорий, то Ctrl + A, в статусе смотришь кол-во
можно сделать столбец-Totals, в котором можно отображать 1, если это документ (например по наличию формы @If(@IsAvailable("Form"); 1; 0))
тогда в сумме этого столбца будет кол-во доков...

если программно, то смотри свойства NotesView
.AllEntries
.EntryCount
.TopLevelEntryCount

правда, я не помню, включает ли EntryCount категории или только документы...

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

.EntryCount вернул только документы, без категорий

еще если посчитать кол-во доков нужно из открытого вида, то можно сделать агент, который запускается на всех доках вида и получить кол-во через NotesDatabase.UnprocessedDocuments.Count
 
S

stonew1987

Гость
#16
А как лучше организовать глобальную переменную?
И о Shared Code\ Field, Columns
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
2
34
Kiev, Ukraine
#17
ну, однозначного ответа нет, т.к. уровней глобальности несколько и каждый случай требует по-своему глобализировать переменные, хотя вообще глобальные переменные не всегда хорошо, тем более те, у которых не очень уникальные имена, типа db, doc и т.п.

об остальном читай книжки и справку, там все написано...
 
Статус
Закрыто для дальнейших ответов.