biztalk server

39 Topics
"}},"componentScriptGroups({\"componentId\":\"custom.widget.MicrosoftFooter\"})":{"__typename":"ComponentScriptGroups","scriptGroups":{"__typename":"ComponentScriptGroupsDefinition","afterInteractive":{"__typename":"PageScriptGroupDefinition","group":"AFTER_INTERACTIVE","scriptIds":[]},"lazyOnLoad":{"__typename":"PageScriptGroupDefinition","group":"LAZY_ON_LOAD","scriptIds":[]}},"componentScripts":[]},"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/community/NavbarDropdownToggle\"]})":[{"__ref":"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/OverflowNav\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/OverflowNav-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageView/MessageViewInline\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/Pager/PagerLoadMore\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserLink\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserLink-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSubject\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSubject-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageBody\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageBody-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTime-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeIcon\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageUnreadCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageUnreadCount-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageViewCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageViewCount-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/kudos/KudosCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/kudos/KudosCount-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageRepliesCount\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageRepliesCount-1744658874048"}],"cachedText({\"lastModified\":\"1744658874048\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1744658874048"}]},"CachedAsset:pages-1744410786359":{"__typename":"CachedAsset","id":"pages-1744410786359","value":[{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogViewAllPostsPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId/all-posts/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CasePortalPage","type":"CASE_PORTAL","urlPath":"/caseportal","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CreateGroupHubPage","type":"GROUP_HUB","urlPath":"/groups/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CaseViewPage","type":"CASE_DETAILS","urlPath":"/case/:caseId/:caseNumber","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"InboxPage","type":"COMMUNITY","urlPath":"/inbox","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"HelpFAQPage","type":"COMMUNITY","urlPath":"/help","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaMessagePage","type":"IDEA_POST","urlPath":"/idea/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaViewAllIdeasPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/all-ideas/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"LoginPage","type":"USER","urlPath":"/signin","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogPostPage","type":"BLOG","urlPath":"/category/:categoryId/blogs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"UserBlogPermissions.Page","type":"COMMUNITY","urlPath":"/c/user-blog-permissions/page","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ThemeEditorPage","type":"COMMUNITY","urlPath":"/designer/themes","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbViewAllArticlesPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId/all-articles/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"AllEvents","type":"CUSTOM","urlPath":"/Events","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"OccasionEditPage","type":"EVENT","urlPath":"/event/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"OAuthAuthorizationAllowPage","type":"USER","urlPath":"/auth/authorize/allow","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"PageEditorPage","type":"COMMUNITY","urlPath":"/designer/pages","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"PostPage","type":"COMMUNITY","urlPath":"/category/:categoryId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumBoardPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbBoardPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"EventPostPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"UserBadgesPage","type":"COMMUNITY","urlPath":"/users/:login/:userId/badges","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"GroupHubMembershipAction","type":"GROUP_HUB","urlPath":"/membership/join/:nodeId/:membershipType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"MaintenancePage","type":"COMMUNITY","urlPath":"/maintenance","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaReplyPage","type":"IDEA_REPLY","urlPath":"/idea/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"UserSettingsPage","type":"USER","urlPath":"/mysettings/:userSettingsTab","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"GroupHubsPage","type":"GROUP_HUB","urlPath":"/groups","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumPostPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"OccasionRsvpActionPage","type":"OCCASION","urlPath":"/event/:boardId/:messageSubject/:messageId/rsvp/:responseType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"VerifyUserEmailPage","type":"USER","urlPath":"/verifyemail/:userId/:verifyEmailToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"AllOccasionsPage","type":"OCCASION","urlPath":"/category/:categoryId/events/:boardId/all-events/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"EventBoardPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbReplyPage","type":"TKB_REPLY","urlPath":"/kb/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaBoardPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CommunityGuideLinesPage","type":"COMMUNITY","urlPath":"/communityguidelines","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CaseCreatePage","type":"SALESFORCE_CASE_CREATION","urlPath":"/caseportal/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbEditPage","type":"TKB","urlPath":"/kb/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForgotPasswordPage","type":"USER","urlPath":"/forgotpassword","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaEditPage","type":"IDEA","urlPath":"/idea/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TagPage","type":"COMMUNITY","urlPath":"/tag/:tagName","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogBoardPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"OccasionMessagePage","type":"OCCASION_TOPIC","urlPath":"/event/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ManageContentPage","type":"COMMUNITY","urlPath":"/managecontent","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ClosedMembershipNodeNonMembersPage","type":"GROUP_HUB","urlPath":"/closedgroup/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CommunityPage","type":"COMMUNITY","urlPath":"/","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumMessagePage","type":"FORUM_TOPIC","urlPath":"/discussions/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"IdeaPostPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"CommunityHub.Page","type":"CUSTOM","urlPath":"/Directory","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogMessagePage","type":"BLOG_ARTICLE","urlPath":"/blog/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"RegistrationPage","type":"USER","urlPath":"/register","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"EditGroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumEditPage","type":"FORUM","urlPath":"/discussions/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ResetPasswordPage","type":"USER","urlPath":"/resetpassword/:userId/:resetPasswordToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1730142000000,"localOverride":null,"page":{"id":"AllBlogs.Page","type":"CUSTOM","urlPath":"/blogs","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbMessagePage","type":"TKB_ARTICLE","urlPath":"/kb/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogEditPage","type":"BLOG","urlPath":"/blog/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ManageUsersPage","type":"USER","urlPath":"/users/manage/:tab?/:manageUsersTab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumReplyPage","type":"FORUM_REPLY","urlPath":"/discussions/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"PrivacyPolicyPage","type":"COMMUNITY","urlPath":"/privacypolicy","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"NotificationPage","type":"COMMUNITY","urlPath":"/notifications","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"UserPage","type":"USER","urlPath":"/users/:login/:userId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"OccasionReplyPage","type":"OCCASION_REPLY","urlPath":"/event/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ManageMembersPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/manage/:tab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"SearchResultsPage","type":"COMMUNITY","urlPath":"/search","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"BlogReplyPage","type":"BLOG_REPLY","urlPath":"/blog/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"GroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TermsOfServicePage","type":"COMMUNITY","urlPath":"/termsofservice","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"CategoryPage","type":"CATEGORY","urlPath":"/category/:categoryId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"ForumViewAllTopicsPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/all-topics/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"TkbPostPage","type":"TKB","urlPath":"/category/:categoryId/kbs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1744410786359,"localOverride":null,"page":{"id":"GroupHubPostPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"}],"localOverride":false},"CachedAsset:text:en_US-components/context/AppContext/AppContextProvider-0":{"__typename":"CachedAsset","id":"text:en_US-components/context/AppContext/AppContextProvider-0","value":{"noCommunity":"Cannot find community","noUser":"Cannot find current user","noNode":"Cannot find node with id {nodeId}","noMessage":"Cannot find message with id {messageId}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-0":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-0","value":{"title":"Loading..."},"localOverride":false},"User:user:-1":{"__typename":"User","id":"user:-1","uid":-1,"login":"Deleted","email":"","avatar":null,"rank":null,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":"ANONYMOUS","registrationTime":null,"confirmEmailStatus":false,"registrationAccessLevel":"VIEW","ssoRegistrationFields":[]},"ssoId":null,"profileSettings":{"__typename":"ProfileSettings","dateDisplayStyle":{"__typename":"InheritableStringSettingWithPossibleValues","key":"layout.friendly_dates_enabled","value":"false","localValue":"true","possibleValues":["true","false"]},"dateDisplayFormat":{"__typename":"InheritableStringSetting","key":"layout.format_pattern_date","value":"MMM dd yyyy","localValue":"MM-dd-yyyy"},"language":{"__typename":"InheritableStringSettingWithPossibleValues","key":"profile.language","value":"en-US","localValue":"en","possibleValues":["en-US"]}},"deleted":false},"Theme:customTheme1":{"__typename":"Theme","id":"customTheme1"},"CachedAsset:theme:customTheme1-1744326567483":{"__typename":"CachedAsset","id":"theme:customTheme1-1744326567483","value":{"id":"customTheme1","animation":{"fast":"150ms","normal":"250ms","slow":"500ms","slowest":"750ms","function":"cubic-bezier(0.07, 0.91, 0.51, 1)","__typename":"AnimationThemeSettings"},"avatar":{"borderRadius":"50%","collections":["default"],"__typename":"AvatarThemeSettings"},"basics":{"browserIcon":{"imageAssetName":"favicon-1730836283320.png","imageLastModified":"1730836286415","__typename":"ThemeAsset"},"customerLogo":{"imageAssetName":"favicon-1730836271365.png","imageLastModified":"1730836274203","__typename":"ThemeAsset"},"maximumWidthOfPageContent":"1300px","oneColumnNarrowWidth":"800px","gridGutterWidthMd":"30px","gridGutterWidthXs":"10px","pageWidthStyle":"WIDTH_OF_BROWSER","__typename":"BasicsThemeSettings"},"buttons":{"borderRadiusSm":"3px","borderRadius":"3px","borderRadiusLg":"5px","paddingY":"5px","paddingYLg":"7px","paddingYHero":"var(--lia-bs-btn-padding-y-lg)","paddingX":"12px","paddingXLg":"16px","paddingXHero":"60px","fontStyle":"NORMAL","fontWeight":"700","textTransform":"NONE","disabledOpacity":0.5,"primaryTextColor":"var(--lia-bs-white)","primaryTextHoverColor":"var(--lia-bs-white)","primaryTextActiveColor":"var(--lia-bs-white)","primaryBgColor":"var(--lia-bs-primary)","primaryBgHoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.85))","primaryBgActiveColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) * 0.7))","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","primaryBorderActive":"1px solid transparent","primaryBorderFocus":"1px solid var(--lia-bs-white)","primaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","secondaryTextColor":"var(--lia-bs-gray-900)","secondaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","secondaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","secondaryBgColor":"var(--lia-bs-gray-200)","secondaryBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","secondaryBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","secondaryBorder":"1px solid transparent","secondaryBorderHover":"1px solid transparent","secondaryBorderActive":"1px solid transparent","secondaryBorderFocus":"1px solid transparent","secondaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","tertiaryTextColor":"var(--lia-bs-gray-900)","tertiaryTextHoverColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.95))","tertiaryTextActiveColor":"hsl(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), calc(var(--lia-bs-gray-900-l) * 0.9))","tertiaryBgColor":"transparent","tertiaryBgHoverColor":"transparent","tertiaryBgActiveColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.04)","tertiaryBorder":"1px solid transparent","tertiaryBorderHover":"1px solid hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","tertiaryBorderActive":"1px solid transparent","tertiaryBorderFocus":"1px solid transparent","tertiaryBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","destructiveTextColor":"var(--lia-bs-danger)","destructiveTextHoverColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.95))","destructiveTextActiveColor":"hsl(var(--lia-bs-danger-h), var(--lia-bs-danger-s), calc(var(--lia-bs-danger-l) * 0.9))","destructiveBgColor":"var(--lia-bs-gray-200)","destructiveBgHoverColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.96))","destructiveBgActiveColor":"hsl(var(--lia-bs-gray-200-h), var(--lia-bs-gray-200-s), calc(var(--lia-bs-gray-200-l) * 0.92))","destructiveBorder":"1px solid transparent","destructiveBorderHover":"1px solid transparent","destructiveBorderActive":"1px solid transparent","destructiveBorderFocus":"1px solid transparent","destructiveBoxShadowFocus":"0 0 0 1px var(--lia-bs-primary), 0 0 0 4px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","__typename":"ButtonsThemeSettings"},"border":{"color":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","mainContent":"NONE","sideContent":"LIGHT","radiusSm":"3px","radius":"5px","radiusLg":"9px","radius50":"100vw","__typename":"BorderThemeSettings"},"boxShadow":{"xs":"0 0 0 1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.08), 0 3px 0 -1px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.16)","sm":"0 2px 4px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.12)","md":"0 5px 15px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","lg":"0 10px 30px hsla(var(--lia-bs-gray-900-h), var(--lia-bs-gray-900-s), var(--lia-bs-gray-900-l), 0.3)","__typename":"BoxShadowThemeSettings"},"cards":{"bgColor":"var(--lia-panel-bg-color)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":"var(--lia-box-shadow-xs)","__typename":"CardsThemeSettings"},"chip":{"maxWidth":"300px","height":"30px","__typename":"ChipThemeSettings"},"coreTypes":{"defaultMessageLinkColor":"var(--lia-bs-link-color)","defaultMessageLinkDecoration":"none","defaultMessageLinkFontStyle":"NORMAL","defaultMessageLinkFontWeight":"400","defaultMessageFontStyle":"NORMAL","defaultMessageFontWeight":"400","forumColor":"#4099E2","forumFontFamily":"var(--lia-bs-font-family-base)","forumFontWeight":"var(--lia-default-message-font-weight)","forumLineHeight":"var(--lia-bs-line-height-base)","forumFontStyle":"var(--lia-default-message-font-style)","forumMessageLinkColor":"var(--lia-default-message-link-color)","forumMessageLinkDecoration":"var(--lia-default-message-link-decoration)","forumMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","forumMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","forumSolvedColor":"#148563","blogColor":"#1CBAA0","blogFontFamily":"var(--lia-bs-font-family-base)","blogFontWeight":"var(--lia-default-message-font-weight)","blogLineHeight":"1.75","blogFontStyle":"var(--lia-default-message-font-style)","blogMessageLinkColor":"var(--lia-default-message-link-color)","blogMessageLinkDecoration":"var(--lia-default-message-link-decoration)","blogMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","blogMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","tkbColor":"#4C6B90","tkbFontFamily":"var(--lia-bs-font-family-base)","tkbFontWeight":"var(--lia-default-message-font-weight)","tkbLineHeight":"1.75","tkbFontStyle":"var(--lia-default-message-font-style)","tkbMessageLinkColor":"var(--lia-default-message-link-color)","tkbMessageLinkDecoration":"var(--lia-default-message-link-decoration)","tkbMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","tkbMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaColor":"#4099E2","qandaFontFamily":"var(--lia-bs-font-family-base)","qandaFontWeight":"var(--lia-default-message-font-weight)","qandaLineHeight":"var(--lia-bs-line-height-base)","qandaFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkColor":"var(--lia-default-message-link-color)","qandaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","qandaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","qandaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","qandaSolvedColor":"#3FA023","ideaColor":"#FF8000","ideaFontFamily":"var(--lia-bs-font-family-base)","ideaFontWeight":"var(--lia-default-message-font-weight)","ideaLineHeight":"var(--lia-bs-line-height-base)","ideaFontStyle":"var(--lia-default-message-font-style)","ideaMessageLinkColor":"var(--lia-default-message-link-color)","ideaMessageLinkDecoration":"var(--lia-default-message-link-decoration)","ideaMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","ideaMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","contestColor":"#FCC845","contestFontFamily":"var(--lia-bs-font-family-base)","contestFontWeight":"var(--lia-default-message-font-weight)","contestLineHeight":"var(--lia-bs-line-height-base)","contestFontStyle":"var(--lia-default-message-link-font-style)","contestMessageLinkColor":"var(--lia-default-message-link-color)","contestMessageLinkDecoration":"var(--lia-default-message-link-decoration)","contestMessageLinkFontStyle":"ITALIC","contestMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","occasionColor":"#D13A1F","occasionFontFamily":"var(--lia-bs-font-family-base)","occasionFontWeight":"var(--lia-default-message-font-weight)","occasionLineHeight":"var(--lia-bs-line-height-base)","occasionFontStyle":"var(--lia-default-message-font-style)","occasionMessageLinkColor":"var(--lia-default-message-link-color)","occasionMessageLinkDecoration":"var(--lia-default-message-link-decoration)","occasionMessageLinkFontStyle":"var(--lia-default-message-link-font-style)","occasionMessageLinkFontWeight":"var(--lia-default-message-link-font-weight)","grouphubColor":"#333333","categoryColor":"#949494","communityColor":"#FFFFFF","productColor":"#949494","__typename":"CoreTypesThemeSettings"},"colors":{"black":"#000000","white":"#FFFFFF","gray100":"#F7F7F7","gray200":"#F7F7F7","gray300":"#E8E8E8","gray400":"#D9D9D9","gray500":"#CCCCCC","gray600":"#717171","gray700":"#707070","gray800":"#545454","gray900":"#333333","dark":"#545454","light":"#F7F7F7","primary":"#0069D4","secondary":"#333333","bodyText":"#1E1E1E","bodyBg":"#FFFFFF","info":"#409AE2","success":"#41C5AE","warning":"#FCC844","danger":"#BC341B","alertSystem":"#FF6600","textMuted":"#707070","highlight":"#FFFCAD","outline":"var(--lia-bs-primary)","custom":["#D3F5A4","#243A5E"],"__typename":"ColorsThemeSettings"},"divider":{"size":"3px","marginLeft":"4px","marginRight":"4px","borderRadius":"50%","bgColor":"var(--lia-bs-gray-600)","bgColorActive":"var(--lia-bs-gray-600)","__typename":"DividerThemeSettings"},"dropdown":{"fontSize":"var(--lia-bs-font-size-sm)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius-sm)","dividerBg":"var(--lia-bs-gray-300)","itemPaddingY":"5px","itemPaddingX":"20px","headerColor":"var(--lia-bs-gray-700)","__typename":"DropdownThemeSettings"},"email":{"link":{"color":"#0069D4","hoverColor":"#0061c2","decoration":"none","hoverDecoration":"underline","__typename":"EmailLinkSettings"},"border":{"color":"#e4e4e4","__typename":"EmailBorderSettings"},"buttons":{"borderRadiusLg":"5px","paddingXLg":"16px","paddingYLg":"7px","fontWeight":"700","primaryTextColor":"#ffffff","primaryTextHoverColor":"#ffffff","primaryBgColor":"#0069D4","primaryBgHoverColor":"#005cb8","primaryBorder":"1px solid transparent","primaryBorderHover":"1px solid transparent","__typename":"EmailButtonsSettings"},"panel":{"borderRadius":"5px","borderColor":"#e4e4e4","__typename":"EmailPanelSettings"},"__typename":"EmailThemeSettings"},"emoji":{"skinToneDefault":"#ffcd43","skinToneLight":"#fae3c5","skinToneMediumLight":"#e2cfa5","skinToneMedium":"#daa478","skinToneMediumDark":"#a78058","skinToneDark":"#5e4d43","__typename":"EmojiThemeSettings"},"heading":{"color":"var(--lia-bs-body-color)","fontFamily":"Segoe UI","fontStyle":"NORMAL","fontWeight":"400","h1FontSize":"34px","h2FontSize":"32px","h3FontSize":"28px","h4FontSize":"24px","h5FontSize":"20px","h6FontSize":"16px","lineHeight":"1.3","subHeaderFontSize":"11px","subHeaderFontWeight":"500","h1LetterSpacing":"normal","h2LetterSpacing":"normal","h3LetterSpacing":"normal","h4LetterSpacing":"normal","h5LetterSpacing":"normal","h6LetterSpacing":"normal","subHeaderLetterSpacing":"2px","h1FontWeight":"var(--lia-bs-headings-font-weight)","h2FontWeight":"var(--lia-bs-headings-font-weight)","h3FontWeight":"var(--lia-bs-headings-font-weight)","h4FontWeight":"var(--lia-bs-headings-font-weight)","h5FontWeight":"var(--lia-bs-headings-font-weight)","h6FontWeight":"var(--lia-bs-headings-font-weight)","__typename":"HeadingThemeSettings"},"icons":{"size10":"10px","size12":"12px","size14":"14px","size16":"16px","size20":"20px","size24":"24px","size30":"30px","size40":"40px","size50":"50px","size60":"60px","size80":"80px","size120":"120px","size160":"160px","__typename":"IconsThemeSettings"},"imagePreview":{"bgColor":"var(--lia-bs-gray-900)","titleColor":"var(--lia-bs-white)","controlColor":"var(--lia-bs-white)","controlBgColor":"var(--lia-bs-gray-800)","__typename":"ImagePreviewThemeSettings"},"input":{"borderColor":"var(--lia-bs-gray-600)","disabledColor":"var(--lia-bs-gray-600)","focusBorderColor":"var(--lia-bs-primary)","labelMarginBottom":"10px","btnFontSize":"var(--lia-bs-font-size-sm)","focusBoxShadow":"0 0 0 3px hsla(var(--lia-bs-primary-h), var(--lia-bs-primary-s), var(--lia-bs-primary-l), 0.2)","checkLabelMarginBottom":"2px","checkboxBorderRadius":"3px","borderRadiusSm":"var(--lia-bs-border-radius-sm)","borderRadius":"var(--lia-bs-border-radius)","borderRadiusLg":"var(--lia-bs-border-radius-lg)","formTextMarginTop":"4px","textAreaBorderRadius":"var(--lia-bs-border-radius)","activeFillColor":"var(--lia-bs-primary)","__typename":"InputThemeSettings"},"loading":{"dotDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.2)","dotLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.5)","barDarkColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.06)","barLightColor":"hsla(var(--lia-bs-white-h), var(--lia-bs-white-s), var(--lia-bs-white-l), 0.4)","__typename":"LoadingThemeSettings"},"link":{"color":"var(--lia-bs-primary)","hoverColor":"hsl(var(--lia-bs-primary-h), var(--lia-bs-primary-s), calc(var(--lia-bs-primary-l) - 10%))","decoration":"none","hoverDecoration":"underline","__typename":"LinkThemeSettings"},"listGroup":{"itemPaddingY":"15px","itemPaddingX":"15px","borderColor":"var(--lia-bs-gray-300)","__typename":"ListGroupThemeSettings"},"modal":{"contentTextColor":"var(--lia-bs-body-color)","contentBg":"var(--lia-bs-white)","backgroundBg":"var(--lia-bs-black)","smSize":"440px","mdSize":"760px","lgSize":"1080px","backdropOpacity":0.3,"contentBoxShadowXs":"var(--lia-bs-box-shadow-sm)","contentBoxShadow":"var(--lia-bs-box-shadow)","headerFontWeight":"700","__typename":"ModalThemeSettings"},"navbar":{"position":"FIXED","background":{"attachment":null,"clip":null,"color":"var(--lia-bs-white)","imageAssetName":"","imageLastModified":"0","origin":null,"position":"CENTER_CENTER","repeat":"NO_REPEAT","size":"COVER","__typename":"BackgroundProps"},"backgroundOpacity":0.8,"paddingTop":"15px","paddingBottom":"15px","borderBottom":"1px solid var(--lia-bs-border-color)","boxShadow":"var(--lia-bs-box-shadow-sm)","brandMarginRight":"30px","brandMarginRightSm":"10px","brandLogoHeight":"30px","linkGap":"10px","linkJustifyContent":"flex-start","linkPaddingY":"5px","linkPaddingX":"10px","linkDropdownPaddingY":"9px","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkColor":"var(--lia-bs-body-color)","linkHoverColor":"var(--lia-bs-primary)","linkFontSize":"var(--lia-bs-font-size-sm)","linkFontStyle":"NORMAL","linkFontWeight":"400","linkTextTransform":"NONE","linkLetterSpacing":"normal","linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkBgColor":"transparent","linkBgHoverColor":"transparent","linkBorder":"none","linkBorderHover":"none","linkBoxShadow":"none","linkBoxShadowHover":"none","linkTextBorderBottom":"none","linkTextBorderBottomHover":"none","dropdownPaddingTop":"10px","dropdownPaddingBottom":"15px","dropdownPaddingX":"10px","dropdownMenuOffset":"2px","dropdownDividerMarginTop":"10px","dropdownDividerMarginBottom":"10px","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","controllerIconColor":"var(--lia-bs-body-color)","controllerIconHoverColor":"var(--lia-bs-body-color)","controllerTextColor":"var(--lia-nav-controller-icon-color)","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","controllerHighlightColor":"hsla(30, 100%, 50%)","controllerHighlightTextColor":"var(--lia-yiq-light)","controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerColor":"var(--lia-nav-controller-icon-color)","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","hamburgerBgColor":"transparent","hamburgerBgHoverColor":"transparent","hamburgerBorder":"none","hamburgerBorderHover":"none","collapseMenuMarginLeft":"20px","collapseMenuDividerBg":"var(--lia-nav-link-color)","collapseMenuDividerOpacity":0.16,"__typename":"NavbarThemeSettings"},"pager":{"textColor":"var(--lia-bs-link-color)","textFontWeight":"var(--lia-font-weight-md)","textFontSize":"var(--lia-bs-font-size-sm)","__typename":"PagerThemeSettings"},"panel":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-bs-border-radius)","borderColor":"var(--lia-bs-border-color)","boxShadow":"none","__typename":"PanelThemeSettings"},"popover":{"arrowHeight":"8px","arrowWidth":"16px","maxWidth":"300px","minWidth":"100px","headerBg":"var(--lia-bs-white)","borderColor":"var(--lia-bs-border-color)","borderRadius":"var(--lia-bs-border-radius)","boxShadow":"0 0.5rem 1rem hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.15)","__typename":"PopoverThemeSettings"},"prism":{"color":"#000000","bgColor":"#f5f2f0","fontFamily":"var(--font-family-monospace)","fontSize":"var(--lia-bs-font-size-base)","fontWeightBold":"var(--lia-bs-font-weight-bold)","fontStyleItalic":"italic","tabSize":2,"highlightColor":"#b3d4fc","commentColor":"#62707e","punctuationColor":"#6f6f6f","namespaceOpacity":"0.7","propColor":"#990055","selectorColor":"#517a00","operatorColor":"#906736","operatorBgColor":"hsla(0, 0%, 100%, 0.5)","keywordColor":"#0076a9","functionColor":"#d3284b","variableColor":"#c14700","__typename":"PrismThemeSettings"},"rte":{"bgColor":"var(--lia-bs-white)","borderRadius":"var(--lia-panel-border-radius)","boxShadow":" var(--lia-panel-box-shadow)","customColor1":"#bfedd2","customColor2":"#fbeeb8","customColor3":"#f8cac6","customColor4":"#eccafa","customColor5":"#c2e0f4","customColor6":"#2dc26b","customColor7":"#f1c40f","customColor8":"#e03e2d","customColor9":"#b96ad9","customColor10":"#3598db","customColor11":"#169179","customColor12":"#e67e23","customColor13":"#ba372a","customColor14":"#843fa1","customColor15":"#236fa1","customColor16":"#ecf0f1","customColor17":"#ced4d9","customColor18":"#95a5a6","customColor19":"#7e8c8d","customColor20":"#34495e","customColor21":"#000000","customColor22":"#ffffff","defaultMessageHeaderMarginTop":"40px","defaultMessageHeaderMarginBottom":"20px","defaultMessageItemMarginTop":"0","defaultMessageItemMarginBottom":"10px","diffAddedColor":"hsla(170, 53%, 51%, 0.4)","diffChangedColor":"hsla(43, 97%, 63%, 0.4)","diffNoneColor":"hsla(0, 0%, 80%, 0.4)","diffRemovedColor":"hsla(9, 74%, 47%, 0.4)","specialMessageHeaderMarginTop":"40px","specialMessageHeaderMarginBottom":"20px","specialMessageItemMarginTop":"0","specialMessageItemMarginBottom":"10px","__typename":"RteThemeSettings"},"tags":{"bgColor":"var(--lia-bs-gray-200)","bgHoverColor":"var(--lia-bs-gray-400)","borderRadius":"var(--lia-bs-border-radius-sm)","color":"var(--lia-bs-body-color)","hoverColor":"var(--lia-bs-body-color)","fontWeight":"var(--lia-font-weight-md)","fontSize":"var(--lia-font-size-xxs)","textTransform":"UPPERCASE","letterSpacing":"0.5px","__typename":"TagsThemeSettings"},"toasts":{"borderRadius":"var(--lia-bs-border-radius)","paddingX":"12px","__typename":"ToastsThemeSettings"},"typography":{"fontFamilyBase":"Segoe UI","fontStyleBase":"NORMAL","fontWeightBase":"400","fontWeightLight":"300","fontWeightNormal":"400","fontWeightMd":"500","fontWeightBold":"700","letterSpacingSm":"normal","letterSpacingXs":"normal","lineHeightBase":"1.5","fontSizeBase":"16px","fontSizeXxs":"11px","fontSizeXs":"12px","fontSizeSm":"14px","fontSizeLg":"20px","fontSizeXl":"24px","smallFontSize":"14px","customFonts":[{"source":"SERVER","name":"Segoe UI","styles":[{"style":"NORMAL","weight":"400","__typename":"FontStyleData"},{"style":"NORMAL","weight":"300","__typename":"FontStyleData"},{"style":"NORMAL","weight":"600","__typename":"FontStyleData"},{"style":"NORMAL","weight":"700","__typename":"FontStyleData"},{"style":"ITALIC","weight":"400","__typename":"FontStyleData"}],"assetNames":["SegoeUI-normal-400.woff2","SegoeUI-normal-300.woff2","SegoeUI-normal-600.woff2","SegoeUI-normal-700.woff2","SegoeUI-italic-400.woff2"],"__typename":"CustomFont"},{"source":"SERVER","name":"MWF Fluent Icons","styles":[{"style":"NORMAL","weight":"400","__typename":"FontStyleData"}],"assetNames":["MWFFluentIcons-normal-400.woff2"],"__typename":"CustomFont"}],"__typename":"TypographyThemeSettings"},"unstyledListItem":{"marginBottomSm":"5px","marginBottomMd":"10px","marginBottomLg":"15px","marginBottomXl":"20px","marginBottomXxl":"25px","__typename":"UnstyledListItemThemeSettings"},"yiq":{"light":"#ffffff","dark":"#000000","__typename":"YiqThemeSettings"},"colorLightness":{"primaryDark":0.36,"primaryLight":0.74,"primaryLighter":0.89,"primaryLightest":0.95,"infoDark":0.39,"infoLight":0.72,"infoLighter":0.85,"infoLightest":0.93,"successDark":0.24,"successLight":0.62,"successLighter":0.8,"successLightest":0.91,"warningDark":0.39,"warningLight":0.68,"warningLighter":0.84,"warningLightest":0.93,"dangerDark":0.41,"dangerLight":0.72,"dangerLighter":0.89,"dangerLightest":0.95,"__typename":"ColorLightnessThemeSettings"},"localOverride":false,"__typename":"Theme"},"localOverride":false},"CachedAsset:text:en_US-components/common/EmailVerification-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/common/EmailVerification-1744658874048","value":{"email.verification.title":"Email Verification Required","email.verification.message.update.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. To change your email, visit My Settings.","email.verification.message.resend.email":"To participate in the community, you must first verify your email address. The verification email was sent to {email}. Resend email."},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-1744658874048","value":{"title":"Loading..."},"localOverride":false},"CachedAsset:text:en_US-pages/tags/TagPage-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-pages/tags/TagPage-1744658874048","value":{"tagPageTitle":"Tag:\"{tagName}\" | {communityTitle}","tagPageForNodeTitle":"Tag:\"{tagName}\" in \"{title}\" | {communityTitle}","name":"Tags Page","tag":"Tag: {tagName}"},"localOverride":false},"Category:category:top":{"__typename":"Category","id":"category:top","entityType":"CATEGORY","displayId":"top","nodeType":"category","depth":0,"title":"Top","shortTitle":"Top"},"Category:category:communities":{"__typename":"Category","id":"category:communities","entityType":"CATEGORY","displayId":"communities","nodeType":"category","depth":1,"title":"Communities","description":"","avatar":null,"profileSettings":{"__typename":"ProfileSettings","language":null},"parent":{"__ref":"Category:category:top"},"ancestors":{"__typename":"CoreNodeConnection","edges":[{"__typename":"CoreNodeEdge","node":{"__ref":"Community:community:gxcuf89792"}}]},"userContext":{"__typename":"NodeUserContext","canAddAttachments":false,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"tagPolicies":{"__typename":"TagPolicies","canSubscribeTagOnNode":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.labels.action.corenode.subscribe_labels.allow.accessDenied","key":"error.lithium.policies.labels.action.corenode.subscribe_labels.allow.accessDenied","args":[]}},"canManageTagDashboard":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.labels.action.corenode.admin_labels.allow.accessDenied","key":"error.lithium.policies.labels.action.corenode.admin_labels.allow.accessDenied","args":[]}}}},"CachedAsset:quilt:o365.prod:pages/tags/TagPage:category:communities-1744658875077":{"__typename":"CachedAsset","id":"quilt:o365.prod:pages/tags/TagPage:category:communities-1744658875077","value":{"id":"TagPage","container":{"id":"Common","headerProps":{"removeComponents":["community.widget.bannerWidget"],"__typename":"QuiltContainerSectionProps"},"items":[{"id":"tag-header-widget","layout":"ONE_COLUMN","bgColor":"var(--lia-bs-white)","showBorder":"BOTTOM","sectionEditLevel":"LOCKED","columnMap":{"main":[{"id":"tags.widget.TagsHeaderWidget","__typename":"QuiltComponent"}],"__typename":"OneSectionColumns"},"__typename":"OneColumnQuiltSection"},{"id":"messages-list-for-tag-widget","layout":"ONE_COLUMN","columnMap":{"main":[{"id":"messages.widget.messageListForNodeByRecentActivityWidget","props":{"viewVariant":{"type":"inline","props":{"useUnreadCount":true,"useViewCount":true,"useAuthorLogin":true,"clampBodyLines":3,"useAvatar":true,"useBoardIcon":false,"useKudosCount":true,"usePreviewMedia":true,"useTags":false,"useNode":true,"useNodeLink":true,"useTextBody":true,"truncateBodyLength":-1,"useBody":true,"useRepliesCount":true,"useSolvedBadge":true,"timeStampType":"conversation.lastPostingActivityTime","useMessageTimeLink":true,"clampSubjectLines":2}},"panelType":"divider","useTitle":false,"hideIfEmpty":false,"pagerVariant":{"type":"loadMore"},"style":"list","showTabs":true,"tabItemMap":{"default":{"mostRecent":true,"mostRecentUserContent":false,"newest":false},"additional":{"mostKudoed":true,"mostViewed":true,"mostReplies":false,"noReplies":false,"noSolutions":false,"solutions":false}}},"__typename":"QuiltComponent"}],"__typename":"OneSectionColumns"},"__typename":"OneColumnQuiltSection"}],"__typename":"QuiltContainer"},"__typename":"Quilt"},"localOverride":false},"CachedAsset:quiltWrapper:o365.prod:Common:1744410784271":{"__typename":"CachedAsset","id":"quiltWrapper:o365.prod:Common:1744410784271","value":{"id":"Common","header":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"transparent","items":[{"id":"community.widget.navbarWidget","props":{"showUserName":true,"showRegisterLink":true,"useIconLanguagePicker":true,"useLabelLanguagePicker":true,"className":"QuiltComponent_lia-component-edit-mode__0nCcm","links":{"sideLinks":[],"mainLinks":[{"children":[],"linkType":"INTERNAL","id":"gxcuf89792","params":{},"routeName":"CommunityPage"},{"children":[],"linkType":"EXTERNAL","id":"external-link","url":"/Directory","target":"SELF"},{"children":[{"linkType":"INTERNAL","id":"microsoft365","params":{"categoryId":"microsoft365"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-teams","params":{"categoryId":"MicrosoftTeams"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"windows","params":{"categoryId":"Windows"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-securityand-compliance","params":{"categoryId":"microsoft-security"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"outlook","params":{"categoryId":"Outlook"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"planner","params":{"categoryId":"Planner"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"windows-server","params":{"categoryId":"Windows-Server"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"azure","params":{"categoryId":"Azure"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"exchange","params":{"categoryId":"Exchange"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-endpoint-manager","params":{"categoryId":"microsoft-endpoint-manager"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"s-q-l-server","params":{"categoryId":"SQL-Server"},"routeName":"CategoryPage"},{"linkType":"EXTERNAL","id":"external-link-2","url":"/Directory","target":"SELF"}],"linkType":"EXTERNAL","id":"communities","url":"/","target":"BLANK"},{"children":[{"linkType":"INTERNAL","id":"education-sector","params":{"categoryId":"EducationSector"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"a-i","params":{"categoryId":"AI"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"i-t-ops-talk","params":{"categoryId":"ITOpsTalk"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"partner-community","params":{"categoryId":"PartnerCommunity"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-mechanics","params":{"categoryId":"MicrosoftMechanics"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"healthcare-and-life-sciences","params":{"categoryId":"HealthcareAndLifeSciences"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"public-sector","params":{"categoryId":"PublicSector"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"io-t","params":{"categoryId":"IoT"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"driving-adoption","params":{"categoryId":"DrivingAdoption"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"s-m-b","params":{"categoryId":"SMB"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"startupsat-microsoft","params":{"categoryId":"StartupsatMicrosoft"},"routeName":"CategoryPage"},{"linkType":"EXTERNAL","id":"external-link-1","url":"/Directory","target":"SELF"}],"linkType":"EXTERNAL","id":"communities-1","url":"/","target":"SELF"},{"children":[],"linkType":"EXTERNAL","id":"external","url":"/Blogs","target":"SELF"},{"children":[],"linkType":"EXTERNAL","id":"external-1","url":"/Events","target":"SELF"},{"children":[{"linkType":"INTERNAL","id":"microsoft-learn-1","params":{"categoryId":"MicrosoftLearn"},"routeName":"CategoryPage"},{"linkType":"INTERNAL","id":"microsoft-learn-blog","params":{"boardId":"MicrosoftLearnBlog","categoryId":"MicrosoftLearn"},"routeName":"BlogBoardPage"},{"linkType":"EXTERNAL","id":"external-10","url":"https://learningroomdirectory.microsoft.com/","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-3","url":"https://docs.microsoft.com/learn/dynamics365/?WT.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-4","url":"https://docs.microsoft.com/learn/m365/?wt.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-5","url":"https://docs.microsoft.com/learn/topics/sci/?wt.mc_id=techcom_header-webpage-m365","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-6","url":"https://docs.microsoft.com/learn/powerplatform/?wt.mc_id=techcom_header-webpage-powerplatform","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-7","url":"https://docs.microsoft.com/learn/github/?wt.mc_id=techcom_header-webpage-github","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-8","url":"https://docs.microsoft.com/learn/teams/?wt.mc_id=techcom_header-webpage-teams","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-9","url":"https://docs.microsoft.com/learn/dotnet/?wt.mc_id=techcom_header-webpage-dotnet","target":"BLANK"},{"linkType":"EXTERNAL","id":"external-2","url":"https://docs.microsoft.com/learn/azure/?WT.mc_id=techcom_header-webpage-m365","target":"BLANK"}],"linkType":"INTERNAL","id":"microsoft-learn","params":{"categoryId":"MicrosoftLearn"},"routeName":"CategoryPage"},{"children":[],"linkType":"INTERNAL","id":"community-info-center","params":{"categoryId":"Community-Info-Center"},"routeName":"CategoryPage"}]},"style":{"boxShadow":"var(--lia-bs-box-shadow-sm)","controllerHighlightColor":"hsla(30, 100%, 50%)","linkFontWeight":"400","dropdownDividerMarginBottom":"10px","hamburgerBorderHover":"none","linkBoxShadowHover":"none","linkFontSize":"14px","backgroundOpacity":0.8,"controllerBorderRadius":"var(--lia-border-radius-50)","hamburgerBgColor":"transparent","hamburgerColor":"var(--lia-nav-controller-icon-color)","linkTextBorderBottom":"none","brandLogoHeight":"30px","linkBgHoverColor":"transparent","linkLetterSpacing":"normal","collapseMenuDividerOpacity":0.16,"dropdownPaddingBottom":"15px","paddingBottom":"15px","dropdownMenuOffset":"2px","hamburgerBgHoverColor":"transparent","borderBottom":"1px solid var(--lia-bs-border-color)","hamburgerBorder":"none","dropdownPaddingX":"10px","brandMarginRightSm":"10px","linkBoxShadow":"none","collapseMenuDividerBg":"var(--lia-nav-link-color)","linkColor":"var(--lia-bs-body-color)","linkJustifyContent":"flex-start","dropdownPaddingTop":"10px","controllerHighlightTextColor":"var(--lia-yiq-dark)","controllerTextColor":"var(--lia-nav-controller-icon-color)","background":{"imageAssetName":"","color":"var(--lia-bs-white)","size":"COVER","repeat":"NO_REPEAT","position":"CENTER_CENTER","imageLastModified":""},"linkBorderRadius":"var(--lia-bs-border-radius-sm)","linkHoverColor":"var(--lia-bs-body-color)","position":"FIXED","linkBorder":"none","linkTextBorderBottomHover":"2px solid var(--lia-bs-body-color)","brandMarginRight":"30px","hamburgerHoverColor":"var(--lia-nav-controller-icon-color)","linkBorderHover":"none","collapseMenuMarginLeft":"20px","linkFontStyle":"NORMAL","controllerTextHoverColor":"var(--lia-nav-controller-icon-hover-color)","linkPaddingX":"10px","linkPaddingY":"5px","paddingTop":"15px","linkTextTransform":"NONE","dropdownBorderColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.08)","controllerBgHoverColor":"hsla(var(--lia-bs-black-h), var(--lia-bs-black-s), var(--lia-bs-black-l), 0.1)","linkBgColor":"transparent","linkDropdownPaddingX":"var(--lia-nav-link-px)","linkDropdownPaddingY":"9px","controllerIconColor":"var(--lia-bs-body-color)","dropdownDividerMarginTop":"10px","linkGap":"10px","controllerIconHoverColor":"var(--lia-bs-body-color)"},"showSearchIcon":false,"languagePickerStyle":"iconAndLabel"},"__typename":"QuiltComponent"},{"id":"community.widget.breadcrumbWidget","props":{"backgroundColor":"transparent","linkHighlightColor":"var(--lia-bs-primary)","visualEffects":{"showBottomBorder":true},"linkTextColor":"var(--lia-bs-gray-700)"},"__typename":"QuiltComponent"},{"id":"custom.widget.community_banner","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"usePageWidth":false,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"},{"id":"custom.widget.HeroBanner","props":{"widgetVisibility":"signedInOrAnonymous","usePageWidth":false,"useTitle":true,"cMax_items":3,"useBackground":false,"title":"","lazyLoad":false,"widgetChooser":"custom.widget.HeroBanner"},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"footer":{"backgroundImageProps":{"assetName":null,"backgroundSize":"COVER","backgroundRepeat":"NO_REPEAT","backgroundPosition":"CENTER_CENTER","lastModified":null,"__typename":"BackgroundImageProps"},"backgroundColor":"transparent","items":[{"id":"custom.widget.MicrosoftFooter","props":{"widgetVisibility":"signedInOrAnonymous","useTitle":true,"useBackground":false,"title":"","lazyLoad":false},"__typename":"QuiltComponent"}],"__typename":"QuiltWrapperSection"},"__typename":"QuiltWrapper","localOverride":false},"localOverride":false},"CachedAsset:text:en_US-components/common/ActionFeedback-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/common/ActionFeedback-1744658874048","value":{"joinedGroupHub.title":"Welcome","joinedGroupHub.message":"You are now a member of this group and are subscribed to updates.","groupHubInviteNotFound.title":"Invitation Not Found","groupHubInviteNotFound.message":"Sorry, we could not find your invitation to the group. The owner may have canceled the invite.","groupHubNotFound.title":"Group Not Found","groupHubNotFound.message":"The grouphub you tried to join does not exist. It may have been deleted.","existingGroupHubMember.title":"Already Joined","existingGroupHubMember.message":"You are already a member of this group.","accountLocked.title":"Account Locked","accountLocked.message":"Your account has been locked due to multiple failed attempts. Try again in {lockoutTime} minutes.","editedGroupHub.title":"Changes Saved","editedGroupHub.message":"Your group has been updated.","leftGroupHub.title":"Goodbye","leftGroupHub.message":"You are no longer a member of this group and will not receive future updates.","deletedGroupHub.title":"Deleted","deletedGroupHub.message":"The group has been deleted.","groupHubCreated.title":"Group Created","groupHubCreated.message":"{groupHubName} is ready to use","accountClosed.title":"Account Closed","accountClosed.message":"The account has been closed and you will now be redirected to the homepage","resetTokenExpired.title":"Reset Password Link has Expired","resetTokenExpired.message":"Try resetting your password again","invalidUrl.title":"Invalid URL","invalidUrl.message":"The URL you're using is not recognized. Verify your URL and try again.","accountClosedForUser.title":"Account Closed","accountClosedForUser.message":"{userName}'s account is closed","inviteTokenInvalid.title":"Invitation Invalid","inviteTokenInvalid.message":"Your invitation to the community has been canceled or expired.","inviteTokenError.title":"Invitation Verification Failed","inviteTokenError.message":"The url you are utilizing is not recognized. Verify your URL and try again","pageNotFound.title":"Access Denied","pageNotFound.message":"You do not have access to this area of the community or it doesn't exist","eventAttending.title":"Responded as Attending","eventAttending.message":"You'll be notified when there's new activity and reminded as the event approaches","eventInterested.title":"Responded as Interested","eventInterested.message":"You'll be notified when there's new activity and reminded as the event approaches","eventNotFound.title":"Event Not Found","eventNotFound.message":"The event you tried to respond to does not exist.","redirectToRelatedPage.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.title":"Showing Related Content","redirectToRelatedPageForBaseUsers.message":"The content you are trying to access is archived","redirectToRelatedPage.message":"The content you are trying to access is archived","relatedUrl.archivalLink.flyoutMessage":"The content you are trying to access is archived View Archived Content"},"localOverride":false},"CachedAsset:component:custom.widget.community_banner-en-1744400827853":{"__typename":"CachedAsset","id":"component:custom.widget.community_banner-en-1744400827853","value":{"component":{"id":"custom.widget.community_banner","template":{"id":"community_banner","markupLanguage":"HANDLEBARS","style":".community-banner {\n a.top-bar.btn {\n top: 0px;\n width: 100%;\n z-index: 999;\n text-align: center;\n left: 0px;\n background: #0068b8;\n color: white;\n padding: 10px 0px;\n display: block;\n box-shadow: none !important;\n border: none !important;\n border-radius: none !important;\n margin: 0px !important;\n font-size: 14px;\n }\n}\n","texts":null,"defaults":{"config":{"applicablePages":[],"description":"community announcement text","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.community_banner","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":"community announcement text","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":{"css":".custom_widget_community_banner_community-banner_1x9u2_1 {\n a.custom_widget_community_banner_top-bar_1x9u2_2.custom_widget_community_banner_btn_1x9u2_2 {\n top: 0;\n width: 100%;\n z-index: 999;\n text-align: center;\n left: 0;\n background: #0068b8;\n color: white;\n padding: 0.625rem 0;\n display: block;\n box-shadow: none !important;\n border: none !important;\n border-radius: none !important;\n margin: 0 !important;\n font-size: 0.875rem;\n }\n}\n","tokens":{"community-banner":"custom_widget_community_banner_community-banner_1x9u2_1","top-bar":"custom_widget_community_banner_top-bar_1x9u2_2","btn":"custom_widget_community_banner_btn_1x9u2_2"}},"form":null},"localOverride":false},"CachedAsset:component:custom.widget.HeroBanner-en-1744400827853":{"__typename":"CachedAsset","id":"component:custom.widget.HeroBanner-en-1744400827853","value":{"component":{"id":"custom.widget.HeroBanner","template":{"id":"HeroBanner","markupLanguage":"REACT","style":null,"texts":{"searchPlaceholderText":"Search this community","followActionText":"Follow","unfollowActionText":"Following","searchOnHoverText":"Please enter your search term(s) and then press return key to complete a search.","blogs.sidebar.pagetitle":"Latest Blogs | Microsoft Tech Community","followThisNode":"Follow this node","unfollowThisNode":"Unfollow this node"},"defaults":{"config":{"applicablePages":[],"description":null,"fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[{"id":"max_items","dataType":"NUMBER","list":false,"defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"control":"INPUT","__typename":"PropDefinition"}],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.HeroBanner","form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"},"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":null,"fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[{"id":"max_items","dataType":"NUMBER","list":false,"defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"control":"INPUT","__typename":"PropDefinition"}],"__typename":"ComponentProperties"},"form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"},"__typename":"Component","localOverride":false},"globalCss":null,"form":{"fields":[{"id":"widgetChooser","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"title","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useTitle","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"useBackground","validation":null,"noValidation":null,"dataType":"BOOLEAN","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"widgetVisibility","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"moreOptions","validation":null,"noValidation":null,"dataType":"STRING","list":null,"control":null,"defaultValue":null,"label":null,"description":null,"possibleValues":null,"__typename":"FormField"},{"id":"cMax_items","validation":null,"noValidation":null,"dataType":"NUMBER","list":false,"control":"INPUT","defaultValue":"3","label":"Max Items","description":"The maximum number of items to display in the carousel","possibleValues":null,"__typename":"FormField"}],"layout":{"rows":[{"id":"widgetChooserGroup","type":"fieldset","as":null,"items":[{"id":"widgetChooser","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"titleGroup","type":"fieldset","as":null,"items":[{"id":"title","className":null,"__typename":"FormFieldRef"},{"id":"useTitle","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"useBackground","type":"fieldset","as":null,"items":[{"id":"useBackground","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"widgetVisibility","type":"fieldset","as":null,"items":[{"id":"widgetVisibility","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"moreOptionsGroup","type":"fieldset","as":null,"items":[{"id":"moreOptions","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"},{"id":"componentPropsGroup","type":"fieldset","as":null,"items":[{"id":"cMax_items","className":null,"__typename":"FormFieldRef"}],"props":null,"legend":null,"description":null,"className":null,"viewVariant":null,"toggleState":null,"__typename":"FormFieldset"}],"actionButtons":null,"className":"custom_widget_HeroBanner_form","formGroupFieldSeparator":"divider","__typename":"FormLayout"},"__typename":"Form"}},"localOverride":false},"CachedAsset:component:custom.widget.MicrosoftFooter-en-1744400827853":{"__typename":"CachedAsset","id":"component:custom.widget.MicrosoftFooter-en-1744400827853","value":{"component":{"id":"custom.widget.MicrosoftFooter","template":{"id":"MicrosoftFooter","markupLanguage":"HANDLEBARS","style":".context-uhf {\n min-width: 280px;\n font-size: 15px;\n box-sizing: border-box;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n & *,\n & *:before,\n & *:after {\n box-sizing: inherit;\n }\n a.c-uhff-link {\n color: #616161;\n word-break: break-word;\n text-decoration: none;\n }\n &a:link,\n &a:focus,\n &a:hover,\n &a:active,\n &a:visited {\n text-decoration: none;\n color: inherit;\n }\n & div {\n font-family: 'Segoe UI', SegoeUI, 'Helvetica Neue', Helvetica, Arial, sans-serif;\n }\n}\n.c-uhff {\n background: #f2f2f2;\n margin: -1.5625;\n width: auto;\n height: auto;\n}\n.c-uhff-nav {\n margin: 0 auto;\n max-width: calc(1600px + 10%);\n padding: 0 5%;\n box-sizing: inherit;\n &:before,\n &:after {\n content: ' ';\n display: table;\n clear: left;\n }\n @media only screen and (max-width: 1083px) {\n padding-left: 12px;\n }\n .c-heading-4 {\n color: #616161;\n word-break: break-word;\n font-size: 15px;\n line-height: 20px;\n padding: 36px 0 4px;\n font-weight: 600;\n }\n .c-uhff-nav-row {\n .c-uhff-nav-group {\n display: block;\n float: left;\n min-height: 1px;\n vertical-align: text-top;\n padding: 0 12px;\n width: 100%;\n zoom: 1;\n &:first-child {\n padding-left: 0;\n @media only screen and (max-width: 1083px) {\n padding-left: 12px;\n }\n }\n @media only screen and (min-width: 540px) and (max-width: 1082px) {\n width: 33.33333%;\n }\n @media only screen and (min-width: 1083px) {\n width: 16.6666666667%;\n }\n ul.c-list.f-bare {\n font-size: 11px;\n line-height: 16px;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n list-style-type: none;\n li {\n word-break: break-word;\n padding: 8px 0;\n margin: 0;\n }\n }\n }\n }\n}\n.c-uhff-base {\n background: #f2f2f2;\n margin: 0 auto;\n max-width: calc(1600px + 10%);\n padding: 30px 5% 16px;\n &:before,\n &:after {\n content: ' ';\n display: table;\n }\n &:after {\n clear: both;\n }\n a.c-uhff-ccpa {\n font-size: 11px;\n line-height: 16px;\n float: left;\n margin: 3px 0;\n }\n a.c-uhff-ccpa:hover {\n text-decoration: underline;\n }\n ul.c-list {\n font-size: 11px;\n line-height: 16px;\n float: right;\n margin: 3px 0;\n color: #616161;\n li {\n padding: 0 24px 4px 0;\n display: inline-block;\n }\n }\n .c-list.f-bare {\n padding-left: 0;\n list-style-type: none;\n }\n @media only screen and (max-width: 1083px) {\n display: flex;\n flex-wrap: wrap;\n padding: 30px 24px 16px;\n }\n}\n\n.social-share {\n position: fixed;\n top: 60%;\n transform: translateY(-50%);\n left: 0;\n z-index: 1000;\n}\n\n.sharing-options {\n list-style: none;\n padding: 0;\n margin: 0;\n display: block;\n flex-direction: column;\n background-color: white;\n width: 43px;\n border-radius: 0px 7px 7px 0px;\n}\n.linkedin-icon {\n border-top-right-radius: 7px;\n}\n.linkedin-icon:hover {\n border-radius: 0;\n}\n.social-share-rss-image {\n border-bottom-right-radius: 7px;\n}\n.social-share-rss-image:hover {\n border-radius: 0;\n}\n\n.social-link-footer {\n position: relative;\n display: block;\n margin: -2px 0;\n transition: all 0.2s ease;\n}\n.social-link-footer:hover .linkedin-icon {\n border-radius: 0;\n}\n.social-link-footer:hover .social-share-rss-image {\n border-radius: 0;\n}\n\n.social-link-footer img {\n width: 40px;\n height: auto;\n transition: filter 0.3s ease;\n}\n\n.social-share-list {\n width: 40px;\n}\n.social-share-rss-image {\n width: 40px;\n}\n\n.share-icon {\n border: 2px solid transparent;\n display: inline-block;\n position: relative;\n}\n\n.share-icon:hover {\n opacity: 1;\n border: 2px solid white;\n box-sizing: border-box;\n}\n\n.share-icon:hover .label {\n opacity: 1;\n visibility: visible;\n border: 2px solid white;\n box-sizing: border-box;\n border-left: none;\n}\n\n.label {\n position: absolute;\n left: 100%;\n white-space: nowrap;\n opacity: 0;\n visibility: hidden;\n transition: all 0.2s ease;\n color: white;\n border-radius: 0 10 0 10px;\n top: 50%;\n transform: translateY(-50%);\n height: 40px;\n border-radius: 0 6px 6px 0;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px 5px 20px 8px;\n margin-left: -1px;\n}\n.linkedin {\n background-color: #0474b4;\n}\n.facebook {\n background-color: #3c5c9c;\n}\n.twitter {\n background-color: white;\n color: black;\n}\n.reddit {\n background-color: #fc4404;\n}\n.mail {\n background-color: #848484;\n}\n.bluesky {\n background-color: white;\n color: black;\n}\n.rss {\n background-color: #ec7b1c;\n}\n#RSS {\n width: 40px;\n height: 40px;\n}\n\n@media (max-width: 991px) {\n .social-share {\n display: none;\n }\n}\n","texts":{"New tab":"What's New","New 1":"Surface Laptop Studio 2","New 2":"Surface Laptop Go 3","New 3":"Surface Pro 9","New 4":"Surface Laptop 5","New 5":"Surface Studio 2+","New 6":"Copilot in Windows","New 7":"Microsoft 365","New 8":"Windows 11 apps","Store tab":"Microsoft Store","Store 1":"Account Profile","Store 2":"Download Center","Store 3":"Microsoft Store Support","Store 4":"Returns","Store 5":"Order tracking","Store 6":"Certified Refurbished","Store 7":"Microsoft Store Promise","Store 8":"Flexible Payments","Education tab":"Education","Edu 1":"Microsoft in education","Edu 2":"Devices for education","Edu 3":"Microsoft Teams for Education","Edu 4":"Microsoft 365 Education","Edu 5":"How to buy for your school","Edu 6":"Educator Training and development","Edu 7":"Deals for students and parents","Edu 8":"Azure for students","Business tab":"Business","Bus 1":"Microsoft Cloud","Bus 2":"Microsoft Security","Bus 3":"Dynamics 365","Bus 4":"Microsoft 365","Bus 5":"Microsoft Power Platform","Bus 6":"Microsoft Teams","Bus 7":"Microsoft Industry","Bus 8":"Small Business","Developer tab":"Developer & IT","Dev 1":"Azure","Dev 2":"Developer Center","Dev 3":"Documentation","Dev 4":"Microsoft Learn","Dev 5":"Microsoft Tech Community","Dev 6":"Azure Marketplace","Dev 7":"AppSource","Dev 8":"Visual Studio","Company tab":"Company","Com 1":"Careers","Com 2":"About Microsoft","Com 3":"Company News","Com 4":"Privacy at Microsoft","Com 5":"Investors","Com 6":"Diversity and inclusion","Com 7":"Accessiblity","Com 8":"Sustainibility"},"defaults":{"config":{"applicablePages":[],"description":"The Microsoft Footer","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"components":[{"id":"custom.widget.MicrosoftFooter","form":null,"config":null,"props":[],"__typename":"Component"}],"grouping":"CUSTOM","__typename":"ComponentTemplate"},"properties":{"config":{"applicablePages":[],"description":"The Microsoft Footer","fetchedContent":null,"__typename":"ComponentConfiguration"},"props":[],"__typename":"ComponentProperties"},"form":null,"__typename":"Component","localOverride":false},"globalCss":{"css":".custom_widget_MicrosoftFooter_context-uhf_105bp_1 {\n min-width: 17.5rem;\n font-size: 0.9375rem;\n box-sizing: border-box;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n & *,\n & *:before,\n & *:after {\n box-sizing: inherit;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-link_105bp_12 {\n color: #616161;\n word-break: break-word;\n text-decoration: none;\n }\n &a:link,\n &a:focus,\n &a:hover,\n &a:active,\n &a:visited {\n text-decoration: none;\n color: inherit;\n }\n & div {\n font-family: 'Segoe UI', SegoeUI, 'Helvetica Neue', Helvetica, Arial, sans-serif;\n }\n}\n.custom_widget_MicrosoftFooter_c-uhff_105bp_12 {\n background: #f2f2f2;\n margin: -1.5625;\n width: auto;\n height: auto;\n}\n.custom_widget_MicrosoftFooter_c-uhff-nav_105bp_35 {\n margin: 0 auto;\n max-width: calc(100rem + 10%);\n padding: 0 5%;\n box-sizing: inherit;\n &:before,\n &:after {\n content: ' ';\n display: table;\n clear: left;\n }\n @media only screen and (max-width: 1083px) {\n padding-left: 0.75rem;\n }\n .custom_widget_MicrosoftFooter_c-heading-4_105bp_49 {\n color: #616161;\n word-break: break-word;\n font-size: 0.9375rem;\n line-height: 1.25rem;\n padding: 2.25rem 0 0.25rem;\n font-weight: 600;\n }\n .custom_widget_MicrosoftFooter_c-uhff-nav-row_105bp_57 {\n .custom_widget_MicrosoftFooter_c-uhff-nav-group_105bp_58 {\n display: block;\n float: left;\n min-height: 0.0625rem;\n vertical-align: text-top;\n padding: 0 0.75rem;\n width: 100%;\n zoom: 1;\n &:first-child {\n padding-left: 0;\n @media only screen and (max-width: 1083px) {\n padding-left: 0.75rem;\n }\n }\n @media only screen and (min-width: 540px) and (max-width: 1082px) {\n width: 33.33333%;\n }\n @media only screen and (min-width: 1083px) {\n width: 16.6666666667%;\n }\n ul.custom_widget_MicrosoftFooter_c-list_105bp_78.custom_widget_MicrosoftFooter_f-bare_105bp_78 {\n font-size: 0.6875rem;\n line-height: 1rem;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n list-style-type: none;\n li {\n word-break: break-word;\n padding: 0.5rem 0;\n margin: 0;\n }\n }\n }\n }\n}\n.custom_widget_MicrosoftFooter_c-uhff-base_105bp_94 {\n background: #f2f2f2;\n margin: 0 auto;\n max-width: calc(100rem + 10%);\n padding: 1.875rem 5% 1rem;\n &:before,\n &:after {\n content: ' ';\n display: table;\n }\n &:after {\n clear: both;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-ccpa_105bp_107 {\n font-size: 0.6875rem;\n line-height: 1rem;\n float: left;\n margin: 0.1875rem 0;\n }\n a.custom_widget_MicrosoftFooter_c-uhff-ccpa_105bp_107:hover {\n text-decoration: underline;\n }\n ul.custom_widget_MicrosoftFooter_c-list_105bp_78 {\n font-size: 0.6875rem;\n line-height: 1rem;\n float: right;\n margin: 0.1875rem 0;\n color: #616161;\n li {\n padding: 0 1.5rem 0.25rem 0;\n display: inline-block;\n }\n }\n .custom_widget_MicrosoftFooter_c-list_105bp_78.custom_widget_MicrosoftFooter_f-bare_105bp_78 {\n padding-left: 0;\n list-style-type: none;\n }\n @media only screen and (max-width: 1083px) {\n display: flex;\n flex-wrap: wrap;\n padding: 1.875rem 1.5rem 1rem;\n }\n}\n.custom_widget_MicrosoftFooter_social-share_105bp_138 {\n position: fixed;\n top: 60%;\n transform: translateY(-50%);\n left: 0;\n z-index: 1000;\n}\n.custom_widget_MicrosoftFooter_sharing-options_105bp_146 {\n list-style: none;\n padding: 0;\n margin: 0;\n display: block;\n flex-direction: column;\n background-color: white;\n width: 2.6875rem;\n border-radius: 0 0.4375rem 0.4375rem 0;\n}\n.custom_widget_MicrosoftFooter_linkedin-icon_105bp_156 {\n border-top-right-radius: 7px;\n}\n.custom_widget_MicrosoftFooter_linkedin-icon_105bp_156:hover {\n border-radius: 0;\n}\n.custom_widget_MicrosoftFooter_social-share-rss-image_105bp_162 {\n border-bottom-right-radius: 7px;\n}\n.custom_widget_MicrosoftFooter_social-share-rss-image_105bp_162:hover {\n border-radius: 0;\n}\n.custom_widget_MicrosoftFooter_social-link-footer_105bp_169 {\n position: relative;\n display: block;\n margin: -0.125rem 0;\n transition: all 0.2s ease;\n}\n.custom_widget_MicrosoftFooter_social-link-footer_105bp_169:hover .custom_widget_MicrosoftFooter_linkedin-icon_105bp_156 {\n border-radius: 0;\n}\n.custom_widget_MicrosoftFooter_social-link-footer_105bp_169:hover .custom_widget_MicrosoftFooter_social-share-rss-image_105bp_162 {\n border-radius: 0;\n}\n.custom_widget_MicrosoftFooter_social-link-footer_105bp_169 img {\n width: 2.5rem;\n height: auto;\n transition: filter 0.3s ease;\n}\n.custom_widget_MicrosoftFooter_social-share-list_105bp_188 {\n width: 2.5rem;\n}\n.custom_widget_MicrosoftFooter_social-share-rss-image_105bp_162 {\n width: 2.5rem;\n}\n.custom_widget_MicrosoftFooter_share-icon_105bp_195 {\n border: 2px solid transparent;\n display: inline-block;\n position: relative;\n}\n.custom_widget_MicrosoftFooter_share-icon_105bp_195:hover {\n opacity: 1;\n border: 2px solid white;\n box-sizing: border-box;\n}\n.custom_widget_MicrosoftFooter_share-icon_105bp_195:hover .custom_widget_MicrosoftFooter_label_105bp_207 {\n opacity: 1;\n visibility: visible;\n border: 2px solid white;\n box-sizing: border-box;\n border-left: none;\n}\n.custom_widget_MicrosoftFooter_label_105bp_207 {\n position: absolute;\n left: 100%;\n white-space: nowrap;\n opacity: 0;\n visibility: hidden;\n transition: all 0.2s ease;\n color: white;\n border-radius: 0 10 0 0.625rem;\n top: 50%;\n transform: translateY(-50%);\n height: 2.5rem;\n border-radius: 0 0.375rem 0.375rem 0;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.25rem 0.3125rem 1.25rem 0.5rem;\n margin-left: -0.0625rem;\n}\n.custom_widget_MicrosoftFooter_linkedin_105bp_156 {\n background-color: #0474b4;\n}\n.custom_widget_MicrosoftFooter_facebook_105bp_237 {\n background-color: #3c5c9c;\n}\n.custom_widget_MicrosoftFooter_twitter_105bp_240 {\n background-color: white;\n color: black;\n}\n.custom_widget_MicrosoftFooter_reddit_105bp_244 {\n background-color: #fc4404;\n}\n.custom_widget_MicrosoftFooter_mail_105bp_247 {\n background-color: #848484;\n}\n.custom_widget_MicrosoftFooter_bluesky_105bp_250 {\n background-color: white;\n color: black;\n}\n.custom_widget_MicrosoftFooter_rss_105bp_254 {\n background-color: #ec7b1c;\n}\n#custom_widget_MicrosoftFooter_RSS_105bp_1 {\n width: 2.5rem;\n height: 2.5rem;\n}\n@media (max-width: 991px) {\n .custom_widget_MicrosoftFooter_social-share_105bp_138 {\n display: none;\n }\n}\n","tokens":{"context-uhf":"custom_widget_MicrosoftFooter_context-uhf_105bp_1","c-uhff-link":"custom_widget_MicrosoftFooter_c-uhff-link_105bp_12","c-uhff":"custom_widget_MicrosoftFooter_c-uhff_105bp_12","c-uhff-nav":"custom_widget_MicrosoftFooter_c-uhff-nav_105bp_35","c-heading-4":"custom_widget_MicrosoftFooter_c-heading-4_105bp_49","c-uhff-nav-row":"custom_widget_MicrosoftFooter_c-uhff-nav-row_105bp_57","c-uhff-nav-group":"custom_widget_MicrosoftFooter_c-uhff-nav-group_105bp_58","c-list":"custom_widget_MicrosoftFooter_c-list_105bp_78","f-bare":"custom_widget_MicrosoftFooter_f-bare_105bp_78","c-uhff-base":"custom_widget_MicrosoftFooter_c-uhff-base_105bp_94","c-uhff-ccpa":"custom_widget_MicrosoftFooter_c-uhff-ccpa_105bp_107","social-share":"custom_widget_MicrosoftFooter_social-share_105bp_138","sharing-options":"custom_widget_MicrosoftFooter_sharing-options_105bp_146","linkedin-icon":"custom_widget_MicrosoftFooter_linkedin-icon_105bp_156","social-share-rss-image":"custom_widget_MicrosoftFooter_social-share-rss-image_105bp_162","social-link-footer":"custom_widget_MicrosoftFooter_social-link-footer_105bp_169","social-share-list":"custom_widget_MicrosoftFooter_social-share-list_105bp_188","share-icon":"custom_widget_MicrosoftFooter_share-icon_105bp_195","label":"custom_widget_MicrosoftFooter_label_105bp_207","linkedin":"custom_widget_MicrosoftFooter_linkedin_105bp_156","facebook":"custom_widget_MicrosoftFooter_facebook_105bp_237","twitter":"custom_widget_MicrosoftFooter_twitter_105bp_240","reddit":"custom_widget_MicrosoftFooter_reddit_105bp_244","mail":"custom_widget_MicrosoftFooter_mail_105bp_247","bluesky":"custom_widget_MicrosoftFooter_bluesky_105bp_250","rss":"custom_widget_MicrosoftFooter_rss_105bp_254","RSS":"custom_widget_MicrosoftFooter_RSS_105bp_1"}},"form":null},"localOverride":false},"CachedAsset:text:en_US-components/community/Breadcrumb-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/Breadcrumb-1744658874048","value":{"navLabel":"Breadcrumbs","dropdown":"Additional parent page navigation"},"localOverride":false},"CachedAsset:text:en_US-components/tags/TagsHeaderWidget-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/tags/TagsHeaderWidget-1744658874048","value":{"tag":"{tagName}","topicsCount":"{count} {count, plural, one {Topic} other {Topics}}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageListForNodeByRecentActivityWidget-1744658874048","value":{"title@userScope:other":"Recent Content","title@userScope:self":"Contributions","title@board:FORUM@userScope:other":"Recent Discussions","title@board:BLOG@userScope:other":"Recent Blogs","emptyDescription":"No content to show","MessageListForNodeByRecentActivityWidgetEditor.nodeScope.label":"Scope","title@instance:1722894000155":"Recent Discussions","title@instance:1727367112619":"Recent Blog Articles","title@instance:1727367069748":"Recent Discussions","title@instance:1727366213114":"Latest Discussions","title@instance:1727899609720":"","title@instance:1727363308925":"Latest Discussions","title@instance:1737115580352":"Latest Articles","title@instance:1720453418992":"Recent Discssions","title@instance:1727365950181":"Latest Blog Articles","title@instance:bmDPnI":"Latest Blog Articles","title@instance:IiDDJZ":"Latest Blog Articles","title@instance:1721244347979":"Latest blog posts","title@instance:1728383752171":"Related Content","title@instance:1722893956545":"Latest Skilling Resources","title@instance:dhcgCU":"Latest Discussions"},"localOverride":false},"Category:category:Exchange":{"__typename":"Category","id":"category:Exchange","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Planner":{"__typename":"Category","id":"category:Planner","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Outlook":{"__typename":"Category","id":"category:Outlook","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Community-Info-Center":{"__typename":"Category","id":"category:Community-Info-Center","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:EducationSector":{"__typename":"Category","id":"category:EducationSector","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:DrivingAdoption":{"__typename":"Category","id":"category:DrivingAdoption","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Azure":{"__typename":"Category","id":"category:Azure","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"displayId":"Azure"},"Category:category:Windows-Server":{"__typename":"Category","id":"category:Windows-Server","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:SQL-Server":{"__typename":"Category","id":"category:SQL-Server","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftTeams":{"__typename":"Category","id":"category:MicrosoftTeams","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:PublicSector":{"__typename":"Category","id":"category:PublicSector","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft365":{"__typename":"Category","id":"category:microsoft365","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:IoT":{"__typename":"Category","id":"category:IoT","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:HealthcareAndLifeSciences":{"__typename":"Category","id":"category:HealthcareAndLifeSciences","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:SMB":{"__typename":"Category","id":"category:SMB","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:ITOpsTalk":{"__typename":"Category","id":"category:ITOpsTalk","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft-endpoint-manager":{"__typename":"Category","id":"category:microsoft-endpoint-manager","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftLearn":{"__typename":"Category","id":"category:MicrosoftLearn","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Blog:board:MicrosoftLearnBlog":{"__typename":"Blog","id":"board:MicrosoftLearnBlog","blogPolicies":{"__typename":"BlogPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"boardPolicies":{"__typename":"BoardPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:AI":{"__typename":"Category","id":"category:AI","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:MicrosoftMechanics":{"__typename":"Category","id":"category:MicrosoftMechanics","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:StartupsatMicrosoft":{"__typename":"Category","id":"category:StartupsatMicrosoft","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:PartnerCommunity":{"__typename":"Category","id":"category:PartnerCommunity","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:Windows":{"__typename":"Category","id":"category:Windows","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:microsoft-security":{"__typename":"Category","id":"category:microsoft-security","categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Conversation:conversation:4401117":{"__typename":"Conversation","id":"conversation:4401117","topic":{"__typename":"BlogTopicMessage","uid":4401117},"lastPostingActivityTime":"2025-04-10T16:37:11.544-07:00","solved":false},"Blog:board:IntegrationsonAzureBlog":{"__typename":"Blog","id":"board:IntegrationsonAzureBlog","displayId":"IntegrationsonAzureBlog","nodeType":"board","conversationStyle":"BLOG","title":"Azure Integration Services Blog","shortTitle":"Azure Integration Services Blog","parent":{"__ref":"Category:category:Azure"}},"User:user:1051277":{"__typename":"User","uid":1051277,"login":"shahparth","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/m_assets/avatars/default/avatar-2.svg?time=0"},"id":"user:1051277"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUN3VTNVcw?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUN3VTNVcw?revision=3","title":"title-img.png","associationType":"COVER","width":2454,"height":1338,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXJDSXVXNw?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXJDSXVXNw?revision=3","title":"image.png","associationType":"BODY","width":2476,"height":1049,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUVieTE5Rg?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUVieTE5Rg?revision=3","title":"image.png","associationType":"BODY","width":2452,"height":906,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUlSY3RySw?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUlSY3RySw?revision=3","title":"image.png","associationType":"BODY","width":593,"height":557,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LWZIaFlxNg?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LWZIaFlxNg?revision=3","title":"image.png","associationType":"BODY","width":542,"height":518,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTdkQVJmMw?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTdkQVJmMw?revision=3","title":"image.png","associationType":"BODY","width":2479,"height":1191,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTN6QlZRZg?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTN6QlZRZg?revision=3","title":"image.png","associationType":"BODY","width":2479,"height":1191,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXNpWGU1aw?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXNpWGU1aw?revision=3","title":"image.png","associationType":"BODY","width":2454,"height":1272,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXhMa0pJWA?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXhMa0pJWA?revision=3","title":"image.png","associationType":"BODY","width":2454,"height":1272,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTBtNk5ISQ?revision=3\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTBtNk5ISQ?revision=3","title":"image.png","associationType":"BODY","width":2466,"height":1309,"altText":""},"BlogTopicMessage:message:4401117":{"__typename":"BlogTopicMessage","subject":"Summing it up: Aggregating repeating nodes in Logic Apps Data Mapper 🧮","conversation":{"__ref":"Conversation:conversation:4401117"},"id":"message:4401117","revisionNum":3,"uid":4401117,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:1051277"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":"","introduction":"","metrics":{"__typename":"MessageMetrics","views":230},"postTime":"2025-04-04T14:09:18.864-07:00","lastPublishTime":"2025-04-04T14:15:57.054-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" Logic Apps Data Mapper makes it easy to define visual, code-free transformations across structured JSON data. One pattern that's both powerful and clean: using built-in collection functions to compute summary values from arrays. \n This post walks through an end-to-end example: calculating a total from a list of items using just two functions — `Multiply` and `Sum`. \n   \n 🧾 Scenario: Line Item Totals + Order Summary \n You’re working with a list of order items. For each item, you want to: \n \n Compute Total = Quantity × Price \n Then, compute the overall OrderTotal by summing all the individual totals \n \n 📥 Input \n   \n { \"orders\" : [ { \"Quantity\" : 10, \"Price\" : 100 }, { \"Quantity\" : 20, \"Price\" : 200 }, { \"Quantity\" : 30, \"Price\" : 300 } ] } \n 📤 Output \n { \"orders\" : [ { \"Quantity\" : 10, \"Price\" : 100, \"Total\" : 1000 }, { \"Quantity\" : 20, \"Price\" : 200, \"Total\" : 4000 }, { \"Quantity\" : 30, \"Price\" : 300, \"Total\" : 9000 } ], \"Summary\": { \"OrderTotal\": 14000 } } \n 🔧 Step-by-step walkthrough \n 🗂️ 1. Load schemas in Data Mapper \n Start in the Azure Data Mapper interface and load: \n \n Source schema: contains the orders array with Quantity and Price \n Target schema: includes a repeating orders node and a Summary → OrderTotal field \n \n 📸 Docked schemas in the mapper \n \n 🔁 2. Recognize the repeating node \n The orders array shows a 🔁 icon on <ArrayItem>, marking it as a repeating node. 📸 Repeating node detection \n \n 💡 When you connect child fields like Quantity or Price, the mapper auto-applies a loop for you. No manual loop configuration needed. \n ➗ 3. Multiply Quantity × Price (per item) \n Drag in a Multiply function and connect: \n \n Input 1: Quantity \n Input 2: Price \n \n Now connect the output of Multiply directly to the Total node under Orders node in the destination. \n This runs once per order item and produces individual totals: \n [1000, 4000, 9000] \n 📸 Multiply setup \n \n   \n \n ➕ 4. Aggregate All Totals Using Sum \n Use the same Multiply function output and pass it into a Sum function. This will combine all the individual totals into one value. Drag and connect:  \n \n Input 1: multiply(Quantity, Price) \n Input 2: <ArrayItem> \n \n Connect the output of Sum to the destination node Summary → OrderTotal \n 1000 + 4000 + 9000 = 14000 \n 📸 Sum function \n \n ✅ 5. Test the Output \n Run a test with your sample input by clicking on the Open test panel. Copy/paste the sample data and hit Test.  \n \n The result should look like this: \n {\n \"orders\": [\n {\n \"Quantity\": 10,\n \"Price\": 100,\n \"Total\": 1000\n },\n {\n \"Quantity\": 20,\n \"Price\": 200,\n \"Total\": 4000\n },\n {\n \"Quantity\": 30,\n \"Price\": 300,\n \"Total\": 9000\n } \n ],\n \"Summary\": {\n \"OrderTotal\": 14000\n }\n}\n \n 🧠 Why this pattern works \n \n 🔁 Repeating to repeating: You’re calculating Total per order \n 🔂 Repeating to non-repeating: You’re aggregating with Sum into a single node \n 🧩 No expressions needed — it’s all declarative \n \n This structure is perfect for invoices, order summaries, or reporting payloads where both detail and summary values are needed. \n 📘 What's coming \n We’re working on official docs to cover: \n \n All functions including collection (Join, Direct Access, Filter, etc.) that work on repeating nodes \n Behavior of functions inside loops \n Real-world examples like this one \n \n 💬 What should we cover next? \n We’re always looking to surface patterns that matter most to how you build. \n If there’s a transformation technique, edge case, or integration scenario you’d like to see explored next — drop a comment below and let us know. We’re listening. 🧡 Special thanks to Dave Phelps for collaborating on this scenario and helping shape the walkthrough. ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"3874","kudosSumWeight":0,"repliesCount":1,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUN3VTNVcw?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXJDSXVXNw?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUVieTE5Rg?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUlSY3RySw?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LWZIaFlxNg?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTdkQVJmMw?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDc","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTN6QlZRZg?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDg","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXNpWGU1aw?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDk","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LXhMa0pJWA?revision=3\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LTBtNk5ISQ?revision=3\"}"}}],"totalCount":10,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":{"__typename":"UploadedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAxMTE3LUN3VTNVcw?revision=3"},"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:4403115":{"__typename":"Conversation","id":"conversation:4403115","topic":{"__typename":"BlogTopicMessage","uid":4403115},"lastPostingActivityTime":"2025-04-10T11:38:28.382-07:00","solved":false},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVRkeWlMUQ?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVRkeWlMUQ?revision=2","title":"Screenshot 2025-04-10 105358.png","associationType":"COVER","width":2441,"height":1313,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXNNcXhBSg?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXNNcXhBSg?revision=2","title":"image.png","associationType":"BODY","width":923,"height":1070,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVVoQWtraA?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVVoQWtraA?revision=2","title":"image.png","associationType":"BODY","width":2454,"height":1136,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXp1RGpBMw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXp1RGpBMw?revision=2","title":"image.png","associationType":"BODY","width":2446,"height":1234,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LW1GblJtVw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LW1GblJtVw?revision=2","title":"image.png","associationType":"BODY","width":2461,"height":1308,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWI4VlE0WA?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWI4VlE0WA?revision=2","title":"image.png","associationType":"BODY","width":2462,"height":1249,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWJuMFZyNw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWJuMFZyNw?revision=2","title":"image.png","associationType":"BODY","width":2457,"height":1305,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2Sms3SQ?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2Sms3SQ?revision=2","title":"image.png","associationType":"BODY","width":2452,"height":1242,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWRUZUhycQ?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWRUZUhycQ?revision=2","title":"image.png","associationType":"BODY","width":2455,"height":1300,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTMyQ2VhSg?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTMyQ2VhSg?revision=2","title":"image.png","associationType":"BODY","width":2446,"height":1242,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LU1JY2ZkZg?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LU1JY2ZkZg?revision=2","title":"image.png","associationType":"BODY","width":2436,"height":1233,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2MUdRbw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2MUdRbw?revision=2","title":"image.png","associationType":"BODY","width":2451,"height":1170,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXhNcnFYTQ?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXhNcnFYTQ?revision=2","title":"image.png","associationType":"BODY","width":2442,"height":1225,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWhjSFBMSw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWhjSFBMSw?revision=2","title":"image.png","associationType":"BODY","width":2448,"height":1309,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVczVXdIRA?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVczVXdIRA?revision=2","title":"image.png","associationType":"BODY","width":2439,"height":1303,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTNvQlVlZw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTNvQlVlZw?revision=2","title":"image.png","associationType":"BODY","width":2441,"height":1313,"altText":""},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUNkOEVvVw?revision=2\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUNkOEVvVw?revision=2","title":"image.png","associationType":"BODY","width":2449,"height":1236,"altText":""},"BlogTopicMessage:message:4403115":{"__typename":"BlogTopicMessage","subject":"Beyond the Basics: Using Minimum, Maximum, and Average Functions in Logic Apps Data Mapper 🚀","conversation":{"__ref":"Conversation:conversation:4403115"},"id":"message:4403115","revisionNum":2,"uid":4403115,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:1051277"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" Use built-in collection functions like Minimum, Maximum, and Average on repeating nodes ","introduction":"In this blog, we walk through real-world scenarios and provide downloadable samples so you can try it yourself and accelerate your integration workflows.","metrics":{"__typename":"MessageMetrics","views":156},"postTime":"2025-04-10T11:37:42.838-07:00","lastPublishTime":"2025-04-10T11:38:28.382-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" Continuing our exploration of the Logic Apps Data Mapper, let's uncover how you can effortlessly calculate Minimum, Maximum, and Average values from repeating nodes. Many users may not yet realize these handy built-in functions exist—let's reveal their power! \n 🧾 Scenario: Temperature data analysis \n Imagine you're managing environmental monitoring stations across multiple regions, and you need accurate insights to proactively respond to weather events. Quickly determining the minimum, maximum, and average temperatures from hourly readings can help predict extreme weather, prevent environmental hazards, and optimize resource allocation. \n 📌Try it Out Yourself! \n You can easily test these scenarios using our sample schemas available on our GitHub repository. \n Here's how to set them up: \n \n Place sample schemas into your Artifacts folder. \n Place the Data Mapper file (.lml) into the Map Definitions folder. You can then directly right-click and load the map into your VS Code.  \n \n 📸Loading data map by right-clicking .lml file \n \n   \n \n \n Place the XSLT map file (.xslt) into your Maps folder. \n \n \n We are actively expanding our library of examples and encourage you to contribute your own schemas or patterns through a pull request. Help us build a comprehensive set of samples for the entire community! \n 🔧 Step-by-step walkthrough \n 1. Identifying your repeating node 🔄 \n To leverage these functions, first identify the repeating node in your schema. These are parent nodes that typically have property MinOccurs > 1. For our scenario, let's consider temperature data recorded hourly. Lets take a look at both the repeating node on source and non-repeating node at destination. The repeating node is indicated by A1,A2 🔄 \n 📸 WeatherReport repeating node on source \n \n 📸 Day2 node on destination \n \n 2. Calculating minimum temperature ❄️ \n To determine the lowest temperature: \n \n First, convert the Temperature node from Decimal to Integer using the built-in conversion function. Click Functions ➡️ Conversion ➡️ To Integer. \n \n 📸 To Integer function for Minimum calculation \n \n \n With the data normalized, select Functions ➡️ Collection ➡️ Minimum. \n Map your To Integer function into the Minimum function. \n Then, drag your WeatherReport node into the Minimum function. \n \n 📸 Inputs to Minimum function \n \n   \n 📸 Screenshot: Minimum function configuration \n \n   \n \n Direct the output from the Minimum function to your Temperature destination node. \n \n 📸 Map setup for Minimum \n \n   \n \n Test your map using a sample source schema containing multiple values in the WeatherReport node. \n \n 📸 Test output for Minimum \n \n 3. Finding maximum temperature ☀️ \n To find the highest temperature: \n \n Convert Temperature node from Decimal to Integer using a built-in function the same way we did in the previous step \n Now that we have the data normalized, it is time to calculate the maximum temperature. Navigate to Functions ➡️ Collection ➡️ Maximum \n Map your To Integer function into the Maximum function  \n Then, drag WeatherReport node into the Maximum function \n \n 📸 Inputs to Maximum function \n \n  📸 Maximum function configuration  \n \n   \n \n Direct the output to Temperature destination node from Maximum function. \n \n 📸 Map setup  \n \n   \n \n Test the map with sample source schema that has multiple values for WeatherReport node \n \n 📸 Test output for Maximum  \n \n   \n 3. Calculating Average Temperature 🌤️ \n To calculate the average temperature: \n \n Start by converting the Temperature node from Decimal to Integer using the built-in conversion function. Navigate to Functions ➡️ Conversion ➡️ To Integer. \n Next, select Functions ➡️ Collection ➡️ Average to calculate the average temperature. \n Map your To Integer function into the Average function. \n Additionally, drag the WeatherReport node into the Average function. \n \n 📸 Inputs to Average function \n \n   \n 📸 Average function configuration \n \n \n Convert the output from Average function to Integer \n Finally, direct the output from the Average function to your Temperature destination node. \n \n 📸 Map setup for Average \n \n \n Verify your mapping by testing with a sample schema containing multiple temperature values. \n \n 📸Test output for Average \n \n Related content \n \n aka.ms/mapper-sum \n aka.ms/datamapper-refresh \n aka.ms/datamapperpatterns \n \n 💬 What should we cover next? \n We’re always looking to surface patterns that matter most to how you build. \n If there’s a transformation technique, edge case, or integration scenario you’d like to see explored next — drop a comment below and let us know. We’re listening. ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"4821","kudosSumWeight":0,"repliesCount":0,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVRkeWlMUQ?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXNNcXhBSg?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVVoQWtraA?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXp1RGpBMw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LW1GblJtVw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWI4VlE0WA?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDc","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWJuMFZyNw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDg","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2Sms3SQ?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDk","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWRUZUhycQ?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTMyQ2VhSg?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEx","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LU1JY2ZkZg?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEy","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUU2MUdRbw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEz","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LXhNcnFYTQ?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE0","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LWhjSFBMSw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE1","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVczVXdIRA?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE2","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LTNvQlVlZw?revision=2\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE3","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LUNkOEVvVw?revision=2\"}"}}],"totalCount":17,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":{"__typename":"UploadedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00NDAzMTE1LVRkeWlMUQ?revision=2"},"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:4360484":{"__typename":"Conversation","id":"conversation:4360484","topic":{"__typename":"BlogTopicMessage","uid":4360484},"lastPostingActivityTime":"2024-12-25T00:40:10.660-08:00","solved":false},"User:user:1083751":{"__typename":"User","uid":1083751,"login":"huidongliu","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/m_assets/avatars/default/avatar-3.svg?time=0"},"id":"user:1083751"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzYwNDg0LTVvTWJJSQ?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzYwNDg0LTVvTWJJSQ?revision=10","title":"398087239-1805309a-0038-4076-b923-6ea2aeef1c6f.png","associationType":"BODY","width":478,"height":619,"altText":""},"BlogTopicMessage:message:4360484":{"__typename":"BlogTopicMessage","subject":"An Automated Tool for Collecting PSSDiag BizTalk Traces Using Event Logs","conversation":{"__ref":"Conversation:conversation:4360484"},"id":"message:4360484","revisionNum":10,"uid":4360484,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:1083751"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":"","introduction":"","metrics":{"__typename":"MessageMetrics","views":187},"postTime":"2024-12-25T00:40:10.660-08:00","lastPublishTime":"2024-12-25T00:40:10.660-08:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" Often, users encounter intermittent event log errors from BizTalk that require further investigation using a BizTalk PSSDiag trace. However, since the timing of the next occurrence is unpredictable, troubleshooting becomes challenging. In such scenarios, a tool is needed to continuously collect PSSDiag traces until the error reoccurs, at which point the tool can automatically stop tracing and save the output. To address this need, I’ve developed a tool that automates this process based on user requirements. \n PSSDiag for BizTalk is a specialized diagnostic data collection tool tailored for troubleshooting BizTalk Server environments. Built as an extension of PSSDiag (Product Support Services Diagnostics), a widely used tool for diagnosing Microsoft SQL Server issues, it collects a comprehensive set of logs and diagnostic data specific to BizTalk. This includes information crucial for identifying and resolving performance, connectivity, or configuration issues. The tool runs from a console interface, and data collection can be stopped manually by pressing Ctrl+C. \n I have developed a console application PSSDiagCollector that launches PSSDiag to monitor the event log and automatically stops the PSSDiag collection once a specific event is detected. You can download the tool from this GitHub repository: \n https://github.com/huidongl/PSSDiagCollector \n The PSSDiagCollector.exe must be saved in the same folder as PSSDiagForBizTalk. Users can open a command prompt, navigate to the PSSDiagForBizTalk directory, and run PSSDiagCollector from there. The command can specify the Event ID, Event Source, or Event Type to capture, as well as the number of events required to stop the collection. Additionally, users can set a delay (in seconds) before stopping the trace. Detailed instructions for using the tool to collect PSSDiag BizTalk traces can be found in the repository. \n Run the following command to begin the collection: \n PSSDiagCollector.exe -eid <EventID> -c <EventCount> -p <PauseDuration> -es \"<EventSource>\" -lc \"<LogCategory>\" \n For example: \n PSSDiagCollector.exe -eid 7195 -c 3 -p 30 -es \"BizTalk Server\" -lc \"Application\" \n Please make sure to configure the Trace Type, Keep the last _ trace files in the  Initialize.exe before running this tool to avoid the trace file being filled up.  \n \n   ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"2396","kudosSumWeight":2,"repliesCount":0,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MzYwNDg0LTVvTWJJSQ?revision=10\"}"}}],"totalCount":1,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:4163317":{"__typename":"Conversation","id":"conversation:4163317","topic":{"__typename":"BlogTopicMessage","uid":4163317},"lastPostingActivityTime":"2024-11-13T05:17:47.602-08:00","solved":false},"User:user:1524165":{"__typename":"User","uid":1524165,"login":"hcamposu","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/dS0xNTI0MTY1LTUwOTc2N2lCREVDRDAxQjMxQ0Q3OTM0"},"id":"user:1524165"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMWk5ODkzMEEyRTNDQkMyNDY4?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMWk5ODkzMEEyRTNDQkMyNDY4?revision=10","title":"hcamposu_0-1717888676146.png","associationType":"BODY","width":2349,"height":1311,"altText":"hcamposu_0-1717888676146.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMGk5MTc0NjVDNTM3NDYxN0Yx?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMGk5MTc0NjVDNTM3NDYxN0Yx?revision=10","title":"hcamposu_1-1717888676152.png","associationType":"BODY","width":1314,"height":829,"altText":"hcamposu_1-1717888676152.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMmk0RTM2QTRCQzJEQTgxQjc0?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMmk0RTM2QTRCQzJEQTgxQjc0?revision=10","title":"hcamposu_2-1717888676167.png","associationType":"BODY","width":2457,"height":1212,"altText":"hcamposu_2-1717888676167.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzM2lGNzM1NUY0OTBERTk3ODAy?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzM2lGNzM1NUY0OTBERTk3ODAy?revision=10","title":"hcamposu_3-1717888676170.png","associationType":"BODY","width":885,"height":465,"altText":"hcamposu_3-1717888676170.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNWkxMUUxOTYyMDU1MzdDODgx?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNWkxMUUxOTYyMDU1MzdDODgx?revision=10","title":"hcamposu_4-1717888676172.png","associationType":"BODY","width":637,"height":708,"altText":"hcamposu_4-1717888676172.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNGlFMzUxNkFDRDU4MjcyRDZG?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNGlFMzUxNkFDRDU4MjcyRDZG?revision=10","title":"hcamposu_5-1717888676173.png","associationType":"BODY","width":315,"height":342,"altText":"hcamposu_5-1717888676173.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNmlBMUVGOThDQzcwRjU3RjRD?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNmlBMUVGOThDQzcwRjU3RjRD?revision=10","title":"hcamposu_6-1717888676174.png","associationType":"BODY","width":549,"height":537,"altText":"hcamposu_6-1717888676174.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzN2lGMzYxOEE0QjQyRTdFNzUw?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzN2lGMzYxOEE0QjQyRTdFNzUw?revision=10","title":"hcamposu_7-1717888676176.png","associationType":"BODY","width":435,"height":456,"altText":"hcamposu_7-1717888676176.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOGk2NzQyNjVEODFBQjgwNzAz?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOGk2NzQyNjVEODFBQjgwNzAz?revision=10","title":"hcamposu_8-1717888676178.png","associationType":"BODY","width":1488,"height":1158,"altText":"hcamposu_8-1717888676178.png"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOWlEOEI0RjdGQTQxNUJBOUZB?revision=10\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOWlEOEI0RjdGQTQxNUJBOUZB?revision=10","title":"hcamposu_9-1717888676181.png","associationType":"BODY","width":452,"height":575,"altText":"hcamposu_9-1717888676181.png"},"BlogTopicMessage:message:4163317":{"__typename":"BlogTopicMessage","subject":"Announcing the Public Preview of the Azure Logic Apps Rules Engine!","conversation":{"__ref":"Conversation:conversation:4163317"},"id":"message:4163317","revisionNum":10,"uid":4163317,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:1524165"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" Learn how to effectively implement Mission Critical Solutions with the Azure Logic Apps Rules Engine ","introduction":"","metrics":{"__typename":"MessageMetrics","views":5911},"postTime":"2024-06-10T00:00:00.066-07:00","lastPublishTime":"2024-11-13T05:17:47.602-08:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" Business rules engines offer a low-code environment that lets you build applications faster and easier, reducing dependencies on programming. Rules engine help to create and change business logic without having to write code or restart the applications that use them. Also, In a world of microservices that promotes decoupling, rules engines provide consistency, clarity, and compliance across different services and domains. Those are some of the benefits of using a Rules Engine. \n   \n BizTalk Server includes a Business Rules Engine. We have incorporated the RETE runtime included in the product along with support of .NET and XML facts into Azure Logic Apps. This means that customers migrating from BizTalk Server can leverage their existing BRE implementations in Azure Logic Apps now. This includes our customers looking to migrate their BizTalk Server SWIFT solutions to Azure Logic Apps.  \n   \n   \n   \n The Microsoft Rules Composer \n   \n To help you create rules for use with your Azure Logic Apps Rules Engine project, the Microsoft Rules Composer provides a visual tool for authoring and versioning rulesets and vocabularies. It is an stand along application that can be downloaded from https://www.microsoft.com/en-us/download/details.aspx?id=106092. \n   \n   \n   \n Rules \n   \n Rules are declarative statements that include a condition and actions where the condition is evaluated. If the result is true, the rules engine performs one or more actions. The following diagram shows the relationship between Rulesets, Rules, Facts, Conditions and Actions: \n   \n   \n   \n What are Vocabularies? \n   \n Vocabularies are collections of definitions consisting of friendly names for the facts used in rule conditions and actions. They make the rules easier to read, understand, and share by people in a particular business domain. For instance: “Status”. Vocabularies can be of the following types: \n \n Constant Value \n Range of Values \n Set of Values \n \n   \n   \n Control functions and Forward Chaining \n   \n Control functions help applications to control the facts in the engine’s behavior. Facts in working memory drive the conditions that the engine evaluates and the actions that execute. An example of this is the Forward Chaining Inference. The Forward Chaining Inference finds all true statements given the knowledge base and a new set of facts. It uses the control function “Update”. \n   \n Testing Rules \n   \n The Microsoft Rules Composer follows a Shift left approach: As you build your rulesets so that you can integrate business logic with your Standard workflows, you can test your ruleset incrementally. This feature is recommended for long or complex rules, to avoid lengthy troubleshooting. \n   \n   \n To test .net facts, you should build a Fact creator. You don’t need Fact creators for XML facts. \n   \n The outcome is a trace window with the results of the evaluation of the rules. \n   \n   \n   \n Migrating from BizTalk Server \n   \n As the Logic Apps Rules Engine, is an evolution of the BizTalk Business Rules Engine (BRE), BRE rules can be used in Logic Apps. As policies no longer exist, you should export each policy individually. \n   \n   \n As DBFacts are not supported in this release, you need to remove them from your policies or refactor them. \n   \n Creating Rules in VSCode \n   \n You can create Rules Engine projects using VSCode. You should create a Logic Apps workspace and then a Logic app with rules engine project. I have uploaded the SchemaUser.xsd file used for this sample. \n   \n   \n For a complete demonstration on how to use the Azure Logic Apps Rules Engine, watch the following video: \n   \n   \n \n   \n   \n Feedback? \n   \n If you have any feedback after testing this feature, please use this link: Rules Engine Feedback. \n   ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"3999","kudosSumWeight":1,"repliesCount":6,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMWk5ODkzMEEyRTNDQkMyNDY4?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMGk5MTc0NjVDNTM3NDYxN0Yx?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzMmk0RTM2QTRCQzJEQTgxQjc0?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzM2lGNzM1NUY0OTBERTk3ODAy?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNWkxMUUxOTYyMDU1MzdDODgx?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNGlFMzUxNkFDRDU4MjcyRDZG?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDc","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzNmlBMUVGOThDQzcwRjU3RjRD?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDg","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzN2lGMzYxOEE0QjQyRTdFNzUw?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDk","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOGk2NzQyNjVEODFBQjgwNzAz?revision=10\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS00MTYzMzE3LTU5MDAzOWlEOEI0RjdGQTQxNUJBOUZB?revision=10\"}"}}],"totalCount":10,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[{"__typename":"VideoEdge","cursor":"MHxodHRwczovL3lvdXR1LmJlL1l5SHRhcjdKY29JfDB8MjU7MjV8fA","node":{"__typename":"AssociatedVideo","videoTag":{"__typename":"VideoTag","vid":"https://youtu.be/YyHtar7JcoI","thumbnail":"http://i.ytimg.com/vi/YyHtar7JcoI/hqdefault.jpg","uploading":false,"height":240,"width":320,"title":null},"videoAssociationType":"INLINE_BODY"}}],"totalCount":1,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:3993785":{"__typename":"Conversation","id":"conversation:3993785","topic":{"__typename":"BlogTopicMessage","uid":3993785},"lastPostingActivityTime":"2024-07-12T12:34:00.939-07:00","solved":false},"User:user:1360055":{"__typename":"User","uid":1360055,"login":"reynaldom","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/dS0xMzYwMDU1LTU1Nzc2NWk3N0I5NEQwQTk2NjI1MDM4"},"id":"user:1360055"},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1ODY2MGlFOTdDNTRDODgzMzgzMjZD?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1ODY2MGlFOTdDNTRDODgzMzgzMjZD?revision=12","title":"reynaldom_0-1709740735454.jpeg","associationType":"BODY","width":1024,"height":1024,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MGkwM0M5NEIxMDY4OEQxMjZE?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MGkwM0M5NEIxMDY4OEQxMjZE?revision=12","title":"ReynaldoMSFT_14-1709558931889.png","associationType":"BODY","width":415,"height":287,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MWlFMDNCOUJGNjQxQzUwMjYx?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MWlFMDNCOUJGNjQxQzUwMjYx?revision=12","title":"ReynaldoMSFT_15-1709558948010.png","associationType":"BODY","width":975,"height":217,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4Mmk2MDUyQTE0MUQ3MUIzRjY0?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4Mmk2MDUyQTE0MUQ3MUIzRjY0?revision=12","title":"ReynaldoMSFT_16-1709558962313.png","associationType":"BODY","width":975,"height":313,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4M2lFMUQxQjRDQjFCMjFCNTIx?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4M2lFMUQxQjRDQjFCMjFCNTIx?revision=12","title":"ReynaldoMSFT_17-1709558975383.png","associationType":"BODY","width":322,"height":243,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NGkyQzk4QjRDNTFBOTQwMDlC?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NGkyQzk4QjRDNTFBOTQwMDlC?revision=12","title":"ReynaldoMSFT_18-1709558987390.png","associationType":"BODY","width":725,"height":289,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NWkzNTczNzRBQjY1NkZFRUMx?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NWkzNTczNzRBQjY1NkZFRUMx?revision=12","title":"ReynaldoMSFT_19-1709559013632.png","associationType":"BODY","width":728,"height":261,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4N2kwMTk1OUQwMTE0QkU2MzBD?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4N2kwMTk1OUQwMTE0QkU2MzBD?revision=12","title":"ReynaldoMSFT_21-1709559036155.png","associationType":"BODY","width":728,"height":227,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OGk5OTNENzlCNEZCRUVEMjE0?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OGk5OTNENzlCNEZCRUVEMjE0?revision=12","title":"ReynaldoMSFT_22-1709559055765.png","associationType":"BODY","width":976,"height":239,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OWk3QjAyQkRBODZBMTI4QkNE?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OWk3QjAyQkRBODZBMTI4QkNE?revision=12","title":"ReynaldoMSFT_23-1709559112929.png","associationType":"BODY","width":928,"height":387,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MWk2OTMyNjIzMDg4RUNFRjIy?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MWk2OTMyNjIzMDg4RUNFRjIy?revision=12","title":"ReynaldoMSFT_24-1709559145709.png","associationType":"BODY","width":518,"height":463,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MmkyRjg4NDk0NjExRjExMkFC?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MmkyRjg4NDk0NjExRjExMkFC?revision=12","title":"ReynaldoMSFT_25-1709559171343.png","associationType":"BODY","width":522,"height":488,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5M2lBMjEwOTYzMzI2QUY1Rjg1?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5M2lBMjEwOTYzMzI2QUY1Rjg1?revision=12","title":"ReynaldoMSFT_26-1709559190603.png","associationType":"BODY","width":1551,"height":1440,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NGlDNjYyQjhDRkFCMDQ2REU2?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NGlDNjYyQjhDRkFCMDQ2REU2?revision=12","title":"ReynaldoMSFT_27-1709559215263.png","associationType":"BODY","width":2500,"height":621,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NmkxNEQxMEEzREE1MzAwNEFC?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NmkxNEQxMEEzREE1MzAwNEFC?revision=12","title":"ReynaldoMSFT_29-1709559458472.png","associationType":"BODY","width":813,"height":184,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OWlBRERBN0FDRTFEMTYxMEZF?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OWlBRERBN0FDRTFEMTYxMEZF?revision=12","title":"ReynaldoMSFT_0-1709559547399.png","associationType":"BODY","width":861,"height":687,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OGk5MkUzRTM2QTY1NDYwMDU3?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OGk5MkUzRTM2QTY1NDYwMDU3?revision=12","title":"ReynaldoMSFT_1-1709559547402.png","associationType":"BODY","width":645,"height":438,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMWk3REFDMDA1QzVEMzI5MTVE?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMWk3REFDMDA1QzVEMzI5MTVE?revision=12","title":"ReynaldoMSFT_2-1709559572877.png","associationType":"BODY","width":660,"height":450,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMGlGNzk0NjIyQ0QzN0ExOEU4?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMGlGNzk0NjIyQ0QzN0ExOEU4?revision=12","title":"ReynaldoMSFT_3-1709559572878.png","associationType":"BODY","width":660,"height":453,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMmk1QzY0RjE0NTVBRDZBNkVG?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMmk1QzY0RjE0NTVBRDZBNkVG?revision=12","title":"ReynaldoMSFT_4-1709559572879.png","associationType":"BODY","width":654,"height":444,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwM2lGNTY3OUUwNDhFRTc1MDU1?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwM2lGNTY3OUUwNDhFRTc1MDU1?revision=12","title":"ReynaldoMSFT_5-1709559572880.png","associationType":"BODY","width":648,"height":447,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNWk2MjRENTZCMzVENzg3Mjg1?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNWk2MjRENTZCMzVENzg3Mjg1?revision=12","title":"ReynaldoMSFT_6-1709559589278.png","associationType":"BODY","width":693,"height":390,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNGlBNTA4NUI3QTlFODQ3QzI3?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNGlBNTA4NUI3QTlFODQ3QzI3?revision=12","title":"ReynaldoMSFT_7-1709559589280.png","associationType":"BODY","width":603,"height":671,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNmk5QzQ4Q0ExNjMxRUFBRUNB?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNmk5QzQ4Q0ExNjMxRUFBRUNB?revision=12","title":"ReynaldoMSFT_8-1709559602882.png","associationType":"BODY","width":975,"height":348,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwN2lCRjgwRjE1OUYzMzU1MDQx?revision=12\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwN2lCRjgwRjE1OUYzMzU1MDQx?revision=12","title":"ReynaldoMSFT_9-1709559616084.png","associationType":"BODY","width":602,"height":376,"altText":null},"BlogTopicMessage:message:3993785":{"__typename":"BlogTopicMessage","subject":"Clustering the BizTalk EntSSO Master Secret Server, SQL and MSDTC services on Azure IaaS","conversation":{"__ref":"Conversation:conversation:3993785"},"id":"message:3993785","revisionNum":12,"uid":3993785,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:1360055"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" Learn how to use BizTalk in highly available Azure VMs with clustered SQL, Enterprise Single Sign-on Master Secret Server and MSDTC services on Azure IaaS. \n   ","introduction":"","metrics":{"__typename":"MessageMetrics","views":2732},"postTime":"2024-03-04T08:48:36.802-08:00","lastPublishTime":"2024-07-12T12:34:00.939-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":"   \n   \n \n   \n   \n This article applies to BizTalk Server  2020 and SQL Server  2019. \n   \n While most of our current BizTalk Server customers are migrating to Azure Logic Apps, some customers are conducting a gradual hybrid migration to Azure, where they are running their BizTalk and Host Integration workloads in Azure leveraging Infrastructure as a Service (IaaS) capabilities. For them, we have prepared this article, to be able to cluster the Enterprise Single Sign-On Master Secret Server (EntSSO MSS) and Microsoft Distributed Transaction Coordinator (MSDTC) service on Azure virtual machines.  \n   \n The following are the general steps for this scenario: \n   \n \n Create 4 Virtual Machines (VMs) within the same VNET/SNET:\n \n 1 AD/DNS. \n 1 BizTalk Server 2020 VM. \n 2 SQL Server 2019 VMs for BizTalk DBs in traditional Failover Cluster Instance (FCI, preferred) or Always On Availability Groups, clustered MSS and MSDTC. \n \n \n Create Azure Internal Load Balancer (ILB) with Standard SKU. \n Create the SQL FCI with Azure Shared disks on SQL VMs \n Cluster MSDTC in SQL VMs, in the same Cluster Role (group) and per SQL instance if applicable. \n Cluster EntSSO in the same cluster role where SSODB resides. \n Install and configure BizTalk Server. \n \n   \n Create the AD/DNS, BizTalk 2020 and SQL 2019 VMs within the same VNet/Subnet: \n Because BizTalk Server, EntSSO and MSDTC services make highly use of RPC and HA ports, implementation of standard SKU for Azure Internal Load Balancer is recommended. You can also use the basic SKU. However, this will lead to additional rules in ILB configuration as basic SKU does not have HA ports option. MSDTC service works best with ping enabled and ping is good validation tool. The ILB basic SKU does not allow ping. Also basic SKU will be retired in 2025 and migrating later requires to move from basic IP to standard IP which requires NIC swap also. In short avoid Basic SKU and use Standard SKU to avoid problems and complexity.  \n   \n It is recommended fixing ports for all SQL, MSDTC and EntSSO services (We will cover this later). \n   \n For this scenario, we are going to implement the Standard SKU for ILB. \n   \n These are the general steps for configurations of the ILB: \n   \n \n 3 Static fronted IPs: 1 for the SQL FCI, 1 for SSO and 1 for MSDTC.  \n 1 Backend pool: 2 SQL FCI VMs for BizTalk DBs with the clustered EntSSO MSS and MSDTC services. \n 3 Health probe ports: 1 for the SQL FCI, 1 for SSO and 1 for MSDTC. \n 3 Health load balancing rules: 1 for the SQL FCI, 1 for SSO and 1 for MSDTC. \n \n   \n Create Internal Load Balancer (ILB) with Standard SKU. \n   \n Once the Azure Portal, search for “Load Balancers” resources >> click Create  and complete the basic information as follows: \n   \n \n   \n Click the Review + create button and after validation passes, click the Create button and wait until the ILB is created. \n   \n   \n For more information see Quickstart: Create an internal load balancer - Azure portal - Azure Load Balancer | Microsoft Learn \n   \n Add the fronted IP’s: \n   \n On the previously created Load Balancer >> Fronted IP Configuration and click Add. Create 3 Fronted IPs as detailed below: \n \n Add the SQL Server VM’s backend pools: \n   \n Now go to Load Balancer >> Backend polls and click Add for adding the two SQL Server VM’s: \n \n Now we need to add the Health probes for SQL Server instance, EntSSO and MSDTC. \n   \n Go to Settings >> Health probes \n \n   \n Click the “Add” button and then complete the configuration for the health probe: \n \n   \n Click Save \n   \n Repeat for MSDTCHealthProbe \n \n   \n And for SSOMSSHealthProbe \n \n   \n After adding all Health probes, we will have the following 3 health probes: \n \n Notice the ports and rules used by each Health probe. \n   \n Finally, we need to configure the Load balancing rules. \n   \n Go to Settings > Load balancing rules \n   \n Click the “Add” button and then complete the configuration for the each of the rules: \n \n \n This is the configuration for the SQL instance rule SQLMSSRule. Notice that the health probe SQLMSSHealthProbe is the one created on the previous set and uses port 59999. In addition, HA Ports and Floating IP are enabled. Floating IP is very important for cluster to work.  \n   \n \n This is the configuration for the MSDTC rule MSDTCRule. Notice that the health probe MSDTCHealthProbe is the one created on the previous steps and is using port 60000. In addition, HA Ports and Floating IP are enabled. \n   \n \n   \n This is the configuration for the Master Secret Server-Single Sign On rule SSOMSSRule. Notice that the health probe SSOMSSHealthProbe is the one created on the previous steps and is using port 49999. In addition, HA Ports and Floating IP are enabled. \n   \n After adding all the rules, we will have the following 3 Load balancing rules: \n \n   \n Create the SQL FCI with Azure Shared disks on SQL VMS \n For this scenario, we are going to use SQL FCI with Azure Shared Disks within a single subnet. We recommend to follow the steps in articles: Prepare virtual machines for an FCI - SQL Server on Azure VMs | Microsoft Learn and then Create an FCI with Azure shared disks - SQL Server on Azure VMs | Microsoft Learn \n Notice that because we need to bind it, the SQL Server FCI IP must be the same that the fronted IP for SQL Server we configure before (SQLMSSCluFIP) for the load balancer. \n If you want to implement AOAG you can also follow (after preparing the machines) related process on the same link). \n After creating the SQL FCI or AOAG you need to bind the IP Address ($ListenerILBIP of the below powershell) of the SQL instance or SQL listener (this will depend on your SQL configuration) with the ILB Fronted IP SQLMSSCluFIP created during previous steps for SQL and its probe port. For this action, running a Powershell script is needed: \n   \n   \n $ClusterNetworkName = \"Cluster Network 1\" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 or higher to find the name) \n $IPResourceName = \"SQL IP Address 1 (SQLMSSClu)\" # the IP Address cluster resource name \n $ListenerILBIP = \"192.0.1.8\" # the IP Address of the Internal Load Balancer (ILB). This is the static frontend IP address for the load balancer you configured in the Azure portal. \n [int]$ListenerProbePort = 59999 \n   \n Import-Module FailoverClusters \n   \n Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{\"Address\"=\"$ListenerILBIP\";\"ProbePort\"=$ListenerProbePort;\"SubnetMask\"=\"255.255.255.255\";\"Network\"=\"$ClusterNetworkName\";\"EnableDhcp\"=0;\"EnableNetBIOS\"=1} \n   \n \n Notice that you need to restart the cluster role so the changes take effect. \n   \n In your Failover cluster manager, it will look like this: \n   \n \n   \n Once this step is completed we can continue with: \n Clustering the SSO Service and MSDTC within the same Cluster Group for SQL VMS: \n In this scenario, we are going to cluster the SSO and MSDTC on the same SQL FCI cluster. \n For more information refer to the following link: \n Clustering MSDTC: \n Important: for MSDTC service we recommend creating a dedicated clustered instance per DB cluster role (group) in case you have multiple clustered SQL instances. You avoid extra network roundtrips and you spread the load as well. In this case, we have all DBs in the same clustered SQL instance. \n \n As we did for SQL, we need to deploy an Azure Standard shared SSD. Because DTC service does not consume too many resources, for this scenario we attached a 4GB Standard Azure Manage Disk.   \n \n   \n Enable shared disks for Azure managed disks - Azure Virtual Machines | Microsoft Docs \n After that, go to Failover Cluster Manager, create a new role and in the “Select Role” section, select Distributed Transaction Coordinator (DTC) and then click Next. \n \n   \n In the Client Access Point section, give a name for your clustered role. \n \n   \n Select the disk configured on the previous step. \n \n   \n Click Next on confirmation page \n \n   \n Your role is successfully clustered. Click Finish. \n \n   \n You can also refer to the following link for more information: MSDTC – How to Cluster – Raspberryfield – IT, video games and comics \n   \n   \n We will now see something like this on our DTC Role resources tab: \n \n   \n \n   \n For fixing it, we need to bind the ILB Fronted IP MSDTCCluFIP created during previous steps of the MSDTC and its probe port. For this action, running a Powershell script is needed. \n $ClusterNetworkName = \"Cluster Network 1\" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 or higher to find the name) \n $IPResourceName = \"IP Address 192.0.1.0\" # the IP Address resource name \n $ListenerILBIP = \"192.0.1.9\" # the IP Address of the Internal Load Balancer (ILB). This is the static IP address for the load balancer you configured in the Azure portal. \n [int]$ListenerProbePort = 60000 \n   \n Import-Module FailoverClusters \n   \n Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{\"Address\"=\"$ListenerILBIP\";\"ProbePort\"=$ListenerProbePort;\"SubnetMask\"=\"255.255.255.255\";\"Network\"=\"$ClusterNetworkName\";\"EnableDhcp\"=0;\"EnableNetBIOS\"=1} \n   \n \n   \n Notice that this time no restart of the role was needed. \n \n   \n   \n Now we can see our role running successfully. Notice the IP Address properties. \n \n   \n Move the resources across nodes and validate functionality on both nodes. \n   \n \n Create the cluster role with fixed ports for MSDTC service. It is recommended to fix ports in order to avoid port exhaustion and  facilitate monitoring, tracing and firewall tasks. \n \n   \n Fixing the MSDTC ports: \n For local MSDTC node, we need to set it in local registry: \n HKLM\\Software\\Microsoft\\MSDTC\\[ServerTcpPort] (DWORD (32-bit) Value) \n   \n Details: How to Configure MSDTC to Use a Specific Port in Windows Server 2012/2012R2 | Microsoft Learn \n   \n How to configure the MSDTC service to listen on a specific RPC server port | Microsoft Learn \n   \n For clustered MSDTC we need to set it in clustered registry: \n HKLM\\Cluster\\Resources\\{Unique_DTC_ResourceID_GUID}\\MSDTCPRIVATE\\MSDTC\\[ServerTcpPort] (DWORD (32-bit) Value) \n   \n More information: \n MSDTC Supported Configurations - Microsoft Community Hub \n Clustering Master Secret Server: \n \n Install and configure Enterprise SSO on the SQL cluster nodes (this scenario). When installing it, be sure to move the MSDTC service on the node you are installing the SSO. \n Start the Custom BizTalk Server configuration on each SQL Server node, first node to create the SSO DB and second node to join it to it. As above, be sure to move the MSDTC service to the node where you are performing the configuration. \n Create the clustered Enterprise SSO resource and the dependent resources within the cluster where MSDTC role was created. \n \n \n   \n After the role is created within the cluster, we need to bind the ILB Fronted IP SSOMSSFIP created on previous steps for the clustered SSO and its probe port. For this action, running a Powershell script is needed: \n $ClusterNetworkName = \"Cluster Network 1\" # the cluster network name (Use Get-ClusterNetwork on Windows Server 2012 or higher to find the name) \n $IPResourceName = \"IP Address 192.0.1.0 (2)\" # the IP Address resource name \n $ListenerILBIP = \"192.0.1.11\" # the IP Address of the Internal Load Balancer (ILB). This is the static IP address for the load balancer you configured in the Azure portal. \n [int]$ListenerProbePort = 49999 \n   \n Import-Module FailoverClusters \n   \n Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{\"Address\"=\"$ListenerILBIP\";\"ProbePort\"=$ListenerProbePort;\"SubnetMask\"=\"255.255.255.255\";\"Network\"=\"$ClusterNetworkName\";\"EnableDhcp\"=0;\"EnableNetBIOS\"=1} \n   \n \n   \n   \n If you ping from the BizTalk VM to the SSOCLU DNS you must obtain a reply. \n   \n \n   \n   \n   \n \n Update the master secret name in the Management database. \n \n \n   \n \n Restore the master secret on the second cluster node. If you move the master secret server to the cluster, you must restore the master secret on the first cluster node as well. \n Bring the cluster group that contains the SSO service online. \n Fix ports for SSO Service on all nodes: we need to run the following command: \n \n   \n \"%CommonProgramFiles%\\Enterprise Single Sign-On\\ssoconfig.exe\" -rpcport 30000 \n   \n Basic steps: Clustering the Master Secret Server - BizTalk Server | Microsoft Learn \n Details: How to Cluster the Master Secret Server1 - BizTalk Server | Microsoft Learn \n   \n   \n Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{\"Address\"=\"$ListenerILBIP\";\"ProbePort\"=$ListenerProbePort;\"SubnetMask\"=\"255.255.255.255\";\"Network\"=\"$ClusterNetworkName\";\"EnableDhcp\"=0;\"EnableNetBIOS\"=1} \n   \n We can now install and configure the BizTalk Server Application on the BizTalk VM and on the SQL Server Instance created before. \n \n Install BizTalk Server on the client node. Install BizTalk Server 2020 - BizTalk Server | Microsoft Learn \n Configure BizTalk Server on the client node joining it to the existing SSO system which was created on previous steps. Configure using Basic or Custom configuration - BizTalk Server | Microsoft Learn \n \n   \n It is very important that the health probe port is unique and not in use on both nodes and that the health probe setting matches the setting in the clustered IP address. If e g you set health probe to port 135 Azure ILB will find both backend servers to be possible online services and will then send random traffic to both nodes, which will not work in clustered scenario where all traffic needs to go to a single node.  \n   \n In production loads, it is recommended to have higher performance disk SKUs for all disks (OS disk, SQL data disks, MSDTC data disks) to avoid throttling and performance issues. When you migrate from on-prem SAN to Azure it is essential to measure the disk performance to ensure that you have same or better disk speed. For some really high loads you may need 10+ high performance Azure data disks in your SQL cluster. You can use tools like DiskSpd to compare your current SAN disk with Azure disk speed.  \n   \n While this article discusses how to make SQL, EntSSO, MSDTC and BizTalk highly available in Azure VMs, the same applies to Message Queueing (MSMQ) where you can use also Azure Shared disk with Azure ILB in the same way to get a clustered MSMQ instance.  \n   ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"15013","kudosSumWeight":4,"repliesCount":1,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1ODY2MGlFOTdDNTRDODgzMzgzMjZD?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MGkwM0M5NEIxMDY4OEQxMjZE?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4MWlFMDNCOUJGNjQxQzUwMjYx?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4Mmk2MDUyQTE0MUQ3MUIzRjY0?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4M2lFMUQxQjRDQjFCMjFCNTIx?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NGkyQzk4QjRDNTFBOTQwMDlC?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDc","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4NWkzNTczNzRBQjY1NkZFRUMx?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDg","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4N2kwMTk1OUQwMTE0QkU2MzBD?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDk","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OGk5OTNENzlCNEZCRUVEMjE0?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY4OWk3QjAyQkRBODZBMTI4QkNE?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEx","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MWk2OTMyNjIzMDg4RUNFRjIy?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEy","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5MmkyRjg4NDk0NjExRjExMkFC?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEz","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5M2lBMjEwOTYzMzI2QUY1Rjg1?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE0","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NGlDNjYyQjhDRkFCMDQ2REU2?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE1","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5NmkxNEQxMEEzREE1MzAwNEFC?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE2","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OWlBRERBN0FDRTFEMTYxMEZF?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE3","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzY5OGk5MkUzRTM2QTY1NDYwMDU3?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE4","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMWk3REFDMDA1QzVEMzI5MTVE?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE5","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMGlGNzk0NjIyQ0QzN0ExOEU4?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDIw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwMmk1QzY0RjE0NTVBRDZBNkVG?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDIx","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwM2lGNTY3OUUwNDhFRTc1MDU1?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDIy","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNWk2MjRENTZCMzVENzg3Mjg1?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDIz","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNGlBNTA4NUI3QTlFODQ3QzI3?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI0","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwNmk5QzQ4Q0ExNjMxRUFBRUNB?revision=12\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI1","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zOTkzNzg1LTU1NzcwN2lCRjgwRjE1OUYzMzU1MDQx?revision=12\"}"}}],"totalCount":30,"pageInfo":{"__typename":"PageInfo","hasNextPage":true,"endCursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI1","hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:4000322":{"__typename":"Conversation","id":"conversation:4000322","topic":{"__typename":"BlogTopicMessage","uid":4000322},"lastPostingActivityTime":"2023-12-05T09:41:48.951-08:00","solved":false},"User:user:563458":{"__typename":"User","uid":563458,"login":"EmmanuelAbramProfeta","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/m_assets/avatars/default/avatar-11.svg?time=0"},"id":"user:563458"},"BlogTopicMessage:message:4000322":{"__typename":"BlogTopicMessage","subject":"BizTalk Server 2020 Cumulative Update 5","conversation":{"__ref":"Conversation:conversation:4000322"},"id":"message:4000322","revisionNum":1,"uid":4000322,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:563458"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" BizTalk Server 2020 CU5 is available for download. ","introduction":"","metrics":{"__typename":"MessageMetrics","views":2407},"postTime":"2023-12-05T09:41:48.951-08:00","lastPublishTime":"2023-12-05T09:41:48.951-08:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" CU5 for BizTalk Server 2020 is now available for download.  \n For details on fixes and download link, please follow the master KB: \n https://support.microsoft.com/help/5032870   \n   \n You may want to bookmark this index page for updates related to BizTalk Server: \n https://support.microsoft.com/help/2555976  \n   \n As with CU4, the EN download is available by default. All other language packages will be made available on need basis. If a download is not available for the supported BizTalk language that you need, please contact us for the same. \n   \n As a quick reminder, for BizTalk Developer Tools please also update/install version 3.13.2.0 of the BizTalk Server Visual Studio extension in addition to installing the CU package. The extension can be installed from https://marketplace.visualstudio.com/items?itemName=ms-biztalk.BizTalk or from within Visual Studio - Manage Extensions. Please note that we have not updated the extension since CU1 so you can skip this step if you have already installed it previously. ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"1091","kudosSumWeight":1,"repliesCount":0,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:3060917":{"__typename":"Conversation","id":"conversation:3060917","topic":{"__typename":"BlogTopicMessage","uid":3060917},"lastPostingActivityTime":"2023-06-23T08:27:52.887-07:00","solved":false},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MGlCRjFGM0MxOENDQTA2MTA0?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MGlCRjFGM0MxOENDQTA2MTA0?revision=32","title":"IntegratedHighLevel.png","associationType":"TEASER","width":1665,"height":704,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MWk5MDEzNEIyQjY2RUE0QzQz?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MWk5MDEzNEIyQjY2RUE0QzQz?revision=32","title":"IntegratedHighLevel.png","associationType":"BODY","width":1665,"height":704,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MmkyQkFEQkIxNEE5N0ZGNjY5?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MmkyQkFEQkIxNEE5N0ZGNjY5?revision=32","title":"PropertySchema.png","associationType":"BODY","width":761,"height":199,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4M2lCMjE5NTMyMTMyQzI3RjMz?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4M2lCMjE5NTMyMTMyQzI3RjMz?revision=32","title":"PromotedProperties.png","associationType":"BODY","width":1360,"height":492,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4NmkyNTZDRTdCNjBEQUMwNjEz?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4NmkyNTZDRTdCNjBEQUMwNjEz?revision=32","title":"CorrelationSet.png","associationType":"BODY","width":806,"height":736,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4N2kwMjMyNzgyNkJEQ0Q1NUQ0?revision=32\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4N2kwMjMyNzgyNkJEQ0Q1NUQ0?revision=32","title":"BAPIBatchSplittingOrchestration.png","associationType":"BODY","width":1347,"height":1448,"altText":null},"BlogTopicMessage:message:3060917":{"__typename":"BlogTopicMessage","subject":"Custom Splitting of SAP BAPIs in BizTalk 2020 - Part 2","conversation":{"__ref":"Conversation:conversation:3060917"},"id":"message:3060917","revisionNum":32,"uid":3060917,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:563458"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" In this second part of the series on custom splitting of BAPI transactions in the WCF-SAP adapter, we consider a variation of the previous scenario whereby BAPI contexts are now assigned at the group level. \n   \n ","introduction":"","metrics":{"__typename":"MessageMetrics","views":3249},"postTime":"2022-01-26T10:04:27.915-08:00","lastPublishTime":"2023-06-23T08:27:52.887-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" Introduction \n   \n This blog post is the second part of a series that started with Custom Splitting of SAP BAPIs in BizTalk 2020 - Part 1 (which will be referred to simply as \"Part 1\"), on the topic of the new support for custom grouping of BAPI transactions in the WCF-SAP adapter. This recent feature lets BizTalk application implementations specify how to group BAPI transactions, by exposing the new writable built-in property BAPIContextId. Previously, the only supported grouping was based on a common interchange id, which meant for example that messages in the same batch had to be mapped to the same LUW on the SAP adapter. \n   \n In the first post, we looked at the \"custom\" aspect in custom grouping: by assigning a unique BAPIContextId value to each BAPI transaction message within the same batch, it was possible to commit each transaction independently. In this post, we look at the \"grouping\" aspect of the improvement by extending the initial scenario of part 1 to a situation where message batches contain groups of BAPI transactions within. The idea of the scenario is to assume that batches could contain the same BAPI operation (like creating an order) hundreds of times but for different customers, some having more orders than others. Without BAPIContextId, it would have been difficult to implement. With the new property, the simplified implementation of Part 1 can be leveraged with minor changes to schemas, custom pipeline component and orchestration, which remain the same for the most part. \n   \n Note: Familiarity with Part 1 is recommended.  \n   \n Updated Scenario \n   \n The bulk of the scenario implementation being the same as the one presented in detail in Part 1, implementing support for groups within batches requires the following modifications: \n   \n 1. Messages within a batch are grouped based on a common field, BatchId. \n 2. Grouping is done in the custom pipeline component by assigning the same BAPIContextId to messages in the same group. \n 3. Messages within a group are processed by the same orchestration instance, which corresponds to the same LUW on the SAP server. \n 4. Each orchestration instance processes all messages in the same group until the last message is received. \n   \n These differences are shown in the following message flow diagram: \n   \n \n   \n Change #1: Introduce a property schema for promoted properties \n   \n Messages within a batch are grouped based on a common field, BatchId (i.e., group id within a batch). An additional field, IsLastInBatch, is used as a sentinel value to indicate the last message of the group, which is not necessarily the last message in the batch. Both properties are in a property schema, type documented in Property Schemas. \n   \n \n   \n The property schema base of BatchId is the default, MessageDataPropertyBase. As we will see later, this property needs to be explicitly promoted in the custom receive pipeline as it is used as correlation in the orchestration.  \n   \n The property schema base of IsLastInBatch is set to MessageContextPropertyBase instead of the default, which gives the following advantages to IsLastInBatch (cf. BizTalk Property promotion in receive pipeline for an exhaustive list):  \n   \n \n It is carried over to the context of CREATEFROMDAT2 messages, which do not (nor need to) contain such a field in their data. \n It can attach to every message, for instance when constructing and copying CREATEFROMDAT2 messages inside the orchestration. \n It is promoted in the receive pipeline. \n It will be copied to the new mapped message in the receive port mapping. \n \n The latter point was already mentioned in Part 1 for the BAPIContextId: receive port mapping copies all the context property values of the original message to the new mapped message. \n   \n In the Order schema, BatchId and IsLastInBatch are promoted as property fields according to the process explained in How to Copy Data to the Message Context as Property Fields and summarized below. \n   \n \n   \n Change #2: Update the custom pipeline component \n   \n Inside a received batch (Orders message), each disassembled Order message can be one of the following: \n   \n \n If BatchId is null or empty, the message is not in any group. \n If BatchId is not empty and IsLastInGroup is not provided or is set to false, the message is in a group but is not the last. \n If BatchId has a value and IsLastInGroup is true, the message is the last one in the group. \n \n The value of BAPIContextId is the same for each Order within the same group. Messages which are not in any group are assigned a unique BAPIContextId in the same way as in Part 1. \n   \n The corresponding pipeline component code is shown below. Differences with the original code from Part 1 are highlighted. \n   \n \n \n \n \n const string SystemPropertiesSchema = \"http://schemas.microsoft.com/BizTalk/2003/system-properties\"; \n string interchangeId = (string)mBaseMessage.Context.Read(\"InterchangeID\", SystemPropertiesSchema); \n int interchangeSequenceNumber = (int)mBaseMessage.Context.Read(\"InterchangeSequenceNumber\", SystemPropertiesSchema); \n   \n string batchId = (string)mBaseMessage.Context.Read(\"BatchId\", \"https://SapBAPITxClientDebatching.PropertySchema1\"); \n   \n string bapiContextId = string.IsNullOrEmpty(batchId) \n     ? interchangeId + interchangeSequenceNumber // If there is no batch id, just set BAPIContextId unique per message \n     : interchangeId + batchId; // If batchId is provided, let's make it unique per group  \n   \n // Promote BAPIContextId context property in order to use it as correlation in the orchestration mBaseMessage.Context.Promote(\"BAPIContextId\", \"http://Microsoft.LobServices.Sap/2007/03/SapSendContextProperties\", bapiContextId); \n   \n bool isLastInBatch = true; // By default first assume that each message is by itself if (!string.IsNullOrEmpty(batchId)) {     // if a batch id is provided, let's see if this message is the last.     isLastInBatch = (bool)mBaseMessage.Context.Read(\"IsLastInBatch\", SystemPropertiesSchema); } \n   \n // Write the IsLastInBatch property to the message context. No need to promote it explicitly here. mBaseMessage.Context.Write(\"IsLastInBatch\", \"https://SapBAPITxClientDebatching.PropertySchema1\", isLastInBatch); \n   \n // Set recoverability to true for the mapping phase in case the receiver wants to transform from client to BAPI in the RL. mBaseMessage.Context.Write(\"SuspendMessageOnMappingFailure\", SystemPropertiesSchema , true); \n \n \n \n \n   \n BAPIContextId set to interchange id + batchId is unique per group within the same batch. Note that it would be easy to support groups potentially spanning multiple batches by simply setting BAPIContextId to something unique to the group regardless of the batch in which it is received.  \n   \n Change #3: Assign the same orchestration instance to each group \n   \n Once the CREATEFROMDAT2 messages produced by the receive location are published to the message box, we need some way to make sure that all messages in the same group are processed by the same orchestration instance. In the same way as in Walkthrough: Correlations in BizTalk Orchestration and SAP BAPI Transactions Walkthrough, this is achieved by setting the orchestration correlation set to the promoted context property used to group messages, namely BAPIContextId. \n   \n \n   \n Change #4: Process sequential convoys in the orchestration \n   \n The following changes were made to the orchestration of Part 1 for convoy processing: \n   \n 1. Add ordered delivery to the receive port (see Ordered Delivery of Messages in BizTalk Server for more info) to make sure the last message in a group is processed last. \n 2. Listen shape to process subsequent messages in the same group.  \n 3. Delay shape to suspend the orchestration instance as resumable if the last message in a group has not been received within a pre-determined period of time. It is a simplistic way to set some boundary on the processing for demo purposes and there are alternatives beyond the scope of this scenario (for instance, if the LastInterchangeMessage property is found true in the receive pipeline, assume that each active orchestration instance has seen all messages in the same group). \n   \n Details on the orchestration implementation are presented in the following diagram.  \n   \n \n   \n Concluding Remarks \n   \n This concludes the two-part series on BAPIContextId. The new property was announced in Support for custom grouping of BAPI transactions in the WCF-SAP adapter and the goal here was to show that there is more to it than meets the eye. \n In our scenarios, BAPIContextId is used \"upstream\" of the processing to bundle BAPI transactions ahead of time, but other scenarios come to mind, such as resubmitting suspended messages and simpler error handling in scenarios such as the one presented in Recovering SAP BAPI Transactions with Custom Pipelines. \n   \n Code and implementation artifacts are provided in the attached archive. \n   \n References \n   \n Custom Splitting of SAP BAPIs in BizTalk 2020 - Part 1 \n Improvement: Support for custom grouping of BAPI transactions in the WCF-SAP adapter \n BizTalk Server 2020 CU3 \n SAP BAPI Transactions Walkthrough \n Walkthrough: Correlations in BizTalk Orchestration \n Property Schemas \n BizTalk Property promotion in receive pipeline \n How to Copy Data to the Message Context as Property Fields \n Sequential Convoys \n Ordered Delivery of Messages in BizTalk Server \n   ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"9904","kudosSumWeight":0,"repliesCount":0,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MGlCRjFGM0MxOENDQTA2MTA0?revision=32\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MWk5MDEzNEIyQjY2RUE0QzQz?revision=32\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4MmkyQkFEQkIxNEE5N0ZGNjY5?revision=32\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4M2lCMjE5NTMyMTMyQzI3RjMz?revision=32\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4NmkyNTZDRTdCNjBEQUMwNjEz?revision=32\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwOTE3LTMzOTM4N2kwMjMyNzgyNkJEQ0Q1NUQ0?revision=32\"}"}}],"totalCount":6,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:3060893":{"__typename":"Conversation","id":"conversation:3060893","topic":{"__typename":"BlogTopicMessage","uid":3060893},"lastPostingActivityTime":"2023-06-23T08:27:47.851-07:00","solved":false},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3MWlGMTUyMzMzQkNEMTY1MEE3?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3MWlGMTUyMzMzQkNEMTY1MEE3?revision=48","title":"IntegratedHighLevel.png","associationType":"TEASER","width":1318,"height":536,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ0NWk4RDk0QzFENkJEQThFNzlE?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ0NWk4RDk0QzFENkJEQThFNzlE?revision=48","title":"Debatching.png","associationType":"BODY","width":743,"height":351,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ5M2lGQ0VGN0Y0QTZCQTg0RDM3?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ5M2lGQ0VGN0Y0QTZCQTg0RDM3?revision=48","title":"Map.png","associationType":"BODY","width":780,"height":199,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM2OGlEQzFEOTdDREEwNTZDQUVE?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM2OGlEQzFEOTdDREEwNTZDQUVE?revision=48","title":"IntegratedHighLevel.png","associationType":"BODY","width":1318,"height":536,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3Mmk5NzlCM0E0RkM2MkQ1NTUy?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3Mmk5NzlCM0E0RkM2MkQ1NTUy?revision=48","title":"PipelineComponentCode.png","associationType":"BODY","width":1921,"height":1320,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3N2lDN0JFNjUzMTA4OEJCMUU4?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3N2lDN0JFNjUzMTA4OEJCMUU4?revision=48","title":"ToolboxCustomPipelineComponent.png","associationType":"BODY","width":1699,"height":840,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3M2kyRTkxRUQxMTFDOTBBMjk1?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3M2kyRTkxRUQxMTFDOTBBMjk1?revision=48","title":"CustomPipelineComponentDetails.png","associationType":"BODY","width":1525,"height":1003,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDU4NWlFRDM3QTM4QURDN0E4Njg4?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDU4NWlFRDM3QTM4QURDN0E4Njg4?revision=48","title":"MapAndRP.png","associationType":"BODY","width":1199,"height":661,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3NmkxMTBEMEEwNkZBQzdEREQx?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3NmkxMTBEMEEwNkZBQzdEREQx?revision=48","title":"BAPIRIPOrchestration.png","associationType":"BODY","width":1075,"height":1022,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNWk3ODY0QzdCNDk3MUY2ODVB?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNWk3ODY0QzdCNDk3MUY2ODVB?revision=48","title":"Article1ConsumeAdapterServiceRedux.png","associationType":"BODY","width":1477,"height":929,"altText":null},"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNmk5ODIyODM5OURCMDA1MUNC?revision=48\"}":{"__typename":"AssociatedImage","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNmk5ODIyODM5OURCMDA1MUNC?revision=48","title":"CreateEnvelopeSchemaREDUX.png","associationType":"BODY","width":1314,"height":1285,"altText":null},"BlogTopicMessage:message:3060893":{"__typename":"BlogTopicMessage","subject":"Custom Splitting of SAP BAPIs in BizTalk 2020 - Part 1","conversation":{"__ref":"Conversation:conversation:3060893"},"id":"message:3060893","revisionNum":48,"uid":3060893,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:563458"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" \n Since 2020 CU3, BAPI transactions can be arbitrarily mapped to the same Logical Unit of Work (LUW) on the SAP server based on the value of the new property, BAPIContextId. It can greatly simplify the implementation of some complex scenarios. ","introduction":"","metrics":{"__typename":"MessageMetrics","views":3227},"postTime":"2022-01-19T10:47:30.758-08:00","lastPublishTime":"2023-06-23T08:27:47.851-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":"   \n Introduction \n   \n A long-awaited improvement to the WCF-SAP adapter was recently introduced in BizTalk Server 2020 CU3: Support for custom grouping of BAPI transactions in the WCF-SAP adapter. It means that BAPI transaction messages can now be arbitrarily mapped to the same Logical Unit of Work (LUW) on the SAP server based on the value of the new property, Microsoft.Adapters.SAP.BiztalkPropertySchema.BAPIContextId. Previously, the grouping of BAPI transactions in the same context was always based on the message interchange id (which is still the default behavior), as has been extensively covered in Handling Errors in SAP BAPI Transactions and related posts. \n   \n Custom grouping can greatly simplify the implementation of some complex scenarios. In this first of two posts on the topic, we pick up where Recovering SAP BAPI Transactions with Custom Pipelines left off and look at how to support Recoverable Interchange Processing (RIP) with BAPI transactions when the \"one-fails/all-fail\" behavior could be cost-prohibitive. For instance, when a batch contains hundreds of transactions, if the BAPI transactions are unrelated and can be processed independently, it should be possible to keep the processing going rather than letting all messages/orchestration instances be suspended for some invalid field in one out of many transactions. As demonstrated in Handling Errors in SAP BAPI Transactions, it is complicated to achieve. \n   \n Thanks to the new property BAPIContextId though, it turns out that batches of BAPI requests can be split into independent \"auto-commit\" transactions, thereby providing a simpler way to add recoverability to batches of BAPI transactions. It is like reintroducing the \"COMMIT WORK\" to the BAPI Transaction Model (Without Commit). \n   \n A word on terminology. In what follows, a \"batch\" means a single inbound message arriving at a receive location and split into multiple messages. This is known as the Splitter design pattern and has been covered extensively. \n   \n 1. Scenario \n   \n Prerequisites: Section 1 of Recovering SAP BAPI Transactions with Custom Pipelines, which presents BAPI Operations and envelope schemas. The same info has been reproduced in the appendix sections at the end of this post.  \n   \n A receive location splits sales orders received under the form of XML documents and then maps each order to a BAPI Sales Order (BUS2032) creation transaction BUS2032.CREATEFROMDAT2 (shortened to CREATEFROMDAT2 in the rest of this article). BAPI schemas are created as shown in Appendix A. Orders is an envelope schema created by following the steps presented in Appendix B. \n   \n \n \n \n Received documents are disassembled... \n and then mapped to CREATEFROMDAT2 \n \n \n \n \n \n \n \n   \n The overall message flow is depicted below. \n   \n \n The various stages consist of the following, in chronological order: \n   \n Receive locations (steps 1, 2): \n \n Orders are split into single Order messages. \n A unique value for the built-in BAPIContextId property is assigned to each Order by a custom pipeline component. \n Order messages are mapped to CREATEFROMDAT2, with the BAPIContextId property transferred to the message context. \n CREATEFROMDAT2 messages are published to the message box. \n \n Orchestration instances (steps 3, 4):  \n The orchestration's purpose is to turn each BAPI transaction into an \"auto commit\" transaction. For each published message, an orchestration instance takes care of the following: \n \n Forward published CREATEDAT2 message to WCF-SAP send port. \n Create and publish a BAPI_TRANSACTION_COMMIT.  \n \n Finally, the send port (steps 5, 6) sends the BAPI transactions to the SAP server. We look at the details of each of the steps next. \n   \n 2. Receive Location \n   \n 2.1 Pipeline Component Code \n   \n Most of the implementation complexity resides in the custom pipeline component code, whose main purpose is to assign a unique BAPIContextId to each disassembled message.  The pipeline code is based on a reusable pattern introduced in the WCF LOB Adapter SDK. A class called NotifyingStream designed as a decorator of the Stream class, is used to invoke callbacks for specific events corresponding to when the stream is read. In our case, the custom pipeline component receives a notification when the entire stream has been read, thereby guaranteeing that all promoted properties from the message have been populated to the message context.  \n   \n \n The following code sets the BAPIContextId value to a unique value (interchange id + interchange sequence number). Separately, the property SuspendMessageOnMappingFailure is set to add RIP behavior to the subsequent mapping phase in the receive port, as documented in Mapping Phase (Recoverable Interchange Processing). \n   \n \n \n \n \n string interchangeId = (string)mBaseMessage.Context.Read(\"InterchangeID\", \n     \"http://schemas.microsoft.com/BizTalk/2003/system-properties \"); int interchangeSequenceNumber = (int)mBaseMessage.Context.Read(\"InterchangeSequenceNumber\", \n     \"http://schemas.microsoft.com/BizTalk/2003/system-properties \"); mBaseMessage.Context.Write(\"BAPIContextId\", \n     \"http://Microsoft.LobServices.Sap/2007/03/SapSendContextProperties \", interchangeId + interchangeSequenceNumber); \n mBaseMessage.Context.Write(\"SuspendMessageOnMappingFailure\", \"http://schemas.microsoft.com/BizTalk/2003/system-properties \", true); \n \n \n \n \n   \n 2.2 Installing the pipeline component \n   \n In order to use it in the pipeline designer, the custom component was installed according to Deploying Custom Pipeline Components, illustrated below. \n   \n \n The new component can then be selected from the pipeline designer toolbox. \n   \n 2.3 Creating the custom pipeline in the BizTalk solution \n   \n The custom pipeline, created in the pipeline designer hosted in Visual Studio, comprises the default XML disassembler and validator. The new pipeline component from the previous section is inserted after the default validator. RIP is set in the configuration of XML disassembler and validator in order to allow processing to go on if some messages within a batch fail any validation. Schemas and envelope schemas are left blank, since BizTalk automatically resolves the envelope and inner schemas from the messages. Note that BAPIContextId will provide RIP later on, in the orchestration stage. \n   \n The process is identical to the one presented in Recovering SAP BAPI Transactions with Custom Pipelines: \n   \n \n Once the BizTalk application is deployed, the pipeline is ready to be used in the receive location settings as receiving pipeline. \n   \n 2.4 Transformation of Order to CREATEFROMDAT2 in the receive location \n   \n The following map is created in the BizTalk solution and added to the receive port properties. \n   \n \n   \n \n \n \n It is important to note that by mapping in the receive port, BAPIContextId and all other context properties values of the original message (Order) will be copied to the new mapped message (CREATEFROMDAT2). The difference between receive port mapping and orchestration mapping is explained in Message Context and Mapping Inside an Orchestration.  \n \n \n \n   \n 3. Orchestration \n   \n The main purpose of the orchestration is to send a BAPI_TRANSACTION_COMMIT after each CREATEFROMDAT2 message. \n The bulk of the work being done in the receive location, the orchestration implementation is pretty minimal, as shown below. \n   \n \n   \n There is one orchestration instance per CREATEFROMDAT2 message, and messages are processed independently, in parallel. So, orchestration instances can be suspended without affecting other messages. \n   \n 4. Concluding Remarks \n   \n We can control which BAPI transactions go together by setting the new built-in context property BAPIContextId*. So far, we have seen the two ends of the spectrum in terms of batch processing: \n \n Default processing (BAPIContextId not set). \n Unique BAPIContextId for each message. \n \n In part 2 we will cover the middle ground: groups of transactions within batches. \n   \n * Up to a certain point. BAPI transactions are still required to be sent by the same port. \n   \n Code and implementation artifacts are provided in the attached archive. \n   \n Appendix A: BAPI Operations and Schemas \n   \n Schemas and metadata for BAPI transactions are downloaded from the SAP server by using the \"Consume Adapter Service\" in Visual Studio, as explained in this section of the SAP Adapter documentation. \n   \n The figure below, taken from SAP BAPI Transactions Walkthrough, depicts the process to generate schemas for the BAPI methods BUS2032.CREATEFROMDAT2 (shortened to CREATEFROMDAT2 in the rest of this article) and BAPI_TRANSACTION_COMMIT, used in the demo scenario.  \n   \n \n   \n Appendix B: Envelope Schemas \n   \n The figure below, taken from Recovering SAP BAPI Transactions with Custom Pipelines, shows the non-trivial process for creating an Orders envelope schema after creating the Order schema. \n   \n   \n \n   \n References \n   \n BizTalk Server 2020 CU3 \n Improvement: Support for custom grouping of BAPI transactions in the WCF-SAP adapter \n SAP BAPI Transactions Walkthrough \n Recovering SAP BAPI Transactions with Custom Pipelines \n Handling Errors in SAP BAPI Transactions \n Splitter Messaging Pattern \n Custom Splitting of SAP BAPIs in BizTalk 2020 - Part 2 \n   \n BAPI in BizTalk \n Operations on BAPIs in SAP \n Run BAPI Transactions in SAP using BizTalk Server \n Get Metadata for SAP Operations in Visual Studio \n Browse, search, and retrieve metadata from SAP for BAPI operations \n Message Schemas for BAPI Operations \n   \n Pipelines/Maps \n Deploying Custom Pipeline Components \n Recoverable Interchange Processing \n Mapping Phase (Recoverable Interchange Processing) \n Message Context and Mapping Inside an Orchestration \n   ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"10302","kudosSumWeight":0,"repliesCount":0,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDE","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3MWlGMTUyMzMzQkNEMTY1MEE3?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDI","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ0NWk4RDk0QzFENkJEQThFNzlE?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDM","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDQ5M2lGQ0VGN0Y0QTZCQTg0RDM3?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDQ","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM2OGlEQzFEOTdDREEwNTZDQUVE?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDU","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3Mmk5NzlCM0E0RkM2MkQ1NTUy?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDY","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3N2lDN0JFNjUzMTA4OEJCMUU4?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDc","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3M2kyRTkxRUQxMTFDOTBBMjk1?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDg","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDU4NWlFRDM3QTM4QURDN0E4Njg4?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDk","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTMzOTM3NmkxMTBEMEEwNkZBQzdEREQx?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEw","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNWk3ODY0QzdCNDk3MUY2ODVB?revision=48\"}"}},{"__typename":"AssociatedImageEdge","cursor":"MjUuMXwyLjF8b3wyNXxfTlZffDEx","node":{"__ref":"AssociatedImage:{\"url\":\"https://techcommunity.microsoft.com/t5/s/gxcuf89792/images/bS0zMDYwODkzLTM0MDEzNmk5ODIyODM5OURCMDA1MUNC?revision=48\"}"}}],"totalCount":11,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:2690065":{"__typename":"Conversation","id":"conversation:2690065","topic":{"__typename":"BlogTopicMessage","uid":2690065},"lastPostingActivityTime":"2023-06-23T08:27:36.397-07:00","solved":false},"BlogTopicMessage:message:2690065":{"__typename":"BlogTopicMessage","subject":"BizTalk Server 2016 Cumulative Update 9","conversation":{"__ref":"Conversation:conversation:2690065"},"id":"message:2690065","revisionNum":4,"uid":2690065,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:563458"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":" CU9 for BizTalk Server 2016 is available for download. ","introduction":"","metrics":{"__typename":"MessageMetrics","views":5105},"postTime":"2021-08-26T14:21:09.194-07:00","lastPublishTime":"2023-06-23T08:27:36.397-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" CU9 for BizTalk Server 2016 is now available for download. \n For details on fixes and download link, please follow the master KB: \n https://support.microsoft.com/help/5005479 \n   \n You may want to bookmark this index page for updates related to BizTalk Server: \n https://support.microsoft.com/help/2555976  \n   \n As with previous cumulative updates, the EN download is available by default. All other language packages will be made available on need basis. If a download is not available for the supported BizTalk language that you need, please contact us for the same. ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"591","kudosSumWeight":2,"repliesCount":4,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"Conversation:conversation:2280848":{"__typename":"Conversation","id":"conversation:2280848","topic":{"__typename":"BlogTopicMessage","uid":2280848},"lastPostingActivityTime":"2023-06-23T08:27:30.919-07:00","solved":false},"User:user:566970":{"__typename":"User","uid":566970,"login":"NehaGupta","registrationData":{"__typename":"RegistrationData","status":null},"deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/m_assets/avatars/default/avatar-1.svg?time=0"},"id":"user:566970"},"BlogTopicMessage:message:2280848":{"__typename":"BlogTopicMessage","subject":"BizTalk Server 2020 CU2 is available for download","conversation":{"__ref":"Conversation:conversation:2280848"},"id":"message:2280848","revisionNum":3,"uid":2280848,"depth":0,"board":{"__ref":"Blog:board:IntegrationsonAzureBlog"},"author":{"__ref":"User:user:566970"},"teaser@stripHtml({\"removeProcessingText\":true,\"truncateLength\":-1})":"","introduction":"","metrics":{"__typename":"MessageMetrics","views":4895},"postTime":"2021-04-21T15:22:36.493-07:00","lastPublishTime":"2023-06-23T08:27:30.919-07:00","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})":" CU2 for BizTalk Server 2020 is now available for download.  \n For details on fixes and download link, please follow the master KB: \n https://support.microsoft.com/help/5003151   \n   \n You may want to bookmark this index page for updates related to BizTalk Server: \n https://support.microsoft.com/help/2555976  \n   \n As with CU1, the EN download is available by default. All other language packages will be made available on need basis. If a download is not available for the supported BizTalk language that you need, please contact us for the same. \n   \n As a quick reminder, for BizTalk Developer Tools please also update/install version 3.13.2.0 of the BizTalk Server Visual Studio extension in addition to installing the CU package. The extension can be installed from https://marketplace.visualstudio.com/items?itemName=ms-biztalk.BizTalk or from within Visual Studio - Manage Extensions. Please note that we have not updated the extension since CU1 so you can skip this step if you have already installed it previously. ","body@stripHtml({\"removeProcessingText\":true,\"removeSpoilerMarkup\":true,\"removeTocMarkup\":true,\"truncateLength\":-1})@stringLength":"1086","kudosSumWeight":1,"repliesCount":2,"readOnly":false,"images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"videos":{"__typename":"VideoConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"coverImage":null,"coverImageProperties":{"__typename":"CoverImageProperties","style":"STANDARD","titlePosition":"BOTTOM","altText":""}},"CachedAsset:text:en_US-components/community/Navbar-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/Navbar-1744658874048","value":{"community":"Community Home","inbox":"Inbox","manageContent":"Manage Content","tos":"Terms of Service","forgotPassword":"Forgot Password","themeEditor":"Theme Editor","edit":"Edit Navigation Bar","skipContent":"Skip to content","gxcuf89792":"Tech Community","external-1":"Events","s-m-b":"Small and Medium Businesses","windows-server":"Windows Server","education-sector":"Education Sector","driving-adoption":"Driving Adoption","microsoft-learn":"Microsoft Learn","s-q-l-server":"SQL Server","partner-community":"Microsoft Partner Community","microsoft365":"Microsoft 365","external-9":".NET","external-8":"Teams","external-7":"Github","products-services":"Products","external-6":"Power Platform","communities-1":"Topics","external-5":"Microsoft Security","planner":"Planner","external-4":"Microsoft 365","external-3":"Dynamics 365","azure":"Azure","healthcare-and-life-sciences":"Healthcare and Life Sciences","external-2":"Azure","microsoft-mechanics":"Microsoft Mechanics","microsoft-learn-1":"Community","external-10":"Learning Room Directory","microsoft-learn-blog":"Blog","windows":"Windows","i-t-ops-talk":"ITOps Talk","external-link-1":"View All","microsoft-securityand-compliance":"Microsoft Security","public-sector":"Public Sector","community-info-center":"Lounge","external-link-2":"View All","microsoft-teams":"Microsoft Teams","external":"Blogs","microsoft-endpoint-manager":"Microsoft Intune and Configuration Manager","startupsat-microsoft":"Startups at Microsoft","exchange":"Exchange","a-i":"AI and Machine Learning","io-t":"Internet of Things (IoT)","outlook":"Outlook","external-link":"Community Hubs","communities":"Products"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarHamburgerDropdown-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarHamburgerDropdown-1744658874048","value":{"hamburgerLabel":"Side Menu"},"localOverride":false},"CachedAsset:text:en_US-components/community/BrandLogo-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/BrandLogo-1744658874048","value":{"logoAlt":"Khoros","themeLogoAlt":"Brand Logo"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarTextLinks-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarTextLinks-1744658874048","value":{"more":"More"},"localOverride":false},"CachedAsset:text:en_US-components/authentication/AuthenticationLink-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/authentication/AuthenticationLink-1744658874048","value":{"title.login":"Sign In","title.registration":"Register","title.forgotPassword":"Forgot Password","title.multiAuthLogin":"Sign In"},"localOverride":false},"CachedAsset:text:en_US-components/nodes/NodeLink-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/nodes/NodeLink-1744658874048","value":{"place":"Place {name}"},"localOverride":false},"CachedAsset:text:en_US-components/tags/TagSubscriptionAction-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/tags/TagSubscriptionAction-1744658874048","value":{"success.follow.title":"Following Tag","success.unfollow.title":"Unfollowed Tag","success.follow.message.followAcrossCommunity":"You will be notified when this tag is used anywhere across the community","success.unfollowtag.message":"You will no longer be notified when this tag is used anywhere in this place","success.unfollowtagAcrossCommunity.message":"You will no longer be notified when this tag is used anywhere across the community","unexpected.error.title":"Error - Action Failed","unexpected.error.message":"An unidentified problem occurred during the action you took. Please try again later.","buttonTitle":"{isSubscribed, select, true {Unfollow} false {Follow} other{}}","unfollow":"Unfollow"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageListTabs-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageListTabs-1744658874048","value":{"mostKudoed":"{value, select, IDEA {Most Votes} other {Most Likes}}","mostReplies":"Most Replies","mostViewed":"Most Viewed","newest":"{value, select, IDEA {Newest Ideas} OCCASION {Newest Events} other {Newest Topics}}","newestOccasions":"Newest Events","mostRecent":"Most Recent","noReplies":"No Replies Yet","noSolutions":"No Solutions Yet","solutions":"Solutions","mostRecentUserContent":"Most Recent","trending":"Trending","draft":"Drafts","spam":"Spam","abuse":"Abuse","moderation":"Moderation","tags":"Tags","PAST":"Past","UPCOMING":"Upcoming","sortBymostRecent":"Sort By Most Recent","sortBymostRecentUserContent":"Sort By Most Recent","sortBymostKudoed":"Sort By Most Likes","sortBymostReplies":"Sort By Most Replies","sortBymostViewed":"Sort By Most Viewed","sortBynewest":"Sort By Newest Topics","sortBynewestOccasions":"Sort By Newest Events","otherTabs":" Messages list in the {tab} for {conversationStyle}","guides":"Guides","archives":"Archives"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/QueryHandler-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/QueryHandler-1744658874048","value":{"title":"Query Handler"},"localOverride":false},"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarDropdownToggle-1744658874048","value":{"ariaLabelClosed":"Press the down arrow to open the menu"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/OverflowNav-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/OverflowNav-1744658874048","value":{"toggleText":"More"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewInline-1744658874048","value":{"bylineAuthor":"{bylineAuthor}","bylineBoard":"{bylineBoard}","anonymous":"Anonymous","place":"Place {bylineBoard}","gotoParent":"Go to parent {name}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744658874048","value":{"loadMore":"Show More"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserLink-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserLink-1744658874048","value":{"authorName":"View Profile: {author}","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSubject-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSubject-1744658874048","value":{"noSubject":"(no subject)"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBody-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBody-1744658874048","value":{"showMessageBody":"Show More","mentionsErrorTitle":"{mentionsType, select, board {Board} user {User} message {Message} other {}} No Longer Available","mentionsErrorMessage":"The {mentionsType} you are trying to view has been removed from the community.","videoProcessing":"Video is being processed. Please try again in a few minutes.","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTime-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTime-1744658874048","value":{"postTime":"Published: {time}","lastPublishTime":"Last Update: {time}","conversation.lastPostingActivityTime":"Last posting activity time: {time}","conversation.lastPostTime":"Last post time: {time}","moderationData.rejectTime":"Rejected time: {time}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeIcon-1744658874048","value":{"contentType":"Content Type {style, select, FORUM {Forum} BLOG {Blog} TKB {Knowledge Base} IDEA {Ideas} OCCASION {Events} other {}} icon"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageUnreadCount-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageUnreadCount-1744658874048","value":{"unread":"{count} unread","comments":"{count, plural, one { unread comment} other{ unread comments}}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageViewCount-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageViewCount-1744658874048","value":{"textTitle":"{count, plural,one {View} other{Views}}","views":"{count, plural, one{View} other{Views}}"},"localOverride":false},"CachedAsset:text:en_US-components/kudos/KudosCount-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/kudos/KudosCount-1744658874048","value":{"textTitle":"{count, plural,one {{messageType, select, IDEA{Vote} other{Like}}} other{{messageType, select, IDEA{Votes} other{Likes}}}}","likes":"{count, plural, one{like} other{likes}}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageRepliesCount-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageRepliesCount-1744658874048","value":{"textTitle":"{count, plural,one {{conversationStyle, select, IDEA{Comment} OCCASION{Comment} other{Reply}}} other{{conversationStyle, select, IDEA{Comments} OCCASION{Comments} other{Replies}}}}","comments":"{count, plural, one{Comment} other{Comments}}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1744658874048":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserAvatar-1744658874048","value":{"altText":"{login}'s avatar","altTextGeneric":"User's avatar"},"localOverride":false}}}},"page":"/tags/TagPage/TagPage","query":{"nodeId":"category:communities","tagName":"biztalk server"},"buildId":"HEhyUrv5OXNBIbfCLaOrw","runtimeConfig":{"buildInformationVisible":false,"logLevelApp":"info","logLevelMetrics":"info","openTelemetryClientEnabled":false,"openTelemetryConfigName":"o365","openTelemetryServiceVersion":"25.1.0","openTelemetryUniverse":"prod","openTelemetryCollector":"http://localhost:4318","openTelemetryRouteChangeAllowedTime":"5000","apolloDevToolsEnabled":false,"inboxMuteWipFeatureEnabled":false},"isFallback":false,"isExperimentalCompile":false,"dynamicIds":["./components/community/Navbar/NavbarWidget.tsx","./components/community/Breadcrumb/BreadcrumbWidget.tsx","./components/customComponent/CustomComponent/CustomComponent.tsx","./components/tags/TagsHeaderWidget/TagsHeaderWidget.tsx","./components/messages/MessageListForNodeByRecentActivityWidget/MessageListForNodeByRecentActivityWidget.tsx","./components/tags/TagSubscriptionAction/TagSubscriptionAction.tsx","./components/external/components/ExternalComponent.tsx","../shared/client/components/common/List/ListGroup/ListGroup.tsx","./components/messages/MessageView/MessageView.tsx","./components/messages/MessageView/MessageViewInline/MessageViewInline.tsx","../shared/client/components/common/Pager/PagerLoadMore/PagerLoadMore.tsx"],"appGip":true,"scriptLoader":[{"id":"analytics","src":"https://techcommunity.microsoft.com/t5/s/gxcuf89792/pagescripts/1730819800000/analytics.js?page.id=TagPage","strategy":"afterInteractive"}]}