I have followed some code I found in this forum to import external data into Ansys with Python and can't seem to get the subsequent files to update the Data Type, Data Unit, and Data Identifier fields. Is there a specific way to update this? The working code I have is shown below.
External Data Inputs
DataPath = r"C:\Users\xxxxxx\Desktop\File Import\Files to import"
DataExtension = "csv"
DelimiterIs = "Comma"
DelimiterStringIs = r","
StartImportAtLine = 3
LengthUnit = "in"
DI_Character_Length = -24 #Number of Characters from the left of the name to start at
import glob
import os
template1 = GetTemplate(TemplateName="External Data")
system1 = template1.CreateSystem()
setup1 = system1.GetContainer(ComponentName="Setup")
allfiles = glob.glob1(DataPath,"*." + DataExtension)
allfiles.sort(key=lambda f: int(''.join(filter(str.isdigit, f))))
numfilestoload = len(allfiles)
Loop Through Data
for i in range(numfilestoload):
filenum = i+1
completefilepath = os.path.join(DataPath,allfiles[i])
externalLoadFileData = setup1.AddDataFile(FilePath=completefilepath)
Bottom Left Box - Setting Delimiter, Import Line, and Length Unit
externalLoadFileDataProperty1 = externalLoadFileData.GetDataProperty()
externalLoadFileData.SetStartImportAtLine(FileDataProperty=externalLoadFileDataProperty1, LineNumber=StartImportAtLine)
externalLoadFileData.SetDelimiterType(FileDataProperty=externalLoadFileDataProperty1, Delimiter=DelimiterIs, DelimiterString=DelimiterStringIs)
externalLoadFileDataProperty1.SetLengthUnit(Unit=LengthUnit)
Top Right Box - Creating Data Type, Data Unit, and Data Identifier
if i == 0:
externalLoadFileData.SetAsMaster(Master=True)
externalLoadColumnData1 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 1")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData1, DataType="X Coordinate")
externalLoadColumnData1.Identifier = "X" + " " + str(allfiles[i])[DI_Character_Length:-4]
externalLoadColumnData2 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 2")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData2, DataType="Y Coordinate")
externalLoadColumnData2.Identifier = "Y" + " " + str(allfiles[i])[DI_Character_Length:-4]
externalLoadColumnData3 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 3")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData3, DataType="Z Coordinate")
externalLoadColumnData3.Identifier = "Z" + " " + str(allfiles[i])[DI_Character_Length:-4]
externalLoadColumnData4 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 4")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData4, DataType="Displacement")
externalLoadColumnData4.Unit = LengthUnit
externalLoadColumnData4.Identifier = "DX" + " " + str(allfiles[i])[DI_Character_Length:-4]
externalLoadColumnData5 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 5")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData5, DataType="Displacement")
externalLoadColumnData5.Unit = LengthUnit
externalLoadColumnData5.Identifier = "DY" + " " + str(allfiles[i])[DI_Character_Length:-4]
externalLoadColumnData6 = externalLoadFileDataProperty1.GetColumnData(Name="ExternalLoadColumnData 6")
externalLoadFileDataProperty1.SetColumnDataType(ColumnData=externalLoadColumnData6, DataType="Displacement")
externalLoadColumnData6.Unit = LengthUnit
externalLoadColumnData6.Identifier = "DZ" + " " + str(allfiles[i])[DI_Character_Length:-4]