2 Replies Latest reply: Nov 9, 2017 4:49 AM by Brunello Menicucci RSS

    Automatically Software Versioning

    Brunello Menicucci

      Hello experts,

      I'm a management consultant, usually developing applications for my customers in a QDF environment and I'd like to know if there is the chance to automatically give a "version number" to a specific container; as an example, pretend I have the container "CUST1" for a customer and in that one I have the "2.DEV" container with the typical Sense folder structure. Once I'm happy with the integrations made, I'll release it to the customer and I would like to find a way to automatically give it a number (or a reference), as it was a software "build".

      Do anyone of you have faced and solved such a situation?

      Thank you very much!

      Brunello

        • Re: Automatically Software Versioning
          Johan Lindell

          Hi Brunello,

           

          I make Inline tables that has the comments and then assing verion number for each line. This is an easy way to keep everything in the document, see below.

           

          As a further improvement to this process we have a script that creates text files with the below tables and a qlikview document that reads this. This way we can see which "changes" are and what phase (Development, Test, Production). Also we use a simple vb-script that copies a file from one environment to the next, Dev -> Test -> Production while making a rotating backup of the files that are in the target environment.

           

          All working very conviniently. . I have attached the scripts for you to have a look at.

           

          QUALIFY *;

          ChangeLog:

          LOAD *,

          RecNo() as Row;

          LOAD * Inline [

          Date;      Name;                Change

          2016-11-21; Johan Lindell, Vimur; Moved Inventory location Id - order head to order head file

          2016-06-09; Johan Lindell, Vimur; Added data updated functionlity

          2016-06-09; Johan Lindell, Vimur; Added new changelog

          ] (delimiter is ';');

           

           

          Todo:

          LOAD * Inline [

          Date;      Name;    To do

          2017-04-04; Johan Lindell, Vimur; Remove Production value current and Production value history (new fields available / used).

          2017-04-04; Johan Lindell, Vimur; Move Season Age History / outlet write off to Season or Article table.

          ] (delimiter is ';');

           

           

          // 2016-01-20; Johan Lindell, Vimur; Things todo...

           

           

          Issues:

          LOAD * Inline [

          Date;      Name;    Issue

          ] (delimiter is ';');

          // 2016-01-20; Johan Lindell, Vimur; Issues...

           

           

          UNQUALIFY *;

           

          $(Include=$(vG.SharedCustomPath)11.versioninfo.qvs);

            • Re: Automatically Software Versioning
              Brunello Menicucci

              Hello Johan,

              thanks for your time and your suggestions: very impressive and helpful! For sure I'll take something from it

              In the meantime, I set up the following workflow:

               

              1. develop and edit scripts in VSCODE, using QDF environment

              2. commit changes toa GIT repository from VSCODE

              3. get a version number using git tags

              git describe --tags >version.txt

              4. creating the following file:

              [versioninfo]:

                   LOAD @1 AS Value FROM [lib://MYFOLDERDEV/3.Include\6.Custom\3.Load\version.txt]

                  (txt, codepage is 1252, no labels, delimiter is '\t', msq);

                   LET vVersion = FieldValue('Value',1);

                   DROPTABLE[versioninfo];

              5. push the committed changes to the PROD folder

               

              Perhaps not the best, however it seems to work!

              Have a nice day

              Brunello