2017-10-22 00:25:57 +00:00
|
|
|
|
|
|
|
var Connection = require ('./connection');
|
|
|
|
var Model = require ('./model');
|
|
|
|
|
|
|
|
module.exports = new Class
|
|
|
|
({
|
|
|
|
Extends: Vn.Form
|
|
|
|
,Tag: 'db-lot'
|
|
|
|
,Properties:
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* The connection used to execute the statement.
|
|
|
|
*/
|
|
|
|
conn:
|
|
|
|
{
|
|
|
|
type: Connection
|
|
|
|
,set: function (x)
|
|
|
|
{
|
|
|
|
this.model.conn = x;
|
|
|
|
}
|
|
|
|
,get: function ()
|
|
|
|
{
|
|
|
|
return this.model.conn;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
|
|
* The model query.
|
|
|
|
*/
|
|
|
|
query:
|
|
|
|
{
|
|
|
|
type: String
|
|
|
|
,set: function (x)
|
|
|
|
{
|
|
|
|
this.model.query = x;
|
|
|
|
}
|
|
|
|
,get: function ()
|
|
|
|
{
|
|
|
|
return this.model.query;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
|
|
* The model select statement.
|
|
|
|
*/
|
|
|
|
stmt:
|
|
|
|
{
|
|
|
|
type: Sql.Stmt
|
|
|
|
,set: function (x)
|
|
|
|
{
|
|
|
|
this.model.stmt = x;
|
|
|
|
}
|
|
|
|
,get: function ()
|
|
|
|
{
|
|
|
|
return this.model.stmt;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/**
|
|
|
|
* The lot used to execute the statement.
|
|
|
|
*/
|
|
|
|
lot:
|
|
|
|
{
|
|
|
|
type: Vn.Lot
|
|
|
|
,set: function (x)
|
|
|
|
{
|
|
|
|
this.model.lot = x;
|
|
|
|
}
|
|
|
|
,get: function ()
|
|
|
|
{
|
|
|
|
return this.model.lot;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
,initialize: function (props)
|
|
|
|
{
|
|
|
|
this.model = new Model ();
|
|
|
|
this.parent (props);
|
|
|
|
}
|
|
|
|
|
|
|
|
,appendChild: function (child)
|
|
|
|
{
|
|
|
|
if (child.nodeType === Node.TEXT_NODE)
|
|
|
|
this.query = child.textContent;
|
|
|
|
}
|
2017-11-20 12:15:01 +00:00
|
|
|
|
|
|
|
,refresh: function ()
|
|
|
|
{
|
|
|
|
if (this._model)
|
|
|
|
this._model.refresh ();
|
|
|
|
}
|
|
|
|
|
|
|
|
,performOperations: function ()
|
|
|
|
{
|
|
|
|
if (this._model)
|
|
|
|
this._model.performOperations ();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the index of the column from its name.
|
|
|
|
*
|
|
|
|
* @param {string} columnName The column name
|
|
|
|
* @return {integer} The column index or -1 if column not exists
|
|
|
|
*/
|
|
|
|
,getColumnIndex: function (columnName)
|
|
|
|
{
|
|
|
|
return this._model ?
|
|
|
|
this._model.getColumnIndex (columnName) : -1;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets a value from the form using the column index.
|
|
|
|
*
|
|
|
|
* @param {string} columnName The column index
|
|
|
|
* @return {Object} The value
|
|
|
|
*/
|
|
|
|
,getByIndex: function (column)
|
|
|
|
{
|
|
|
|
return this._model.getByIndex (this._row, column);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Sets a value on the form using the column index.
|
|
|
|
*
|
|
|
|
* @param {string} columnName The column index
|
|
|
|
* @param {Object} value The new value
|
|
|
|
*/
|
|
|
|
,setByIndex: function (column, value)
|
|
|
|
{
|
|
|
|
return this._model.setByIndex (this._row, column, value);
|
|
|
|
}
|
2017-10-22 00:25:57 +00:00
|
|
|
});
|