

only support for single database.

primitive types:
	string (text)
	int (number)
	decimal (money)
	float
	date

custom types:
	can use only primitive types as variables

method return types:
	primitive
	primitive[]
	bool
	dataset
	custom types

method sortvars,sortorder:
	only for query method type
	put "" to disable sort
	order can be asc,desc
	can use multiple values
	seperate multiple values by using ";"

method outvars:
	only for query method type with primitive or primitive array or dataset return types
	can use multiple values when using dataset as return type
	seperate multiple values by using ";"

method duplicates:
	only for query method type with primitive array return type

method usersql:
	only for "query" method type
	in base64 format
	table,sortvar,sortorder,outvar,operation,boperator ignored when using

param types:
	primitive types
	custom types

param name:
	any name if param type is custom type
	var name of table type if type is primitive

param operation:
	equal (can use for strings)
	less
	greater
	equal_less
	equal_greater
	not (can use for strings)

param boolean operator
	and
	or

method types:
	query (primitive or dataset or custom type or primitive array return types)
	is (return type bool, only primitive types for params, require at least one param, operation & boperator must exist)
	(single record)add (return type bool, only custom types for param, no empty params,only one param, operation,boperator ignored)
	(single record)update (return type bool, require at least 2 params, first param is custom type, and others are primitives, operation is always "equal", boperator is always "and")
	(single record)delete (return type bool, require at least one param, all params are primitive, operation is always "equal", boperator is always "and")

supported query types(method types):

	string GetLastRepName()
		sort results for given sortvars and give first record given outvar
		outvar must provide, sorting not essential
		returns null or 0 or DateTime.MinValue for empty results

	string GetLastRepName(DateTime deadLine)
		sort results for given sortvars and give first record given outvar
		outvar must provide, sorting not essential
		only primitive types for params, require at least one param, operation & boperator must exist
		returns null or 0 or DateTime.MinValue for empty results

	string[] GetRepNameList()
		sort results for given sortvar, consider duplicates attribute
		outvar must provide, sorting not essential
		sort option must enable if duplicates attribute set to false
		return empty array for empty results

	string[] GetRepNameList2(string item, string subItem)
		sort results for given sortvar, consider duplicates attribute
		outvar must provide, sorting not essential
		sort option must enable if duplicates attribute set to false
		return empty array for empty results
		only primitive types for params, require at least one param, operation & boperator must exist

	TripClearanceData GetLastData()
		sort results for given sortvar and give first record (sorting not essential)
		returns null for empty results

	TripClearanceData GetRepData(string repName)
		sort results for given sortvar and give first record (sorting not essential)
		returns null for empty results
		only primitive types for params, require at least one param, operation & boperator must exist

	DataSet GetAllData()
		sort results for given sortvar (sorting not essential)
		require at least one outvar

	DataSet GetData(string repName)
		sort results for given sortvar (sorting not essential)
		require at least one outvar
		only primitive types for params, require at least one param, operation & boperator must exist
