Working with Table

You can present project data neatly with the use of table. In this section we will introduce the various kinds of table you can create in a Doc Base, and explain how to create such tables by writing Doc Fields. We assume that you have the basic knowledge of Doc Field. If you don't, please read the previous sections.

Let's begin by studying the following example, which consists of a table in a Doc Base, with an ${ELEMENT} Doc Field placed in the second row of the table.

Use Cases in Project
${ELEMENT, "List of Use Cases", UseCase, LoopInProject, PROPERTY=name}

 

Suppose the Doc Base is applied on a project that contains the design specification of an ATM. Here is the sample outcome:

Use Cases in Project
Withdraw Cash
Transfer Cash
Donate Money
Pay Bills

Based on the outcome, you can see:

  • The row that contains the Doc Field replicate itself to list out all the elements queried.
  • In each row, the name of use case is output, which is the result of using PROPERTY=name in the Doc Field.

While this example output the name of use case, you can output complex content with the use of an element template. You just need to replace PROPERTY=name with the name of that template.

The example above is perhaps a bit simple. Let's extend it to make it a bit more complicated and closer to practical usage. Let's study this table:

Use Cases in Project IDDescription
${ELEMENT, "List of Use Cases", UseCase, LoopInProject, PROPERTY=name}
${PROPERTY, "userID"} ${PROPERTY, "description"}
(to be confirmed)

We have added two more columns into the table, one for displaying the ID of use cases and another for displaying the description of use cases. Again, if we apply the Doc Base on an ATM project, here is the sample outcome:

Use Cases in Project ID
Description
Withdraw Cash
UC01
Get cash from the ATM.
(to be confirmed)
Transfer Cash UC02 Transfer cash from one account to another.
(to be confirmed)
Donate Money UC03 Donate money to a chosen charity
(to be confirmed)
Pay Bills UC04 Settle bills
(to be confirmed)

Based on the outcome, you can see:

  • In order to output multiple properties of an element, add extra columns into the table and use ${PROPERTY} to output those properties.
  • You can format table content, like the green text you see above.
  • You can add your own text into table cells.

You may also want to present the icons of querying element. The following example gives you some ideas how to achieve it.

Model Elements in a Class Diagram Or if you want a column of icons
${ELEMENT, "List of Model Elements", , LoopInDiagram, ICON} ${PROPERTY, "name"}
${ICON}

Here is the sample output when applying the above Doc Base on an ATM project, with a class diagram chosen to be the source of elements to query.

Model Elements in a Class Diagram Or if you want a column of icons
 Account
atm
Transaction
User

You may also output diagram images using ${IMAGE}. Here is an example:

All Diagrams in Project
Diagram Image
${DIAGRAM, "All Diagrams", , LoopInProject, PROPERTY=name}
${IMAGE}

Here is the sample output when applying the above Doc Base on an ATM project.

All Diagrams in Project
Diagram Image
ATM Use Case Model

Domain Class Model  
NOTE: ${PROPERTY}, ${ICON} and ${IMAGE} can only be used inside a table cell.

Related Resources

The following resources may help you to learn more about the topic discussed in this page.

 
12. Using Custom Text Table of Contents 14. Managing Doc Templates in Team Environment

We use cookies to offer you a better experience. By visiting our website, you agree to the use of cookies as described in our Cookie Policy.OK