I'm writing a webmail-application by using smartgwt.
I'm trying to use auto-search on TextItem.
The TextItem is added a keyup-Handler and go to server side to do sql search every time when user
key-in a word. (I don't use js search because the speed of ie is very slow when doing filtering)
Further more, i use DSResponse.setData to create the listgrid records.
The problem is when setData is called, the grid always has a "loading data" message during the search.
How can i prevent this? Or just like PickListProperties, no "loading data" message, grid show the result without refresh.
Thanks!!
The message will appear whenever the grid calls the server to retrieve the data.
However you can, get the entire data on load, and whenever the the user keys in a word, just filter the grid by creating a new criteria like this :-
Criteria criteria=new Criteria();
criteria.addCriteria("name",textBox.getValue());
grid.filterData(criteria);
This way the loading message would not appear and also it would save you trips to server.
Related
I want a validation to fire after hitting tab on a field. The thing is every time I click on the empty field it runs the validation to all rows. Which causes errors because the other existing rows in the table aren't in the scope of the validation. I am using a back bean function to and can see the validation is called everytime I hit the empty field. I think this has to do with autosubmit being on but how else can I validate on a tab?
I don't know that this will answer your q's but might be a start:
http://www.slideshare.net/stevendavelaar/18-invaluable-lessons-about-adfjsf-interaction
https://docs.oracle.com/cd/E15586_01/web.1111/b31973/af_validate.htm
https://rohanwalia.blogspot.com/2013/10/client-side-validation-in-adf-faces.html
https://www.jobinesh.com/2009/08/how-to-skip-validation.html
Also, if you're doing ADF work definitely get Jobinesh's book as it covers many things in depth: https://www.barnesandnoble.com/w/oracle-adf-real-world-developers-guide-jobinesh-purushothaman/1111982100
Also consider ADF Cookbook.
In CRM Online on a customer form is there anyway that you can check if the Associated View for Assets is blank? And if its blank change a field value based on it.
Using JavaScript, 2 ways:
The associated grid is showing records related to your primary record. You can perform the same query the grid is doing using REST which will tell you if there are any records. You can then count the records, and change the field value as required. This approach is better if there are records in the database but which aren't shown in the view for some reason, e.g. view filters.
Access the Grid objects data using getRows(). As above you can then count the records, and change the field value as required. The downside of this is I believe those methods only give you access to the records shown on the form (and not any hidden by filters but still in the database) - but I don't think that that will be a problem here.
Worth bearing in mind that this approach only works client side, e.g. someone has to be actually looking at the form.
If you need to cover the a non-client side approach, e.g. workflows creating records, then you should probably look at plugin development so the changes can be performed server side.
As a side if you just want a simple count shown on form you then you should probably look at Calculated Fields and in particular Rollup fields. You might also be able to run further client side JavaScript from the count.
I'm considering creating an alternative to PFQueryTableViewController because I need some functionality that isn't offered.
I'm curious if the Load Next Page button on PFQueryTableViewController results in a server call?
...because in my implementation I'm going to run a query each time I need to load another page. I'm hoping that this won't be more expensive than PFQueryTableViewController.
When queryForTable is called it keeps a record of how many objects of that queried class are needed to display in the PFQTVC. The count is updated every time loadNextPage is called and loads the necessary data to fill the remaining objectsPerPage that you set for the PFQTVC. If there are more objects that could be loaded into the table, the PFQTVC can create a custom "Load More Cell" to load the next page, or remain content. So by having to update the table for next page and someone add a new post on a twitter like app for example, it would need to request that data because its new.
I have two drop down list on my registration page of sql type. they both fetch data from database. but my problem is that in second drop down list , i want specific data as per the option selected in dropdown list 1. how to do it?
thank you very much
There are two possibilities(well theoretically endless)..
1) You send the whole data on pageload and then filter it using javascript based on the first selection.
2) Use the ajax technique, where you send the ajax handler the selected value and then the handler queries the database and sends the relative data which you append on the second select in the runtime.
Note:- for larger tables the firstone is NOT Recommended.
I am trying to implement the DOJO data gird in my application. On load of the xPages I am getting the current user id in a session scope variable and filtering the REST services that supplies the data grid the data from a view, based on the user id. I have used the "keys" property to filter the values so that the current user should be able to see the values only relevant to him in the grid. This is working fine, but when I try to sort the results once the page is loaded it starts displaying blank values and sort does not work. I have made sure that the columns I require to sort are also made sorted for the back-end view by checking the "Click on column header to sort" option in the view. Still I am unable to get the sorting working for columns. Please let me know if there is a work-around for this problem or am I doing or not doing something for the default sort not to work as expected.
Nash, I have had similar issues with the blank rows as you describe. I think the blanks lines are rows that don't match the keys. Here are my tips for fixing this. The issue I think is not with your grid but your Rest service.
Use a viewJsonService type of rest service
Use a category filter instead of keys
Make your category filter code similar to mine below. This will ensure that you don't show documents to someone who shouldn't see them. When the category is null, the Rest service will show all documents. This isn't causing the blank lines, but is a best practice IMO.
var category:String = lineItemBean.getThisUNID();
//wherever your category comes from, maybe session.getUserName() in your case
if(category == null){
return "show nothing"
} else {
return lineItemBean.getThisUNID();
}
I hope this helps. My guess is that this will fix your sorting issues as well.