Commerce Server Commerce Server 王王 王王 [email protected] [email protected] .Net Enterprise Server .Net Enterprise Server PMM PMM Microsoft Corporation Microsoft Corporation
Apr 01, 2015
Commerce ServerCommerce Server
王倩王倩[email protected]@microsoft.com.Net Enterprise Server PMM.Net Enterprise Server PMMMicrosoft CorporationMicrosoft Corporation
Key Take away:Key Take away:
IntroductionIntroduction Commerce Server and BICommerce Server and BI Improve CRM using CsImprove CRM using Cs Integrate third party ERP with CsIntegrate third party ERP with Cs Application Service Provider using CsApplication Service Provider using Cs Q&AQ&A
What is Commerce Server?What is Commerce Server?
Commerce Server isCommerce Server is
Commerce Framework, Commerce Framework,
---------- ---------- 商务框架商务框架 ..
CS2000 Sellingpoints:CS2000 Sellingpoints:
企业和人的思考一样企业和人的思考一样 , , 数据分析是数据分析是写下思考写下思考 , , 商业分析是思考的过商业分析是思考的过程程 , , 透过商业分析可以优化业务操透过商业分析可以优化业务操作作 ,, 帮助决策层进行商业分析帮助决策层进行商业分析 (( 即是即是思考的工具思考的工具 ), ), 从而决定如何行动从而决定如何行动 ..
支持和优化业务操作,帮助市场营销支持和优化业务操作,帮助市场营销人员找到客户人员找到客户 ,, 对客户进行追踪对客户进行追踪 ,, 建建立客户忠诚度立客户忠诚度 ..
提供业务人员的结合市场框架的数据提供业务人员的结合市场框架的数据挖掘挖掘 ,, 进行市场预测和分析进行市场预测和分析
Commerce Server 2000Commerce Server 2000---- 微软微软 .NET.NET 企业服务器之企业服务器之商业核心商业核心
智能商业框架智能商业框架 ,, 支持电子商支持电子商务务
.Net .Net 企业级服务器企业级服务器
Client 客户端
MicrosoftCommerce Server
2000
MicrosoftExchange 2000 Server
MicrosoftInternet Securityand acceleration
Server 2000
COM+COM+Microsoft
SQL Server 2000
MicrosoftHost Integration
Server 2000
MicrosoftBizTalk Server 2000
MicrosoftApplication Center 2000
主机系统主机系统 //非微软的数据非微软的数据
供应商供应商 //客户系统客户系统
设备
浏览器 Inte
rnet
Inte
rnet
Bu
sin
ess
De
sk
Co
mm
erce Server M
anag
er
SQLServer
Business DataWarehouse
SQL ServerSQL
Server
ProductsCampaigns
Orders
LDAPODBCSQL
Server
Profiles
Solution Sites
Product Catalog System
Targeting System
Profile System
CRM / CRM / OtherOtherAppsApps
Business Processing Pipelines System
Business Analytics System
Commerce Server 2000Commerce Server 2000
Microsoft Commerce Server 2000Microsoft Commerce Server 2000提供了第一流的商务分析功能提供了第一流的商务分析功能
Commerce Desk
UserMgr
CatalogMgr
DataAnalysis
CampaignMgr
OrderMgr
Solution Sites
Base B2C B2B
Runtime Services/Components
ExpressionEvaluator
RealtimeRecommend
Content Selection Framework
Ads/Promos
Catalog
Pipeline
PipelineComponents
Order/Requistn
Import Tasks
DW Service
Reporting Mgr
Targeting Catalog Transactions Analysis
DirectMail
Service
ProfileSystem
User Profiling
Schemas / Meta Schemas
Order FormRequisition
AdsPromotions
BizData
Catalog DataWarehouse
ProfileDefinitions
ExpressionsDefinitions
Site TermsDefinitions
今年今年 77月月 1111日日 (CRN)-Computer Reseller Network (CRN)-Computer Reseller Network 商务分析评比商务分析评比 ::
Commerce Server in the NewsCommerce Server in the News ““E-Business Just Got Smarter”E-Business Just Got Smarter”
http://www.microsoft.com/presspass/feathttp://www.microsoft.com/presspass/features/2000/nov00/11-29commerce.aspures/2000/nov00/11-29commerce.asp
““Microsoft Commerce Server 2000 Microsoft Commerce Server 2000 Powers Leading Customers' E-Business Powers Leading Customers' E-Business Operations”Operations”http://www.microsoft.com/presspass/preshttp://www.microsoft.com/presspass/press/2000/Nov00/CommerceServerPR.asps/2000/Nov00/CommerceServerPR.asp
““Commerce Server 2000 is a big step up”Commerce Server 2000 is a big step up”http://www.zdnet.com/eweek/stories/genehttp://www.zdnet.com/eweek/stories/general/0,11011,2663034,00.htmlral/0,11011,2663034,00.html
““Commerce Server Delivers Ammo for Commerce Server Delivers Ammo for Business-Level Decision-Making”Business-Level Decision-Making”http://www.infoworld.com/articles/mt/xml/http://www.infoworld.com/articles/mt/xml/00/09/04/000904mtcommerce.xml00/09/04/000904mtcommerce.xml
““Best of the Best: Software”Best of the Best: Software” http://www.zdnet.com/smartbusinessmag/storihttp://www.zdnet.com/smartbusinessmag/stories/all/0,6605,2659975-5,00.html - es/all/0,6605,2659975-5,00.html - cservercserver
Crossroads 2001 A-List Award Crossroads 2001 A-List Award E-Commerce Platform WinnerE-Commerce Platform Winner
PC MagazinePC Magazine“Editors Choice”“Editors Choice”
Smart Business MagazineSmart Business MagazineA-List awardA-List award
“Editors Pick” “Editors Pick”
智能商务框架Commerce Server 2000
OutlineOutline
1: 1: Commerce Server 2000 Commerce Server 2000 FeaturesFeatures 2: Business Intelligence(2: Business Intelligence(BIBI) & Commerce Server ) & Commerce Server
3: Improving 3: Improving CRMCRM Using CS 2000 Using CS 2000 4: Integrate Third-Party 4: Integrate Third-Party ERPERP System with System with
CS2000CS2000 5: 5: ASPASP(Application Service Provider) Using (Application Service Provider) Using
CS2000CS2000 6: 6: Designing Designing B2BB2B Trading Partner Integration Trading Partner Integration
SolutionsSolutions 7: Review 7: Review 8: Question8: Question
Commerce Server 2000 Features(1)Commerce Server 2000 Features(1) Commerce framework SolutionsCommerce framework Solutions Consists of five core componentsConsists of five core components
Profile systemProfile system Catalog systemCatalog system Targeting systemTargeting system Business Process PipelineBusiness Process Pipeline Data warehouse and analytic system(Data warehouse and analytic system(**))
Business DeskBusiness Desk Solution site Solution site Extensible Extensible
Commerce Server 2000 Features(2)Commerce Server 2000 Features(2)
Building effective solutionsBuilding effective solutions ProfileProfile CatalogCatalog TargetingTargeting Business Process PipelineBusiness Process Pipeline
Get to market fasterGet to market faster Solution site ,SDKSolution site ,SDK Administrative toolsAdministrative tools
Empower business managerEmpower business manager Business analyticsBusiness analytics Business DeskBusiness Desk
Integrate with other system such as Integrate with other system such as ERP ,CRM ….ERP ,CRM ….
Business Intelligence(Business Intelligence(BIBI) & ) & Commerce ServerCommerce Server
OutlineOutline 概述概述 商业智能(商业智能( Business IntelligenceBusiness Intelligence )) 微软商业智能策略微软商业智能策略 微软因特网商业分析学微软因特网商业分析学 Commerce Server Commerce Server 数据仓库与商业分析系统数据仓库与商业分析系统 Commerce Server Commerce Server 商务数据仓库商务数据仓库 OLE DB Provider for Commerce ServerOLE DB Provider for Commerce Server Commerce Server Commerce Server 商业分析系统商业分析系统 扩展数据仓库和商业分析系统扩展数据仓库和商业分析系统 案例案例
概述概述 积累了大量数据 从数据中分析、挖掘出对企业业务、客户关
系管理、企业发展以及决策有用的准确信息,从而赢得竞争优势。
数据仓库和数据挖掘技术
商业智能(商业智能( Business Business IntelligenceIntelligence )) 从关于业务、客户、合作伙伴以及商业运作
的信息中挖掘有用的知识,快速地决策,更好地对市场作出反应,从而提高自己的竞争优势
使用最短的时间收所有商业相关的信息 自动地把这些商业信息转换为个性化的智能
信息 提供分析工具来进行数据比较从而实现智能
决策 尽快地采取行动,实施决策 .
微软商业智能策略微软商业智能策略
通过简化和集成商业智能服务到 .Net 平台,提供开放的接口访问数据,与合作伙伴共享数据,帮助电子商务组织提高决策的速度和质量。
ERP / SCMERP / SCM充分利用信息充分利用信息
企业应用程序集成企业应用程序集成InternetInternet
电子商务电子商务B2B / B2CB2B / B2C渠道扩展渠道扩展激烈竞争激烈竞争
数据量巨大数据量巨大解决方案驱动解决方案驱动
CRMCRM信息更佳信息更佳自动处理自动处理ISVISV 驱动驱动呼叫中心呼叫中心 // 帮助平台帮助平台现场维修现场维修客户自助客户自助
商务分析学商务分析学(( Business AnalyticsBusiness Analytics))
分析 分析 CRMCRM360360 度视图度视图
Cross / Up SellCross / Up Sell目标销售目标销售
网络存储(网络存储( webhousingwebhousing))个性化个性化
闭环闭环
微软商务分析学微软商务分析学( ( Business Business Internet AnalyticsInternet Analytics ))
Commerce Server Commerce Server 数据仓库与商业分析系统数据仓库与商业分析系统
可导入各种网络日志文件、用户资料、交易数据、产品目录数据进行分析
交互分析交互分析
目标邮件目标邮件
用户信息管理用户信息管理
预测群集预测群集
其他其他
用户用户
网络使用网络使用
目录目录商务数据仓库商务数据仓库
广告广告
交易交易
其他其他
Commerce Server Commerce Server 商务数据仓库商务数据仓库 跨跨 Commerce ServerCommerce Server 的紧密集成的紧密集成
数据源数据源 W3CW3C 可扩展网络日志文件格式可扩展网络日志文件格式 交易交易 // 广告广告 // 促销促销 // 用户信息用户信息 // 产品产品
可扩展、可编程可扩展、可编程 创建新数据源 创建新数据源 (( 导入与扩展模式导入与扩展模式 )) 通过标准的通过标准的 OLE DBOLE DB 接口进行数据获取接口进行数据获取 开放的开放的 ASPASP 应用程序事件应用程序事件
可收缩性与性能可收缩性与性能 支持大容量站点支持大容量站点
反馈给在线系统反馈给在线系统 用户信息用户信息 (( 用于通过表达式确定目标用于通过表达式确定目标 )) 直邮,实时推荐直邮,实时推荐
事件数据
商务事件
其他事件
非事件数据
商务数据
其他数据
商务报告
在线服务
其他
CDO
Com
mer
ce S
erve
r 商务平台
IE
实时数据
自定义任务
删除数据
IP解析
管理
CS数据仓库
CommerceOLE DB Provider
WebTV
IIS
VB
Office 2K
ASP
HTML/XML
DTS 数据包
ADO
SQL Server
ADO / OLE DB
商务数据与事件
网络日志
OLAPServer
商业数据仓库模式 逻辑层模式( Logical Schema )
类(类( ClassClass ):): . . 数据成员(数据成员( data membersdata members ))的集合。如:的集合。如:RegisteredUser RegisteredUser 类包含描述一个注册用户的数据成员类包含描述一个注册用户的数据成员 ..
数据成员(数据成员( Data memberData member ))保存数据的结构。如:保存数据的结构。如:RegisteredUser RegisteredUser 的数据成员的数据成员 E-mail E-mail 保存一个注册用户的电子邮保存一个注册用户的电子邮件地址件地址
关系(关系( RelationRelation )) . . 两各类之间父/子关系,定义了每个类的实两各类之间父/子关系,定义了每个类的实例的数目并提供了在不同的类之间共享数据成员的机制。如例的数目并提供了在不同的类之间共享数据成员的机制。如RegisteredUserRegisteredUser 类是类是 RequestRequest 的父类,对于一个注册用户来说的父类,对于一个注册用户来说,它可以有多个请求。,它可以有多个请求。
物理层模式(物理层模式( Physical Schema/Data StorePhysical Schema/Data Store )) 保存了 Commerce Server 数据仓库的数据。 Commerce Server 自
动地在 SQL Server 和 OLAP 数据库创建 . 数据仓库。数据仓库为所有 Commerce Server 的报表提供必要的数据。
商业数据仓库体系结构
Commerce OLE DB 2.0/2.5 ProviderCommerce OLE DB 2.0/2.5 Provider
MS TV ServerMS TV Server
事件事件
脚本脚本 网络日志网络日志
导入导入ADOADO
活动活动用户用户交易交易
商务数据仓库商务数据仓库
SQL SQL ServerServer
OLAPOLAPServerServer
OLE DB Provider for Commerce ServerOLE DB Provider for Commerce Server
对数据仓库中目录元数据(对数据仓库中目录元数据( metadatametadata ))的的管理管理 ..
对逻辑实体以及它们之间相互关系的管理对逻辑实体以及它们之间相互关系的管理 产生数据仓库的维(产生数据仓库的维( DimensionsDimensions ))和事实和事实
表(表( Facts.Facts. )) 创建和控制数据仓库的 创建和控制数据仓库的 Surrogate Surrogate 码码 把逻辑实体作为把逻辑实体作为 SQLSQL 对象在物理上保存起对象在物理上保存起
来来
Commerce Server Commerce Server 商业分析系统商业分析系统 ((1)1) 跨跨 Commerce ServerCommerce Server 的集成的集成
现成的以电子商务为中心的报告现成的以电子商务为中心的报告 通过商务平台演示报告通过商务平台演示报告
性能与可收缩性性能与可收缩性 通过使用加载时间汇总和通过使用加载时间汇总和 OLAPOLAP立方体,极大立方体,极大
地提高了报告速度地提高了报告速度 提供了长期趋势分析提供了长期趋势分析
可扩展性可扩展性 有利于第三方商务分析工具的集成有利于第三方商务分析工具的集成
Commerce Server Commerce Server 商业分析系统商业分析系统 ((2)2)
现成的标准报告现成的标准报告 最常用的报告最常用的报告
与商务平台集成与商务平台集成 搜索与查找报告搜索与查找报告 运行报告运行报告 保存标准报告的自定义视图保存标准报告的自定义视图 导出到清单管理器(导出到清单管理器( List ManagerList Manager ))
使用使用 OfficeOffice 网络控件网络控件 PivotListPivotList ,,用于生成多种特殊的数据透视表用于生成多种特殊的数据透视表 用于图形和图表的图表控件可以 与用于图形和图表的图表控件可以 与 PivotListPivotList 相联系相联系 可以使用静态的表格和图表可以使用静态的表格和图表
IISIIS
MS OLAPMS OLAPServerServer
IEIE中的报告中的报告
报告对象报告对象
商务平台商务平台
静态静态动态动态
导出对象导出对象
清单管理器清单管理器((List ManagerList Manager))
直邮直邮 用户管理器用户管理器))
PivotListPivotList
图表图表
数据源数据源
HTMLHTML表格表格
参数参数
报告定义报告定义
SQLSQLServerServer
扩展数据仓库和商业分析系统扩展数据仓库和商业分析系统 每个公司、企业、电子商务组织都有其各自
的商业特点,对不同的信息有不同的要求 从从 ERPERP 系统获得的财经、金融信息系统获得的财经、金融信息 从从 CRM CRM 系统获得的客户信息系统获得的客户信息 从销售系统获得的市场信息从销售系统获得的市场信息 从税务局报表系统获得的与税收有关的信息
整合相关的信息 扩展 Commerce server
扩展数据仓库和商业分析系统扩展数据仓库和商业分析系统
开发步骤
创建新立方体
创建新报表
创建 SQL视图
添加类数据成员
101100100111011001001101000101100010001011001011001011110110010111
添加类关系
创建新类
把外部数据导入到新类
创建一个新类‘-----------------------------------' Add a new CLASS‘-----------------------------------
rec.Open "CLASS/NewCls", cn, adModeReadWrite, adCreateOverwrite
rec("IsPersistent") = 1 ‘ Persistent classrec("CatalogName") = "test1“ ‘ Name of the catalog to
storerec("ClassDefName") = "NewCls“ ‘ Name of the new classrec("SourceDefName") = "test_Source“ ‘ Name of the sourcerec("GenerateTableDef") = 1 ‘ Create a tablerec("GenerateKeyDef") = 1 ‘ Create a key for the
classrec("GenerateIdentity") = 1 ‘ Create identity columnrec("__Commit") = 1 ‘ Commit this class
‘ Commit the class to the catalogcmd.CommandText = "CommitSchema“cmd.Execute
添加新成员添加新成员' ----------------------------------
' Add a new MEMBER
' ----------------------------------
rec.Open "MEMBER/NewCls/NewMem", cn, adModeWrite, adCreateOverwrite
rec("MemberDefName") = “NewMem"
rec("GenerateColumnDef") = 1
rec("IsPrimaryKey") = 1
rec("DefValAsStr") = "DefaultValue"
rec("TypeName") = "WSTR"
rec("__Commit") = 1
' Commit Catalog changes
cmd.CommandText = "commitschema"
cmd.Execute
添加新关系添加新关系' ----------------------------------' ----------------------------------
' ' Add a new RELATIONAdd a new RELATION
' ----------------------------------' ----------------------------------
rec.Open "Relation/MyNewInheritRel2", cn, adModeWrite, adCreateOverwriterec.Open "Relation/MyNewInheritRel2", cn, adModeWrite, adCreateOverwrite
rec("ChildClassName") = “NewCls"rec("ChildClassName") = “NewCls"
rec("ParentClassName") = “ParentNewCls"rec("ParentClassName") = “ParentNewCls"
rec("RelType") = 2 ‘ 1-m relationrec("RelType") = 2 ‘ 1-m relation
rec("ParentClasskey") = “ParentNewClsKey"rec("ParentClasskey") = “ParentNewClsKey"
rec("__Commit") = 1rec("__Commit") = 1
' Commit Catalog changes' Commit Catalog changes
cmd.CommandText = "commitschema" cmd.CommandText = "commitschema"
cmd.Executecmd.Execute
把外部数据导入到新类把外部数据导入到新类set objRS = CreateObject("ADODB.Recordset")objConn.Open strURL ‘Open the OLE DB Provider connectionobjRS.open "select * from " & "stgOTCTable", strSQLConn
while objRS.EOF <> True objRec.Open "Instance/" & "OTCStore", objConn, 3, 67108864 objRec("ProductNameCat") = objRS.Fields("stg_ProductNameCat") objRec("DTimeStamp") = objRS.Fields("stg_Date") objRec("OTCAmount") = objRS.Fields("stg_Amount") objRec("OTCQuantity") = objRS.Fields("stg_Quantity") objRec("__Commit") =1 objRec.fields.update ' Added one record ‘ Not flushed till connection is closed objRec.Close objRS.movenextWend
创建 SQL 视图CREATE VIEW AllSalesView ASSELECT otc.productsid, otc.dateid, otc.otcamount as Amount, otc.otcquantity as Quantity, 'OTC' as StoreTypeFROM otcstore otcUNION ALLSELECT o.productsid, oh.dateid, o.cy_lineitem_total, o.quantity, 'OnLine' as StoreTypeFROM orderformlineitems oJOIN OrderFormHeader ohON oh.ordergroupid = o.ordergroupid
添加新示例添加新示例' ----------------------------------' ----------------------------------
' ' Add a new InstanceAdd a new Instance
' ----------------------------------' ----------------------------------
rec.Open "Instance/NewCls", cn, adModeReadWrite, rec.Open "Instance/NewCls", cn, adModeReadWrite, adCreateOverwriteadCreateOverwrite
rec(“NewMem") = “StringData”rec(“NewMem") = “StringData”
rec(“MemDate") = Nowrec(“MemDate") = Now
rec("__Commit") = 1rec("__Commit") = 1
查看图表
BIBI 案例案例
亚博连商业智慧系统 BIS 远缘 Smooth EC全球运筹电子商务系统
Improving Improving CRMCRM Using CS 2000Using CS 2000
ECO313ECO313
ObjectivesObjectives
What is CRM?What is CRM? Commerce Server 2000 &CRMCommerce Server 2000 &CRM How to implement Personalization How to implement Personalization
& Targeting& Targeting Analyze EffectivenessAnalyze Effectiveness Close the LoopClose the Loop
AgendaAgenda
Overview of CRMOverview of CRM CRM applications business functionsCRM applications business functions Microsoft's Vision and Strategies for Microsoft's Vision and Strategies for
CRMCRM Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
Overview of CRM(1)Overview of CRM(1)
Customer Relationship Management Customer Relationship Management (CRM)(CRM) is a business strategy is a business strategy designed to optimize revenue(designed to optimize revenue( 收入收入) ) and profitsand profits ((利润) 利润) by by increasingincreasing customer satisfaction customer satisfaction attracting attracting new customers,new customers, retainingretaining existing customers, existing customers, understandingunderstanding customers better customers better
When :Web, e-mail, phone, fax, and When :Web, e-mail, phone, fax, and in-personin-person
Overview of CRM(2)Overview of CRM(2)
CRM is not just the province of CRM is not just the province of private private industry.industry.
Public sector organizationsPublic sector organizations are also are also focusing on how to build and enhance focusing on how to build and enhance relationships with their "customers."relationships with their "customers."
CRM applications business CRM applications business functionsfunctions Sales automationSales automation..
Provides sales professionals with access to critical Provides sales professionals with access to critical customer information customer information
tools that enhance their ability to effectively sell, as well tools that enhance their ability to effectively sell, as well as manage their time. as manage their time.
Marketing automationMarketing automation. . Provides marketing departments with campaign Provides marketing departments with campaign
management, lead generation, and data mining tools. management, lead generation, and data mining tools. Customer service and supportCustomer service and support. .
Enables effective and efficient response to customer Enables effective and efficient response to customer questions, problems, or issues. questions, problems, or issues.
Channel management/partner relationship Channel management/partner relationship management.management.
Extends CRM capabilities to the needs of extended Extends CRM capabilities to the needs of extended selling channels such as distributors and value-added selling channels such as distributors and value-added resellers. resellers.
Internal help deskInternal help desk. . Supporting internal users through applications covering Supporting internal users through applications covering
network management and support, call logging and network management and support, call logging and resolution, and internal customer support. resolution, and internal customer support.
Microsoft's Vision for CRMMicrosoft's Vision for CRM
Put the customer at the center of the picture Put the customer at the center of the picture Give all departments a view into a composite image Give all departments a view into a composite image
of the customers' of the customers' purchasing and service history, as purchasing and service history, as well as their buying, delivery, and contact well as their buying, delivery, and contact preferences. preferences.
The ultimate goal of a customer-centric approach is The ultimate goal of a customer-centric approach is to to empower each department, and each employee, to empower each department, and each employee, to think and actthink and act more strategically about their more strategically about their relationship with each and every customer. relationship with each and every customer.
An effective CRM strategy combines strategies and An effective CRM strategy combines strategies and applications for applications for knowledge management, business knowledge management, business intelligence, and e-commerce.intelligence, and e-commerce.
Achieve a Achieve a 360-degree view360-degree view of a customer. of a customer.
Microsoft's Strategies for CRMMicrosoft's Strategies for CRM Creating An Agile(Creating An Agile( 灵活灵活 ), ), Customer-Centric Customer-Centric
Enterprise Enterprise Flexibility Flexibility
An adaptable, scalable, easy to manage infrastructure is An adaptable, scalable, easy to manage infrastructure is essential for enterprise responsiveness.essential for enterprise responsiveness.
Microsoft offers a Microsoft offers a scalable enterprise platformscalable enterprise platform based on based on open standards that integrate well with legacy systems, open standards that integrate well with legacy systems, such as database or collaboration applications. For such as database or collaboration applications. For instance, built-in support for XML….instance, built-in support for XML….
Velocity Velocity Utilizing Utilizing new Microsoft® .NET building blocks and Web new Microsoft® .NET building blocks and Web
servicesservices will speed development time for the vast army will speed development time for the vast army of developers experienced in building solutions on the of developers experienced in building solutions on the Microsoft platform. Microsoft platform.
Empowerment Empowerment Microsoft supports the organizational need to implement Microsoft supports the organizational need to implement
unified CRM strategies that automatically unified CRM strategies that automatically provide the provide the right information to the right employees—anywhere, any right information to the right employees—anywhere, any time, on any device. time, on any device.
Open, standards-based information technologiesOpen, standards-based information technologies
CRM and MicrosoftCRM and Microsoft Microsoft technologies provide a Microsoft technologies provide a
common environment across desktops common environment across desktops and servers so that organizations can and servers so that organizations can build and administer CRM solutions build and administer CRM solutions across the entire enterprise. across the entire enterprise.
Successful CRM also depends upon the Successful CRM also depends upon the integration of disparate technologies integration of disparate technologies such as Internet technologies, legacy such as Internet technologies, legacy systems, telephone services, front- and systems, telephone services, front- and back-office solutions, and partner back-office solutions, and partner applications.applications.
How to develop CRM?How to develop CRM?
Using Commerce Server 2000Using Commerce Server 2000
CS ArchitectureCS Architecture
Business DeskBusiness Desk
UserUserMgrMgr
CatalogCatalogMgrMgr
DataDataAnalysisAnalysis
CampaignCampaignMgrMgr
OrderOrderMgrMgr
Solution SitesSolution Sites
BaseBase RetailRetail SupplierSupplier
Runtime Services/ComponentsRuntime Services/Components
ExpressionExpressionEvaluator Evaluator PredictorPredictor
Content Selection Content Selection FrameworkFramework
Ads/PromosAds/Promos
CatalogCatalog
PipelinePipeline
PipelinePipelineComponentsComponents
Order/Order/RequistnRequistn
DW ServiceDW Service
Data Mining / PredictorData Mining / Predictor
Reporting MgrReporting Mgr
TargetingTargeting CatalogCatalog TransactionsTransactions AnalysisAnalysis
DirectDirectMailMail
ServiceService
MailMail
ProfileProfileSystemSystem
User ProfilingUser Profiling
Schemas / Meta SchemasSchemas / Meta Schemas
Order FormOrder FormRequisitionRequisition
AdsAdsPromotionsPromotions
BizDataBizData
CatalogCatalog DataDataWarehouseWarehouse
ProfileProfileDefinitionsDefinitions
ExpressionsExpressionsDefinitionsDefinitions
Site TermsSite TermsDefinitionsDefinitions
AgendaAgenda
Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
Profile ServiceProfile Service
A platform service for managing and A platform service for managing and tracking business data in a dynamic, tracking business data in a dynamic, integrated, and scaled Web environmentintegrated, and scaled Web environment Simple object interfaceSimple object interface Extensible data object model Extensible data object model Data store agnosticData store agnostic Optimized for Internet scaleOptimized for Internet scale
UserUserProfileProfileObjectObject
Commerce OLEDB ProviderCommerce OLEDB Provider
ProfileProfileServiceService
Profile ObjectProfile ObjectCacheCache ADOADO
Profile Profile Definition TranslationDefinition TranslationBizDataBizData
DefsDefs
Data SourceData SourceAggregation ManagerAggregation Manager
ADSI/ADSI/LDAPLDAP
OLEDB/OLEDB/SQL7SQL7
OLEDB/OLEDB/ODBCODBC
LDAPLDAPDSDSLDAPLDAP
DSDSActiveActiveDirectoryDirectory
LDAPLDAPDSDSSQL SQL ServerServer
ThirdThirdPartyParty
DatabasesDatabases
Profile Object exposes simple API for profile Profile Object exposes simple API for profile data accessdata accessADO Support for Bulk Processing (Select, ADO Support for Bulk Processing (Select, Insert, Update)Insert, Update)
BizData OLEDB Provider provides BizData OLEDB Provider provides standard interface supporting both the standard interface supporting both the profile service and ADOprofile service and ADO
Provider exposes simple SQL Provider exposes simple SQL semantics (profile analogous to a semantics (profile analogous to a logical table view)logical table view)
Provider enables data translations Provider enables data translations and data source aggregation base and data source aggregation base on BizData definitionson BizData definitions
Optimized data source Optimized data source provider plug-ins for provider plug-ins for directories (LDAPv3), directories (LDAPv3), SQL Server, and SQL Server, and OLEDB/ODBC sources OLEDB/ODBC sources supporting supporting ANSI-SQL subsetANSI-SQL subset
Profile System ArchitectureProfile System Architecture
Using Profile ServiceUsing Profile Service CreateCreate
Set mscsProfileService = Set mscsProfileService = Server.CreateObject("Commerce.ProfileService")Server.CreateObject("Commerce.ProfileService")
InitializeInitialize mscsProfileService.Initialize(sProfileServiceConnectionString, mscsProfileService.Initialize(sProfileServiceConnectionString,
“Profile Definitions”)“Profile Definitions”)
Cache Cache Set Application("MSCSProfileService") = Set Application("MSCSProfileService") =
MSCSProfileService MSCSProfileService APIAPI
mscsProfileService.GetProfile(“[email protected]”, mscsProfileService.GetProfile(“[email protected]”, “UserObject”)“UserObject”)
mscsProfileService.GetProfileByKey(“Account", mscsProfileService.GetProfileByKey(“Account", “CJ878987”, "UserObject") “CJ878987”, "UserObject")
mscsProfileService.CreateProfile()mscsProfileService.CreateProfile() mscsProfileService.DeleteProfile()mscsProfileService.DeleteProfile()
AgendaAgenda
Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
TargetingTargeting
ExpressionsExpressions Expression BuilderExpression Builder Expression EvaluatorExpression Evaluator
Targeting Overview Targeting Overview
TargetingTargetingSystemSystem
ContentContent
TargetTargetPropertiesProperties
Profiles:Profiles:AdAdDiscountDiscountRelated SellRelated SellCatalogCatalogFeaturesFeatures
UsersUsers
TargetTargetPropertiesProperties
Profile:Profile:City, Age, GenderCity, Age, GenderIncome, FamilyIncome, FamilyBrowserBrowser
ContextContext
TargetTargetPropertiesProperties
Profile:Profile:Section, Page, SlotSection, Page, SlotDate/TimeDate/TimeOther things on pageOther things on page
ExpressionsExpressions
Target with multiple ExpressionsTarget with multiple Expressions AND, OR supportAND, OR support
Target with Target GroupsTarget with Target Groups Collection of expressions & actionsCollection of expressions & actions RequireRequire TargetTarget ExcludeExclude SponsorSponsor
Targeting Context ProfileTargeting Context Profile Use to target against other contextual valuesUse to target against other contextual values Extensible Schema (Business Desk: Profile Extensible Schema (Business Desk: Profile
Designer)Designer) Page Group is defaultPage Group is default Consumed by ContentSelector objectConsumed by ContentSelector object
Expression BuilderExpression Builder
Business manager focused UI Business manager focused UI DHTML launched in application context DHTML launched in application context
via the Business Deskvia the Business Desk Consumes profiles and site termsConsumes profiles and site terms Data storeData store
Used to name, store and retrieveUsed to name, store and retrieve Expressions represented in XMLExpressions represented in XML
Demo Demo
Expression EvaluatorExpression Evaluator
Create Context DictionaryCreate Context Dictionary Set dictProfiles = Set dictProfiles =
Server.CreateObject("Commerce.Dictionary")Server.CreateObject("Commerce.Dictionary") Set dictProfiles.User = oUser1 ‘ user profileSet dictProfiles.User = oUser1 ‘ user profile Set dictProfiles.Address = oAddress1 ‘ address profileSet dictProfiles.Address = oAddress1 ‘ address profile
Create Expression EvaluatorCreate Expression Evaluator Set oExpressionEval = Set oExpressionEval =
Server.CreateObject("Commerce.ExpressionEvaluator")Server.CreateObject("Commerce.ExpressionEvaluator")
Evaluate ExpressionEvaluate Expression vResult = oExpressionEval.Eval(ExpressionID, dictProfiles)vResult = oExpressionEval.Eval(ExpressionID, dictProfiles) Use ExpressionStore.GetExprID(“BigSpenders”) to get ID Use ExpressionStore.GetExprID(“BigSpenders”) to get ID
from Namefrom Name
AgendaAgenda
Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
CampaignsCampaigns
AdvertisingAdvertising DiscountsDiscounts Direct MailDirect Mail
Web Web PagePage
Content Selection FrameworkContent Selection FrameworkRun TimeRun Time
Content Selection FrameworkContent Selection FrameworkDesign TimeDesign Time
Business Desk ModulesBusiness Desk Modules
ContentContentSelectorSelector
ContentContentCache MgrCache Mgr
FormatFormatFormatFormat
RecordRecordRecordRecord
SelectSelectSelectSelect
ScoreScoreScoreScore
Load HistoryLoad HistoryLoad HistoryLoad History
Need Of Deliv.Need Of Deliv.Need Of Deliv.Need Of Deliv.
Size FilterSize FilterSize FilterSize Filter
Ad
ve
rtisin
g S
ele
ctio
n P
ipe
line
Ad
ve
rtisin
g S
ele
ctio
n P
ipe
line
FormatFormatFormatFormat
RecordRecordRecordRecord
SelectSelectSelectSelect
Basket ScoreBasket ScoreBasket ScoreBasket Score
Product ScoreProduct ScoreProduct ScoreProduct Score
Size FilterSize FilterSize FilterSize Filter
Dis
co
un
ts/R
ela
ted
Se
ll Pip
elin
eD
isc
ou
nts
/Re
late
d S
ell P
ipe
line
UsersUsers
ContentContentContentContent
AdvertisingAdvertisingAdvertisingAdvertising
Content Mgr.Content Mgr.Content Mgr.Content Mgr.
DiscountsDiscountsDiscountsDiscountsDirect MailDirect MailDirect MailDirect Mail
Campaign Mgr.Campaign Mgr.Business DeskBusiness Desk
Expression BldrExpression BldrExpression BldrExpression Bldr
Create CookiesCreate CookiesCreate CookiesCreate Cookies
Postproc. RecipPostproc. RecipPostproc. RecipPostproc. Recip
Send EmailSend EmailSend EmailSend Email
Compose EmailCompose EmailCompose EmailCompose Email
Preproc. Recip.Preproc. Recip.Preproc. Recip.Preproc. Recip.
Dire
ct M
ail P
ipe
line
Dire
ct M
ail P
ipe
line
ThrottleThrottleThrottleThrottle
Advertising FeaturesAdvertising Features
Improved analysis integrationImproved analysis integration Open eventing model via IIS AppendToLogOpen eventing model via IIS AppendToLog Can also plug in custom pipeline component for Can also plug in custom pipeline component for
ad bureau audit logging (“Advertising.PCF”)ad bureau audit logging (“Advertising.PCF”) CSF automatically tracks the content shown CSF automatically tracks the content shown
to a user and implements a reselect penalty. to a user and implements a reselect penalty. History stored as HTTP cookie, ASP session, History stored as HTTP cookie, ASP session,
UserObject profile. UserObject profile. LoadHistoryLoadHistory RecordHistoryRecordHistory SaveHistorySaveHistory
Using AdvertisingUsing Advertising
Creating Advertisements using Creating Advertisements using Business DeskBusiness Desk DemoDemo
InitializeInitialize Getting ContentGetting Content TargetingTargeting
PageGroupPageGroup UsersUsers ProductsProducts
Initialize AdvertisingInitialize Advertising Create Global Expression EvaluatorCreate Global Expression Evaluator
Set MSCSExpressionEvaluator = Set MSCSExpressionEvaluator = Server.CreateObject("Commerce.ExpressionEvaluator")Server.CreateObject("Commerce.ExpressionEvaluator")
MSCSExpressionEvaluator.Connect(dictConfig.s_BizDataSMSCSExpressionEvaluator.Connect(dictConfig.s_BizDataStoreConnectionString)toreConnectionString)
Create Global Advertising ContextCreate Global Advertising Context Set CSFAdvertisingContext = Set CSFAdvertisingContext =
CreateObject("Commerce.Dictionary") CreateObject("Commerce.Dictionary") Configure with Expression EvaluatorConfigure with Expression Evaluator
Set CSFAdvertisingContext("Evaluator") = Set CSFAdvertisingContext("Evaluator") = oExpressionEvaluator oExpressionEvaluator
Configure with cache managerConfigure with cache manager Set CSFAdvertisingContext("CacheManager") = Set CSFAdvertisingContext("CacheManager") =
oCacheManager oCacheManager CSFAdvertisingContext("CacheName") = "Advertising" CSFAdvertisingContext("CacheName") = "Advertising"
global_csf_lib.asp
Initialize AdvertisingInitialize Advertising
Configure click redirect (records clicks)Configure click redirect (records clicks) CSFAdvertisingContext("RedirectUrl") = CSFAdvertisingContext("RedirectUrl") =
sRedirectUrl ‘ GetBaseUrl() & "/redir.asp" sRedirectUrl ‘ GetBaseUrl() & "/redir.asp"
Load Advertising pipelineLoad Advertising pipeline Set oPipe = Set oPipe =
Server.CreateObject("Commerce.OrderPipeline")Server.CreateObject("Commerce.OrderPipeline")
oPipe.LoadPipe(oPipelineMap.Advertising)oPipe.LoadPipe(oPipelineMap.Advertising) Set CSFAdvertisingContext("Pipeline") = oPipeSet CSFAdvertisingContext("Pipeline") = oPipe
Store Ad Context in application variableStore Ad Context in application variable Set Application("CSFAdvertisingContext") = Set Application("CSFAdvertisingContext") =
CSFAdvertisingContextCSFAdvertisingContext
Getting Ad ContentGetting Ad Content Create Content SelectorCreate Content Selector
Set oCSO = Set oCSO = Server.CreateObject("Commerce.ContentSelector")Server.CreateObject("Commerce.ContentSelector")
Configure with Product informationConfigure with Product information Set oCSO.Products = ProductDetailsSet oCSO.Products = ProductDetails
Function GetShownProductsDetails()Function GetShownProductsDetails() Function listGetShownProductsInfo()Function listGetShownProductsInfo()
Configure content selection parametersConfigure content selection parameters oCSO.NumRequested = 1oCSO.NumRequested = 1 oCSO.Border = 1oCSO.Border = 1 oCSO.TargetFrame = "_top“oCSO.TargetFrame = "_top“ oCSO.Size = "Banner"oCSO.Size = "Banner" oCSO.PageGroup = “Home”oCSO.PageGroup = “Home” Set oCSO.UserProfile = oUserProfileSet oCSO.UserProfile = oUserProfile
Banner.asp
Redir.asp
Targeting Targeting ContextContext
Getting Ad ContentGetting Ad Content
Call content selector to get contentCall content selector to get content Set Ads = Set Ads =
oCSO.GetContent( Application("CSFAdvertisingCoCSO.GetContent( Application("CSFAdvertisingContext") )ontext") )
Render Ad content collectionRender Ad content collection For Each Ad In AdsFor Each Ad In Ads Response.Write(Ad) & “<BR>”Response.Write(Ad) & “<BR>” NextNext
FormatTemplate pipeline componentFormatTemplate pipeline component Formats text based on ad specification in Formats text based on ad specification in
Business Desk (Ad Display section)Business Desk (Ad Display section) Modifiable using Resource Kit toolModifiable using Resource Kit tool Can also replace with custom format component Can also replace with custom format component
(must use C++ due to interface)(must use C++ due to interface)
DiscountsDiscounts
Reacts to product page and user’s basketReacts to product page and user’s basket ScoreDiscounts used for product page ScoreDiscounts used for product page
Discount.PCF pipelineDiscount.PCF pipeline OrderDiscounts used for basket page OrderDiscounts used for basket page
Basket.PCF pipelineBasket.PCF pipeline Supports page/basket and item level Supports page/basket and item level
display messagedisplay message Uses catalog expressions to define Uses catalog expressions to define
Basket requirements (Buy)Basket requirements (Buy) Award requirements (Get)Award requirements (Get)
Combines 3.0 Discount with 4.0 AdCombines 3.0 Discount with 4.0 Ad Can require a “click” on discount image Can require a “click” on discount image
to qualify for discountto qualify for discount
Using DiscountsUsing Discounts
Creating Discounts using Business Creating Discounts using Business DeskDesk DemoDemo
InitializeInitialize Getting ContentGetting Content TargetingTargeting
PageGroupPageGroup UsersUsers ProductsProducts
Initialize DiscountsInitialize Discounts(same as Ad init)(same as Ad init)
Create Global Expression EvaluatorCreate Global Expression Evaluator Set MSCSExpressionEvaluator = Set MSCSExpressionEvaluator =
Server.CreateObject("Commerce.ExpressionEvaluator")Server.CreateObject("Commerce.ExpressionEvaluator") MSCSExpressionEvaluator.Connect(dictConfig.s_BizDataSMSCSExpressionEvaluator.Connect(dictConfig.s_BizDataS
toreConnectionString)toreConnectionString) Create Global Context for CSF DiscountsCreate Global Context for CSF Discounts
Set CSFDiscountContext = Set CSFDiscountContext = CreateObject("Commerce.Dictionary")CreateObject("Commerce.Dictionary")
Configure with cachemanagerConfigure with cachemanager Set CSFDiscountContext("CacheManager") = Set CSFDiscountContext("CacheManager") =
oCacheManageroCacheManager CSFDiscountContext("CacheName") = "Discounts"CSFDiscountContext("CacheName") = "Discounts"
Configure with Expression EvaluatorConfigure with Expression Evaluator Set CSFDiscountContext("Evaluator") = Set CSFDiscountContext("Evaluator") =
oExpressionEvaluatoroExpressionEvaluator
Initialize DiscountsInitialize Discounts
Configure click redirect (records clicks)Configure click redirect (records clicks) CSFDiscountContext("RedirectUrl") = CSFDiscountContext("RedirectUrl") =
sRedirectUrl ‘ GetBaseUrl() & "/redir.asp" sRedirectUrl ‘ GetBaseUrl() & "/redir.asp"
Load Discount pipelineLoad Discount pipeline Set oPipe = Set oPipe =
Server.CreateObject("Commerce.OrderPipeline")Server.CreateObject("Commerce.OrderPipeline")
oPipe.LoadPipe(oPipelineMap.Discounts)oPipe.LoadPipe(oPipelineMap.Discounts) Set CSFDiscountContext("Pipeline") = oPipeSet CSFDiscountContext("Pipeline") = oPipe
Store Discount Context in application Store Discount Context in application variablevariable Set Application("CSFDiscountContext") = Set Application("CSFDiscountContext") =
CSFDiscountContextCSFDiscountContext
Getting Discount ContentGetting Discount Content(same as Ad Get)(same as Ad Get)
Create Content SelectorCreate Content Selector Set oCSO = Set oCSO =
Server.CreateObject("Commerce.ContentSelector") Server.CreateObject("Commerce.ContentSelector") Configure with Product informationConfigure with Product information
Set oCSO.Products = ProductDetailsSet oCSO.Products = ProductDetails Function GetShownProductsDetails()Function GetShownProductsDetails() Function listGetShownProductsInfo()Function listGetShownProductsInfo()
Configure content selection parametersConfigure content selection parameters oCSO.NumRequested = 1oCSO.NumRequested = 1 oCSO.Border = 1oCSO.Border = 1 oCSO.TargetFrame = "_top“oCSO.TargetFrame = "_top“ oCSO.Size = "Banner"oCSO.Size = "Banner" oCSO.PageGroup = “Home”oCSO.PageGroup = “Home” Set oCSO.UserProfile = oUserProfileSet oCSO.UserProfile = oUserProfile
Discount.asp
Getting Discount ContentGetting Discount Content
Call content selector to get contentCall content selector to get content Set Discounts = Set Discounts =
oCSO.GetContent(Application("CSFDiscountConoCSO.GetContent(Application("CSFDiscountContext")) text"))
Render Discount content collectionRender Discount content collection For Each Discount In DiscountsFor Each Discount In Discounts Response.Write Discount & “<BR>”Response.Write Discount & “<BR>” NextNext
FormatTemplate pipeline componentFormatTemplate pipeline component Formats text based on ad specification in Formats text based on ad specification in
Business Desk (Ad Display section)Business Desk (Ad Display section) Modifiable using Resource Kit toolModifiable using Resource Kit tool Can also replace with custom format component Can also replace with custom format component
(must be C++ due to interface)(must be C++ due to interface)
Rendering Basket DiscountsRendering Basket Discounts
Run OrderDiscount component in Run OrderDiscount component in basket pipelinebasket pipeline
oOrderForm.Value("_discounts")oOrderForm.Value("_discounts") ContentList with discount messagesContentList with discount messages
oItem.discounts_appliedoItem.discounts_applied Populated with item discountsPopulated with item discounts
Item discount valuesItem discount values oItem.Value("_cy_iadjust_currentprice") oItem.Value("_cy_iadjust_currentprice") oItem.Value("_cy_oadjust_discount") oItem.Value("_cy_oadjust_discount") oItem.Value("_cy_oadjust_adjustedprice") oItem.Value("_cy_oadjust_adjustedprice")
Basket.asp
Basket.pcf
Rendering Basket DiscountsRendering Basket Discounts Enumerate oItem.discounts_applied to get discount Enumerate oItem.discounts_applied to get discount
descriptiondescription
For Each ciid In oItem.discounts_appliedFor Each ciid In oItem.discounts_applied sDesc = GetDiscountDescription( ciid, oOrderForm.Value(“_discounts”)sDesc = GetDiscountDescription( ciid, oOrderForm.Value(“_discounts”) oItem.Value("_messages") = oItem.Value("_messages") & "D" & CStr(ciid) oItem.Value("_messages") = oItem.Value("_messages") & "D" & CStr(ciid)
& mc_NBSP & sDesc& mc_NBSP & sDescNextNext
Function GetDiscountDescription(ByVal ciid, ByVal oContentList)Function GetDiscountDescription(ByVal ciid, ByVal oContentList)Dim oRows, oFieldsDim oRows, oFields
Set oRows = oContentList.Search("item_id", ciid)Set oRows = oContentList.Search("item_id", ciid) If Not oRows.EOF ThenIf Not oRows.EOF Then Set oFields = oRows.FieldsSet oFields = oRows.Fields GetDiscountDescription = "D" & CStr(ciid) & “ “ & oFields.descriptionGetDiscountDescription = "D" & CStr(ciid) & “ “ & oFields.description ElseElse GetDiscountDescription = "D" & CStr(ciid) & “ no discount text found”GetDiscountDescription = "D" & CStr(ciid) & “ no discount text found” End IfEnd IfEnd FunctionEnd Function
Simple ListSimple List
Content ListContent List
Direct MailDirect Mail
Direct Mail Marketing is an off-line form Direct Mail Marketing is an off-line form of targetingof targeting
Fast, Scalable, Runs as an NT ServiceFast, Scalable, Runs as an NT Service Based on Business Processing Based on Business Processing
PipelinesPipelines Designed for personalized bulk mailingDesigned for personalized bulk mailing
Personalized web pagePersonalized web page Plain-text, HTML, mime formatsPlain-text, HTML, mime formats
Direct MailDirect Mail
Campaign tracking of mails Campaign tracking of mails sent, clickedsent, clicked
It leverages the Business Data It leverages the Business Data Warehouse calc engine as one way to Warehouse calc engine as one way to produce lists of users to send mail toproduce lists of users to send mail to
Based on Windows 2000 CDO objectsBased on Windows 2000 CDO objects Uses SQL Server Agent for Uses SQL Server Agent for
recurring jobsrecurring jobs Tested to eight million mailingTested to eight million mailing Redir.asp
Using Direct MailUsing Direct Mail
Creating Direct Mailing using Business DeskCreating Direct Mailing using Business Desk DemoDemo
Personalized Email TemplatePersonalized Email Template Sets “CampaignItemID” cookieSets “CampaignItemID” cookie
Currently running Direct Mail campaign Currently running Direct Mail campaign Sets “MSCSProfile” cookie Sets “MSCSProfile” cookie
Use AuthManager object to get useridUse AuthManager object to get userid User ProfileService object to get user profileUser ProfileService object to get user profile
Opt-out pageOpt-out page Adds user to opt-out user listAdds user to opt-out user list
ServiceReminder.asp Opt-out.asp
AgendaAgenda
Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
AnalysisAnalysis Standard Reports (39 total)Standard Reports (39 total)
Commerce Server Reports for categoriesCommerce Server Reports for categories AdvertisingAdvertising
Ad Reach and Frequency per Day (Dynamic)Ad Reach and Frequency per Day (Dynamic) Campaign Item Summary (Dynamic)Campaign Item Summary (Dynamic)
Click-streamClick-stream Top Requested Pages (Static)Top Requested Pages (Static) Directories (Dynamic)Directories (Dynamic) Query Strings (single value) (Static)Query Strings (single value) (Static)
SalesSales Buyer Browse to Purchase (Dynamic)Buyer Browse to Purchase (Dynamic) Customer Sales (Static)Customer Sales (Static)
Visual Insight Reports (third party)Visual Insight Reports (third party) Campaign Manager (Ads, Disc.) – near real timeCampaign Manager (Ads, Disc.) – near real time
Shows Scheduled, Requests/Viewed, Clicked, %Shows Scheduled, Requests/Viewed, Clicked, %
AnalysisAnalysis
PredictionPrediction Dependency netsDependency nets
SegmentationSegmentation Discover implicit behaviorDiscover implicit behavior
PredictorPredictor
Real-time recommendationsReal-time recommendations Uses prediction models built from Data Uses prediction models built from Data
WarehouseWarehouse Server builds modelsServer builds models
Dedicated Windows 2000 serviceDedicated Windows 2000 service
Client does predictionsClient does predictions Runs on web serverRuns on web server Cached in Application variableCached in Application variable
Using PredictorUsing Predictor
Build Predictor Model using Build Predictor Model using Commerce Server ManagerCommerce Server Manager
Initialize Predictor ClientInitialize Predictor Client Getting Predictor ContentGetting Predictor Content
Initialize Predictor ClientInitialize Predictor Client Create Predictor ClientCreate Predictor Client
Set objPredictor = Set objPredictor = Server.CreateObject("Commerce.PredictorClient")Server.CreateObject("Commerce.PredictorClient")
Load Predictor ModelLoad Predictor Model objPredictor.LoadModelFromDB “Transactions”, objPredictor.LoadModelFromDB “Transactions”,
connstr_db_dw connstr_db_dw Set Popularity penalty weight (0 no penalty, 1 max)Set Popularity penalty weight (0 no penalty, 1 max)
objPredictor.fpPopularityPenalty = 0.8 ‘ show least popularobjPredictor.fpPopularityPenalty = 0.8 ‘ show least popular Set Confidence thresholdSet Confidence threshold
objPredictor.fpDefaultConfidence = 10 ‘ show most itemsobjPredictor.fpDefaultConfidence = 10 ‘ show most items Debug output flag (set to false for Production)Debug output flag (set to false for Production)
objPredictor.bFailOnUnknownInputAttributes = False objPredictor.bFailOnUnknownInputAttributes = False Cache Predictor ClientCache Predictor Client
Set Application("MSCSPredictor") = objPredictorSet Application("MSCSPredictor") = objPredictor
global_profile_lib.asp
Getting Predictor ContentGetting Predictor Content
Create a case dictionary for basket itemsCreate a case dictionary for basket items Set dCase = GetDictionary() Set dCase = GetDictionary()
Populate case dictionary Populate case dictionary QTY[catalog name].[product id]QTY[catalog name].[product id]
For Each sOrderFormName in mscsOrderGrp.value("Orderforms") For Each sOrderFormName in mscsOrderGrp.value("Orderforms") Set oOrderForm =Set oOrderForm = mscsOrderGrp.value.OrderForms.Value(sOrderFormName)mscsOrderGrp.value.OrderForms.Value(sOrderFormName) For Each dItem in oOrderForm.ItemsFor Each dItem in oOrderForm.Items strPropName = “QTY([" & dItem.product_catalog & "].[" &strPropName = “QTY([" & dItem.product_catalog & "].[" & dItem.product_id & "])"dItem.product_id & "])" lQuantity = CLng(dItem.quantity)lQuantity = CLng(dItem.quantity) dCase(strPropName) = lQuantity ‘ Add to dictionarydCase(strPropName) = lQuantity ‘ Add to dictionary NextNext NextNext
Getting Predictor ContentGetting Predictor Content Pose known case, ask predictor client to predict Pose known case, ask predictor client to predict
missing factsmissing facts
Set slToPredict = GetSimpleList() Set slToPredict = GetSimpleList() slToPredict.Add “SKU”slToPredict.Add “SKU”
oPredictor.Predict dCase, slToPredict, arPredictedProps, oPredictor.Predict dCase, slToPredict, arPredictedProps, arPredictedVals, lMaxPredictions arPredictedVals, lMaxPredictions dCase – known case (list of product items)dCase – known case (list of product items) slToPredict – SKU (fact to predict)slToPredict – SKU (fact to predict) arPredictedProps – return array with list of SKUsarPredictedProps – return array with list of SKUs arPredictedVals – return array with list of quantitiesarPredictedVals – return array with list of quantities
For i = 0 To UBound(arPredictedProps)For i = 0 To UBound(arPredictedProps) Response.Write arPredictedProps(i)) & “<BR>”Response.Write arPredictedProps(i)) & “<BR>” NextNext
SegmentationSegmentation
Segment users based on Segment users based on implicit behaviorimplicit behavior
System based discovery of System based discovery of hidden trends and behavior in the hidden trends and behavior in the Business Data WarehouseBusiness Data Warehouse
Use discovered segments Use discovered segments to drive targetingto drive targeting
Results in clusters of users Results in clusters of users Export as user listExport as user list
Segment ViewerSegment Viewer
AgendaAgenda
Commerce Server ArchitectureCommerce Server Architecture User Profile ManagementUser Profile Management TargetingTargeting CampaignsCampaigns AnalysisAnalysis Closing the LoopClosing the Loop
Closing The LoopClosing The Loop
List ManagerList Manager Bulk UpdatesBulk Updates
List ManagerList Manager
Allows marketing managers to create Allows marketing managers to create lists without a DBAlists without a DBA
List Manager object import lists from List Manager object import lists from CS Business Analysis, SQL Server or CS Business Analysis, SQL Server or flat filesflat files
Users can merge and subtracts listsUsers can merge and subtracts lists Users can export listsUsers can export lists DemoDemo
Exporting listsExporting lists Table schemaTable schema
Bulk UpdatesBulk Updates
Export static, dynamic reports Export static, dynamic reports as user listas user list
Create new user propertyCreate new user property Bulk update users using user listBulk update users using user list Automating bulk updates using script Automating bulk updates using script
(Profile Service SQL via ADO interface)(Profile Service SQL via ADO interface) DemoDemo
update.vbs.txt
ResourcesResources Commerce Server 2000 Resource KitCommerce Server 2000 Resource Kit
http://mspress.microsoft.com/prod/books/4659.htmhttp://mspress.microsoft.com/prod/books/4659.htm Commerce Server 2000 Partners PageCommerce Server 2000 Partners Page
http://www.microsoft.com/http://www.microsoft.com/commerceservercommerceserver/partners/default.asp/partners/default.asp
Profile SDK siteletProfile SDK sitelet C:\Program Files\Microsoft Commerce Server\SDK\Samples\C:\Program Files\Microsoft Commerce Server\SDK\Samples\
Sitelets\ProfileSitelets\Profile Discount SDK siteletDiscount SDK sitelet
C:\Program Files\Microsoft Commerce Server\SDK\Samples\C:\Program Files\Microsoft Commerce Server\SDK\Samples\Sitelets\DiscountSitelets\Discount
Ad SDK siteletAd SDK sitelet C:\Program Files\Microsoft Commerce Server\SDK\Samples\C:\Program Files\Microsoft Commerce Server\SDK\Samples\
Sitelets\AdSitelets\Ad http://www.microsoft.com/business/index/http://www.microsoft.com/business/index/
casestudiesalpha.aspcasestudiesalpha.asp http://www.microsoft.com/BUSINESS/articles/http://www.microsoft.com/BUSINESS/articles/
crm/crmbasics.aspcrm/crmbasics.asp
Summary & Call To ActionSummary & Call To Action
Rich Personalization & Targeting Rich Personalization & Targeting featuresfeatures User Profile ManagementUser Profile Management TargetingTargeting Campaigns (Ads, Discounts, Direct Mail)Campaigns (Ads, Discounts, Direct Mail)
Closed Loop Personalization ToolsClosed Loop Personalization Tools Analysis reports, Predictor, SegmentationAnalysis reports, Predictor, Segmentation ListManagerListManager Bulk updatesBulk updates
[email protected]@microsoft.com
Integrate Third-Party Integrate Third-Party ERPERP System with CS2000System with CS2000
OutlineOutline
IntroductionIntroduction Architecture for integrating an ERP system
with a Commerce Server application. Integration Tech.Integration Tech. General Considerations General Considerations Integrate with SAP using CS2000Integrate with SAP using CS2000 reviewreview
Introduction(1)Introduction(1) Commerce data and business rules often exist on the Commerce data and business rules often exist on the
ERP system. ERP system. For accuracy and consistency, Commerce Server For accuracy and consistency, Commerce Server
application need those data and business rulesapplication need those data and business rules Customer dataCustomer data Product catalog (including SKU numbers, Product catalog (including SKU numbers,
vendor information, and availability)vendor information, and availability) Product inventory levelsProduct inventory levels Pricing dataPricing data Order status and history Taxation rulesTaxation rules Credit card processing policiesCredit card processing policies Product authorization rulesProduct authorization rules Pricing algorithmsPricing algorithms Shipping algorithmsShipping algorithms
Introduction(2)Introduction(2) Data from the Commerce Server application,
such as the following, must be sent back to the ERP System:
Customer orders Web customers and customer updates
It is necessary
for CS2000 application to integrate with ERP systemsuch as SAP, J.D. Edwards OneWorld?, PeopleSoft, and other corporate systems
Architecture for integrating an ERP system with a Commerce Server application.
Integration Tech.Integration Tech.
Batch downloadsBatch downloads Real-time connectorsReal-time connectors Queued connectorsQueued connectors Mirrored updatesMirrored updates
Batch downloadsBatch downloads
copying ERP-managed data from an copying ERP-managed data from an ERP system to a Commerce Server ERP system to a Commerce Server application.application.
•Catalog objectCatalog object
•Bulk Copy Program (BCP)
•Data Transformation Services
(DTS)
system availability
Real-time connectorsReal-time connectors
real-time connectors:real-time connectors: wrap the programming interfaces on the wrap the programming interfaces on the
ERP system with a COM+ component ERP system with a COM+ component executed in real time. executed in real time.
The COM+ component is essentially a The COM+ component is essentially a proxy object proxy object
Any ASP page in the Commerce Server Any ASP page in the Commerce Server application by the application by the Server.CreateObject()Server.CreateObject() method. method.
Provided by the ERP vendor or a third-party vendor
Real-time connectorsReal-time connectors
Queued connectorsQueued connectors
The queued-connector technique is The queued-connector technique is similar to the real-time connector similar to the real-time connector technique.technique.
The difference is that the queued-The difference is that the queued-connector technique connector technique adds a queuing adds a queuing technology to make the calls technology to make the calls asynchronousasynchronous
Mirrored updatesMirrored updates
it requires software event support it requires software event support on the ERP system. on the ERP system.
As events occur on the ERP As events occur on the ERP system (for example, inventory is system (for example, inventory is updated, customers are added, updated, customers are added, product pricing is changed), they product pricing is changed), they can be trapped and transmitted can be trapped and transmitted over a real-time connector to the over a real-time connector to the Commerce Server application.Commerce Server application.
General Considerations General Considerations
ERP systems and Commerce Server ERP systems and Commerce Server business rulesbusiness rules
Physical architecture (highly scalable)Physical architecture (highly scalable) Product catalogProduct catalog Pricing and promotionsPricing and promotions Shipping, taxation, and credit card Shipping, taxation, and credit card
authorizationauthorization ReplicationReplication
ERP systems and Commerce ERP systems and Commerce Server business rulesServer business rules identify each of the business rules and identify each of the business rules and
decide whether to mirror each one in decide whether to mirror each one in the Commerce Server application or the Commerce Server application or provide a real-time call for it to the ERP provide a real-time call for it to the ERP system. system.
The type of business ruleThe type of business rule The frequency with which the business The frequency with which the business
rule must be invokedrule must be invoked The costs and risks associated with The costs and risks associated with
invoking the business rule directly, in invoking the business rule directly, in real timereal time
The cost to mirror the business ruleThe cost to mirror the business rule
Physical architecture (highly Physical architecture (highly scalable)scalable)
Highly scalable Commerce Server application integrated Highly scalable Commerce Server application integrated with an ERP systemwith an ERP system
System component Services Description
Web servers IIS 5.0
COM+
Commerce Server Pipelineobjects
Commerce Server
Contain the ASP files of the site.
SQL Server servers SQL Server 2000(or SQL Server 7.0)
Provide all database services for the site,including customer, product, and pricinginformation, in addition to the tables forshopping baskets and receipts.
ERP Commerce objects ERP integration softwareprovided by ERP vendors
Custom-built integrationobjects
Provide Internet order processing andintegration. They may be a combination ofvendor-supplied objects and custom objects.
ERP system Provides business management.
Product catalogProduct catalog
Design the product database to match Design the product database to match the structure of the corresponding ERP the structure of the corresponding ERP system as closely as possible. system as closely as possible.
Develop a process to add content and add data(images, multimedia, and so onimages, multimedia, and so on)to the product catalog as it is being built from the ERP system.
Design a scheduled update process
Pricing and promotionsPricing and promotions
Use the pricing models and templates Use the pricing models and templates from the ERP system and mirror from the ERP system and mirror changes to the Commerce Server changes to the Commerce Server application.application.
QuantityQuantity Customer and customer volume historyCustomer and customer volume history Current availabilityCurrent availability Product market status (discontinued, Product market status (discontinued,
recalled, and so on)recalled, and so on) Sales goalsSales goals Advertisements and promotionsAdvertisements and promotions
Shipping, taxation, and credit card Shipping, taxation, and credit card authorizationauthorization Shipping, taxation, and credit card Shipping, taxation, and credit card
authorization functions are each authorization functions are each important to a Commerce Server important to a Commerce Server application, but are also application, but are also often often provided provided by the ERP system.by the ERP system.
several third-party software developers several third-party software developers provide componentsprovide components (http://www.microsoft.com/commerce)(http://www.microsoft.com/commerce)
ReplicationReplication
writing custom applications to bypass writing custom applications to bypass the ERP vendor’s recommended API the ERP vendor’s recommended API
or Setting up replication between the or Setting up replication between the ERP system’s database and the ERP system’s database and the Commerce Server application Commerce Server application database), database),
You should not try to directly access You should not try to directly access database tables on the ERP system.database tables on the ERP system.
Integrate with SAP using CS2000Integrate with SAP using CS2000
SAP system with integrated Commerce Server application
Using the SAP DCOM connectorUsing the SAP DCOM connector Integrating a product catalogIntegrating a product catalog Integrating item pricingIntegrating item pricing Integrating inventory dataIntegrating inventory data Integrating ordersIntegrating orders
SAP system with integrated Commerce Server Application
Using the SAP DCOM connectorUsing the SAP DCOM connector
the SAP DCOM connector is the bridge the SAP DCOM connector is the bridge between the Microsoft Windows 2000 between the Microsoft Windows 2000 platform and the SAP business object platform and the SAP business object frameworkframework
Integrating a product catalogIntegrating a product catalog integrate a product catalog between integrate a product catalog between
Commerce Server and SAP:Commerce Server and SAP: Batch download product catalog dataBatch download product catalog data Batch download incremental catalog Batch download incremental catalog
changeschanges Mirrored updatesMirrored updates Real-time connectionsReal-time connections
Integrating item pricingIntegrating item pricing
Batch download item pricesBatch download item prices Triggered price change downloadTriggered price change download Real-time pricing integrationReal-time pricing integration
Integrating inventory dataIntegrating inventory data
Batch download inventory dataBatch download inventory data Batch download incremental Batch download incremental
inventory changesinventory changes Mirrored updates Real-time Mirrored updates Real-time
connectionsconnections
Integrating ordersIntegrating orders
ReviewReview
Architecture for integrating an ERP system with a Commerce Server application.
Integration Technologies.Integration Technologies. General Considerations General Considerations Integrate with SAP using CS2000Integrate with SAP using CS2000 http://www.mysap.com/solutions/
technology/bapis/com/dcom_mag/dcom_mag.htm
ASPASP(Application Service (Application Service Provider) Using CS2000Provider) Using CS2000
OutlineOutline
Overview ASPOverview ASP Microsoft ASP StrategyMicrosoft ASP Strategy eCommerce ASPeCommerce ASP Case studyCase study
Overview of ASP(1)Overview of ASP(1)
ASPs are defined as companies that:ASPs are defined as companies that: (1) develop and deliver a service shared by (1) develop and deliver a service shared by
multiple customers; multiple customers; (2) provide these services for a (2) provide these services for a
subscription or usage-based fee;subscription or usage-based fee; (3) supply these services from a central (3) supply these services from a central
location, over the Internet or a private location, over the Internet or a private network, network,
Overview of ASP(1)Overview of ASP(1)
These benefits are: These benefits are: 1) predictable costs and low initial 1) predictable costs and low initial
investments; investments; 2) enabling corporate resources to focus 2) enabling corporate resources to focus
on mission-critical goals;on mission-critical goals; 3) shortening the time-to-market and time-3) shortening the time-to-market and time-
to-benefit for new IT solutions.to-benefit for new IT solutions.
Microsoft ASP StrategyMicrosoft ASP Strategy
The Evolution Of ASPsThe Evolution Of ASPs
Exchange,Exchange,Client/serverClient/serverapplicationsapplications
Phase 2Phase 2Messaging,Messaging,
Line-of-BusinessLine-of-Business
Phase 3Phase 3Web ServicesWeb Services
Terminal Server,Terminal Server,Office,Office,
Intellimirror/SMSIntellimirror/SMS
Phase 1Phase 1DesktopDesktop
Overcome skill Overcome skill shortageshortageFaster deploymentFaster deploymentLower initial Lower initial investmentinvestmentOutsourceOutsource
PC applicationPC applicationmanagementmanagement
VVAA
LL
UU
EE
..NET Building Blocks,NET Building Blocks,Software as a ServiceSoftware as a Service
Re-architect Re-architect chasmchasm
PrimaryPrimaryApplicationApplication
Web ServicesWeb Services
Web Web ServiceService
XMLXML
““Building Block Building Block Services”Services”HTML
HTML
ClientClient
Web Web ServiceService
XMLXML
Web Web ServiceService
XMLXML
XM
LX
ML
XMLXMLClientClient
CRMCRMServiceService
ASP ExampleASP Example
HTMLHTML
ShippingShippingServiceService
XMLXML
Inventory Inventory ServiceService
XMLXML
XM
LX
ML
XMLXML
Authentication Authentication across servicesacross servicesSalesSales
RepRepInstantInstant
MessageMessage
InstallerInstaller
CalendarCalendarServiceService
XMLXMLX
ML
XM
L
Enabling Web ServicesEnabling Web Services
Web Web ServiceService
Web Web ServiceService
XMLXML
““Building Block Building Block Services”Services”HTML
HTML
ClientClient
XML
XML
ClientClientXMLXML
Web Web ServiceService
XMLXML
Web Web ServiceService
XMLXML
XM
LX
ML
Visual Studio.NET,Visual Studio.NET,.NET Framework.NET Framework
..NET Enterprise NET Enterprise ServersServers
..NET Building Block NET Building Block ServicesServices
..NET Device NET Device SoftwareSoftware
..NET Enterprise ServersNET Enterprise Servers
eCommerce ASP eCommerce ASP
eCommerce ASP:eCommerce ASP: Host Host 、、 manage manage 、、 eCommerce eCommerce
Applications and Database for CustomersApplications and Database for Customers Web service provided by Commerce Server Web service provided by Commerce Server
2000 :2000 : Profile serviceProfile service Catalog serviceCatalog service Targeting serviceTargeting service Analysis serviceAnalysis service Pipeline ServicePipeline Service
Case study(1)Case study(1) USinternetworking
and Coventry Health Care: Microsoft Platform Leads to Better Customer Experience
Coventry Health Care, a managed health care company, turned to the World Wide Web and application service provider USinternetworking to help reduce costs without compromising customer service. USi consolidated Coventry's disparate Web sites and built a new set of customer care solutions around the rich functionality enabled by Microsoft Windows 2000 Advanced Server, SQL Server 2000, and Microsoft Commerce Server 2000. 7/18/2001, Microsoft ISN
Features of eCommerce ASPFeatures of eCommerce ASP Easy on your BudgetEasy on your Budget: take advantage of : take advantage of
shared technology infrastructure to cut shared technology infrastructure to cut transaction costs by as much as 90%.transaction costs by as much as 90%.
Easy to CollaborateEasy to Collaborate :creates stronger :creates stronger relationships between parties.relationships between parties.
Easy MarketingEasy Marketing for new buyers and for new buyers and sellerssellers
Easy to MaintainEasy to Maintain Easy to Set-upEasy to Set-up Easy for Small OrganizationsEasy for Small Organizations
What ec ASP looks Like?What ec ASP looks Like?
Your customized solutionsYour customized solutions
Site PackagerSite Packager
Commerce Server Service Commerce Server Service
How to implementHow to implement
XML technologyXML technology COM+ technologyCOM+ technology Using Commerce Server SDK to call key Using Commerce Server SDK to call key
servicesservices Customize Business Desk Customize Business Desk Customize customer’s solution siteCustomize customer’s solution site
Designing B2B Trading Partner Integration Designing B2B Trading Partner Integration SolutionsSolutions
•Identify internal integration requirements. •Collect and organize content into a single electronic format. •Design product catalogs. •Publish and manage product catalogs. •Enable supplier manager catalogs. •Receive purchase orders from trading partners. •Process orders from trading partners. •Interface with Web services. •Use Universal Description, Discovery, and Integration (UDDI) to establish a business relationship. •Plan a B2B trading partner integration solution.
Review Review
Commerce Server 2000Commerce Server 2000 是一个是一个智能商务框架智能商务框架 全面支持电子商务应用全面支持电子商务应用 提供核心商务组件,为企业快速提供了强大商提供核心商务组件,为企业快速提供了强大商
业智能,业智能, Commerce Server Commerce Server 与企业资源规划与企业资源规划
(( ERPERP )、)、客户关系管理(客户关系管理( CRMCRM )、)、销售管销售管理、税务报表等系统集成,为企业高层领导提理、税务报表等系统集成,为企业高层领导提供更全面的决策支持供更全面的决策支持 ::
基于可扩展标记语言基于可扩展标记语言 XMLXML 扩展基于扩展基于 OLE DB OLE DB 技术的模式对象技术的模式对象
。。 新的商业模式的支持新的商业模式的支持
Thank You!Thank You!