Bookshelf Home | Contents | Index | PDF |
Oracle Web Services On Demand Guide > Best Practices for Designing Client Application > Best Practices for Integration Performance > API CallsWhenever possible, it is recommended that queries be as specific as possible to reduce the number of records in the result set. You must restrict the fields returned by queries to only the fields that are required by your process. Queries that involve related child objects (that is child objects that are top-level objects), or complex queries that involve criteria from both parent and related child objects, might perform better if they are separated into multiple requests. The following are also recommended:
Performance of the Update and Insert Methods Versus the InsertOrUpdate MethodIf you use Web Services v1.0, designing your application to use the Insert and Update methods can result in an increase in throughput compared to using the InsertOrUpdate method. This is due to the additional business logic and SQL statements executed during the InsertOrUpdate operation to determine whether the submitted records match any existing records in the Oracle CRM On Demand database. The performance and throughput improvement might not be apparent at lower volumes, but high volume applications could benefit from the direct update and insert operation, which does not require the additional business logic to determine whether the records already exist. Working with AttachmentsFor a number of record types, you can include attachments with Web services requests. If you add attachments, remember that:
If you are adding the same attachment to multiple records, you can take advantage of a reuse facility for attachments, see Attaching a File to Multiple Records. In this way, you do not include the content for each record in the request, you use the ContentId on one record and reference that ContentId from other records. For more information about using attachments in Web Services On Demand, see Using Attachments with Web Services On Demand. Querying Login History and User UsageWhen you use the LoginHistoryQueryPage and UserUsageQueryPage methods, the queries must be as specific as possible, that is, you must not query for all records with every request. For example, you can narrow the search results by: For more information, see LoginHistoryQueryPage and UserUsageQueryPage. Using the QueryPage MethodThe following are best practices for using the QueryPage method and similar methods like MetadataChangeSummaryQueryPage and SalesProcessQueryPage:
For more information about the QueryPage method, see QueryPage, or QueryPage. Querying Records with Foreign Key fields with the No Match Row Id ValueThe There are different cases for which However, if you update a record and specify blank as the foreign key value, then it is set to empty. In this case, querying the record returns You must take the No Match Row Id value into consideration for foreign key fields when querying records. If you try to retrieve all records where the foreign key value is not null, then the query returns records including those with the For example, when querying for accounts with primary contact associated to the account, the search criteria must specify that the PrimaryContactId is not null and not equal to <?xml version="1.0" encoding="utf-16" standalone="no"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <AccountQueryPage_Input xmlns="urn:crmondemand/ws/ecbs/account/10/2004"> <Account searchspec="[PrimaryContactId] IS NOT NULL AND [PrimaryContactId] <> 'No Match Row Id'"> <PrimaryContactId></PrimaryContactId> Using Indexed Custom FieldsTo optimize performance, you can use custom fields that have been indexed for specific record types. Indexed fields are special fields that improve the response time during the search process or sorting on a particular list. Indexed custom fields are preconfigured in the Oracle CRM On Demand database. You can change the labels on the indexed custom fields, but you cannot change the integration tags. NOTE: As an option, you can choose to migrate your data from nonindexed to indexed custom fields to increase the performance of the Web services queries that your users execute. To migrate the existing data to the available record types, use the export and import functionality of Oracle CRM On Demand or Web services. For more information about exporting and importing data, see Oracle CRM On Demand Online Help. Indexed custom fields are prefixed with Indexed as a default. |
Oracle Web Services On Demand Guide, Version 26.0 (Oracle CRM On Demand Release 38) | Copyright © 2019, Oracle and/or its affiliates. All rights reserved. Legal Notices. | |