SAP Marketing Cloud Contact 模型的导入配置和数据合并原理(sap commerce cloud)
SAP 很多系统的主数据都支持从外部系统导入,SAP Marketing Cloud也是如此,contact 主数据可以来自 Hybris Commerce,CRM,ERP或者Twitter,Facebook等社交媒体。来自不同渠道的contact可能对应的是真实世界里同一个人,那么就存在一个过程,该过程的逻辑是将不同渠道的contact数据进行整合,拼凑出一个包含完整信息的contact主数据存储到Marketing Cloud系统里,这个拼凑的过程称之为合并(merge),拼凑后形成的完整Contact结构称为Golden record。
下面这张示意图里的蓝色圆环称为 Main facet,代表每个contact数据在某个源系统上的ID,比如在ERP系统上的ID为123,在Twitter上的ID为456等等。而黄色圆环是contact在各自源系统里的属性,比如在Twitter网站上ID为456的一个contact,其name属性为jerrywang@sap。黄色圆环称之为additional facet.
点击之后,能看到一个contact属性列表,从这些属性列表不难推断出SAP Marketing Cloud支持导入contact的数据源有S/4HANA,ERP,CRM,Hybris Commerce,SAP Cloud for Customer,Gigya,Qualtrics和社交媒体如Twitter,Facebook等等。
上图有两列,分别对应为每个属性指定One Per Contact和Shareable为true还是false的界面。前者顾名思义,如果设置为true,意味着一个contact在同一个数据源系统里只能拥有一个唯一值,比如一个人的护照号码,或者SAP系统里的Customer ID;反之像Email,座机号,传真号这种属性,一个contact在同一个数据源系统里如果允许存在多个值,则One Per Contact设置为false。而Shareable属性置为true,适合那些在同一个数据源系统里允许多个不同contact具有相同值的属性,比如一家人的contacts的座机号允许相同。
对每一个Contact属性,One Per Contact和Shareable的true/false状态排列组合共有四种,其中One Per Contact为true的两种情况,即使系统在检测到匹配的属性情况下,也可能会导致contact数据的创建,而不是merge,也就是下图中第二行和第四行标注了感叹号的情况。
在同一个Web Shop系统里存在两条contact记录,虽然其手机号码维护的值都相同,但是因为One Per Contact设置为true,因此Marketing Cloud不进行merge,而是新建了两条Contact记录,其mobile facet的值都为该相同的手机号,而Web Shop ID facet的值分别来自Web Shop系统的原始值。
(3) Email属性的Sharable为true,One Per Contact为false。
来自SAP ERP和SAP CRM的两条数据,Email地址都相同,One Per Contact也维护的是false,但是因为它们的full name不一致,所以最后导入到Marketing Cloud里还是会分别生成两条Contact数据。
本文首先介绍了 SAP Marketing Cloud Contact(联系人)模型的概要设计,接着从实际例子出发,介绍了来自不同数据源的联系人数据导入云系统时,不同维度的属性是如何进行合并(merge), 从而生成最终的单一记录。
Contact Form 7 添加检查验证表单步骤插件 – Contact Form 7 add confirm
站长朋友们在使用以后,为了访客能够轻松联系到自己,提高网站的转化率,通常会在网站中加入联系我们的表单,让客户可以方便的在线发邮件给自己预设的邮箱。我们都熟悉,这种表单使用 来做非常方便,但是Contact Form 7插件默认的工作流程是:客户填写咨询信息,点击发送,直接发到站长的邮箱,并没有检查确认的步骤。今天我们就来介绍一款插件 – Contact Form 7 add confirm,这款wordpress插件可以给 Contact Form 7 添加检查验证表单的步骤。
插件安装方法:
1. 在后台的插件里搜索 Contact Form 7 add confirm,在线安装或者,上传到服务器空间。 2. 激活插件。
db_migrate_1 | app_config_class.__qualname__,db_migrate_1 | django.core.exceptions.ImproperlyConfigured:Cannotimport''contact''.Check that ''capstone_project_website.apps.contact.apps.ContactConfig.name''is correct.
postgres_1 |
postgres_1 |PostgresqlDatabase directory appears to contain a database;Skipping initialization
postgres_1 |
postgres_1 |2021-05-0214:17:44.105 UTC [1] LOG: starting Postgresql13.2(Debian13.2-1.pgdg100+1) on x86_64-pc-linux-gnu,compiled by gcc (Debian8.3.0-6)8.3.0,64-bit
postgres_1 |2021-05-0214:17:44.106 UTC [1] LOG: listening on IPv4 address "0.0.0.0",port 5432
postgres_1 |2021-05-0214:17:44.106 UTC [1] LOG: listening on IPv6 address "::",port 5432
postgres_1 |2021-05-0214:17:44.113 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGsql.5432"
postgres_1 |2021-05-0214:17:44.121 UTC [28] LOG: database system was shut down at 2021-05-0214:17:17 UTC
django-website_db_migrate_1 exited with code 1
postgres_1 |2021-05-0214:17:44.129 UTC [1] LOG: database systemis ready to accept connections
GET InteractionContacts?sap-client=100&KaTeX parse error: Expected ''EOF'', got ''&'' at position 7: skip=0&̲top=45& s e l e c t = I m a g e U R L select=ImageURL%2cName%2cContactLevelName%2cCountryName%2cCity%2cEMailAddress%2cPhoneNumber%2cMobilePhoneNumber%2cCorporateAccountName%2cInteractionContactUUID%2cRelationship%2cType& select=ImageURLinlinecount=allpages HTTP/1.1 sap-cancel-on-close: true Cache-Control: max-age=360 sap-contextid-accept: header Accept: application/json Accept-Language: en DataServiceVersion: 2.0 MaxDataServiceVersion: 2.0