E
egarcia
Guest
Hello, Thank you for the additional information. In general, the difference that you observed in the catalog file should not impact the filter operation. Internally, when using the version in 11.3, the JSDO knows that filter is a parameter because it extracts it from the "path" property. The difference with the new catalog is that it is explicitly defined. It would be interesting to see how the query string between the two cases compare. What does your filter look like when using 11.3? Do you have special code in the Business Entity to process the filter? When using serverFiltering, the filter is passed to the backend for processing. You should see the same behavior, a filter being passed to the server, with both, 11.3 and 11.4. The filter expression from the Kendo UI DataSource is an object with the various conditions. To process such an object, we use the JSON Filter Pattern. The READ operation in the Business Entity would include the following annotations: @openapi.openedge.method.property (name="mappingType", value="JFP"). @openapi.openedge.method.property (name="capabilities", value="ablFilter,top,skip,id,orderBy"). METHOD PUBLIC VOID ReadCustomer( ... ): See details and sample implementation at: documentation.progress.com/.../index.html The annotation mappingType = JFP is added to the catalog and in this way, the JSDO on the client side can recognize that this is the method that you intend to use to process a filter expression. A built-in mappingType plugin in the JSDO, converts the object with the filter expression into an ABL query expression. A serialized JSON object is sent the server. The code in the documentation is a sample implementation for the JFP. You can change the code if you need it. The key is that it should keep the protocol (interface) the same. Alternatively, you can write your own code to process a filter expression as an object. Please let me know what you find from looking at the query string. I hope this helps.
Continue reading...
Continue reading...