rootSchemaName: "CurrencyRate"
});
esq.addColumn("Rate");
//var startDate = esq.addColumn('StartDate');
//startDate.orderDirection = Terrasoft.OrderDirection.DESC;
var yesterday = new Date();
var tomorrow = new Date();
yesterday.setDate(tomorrow.getDate() - 1);
tomorrow.setDate(tomorrow.getDate() + 1);
esq.filters.addItem(Terrasoft.createColumnFilterWithParameter(
this.Terrasoft.ComparisonType.EQUAL, "Currency", this.get("LogCurrencyRow").value));
esq.filters.addItem(Terrasoft.createColumnFilterWithParameter(
this.Terrasoft.ComparisonType.GREATER, "Startdate", yesterday));
esq.filters.addItem(Terrasoft.createColumnFilterWithParameter(
this.Terrasoft.ComparisonType.LESS, "Startdate", tomorrow));
esq.getEntityCollection(function(response) {
if (response.success) {
response.collection.each(function(item) {
CurrencyRate = item.get("Rate");
}, this);
}
else if (CurrencyRate === 0)
{
Не могу разобраться с датой. Без даты работает.
Что не так?
Помогите пож-та.
Нравится
"Юсупов Марат" написал:esq.addColumn('StartDate');
"Юсупов Марат" написал:this.Terrasoft.ComparisonType.GREATER, "Startdate", yesterday))
Так StartDate или Startdate? А вообще, хотелось бы увидеть скрин консоли с ошибкой)
Также обратите внимание, что в переменную yesterday и tomorrow попадёт текущее время:
yesterday Sun Mar 19 2017 16:14:13 GMT+0300 (RTZ 2 (зима)) tomorrow Tue Mar 21 2017 16:14:13 GMT+0300 (RTZ 2 (зима))
Для "чистоты" запроса можно его подправить:
yesterday = Terrasoft.startOfDay(yesterday) Sun Mar 19 2017 00:00:00 GMT+0300 (RTZ 2 (зима)) tomorrow = Terrasoft.endOfDay(tomorrow) Tue Mar 21 2017 23:59:59 GMT+0300 (RTZ 2 (зима))
Данила, спасибо.
Привыкнуть не могу что регистр важен.
Заработало, спасибо.
var LogCurrencyUpper = this.get("LogCurrencyRow"); //.value; toUpperCase() esq = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "CurrencyRate" }); esq.addColumn("Rate"); var yesterday = new Date(); yesterday = Terrasoft.startOfDay(yesterday) var today = new Date(); today = Terrasoft.endOfDay(today) esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.EQUAL, "Currency", this.get("LogCurrencyRow").value)); esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.GREATER, "StartDate", yesterday)); esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.LESS, "StartDate", today)); esq.getEntityCollection(function(response) { if (response.success) { response.collection.each(function(item) { CurrencyRate = item.get("Rate"); }, this); } else if (CurrencyRate === 0) { //код }
Спасибо еще раз. :smile:
Чтото перестало работать
ошибка в консоли
Error while sending request response status: 500 (FormatException) request url: ../DataService/json/SyncReply/SelectQuery method: POST request data: {"rootSchemaName":"CurrencyRate","operationType":0,"filters":{"items":{"b5859fc2-36c6-4b78-a147-1a8f8cbff7cd":{"filterType":1,"comparisonType":3,"isEn...
var _tomorrow = new Date(); _tomorrow.setDate(_tomorrow.getDate() + 1); var _yesterday = new Date(); _yesterday.setDate(_yesterday.getDate() - 1); _tomorrow = Terrasoft.endOfDay(_tomorrow); _yesterday = Terrasoft.startOfDay(_yesterday); esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.EQUAL, "Currency", LogCurrencyRow)); esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.GREATER, "StartDate", _yesterday)); esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.LESS, "StartDate", _tomorrow)); esq.getEntityCollection(function(response) { } else { }
Интересная вещь в хроме время нормальное показывает, а в файрфоксе по гринвичу.
Данный главное есть.
Id CreatedOn CreatedById ModifiedOn ModifiedById StartDate EndDate CurrencyId Rate ProcessListeners RateMantissa
906BD40D-2955-4E62-9F84-44B46CB6F5BF 2017-03-22 10:08:54.057 NULL 2017-03-22 10:08:54.057 NULL 2017-03-22 NULL C0057119-53E6-DF11-971B-001D60E938C6 62.2699 0
Еще нашел такое у responce
В "{0}" ожидалось шестнадцатеричное значение 0x.
Нашел свой косяк.
esq.filters.addItem(Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.EQUAL, "Currency", LogCurrencyRow.value));