7

IDFVersionUpdater using commandline

I have multiple idf files in version 8.4 that I want to update to version 8.8. Doing this manually involves using the IDFVersionUpdater.exe and selecting each file manually. Are there alternatives to run the updater from a commandline so that I could update the files with a script.

kbk78's avatar
601
kbk78
asked 2017-10-19 17:19:52 -0500, updated 2017-10-19 17:20:18 -0500
edit flag offensive 0 remove flag close merge delete

Comments

You can call IDFVersionUpdater.exe in a script. Lots of ways to do this - do you have a preferred language? what operating system do you have?

mdahlhausen's avatar mdahlhausen (2017-10-19 18:41:31 -0500) edit

running python on windows.

kbk78's avatar kbk78 (2017-10-20 07:37:44 -0500) edit
add a comment see more comments

5 Answers

5

IDFVersionUpdater can convert multiple files at once using *.lst file. Refer to AuxiliaryPrograms.pdf and search for section IDF Version Converter / Transition File Lists. If v8.4 files a.idf, b.idf and c.idf are in folder C:\EnergyPlusV8-8-0\PreProcess\IDFVersionUpdater, then 84to87.lst file should have the following contents

a.idf
b.idf
c.idf

Then IDFVersionUpdater should choose Files of type as Text File With List Of EnergyPlus Files (*.lst) and select 84to87.lst. check Create Intermediate Version Files if you want to save intermediate versions 8.5, 8.6 etc.This way IDFVersionUpdater should be run only once and there is no need to run various Transition-Vx-1-0-to-Vx-2-0.exeetc.

Chandan Sharma's avatar
2.4k
Chandan Sharma
answered 2017-10-19 23:49:37 -0500, updated 2017-10-20 13:38:29 -0500
edit flag offensive 0 remove flag delete link

Comments

So essentially we would need to call each Transition-VA-B-C-to-D-E-F.exe sequentially for each intermediate versions if we wish to use the command prompt. We cannot go from 8.4 to 8.8 in one step, right?

kbk78's avatar kbk78 (2017-10-20 07:26:41 -0500) edit

If all the file names are defined in lst file, IDFVersionUpdater should be run only once to convert all of them from 8.4 to 8.8. Please refer to documentation mentioned.

Chandan Sharma's avatar Chandan Sharma (2017-10-20 08:11:24 -0500) edit

Looking to run IDFVersionUpdater from the "commandline" and automate the process for repeated usage (whenever I export a file from designbuilder which outputs file in V8.4). Documentation does not mention if IDFVersionUpdater.exe can be run from the commandline. Running the program from the command line opens up the GUI. Is there a flag I can set to force it to not run the GUI and pass required parameters.

Otherwise, I guess my solution is to call each Transition-VA-B-C-to-D-E-F.exe sequentially to go from V8.4 to V8.8 Thanks!

kbk78's avatar kbk78 (2017-10-20 09:26:52 -0500) edit

Several months ago, I had to convert 100s of 90.1 reference files from v8.4 to v8.7. And IDFVersionUpdater has been of great help. Otherwise I would also have used a programming language.

Chandan Sharma's avatar Chandan Sharma (2017-10-20 13:26:05 -0500) edit

Hi where I can get version updater from 8.5 to 8.8 .actually i just started using this software few days back thats why asking

newcomer's avatar newcomer (2017-12-03 08:01:09 -0500) edit
add a comment see more comments
1

In general, the answer that Chandan is probably the best approach if someone has a bunch of files that they want to update to a newer version of EnergyPlus. If you want a script that can be run each time in a workflow, I would suggest a batch file that calls the Transition programs directly. Essentially, each transition program named TransitionVA-B-C-to-VD-E-F.exe needs to be run to update the file from one version to the next until you reach the version you want. The documentation on how to run Transition is here. It is important to have all the files in the proper directory including the IDD files for each version and the report variable CSV files.

JasonGlazer's avatar
6.8k
JasonGlazer
answered 2017-10-23 09:14:53 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments
1

I've done this in a fairly brute force way with Python. I'm sure there are better ways to do it. Here's the outline:

  1. Use the glob module to find all the IDFs to transition, make sure to get the full absolute paths.
  2. Use os.chdir to change directories into the directory that contains the transition executables.
  3. Loop over the IDF files with a nested loop that loops over the transition executables that are needed.

Part of the reason that I did it this way was that I wanted the intermediate versions. If you don't, then this might not be the best approach for you.

Jason DeGraw's avatar
2.2k
Jason DeGraw
answered 2017-10-20 11:11:59 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments
0

You can open command prompt and create a text file for the .lst with all the file paths to the .idf files for updating. Navigate to the location you want the .lst Entering the following command to create the .txt list of .idf files:

dir c:\Users\path_to_idf_files\*.idf /s /b >list.txt

Open the .txt in the location to confirm the paths were properly formatted. Change the name of the .txt to a .lst file using the rename feature. Open IDFVersionUpdater and search for .lst files to open in the previous location. Run it. I did this recently for about 120,000 .idf files. It takes a while to run that many through the updater.

nickf's avatar
1
nickf
answered 2022-06-25 15:28:08 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments
0

Run this Python script to create a list of all IDFs in a folder (that you want to update):

import glob, os

f = open("update.lst", "a")
for file in glob.glob("*.idf"):
    f.write(f"{os.path.realpath(file)}\n")

f.close()

Then, use the IDF updater and select the update.lst that you just created.

ericmartinpe's avatar
2.1k
ericmartinpe
answered 2023-07-05 16:10:57 -0500
edit flag offensive 0 remove flag delete link

Comments

add a comment see more comments