Questions, discussions, news and updates regarding the Thinkwise Platform.
Recently active
Previously, you always had to have a form component on your screen to be able to add new rows. This is no longer necessary, because the grid now also supports adding new rows. This feature is released with version 2018.2 of the Thinkwise Platform (Windows GUI only). What’s new?When adding new rows is enabled for a grid, an empty ‘add row’ is displayed at the top of the grid. Be aware that only the values of columns that are visible in the grid can be filled in. The ‘add row’ is positioned directly under the grid column header, so it is clear which input field belongs to which column. It is also possible to only show the ‘add row’ while adding or copying. This can be configured in the Software Factory. A new row can be created by clicking on a cell of the ‘add row’ or on the ‘Add’ (Ctrl+Plus) or ‘Copy’ (Ctrl+Alt+Plus) buttons in the ribbon. If the screen type has both a grid and a form, make sure the grid has the focus! After filling in the mandatory values for the new row, it can b
The icons you use in your applications for tables, prefilters, tasks and reports often show up in multiple locations in the application, like the menu, tab pages, the ribbon, button bars and the context menu. These locations require different icon sizes, and the user interfaces would scale the supported Bitmap (.bmp) or Portable Network Graphics (.png) icons to the required size. This, however, causes the icons to become blurred. With the latest release of the users interfaces we’ve added support for two new image formats to solve this problem. Scalable Vector GraphicsScalable Vector Graphics (.svg) are images based on vectors instead of pixels, allowing them to be scaled to any size without getting blurry. Another advantage of SVGs is that, because SVGs are XML-based, it is easy to adjust the properties of the image. In the Universal GUI, for example, we will be able to adjust the color of an icon to the background, so that it will always be clearly visible. This is also why
With the introduction of Europe’s General Data Protection Regulation, it is more important than ever for companies that their IT environment is secure and meets the legal requirements for privacy protection. To help our customers comply with this new legislation, we added a new feature “Data sensitivity” to the Thinkwise Platform to automate the anonymization of personal data in any Thinkwise application. This feature can not only be used for personal data, but also for other sensitive data like passwords or credit card numbers. With this new feature, we enable you to set the sensitivity for each data column of your application in the “Data sensitivity” modeler. View-columns, calculated fields, and identity fields are not data columns and therefore are not shown. A prefilter is provided to suggest which columns are sensitive, based on keywords or because columns with the same name or domain are also marked sensitive. For sensitive columns, it is mandatory to select an anonymi
Starting from version 2018.2, the Mobile GUI is equipped with one of the most requested features: barcode scanning. This cool new feature allows you to fill in fields by scanning a barcode or QR code with the camera of your mobile device! How does it work?To enable this feature, set the Control of the field you want to fill to “Barcode scanner (mobile)”. The field can have any datatype, but will be displayed as a text field with a scan button in it. When you click the button, the camera is opened with an overlay indicating the scan area. Once the barcode scanner recognises a barcode or QR code inside the scan area, the encoded number or text will be instantly inserted in the barcode field. TechnologyThe barcode scanner control uses the Phonegap Barcode Scanner plugin: https://github.com/phonegap/phonegap-plugin-barcodescannerThe following barcode types are currently supported: External barcode scannersA couple of Thinkwise customers already use external barcode scanners. Th
The previous article showed an overview of the Next Generation Thinkwise Platform. In this article, we’ll zoom in a bit more on the Indicium Application Tier and explain our vision for Indicium’s architecture and its key features and properties. ArchitectureTwo of the core concepts of Indicium’s architecture are extensibility and modularity. It is our goal to make it easy to extend Indicium by plugging in custom components that adhere to predefined interfaces. At the same time, we also want to make many of Indicium’s standard components modular. This makes both adding custom components and omitting standard components easy, allowing you to create a tailored version of Indicium that meets all your requirements without having any unnecessary features. Another goal of Indicium’s architecture is maintaining cross-platform support for Indicium’s core services. The modularity of Indicium’s architecture makes this possible by allowing the inevitable platform-specific components to be ad
Technological innovations follow each other at an ever-faster pace, and the challenge to keep up with this digital transformation is increasing. It is set in motion by the rise of the 3rd Platform; the inter-dependency between social, mobile, cloud and analytics. The 3rd Platform architecture is transforming IT much faster than the first (mainframe) and second (client/server) platforms ever did, changing the way people interact with technology and disrupting existing business models across industries. Digital Transformation and the 3rd platform To help our customers keep up with this digital transformation and maintain their competitive advantages, we are investing heavily in improving the Thinkwise platform as a 3rd Platform development tool, in which the new Thinkwise application tier (“Indicium”) plays a crucial role. The Indicium application tier is a generic service tier application, which uses model interpretation to provide the required logic and functionality. It replaces an
During development of a project, often many project versions are created to facilitate for data-model changes. After development is complete and the production database needs to be upgraded, it is desirable to create a single script to upgrade the current production version to the final project version. This requires that the data conversion definition for all intermediate project versions is merged, or squashed, into a single data conversion from the first to the final version. How does it workLet’s see how it works with an example. We start out with the table customer in version 3.80. This table is renamed to clients in version 3.90, for which we create a data conversion record. In version 4.00 we rename the table clients to client (because we always use singular nouns for entity names), so another data conversion record is created. If you want to upgrade from version 3.80 to version 4.00 without doing an intermediate upgrade to version 3.90, you need to squash the
In the 2018.1 release of the Thinkwise Suite we have followed up on 2017.1’s major modernization of process flows, and have introduced some more cool features. Deep linkingAs of version 2018.1, our Web GUI supports deep links. A deep link is a link which doesn’t just point to the location of an application, but also a location within that application. For instance, a deep link could direct a user to a certain subject, a certain record within that subject, and perhaps start a task or report for that record. At this point you might be wondering what deep linking and process flows have in common. Well, we wanted our capabilities for deep linking to be rich, without making the links themselves long and complicated. We concluded that the features we wanted to be ‘deep linkable’ were exactly the same features as those offered by process flows. Because of this, our implementation of deep linking is simply being able to trigger a process flow through a link. This gives developers full co
Review required In the Software Factory 2018.1 release, a new ‘Review required’ setting has been added to the SF configuration. This setting is turned on as default in the installation or upgrade of the Software Factory. Review required setting Ready for review With review required turned on, the task to complete a control procedure will be replaced by a task to set a control procedure ready for review. Task to set a control procedure ready for review This task will set the status of a control procedure to a new status ‘Review’ and create a changelog entry. Like in the previous version, the changelogs, including the code changes, can be found in the ‘Code changelog’ tab page. Two new tasks have been added to code changelog. Tasks to approve or disapprove changes These tasks can be used by a reviewer to approve or disapprove the changes. When approved, the control procedure will be set to completed. When disapproved, a comment will be required as review feedback and the control p
A while ago, a blog was published about retrieving identity values in T-SQL using the Output-clause. This blog continues on this subject for a more advanced scenario. The caseThere are some situations where you don’t just want the identities as output, but you also want to match them to related records which were used in the insert statement. For instance, when copying multiple order records including the order_line records, you need to match the new order_id with the source order_id in order to copy the order_line records properly. Now don’t get me wrong, there are other ways to achieve our goal of mapping the inserted order_id identity with the source order_id: We could store a foreign key called source_order_id in the newly created order record. However, this would require a data model change and we do not need this column outside of this transaction. Alternatively, we could try to find the source order record using matching columns. At this point, we would treat these other c
I get the following message when calling a report: The RPC server is unavailable. - Do you recognise this message? - Is this possible because there is no printer installed on our server?
Creating a tree view for subjects has always been a struggle, until now. All that is needed in release 2017.1 is setting up the tree model for your subject and assigning a screen type with a TreeView component. Tree propertiesJust like the grid and form the tree is now fully configurable through the Subject modeler. The tree display column is the text column shown in the tree. When leaving it blank the look-up display column will be used. The icon column presents the icon in front of the display column. There are two tree types to choose from: hierarchical and column grouping. These will be explained later on. A new feature is the default expanded property. When set, the tree will automatically expand to the provided level of nodes. Hierarchical groupingPreviously, a self-reference was needed to show an hierarchical tree. This self-reference had to contain all primary key columns. In 2017.1 this is no longer necessary; the only thing required is specifying the parent colum
In 2016 we’ve started to improve the layout of the Project Portal (which has since been dubbed ‘Thinkwise Insights’). Some of the changes were already possible with layouts in the G9.8 SF. We’ve made full use of those possibilities and we’ve added a lot more options to the SF. One of the most noticeable changes is that we’ve renamed layouts to themes, so from now on I’ll be talking about themes. If you’re still on a version of the SF that uses layouts, you can substitute layout. Our goal was to make it easier to create a modern, fresh and usable look and feel for your application. In this article I’ll tell you what options you have and how to best utilize them to create a usable, clean, modern and awesome-looking application. Grid Alternating rowsYou’ve never had the option to change the color of the alternating rows in the grid. The GUIs calculated a color for you, and that was it. You could remove the alternating background colors with a little trickery; but now there’s no
Every morning when you get up, you make your bed. When you grab your toothbrush, you put toothpaste on it. When you’ve washed your face, you wipe it dry. After you’ve had breakfast, you tidy up the table. Life would be so much easier if these morning rituals could be done automatically. Well, we can’t help you with that, but what we can do is make your job life easier with user preferences. In fact, we can make it very easy by setting these preferences automatically for you, when you generate and apply recommendations. User preferences allow actions to be done automatically, such as opening a screen when you start an application, filtering for specific data by creating prefilters, and more. For many of those preferences it is possible to generate recommendations in Intelligent Application Manager (IAM) based on your work behavior. RecommendationsRecommendations are simply user preference suggestions in IAM based on the user logs. Users can generate new recommendations and apply t
If I change the setting of my application (from Dutch to English) the order of the date changes (to month/day/year from day/month/year). Is it possible to change the language with changing the layout of the date fields? I tried using an extended property called CustomDateMask, which has no effect.
I would like to know more about the possibilities of Extenders. In my opinion I am missing a few Extender Types? The extenders which I now have available to me: Custom_display_format Default_editable_cube Maps Resource_scheduler I seem to have read somewhere that there are Extenders available for grid grouping and multiline headers. Who can tell me more about it?
One of our most fervent bug-reporters mentioned that it’s truly annoying to get a pop-up in SQL Server Management Studio most of the times you open a new template. Developers see this pop-up because the file contents are updated. This happens when the file is no longer monitored by the Software Factory. A line is added to notify the developer that the file is disconnected. SQL Server Management Studio detects this change in the file and provides you with the pop-up as seen below. And it’s true, this disturbs the workflow. Some developers even gave up on opening templates directly from the Software Factory and instead resorted to copy-pasting templates. The good newsThe good news is that you can actually turn this pop-up off! Go to Tools – Options – Documents and check Auto-load changes, if saved. At SQL Server Management Studio 2016 and above, this checkbox has been renamed to Reload modified files unless there are unsaved changes. SQL Server Management Studio 2016 also allows for
Is a validation code always issued by the web GUI, is it also possible to use the ‘Authy’ app from Twilio? Or is the Twilio service only used to send an SMS?
The exchange link is running. However, it only synchronizes emails for 1 account. This while the exchange users procedure returns 2 email addresses. What could be wrong here?
Is it possible to indicate an alternative path for the Cache directory in the INI file for Windows GUI?
Starting with version 3.00 of the Thinkwise Exchange Service it is possible to sync attachment files from exchange items such as emails, appointments, contacts and tasks. Currently attachments can only be synchronized from Exchange to the database, not from the database to Exchange. Syncing attachmentsThe binary data of an attachment isn’t retrieved automatically while syncing. Instead, when an item is synced from the exchange server to the database, any attachments the item might contain are converted into a formatted string containing the metadata needed to retrieve the actual attachment file from the server. The reason for this is that it makes synchronization lighter since the metadata of an attachment is almost always smaller than the file itself. This metadata is sent to the database through an exh_attachments parameter in the applicable exh_from_exh stored procedure (e.g. exh_from_exh_add_email) and is formatted in the following way: filename1.ext:attachmentid1;filena
We have removed the language for a project in the SF. After synchronization, the language remains selectable in IAM. How can we prevent this? Does a language automatically disappear when there are no project versions that refer to it?
Troubleshooting There is a small chance that you might run into some difficulty along the way. Since Mobile uses technologies that most developers at Thinkwise are not very familiair with, this troubleshooting chapter should help with the most common problems. Pinpointing the problem is the most important activity, since the vast majority of all problems have nothing to do with the mobile GUI but instead are caused by the proxy service tier, the model, the database or a setting in IAM. 'My service tier won’t run!' If instead of an authentication pop-up an error page shows up, something could be wrong. However, if you entered correct credentials, you might get a 404-not found, because there is no website at this location. Anything other but an authenticaton pop-up or a 404 should not happen. If the authentication pop-up keeps showing up even though you entered valid credentials, the database configuration might be wrong. Re-check the web.config and make sure the webserver can actual
When I want to use a view in the application, there are three options: automatic, customizable and template. Normally, I work with a template but in this case a cube is required where the data is in a table. I was planning on making a variant for the table but that doesn’t fulfil the needs in this case. I thought it would be possible to make this view without a template, but this doesn’t seem to work. My question here is: what is the difference between customizable and automatic? And why is the field ‘view_from_clause’ not customizable in both? And if it’s not customizable, why is the content not emptied? Anyway, while generating the piece of code between ‘select’ and ‘from’ is left blank, despite I’ve defined 4 fields in the view, and they do exist on the table. What am I doing wrong? Why isn’t this work? Am I still obligated to make a template? See the two print screens below:
When moving an IAM environment from one server to another, the sever file links aren’t correct. It is not possible to adjust these because you’re not authorized in IAM by default. How can this be changed?
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.