|
@@ -13,6 +13,12 @@ def getImporter(setup):
|
|
|
importlib.reload(importXLSX)
|
|
|
return importXLSX
|
|
|
|
|
|
+def getFileBrowser(db):
|
|
|
+ import nixWrapper
|
|
|
+ nixWrapper.loadLibrary('labkeyInterface')
|
|
|
+ import labkeyFileBrowser
|
|
|
+ return labkeyFileBrowser.labkeyFileBrowser(db.net)
|
|
|
+
|
|
|
def getVal(xmlRoot,aliasVal,xPath='',aliasReplace={}):
|
|
|
q=aliasVal.split(':')
|
|
|
xName=q[0]
|
|
@@ -40,7 +46,7 @@ def parseJSON(x):
|
|
|
pass
|
|
|
return {}
|
|
|
|
|
|
-def readSetup(importXSLX,pars):
|
|
|
+def readSetup(importXLSX,pars):
|
|
|
db=importXLSX.getDB(pars)
|
|
|
ds=db.selectRows(pars['project'],'lists','importSetup',[])
|
|
|
setupRows=ds['rows']
|
|
@@ -88,7 +94,7 @@ def importXML(importXLSX,pars,xmlFile,dryRun=True):
|
|
|
print(f'aliases: {alias}')
|
|
|
row={}
|
|
|
|
|
|
- tree = lxml.etree.ElementTree(file=filename)
|
|
|
+ tree = lxml.etree.ElementTree(file=xmlFile)
|
|
|
print(tree.docinfo.xml_version)
|
|
|
root=tree.getroot()#Element
|
|
|
#patient id can be either set in pars (takes precedence) or from xml record
|
|
@@ -134,6 +140,8 @@ def main(parameterFile):
|
|
|
with open(parameterFile) as f:
|
|
|
pars=json.load(f)
|
|
|
|
|
|
+ print(pars)
|
|
|
+
|
|
|
fhome=os.path.expanduser('~')
|
|
|
with open(os.path.join(fhome,".labkey","setup.json")) as f:
|
|
|
setup=json.load(f)
|
|
@@ -142,12 +150,15 @@ def main(parameterFile):
|
|
|
|
|
|
#needs server
|
|
|
db=importXLSX.getDB(pars)
|
|
|
- keyFilter={'variable':'Key','value':pars['key'],'oper':'eq'}
|
|
|
+
|
|
|
+ db.net.getCSRF()
|
|
|
+ keyFilter={'variable':'Key','value':'{key}'.format(**pars),'oper':'eq'}
|
|
|
#needs project
|
|
|
ds=db.selectRows(pars['project'],'lists','importXML',[keyFilter])
|
|
|
r=ds['rows'][0]
|
|
|
- filename=os.path.join(fhome,'temp','data.xml')
|
|
|
+ filename=os.path.join(fhome,'temp','DCIS','data.xml')
|
|
|
url=db.net.connectionConfig['host']+r['_labkeyurl_fileUpload']
|
|
|
+ fb=getFileBrowser(db)
|
|
|
fb.readFileToFile(url,filename)
|
|
|
#needs project
|
|
|
setupRows=readSetup(importXLSX,pars)
|