| PART ONE OVERVIEW | 1 |
| CHAPTER 1 Introduction | 3 |
| Purpose | 4 |
| Audience | 4 |
| Information Technology and Business Managers | 4 |
| Information Technology Architects | 5 |
| Consultants, Independent Software Vendors, Solution Providers, and Application Service Providers | 5 |
| Database Administrators, Application Developers, and System Integrators | 5 |
| Project Managers | 5 |
| Scope | 6 |
| Major Focus: E-Business Servers | 6 |
| Minor Focus | 7 |
| Beyond Scope | 7 |
| Plan of the Book | 8 |
| Part 1: Overview | 8 |
| Part 2: Enterprise Application Integration | 8 |
| Part 3: Business-to-Business Integration | 9 |
| Part 4: Business-to-Consumer Integration | 9 |
| Part 5: Wireless Integration | 9 |
| Part 6: The Future | 10 |
| Summary | 10 |
| CHAPTER 2 .NET in Plain English | 11 |
| .NET Framework | 12 |
| .NET Server Platforms | 19 |
| .NET My Services | 20 |
| Additional Information | 21 |
| CHAPTER 3 Overview of .NET Enterprise Servers | 23 |
| Application Center 2000 | 24 |
| Application Center 2000 Documentation Resources | 26 |
| BizTalk Server 2002 | 26 |
| BizTalk Server 2002 Documentation Resources | 28 |
| Commerce Server 2002 | 29 |
| Commerce Server 2002 Documentation Resources | 30 |
| Content Management Server 2001 | 32 |
| Content Management Server 2001 Documentation Resources | 32 |
| Exchange 2000 Server | 33 |
| Exchange 2000 Server Documentation Resources | 34 |
| Host Integration Server 2000 | 35 |
| Host Integration Server 2000 Documentation Resources | 37 |
| Internet Security and Acceleration (ISA) Server 2000 | 38 |
| Internet Security and Acceleration Server 2000 Documentation Resources | 39 |
| SQL Server 2000 | 40 |
| SQL Server 2000 Documentation Resources | 42 |
| Mobile Information 2001 Server | 43 |
| Mobile Information 2001 Server Documentation Resources | 44 |
| SharePoint Portal Server 2001 | 45 |
| SharePoint Portal Server 2001 Documentation Resources | 46 |
| Summary | 46 |
| PART TWO ENTERPRISE APPLICATION INTEGRATION | 47 |
| CHAPTER 4 Integrating Applications into the Enterprise | 49 |
| The Integration Challenge | 50 |
| The Business Case for Integration | 53 |
| Integration Approaches | 54 |
| Integration Using the User Interface | 54 |
| Integration Using Data Sources | 55 |
| Integration Using Application Programming Interfaces | 56 |
| Integration Using Business Logic | 57 |
| Implementing Application Integration | 58 |
| The Market for EAI | 61 |
| CHAPTER 5 Integrating SQL Server with DB2 | 63 |
| Scenario | 65 |
| Understanding the Data | 67 |
| Understanding the Process | 68 |
| Solution | 69 |
| Tools and Technologies | 71 |
| Implementation | 73 |
| Variations on a Model Solution | 74 |
| Windows 2000 Server and SQL Server Editions | 77 |
| Installing and Configuring Software | 78 |
| Configuring Host Integration Server | 78 |
| Prepare the DB2 Tables on the AS/400 | 90 |
| Installing and Configuring SQL Server 2000 | 93 |
| Configuring SQL Server DTS Packages | 94 |
| Working with DTS Packages | 102 |
| Scheduling DTS Packages for Execution | 105 |
| Sample Applications Using DTS | 107 |
| Data Integration Using DTS | 111 |
| CHAPTER 6 Integrating Employee Benefits Self-Service with SAP R/3 | 113 |
| Scenario | 116 |
| Understanding the Process | 119 |
| Understanding the APIs | 120 |
| Challenges Specific to SAP | 123 |
| Solution | 126 |
| SAP Integration Using BAPI | 127 |
| SAP Integration Using IDocs | 130 |
| Tools and Technologies | 131 |
| Implementation | 132 |
| Web Middleware | 132 |
| MSMQ Message Body Format | 133 |
| SAP Application Connector | 134 |
| Application Integration Using APIs and Interfaces | 136 |
| CHAPTER 7 Integrating Host Data into the Web | 137 |
| Scenario | 137 |
| Solution | 138 |
| The Sample Application | 140 |
| Tools and Technologies | 144 |
| Hardware and Software Requirements | 144 |
| Microsoft Host Integration Server 2000 | 144 |
| Visual Studio .NET | 145 |
| Cedar Bank Files and Folders | 145 |
| Cedar Bank Components and Remote Environments | 147 |
| COBOL Programs | 149 |
| Implementation | 150 |
| Running Cedar Bank with a Live Mainframe Connection | 150 |
| CHAPTER 8 Integrating BizTalk with SAP | 157 |
| Scenario | 157 |
| Solution | 157 |
| Tools and Technologies | 159 |
| Hardware and Software Requirements | 159 |
| BizTalk Adapter for SAP Components | 160 |
| BizTalk Adapter for SAP Manager | 160 |
| IDoc Handler | 161 |
| Application Integration Component | 161 |
| Microsoft Message Queuing | 161 |
| Implementation | 161 |
| Installing Prerequisite Software | 162 |
| Installing BizTalk Adapter for SAP | 162 |
| Configuring Components | 162 |
| Configure SAP R/3 System | 163 |
| Configure DCOM Connector | 163 |
| Configure COM for ABAP | 164 |
| Configure Microsoft Message Queuing | 166 |
| Configure BizTalk Adapter for SAP Manager | 166 |
| Configure BizTalk Server | 172 |
| Generating a BizTalk Server Specification | 176 |
| Specification Generation Process | 176 |
| Generating a BizTalk Server Specification Document | 176 |
| Sending an IDoc to BizTalk Server | 177 |
| Sending an IDoc to SAP R/3 System | 179 |
| Additional Information | 182 |
| BizTalk Server 2000 | 182 |
| SAP | 182 |
| Microsoft SQL Server | 182 |
| Microsoft Message Queue | 182 |
| PART THREE BUSINESS-TO-BUSINESS INTEGRATION | 183 |
| CHAPTER 9 Integrating Business Partners into the Enterprise | 185 |
| Why Electronic Commerce? | 186 |
| Types of Electronic Commerce Purchases | 187 |
| Challenges of Conducting Business Electronically | 188 |
| Middleware | 189 |
| Business-to-Business Integration | 190 |
| Exchanging Data and Information | 193 |
| CHAPTER 10 Integrating BizTalk with EDI | 197 |
| Scenario | 197 |
| Solution | 198 |
| Tools and Technologies | 199 |
| Hardware and Software Requirements | 199 |
| File Transfer | 200 |
| E-Business Software | 200 |
| Trading Partner Interface | 201 |
| Implementation | 203 |
| Configuring for Internet Transmission | 204 |
| Configuring for Routing Received Documents to MSMQ | 207 |
| Planning for Growth and Scalability | 209 |
| CHAPTER 11 Automating Electronic Procurement | 211 |
| Scenario | 211 |
| Solution | 212 |
| Hub: Send Purchase Order to Supplier | 213 |
| Supplier: Receive PO and Send Invoice to Hub | 215 |
| Hub: Receive Invoice and Send Payment to Supplier | 216 |
| Supplier: Receive Payment and Send Acknowledgement to Hub | 218 |
| XLANG Schedule Activation | 219 |
| E-Procurement XLANG Schedule Correlation | 221 |
| Storing the Correlation Information | 221 |
| Reading the Correlation Information | 222 |
| Tools and Technologies | 222 |
| Hardware and Software Requirements | 222 |
| Using Microsoft Visual Studio .NET | 223 |
| Creating XML Web Services | 223 |
| Summary | 228 |
| Implementation | 229 |
| Preliminary Setup | 229 |
| Update the Global Assembly Cache | 229 |
| Attach the SQL Server 2000 Databases | 229 |
| Create the SQL Server 7.0 Databases | 230 |
| Configure BizTalk Messaging Services | 232 |
| Running the E-Procurement Sample | 233 |
| Uninstalling the E-Procurement Sample | 236 |
| Additional Information | 237 |
| Microsoft BizTalk Server 2002 | 237 |
| Microsoft SQL Server | 237 |
| Microsoft Message Queuing | 237 |
| CHAPTER 12 Selling Through Trading Partners | 239 |
| Scenario | 241 |
| The Players | 241 |
| Basic Interactions | 242 |
| Different Purchasing Models | 243 |
| Retail Web Site Purchasing Model | 243 |
| Basic Supplier Purchasing Model | 244 |
| Supplier Purchasing Model Using Remote Shopping | 244 |
| Purchasing Model Summary | 246 |
| Electronic Document Standards | 247 |
| Scenario Summary | 247 |
| Solution | 248 |
| Associated Technologies | 248 |
| The Trading Partner's Buyer Application | 249 |
| Catalog Publishing Solution | 250 |
| Supported Document Formats | 251 |
| Catalog Publishing Tasks | 251 |
| Catalog Publishing Architecture | 255 |
| Purchase Order Reception Solution | 256 |
| Supported Document Formats | 257 |
| Purchase Order Reception Tasks | 258 |
| Purchase Order Reception Architecture | 259 |
| Remote Shopping Solution | 262 |
| Supported Document Formats | 263 |
| Remote Shopping Tasks | 267 |
| Remote Shopping Architecture | 269 |
| Tools and Technologies | 272 |
| Implementation | 272 |
| Basket Rendering Routines | 273 |
| RemoteBasket.asp from Basket.asp | 273 |
| InspectBasket.asp from RemoteBasket.asp | 276 |
| New and Modified Files in the AFS Solution Site | 283 |
| CHAPTER 13 Using Web Services to Transfer Files | 291 |
| Scenario | 291 |
| Solution | 291 |
| Tools and Technologies | 293 |
| Hardware and Software Requirements | 293 |
| Install the Web Service File Transfer Utility | 293 |
| Implementation | 294 |
| Operational Overview | 294 |
| Configuring the Sending WSFT Utility | 295 |
| Configuring the Receiving WSFT Web Service | 296 |
| Summary | 297 |
| PART FOUR BUSINESS-TO-CONSUMER INTEGRATION | 299 |
| CHAPTER 14 Reaching Consumers Using the Web | 301 |
| Microsoft Commerce Server | 302 |
| Microsoft Content Management Server | 303 |
| A Common Theme: Keeping Separate Jobs Separate | 304 |
| CHAPTER 15 Setting Up a Retail Storefront | 307 |
| Scenario | 308 |
| The Shopper Perspective | 308 |
| The Shopkeeper Perspective | 311 |
| The Business Manager Perspective | 312 |
| The Site Administrator Perspective | 313 |
| The Site Developer Perspective | 313 |
| Scenario Summary | 314 |
| Solution | 314 |
| Microsoft Commerce Server Overview | 316 |
| Commerce Server User Interfaces | 316 |
| Commerce Server Web Site | 319 |
| Commerce Server Objects | 319 |
| Feature-by-Feature Solution Summary | 321 |
| Navigation | 321 |
| Product Catalogs | 324 |
| Shopping Baskets | 327 |
| Completing the Purchase | 330 |
| Shopper-Centric Security | 334 |
| Recommendations | 336 |
| Improvements | 341 |
| Privacy | 344 |
| Different Languages and Currency | 345 |
| Miscellaneous Shopper Features | 345 |
| Shopkeeper-Specific Features | 347 |
| Tools and Technologies | 347 |
| Implementation | 348 |
| Keyword Searches in the Retail Solution Site | 349 |
| Main | 349 |
| rsFreeTextSearch | 350 |
| htmRenderFullTextSearchResults | 352 |
| RenderSearchResults and RenderSearchResultRow | 353 |
| Keyword Searches in the International Solution Site | 353 |
| Search_Click | 353 |
| Page_Load | 354 |
| PerformSearch | 355 |
| CHAPTER 16 Managing Web Content | 359 |
| Scenario | 360 |
| Solution | 361 |
| The Basic Idea | 362 |
| Concepts and Terminology | 364 |
| Maintained in a Database | 364 |
| Framed vs. Frameless Sites | 365 |
| Templates | 365 |
| Placeholders | 366 |
| Pages and Postings | 367 |
| Folders and Channels | 368 |
| Properties | 369 |
| Resources | 369 |
| Galleries | 369 |
| Roles | 370 |
| Rights Groups | 370 |
| Web Author | 371 |
| Site Builder | 373 |
| Connected Pages | 375 |
| Content Connector | 375 |
| Publishing API | 375 |
| URL Generation | 376 |
| Roles and Rights | 376 |
| Creating a Web Site | 379 |
| Content Connector for Commerce Server 2000 | 380 |
| Simple and Rich Product Pages | 380 |
| Personalized Content Objects | 381 |
| Business Desk Extensions | 382 |
| User Authorization | 383 |
| Programming with Content Connector | 383 |
| Microsoft Solution for Internet Business | 383 |
| Programming with Content Management Server | 384 |
| Publishing API | 384 |
| Content Connector Framework API | 387 |
| Deploying Content Management Server | 388 |
| Site Deployment Manager | 389 |
| Site Stager | 390 |
| Content Management Server 2002 | 391 |
| Site Programming Changes | 391 |
| Administration Changes | 394 |
| Authoring and Editing Changes | 395 |
| Miscellaneous Changes | 395 |
| Tools and Technologies | 396 |
| Implementation | 397 |
| COM Version of BuildTopNavTable | 398 |
| .NET-Based Version of BuildTopNavTable | 399 |
| PART FIVE WIRELESS INTEGRATION | 403 |
| CHAPTER 17 Integrating Location-Based Mobile Services | 405 |
| Introduction | 405 |
| Location-Based Mobile Services Delivery | 406 |
| Building .NET Location-Based Mobile Services Solutions | 411 |
| Mobile Internet Technology and Market Forces | 411 |
| The LBMS View of Mobile Networks | 411 |
| Location Technology and LBMS | 414 |
| LBMS User Scenarios | 421 |
| Market Segmentation | 421 |
| Connectivity and Synchronization Requirements | 422 |
| LBMS Protocol Standards | 422 |
| The Standards Landscape | 422 |
| MAGIC Services Protocol | 423 |
| The Eight MAGIC Services | 423 |
| Solution Architectures | 425 |
| Operating System and Enterprise Server Components | 425 |
| Importance of the Lab | 426 |
| Deployment Options | 426 |
| Option 1: The Synchronous and Stateless Model | 426 |
| Option 2: The Stateful Server Model | 427 |
| Option 3: Sync-and-Go Model | 427 |
| Tools and Technologies | 427 |
| Operating Environment and Scalability | 427 |
| Hardware | 429 |
| Software | 429 |
| Gateway Server | 430 |
| Transport Unpacking Server | 430 |
| Accounting Server | 430 |
| Core Navigation Server | 430 |
| Implementation | 430 |
| Installing Microsoft Software | 431 |
| Security Checklist | 432 |
| Additional Information | 433 |
| CHAPTER 18 Location-Based Mobile Services Architecture | 435 |
| Scenario | 435 |
| Solution | 435 |
| Key Design Considerations | 435 |
| MSP, NSPs and Other Content Providers | 437 |
| NSP, MSPs, and Other Customers | 439 |
| MSP 2.0 in the Protocol Stack | 440 |
| Transport Considerations | 441 |
| HTTP | 442 |
| SMTP | 442 |
| TCP/IP | 442 |
| Other Transports | 443 |
| Navigation Service Provider Architecture | 443 |
| Back-End - Front-End Division | 443 |
| Space Publishing Server | 447 |
| Service Delivery Targets | 448 |
| Five Targets | 448 |
| Delivery to Mobile Phones | 450 |
| Delivery to In-Car Systems | 451 |
| Delivery to a Mobile Service Provider | 452 |
| Information Update | 453 |
| Solution Parameters | 453 |
| Wireless Connectivity | 453 |
| Identifying Service Requirements | 454 |
| Caching Options | 454 |
| Solution Summary | 455 |
| Mobile Phone | 455 |
| In-Car | 455 |
| Mobile Service Provider | 455 |
| Space Publishing Server | 455 |
| Position Proxy Server | 456 |
| Tools and Technologies | 456 |
| Implementation | 456 |
| Implementing an NSP Delivery System | 456 |
| Installing Microsoft Software | 457 |
| Additional Information | 458 |
| CHAPTER 19 Delivering Location-Based Mobile Services | 459 |
| Introduction | 459 |
| MSP 2.0 Basics | 460 |
| Session Service | 460 |
| Context Service | 461 |
| Semantics Service | 462 |
| Query Service | 463 |
| Mobility Service | 465 |
| Positioning Service | 466 |
| Rendering Service | 466 |
| Update Service | 467 |
| The Registry | 468 |
| The API | 469 |
| Session Service Example | 470 |
| Session Service | 470 |
| Space Publishing | 472 |
| Scenarios | 473 |
| Design | 473 |
| Delivery to the Automobile | 473 |
| Scenarios | 473 |
| Design | 474 |
| Delivery to the Mobile Phone | 474 |
| Scenarios | 475 |
| Design | 477 |
| Delivery to MSP | 477 |
| Scenarios | 477 |
| Design | 478 |
| Position Proxy Service | 478 |
| Scenarios | 478 |
| Design | 479 |
| Summary | 479 |
| Additional Information | 479 |
| PART SIX THE FUTURE | 481 |
| CHAPTER 20 A Vision for the Future | 483 |
| .NET E-Business Servers Today | 483 |
| E-Business Servers Today | 484 |
| Solutions | 484 |
| HIPAA - Health Care Accelerator | 485 |
| RosettaNet | 486 |
| Accelerator for Suppliers (AFS) | 487 |
| Microsoft Solution for Internet Business (MSIB) | 487 |
| Enterprise E-Business Processes and Services | 487 |
| Future Solutions and Accelerators | 489 |
| BizOffice | 489 |
| Financial Services Accelerator | 489 |
| .NET E-Business Servers Tomorrow | 490 |
| APPENDIX Sample Applications | 493 |
| Sample Host-to-Web Applications | 493 |
| ASP.NET VB Host Program Access | 493 |
| VB.NET Early Bound Host Program Access | 494 |
| C# Early Bound Host Program Access | 494 |
| VB.NET Host Program Access as Web Service | 494 |
| VB.NET Host Program Access Web Service Web Client | 494 |
| VB.NET Host Program Access Web Service Windows Forms Client | 494 |
| SQL Server to DB2 Data Transfer-VB.NET | 495 |
| SQL Server to DB2 Data Transfer- Visual Basic 6.0 | 495 |
| Customer Order Entry Application | 495 |
| Customer Order Display Application | 495 |
| VB.NET OLE DB Query Processor | 495 |
| Connection String Manager | 495 |
| Web Service File Transfer | 496 |
| Automating Electronic Procurement | 496 |
| GLOSSARY | 497 |
| INDEX | 511 |