Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 9 Next »

Migration Process

Below is how to migrate a project using the FIN Migrate tool. If you have a FIN 4.5 project backup, but don't have FIN Stack 4.5 installed, look at step 2 below on how to migrate that without the FIN 4.5 service.

1) FIN Stack 5.0 Installed

First, the user will have to have FIN Stack 5.0 installed on the machine. Look at FIN Stack 5.0 Windows Installation for how to install FIN 5.0.

2) Stop both FIN Stack Services

Then, the user will have to stop both FIN Stack 4.5 and FIN Stack 5.0 services. In order for migration to work, both services cannot be running. In the Services app, the FIN 4.5 service is called "FIN Stack service", while FIN 5.0 is called "FinStack5 service".

No FIN 4.5 Service Installed

If the user doesn't have FIN 4.5 installed, they can still migrate a backup project. The user will want to unzip the project if its zipped. Also know where its located on the machine. We recommend having it on the desktop for quick find but not necessary. Make sure its the project itself with its contents, not the project inside another folder with same name. Sometimes that happens when unzipping. Then continue the rest of the steps.

3) Navigate to bin folder in FIN Stack 5.0

Next, the user will need to navigate the 'bin' folder inside the FIN Stack 5.0 directory. It should look something like below but with your version.

Bin folder Path: C:\Program Files (x86)\FIN Stack\FIN Stack 5.5.1153\bin

4) Initiating migration using finmigrate.bat

Once inside the 'bin' folder, the user will find the 'finmigrate.bat' file. They will right click on it and select to run as administrator.

Then you might get a prompt if you want to allow the app to make changes to the device. Select Yes to continue.

5) Selecting project to migrate

Next, two popup windows will appear. One will be a command prompt (leave open, but ignore it) and the other will be the project migration tool. The user will select the "Open..." button and then navigate to the FIN 4.5 project the user wants to migrate to FIN 5.0. The user will select the actual project folder itself, then select OK to start migration. This will start executing the commands needed to migrate the project. Just wait until it is done.

In our example below, we want to migrate our "demo" project. We select the "demo" folder under the db folder to migrate.

Note: If you have multiple projects and you want to migrate them at the same time, you can select the parent 'db' folder itself. That will migrate all the projects under the db folder at once.

The FIN 4.5 db folder path should be something like this but with your version: C:\Program Files (x86)\FIN Stack\FIN Stack 4.5.851\db

No FIN 4.5 Service Installed

Those without FIN 4.5 installation would just select the project folder wherever it may be located.

6) Migration Complete

Once the migration is complete, the user should see something similar to the below with a message indicating it is complete. It shouldn't be running any more commands. On the command prompt, it should end with something along the lines of "http started on port 8080" and "Steady state". The user can then close both popup windows.

 

7) Start up FIN Stack 5.0 service

The user can then start the FIN Stack 5.0 service and be able to hit the project(s) via browser. Should be something like this for specific project "ip:port/finMobile/<projName>" or for host home "ip:port/home".

Thats it, the whole migration process has been completed and can check out the project(s).

The funcs that were executed while migrating were below. If for some reason, things look off, they can be executed manually in folio with bacnetServerMigrate being optional if being used in project:

  • finMigrateFilterIds() - this would update the id's on certain filters such as graphicOn, programOn etc. If not updated, those records wouldn't appear or function without proper id format. For example a floor graphic usually only runs on a single floor so its graphicOn would be an id of a floor. They would have to be updated manually or using the function. If the user notices that the id's weren't updated, then can run the function in folio to update them. Then check to see if it worked. If not, contact us at support@j2inn.com.
    • Example use: finMigrateFilterIds()
  • finMigrateFinFile() - this would update the id's on virtualPoints, bindings, query tags inside graphics, programs etc. This however may not update id's in a program/event inside a graphic. Those would have to be updated manually if there are any hardcoded in there. This can also be ran in folio if they weren't updated.
    • Example use: readAll(fin5).finMigrateFinFile() OR finMigrateFinFile(@graphicId)
  • bacnetServerMigrate() - this would update the below bacnet tag names to the new tag names in FIN 5.0. This would be for projects using bacnetServer in FIN 4.5. The ext needs to be enabled.
    • bacnetNetwork → bacnetServerNetwork
    • bacnetLocalAddress → bacnetServerLocalAddress
    • bacnetMacAddress → bacnetServerMacAddress
    • bacnetDevice → bacnetServerDevice
    • bacnetInstance → bacnetServerInstance
    • bacnetCovIncrement → bacnetServerCovIncrement
      • Example use: bacnetServerMigrate()

Thats it, the project(s) should be good to go.


  • No labels