Commit b846aa1b authored by Gino Tosti's avatar Gino Tosti
Browse files

added feature to read documents xlsx produced by googledoc

parent b06e557a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -34,8 +34,8 @@ class excelIcd:
		if(self.debug):
			print(self.nsheets,self.book.sheet_names)
		for sheet_name in (self.book.sheet_names):
			#sheet=self.book.sheet_names[sheet_index]
			self.sheets[sheet_name]=self.book.parse(sheet_name)
			she=(self.book.parse(sheet_name)).dropna(axis=0,how='all')
			self.sheets[sheet_name]=she.dropna(axis=1,how='all')
			siz=self.sheets[sheet_name].shape
			if(self.debug):
				print(self.sheets[sheet_name].columns,siz[0],siz[1])
@@ -84,7 +84,7 @@ class excelIcd:
				#colname=(str(coname)).replace(' ','_')
				for idx in range(0,Sheet["NRows"]):
					#print "BBBBB", self.sheets["Main"].cell(idx,colind).value
					colval.append(self.sheets[name].iat[idx,colind])
					colval.append(str(self.sheets[name].iat[idx,colind]))
					
				Sheet[coname]=colval
				#print(coname,Sheet[coname])
+4 −4
Original line number Diff line number Diff line
@@ -463,9 +463,9 @@ public class ${Assembly}BaseImpl extends TCSHardwareDeviceImpl implements ${Asse
#set $name=($x.ModeSheet["OPC_UA node"][$idx].split(";")[1]).split("=")[1].replace(".","_")
#set $type=$x.ModeSheet["OPC UA Data type"][$idx].upper()
#if $x.ModeSheet["OPC UA Data type"][$idx].upper()=="INT16"
#set $value=int($x.ModeSheet["CMD/MODE value"][$idx])
#set $value=$x.ModeSheet["CMD/MODE value"][$idx].split('.')[0]
#else if $x.ModeSheet["OPC UA Data type"][$idx].upper()=="INT32"
#set $value=int($x.ModeSheet["CMD/MODE value"][$idx])
#set $value=$x.ModeSheet["CMD/MODE value"][$idx].split('.')[0]
#else if $x.ModeSheet["OPC UA Data type"][$idx].upper()=="BOOLEAN"
#set $value=str($x.ModeSheet["CMD/MODE value"][$idx]).lower()
#else
@@ -481,9 +481,9 @@ public class ${Assembly}BaseImpl extends TCSHardwareDeviceImpl implements ${Asse
#set $name=($x.CmdSheet["OPC_UA node"][$idx].split(";")[1]).split("=")[1].replace(".","_")
#set $type=$x.CmdSheet["OPC UA Data type"][$idx].upper()
#if $x.CmdSheet["OPC UA Data type"][$idx].upper()=="INT16"
#set $value=int($x.CmdSheet["CMD/MODE value"][$idx])
#set $value=$x.CmdSheet["CMD/MODE value"][$idx].split('.')[0]
#else if $x.CmdSheet["OPC UA Data type"][$idx].upper()=="INT32"
#set $value=int($x.CmdSheet["CMD/MODE value"][$idx])
#set $value=$x.CmdSheet["CMD/MODE value"][$idx].split('.')[0]
#else if $x.CmdSheet["OPC UA Data type"][$idx].upper()=="BOOLEAN"
#set $value=str($x.CmdSheet["CMD/MODE value"][$idx]).lower()
#else
+10 −11
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
 #end if
        format="%$y[$type][1]"
        description="$x.GetSheet["Description"][$idx]"
 #if $x.GetSheet["Unit"][$idx] !="" and $x.GetSheet["Unit"][$idx] !="NA"
 #if str($x.GetSheet["Unit"][$idx]) !="" and str($x.GetSheet["Unit"][$idx]) !="NA" and str($x.GetSheet["Unit"][$idx]) !="nan"
        units="$x.GetSheet["Unit"][$idx]"
 #else
        units="none"
@@ -102,12 +102,11 @@
#end if
        format="%${y[$type][1]}"
        description="$x.SetSheet["Description"][$idx]"
#if $x.SetSheet["Unit"][$idx] !="" and $x.SetSheet["Unit"][$idx] !="NA"
#if $x.SetSheet["Unit"][$idx] !="" and $x.SetSheet["Unit"][$idx] !="NA" and str($x.SetSheet["Unit"][$idx]) !="nan"
        units="$x.SetSheet["Unit"][$idx]"
 #else
	units=""
#end if

        min_timer_trig="0"
    #if $y[$type][1] != "S"
        min_delta_trig="0"
@@ -126,11 +125,11 @@
        default_value="0"
        format="%${y[$x.ModeSheet["OPC UA Data type"][$idx].upper()][1]}"
        description="$x.ModeSheet["Description"][$idx]"
 #if $x.ModeSheet["Unit"][$idx] !="" and $x.ModeSheet["Unit"][$idx] !="NA"
        units="$x.ModeSheet["Unit"][$idx]"
 #else
 ## #if $x.ModeSheet["Unit"][$idx] !="" and $x.ModeSheet["Unit"][$idx] !="NA" and str($x.ModeSheet["Unit"][$idx]) !="nan"
 ##       units="$x.ModeSheet["Unit"][$idx]"
 ## #else
        units=""
 #end if
 ## #end if
        min_timer_trig="0"
    #if $y[$x.ModeSheet["OPC UA Data type"][$idx].upper()][1] != 's'
        min_delta_trig="0"
@@ -151,11 +150,11 @@
        default_value="0"
        format="%%${y[$x.CmdSheet["OPC UA Data type"][$idx].upper()][1]}"
        description="$x.CmdSheet["Description"][$idx]"
 #if $x.CmdSheet["Unit"][$idx] !="" and $x.CmdSheet["Unit"][$idx] !="NA"
        units="$x.CmdSheet["Unit"][$idx]"
 #else
 ## #if $x.CmdSheet["Unit"][$idx] !="" and $x.CmdSheet["Unit"][$idx] !="NA" and str($x.CmdSheet["Unit"][$idx]) !="nan"
 ##       units="$x.CmdSheet["Unit"][$idx]"
 ## #else
        units=""
 #end if
 ## #end if
        min_timer_trig="0"
    #if $y[$x.CmdSheet["OPC UA Data type"][$idx].upper()][1] != 's'
        min_delta_trig="0"
+15 −14
Original line number Diff line number Diff line
@@ -87,8 +87,10 @@
  </References>
</UAObject>
#silent L=[]
#silent N=[]
#for $idx in $range(0,$x["NRows"])
#silent L.append($x["Short name"][$idx])
#if not $x['OPC_UA node'][$idx] in N
#if ($x["OPC UA Data type"][$idx]).upper()[-1]==']' ## test for arrays
 #set $sp=($x["OPC UA Data type"][$idx].upper()).split("[")
 #set $type=$sp[0].capitalize()
@@ -126,10 +128,13 @@
  </Value>
#end if 
</UAVariable>
#silent N.append($x['OPC_UA node'][$idx])
#end if
#end if
#end for
#for $idx in $range(0,$y["NRows"])
#silent L.append($y["Short name"][$idx])
#if not $y['OPC_UA node'][$idx] in N
#if ($y["OPC UA Data type"][$idx]).upper()[-1]==']' ## test for arrays
  #set $sp=($y["OPC UA Data type"][$idx].upper()).split("[")
   #set $type=$sp[0].capitalize()
@@ -168,12 +173,15 @@
  </Value>
#end if 
</UAVariable> 
#silent N.append($y['OPC_UA node'][$idx])
#end if
#end if 
#end for

#for $idx in $range(0,$m["NRows"])
#set $name=($m["OPC_UA node"][$idx].split(";")[1]).split("=")[1].replace(".","_")
#if not $name in L
#if not $m['OPC_UA node'][$idx] in N
    #set $type=$m["OPC UA Data type"][$idx].capitalize()
    #if $type[0]=="U"
	#set $type=$type.replace("i","I")
@@ -185,22 +193,19 @@
      <Reference ReferenceType="HasTypeDefinition">i=63</Reference>
      <Reference ReferenceType="HasProperty" IsForward="false">ns=4;i=4</Reference>
  </References>
#if $type!="String" and $type != "Boolean" 
      <Value>
       #set $val=str($m['Default value'][$idx])
       #if $val=="nan" or $val=="NA"
	#set $val="0"
       #end if
      <uax:$type>$val</uax:$type>
      <uax:$type>0</uax:$type>
  </Value>
#end if
</UAVariable> 
#silent N.append($m['OPC_UA node'][$idx])
#end if
#silent L.append($name)
#end if
#end for
#for $idx in $range(0,$c["NRows"])
#set $name=($c["OPC_UA node"][$idx].split(";")[1]).split("=")[1].replace(".","_")
#if not $name in L
#if not $c['OPC_UA node'][$idx] in N
    #set $type=$c["OPC UA Data type"][$idx].capitalize()
    #if $type[0]=="U"
	#set $type=$type.replace("i","I")
@@ -212,16 +217,12 @@
      <Reference ReferenceType="HasTypeDefinition">i=63</Reference>
      <Reference ReferenceType="HasProperty" IsForward="false">ns=4;i=5</Reference>
  </References>
#if $type!="String" and $type != "Boolean" 
      <Value>
       #set $val=str($c['Default value'][$idx])
       #if $val=="nan" or $val=="NA"
	#set $val="0"
       #end if
      <uax:$type>$val</uax:$type>
      <uax:$type>0</uax:$type>
  </Value>
#end if
</UAVariable> 
#silent N.append($c['OPC_UA node'][$idx])
#end if
#silent L.append($name)
#end if
#end for

test/genDevice.py

100644 → 100755
+3 −0
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ def generateComponent(config):
		print ("The Assembly:"+wb.MainSheet['Assembly'][0]+" includes one device\n",devs)
		genSingle(wb,config)
	os.chdir(pwd)
	return devs

def genMulti(wb,config):
	for dev in wb.MainSheet['Device Name']:
@@ -132,8 +133,10 @@ def getInput():
if __name__ =="__main__":
	pwd=os.getcwd()
	config=getInput()

	generateComponent(config)
	print ("ALL Done")
	
	os.chdir(pwd)
		
	
Loading