|
12.05.2017, 18:03 | #1 |
Участник
|
Цитата:
Вижу в девтуле, что используется какой-то язык запросов к БД. Например: filterscount:0Возникли вопросы: 1) Этот язык запросов к БД вы сами придумали или взяли какой-то имеющийся? Какой? 2) Вижу, вроде используются только однотабличные запросы к БД. А с джойнами можно запросы делать? Мне кажется, будет полезно сделать возможность отправлять несколько запросов к БД одним http-запросом. Это сильно сократит время получения данных с сервера в случае множества запросов. |
|
12.05.2017, 19:48 | #2 |
Участник
|
Цитата:
Вот так выглядит Absence registration в базе. Поля employeeid, cause_of_absense, unitofmeasure это ссылки на другие таблицы. Чтобы вытащить значение в форму надо через двойное подчеркивание написать имя поля в связанной таблице. Например employeeid__first_name. Движок сам все делает. Код формы Absence registration можете посмотреть правой кнопкой на форме и "Просмотр кода фрейма". Также можно посмотреть код любой формы, все открыто.
__________________
Удачи! |
|
12.05.2017, 20:10 | #3 |
Участник
|
Насчет языка запросов, то пришлось придумать. А то в реквесте браузера нельзя передавать некоторые символы
Вот придумал язык: X++: switch ($filtercondition) { case "CONTAINS": return "LIKE"; break; case "DOES_NOT_CONTAIN": return "NOT LIKE"; break; case "EQUAL": return "="; break; case "NOT_EQUAL": return "<>"; break; case "GREATER_THAN": return ">"; break; case "LESS_THAN": return "<"; break; case "GREATER_THAN_OR_EQUAL": return ">="; break; case "LESS_THAN_OR_EQUAL": return "<="; break; case "NULL": return "IS NULL"; break; case "NOT_NULL": return "IS NOT NULL"; break; case "IN": return "IN"; break; default: return "UNKNOWN"; }
__________________
Удачи! |
|
13.05.2017, 01:02 | #4 |
Участник
|
Спасибо за пояснения, стало понятнее.
Цитата:
Вообще, люди уже довольно потоптались на этой теме и родили стандарт ODATA - текущая версия 4.0 - http://www.odata.org/, который вроде как реализован в продуктах Microsoft, SAP, 1C, IBM, а также других, менее известных организаций. Мне кажется, даже частичная совместимость с этим стандартом как минимум украсила бы ваш продукт, если конечно нет каких-то противопоказаний его использования. Цитата:
Мне видится, что реализация примеров отчетов (одного простого и одного сложного) была бы логичным шагом развития вашего прототипа. |
|
13.05.2017, 08:37 | #5 |
Участник
|
Цитата:
Сообщение от Bobkov
Со вводом данных более-менее понятно. А как вы видите реализацию отчетов, в том числе больших и сложных? Тут без долгих запросов не обойтись, наверное.
Мне видится, что реализация примеров отчетов (одного простого и одного сложного) была бы логичным шагом развития вашего прототипа. С отчетами есть 2 варианта, либо на сервере обрабатывать информацию и выдавать в готовом виде на PHP, либо выкачивать информацию на клиента (возможно с группировками и суммированием) и делать расчеты на клиентской машине на JavaScript в браузере. Смотря что будет быстрее. Например на рабочей станции будет стоять мощный проц и дофига памяти, тогда лучше запросить справочники и расчитывать отчет на клиенте, а не издеваться над сервером. PS На форме Employee есть кнопки в названии Print. Можно нажимать.
__________________
Удачи! |
|
|
|