CAML Queries
Example
//create an object to act as a namespace var sharePoint = {}; //Function that makes the client side call to the server sharePoint.getItems = function (listName, userId, onSuccess, onFailure) { sharePoint.clientContext = SP.ClientContext.get_current(); sharePoint.list = sharePoint.clientContext.get_web().get_lists().getByTitle(listName); var camlQuery = new SP.CamlQuery(); var caml = '<View>' + '<Query>' + '<Where>' + '<And>' + '<Eq>' + '<FieldRef Name=\'Author\' LookupId=\'TRUE\' />' + '<Value Type=\'Integer\'>' + userId + '</Value>' + '</Eq>' + '<Eq>' + '<FieldRef Name=\'Submitted\' />' + '<Value Type=\'Boolean\'>False</Value>' + '</Eq>' + '</And>' + '</Where>' + '<OrderBy><FieldRef Name=\'PeriodFrom\' Ascending=\'True\' /></OrderBy>' + '</Query>' + '<RowLimit>1</RowLimit>' + '</View>'; camlQuery.set_viewXml(caml); sharePoint.listItems = sharePoint.list.getItems(camlQuery); sharePoint.clientContext.load(sharePoint.listItems); //context.load(<objectCollection>,'Include(<Field1>,<Field2>,<Field3>'); sharePoint.clientContext.executeQueryAsync(Function.createDelegate(this, onSuccess), Function.createDelegate(this, onFailure)); }; //If successful, this method is called sharePoint.onSuccess = function (sender, args) { console.log(sharePoint.listItems.get_count()); for (var count = 0; count < sharePoint.listItems.get_count(); count++) { var item = sharePoint.listItems.get_item(count); console.log("Title: " + item.get_item('Title')); } }; //If an error occurs this method is called sharePoint.onFailure = function (sender, args) { if (args instanceof SP.ClientRequestFailedEventArgs) { var message = args.get_message(); var code = args.get_errorCode(); var details = args.get_errorDetails(); var value = args.get_errorValue(); var typeName = args.get_errorTypeName(); var stack = args.get_stackTrace(); var correlationId = args.get_errorTraceCorrelationId(); alert('Error: ' + message + "."); } else { alert('Unexpected Error'); } }; //This method initates the process function Test() { sharePoint.getItems("Timesheets", 2,sharePoint.onSuccess, sharePoint.onFailure); } $(document).ready(function () { ExecuteOrDelayUntilScriptLoaded(Test, "SP.js"); });
Available Methods
//Note: Not all methods are intended for use. This is a reference only. getEnumerator itemAt get_item get_childItemType getById get_listItemCollectionPosition get_areItemsAvailable retrieveItems getItemAtIndex get_count get_data addChild removeChild customFromJson retrieve refreshLoad
CodeMonkey Software is a division of JCHMedia www.jchmedia.com