E-Book, Englisch, 462 Seiten
Dawson / Wainwright Pro Mapping in BizTalk Server 2009
1. ed
ISBN: 978-1-4302-1858-6
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
E-Book, Englisch, 462 Seiten
ISBN: 978-1-4302-1858-6
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
Learning good map design techniques for BizTalk Server will make a huge difference to the processing speed of your implementation, as well as to the scalability and maintainability of your code. Regardless of your experience, expert authors Jim Dawson and John Wainwright ensure you make the right choices to reap the rewards and avoid the potential penalties of poor design. Pro Mapping in BizTalk Server 2009 provides in-depth coverage of all aspects of mapping to enable you to quickly and efficiently incorporate logic that will fulfill your mapping requirements. While the mapping techniques will be useful for all versions of BizTalk Server, the code is tailored toward BizTalk Server 2006 R3 and demonstrates the latest approaches to standard maps, electronic data interchange, and RFID components. You'll refer again and again to the multiple solutions that will help solve your new mapping challenges, and soon find this is an essential reference for any BizTalk implementation.
Jim Dawson spent his first life in the U.S. Marine Corps, including a tour in Vietnam as an infantry platoon and company commander. Since then, his has gathered more than 25 years of experience in development, including working as a programmer analyst, systems analyst, electronic data interchange (EDI) analyst, BizTalk integrator, team leader, project manager, and departmental director. He has programmed in C, C++, C#, VB, XSLT, PHP, SQL, HTML, FORTRAN, PL1, and Assembly. He has worked with the BizTalk mapping engine for the last six years, concentrating on applying BizTalk to EDI uses. Jim is currently a managing partner of Second Star Professional Services (SSPS), LLC, a Microsoft Partner that provides expert electronic commerce implementation and integration services related to EDI.
Autoren/Hrsg.
Weitere Infos & Material
1;Contents at a Glance;5
2;Contents;7
3;About the Authors;16
4;About the Technical Reviewer;17
5;Acknowledgments;18
6;Introduction;19
6.1;Who This Book Is For;19
6.2;How This Book Is Structured;20
6.3;Conventions;20
6.4;Prerequisites;21
6.5;Downloading the Code;21
6.6;Contacting the Authors;22
7;Creating a Simple Map;24
7.1;Using the Development Studio;24
7.2;Creating the Map;30
7.3;Summary;51
8;How BizTalk Maps Work;52
8.1;Understanding How BizTalk Maps Work;52
8.2;Examining the Hidden Constructs in Maps;57
8.3;Digging into the HelloWorld Map Rules;61
8.4;Summary;78
9;Using Scripting in Maps;79
9.1;Choosing Between Scripts and Functoids;79
9.2;Selecting from Available Scripting Languages;85
9.3;Choosing Your Scripting Language;102
9.4;Combining Types of Scripting;104
9.5;Examples of When You Should Use a Script;108
9.6;Summary;111
10;Testing BizTalk Maps;112
10.1;Incremental Testing;112
10.2;Addressing Architecture Considerations;115
10.3;Test Data;119
10.4;Testing in the Map Editor;122
10.5;Summary;129
11;Mapping Conditionals;132
11.1;Checking If Data Exists;132
11.2;Blocking Output When Data Doesn’t Exist;134
11.3;Checking If a Specific Condition Exists;136
11.4;Checking If a Specific Condition Does Not Exist;138
11.5;An If/Else Condition;140
11.6;Using the Logical OR for a Single Return Value;142
11.7;Using a case Statement;143
11.8;Summary;145
12;Dealing with Numbers;147
12.1;Is This a Number?;147
12.2;Is This Number an Integer?;151
12.3;Rounding Numbers;153
12.4;Summing Numbers;155
12.5;Counting Records;157
12.6;Converting Real Numbers to Integers (and Back Again);161
12.7;Moving the Sign to a Trailing Position;162
12.8;Converting a Number to or from Sign-Trailing Overpunch Format;165
12.9;Summary;168
13;Manipulating Strings;169
13.1;Trimming Strings;169
13.2;Trimming Nonblank Characters from a String;172
13.3;Padding a String;173
13.4;Selecting Substrings from String Data;174
13.5;Concatenating Strings;177
13.6;Searching String Data;179
13.7;Removing and Replacing Characters from Strings;180
13.8;Using the RegEx Function to Remove Garbage from a String;183
13.9;Summary;183
14;Manipulating Dates and Times;184
14.1;BizTalk Date and Time Functoids;184
14.2;Altering the Format of a Date;186
14.3;Calculating a Due Date;189
14.4;Comparing Date Intervals;190
14.5;Performing Time Zone Conversions;191
14.6;Converting Gregorian Dates to Ordinal Dates;192
14.7;Converting Ordinal Dates to Gregorian Dates;193
14.8;Converting Dates and Times Using the ParseExact Method;195
14.9;Getting Dates and Times for an XSLT Script;195
14.10;Summary;197
15;Collecting Data;198
15.1;Collecting Nonlooping Data from the Source;198
15.2;Collecting Looping Data from the Source;200
15.3;Modifying the Target Schema for Data Collection;204
15.4;Using Global Variables for Data Collection;205
15.5;Loading a Unique List from Input Data;209
15.6;Arrays vs. Hash Tables;210
15.7;Using an Array to Control Data Selection for Output;210
15.8;Summary;217
16;Accessing External Data;218
16.1;Using External Flat Files;219
16.2;Using the BizTalk Database Functoids with External Data;231
16.3;Locating External Files with Path Names and Connect Strings;236
16.4;Summary;240
17;Using Basic Looping Controls;243
17.1;Understanding Loops;243
17.2;Understanding BizTalk Mapping Engine’s Basic Looping Concepts;245
17.3;Limiting the Output of a Loop;253
17.4;Forcing Looping in the Output;256
17.5;Simultaneously Forcing and Limiting a Loop;258
17.6;Many-to-One Looping;261
17.7;One-to-Many Looping;263
17.8;One-to-Nested Looping;264
17.9;Nested-to-One Looping;268
17.10;Summary;271
18;Handling Advanced Looping;272
18.1;Many-to-One Looping with a Source Child Loop;272
18.2;One-to-Many Looping with a Child Target Loop;279
18.3;Summary;286
19;Introducing Electronic Data Interchange (EDI);288
19.1;EDI Standards-Based Transactions;289
19.2;Versions and Releases;290
19.3;Using the Basic Building Blocks of EDI Messages;291
19.4;Exploring X12 Interchanges;302
19.5;Exploring EDIFACT Interchanges;306
19.6;Illustrating the Differences Between X12 and EDIFACT;310
19.7;Summary;311
20;Exploring EDI Looping;312
20.1;Looping from EDI to an Application;312
20.2;Looping from an Application to EDI;321
20.3;Summary;327
21;Processing EDI Code Pairs;328
21.1;Introducing EDI Code Pairs;328
21.2;Handling ID Codes in X12 REF and EDIFACT RFF Segments;329
21.3;Using a Recursive XSLT Call Template to Process Code Pairs;333
21.4;Using Nested XSLT Call Templates to Process Code Pairs;335
21.5;Multiple Code Pair Positions in a Single Segment;338
21.6;Creating Code Pairs in EDI Output;341
21.7;Summary;344
22;Unraveling the SDQ Segment;345
22.1;Exploring the SDQ Segment;345
22.2;Mapping Inbound SDQ Data;346
22.3;Mapping Outbound SDQ Data;358
22.4;Summary;368
23;Taming the Dreaded 856 ASN HL Loop;369
23.1;Exploring the HL Loop;369
23.2;Planning to Map the HL Loop;373
23.3;Mapping an Inbound 856;373
23.4;Mapping an Outbound 856 ASN;380
23.5;Creating the Simple Outbound 856 ASN;391
23.6;Summary;400
24;Building Custom Assemblies and Functoids;402
24.1;Deciding to Use a Custom Assembly or Custom Functoid;402
24.2;Creating an External Assembly for Date Conversion Functions;403
24.3;Building a Custom Functoid;405
24.4;Adding More Functoids;417
24.5;Doing a Custom Database Lookup;417
24.6;Summary;421
25;Examples from the Fringe;422
25.1;Modifying Outbound EDI Envelope Data;422
25.2;Building BizTalk Maps Outside the Map Editor;426
25.3;Breaking Up Large Strings Using Table Looping;432
25.4;Summary;448
26;Index;449




