Files
matlab-python/Tilt/DBwriteWL.m

37 lines
1.8 KiB
Matlab
Executable File

function DBwriteWL(DATAinsert,idElabData,ListaDate,NodeNum,IDcentralina,DTcatena,cWL,Therm,conn)
nNodo = num2str(NodeNum);
l = ListaDate;
for ii=1:l
idData = idElabData(ii,1);
if idData == 0 % Se la data non č su DB (=0), scrivo i dati
tablename = 'ELABDATADISP';
if Therm(cWL) == 1 % scrivo la T
colnames = {'UnitName','ToolNameID','NodeNum','EventDate','EventTime',...
'XShift','water_level','T_node','calcerr'};
data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),DATAinsert(ii,4),DATAinsert(ii,5),...
DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,8),DATAinsert(ii,9)];
else % NON scrivo la T
colnames = {'UnitName','ToolNameID','NodeNum','EventDate','EventTime','XShift','water_level','calcerr'};
data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),...
DATAinsert(ii,4),DATAinsert(ii,5),DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,9)];
end
fastinsert(conn,tablename,colnames,data);
else % altrimenti li aggiorno
tablename = 'ELABDATADISP';
if Therm(cWL) == 1 % scrivo la T
colnames = {'XShift','water_level','T_node','calcerr'};
data = [DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,8),DATAinsert(ii,9)];
else % NON scrivo la T
colnames = {'XShift','water_level','calcerr'};
data = [DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,9)];
end
whereclause = ['WHERE UnitName = ''' IDcentralina ''' and ToolNameID = '''...
DTcatena ''' and NodeNum = ''' nNodo ''' and EventDate = ''' ...
cell2mat(DATAinsert(ii,4)) ''' and EventTime = ''' cell2mat(DATAinsert(ii,5)) ''' '];
update(conn,tablename,colnames,data,whereclause)
end
end
end