Solved

What is the sf_model_vrs_name column for?

  • 26 September 2023
  • 3 replies
  • 46 views

Userlevel 4
Badge +11

Before I formulate a complex question, I am curious what your thoughts are regarding the column "sf_model_version_name" in the entity "sf_model_info"?

NULL

Currently, there seems to be no place in the SF to record a version name so this field will initially remain NULL with each generation.

Model versions
icon

Best answer by Mark Jongeling 26 September 2023, 08:27

View original

This topic has been closed for comments

3 replies

Userlevel 7
Badge +23

Hi Dennis,

The sf_model_vrs_name is equal to the Model version name as specified in Model settings at the moment of deploying the application.

Whilst the sf_model_vrs would technically always suffice as this is a timestamp of the upgrade scripts being generated, but the timestamp usually doesn't explain well enough to the user which version it actually represents. You could look into the sf_model_info table on your Software Factory database via SSMS or Azure Data Studio and see the sf_model_vrs_name is equal to the platform version.

So in short, it is an easy way to telling which product version an end product database is. It should correspond with the Model version description of the Model version with the same timestamp.

Userlevel 7
Badge +23

To add, it could be that the Creation steps were completed before setting the model version description. Otherwise the sf_model_info record should contain that name.

Userlevel 4
Badge +11

Hi Mark,

Thanks for your explanation, this directly answers my underlying question. I understand the principle of timestamp but we still use (disguised) application versions in our final product to release associated release notes.

With the SF action "Generate definition" based on database, the SF will always create a new model version in the detail tab "Model version" based on the timestamp. By filling the description with the following application version number I had hoped that this would be picked up in the upgrade script of the SF action "Execute source code" and specifically in the last insert statement

 

/* INSERT MODEL INFO INTO THE SF_MODEL_INFO TABLE */

insert into sf_model_info
(
sf_server,
sf_database,
sf_model,
sf_branch,
sf_model_vrs,
sf_model_vrs_name,
previous_branch,
previous_model_vrs,
generated_by_user,
generated_on_date,
created_by_user,
created_on_date
)
values (

 

Model version description

It is now clear to me that I can capture this for source code generation in the "model_vrs_name" column of the "model_settings" entity.