Internal Tool builder

What are internal tools?

An internal tool is any software used by an organization to support and manage its internal activities and workflow. Customers or other external parties typically do not have access to such tools, only employees and other selected users.

These software can run on the organization's LAN (preventing any external access) but can also be hosted on a public Web server / cloud service (in this case external users typically see only the login page and can't access without proper credentials).

Examples of internal tools are: CRMs, Inventory applications, Admin panels, Dashboards, Support/help ticketing management, Approval applications, Sales management applications, Simple database front-ends, Knowledge management digital archives and many others.

Why is internal tooling so important today?

Organizations have always used internal apps; however, in the last few years the digital transformation and automation of the internal processes have been speed up and therefore the needs for (digital) internal tools has increased.

In this scenario, particularly important is also the possibility to integrate an internal app with the existing elements of the information system (see integration later).

What is an internal tool builder?

As the name suggests, an internal tool builder is a software that allows you to easily and fast develop & deploy internal tools, with little or no coding (low-code, no-code).

Building Internal tools with DaDaBIK

Internal tools are the best candidate for DaDaBIK. While DaDaBIK has been used to build many different kinds of data-driven Web applications, including applications for the general public, in most of the cases our customers use it to build internally-facing software.
Internal tools are very often data-driven applications built around a database and that's what DaDaBIK can easily build since its very first releases.

How can you build such tools with DaDaBIK, in practice?

There are four basic steps.

  1. Define your data structure within DaDaBIK. With a simple graphic interface, you create the tables you need to store data (e.g. you create a "customers" table to store your customers' data). You can also connect DaDaBIK with your existing database, if you already have one, or import your Excel / CSV files.
  2. Configure your forms. You normally need forms that allow users to interact with your app. Some standard forms are automatically created by DaDaBIK according to your data structures but you probably want to customize them, e.g. decide the label for each field, set validation rules and much more. DaDaBIK has a form configurator for that.
  3. Set permissions. Maybe you need to hide certain fields to certain users or allow certain operation (e.g. delete) only to certain users. For each table and field, a simple graphic interface allows you to set granular permissions.
  4. Add some additional logic using code, if needed. You can add additional PHP/Javascript code to cover your specific needs in several ways:
    • Buttons: you can add buttons in many parts of your application; a button can trigger the execution of some custom code
    • Hooks: A DaDaBIK hook allows you to write some custom PHP code to be executed under certain circumstances, for example after a specific data operation (something like: execute this code after the deletion of a product) or after having displayed a specific element of the layout (something like: add this note after a product heading, but only for some specific users)
    • Custom validation, formatting and conditional field functions, calculated field functions: for example you can set a field as "calculated" and write your own code to determine the value that the field will take.


Can I integrate an internal tool created with DaDaBIK with other internal applications available in my information system?

You have several methods you can use to integrate your DaDaBIK app with the rest of your information system:

  • Database integration. DaDaBIK can use, as the source of an application, an existing database (MySQL, PostgreSQL, SQLServer, SQLite are supported).
  • MS Excel / CSV. DaDaBIK can import, as data source, an existing Excel / CSV / ODS file. You can also synchronize the content of a table with an existing file (new records will be added, existing records will be updated).
  • HTTP API. external applications can access the data managed by a DaDaBIK application through HTTP APIs. Those applications can be developed using any kind of technology, they can access your DaDaBIK app simply by calling an URL (and including some parameters), DaDaBIK replies with a JSON document.
  • Hooks. Hooks (see previous paragraph for details) can also be used as an integration tool. Let's say that when you delete a record (for example, a customer) using the internal tool A (created with DaDaBIK) you also want to remove all the related information, available in another database, managed by another tool B (maybe NOT created with DaDaBIK): an after delete hook allows you to do that, specifying the (additional) delete queries to execute or calling some API delete methods that tool B provides.

Want to know what users say about DaDaBIK? Check the reviews

Questions about using DaDaBIK as an Internal Tool Builder or about DaDaBIK in general? Contact us, and we'll be in touch.