Salesforce零碎知识点(三)

七、Salesforce API:
    1.SOAP API:可以用来创建、检索、更新和删除数据。但是相对来说比较笨重。
    2.REST API:功能与SOAP API类似,优势是更加轻量级。
    3.BULK API:基于REST API的大量数据处理API。可以使用query, queryAll, insert, update, upsert和delete等方法。
    4.Metadata API:用于修改Salesforce元数据。
    5.WSDL:Web Service定义语言,提供了在开发环境中用于调用API的详细信息。

八、JAVA调用REST API:

    static int proxyPort = 10080;				
    static String userName = "sys-set@nexim.sony.com";				
    static String password = "nexim1234";				
    static String authEndPoint = "https://login.salesforce.com/services/Soap/u/57.0";				
    static String object = null;				
    static String strSoql = "select id from Account";				
				
				
				
public static boolean login() {				
	// FSC Shiroma ログインユーザIn/Out分割に伴いコメントアウト			
	String soapEndpoint = null;			
	String restEndpoint = null;			
	ConnectorConfig partnerConfig = null;			
	ConnectorConfig config = null;			
	Proxy proxy = null;			
				
	// リトライ可能回数を取得			
	RETRY_LIMIT = 5;			
	RETRY_WAIT_TIME = 10000;			
				
	while (true) {			
		try {		
			// SFDC接続情報設定	
				
			// ログインしてセッションIDを取得	
			partnerConfig = new ConnectorConfig();	
				
			// ログイン情報設定	
			partnerConfig.setUsername(userName);	
			partnerConfig.setPassword(password);	
			partnerConfig.setAuthEndpoint(authEndPoint);	
				
			// proxy情報設定	
			proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));	
			partnerConfig.setProxy(proxy);	
				
			// 接続	
			new PartnerConnection(partnerConfig);	
				
			// 接続設定の定義	
			config = new ConnectorConfig();	
			// セッションIDを格納	
			config.setSessionId(partnerConfig.getSessionId());	
			config.setProxy(proxy);	
				
			soapEndpoint = partnerConfig.getServiceEndpoint();	
			restEndpoint = soapEndpoint.substring(0, soapEndpoint.indexOf("Soap/")) + "async/" + apiVersion;	
			config.setRestEndpoint(restEndpoint);	
				
			// 圧縮設定についてデバッグ時でなければtrueに設定	
			config.setCompression(true);	
			// trueだとHTTPリクエストおよびレスポンスの表示	
			config.setTraceMessage(false);	
				
			// configからBulkConnectionオブジェクトを作成	
			connection = new BulkConnection(config);	
			break;	
		} catch (ConnectionException e) {		
			if (!connectionRetry()) {	
				System.out.println(e.getMessage());
				return false;
			}	
		} catch (AsyncApiException e) {		
			if (!connectionRetry()) {	
				System.out.println(e.getMessage());
				return false;
			}	
		}		
	}			
	return true;			
}				

九、Bulk API:
    1.Bulk API通过简单的接口,可以向Salesforce中导入大量的数据,或是进行大量数据的查询。
    2.Bulk API 2.0要在Salesforce API 41.0及之后的版本的API才能使用,而关于其的查询Job则需要在API 47.0及之后版本才能使用。
    3.API的有效期限:Salesforce API从Release日开始,最少有3年的support时间。

十、Date、Date/Time、Text类型之间的转换:
    1.Date/Time和Date之间的转换:
        (1)Date/Time和Date之间的转换:
            ①DATEVALUE()函数:Date/Time→Date
            ②DATETIMEVALUE()函数:Date→Date/Time,Time默认为标准时间的12:00 am。
        (2)Date和Text之间的转换:
            ①TEXT()函数:Date→Text
            ②DATEVALUE()函数:Text→Date,Text格式应遵循YYYY-MM-DD。
        (3)Date/Time和Text之间的转换:
            ①TEXT()函数:Date/Time→Text
            ②DATEVALUE()函数:Text→Date,Text格式应遵循YYYY-MM-DD。

十一、数据库操作:
    1.Apex操作数据库的方法:
        (1)DML语句:
            查找:[queryString]    
            添加:insert    
            修改:update    
            删除:delete    
            添加或修改:upsert    
        (2)DataBase类的方法:
            查找:[queryString]    
            添加:insert    
            修改:update    
            删除:delete    
            添加或修改:upsert    
    2.DML和Database类操作的区别:
        (1)DML进行批量操作时,如果其中某一条出错,则会全部回滚;而Database类的操作可以设定参数来控制是否跳过出错的那条数据。
        (2)Database类方法可以进行事务处理,DML则无法进行。
    3.两种方法比较:
        (1)普通的增删改查处理推荐使用DML,因为写法简便。
        (2)如果需要使用批处理、事务、或是某一条数据出错跳过的场合则要使用Database类。
    4.Database类常用方法:
    (1)public static List<SObject> query(String queryString)    
        查询
    (2)public static Database.SaveResult insert(sObject recordToInsert, Boolean allOrNone)     
        插入单条数据
       public static Database.SaveResult[] insert(sObject[] recordsToInsert, Boolean allOrNone)
        插入多条数据
       注:allOrNone参数设为true时,一个操作失败则全部回滚;为false时,即使本条数据操作失败,也会继续进行下面的操作。
    (3)update和delete的写法和insert类似。
     5.Database类进行事务处理:
    (1)public static System.Savepoint setSavepoint()   
        设置savepoint
    (2)public static Void rollback(System.Savepoint databaseSavepoint)
        回滚
        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Salesforce单点登录(SSO)是一种身份验证机制,允许用户使用一组凭据(例如用户名和密码)登录到一个系统,然后可以无需再次输入凭据即可访问其他系统。这样,用户只需登录一次,就可以访问多个系统,提高了用户体验和工作效率。 Salesforce提供了多种SSO集成选项,包括基于SAML(Security Assertion Markup Language)的集成和基于OAuth的集成。下面是两种常见的Salesforce单点登录集成方案: 1. 基于SAML的集成: SAML是一种用于在不同安全域之间传递身份验证和授权数据的开放标准。通过SAML,Salesforce可以与其他身份提供商(如企业的身份提供商或身份管理系统)进行集成,实现单点登录。在这种集成方案中,Salesforce作为服务提供商(SP),接受来自身份提供商(IdP)的SAML断言,验证用户身份并授权访问。 2. 基于OAuth的集成: OAuth是一种用于授权访问第三方应用程序的开放标准。通过OAuth,Salesforce可以与其他应用程序进行集成,实现单点登录。在这种集成方案中,用户通过Salesforce登录,并授权第三方应用程序访问其Salesforce数据。第三方应用程序可以使用OAuth令牌来访问Salesforce API,以便获取和更新数据。 请注意,具体的集成步骤和配置可能因组织的需求和环境而有所不同。您可以参考Salesforce官方文档或与Salesforce管理员或开发人员进行进一步的讨论和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值