Binders

This application helps you to organize and share your data.

No account, no subscription, no ads.

Your data privacy is respected.

Support is available 7-days-a-week.

Backup your binders regularly.

Android device binders are deleted if the application is uninstalled.

The desktop application is available on the Web site.

Each binder is a database.

You can create as many binders as you need.

Look at examples and how they work.

If you don't find a simple solution, contact us.

A binder can have many form types.

Form types

Forms are defined by their form type which you can modify according to your needs.

Fields

A form type can have as many fields as necessary.

A field can have a type of value or linked forms.

To add many pictures to a form, add a linked forms field to a new dependent form type with a picture field.

Tutorial: binder “fields”.

Possibility

The value is a choice of one or many cases.

Use the Case constant value function to read the case configured number.

Constant value

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Case from a number

Result: the case with the chosen constant value.

Requires a single value.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Example: if <condition A> then <term if A is true> else if <condition B> then <term if B is true> else <term if A and B are false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Number

Number fields with configured minimum and maximum values can display a slider bar.

The field width depends on the configured maximum value.

Available functions

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Total

Result: the total of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Minimum

Result: the minimum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Maximum

Result: the maximum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Average

Result: the average of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Operations

Result: the calculated value of the operations.

If a term has many values, they are summed.

Hidden fields can be used for intermediary results.

Use an Operations function for parenthesis.

Rounded value

Result: the rounded number.

Text value

Result: the number from the text.

Requires a single value.

Date value

Result: the numeric value from the date.

Minutes between dates

Result: the number of minutes between the dates.

Returns an integer number.

Days between dates

Result: the number of days between the dates.

Returns an integer number.

Months between dates

Result: the number of months between the dates.

Returns an integer number.

Years between dates

Result: the number of years between the dates.

Returns an integer number.

Days of a duration

Result: the number of days of the duration.

Returns a number with decimals.

Hours of a duration

Result: the number of hours of the duration.

Returns a number with decimals.

Latitude

Result: the latitude of the GPS position.

Requires a single value.

Longitude

Result: the longitude of the GPS position.

Requires a single value.

Distance between GPS positions

Result: the distance in meters between the GPS positions.

Text length

Result: the length of the text.

Text position

Result: the position of the second text in the first text.

Uppercase letters are ignored.

The value is always positive.

Case constant value

Result: the constant value of the case of the field.

Use the Case constant value function to read the case configured number.

Number of cases

Result: the number of cases of the field.

Form identification code

Result: the form identification code.

Random number

Result: a random number.

The Calculated and stored option is recommended.

Power

Result: the power of the number.

Square root

Result: the square root of the number.

Requires a single value.

Opposite number

Result: the opposite value of the number.

Requires a single value.

Inverse number

Result: the inverse value of the number.

Requires a single value.

Absolute value

Result: the absolute value of the term.

Requires a single value.

Modulo

Result: the remainder of the Euclidean division.

Increase

Result: the number plus the percentage.

Decrease

Result: the number minus the percentage.

Difference

Result: the percentage between the numbers.

Pi

Result: the Pi constant.

Sine

Result: the sine of the term.

Requires a single value.

Cosine

Result: the cosine of the term.

Requires a single value.

Exponential

Result: the Euler's number e raised to the power of the number.

Requires a single value.

Logarithm

Result: the logarithm of the number.

Requires a single value.

Number of forms

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Number of all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Example: if <condition A> then <term if A is true> else if <condition B> then <term if B is true> else <term if A and B are false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Text

Use a text field if no other field suits.

Style markups allow to add colors in text like ...|bold on yellow|important text|....

You can add custom markups in the binder configuration.

Available functions

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Text part

Result: the part of the text.

Example: the first character if begin=0 and end=1.

Concatenation

Result: the gathered texts.

Random

Result: a randomly generated password.

Spaces

Result: an empty text or with spaces.

Number

Result: the text from the number.

Date

Result: the text from the date.

ISO date

Result: the ISO text from the date.

Week day

Result: the day of the date.

Spelled number

Result: the spelled number text.

Example: dollar, cent, 100.

Multilingual text

Result: the text from the multilingual text.

Case name

Result: the case name of the field.

Duration between dates

Result: the duration between the dates.

System variable

Result: the value of the system variable.

Replacements

Result: the text with the replacements.

Style markups cleaning

Result: the text without any style markups.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Example: if <condition A> then <term if A is true> else if <condition B> then <term if B is true> else <term if A and B are false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Shortcut type

Shortcuts allow to open external applications.

Large documents (PDFs, images) can be in a cloud storage and accessed from shortcuts.

File paths are restricted by Android security rules.

Shared references allow to navigate between forms of many binders with the same value.

Device contact fields allow to choose and open contacts but Android security blocks data access.

Style markups

Format: ...|markup|text|....

Example: |on yellow|text|.

Example: |italic white on black|text|.

Words:

bold

italic

on

white

black

red

green

blue

orange

yellow

purple

pink

brown

magenta

azure

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Date

The precision can be up to milliseconds.

Android notifications are scheduled when the application is in background.

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Minimum

Result: the minimum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Maximum

Result: the maximum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Now

Result: the current date.

The Calculated and stored option is recommended.

Addition

Result: the date plus the duration.

Subtraction

Result: the date minus the duration.

Mixed date

Result: the date calculated from the terms.

The default date is now.

Binder last change

Result: the binder last modification date.

Form last change

Result: the form last modification date.

Form creation

Result: the form creation date.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Duration

The precision can be up to milliseconds.

Highest durations are at most in days.

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Total

Result: the total of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Minimum

Result: the minimum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Maximum

Result: the maximum of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Average

Result: the average of terms.

Requires at least one value.

Hidden fields can be used for intermediary results.

Between two dates

Result: the number of seconds between the dates.

The value is always positive.

With daylight saving time, a day may last 23h or 25h.

Operations

Result: the calculated value of the operations.

If a term has many values, they are summed.

Hidden fields can be used for intermediary results.

Use an Operations function for parenthesis.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Picture

Default picture width is 600 pixels.

Ten pictures take about 1Mb.

The both storage and display sizes can be configured.

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

GPS position

The maximum precision is 6 decimals (11 cm).

A binder can be exported to a GPX file.

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Field from the current form

Result: the value of the last field of the path from the current form.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from the previous form

Result: the value of the last field of the path from the previous form.

The sort order is important to determine which form is the previous one.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Field from all forms

Result: the value of the last field of the path from forms of a type.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

Here

Result: the current GPS position.

The Calculated and stored option is recommended.

Condition

Result: a specific term if a condition is true or false.

Example: if <condition A> then <term if A is true>.

Example: if <condition A> then <term if A is true> else <term if A is false>.

Constant value

Result: the configured constant value.

Can be used as a default value for a field.

Empty field

Result: true if the field is empty.

Current form possibility equal

Result: true if the field has the chosen case.

The calculation is ignored if a field is empty.

The forms list can be filtered and sorted.

If the field has many choices, use logical functions to check each of them.

Contains text

Result: true if the terms match.

Current form equal

Result: true if the form is the same one as the calculation.

Not

Result: true if the term is false.

Requires a single value.

And

Result: true if all terms are true.

Or

Result: true if at least one term is true.

Strong password

Result: true if the value is a strong password (at least one digit, one sign, one uppercase letter, one lowercase letter).

Week day

Result: true if the date is one of the chosen days.

Current form subtype equal

Result: true if the form has the chosen subtype.

Comparison

Result: true if the comparison is true.

Requires two values.

Comparison

Result: true if the comparison is true.

Requires two values.

Comparison

Result: true if the comparison is true.

Requires two values.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Alternative value

Result: the first term else the second term and so on.

Example: <Number field maybe empty> else <Constant value 1>.

Calculation types

● Entered else calculated: result or default value (Common case).

● Calculated and stored: during the form creation.

● Calculated on demand: recalculation button.

● Calculated else entered: remplacement value (Rare case).

Converted field

Some fields can be converted to another field type.

Some conversions are not reversible.

From a linked form

A field can be moved from a linked form type.

Sort order

To compare two forms and determine which one is the first.

Custom order allows user to manually change forms order.

Huge forms lists are displayed faster with the No sort option in the form type settings.

List statistics are not available if the form type has the No order option.

Editor

A linked forms list can be displayed in its own page.

Forms or some fields only can be directly entered in a list with the Embedded option.

Form subtypes

You can distinguish some forms with the same type.

Example: a person form type with man and woman form subtypes.

Tutorial: binder “form subtypes”.

Form parts

Fields can be grouped with a form part.

Tutorial: binder “form parts”.

Validation rules

Validation rules allow to calculate if a form is valid or not.

Organization

Each form can be filled and linked to others.

Example: an address is linked to a city which is linked to a country.

Some forms can depend on others, like an invoice line depends on an invoice.

If an invoice is deleted, its lines are deleted too.

A possibility field suits for a changing state (unpaid/paid).

Form subtypes suit for a changeless state (type of invoice).

Relational databases

Unlike a relational database, you don't have here to manage keys and joins.

You can organize your data naturally with multiple links between forms.

It's a design tool which works with real data.

You can use powerful features as cascade deletion, table inheritance, validation rules, constraints and calculated fields.

Linked forms

Two linked form types have both linked form fields.

These two field are configured to link only one or many forms.

The forms filter allows to set the available forms.

Display

Binders can be grouped in categories.

An empty field can be configured to be hidden.

Fields can be grouped with a form part.

A field can be always hidden.

A field can be visible only for some form subtypes.

Validation

Validation helps you to manage missing or incoherent data.

Example: if a number field value is greater than the defined maximum.

Validation rules allow to calculate if a form is valid or not.

Deletion

User deleted forms can be restored from the Search Recycle bin page.

The recycle bin can be emptied using Clear history in the binder menu.

Dependency

Some forms can depend on others, like an invoice line depends on an invoice.

If an invoice is deleted, its lines are deleted too.

The dependent forms are hidden in the binder main page but you can show them with the View all option.

Binder size

Clear history allows to reduce the binder size (the database is rebuilt).

Performance

Huge forms lists are displayed faster with the No sort option in the form type settings.

Use the Calculated and stored option to skip useless calculations.

Import

Your data can be imported from CSV or XML files.

Configure the fields type to create and fill.

You can configure how a linked form is found from a column value.

Key fields are used to find existing forms to update.

Advice: to import forms of an existing type, export with the reimport option first.

Example: to import customers and invoices files, import the customers first with the customer code as key and then the invoices with the customer code as linked form.

Export

Your data can be exported in many file types: PDF, WordML, CSV, XML ,JSON, ....

Each file type has own limitations, like asian languages support for PDF.

WordML DOC files require Microsoft Word.

PDF export

If a column is not wide enough, you can hide, reduce other columns or use the Second line option.

Example: a number field with a configured maximum has a reduced width.

Tutorial: binder “PDF”.

Calendar export

All forms with a date can be exported to a dedicated calendar.

If the calendar application has issues (Xperia), use another one (Google).

Period

Used for searching, filtering and exporting to calendar.

Android Intent

You can add or read form data using an Android Intent.

Net.generism.linoteforandroid.CommandActivity.

The field values follow the CSV columns format.

For Tasker, configure Extra with line:key=value key="value 2" ....

To read the nearest form from a given location.

"command"="exportForm", "binder"="world atlas", "formType"="country", "sortField"="capital coordinates", "sortDirection"="near", "sortLatitude"="48.878431", "sortLongitude"="2.364428".

To add a form.

"command"="importForm", "binder"="world atlas", "formType"="continent", "name"="atlantis".

Command line

You can export a binder to XML file using a command line.

--command="exportBinderXML" --binder="world atlas" --folder="C:\".

Synchronization

It is important to keep backup copies.

Binders are synchronized between two folders.

Only the newest version of each binder is kept.

Synchronization never deletes binders.

Some Cloud providers require to create binders on Android first to be visible.

A Generism sub folder is automatically created in cloud folders.

Binder files have .gnbp extension.

Renaming a binder file creates a duplicate during synchronization.

You can check cloud files with the dedicated application.

Between a device and a computer

1 - If there is no cloud folder in the computer file explorer, install the cloud application.

2 - Add a binder on the device.

3 - Synchronize on the device.

4 - Wait for the cloud update.

5 - Go with the the file explorer in “Generism” cloud subfolder.

6 - Run “Binders.bat”.

7 - Modify the binders on the computer.

8 - Wait for the cloud update.

9 - Synchronize on the device.

Between two devices

1 - Add a binder on the device A.

2 - Synchronize on the device A.

3 - Wait for the cloud update.

4 - Synchronize on the device B.

5 - Modify the binders on the device B.

6 - Synchronize on the device B.

7 - Wait for the cloud update.

8 - Synchronize on the device A.

Copyright © 2013-2021 Generism. All Rights Reserved.