I have written a python SSE called Teal to perform geocoding on our data. The function below is executed and stored into a table from within and external script. The script is then being called from the app like below
NoConcatenate
Load * Extension Teal.Geocode(ORIGIN_LOC_init{LOAD_ID, ORIGIN_ADDRESS, ORIGIN_CITY, ORIGIN_STATE, ORIGIN_COUNTRY, ORIGIN_ZIP});
[ End External Script File]
[Qlik App]
$(Must_Include='External Script')
[End Qlik App]
In this situation the SSE function Geocode executes fine however if anything is added after the $(Must_Include) statement it turns out that some of our parameters go missing and the function errors.
In other words changing the qlik app by adding even a trivial inline table such as below causes our function to error:
[Qlik App]
$(Must_Include='External Script')
OriginTemp:
LOAD * INLINE [
LoadID, Street, City, State, Country, Zipcode
1, 4235 South Stream Blvd, Charlotte, NC, US, 28217
2, 123 Fake Street, Chicago, IL, US 98984
];
[End Qlik App]
What happens when a table like this is added is that our parameters being read by the SSE change from a full set of parameters:
[4, 4235 South Stream Blvd, Charlotte, NC, US , 28217]
to
['1', '4235 South Stream Blvd', 'Charlotte', 'NC', 'US']
or [4, '' ,Charlotte, NC, US , 28217]
Where in the later 2 either the Street address goes missing of the zipcode goes missing.
The SSE code the reads in the parameters is:
# Consume all locations
for bundled_rows in request:
for row in bundled_rows.rows:
params = [d.strData for d in row.duals]
print(params)
locations.append(params)
print(params)
Does anyone know why I am seeing this strange behavior from the parameters?