The New VDN 5: Licensing, and Your Questions

On February 14, 2013, Paradigma Software celebrated 15 years of Valentina with the release of Valentina 5 generation of products. With it came a reconfiguration of Valentina Developer Network – one that we believe gives you many more options for satisfying your customers. If you have questions about VDN, please reply to this, and Ill do updates to answer them. Continue reading The New VDN 5: Licensing, and Your Questions

[VStudio][Improve] Server Admin Panel – Log Files

5.0b60 includes significant improve of LOG files panel of Server Admin tool.

1) Now in the list of log files of a VSERVER you can see two sections. The first is named TAIL and contains only active log files. If you choose one of them, you will see tail (end) of this file with automatic refresh. This is analog of terminal tail command.

2) We have improve protocol between VSERVER and VStudio to exclude from vserver log file commands that send VStudio itself to collect information.

3) We have extend set of SNMP commands that VSERVER supports to increase performance of talk between VSERVER and VStudio. Besides, VSERVER is able proceed these commands absolutely parallel to its main job.

[NEW][VSERVER] Now has one more log file. From vreport.dll

We have found that if some report contains wrong SQL queries stored in the report itself, OR this queries have become invalid later, e.g. if some fields was renamed in the database, then no way to see these errors.

Solution is to add to VSERVER one more standard log file, into which will write info VREPORT.dll.

This log file can be set ON/OFF using same SQL commands as Warning.log file of the Valentina Kernel.

[NEW][MAC] and installer of VServer_x64 now are signed

OS X 10.8 has option “System Settings -> Security -> General -> Allow: MAS App Store and identified developers”  on default to be ON, so you cannot installed easy not signed applications and run installers. Note that 10.7 also can have this option enabled on some computers.

To resolve this issue, we have sign and vserver_x64.pkg installer.

Unfortunately we cannot easy sign other our installers (V4RB, V4REV, V4CC, … ) because we using third party installer.  So for now, for 5.0, we going to ship these installers not signed. To run them, OS X developer should in the Finder do CTRL + click on icon of installer and choose OPEN command in the contextual menu. In this case you will see the button ALLOW in the OS X security dialog. Click it, and continue as usual.

[NEW] VStudio – “Add Filter Row with Cell Value”

While you are in Data Editor, you may want select group of records using value of  some record at which you watch now. Todo this you was need

  • Select all value in the cell  (CDM+A)
  • Copy it   (CMD + C)
  • Add filter row   (CMD + F)
  • Double click cell in filter into which you want insert that value
  • Paste that value into filter  (CMD + V)
  • Execute filter using (CMD + E)
Now all this can be done by a single command using menu item “Filter by Cell Value” or its keyboard shortcut (CMD + SHIFT + F).

[VStudio][NEW] Commands GenerateSQL -> Insert / Update / Delete.

While you are in the Schema Editor, Column or Tree view, you can do right click on a table and in the contextual menu choose GenerateSQL -> Insert / Update / Delete.

You  will be asked to specify fields for Insert / Update commands, after that you will see SQL Editor with generated command. You still need finish it of course in VALUES() section for INSERT, and SET section for UPDATE command.

Anyway this feature can save you couple of minutes of job per each such command.

[NEW] VStudio – SQL Dump allows specify few tables only

Now SQL Dump wizard has page where you can specify by checkbox only few tables to be dumped.

This can be suitable for example working with Joomla web site, when single mySQL database contains 200+ tables from different tools such as Joomla, Store, Mantis, WP, … So there are independent groups of tables.

WARNING: You should understand that if you dump some table A, but forget to dump linked by FK table B, you can get troubles. But most DB tools have this feature, so developers should be aware about this risk.

[NEW] VStudio – Enum with localisation is supported now

Some time ago we have extend ENUM type by ability to have additional sets of enum values for specific locales. Now we introduce support of this new feature of Valentina 5.0 engine in the Valentina Studio 5.0b54.

This feature is supported in the following places:

  1. Schema Editor
    1.1 Columns: you are able create ENUM types, create/delete/change Locales in that Enums, change localised values.
    1.2 Trees: you can see ENUMs and their Locales in the tree of db schema
    1.3 Diagrams: you can design type ENUM right on diagram.
  2. Data Editor — IF table has at least one ENUM type, then you will see small menu in toolbar that allows you  switch between supported locales of that enum.
  3. SQL Editor — IF result of SQL query contains ENUM fields,  then you will see small menu in toolbar that allows you  switch between supported locales of that enum.
Below you can see few snapshots that demonstrate these features. Read More about ENUM TYPE …


[NEW] DEFAULT clause extended by METHOD(‘const_expr’)

We have extend Valentina SQL by non standard feature. DEFAULT clause now has form DEFAULT METHOD(‘const_expr’).

This step increases declarative power of DDL part of VSQL and, therefore, allows you do less job later working with inserts and updates.

You can use in the expression built-in Valentina functions and UDFs that not depends on other fields. The most useful examples are:

* now()
* UUID()
* nextval( sequence_name )
* current_user_name()

* this is not standard syntax.
* PostgreSQL have similar syntax and behavior, but it specify expression just in the literal: DEFAULT STRING_LITERAL. This cause ambiguity.

[NEW] VKERNEL now can create journal at a specified location + Sandboxed Mac Apps with V4CC.

Frank have contact us with request add ability for V4CC (Valentina for Cocoa) developers to specify the location of journal of a database. This is important for sandboxed applications, which on default can access only their sandbox folder and a file(s) that user specify explicitly.

PROBLEM is that if a user choose somedb.vdb file in the SelectFile dialog , then Valentina engine needs yet to create a journal file near to .vdb file. But for a sandboxed application this is prohibited by OS X. This is why developer want to be able specify another location for journal file.

Btw, this problem exists more of year for SQLite database that is used e.g. in CoreData of Apple, when it is used by a sandboxed app. Strange, but the only advice from Apple is – disable journal file.

We have spend couple of days to add into C++ level  and into V4CC ADK this feature. Rest ADKs soon.

Now you can write the following in V4CC:

Continue reading [NEW] VKERNEL now can create journal at a specified location + Sandboxed Mac Apps with V4CC.

[Fix] VStudio Linux crash log from a beta tester did help recognize that …

… although Vstudio linux is installed into /opt  location, it loads /usr/local/lib/vcomponents if they present.

Today this issue was solved. Into script that start Vstudio, was added pre-load for vcomponents dlls. After this one dll have start cause problem because it contains static library that is newer than system’s one. Many hours was not successful, because of GCC 4.2 bug… Finally, a “brutal force trick” was used (the second time) to workaround this issue.

[NEW] VStudio now is able to send a crash log file to Valentina team

In a case of crash, Valentina Studio on linux and windows now is able  to create text file that contains crash log  information (stack of calls, loaded DLLs, … ). MAC OS X version of VStudio have no need to do this because OS X itself generates such crash log.

On the next start Valentina Studio will show dialog with suggestion to send this crash log to Please note, this crash log contains totally anonymous information. This information will help to Valentina team to see that there was fact of crash, and where exactly was crash.  You can set check box to not show this dialog future and just send a crash report automatically if it is found.

On Windows and Linux, after sending of crash log file, it is deleted from disk of your computer. On OS X it is not deleted, because OS X append them  into single file per application.

[NEW] Localisable ENUM Type

Ladies and Gentlemen!  
The first time in the world!  🙂
Localizable Enum Type in DBMS!  

We already many months have working ENUM type in 5.0 branch of Valentina. Let me remind that ENUM type is not from SQL standard, so different DBs implement it in different way if at all implement. We have implemented it using CREATE TYPE command of SQL Standard. And we have implement ENUM in way similar to PostgreSQL, because it is the most correct: you just CREATE TYPE ENUM once and later using it in all places of your database.

mySQL, in contrast, defines ENUM as part of a particular Table, right in the CREATE TABLE command. This is not good of course, because then you cannot use this type in other tables or for variables of Stored Procedures.

name ENUM('small', 'medium', 'large')

It is interesting that such mature database as Oracle do not have ENUM type.

All these existed implementations have one big problem from our point of view: such enum types contains string values of only one language. Below we will describe our solution.

Continue reading [NEW] Localisable ENUM Type