L
LuMee
Можно ли в формуле значения по умолчанию для поля документа-ответа получить доступ к документу-родителю? Проблема в том, что поле $Ref почему-то в момент вычисления значения по умолчанию оказывается пустым.
1. Это редко требуется, так как в момент создания ответного документа наследуются значения родительских полей и используются в вычислении Default-значений, если галка в поле стоит Formula inherit values from selected document. (При всех последующих вычислениях используются значения текущего созданного документа!!)Можно ли в формуле значения по умолчанию для поля документа-ответа получить доступ к документу-родителю? Проблема в том, что поле $Ref почему-то в момент вычисления значения по умолчанию оказывается пустым.
1. Проблема в том, что значения наследуются именно из выбранного документа, а во вьюхе присутствуют документы нескольких типов (ответы на данный ответ). Какой будет выбран - заранее неизвестно1. Это редко требуется, так как в момент создания ответного документа наследуются значения родительских полей и используются в вычислении Default-значений, если галка в поле стоит Formula inherit values from selected document. (При всех последующих вычислениях используются значения текущего созданного документа!!)
2. Но если все же это нужно, то @InheritedDocumentUniqueID вернет нужный UNID
1. Если нужно создавать ответ всегда только к главному документу, то надо выбрать тип Response (а не Response-to-Response). Тогда новый документ автоматически прицепится к корню ветки.во вьюхе присутствуют документы нескольких типов (ответы на данный ответ)...
@InheritedDocumentID ... вернет UNID выбранного документа, коим не обязательно будет нужный мне родитель
Одним словом, придется и впрямь все руками на LS собирать
@If(Form="myform"&MyField="MyText";
@Command([Compose];"MyResponse";
@Prompt([OK];"Ошибка";"Ошибка"))
1. форма у меня делает именно Response, однако документ все равно цепляет значения у того документа, который был выбран в этот момент во вьюхе. Конечно, он делается ответом на то, что надо, однако значение поля вычисляется корректно лишь если был выбран док верхнего уровня1. Если нужно создавать ответ всегда только к главному документу, то надо выбрать тип Response (а не Response-to-Response). Тогда новый документ автоматически прицепится к корню ветки.
2. Если ответ должен прикрепляться к другому ответу вполне определенного вида, то делается действие3. @InheritedDocumentUniqueID вернет, конечно, UNID документа курсора, ну а у этого документа, конечно, будет собственное поле $Ref, значение которого можно получить, если потребуетсяКод:@If(Form="myform"&MyField="MyText"; @Command([Compose];"MyResponse"; @Prompt([OK];"Ошибка";"Ошибка"))
LS это в данном случае излишество, как мне кажется
Печально это все.(в 5ке ведь даже @While нет, чтобы быстро "добежать" по $Ref'ам до вершины иерархии)
Цикла в 4-ке/5-ке нет, зато есть рекурсия.ориентироваться на $Ref в общем случае сложно (в 5ке ведь даже @While нет, чтобы быстро "добежать" по $Ref'ам до вершины иерархии)
Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab