Quantcast
Channel: MSDN Blogs
Viewing all 35736 articles
Browse latest View live

Using Task Recorder in Dynamics 365 for Operations to report application issues

$
0
0

When you experience an application issue and want to report it to Microsoft support team it takes some time and effort to describe the repro steps to the engineers. What can help speed up the process is the Task Recorder. Task Recorder is a tool that can log every click and input you make in Microsoft Dynamics 365 for Operations.

If you have an environment with Microsoft Dynamics 365 for Operations and Contoso Demo database please follow the below simple steps to record your steps to reproduce the problem:

  1. Click Settings > Task recorder in the right top corner
    taskrec1
  2. Choose Create recording
    taskrec2
  3. Provide a name and click Start
    taskrec3
    Notice that there will be a red dot indicating that the recording is in progress
    taskrec4
  4. Reproduce the scenario keeping in mind that we will be able to play it back only if you use standard demo data. If you use custom records or setup in the scenario please ensure you demonstrate the process of their creation or set up of the parameters.
  5. Once the scenario is reproduced click Stop button
    taskrec5
  6. Click Save to this PC and Export as Word document and attach both files, .axtr and .docx, to the support ticket.
    taskrec6

This should take out all of the guess work for support engineers and developers as it will point them to the exact navigation path while they are walking through the step by step process.

Read more


Hier lernst Du kostenlos wie Du mit C#/XAML programmierst!

$
0
0

Du interessierst dich für die Entwicklung mit Xamarin? Du willst eine mobile Anwendung für alle mobilen Betriebssysteme entwickeln? Du verfolgst zufällig meine neue Xamarin University Serie auf Codefest? In diesem Beitrag wollen wir Dir eine kurze Zusammenfassung geben wo du am Besten und kostenlos lernen kannst mit C#/XAML zu programmieren. Ganz gleich, ob du ein Anfänger bist und einfach nur schnuppern willst oder ob Du Deine Fertigkeiten vertiefen willst. Du bist hier richtig!

Microsoft Virtual Academy (https://mva.microsoft.com/)snip_20170220151537

Die Microsoft Virtual Academy bietet dir 100+ kostenlose IT-Kurse von Experten an. Diese Kurse richten sich an Entwickler, IT-Profis, Daten Profis aber auch an Studenten. Für uns sehr interessant sind die Entwickler Kurse. Dabei steht Dir eine große Auswahl von Themengebieten zur Verfügung.

Die kostenlose C#/XAML Kurse findest du HIER. C# ist einfach, aber leistungsstark und ermöglicht das Erstellen von Windows-Apps, Webdiensten und weiteren Anwendungen. XAML vereinfacht das Erstellen der Benutzeroberfläche.

Dazu passend empfehlen wir Dir auch die Visual Studio Kurse. In diesen Visual Studio-Schulungen mit vielen Demos wirst Du Visual Studio verwenden um Windows Store-Apps, Desktop-Apps, mobilen Apps, ASP.NET-Web-Apps und XML-Webdiensten zu erstellen. Du lernst außerdem, wie du ALM-Funktionen (Application Lifecycle Management) in Visual Studio anwendest.

HIER nochmal der Link um zu den Downloads von den verschiedenen Visual Studio Versionen zu gelangen.

Du hast schon Deine ersten Erfahrungen mit Xamarin und C# gemacht dann schau vorbei auf unser neuen Xamarin University Facebook Seite für die neuesten Updates. Gerne bist Du eingeladen Deine Tipps und Tricks zu teilen. 

 

Discovering AuthorizeAttribute role names

$
0
0

The AuthorizeAttribute is used in ASP.NET code to decorate controller classes and methods which require authorization, e.g.

[Authorize(Roles =“admin”)]

public class HomeController : Controller

{

Meaning that to call any method in this class, the user needs to have a role claim with the value ‘admin’.

With many controllers and methods the number of roles used and their assignment to methods may become an administrative issue. It may not be easily discoverable what is the complete list of roles the application uses or what is the complete set of methods enabled by a role. A small console application I wrote may thus become handy: https://github.com/mrochon/ASPNETRoleDiscovery.

Use the file-open dialog displayed by the application to open the assembly (dll) of your ASP.NET application. Your assembly must be in the directory to which it was compiled since the console application will need to load other assemblies your application references. It will look for them in the same directory.

The current output of the console application consists of a CSV and Json listing. The CSV file lists all uses of a role, in classes or methods. The Json fragment can be used to modify the web application’s manifest in the Azure AD to enable RBAC for the application. Example of output:

ClassName, MethodName, RoleName
WebApplication2.Controllers.AccountController,SignIn,admin
WebApplication2.Controllers.AccountController,SignIn, abc
WebApplication2.Controllers.HomeController,*,admin
WebApplication2.Controllers.HomeController,About,admin
WebApplication2.Controllers.HomeController,About, clerk
———————————
“appRoles”: [
{
“allowedMemberTypes”: [
“Application”,
“User”
],
“description”: “<some description>”,
“displayName”: “admin”,
“id”: “20d97248-94be-49be-8568-9ad8fd33fe4b”,
“isEnabled”: true,
“value”: “admin”
}
{
“allowedMemberTypes”: [
“Application”,
“User”
],
“description”: “<some description>”,
“displayName”: ” abc”,
“id”: “e0aa5b8c-a7dd-4611-a0e9-27845e95fb1c”,
“isEnabled”: true,
“value”: ” abc”
}
{
“allowedMemberTypes”: [
“Application”,
“User”
],
“description”: “<some description>”,
“displayName”: ” clerk”,
“id”: “374ae2fb-d4e0-4b55-8535-ccbd42d44bb5”,
“isEnabled”: true,
“value”: ” clerk”
}
],

 

LAPS Implementation Hints and Security Nerd Commentary (including mini threat model)

Enabling U-SQL Advanced Analytics for Local Execution

$
0
0

After we announced the ability for U-SQL to massively distributed Python code in the Azure Data Lake Analytics service, a lot of developers have been asking us when the the Python support will work using U-SQL Local Execution. In this post, we’ll describe how to make that happen.

To set expectations, what we will describe below is not officially supported – we do intend to enable Python extensions in Local Execution as part of the product – but until then these instructions are meant for those brave souls who are willing to try something at the cutting edge.


STEP 1: Install the U-SQL Advanced Analytics extensions in your Data Lake Analytics Account

  • Launch the Azure Portal
  • Navigate to your Data Lake Analytics Account
  • Click Sample Scripts
  • Click More and select Install U-SQL Extensions
  • Wait until the extensions have finished installing – this should take about 5 minutes

 

STEP 2: Examine the output of the installation

  • When viewing your Data Lake Analytics Account in the Azure Portal, click on Data Explorer
  • Navigate to your default Data Lake Store account
  • When Step 1 is finished, it will have created a folder called /usqlext in the default Data Lake Store account

 

STEP 3: Setting up your ADLTools4VS local “DataRoot”

  • Launch Visual Studio
  • Select Tools > Options > Azure Data Lake > General
  • Under U-SQL Local Run, find and copy the value for DataRoot
  • The value will look like this: C:UsersusernameAppDataLocalUSQLDataRoot
  • Open Explorer and browse to that folder
  • Create a “usqlext” folder in that root. The full path is: C:UsersusernameAppDataLocalUSQLDataRootusqlext
  • Launch Azure PowerShell and login to your subscription
  • Run the command below to copy the usqlext folder from your Data Lake Analytics account to your local DataRoot
    • Export-AdlStoreItem -Account <youradlsaccount> -Path /usqlext -Destination C:UsersusernameAppDataLocalUSQLDataRootusqlext -Recurse
  • This copying process will take a few minutes. It will copy over about 4GB of data.

 

STEP 4: Set up the Local Execution catalog

  • Launch Visual Studio
  • Start a new U-SQL project
  • Copy the text from C:UsersusernameAppDataLocalUSQLDataRootusqlextRegisterAll.usql into your U-SQL script
  • Run your U-SQL script locally
  • Once this step completes you will be able to use the U-SQL Advanced Analytics features – Python, R, Cognitive – inside of U-SQL scripts running on your own machine.

13 Marketing Strategy Elements for a Successful Website Launch for Your Product  

$
0
0

Guest post by Gloria Kopp, http://www.huffingtonpost.ca/gloria-kopp/

Launching any new website is daunting, and is normally a crucial element for the success of your new business. If the website is a hit, then you could suddenly find yourself with a massive audience, reaching around the globe. If not, then your could stay in the same position, faced with considering costly marketing ploys rather than relying on a digital presence, that is generally much more affordable and effective. 

Before Your Launch – Some Key Points

There are certain strategies that need to take place before your website goes live. These include the following elements:

1.      Know Your Target Audience

And write for that target audience. There may be a million things that you want to say, but all of your posts should be built around providing a service for your audience. By now, you’ll know all about your competitors, and can maximize on what they do right, and avoid their mistakes. You will lose all impact if you launch a website that does not meet the needs of your audience.

2.      Fill in Any Gaps

If you can identify something that your competitor does poorly, or even find any kind of gap I the market, you should absolutely pounce on it, make sure your audience is aware of your ability in that area. This can differentiate you from competitors, and make you the more appealing option. Giving your audience great content that skips the fluff and gets right to the point is another thing that can set you apart from your competitor. Sticking to a specified word count with the help of Easy Word Count can help keep you within the limitations you’ve got, so you stay on message with your writing.

3.      Check Yourself Out

Before you even think about launching your website, you should run a crawl test on yourself. There are free tools that can do this for you, and will identify any issues with your website before customers discover them. You should also check your appearance on all main browsers, making sure your design, graphics, links, and everything will work for customers, no matter what they’re using to find you. An online resource like Website Grader can instantly tell you how strong your website is performing based on your speed, mobile usage, SEO and other factors.

4.      Have Google Analytics Installed and Ready to Go

If you want to be able to track your website from the launch onwards, then you need to have visitor analytics, such as google analytics, installed way before your first visitor. It’s impossible to know what needs to be improved unless you’re monitoring every page from the very beginning of your launch. While the price of gadgets can put some people off investing too heavily in promoting their online presence, there are plenty of free tools to use too. 

5.      Plan Your First Post – Use an Expert Round up

Whatever your product is, whether a service or material goods, you can really place yourself on the map as a new business by contacting experts in your field and writing a round up of their opinions. Having plenty of external inks to the experts sites, a word count that search engines seek (over 300 words generally) will improve your SEO, and make you appear reliable to your audience. You can also find writing and SEO advice through Essayroo or Ukwritings that will help you compose both Google and user friendly content.

6.  Have a Few More Pieces Ready to Go

While your landing page with an expert roundup could be a highlight, don’t lose your audience by having no other content. Make sure you have a few more posts ready to launch on day one, that will have broad appeal. While your target audience have you in common, they may be very different in how they look for information – so having posts that are analytical, philosophical, as well as real life examples can ensure broad appeal. Don’t let your right-brained audience be put off by purely analytical articles – make your website as inclusive as possible. Outsourcing to a freelancer can help you compile content for future use. Using a resource such as Upwork means you’ll get the job done by a qualified professional for the most competitive prices.

7.      Utilize Multiple Platforms

While no business needs to have a presence on every single social network, having links across several social media sites that your audience regularly use can be an asset. A great way to manage your social media presence is through a management tool like Buffer, which allows you to schedule future posts as well as post to multiple platforms simultaneously. Most businesses are hoping for maximum impact by sharing a landing page across multiple platforms. Use professional accounts, and do some resume writing to include this new venture.

8.      Utilize Email Blasts

Use your contacts and send a link to your landing page when you launch – you may get feedback, for things as simple as grammar mistakes, or as complex as the way your website is programmed. This is a great way for you to promote yourself and improve on anything that you may not have noticed needs some work. Always ensure any communications you’re sending out are free of any instances of plagiarism with Australian Help or Academized plagiarism checkers. Being accused of plagiarism is one of the most harmful and reputation destroying things that can happen to a business, so avoid it at all costs. If you plan on referencing outside materials, make sure you’re doing it properly with a citation generator, like Cite It In, so you’re giving credit where it’s due.

9.      Be Clear About What You Want Your Audience to Do

Are you hoping that they will buy something? Subscribe, download, or maybe even just share? Whatever you really want your audience to do, make sure that this is explicitly clear, highlighted, and potentially even pops up at them while they’re on the page.

10. After the Launch

Once your website is launched, there are still plenty of things to monitor to ensure your brand is successful online. The following tips can help you keep your momentum after your launch:

11. Maintain Your Site

Keep your site constantly updated, both in terms of systems and content. You an also build a list of key words that you can use as a basis for future blog posts, or even use online resources, such as writing tools for assignment help, to write posts. This is a time-saving and affordable way to keep your site updated. To create and maintain a unique looking WordPress site, without having to learn to code, Cloudpress is the platform to get you there.

12.  Set Your Targets for the Next Year

Look at where you are now, and what you want to gain from our website in the next 12 months. This helps you keep content focused, and properly monitor your progress, whether you’re looking to have a certain number of downloads, subscriptions, or sales.

13. Build Online Relationships

Networking online and collaborating with other brands, promoting and reviewing each other, using guest posts to attract new interest all keep your site fresh and promote constant growth, so be social with other online businesses

Launching a successful website can take an incredible amount of work, however having a sound strategy, and following these tips can help you get on the right path towards a popular website representing your brand.

2017/02/18 Power BI 勉強会 –第 3 回 が開催されました

$
0
0

Microsoft Japan Data Platform Tech Sales Team

土井 貴彦

先週末の土曜日、2017/02/18 に 日本マイクロソフト 品川オフィスのセミナールーム A にて Power BI 勉強会 ( 3 回目) が開催されました。本記事では、当日の内容を簡単に報告できればと思っています。 そもそも Power BI って何? と思われた方は こちら の記事をまず参照ください。また、第一回目の様子は こちら 、第二回目の様子は こちら を参照ください。

 

[当日の様子]

C4631JFUoAELWZC.jpg large

前回は参加者が50名を超え会場が手狭になったので、今回はもう少し広いセミナールームを確保しましたが、ほぼ満席となる大変盛況な勉強会になりました。発表者を含め約 80 名の方にお集まり頂きました。

 

[セッション]

セッション資料は こちら から閲覧が可能です。(一部セッションの資料は非公開となっています)

  • Power BI 概要 / 土井 貴彦 (Microsoft Japan Data Platform Tech Sales Team)
  • Power BI を提案してみた件 / 山田 晃央さん (株式会社アイシーソフト)
  • M言語 Power Query Formula Language とは? / 沼口 繁 さん
  • Lightning Talk
    • Power BI の共有について / 宮川 麻里 さん (Microsoft MVP for Office Servers and Services)
    • SharePoint Online でPower BI を表示する / 目代 昌幸 さん (Microsoft MVP for Office Servers and Services)
    • Google Analytics と Power BI の連携 / 宇留野 彩子 さん (Microsoft MVP for Office Servers and Services)
    • オープンデータ × Power BI で、楽しいこと。 小林 寿 さん ( (株) サーベイリサーチセンター)
  • “リスト形式” 再入門 / 萩原 朋子 さん
  • Power BI + OneDrive の最も簡単でかつ最も効率的な使い方のひとつ / 清水 優吾 さん (Microsoft MVP for Data Platform, 株式会社セカンドファクトリー)
  • 各種お知らせ / かがた たけし さん (Microsoft MVP for Data Platform)

[まとめ と 次回開催について]

前回と比べて参加者、登壇者ともに大幅に増え、大変盛況な勉強会となりました。また、今回は半数くらいの方が初参加だったということもあり、次回開催に向けては初心者向けのコンテンツを充実するなど工夫をできればと思っています。また、ユーザの皆様のご登壇もぜひお待ちしております。

次回開催日は未定ですが、申し込みサイトが出来次第、Twitter @takahikodoi で告知、もしくはこの記事を更新します。

 

・関連記事

連載 : DAX 入門

2016/10/01 Power BI 勉強会 – はじめの一歩 が開催されました

2016/11/26 Power BI 勉強会 – 第二回 が開催されました

Coded UI 擷取執行時的畫面

$
0
0

在 Coded UI 執行的過程中會有許多的 UI 操作, 有時候會需要在特定的畫面擷取存檔做一個記錄. 實作方式如下:

Image MyImage = UITestControl.Desktop.CaptureImage();

MyImage.Save(@”C:UsersjchiouDesktoplogsYourNaming001.jpg”, System.Drawing.Imaging.ImageFormat.Jpeg);

如果再進階的運作, 可以將做圖片的比對功能, 可以參考同事的作法:

How To: Do image comparison in Coded UI Test

https://blogs.msdn.microsoft.com/gautamg/2010/04/08/how-to-do-image-comparison-in-coded-ui-test/

 

Enjoy.

Jacky


Export Reports to Excel using Management Reporter in D365 for Operation.

$
0
0

You can export many thousand lines to Excel from MR reports. In this way we do not hit the design limitation in Dynamics 365 for Operation when we export 2000 lines.

For illustrational purposes, the default report Ledger transaction list will be used.

The report is generated for period 12, base year 2014.

It is generated at Financial, Account and Transaction detail level.

Once generated, click Export:

The export to Excel will start.

Once completed, you will see a dialogue box at the bottom of the screen in IE:

Here Open is chosen:

There are three sheets, one for each detail level.

You can generate the report to a single worksheet, by using this setting:

Result:

The below shown is the end of a report generated with the same parameters:

The limit for exporting lines to Excel is based on Excel limits.

 

author: Anne Schwarz-Nielsen

[Sample Of Feb. 21] How to use Telerik UI for UWP in Universal Windows Platform apps

$
0
0
image
Feb.
21
image
image

Sample : https://code.msdn.microsoft.com/How-to-use-UI-for-UWP-in-f69becc1

This sample demonstrates how to use Telerik UI for UWP in Universal Windows Platform apps.

image

You can find more code samples that demonstrate the most typical programming scenarios by using Microsoft All-In-One Code Framework Sample Browser or Sample Browser Visual Studio extension. They give you the flexibility to search samples, download samples on demand, manage the downloaded samples in a centralized place, and automatically be notified about sample updates. If it is the first time that you hear about Microsoft All-In-One Code Framework, please watch the introduction video on Microsoft Showcase, or read the introduction on our homepage http://1code.codeplex.com/.

Containers & Redis – Running Redis on Windows with Docker

$
0
0

This is a Story About How Docker Saves Redis on Windows

This is a guest blog by Jingya Wang, who is a Microsoft Student Partner at Imperial College London.

clip_image002

Introduction

image

The first time I came across Docker, was during my internship at Microsoft Research Asia. The project involves the use of Redis, and ‘the Redis project does not officially support Windows’! So you may image how hard it is to start the project at the beginning.

Finally, Docker saves my life! Even since then, Docker is the first thing I will go to when running into software compatibility problem. In this blog, let’s use Redis as an example to introduce essential concepts such as docker containers, commands and different flags, and hopefully after reading it, you will appreciate Docker as much as I do.

Redis using Docker

When I start researching on how to run redis server using docker, a lot of solutions popped up but few told you how to use run redis server and correctly connect it with you Node.js code. We will walk through this set up step by step here.

The Simplest Way

The basic command line to run Redis using Docker is,

> docker run redis

Some formal definitions are given below, summarized from the Docker docs https://docs.docker.com/engine/getstarted/step_two/.

· run creates and runs a docker container.

· redis tells docker which image to load into the container.

· An image is a filesystem and parameters to use at runtime.

· A container is a running instance of an image. It wraps a piece of software in a complete filesystem that contains everything needed to run: code, runtime, system tools, system libraries. This guarantees that the software will always run the same, regardless of its environment. Please see more details of Docker container https://www.docker.com/what-docker.

The key point is the docker container, which allows me to run Redis on Windows, even if the Redis project does not officially support Windows. The Redis image is pulled from the Docker Hub, and you should get a similar figure in the terminal as seen in Figure 1, saying the Redis ‘server is now ready to accept connections on port 6379’!

Figure 1: Redis server is now ready to accept connections on container port 6379

image

If you open another terminal and type in

> docker ps

All information about this running container is retained. As we did not specify a name for the container using the –name flag, Docker assigns a random name to the container, in this case, desperate_northcutt.

Figure 2: docker ps

image

The Simplest Way with a Serious Problem

To run Redis in this way, you cannot use this NoSQL Data Structure Server in any web applications, simply because it is in a Docker container, which ‘isolates applications from one another and the underlying infrastructure, while providing an added layer of protection for the application.’

To be able to create a connection between your Node.js code and the Redis server, we also need flag -p to docker run redis.

-p Flag

-p flag binds the container port to a specific port, which means now you can createClient() in Node.js using default host 127.0.0.1 and port 6379. In both Figure 1 and 2, the port number 6379 is referred as the container port. So the configuration of -p flag follows hostPort:containerPort.

> docker run –p 6379:6379 redis

Notice how the information about PORTS changes from Figure 2 to Figure 3.

Figure 3: docker ps with -p flag

image

The port number inside the container does not need to match the port number exposed on the outside of the container. Hence we may also run

> docker run –p 6379 redis

A random host port number will be assigned to the container, and it can be found out by running

>docker port $CONTAINER ID

6379/tcp -> 0.0.0.0:32770

Create Redis Client in Node.js

After binding the container port to the host port, we are able to create connection between Docker Redis image and Node.js in the following way,

Figure 4: connection between Docker Redis image and Node.js

image

For the case where the host port is randomly assigned by Docker, the Redis client can be created by specifying the port number,

2 var client = createClient({port: ‘32770’});


Linking Containers

We may also choose to use container links to provide access to our Redis database, create multiple Redis clients to securely transfer or share information about one container to another.

First, let’s create a container called redis1 running redis image, where flag –d specifies the container to run on background, meaning you will not an image in Figure 1.

> docker run –d –name redis1 redis

Second comes to the linking part. The key part is ‘–link redis1:redis’, linking container client1 and redis1 together. Another unseen part is –it flag, which can be separated as -i and -t, must be used together for interactive processes like a shell. sh at the end allows us to go into the shell and run both Redis server and redis-cli.

> docker run -it -p 6379:6379 –link redis1:redis –name client1 redis sh

In similar manner in a new terminal, a second Redis client can be created and link to redis1 container as well. Here, we will allow Docker to assign a host port to the container instead of still specifying it as 6379.

> docker run -it -p 6379 –link redis1:redis –name client2 redis sh

Now both client1 and client2 are linked to redis1, we can go into the redis-cli environment and see how information is shared between two clients. Play with basic Redis commands such as GET and SET, and you will find out that the key-value pair set in client1 can be retained in client2.

# redis-cli –h redis

client1

redis:6379> SET key1 value1

OK

client2

Redis:6379> GET key1

value1

This subsection is based on the Docker Tutorial Series: Part 8: Linking Containers. If interested, please see https://rominirani.com/docker-tutorial-series-part-8-linking-containers-69a4e5bf50fb#.s7izi6ujd for further information.

To conclude with, linking containers with –p flag should be one of the powerful ways to run Redis server using Docker and connect it to your Node.js code. However, there are other ways such as linking Ubuntu with Redis to ‘Dockerize a Redis service’ https://docs.docker.com/engine/examples/running_redis_service/#/run-the-service. You may want to explore this approach depending on the need. For basic uses of Redis as NoSQL Data Structure Server, setting up linking client containers seems to be sufficient.

Conclusion

For sure there are other ways to solve this problem, such as ssh to a Linux or Mac machine and run your Redis server there, or following what is suggested on the Redis download page https://redis.io/download. But comparing these approaches, running Redis using Docker on Windows seems to be the cheapest approach, without the requirement of another Linux or Mac machine, or Win64 API environment.

There are always arguments going on with which OS is best for programming, and one of the disadvantages of Windows is this poor software compatibility. With Docker, especially its light-weighted Docker containers, it certainly makes up this disadvantage and makes life programming on Windows much easier.

More generally speaking, regardless of the environment, whenever you run into a software compatibility problem, remember to try docker run and see if it will save your day!

How to capture crash dump for Desktop Bridge Converted or UWP app

$
0
0

Here is the guide on how to capture crash dump for UWP and Desktop Bridge Converted Apps:

1. Install Windows SDK which includes Windows Debugger (by clicking Install SDK)

https://developer.microsoft.com/en-us/windows/downloads/sdk-archive

 

clip_image002

 

2. Only select Debugging Tools for Windows to finish install.

clip_image004

 

3. Open Powershell Command, run this command to get your application ID:

Get-appxpackage | select-string WPFUWP

For example, I go the result: WPFUWP_1.0.0.1_x86__s46g25shpckvj for my App WPFUWP.

4. Based on your app bit, open Command Window, use 32bit (x86) folder or 64bit (x64) folder of Windows Debugger, run this command (my wpfuwp is 32bit app, so I choose DebuggersX86) to enable debugging tool for my App:

“C:Program Files (x86)Windows Kits10Debuggersx86plmdebug.exe” /enableDebug WPFUWP_1.0.0.1_x86__s46g25shpckvj “C:Program Files (x86)Windows Kits10Debuggersx86WinDbg.exe -c g”

5. Launch the App and recreate the crash issue. The Windbg will auto-break the crash point, and stop App running or existing.

6. Open Windbg, in the command line, run this command:

.dump /ma /u c:outputcrash.dmp

Then can start check the crash.dmp as postmortem analysis by debugging expert.

After getting dump, can run this command to auto attach debugger on my app:

plmdebug /disableDebug WPFUWP_1.0.0.1_x86__s46g25shpckvj

 

Thanks,

Freist

MARMIND – Die innovative Marketing Cloud Lösung auf Microsoft Azure

$
0
0

Wie erzeugen wir Aufmerksamkeit für unsere Produkte? Wo sollen wir unser Budgets investieren? Wie schaffen wir unseren täglichen Arbeitsaufwand? – Herausforderungen, vor denen Marketer jeden Tag stehen.

Was ist MARMIND?

MARMIND ist eine Marketing Software Lösung auf Microsoft Azure. MARMIND verbindet Kampagnen, Budgets und Ergebnissen zu einem zentralen Marketingplan.


Mehrmehrt & Vorteile

  • Kontrolle über Ihre Ausgaben
    Die Integration der Kampagnen, Kosten und Ergebnisse in ein System führt zu besseren Investments und erhöht die Marketing Performance
  • Standardisierung Ihrer Marketing Prozesse
    Die Standardisierung von Daten, Systemen und Technologien ermöglicht effizienteres Arbeiten und mehr Zeit für Kreatives
  • Effektive Kommunikation mit allen Teams
    Klare Verantwortlichkeiten im Team sorgt dafür, dass Kunden und Leads mit relevantem Inhalt angesprochen werden und erhöht die Verkaufschancen

MARMIND im Überblick

Der Kern von MARMIND ist ein zentraler Marketing Plan

Die verschiedenen Plan-Ansichten ermöglichen eine einfache Online Marketing Planung in der Cloud. Alle Projekte inklusive einzelner Aktivitäten, Kosten und Ergebnisse werden zentral verwaltet und im Team online abgestimmt.

marmind-1

 

 

 

 

 

 

 

 

 

 

Projektpläne für die übersichtliche Planung und Abstimmung von Projekten und To-dos

 

marmind-2

 

 

 

 

 

 

 

 

 

 

Kalenderansichten für die Übersicht über alle laufenden und geplanten Aktivitäten

 

Kosten und Ergebnisse in Echtzeit auswerten

Mit MARMIND können Sie einfach und übersichtlich Marketing Budgets und Kosten planen und den Erfolg der Kampagnen auswerten. Viele Datenquellen – von Social Media bis Website Tracking sind integriert. Auch externe Lösungen für E-Mail-Marketing, Social Media Monitoring etc. können via API angebunden werden.

marmind-3

 

 

 

 

 

 

 

 

 

Planung und Auswertung von Budgets, Kosten, Zielen und Ergebnissen

 

Effektive Kommunikation in Teams

Für die Planung und Umsetzung von Marketingmaßnahmen bietet MARMIND einfache Kommunikations- und Kollaborationsfunktionen. So lassen sich Aufgaben, Termine, Mitteilungen und Media Assets in gemeinsamen Listen verwalten und abstimmen.

marmind-4

 

 

 

 

 

 

 

 

 

Einfache Projektstrukturen und einfache Abstimmung in gemeinsamen To-do-Listen

 

Probieren Sie MARMIND aus!

Sie können MARMIND auf www.marmind.com in einer Trial Variante bis zu 3 Benutzern kostenlos testen. Die Varianten reichen von monatlich erweiterten Public Cloud Varianten ab 80,00 EUR pro Monat bis zu individuellen Enterprise Varianten (Private- oder Hybrid Cloud).

Für Fragen und Feedback steht das Team von UPPER Network gerne unter +43 1 804 88 333 50 oder support@marmind.com zur Verfügung, oder Sie können sich auch an Ihren Microsoft Ansprechpartner wenden.

MARMIND ist eine Software Produkt von UPPER Network©

UPPER Network ist seit 16 Jahren international erfolgreicher Anbieter von Software Technologien. Das Ziel von UPPER Network ist es, mit innovativen Lösungen und exzellenter Betreuung zu begeistern – vom Start-Up Unternehmen bis zum internationalen Konzern.

 

Viel Spaß beim Ausprobieren der Lösung auf Microsoft Azure.

Additional BOM may be generated for RosettaNet solution with BizTalk 2013 R2 CU2 or higher and BizTalk 2016

$
0
0

The problem:

You have RosettaNet solutions deployed on BizTalk 2013 R2. After urpgrading to CU2 (or higher) or BizTalk 2016, your trading partner complained that they cannot process the documents sent from you with existing configuration due to an extra unicode Byte Order Mark(BOM) in the beginning of the doc.

Analysis:

We debug the issue and found the root cause is because some code change within MIMEEncoder pipeline component(in CU2). Also, setting PreserveBOM to true or false in Pipeline setting doesn’t change the behavior.

We’ve verified that the issue only occurs when content-encoding is set to 8bit or quoted-printable in RosettaNet agreement setting. Using Base64 encoding will not hit the same problem.

The issue has been reported to BizTalk production group for further investigation and judgement about whether a fix is required.

Solution:

Please understand BOM isn’t unexpected character for unicode encoded content. So normally the partner should be able to configure their application to accept the documents with BOM.

If no luck, currently a work around is to switch to Base64 encoding instead of 8bit or quoted-printable(see below).

8bit

Best regards,

WenJun Zhang

Trouble shooting Availability Group Listener in Azure SQL VM

$
0
0

Last week, I have had one mystery challenge while creating Availability Group listener in Azure. We followed Configure one or more Always On Availability Group Listeners – Resource Manager and found out the listener didn’t work as expect. Let me walk you through what we have experienced.

 

In this blogpost, for demonstration purposes, we will create 2 Azure VMs named SQL1 and SQL2 for Availability Group and the listener name is AG1.

 

After setting up the listener AG1 using ILB (Internal Load Balancer) with steps provided in the link above, we have a SQL Availability Group configured in Azure. Currently SQL1 is primary, and connection from SQL1 to AG1 is successful:

 

However, after failover to SQL2 (SQL2 is now primary), connection from SQL1 to AG1 failed:

 

And interestingly, connection from SQL2 to AG1 is success. Another test showed while SQL1 is primary, connection from SQL2 to AG1 also fails.

 

More tests showed direct connection to the SQL Servers (e.g. SQL2 to SQL1, SQL1 to SQL2) are ALL successful.

 

At this point, it appears that listener isn’t functioning as we expected. And below is what we have tried and would like to share with those who might experience similar issue and hopefully you might save some troubleshooting time

 

Steps:

  • Check ILB properties
    • Frond End port (which normally is SQL Server instance port 1433)
    • Back End Port (which normally is also 1433)
    • Back End Pool – SQL1 and SQL2
    • Probe port – a port that is not being used by any application on both VMs. This port number will be used later in cluster parameter.

 

From this screenshot, you can see my Front End IP is 10.3.0.10, this is going to be my AG listener IP. Front End port is 1433, default port for SQL Server default instance. So is Backend port. The health probe port is 59999, an unused port on both VMs.

 

  • Verify firewall settings on both VMs.

There are 3 ports need to be open – SQL Server connection port (1433), Availability Group communication port 5022 and Health Probe port 59999. Your firewall setup on both VMs should be similar to my configuration below:

 

  • Verify cluster parameters:

Verify cluster is health, all resources are online and IP resource is using ILB IP:


We will also need to confirm Probe port is same port as the ILB Probe port. We could use Get-ClusterResource | Get-ClusterParameter

 

 

All above checks are to confirm ILB listener has been configured properly. And in my case, all these setting are correct and yet, remote connection to listener still fails.

 

Based on symptom observed, SQL Servers are functioning properly since we are able to connect to SQL directly. Failing over is also functioning, cluster is health. All these evidences excluded VMs and WSFC being root cause.

 

  • Verify Probe Port in VM:

We decided to investigate a little further on the VM side, starting from verifying the Probe port is being listened on active cluster node (Primary replica):

And to confirm the process that is listening to the probe port 59999:

 

  • Monitoring ping messages:

It seems the port is open, but is there any ping messages from ILB. To answer this question, we will need to use Microsoft Network Monitor and monitor the network traffic on port 59999:

And there is no message coming in or going out from port 59999.

 

However, under normal circumstances, there are ping messages to the probe port every a few seconds (interval is defined in ILB):

On passive node, there are also ping messages with no reply from VM:

Seeing no ping message from ILB, we have confirmed messages between ILB and VMs are not going through. Now we will need to find out what caused the disconnection.

 

So we need to go back to the portal and see what we have missed about ILB. Another review of ILB configuration has confirmed everything was configured properly and yet, NetMon is still not showing any ping messages.

 

Now, if we go back to the VM and take a look at the Network Adaptor, there is an option called “Effective security rules” like the name sugguest, shows the effective security rules on current network adapter. What we saw from the list is besides 3 default rules, including a rule called “AllowAzureLoadBalanderInBound”, this rule was added when we created the ILB. However, there is another rule that denies internet connections with priority 100:

This rule seems suspicious since it denies 76 IP ranges, how do we know it is not blocking ILB? Luckily, there is one easy way to find out – If we click on the third rule named “AllowAzureLoadBalancerInBound”, it shows the IP address of our LB:


 

Then when we go back to the first rule and cross check with 76 prefixes, we find a match – 168.0.0.0/8. Any IP address from 168 is blocked, including ILBs!


This ended our investigation – the high priority deny rule is blocking ILB IP therefore ILB cannot ping SQL VMs and would not be able to redirect connections to SQL VM accordingly. Updating this deny rule and exclude 168.0.0.0 from the block list allowed ILB to ping SQL VMs and resolved this issue.

I hope this blog helps you might save you sometime in trouble shooting AG listener in Azure.


 


Raporty i analityka sprzedaży w hurtowni danych Azure

$
0
0

Prowadząc analitykę sprzedaży, często zachodzi potrzeba porównania specyficznych metryk rok do roku. Jeżeli dodatkowo ilość transakcji jest z miesiąca na miesiąc coraz większa, klasyczne środowisko analityczne które projektowaliśmy i wdrożyliśmy kilka lat temu zaczyna nam niedomagać. Potężne serwery z ogromną ilością pamięci RAM oraz wydajne przestrzenie dyskowe wydają się być dosyć stare. Koszty utrzymania także nie są niskie. Przeliczanie kostek OLAP o setkach miar odbywa się w weekend i musi być gotowe na poniedziałek rano, aby można było rozpocząć pracę. Trwa to jednak coraz dłużej. Dodatkowo proces raportowania zaczyna przeciążać serwery w ciągu normalnego tygodnia pracy. Stajemy przed dylematem: spróbować optymalizacji schematów i modeli danych, co pozwoli przetrwać jeszcze 3-4 miesiące, zainwestować w kolejny sprzęt który będzie w pełni wykorzystywany tylko w weekend, czy może spróbować zmienić podejście i wykorzystać chmurę Azure.

Wspólnie z kilkoma klientami podjęliśmy dyskusję, która ostatecznie obróciła się w warsztaty Proof of Concept. Wśród kilku możliwych scenariuszy wybraliśmy dwa, które cechują się różnym stopniem skomplikowania, wpływającym także na szybkość wdrożenia:

Scenariusz 1 – Dobudowanie kolejnego serwera OLAP w Azure jako maszyny wirtualnej i rozkładanie obciążenia dla raportowania w ciągu tygodnia pracy

Zalety:

  • Szybkie wdrożenie – zestawienie VPN, utworzenie instancji OLAP, ładowanie danych – kilka dni
  • Prawdopodobnie szybsze przeliczanie kostek OLAP
  • Możliwość dynamicznego reagowania na zwiększone zapotrzebowanie na moc i pojemność – skalowanie instancji i dokładanie kolejnych dysków

Wady:

  • Istniejące problemy ze strukturami i modelami danych pozostają, przez co środowisko nadal będzie się rozrastało a przetwarzanie trwało coraz dłużej
  • Potrzeba wdrożenia mechanizmu rozkładania ruchu dla użytkowników raportowania

Scenariusz 2 – Budowa rozwiązania w oparciu o skalowalne usługi Azure SQL Data Warehouse  i Azure Analysis Services oraz wykorzystanie raportowania w PowerBI

Zalety:

  • Migracja do architektury MPP (trochę więcej o samej usłudze klasy MPP można przeczytać tutaj) dla hurtowni danych oraz modelu tabular dla usługi analitycznzych
  • Dynamika skalowania wydajności na poziomie przesuwania suwakiem DWU oraz QPU
  • Eliminacja drogich w utrzymaniu serwerów i macierzy w lokalnych centrach przetwarzania danych
  • Duża elastyczność budowania raportów w PowerBI
  • Raporty PowerBI dostępne przez Internet, także na urządzenia mobilne

Wady:

  • Konieczność zaplanowania odpowiednich mechanizmów dystrybucji danych dla architektury MPP
  • Wymaga zaangażowania klienta oraz partnera, który przygotuje nowy lub dostosuje obecny model danych, przeprowadzi testy i przeniesie raportowanie do PowerBI – kilka do kilkunastu tygodni

Sprawdzamy scenariusz 1

Składniki:

  • Azure VPN Gateway – Route Based High-Performance
  • Azure Virtual Machine – GS2 -> GS5, MSSQL 2016 Enterprise
  • Azure Storage – 8x P30
  • Azure Automation – Start/Stop/Skalowanie
  • Azure Log Analytics – na potrzeby analizy logów, głównie MSSQL
  • Azure Virtual Network – oczywiście 🙂

Użytkownicy korzystający z kostek OLAP autoryzują się przy pomocy klasycznej domeny Active Directory, zatem należy zapewnić możliwość połączenia z sieci lokalnej do Azure, ale i w przeciwną stronę – na potrzeby dostępu do Active Directory. Do testów posiadaliśmy dosyć szybkie łącze do Internetu, zestawiony został Azure VPN Gateway w trybie Route-Based i rozmiarze High-Performance, co dało wydajność na poziomie 200Mb/s. W zupełności wystarczyło to do załadowania danych do kostek OLAP w Azure i nie powodowało znaczących opóźnień przy pobieraniu wyników przez użytkowników końcowych.

vpngateway-site-to-site-connection-diagram

Utworzona została maszyna GS2 z MSSQL Server 2016 Enterprise. Aby zapewnić wydajność dla danych, dołączone zostało 8 dysków P30 (SSD) w stripingu. GS2 jest najmniejszym rozmiarem maszyny serii G do którego możemy dopiąć 8 dysków dla danych, a w przyszłości skalować w górę do GS5. Dołączona została do Azure Log Analytics na potrzeby zbierania i analizy logów.

Ciekawostka zaobserwowana w trakcie testów, to że na potrzeby rozwiązania zastosowana została maszyna GS5, która de facto nie była odpowiednikiem obecnie stosowanych serwerów we własnej infrastrukturze. Konfiguracja GS5 to kilka razy mniej pamięci RAM oraz znacznie mniejsza moc obliczeniowa, która w efekcie pozwoliła osiągnąć zbliżony do obecnie uzyskiwanego czas procesowania kostek. Istotny jest również fakt, że użytkownicy łączący się do kostek OLAP za pośrednictwem Excel’a dostępnego na własnych stacjach roboczych uzyskiwali wydajność zbliżoną, a niejednokrotnie większą niż w przypadku obecnie stosowanych serwerów. Wniosek z obserwacji jest bardzo prosty. Uwzględniając niewielki nakład pracy udało się zapewnić porównywalny wydajnościowo dostęp do zasobów OLAP. Z perspektywy skalowalności rozwiązań tej klasy jest to bardzo istotny argument, pozwalający na wykorzystanie platformy Azure jako naturalnego rozszerzenia własnej infrastruktury przy zachowaniu pełnej kompatybilności rozwiązania z obecnie stosowanymi narzędziami.

Po przetestowaniu wydajności serwera w Azure, po stronie klienta skonfigurowany został prosty load balancer oparty o HAProxy, dzięki czemu użytkownicy byli równomiernie rozkładani pomiędzy serwerem lokalnym a serwerem w Azure. Zapewniło to przezroczystość użytkowania takiego rozwiązania ale i dodatkową elastyczność. W razie gdyby zaszła potrzeba wyłączenia któregoś z serwerów, użytkownicy będą kierowani na drugi. Łatwo także dodać do takiego scenariusza kolejne serwery.

Całość rozwiązania była szczególnie zadowalająca ze względu na prostotę i szybkość wdrożenia. Pozwoliła na odciążenie serwerów lokalnych w przeciągu kilku dni. Niestety, podobnie jak środowiska w lokalnych centrach danych, przez wykorzystanie instancji maszyn wirtualnych – jest to najmniej elastyczne i optymalne kosztowo rozwiązanie. Można oczywiście używając Azure Automation startować/zatrzymywać serwery czy zmieniać ich rozmiar, ale jest to w pewnym stopniu mniej automatyczne niż pozostałe scenariusze.

Sprawdzamy scenariusz 2

Składniki:

  • Azure SQL Data Warehouse – 100->1000 DWU
  • Azure SQL Database
  • Azure Data Factory – wraz z Data Management Gateway
  • Azure Storage
  • PowerBI – interaktywne raportowanie i wizualizacja danych

Scenaiursz numer 2 to o podejście o jeden, a nawet kilka kroków dalej, niż scenariusz 1. Pierwszy krok to zmiana lokalizacji hurtowni danych stanowiącej źródło danych dla kostek analitycznych. W scenariuszu nr 1 hurtownia danych pozostawała cały czas na lokalnych serwerach firmy. Tymczasem w tym podejściu zdecydowaliśmy się na jej przeniesienie na platformę Azure, co więcej ze względu na wolumin danych (5 TB) oraz wymagania w zakresie wydajności rozwiązania zdecydowaliśmy się na wykorzystanie SQL Data Warehouse. W tym miejscu pojawiła się konieczność pierwszej ze zmian – sposób zasilania hurtowni. DWH wymaga zasilenia danymi z baz źródłowych. Wykorzystaliśmy do tego Azure Data Factory który w dosyć przyjemny sposób pozwala na kopiowanie danych pomiędzy różnymi bazami danych, a w naszym wypadku, do DWH. Wykorzystując Data Management Gateway, będący częścią Azure Data Factory, nie musieliśmy zestawiać dedykowanej komunikacji VPN, ponieważ Data Management Gateway zapewnił zabezpieczenie transmisji danych.

data-flow-using-gateway

Warto w tym miejscu podkreślić, że w pełną efektywność architektury MPP, w jakiej działa SQL Data Warehouse, uzyskujemy poprzez zrównoleglenie operacji na niezależnych węzłach obliczeniowych(compute nodes), w tym również ładowania danych. Właśnie dlatego ładowanie  odbywało się z wykorzystaniem funkcjonalności Polybase, która korzystaja z bezpośredniego dostępu do zasobów obliczeniowych usługi (compute node). Korzystając z tego podejścia udaje się osiągnąć imponujące wyniki. Co więcej już w tym miejscu jesteśmy w stanie wykorzystać benefit łatwości skalowania usługi i na czas ładowania danych “podkęcić” hurtownię wydajność hurtowni. W naszym przypadku nie było to nawet konieczne, a przeładowanie dziennej partii danych (ok 6 GB), zajęło nieco ponad 60 minut ( uwzględniając transfer danych z serwerów wewnątrz obecnej infrastruktury i ograniczenia łącza internetowe).  W przypadku architektury MPP kluczem do sukcesu jest stosowana dystrybucja danych. Dystrybucja w przypadku SQL Data Warehouse zawsze odbywa się pomiędzy 60 baz danych, które obsługiwane są w obrębie dostępnych węzłów obliczeniowych usługi. Skalowanie usługi (zmiana ilości DWU), to zmiana ilości węzłów obliczeniowych, ale również reorganizacja dystrybucji pomiędzy dodawane/odejmowane węzły.

Mając dane odpowiednio załadowane do hurtowni przystąpiliśmy do kolejnego kroku – udostępnienie danych ma potrzeby analizy i raportowania użytkownikom końcowym. Mając do dyspozycji wydajny silnik bazy danych większość zapytań agregujących dane może być realizowana bezpośrednio na hurtowni danych. Jednak jakoś mimo wszystko nadal nie wyobrażamy sobie użytkowników końcowych, zwłaszcza biznesowych posługujących się z zapytaniami TSQL. Właśnie dlatego zdecydowaliśmy się użyć narzędzia jakim jest Power BI. Dzięki możliwości wykorzystania Power BI jako interfejsu dla użytkowników końcowych, wyeliminowaliśmy konieczność posługiwania się zapytaniami TSQL, które zastąpione zostały mechanizmem “Przeciągnij & upuść”. Power BI to również doskonałe narzędzie do modelowania danych. Dzięki możliwości wykorzystania języka wyrażeń DAX (Data Analysis Expressions) udało się zbudować dodatkowe miary wyliczalne np. wartości średnie, dynamika sprzedaży czy klasyka analizy, czyli miary typu Month to Date(MTD), Year over Year (YOY), które zapewniają pełną swobodę dostępu dla użytkowników końcowych. Pomimo, że większość operacji wykonywana była czasy odpowiedzi zapytań liczone były w dziesiątkach sekundach. Jednak apetyt rośnie w miarę jedzenia, właśnie dlatego, aby zapewnić jeszcze większą wydajność zdecydowaliśmy się na dodanie dodatkowe komponentu – usługi analitycznej Azure Analysis Services, która jest odzwierciedleniem dobrze znanej z SQL Server usługi Analysis Services w modelu Tabular. Efekt? Dane z hurtowni ładowane są do struktur tabelarycznych Azure Analysis Services, na poziomie AAS uzyskujemy możliwości swobodnego modelowania korzystając również z wyrażeń DAX, a Power BI łączy się do wydajnego silnika, który na zapytania na zbiorze kilkuset milionów rekordów odpowiada w pojedynczych sekundach.

Power BI oprócz samej swobody dostępu do danych gwarantuje dostępność do danych na dowolnym urządzeniu mobilnym, jako, że mobilna aplikacja Power BI dostępna jest na każdym systemie operacyjnym od iOS, przez Android po Windows Phone.

W przypadku bardzo dużych zbiorów danych oraz wydajnej hurtowni (jak w przypadku Azure SQL Datewarehouse), można skorzystać również z opcji Azure Analysis Services w trybie DirectQuery. W jakim celu? Cel jest prosty wydobywać wszystko co najlepsze z Analysis Services czyli swoboda dostępu do użytkownika, mechanizmy bezpieczeństwa na poziomie wierszy z wykorzystaniem DAX, cachowanie i optymalizacja zapytań przez silnik Analysis Services (szczególnie widoczne w najnowszej wersji Analysis Srvices) oraz co w wielu przypadkach najważniejsze – wyeliminowanie konieczności procesowania struktur i danych Analaysis Services.

Efekt końcowy rozwiązania najelpiej obrazu poniższy schemat

scenariusz_2

Reasumując rosnące zapotrzebowanie w zakresie analizy danych to wyzwanie, wyzwanie, które w zależności od potrzeb i czasu jakim dysponujemy, można zaadresować w ciągu kilku dni, podobnie jak przedstawiliśmy to w Scenariuszu nr 1 lub wykorzystać elastyczność i skalowalność usług analitycznych i hurtowni danych dostępnych na platformie Azure

Autorzy:

  • Bartłomiej Graczyk
  • Maciej Stopa

It’s always the Load Balancer

$
0
0

Ok, this is probably an (intentionally) inflammatory title, but in this case, it’s absolutely true.

A common Exchange Online migration issue we see is the SourceMailboxAlreadyBeingMovedTransientException which I previously blogged about.  One of the most common reasons we see for this error is a communications error (found using the command in the previous blog) that looks like this:

CommunicationErrorTransientException: The call to 'https://MRSPROXYHOST/EWS/mrsproxy.svc SERVER.domain.com (14.3.178.0 caps:05FFFF)' failed.
Error details: The remote endpoint no longer recognizes this sequence. This is most likely due to an abort on the remote endpoint. The value of wsrm:Identifier is not a known Sequence identifier. The reliable session was faulted.

The reason you see this is because MRS Proxy uses WCF’s implementation of reliable sessions.  In this scenario each request is sequenced (numbered) and the current (expected) sequence number is held in memory in MRS Proxy (In 2010 on the Client Access Server).  The reason for the error is that the request was sent to a different CAS than was previously being used (and thus the new CAS didn’t know about the previous sequence).  In Exchange 2010, we require HTTP(s) sessions for MRS Proxy to be sticky to a particular CAS (also referred to as persistence or affinity).  It also needed to be client IP-based persistence because the MRS Proxy client component doesn’t actually store and persist cookies, rendering all forms cookie-based affinity useless.  Additionally, since MRS Proxy connections use NTLM authentication, you can’t do persistence on the Authorization HTTP header.  If you see this error, it’s almost certainly the load balancer not maintaining persistence.  You’ll see this primarily when migrating from Exchange 2010 because Exchange 2013 and later doesn’t require load balancer persistence.

Hope this helps.

Making Azure Data Lake Store the default file system for Hadoop

How to retrieve Job action settings of Scheduler Job using Powershell

$
0
0

Sometimes, we may have a requirement to retrieve the job action details of your scheduled job in the Scheduler job collections using Powershell.  

There are no direct options available in PowerShell to retrieve the job action details. You need to cast the jobAction to appropriate derived class of the Action settings to retrieve the details of the action like like Uri, Storage Account,Service Bus Queue etc., 

Here is the sample PowerShell script which retrieves the details like Job Uri, Storage Account, Service Bus Queue etc.,

 PS Script:

$schedulerJobs= Get-AzureRmSchedulerJobCollection -ResourceGroupName SchedulerIbiza -JobCollectionName testscheduler | Get-AzureRmSchedulerJob
foreach($job in $schedulerJobs)
{
if($job.JobAction.JobActionType -eq "StorageQueue")
 {
     $jobAction = [Microsoft.Azure.Commands.Scheduler.Models.PSStorageJobActionDetails]$job.JobAction;
     Write-Output 'Storage Account '
     Write-Output '----------------'
     Write-Output  $jobAction.StorageAccount;
 }
elseif(($job.JobAction.JobActionType -eq "ServiceBusQueue") -or ($job.JobAction.JobActionType -eq "ServiceBusTopic"))
 {
     $jobActionSB = [Microsoft.Azure.Commands.Scheduler.Models.PSServiceBusJobActionDetails]$job.JobAction;
     Write-Output 'Service Bus Queue '
     Write-Output '----------------  '
     Write-Output $jobActionSB.ServiceBusQueueName;
 }
 else
 {
    $jobActionHttp = [Microsoft.Azure.Commands.Scheduler.Models.PSHttpJobActionDetails]$job.JobAction;
    Write-Output 'Job Name '
    Write-Output '-------- '
    Write-Output $jobActionHttp.Uri;
  }
}

Below is the sample screenshot with the result:portalimages

02/20 – Errata added for [MS-WSUSAR]: Windows Server Update Services: Administrative API Remoting Protocol

$
0
0

Seven (7) issues corrected at https://msdn.microsoft.com/en-us/library/mt654007.aspx

  • In Section 2.2.3.1, UpdateSearch Element, updated the element name UpdateSearch to UpdateScope.
  • In Section 2.2.3.1, UpdateScope Element, revised the XML fragment to eliminate the duplicate UpdateTypes attribute.
  • In Section 2.2.3.1.15, ApprovedComputerTargetGroups Attribute, in the escaped example, changed “GUIDID” to “GUID”.
  • In Section 2.2.3.2.2, RequestedTargetGroupNames Attribute, in the escaped example, added “&quot;&lt;”.
  • In Section 2.2.4.11, EmailNotificationConfigurationRow, added the complexType element to the first line of the XML definition.
  • In Section 3.1.4.82, GetDynamicCategories, added the </wsdl:operation> tag to the end of the XML definition.
  • In Section 3.1.4.76.3.1, SignCabExForPublishingWithTimeStampOptionRequestBody, in the description of the filePath field, changed the capitalization of the field name from filepath to filePath.

 

Viewing all 35736 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>