system.mes.analysis.createCustomDataConnection()

Sepasoft MES Module Suite

Description

Create a new custom data-connection object. This is an advanced feature not recommended for most users.  Most use-cases can be accommodated without custom analysis features.

Syntax

system.mes.analysis.createCustomDataConnection() 


  • Parameters

None

  • Returns

CustomDataConnection dataConnection - A new custom data-connection object of the CustomDataConnection class.

  • Scope

Gateway

Code Examples

Code Snippet

Code
from java.lang import Exception
from org.apache.log4j import Logger
log = Logger.getLogger("CustomAnalysis")
# It creates and registers a custom data-connection object.
class CustomDataConnection(system.mes.analysis.createCustomDataConnection().__class__):
	def __init__(self, dataConnectionName):
		import system.mes.analysis
		system.mes.analysis.createCustomDataConnection().__class__.__init__(self, dataConnectionName)		
	
	def loadData(self, valueItem, fromDate, toDate):
		from java.util import ArrayList
		from java.util import Calendar
		from java.util import Date
		import system.mes.analysis
		data = ArrayList()
		calendar = Calendar.getInstance()
		interval = valueItem.getValueItemInfo().getData("interval")
		timestamp = Date(fromDate.getTime())
		value = 1
		while timestamp.before(toDate):
			rawSourceValue = system.mes.analysis.createRawSourceValue(timestamp, value)
			data.add(0, rawSourceValue)
			calendar.setTime(timestamp)
			calendar.add(Calendar.HOUR_OF_DAY, interval)
			timestamp = calendar.getTime()
			value += 1
		return data
	
	def loadFilterOptions(self, valueItemInfo, fromDate, toDate):
		return None
try:
	log.info("Register a custom data-connection object.")
	system.mes.analysis.registerCustomDataConnection(CustomDataConnection("Custom Data Source"))
except Exception, e:
	log.warn(e.getMessage())

Sepasoft MES Module Suite