Android SDK Samples - Records Operations
//set the recordParams
val recordParams = ZCRMQuery.Companion.GetRecordParams()
recordParams.page = 10
recordParams.perPage = 100
recordParams.sortByField = "Full_Name"
recordParams.sortOrder = CommonUtil.SortOrder.ASC
//$module object is of ZCRMModule
//call getRecords() using $module object by passing the recordParams as a parameter
//recordParams - Record parameters are given as an object.
$module.getRecords(recordParams,object : DataCallback<BulkAPIResponse, List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, records: List<ZCRMRecord>)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception : $exception")
}
})
//set the recordParams
val recordParams = ZCRMQuery.Companion.GetRecordParams()
recordParams.page = 10
recordParams.perPage = 100
recordParams.sortByField = "Full_Name"
recordParams.sortOrder = CommonUtil.SortOrder.ASC
//$module object is of ZCRMModule
//call getRecords() using $module object by passing the cvId, filterId and recordParams as parameters.
//cvId - Id of the custom view.
//filterId - Id of the filter.
//recordParams - Record parameters are given as an object.
$module.getRecords(778942575,9944368964, recordParams, object : DataCallback<BulkAPIResponse, List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse,records: List<ZCRMRecord>)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception : $exception")
}
})
//$module object is of ZCRMModule
//call getRecord() using $module object by passing the entityId as a parameter.
//entityId - Id of the record to be returned.
$module.getRecord(371xxx184, object : DataCallback<APIResponse, ZCRMRecord>
{
override fun completed(response: APIResponse, record: ZCRMRecord) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException){
println("Throws Exception : $exception")
}
})
val record = ZCRMSDKUtil.getModuleDelegate("Leads").newRecord()
record.setFieldValue("Last_Name", "Boyle")
record.setFieldValue("First_Name", "Patricia")
record.setFieldValue("Email","p.boyle@zylker.com" )
record.setFieldValue("Phone","9999999999")
record.create(object : DataCallback<APIResponse, ZCRMRecord>
{
override fun completed(response: APIResponse, record: ZCRMRecord)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception: $exception")
}
})
//setup the triggers; possible values are WORKFLOW, APPROVAL, BLUEPRINT
val triggers = listOf<CommonUtil.Trigger>(CommonUtil.Trigger.APPROVAL,CommonUtil.Trigger.WORKFLOW)
//$record object is of ZCRMRecord
//define the field and its value using setFieldValue()
$record.setFieldValue("Lead_Status", "Yet to Contact")
//call update() using $record object by passing the triggers as parameter to it
$record.update(triggers,object: DataCallback<APIResponse,ZCRMRecord>
{
override fun completed(response: APIResponse, zcrmentity: ZCRMRecord)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception : $exception")
}
})
val recordList = arrayListOf<ZCRMRecord>()
//$record1, $record2 and $record3 objects are of ZCRMRecord
//define the records with its fields and values
//add the defined record to recordList
$record1.setFieldValue("No_of_Employees", "1205")
recordList.add($record1)
$record2.setFieldValue("Designation", "Executive")
recordList.add($record2)
$record3.setFieldValue("Secondary_Email", "p.boyle@zylker.com" )
recordList.add($record3)
//setup the triggers; possible values are WORKFLOW, APPROVAL, BLUEPRINT
val triggers = listOf<CommonUtil.Trigger>(CommonUtil.Trigger.APPROVAL,CommonUtil.Trigger.WORKFLOW)
//$module object is of ZCRMModule
//call updateRecords() using $module object by passing the recordList and triggers as parameters to it.
$module.updateRecords(recordList,triggers,object:DataCallback<BulkAPIResponse, List<ZCRMRecord>> {
override fun completed(response: BulkAPIResponse,zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
val recordList = listOf<Long>(371xxx009,371xxx400,371xxx402,371xxx405 )//list of id's of the record to be updated
//$module object is of ZCRMModule
//call updateRecords() using $module object by passing the entityIds, fieldAPIName and its value as parameters.
//entityIds - id's of the record to be updated
//fieldAPIName - fieldAPIName to which the field value is updated
//value - field value to be updated
$module.updateRecords(recordList,"Lead_Status","Contacted", object: DataCallback<BulkAPIResponse, List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, records: List<ZCRMRecord>)
{
println("${response.responseJSON} ")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception : $exception")
}
})
//records - list of ZCRMRecord objects to be upserted
val recordsList = ArrayList<ZCRMRecord>()
//define record1 and record2
//$module object is of ZCRMModule
val record1 = $module.newRecord()
record1.setFieldValue("Company", "Zylker")
record1.setFieldValue("Last_Name", "Roger")
record1.setFieldValue("Email", "roger.mail@zylker.com")
record1.setFieldValue("State", "Texas")
recordsList.add(record1)
val record2 = $module.newRecord()
record2.setFieldValue("Company", "Carszone")
record2.setFieldValue("Email", "boyle@zylker.com")
record2.setFieldValue("Last_Name", "Williamson")
record2.setFieldValue("State", "Atlanta")
recordsList.add(record2)
//duplicateCheckFields - list of Fields to be duplicate checked
val duplicateCheckFields = listOf<String>("Email","Company")
//list of Triggers
val triggers = listOf<CommonUtil.Trigger>(CommonUtil.Trigger.APPROVAL,CommonUtil.Trigger.WORKFLOW)
//$module object is of ZCRMModule
//call upsertRecords() using $module object by passing the recordsList, duplicateCheckFields and triggers as parameters.
$module.upsertRecords(recordsList,duplicateCheckFields,triggers,object : DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println("Throws Exception : $exception")
}
})
//$record object is of ZCRMRecord
//call delete() using $record object
$record.delete(object : ResponseCallback<APIResponse>
{
override fun completed(response: APIResponse)
{
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException)
{
println(" record delete failed : $exception")
}
})
val entityIds = arrayListOf<Long>()
entityIds.add(371xxx001)
entityIds.add(371xxx001)//371xxx001 and 371xxx001 are the id's of the record to be deleted
//$module object is of ZCRMModule
//Call deleteRecords() using the $module object by passing the entityIds as a parameter.
//entityIds - id's of the record to be deleted
$module.deleteRecords(entityIds, object:ResponseCallback<BulkAPIResponse>
{
override fun completed(response: BulkAPIResponse) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
//$module object is of ZCRMModule
//Call getTrashRecords() using the $module object by passing the deleted records' type, modifiedSince date, Nth page and perPage as parameters.
//type - deleted record type of the records are to be retrieved (ALL, PERMANENT, RECYCLE).
//modifiedSince - filter only those modified since the given time
//page - Nth page from which the records are to be retrieved.
//perPage - Number of records in the Nth page to be retrieved.
$module.getTrashRecords(CommonUtil.DeletedRecordType.ALL, "2020-08-06T16:23:24+05:30",20, 200, object : DataCallback<BulkAPIResponse,List<ZCRMTrashRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMTrashRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
//$module object is of ZCRMModule
//Call searchByText() using $module object by passing the searchText as a parameter.
//searchText - text to be searched
$module.searchByText("high priority", object: DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse,zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
//$module object is of ZCRMModule
//Call searchByText() using $module object by passing the searchText, page and perPage as parameters.
//searchText - text to be searched
//page - page number of the module
//perPage - no of records to be given for a single page.
$module.searchByText("high priority",3,15, object: DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse,zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
//$module object is of ZCRMModule
//Call searchByPhone() using $module object by passing the value to be searched as a parameter.
//value - phone number value to be searched
$module.searchByPhone("567898765456",object:DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception: $exception")
}
})
//$module object is of ZCRMModule
//Call searchByPhone() using $module object by passing the value to be searched as a parameter.
//value - phone number value to be searched
//page - page number of the module
//perPage - no of records to be given for a single page.
$module.searchByPhone("567898765456",3,15,object:DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception: $exception")
}
})
//$module object is of ZCRMModule
//Call searchByEmail() using $module object by passing the value to be searched as a parameter.
//value - emailId value to be searched
$module.searchByEmail("crm@zoho.com",object: DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception: $exception")
}
})
//$module object is of ZCRMModule
//Call searchByEmail() using $module object by passing the value, page, perPage as parameters.
//value - emailId value to be searched
//page - page number of the module
//perPage - no of records to be given for a single page.
$module.searchByEmail("boyle@zylker.com",3,15,object: DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception: $exception")
}
})
//define the search criteria
val searchCriteria = ZCRMQuery.Companion.ZCRMCriteria("Last_Name", ZCRMComparator.CONTAINS, "Boyle")
//$module object is of ZCRMModule
//Call searchByCriteria() using $module object by passing the searchCriteria as a parameter.
//searchCriteria - criteria to be searched
$module.searchByCriteria(searchCriteria,object:DataCallback<BulkAPIResponse,List<ZCRMRecord>>
{
override fun completed(response: BulkAPIResponse, zcrmentity: List<ZCRMRecord>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception : $exception")
}
})
//define the potential ZCRMRecord to be created
val potential = ZCRMSDKUtil.getModuleDelegate("Deals").newRecord()
potential.setFieldValue("Deal_Name", "Outsourcing Contract")
potential.setFieldValue("Account_Name", "Zylker")
potential.setFieldValue("Closing_Date", "2020-11-09")
potential.setFieldValue("Stage", "Qualification")
potential.setFieldValue("Contact_Role", "Purchasing")
//$record object is of ZCRMRecord
//Call convert() using $record object by passing the potential as a parameter.
//potential - New ZCRMRecord(Potential) to be created
$record.convert(potential,object:DataCallback<APIResponse,HashMap<String,Long>>
{
override fun completed(response: APIResponse,zcrmentity: HashMap<String, Long>) {
println("${response.responseJSON}")
}
override fun failed(exception: ZCRMException) {
println("Throws Exception:$exception")
}
})