Skip to content

Reviewing Information in a Case

Info

New in Atfinity 18.

A review information lets a user approve, decline or raise open points on other information of an instance.

Build the layout

The layout of a review holds information of the review's own ontology and text items with review instructions, on four columns. An information takes one column, while a text item and a structure take the whole row, and no item can be resized or followed by a line break. Each information appears in a review once, and the information inside a structure is reviewed through the structure rather than on its own. A review cannot hold another review, and an information inside a review cannot become a review or a structure. Moving an information to another ontology takes it out of every review, moving a review to another ontology takes every information out of its layout, and changing a review to another type deletes its layout.

A text item can have a condition, which shows it only on the instances it holds for. The condition reads the review's own instance as self, as in self.is_pep, and cannot declare instances.

The case shows the values in the review read only, with files as a link that downloads them and an SVG picture as a thumbnail. An information does not need to be on a tab to be reviewed, and reviewing it changes nothing about how it is shown elsewhere.

Put Live refuses a review with an empty layout or a default value.

Make it appear in the case

Place the review on a tab, where it always takes the full width, and require it with a rule whose action is Require Information, for example p.passport_review on p is Person.

The review does not require the information it holds, and covers only the information already part of the case for that instance.

A user can decide a review when a tab showing it for that instance gives them read and write access and is not read only, and the case allows editing information. On a review decided per information, the review's own buttons set that decision on every information in it at once.

No rule can assign a review, and an API call decides one only when it acts as a user.

When a decision is reset

A decision is reset when an information it covers changes, whether a user, a rule, an integration or an API call changed it. A review decided as a whole loses its decision. A review decided per information loses only the decisions of what changed: the information itself, or for a structure, the changed component of that occurrence. Removing an occurrence of a structure removes its decisions.

The value change history of the review records each reset as a change of the review.

Read it in rules and documents

A review reads as a dictionary holding decision, decided_by and decided_at. decision is approved, open_points or declined, and decided_by is the email address of the user who decided.

p.passport_review.decision = 'approved'

A review decided per information also holds per_information_decisions, with the same three values for each information decided so far, and a list with one entry per occurrence for a structure. Its own decided_by and decided_at are those of the latest decision on any of them, and until it has a decision of its own, per_information_decisions is all it holds:

p.passport_review.per_information_decisions.date_of_birth.decision
p.passport_review.per_information_decisions.real_estate[0].city.decision

A review nobody has decided is unknown. RuLa refuses a reference to a key the review does not have, or to an information it does not cover.

A document box prints the review's own decision, decided_by and decided_at, the decision as its key, such as approved, and nothing while the review has no decision of its own.

Where a review cannot be used

A review cannot be placed in a wizard, inside a structure, as linking information, or on a page, in a column, filter or widget. It cannot be calculated, read by an SVG template or searched, and once live, no information changes its type to or from review.

Decisions stay in their case. They are never copied into the approved data of an instance, so a later case on the same instance starts undecided, and so does a copy of a draft case.