Importing External Data Into Anysy with Python

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]
Best Answer
-
I figured it out. You just need to increment the "ExternalLoadColumnData #".
1