Partner Technical Services Blog

A worldwide group of consultants who focus on helping Microsoft Partners succeed throughout the business cycle.

January, 2011

  • Microsoft Dynamics® AX 2009: How to Call AX 2009 from an External Application and Open a Specific Form/Record


    (This post courtesy of Natalia Efimtseva)

    Recently I worked with my colleague, Max Belugin, who is an expert in Dynamics. We were solving one interesting question—how you can activate and open a specific AX 2009 form/record from an external application or code.

    You can use following approaches to open AX from an external environment:

    1. COM API

    Unfortunately, at the current moment .NET Business Connector doesn’t implement UI function, and thus it is not possible to open a specific AX form. But we can register AX32.EXE as a COM Object.

    static void Connect(string[] args)
    AxClientLib.DynamicsAxApplication dynamicsClient;
    //find running Ax32.exe
    dynamicsClient = (AxClientLib.DynamicsAxApplication)System.Runtime.InteropServices.Marshal.GetActiveObject("Dynamics.Application");
                   //Launch new Ax32.exe
    dynamicsClient = new AxClientLib.DynamicsAxApplicationClass();
    if (dynamicsClient != null)
    //Run form
    dynamicsClient.OpenMenuItem("DMO", "SalesTable", AxClientLib.AxMenuType.DisplayMenu);

    Note: API doesn’t really call “form open,” but rather calls a Menu Item associated with a form. So you can call a specific form in this way, but not a specific record.

    2. SysStartupCmd

    You can also run a command when an Application Object Server (AOS) instance starts (details).

    You need to:

    • Add your startup command to the switch in Classes\SysStartUpCmd\construct statement (given your startup statement is FormXX).
    case 'FormXX':
    return new SysStartupCmdFormXX(s,parm);
    • Create a new class SysStartupCmdFormXX.
    class SysStartupCmdFormXX extends SysStartupCmd
    • Override the method applInit in this class.
    void applInit()
    Args args;
    FormRun formRun;
    args = new args(formstr(FormXX));
    formRun = classFactory.formRunClass(args);

    This guidance is taken from here—so you can implement your own desired behavior of AX.

    3. AxPath

    AxPath is a protocol for activating Axapta forms. It does the following:

    • It sits on a timer event and polls the queue.
    • When it finds that there are some commands for the queue, it executes them.

    There is an external part named "URL handler," which takes an URL and places it in the queue. The queue is implemented using shared memory.

    So, for example, when you click in the browser in URL like:


    The following actions are performed:

    1. Browser executes an URL handler with the URL as a command-line parameter.
    2. URL handler puts that URL into the queue.
    3. When the Tabax plugin polls the queue and detects that the URL is present, it opens the EmplTable menu item and navigates to  the particular employee.

    With this method, you can open a specific form as well as a specific record.

    4. EventDrillDown

    This approach is based on alerts and notification capabilities of Axapta and named pipe protocols. External drill-down is the ability to initiate and use the AX drill-down feature from a program external to AX. This means you can open a specific form as well as a specific record.

    Please refer this link for more details and source code for this method.

  • Capture a Windows® Image from a Reference Computer Using Capture Media—for IT Pros

    (This post courtesy of Simone Pace)

    In order to use System Center Configuration Manager 2007 to distribute the Windows 7 operating system to our managed clients, we need to provide to the OS bits somehow to the site server. One of the methods we can use is capturing a Windows 7 WIM image from a previously prepared reference computer.

    System Center Configuration Manager 2007 offers standard and easy ways to deploy software in our IT Infrastructure. One of the most relevant features we can take advantage of is the highly customizable Operating System Deployment capability built in the product.

    The Windows Vista® and Windows 7 new WIM image format further simplifies OS distribution by being independent from the destination client system’s hardware, so that we can use a single image to target different computers and keep our image repository less complex and more easily managed. This post shows an example of steps we can follow to successfully capture a WIM image of Windows 7 Ultimate Edition x64 from a reference computer.

    Note: Further posts will follow that illustrate the specific tasks required to upgrade a Windows XP computer.

    Testing lab description screenshots and computer names used in this article refers to a Virtual scenario running on a Hyper-V R2 host:

    • Domain: (single site)
    • All Servers are Windows 2008 R2 Enterprise servers.
    • Server CON-001
    • SCCM with almost all roles installed
    • SQL Server 2008
    • Windows Automated Installation Kit 2.0
    • WDS Transport Server role installed
    • Server CON-002
    • Active Directory Domain Controller role installed
    • DNS Server role installed
    • DHCP Server role installed
    • SCCM Primary Site: C01
    • Reference client is a Windows 7 Ultimate edition x64 clean setup

    1. Create a Capture Media iso file.

    The iso image we are creating in this section will be used to boot the reference machine and start the OS wim image creation sequence.

    a. Log on CON-001 and open the Configuration Manager console.

    b. Go to Task Sequences node.

    c. Click on “Create Task Sequence Media” in the action panel.

    d. Select Capture Media and click next on the welcome page.


    e. On the “Media file” click Browse, select the folder where you are going to save the media iso file, and give it a name (for example MediaCapture), click Next.clip_image004

    f. On “Boot Image” click Browse, and select the boot image suitable for your reference computer.

    Note: Two boot images (x86 and x64) are automatically added when you install WDS role in the system.

    g. On Distribution Point leave \\CON-001 (or select you preferred DP), click Next.clip_image006

    h. Review the summary and click Finish.

    i. The server starts building the iso image.


    j. Click Close to close the wizard.

    2. Prepare the reference computer.

    a. Log on CON-Ref7Client with user Administrator account

    b. Check the following requirements

    i. The computer must be a workgroup member.

    ii. The local Administrator password must be blank.

    iii. The local system policy must not require password complexity.

    iv. Apply the latest Service Pack and updates.

    v. Install the required applications.

    3. Capture the image using the Capture Media.

    a. Capture the MediaCaputer.iso you created in Step 1 in the Virtual DVD of the reference PC (if is a VM), or

    b. Burn the MediaCapture.iso on a DVD and insert it in the computer.

    c. Boot the reference computer normally.

    d. Start the autoplay DVD and launch the Capture Image Wizard.


    e. Click Next.

    f. Set the path where you want to save the wim file, give the image a name, and insert the appropriate credential to access the path and write on it.

    g. Click Next.

    h. Fill in the required data in the Image Information window.


    i. View the summary and launch the capture by clicking Finish.


    j. The program will start executing the sysprep phase.


    k. After sysprep, the computer will restart in WinPE to start the capture.


    l. (Reboot).


    m. Computer restarts in WinPE and starts the Capture.


    n. Capturing first Partition (1-2)


    o. And capturing second partition (2-2).


    Note: The number of partitions captured depends on the reference PC’s disk partitions. In the case shown, the VM had a 100Mb partition for BitLocker® capability (Partition 1 of 2).

    p. When finished, press OK to quit and restart.


    q. On the Server we can see the captured image file.


    4. Add the file to the image repository in SCCM 2007.

    a. Share a folder and move the image file (example \\ServerName\Images).

    b. Open the SCCM console, navigate to Site Database > Computer Management > Operating System Deployment > Operating System Images.

    c. Import the image by clicking Add Operating System Image in the task panel.

    d. Type or browse the network path to the image you want to import, and click Next.


    e. Fill in the required information, then click Next.


    f. Review the summary and complete the wizard.



    5. Distribute the image to Distribution Point.

    a. In the SCCM console, navigate to the image you uploaded in step 4 (Site Database > Computer Management > Operating System Deployment > Operating System Images) and select it.

    b. Click Manage Distribution Points in the action panel.


    c. Click Next on the wizard starting page.

    d. As DP doesn’t have the image deployed yet, leave the default selection (copy) and click Next.clip_image037

    e. Select the DPs where you want to deploy the image to and include their PXE DP’s hidden share.clip_image039

    f. Click Next and Next again in the Completion page.



    g. Check the copy progress in the Package Status folder until you see it is Installed.


    h. You are now ready to distribute the Windows 7 Ultimate x64 Image to client computers, either by upgrading or installing new machines.

  • Microsoft Security Bulletin Webcasts for Partners

    (This post courtesy of Riyaz Jaffer)

    Partner Technical Services (PTS) and Commercial Technical Support (CTS) teams are pleased to announce new live webcasts for Microsoft Partners. This new series highlights the latest security updates, including technical details on each update, recommendations for deployment, and security intelligence about potential and real-world threats caused by vulnerabilities—vulnerabilities which the latest security updates now address. These webcasts also include an in-depth question-and-answer session for partners to engage with a consultant who can properly respond to all of their concerns.

    Please find the registration links below:

    Event Title




      PLC Registration URL

    PTS Webcast: Information About Microsoft February Security Bulletins (Level 200)


    11:00 AM PST

    90 min

    PTS Webcast: Information About Microsoft March Security Bulletins (Level 200)


    11:00 AM PST

    90 min

    PTS Webcast: Information About Microsoft April Security Bulletins (Level 200)


    11:00 AM PDT

    90 min

  • Open XML SDK: Merging Documents

    (This post courtesy Natalia Efimsteva)

    Office Open XML (OpenXML) is a zipped, XML-based file format developed by Microsoft for representing spreadsheets, charts, presentations and word processing documents. The Office Open XML specification has been standardized by ECMA (ECMA-376) [wiki]. Open XML is the native format for MS Office 2007/2010.

    Open XML allows you to manipulate MS Office files in your own and desired way. For example, you can create .docx files programmatically on the server side (which wasn’t recommended for binary MS Office formats like .doc).

    The Open XML SDK 2.0 for Microsoft Office is built on top of the System.IO.Packaging API and provides strongly typed part classes to manipulate Open XML documents. The SDK also uses the .NET Framework Language-Integrated Query (LINQ) technology to provide strongly typed object access to the XML content inside parts of Open XML documents.

    The Open XML SDK 2.0 simplifies the task of manipulating Open XML packages and the underlying Open XML schema elements within a package. The Open XML Application Programming Interface (API) encapsulates many common tasks that developers perform on Open XML packages, so you can perform complex operations with just a few lines of code.

    So now let’s discuss an often-asked question like programmatically merging Open XML documents. It’s not a very complicated task, but we need to think about some things.

    First of all, let’s look at the internal .docx structure. Below is an unzipped view:


    The OpenXML SDK 2.0 contains a great tool – Document Explorer – which allows us to view XML markup as well as .Net representation of a code to construct this markup:


    So when we’re merging documents we need not only merge content (text) but also styles of the document and other formatting settings.

    Open XML SDK operates on Open XML elements like paragraphs rather than logical (for user) objects like pages, content, and so on.

    But we have tool which can make our life easier – DocumentBuilder from PowerTools for Open XML. Another way is to use altChunk. This element specifies a location within a document for the insertion of the contents of a specified file containing external content to be imported into the main WordprocessingML document. Differences between these two approaches described in a post “Comparison of altChunk to the DocumentBuilder Class”. We will talk further about the DocumentBuilder approach.

    Use of the DocumentBuilder util is really very simple:

    using (WordprocessingDocument part1 = WordprocessingDocument.Open(@"Doc1.docx", false))

    using (WordprocessingDocument part2 = WordprocessingDocument.Open(@"Doc2.docx", false))


    List<Source> sources = new List<Source>();

    sources.Add(new Source(part1, true));

    sources.Add(new Source(part2, true));

    DocumentBuilder.BuildDocument(sources, "MergedDoc.docx");


    The most interesting is the second argument of the constructor of Source class. Using the keepSections argument appropriately allows you to precisely control which sets of section properties (visual formatting in other words) are moved from source documents into the destination document. For more information please see How to Control Sections when using OpenXml.PowerTools.DocumentBuilder post.

    We have two documents:





    DocumentBuilder will do all of the work for you for merging the two documents preserving:

    • formatting
    • page numbers (including Link Sections)
    • headers and footers
    • orientation
    • and so on.

    That’s magic!


    Additional Resources

  • Virtualization and Private Cloud- Part 2


    (This post courtesy Iftekhar Hussain)

    In my last blog post, I talked about the how Virtualization plays a vital role in setting up a Cloud infrastructure and enables the kind flexibility, elasticity, and automation which cloud services requires.

    I also mentioned about Microsoft Hyper V Cloud offerings which we introduced in Berlin at TechEd Europe 2010.

    With Microsoft, partners can participate in the full range of cloud offerings across the public and private spectrum to create new business models and generate new revenue streams. Partners will be able to expand their role as trusted advisors through broader customer engagements. They’ll also be able to deliver increasing business value to customers by offering dramatic improvements in business agility, operational efficiency, and IT maturity—with significant cost savings. And they’ll be able to win more business by closing larger deals and expanding into new markets.

    Let’s look into these offerings in details and see what kind of role you as a Microsoft Partner can play and what kind of opportunities exists for you.


    Hyper-V Cloud Fast Track:
    For customers who need some level of customization, but also want to reduce risk and speed deployment, reference architectures can provide the perfect balance. Microsoft is collaborating with Dell, Fujitsu, Hitachi, HP, IBM, and NEC to deliver a broad choice of pre-defined, validated configurations for private cloud deployments—comprising compute, storage, networking resources, virtualization, and management software. Dell, HP and IBM have reference architectures available today, and the other partner will have reference architectures shortly. More information is available at


    Hyper-V Cloud Service Provider Program:
    More than 70 service providers around the world to offer infrastructure as a finished, fully-hosted service built on Microsoft’s technology. This option delivers the fastest, most cost-effective implementation for private clouds. Service providers include: >Korean Internet Data Center; Fasthosts (UK, US); Agarik (France); Hostway Corporation (US, UK, Netherlands, Germany, France, Belgium, Romania).

    You can find the entire list of all the Service providers offering Private cloud around the world here.

    Hyper-V Cloud Deployment Guides:
    For customers, who want to build their own private clouds on top of existing infrastructure investments, we are offering tools and guidance based on expertise developed during hundreds of Microsoft Consulting Services (MCS) customer engagements over the past few years. This element of the Hyper-V Cloud program optimizes for the highest levels of flexibility, control, and customization.

    Hyper-V Cloud Deployment Guides are available for download.

    This is also a good opportunity for partners to make use of these deployment guides and help the customers deploy Private cloud in their organization and streamline their movement to the cloud.

    Hyper-V Cloud Practice Builder:
    Enables systems integrators to scope, resource, plan, deliver, and operate a Hyper-V Cloud private cloud engagement. Partners will be provided with guidance on planning and managing a server virtualization engagement, and installing, configuring and operating a virtualized Private Cloud environment. They’ll also receive project plan templates, architecture and sizing guides, and a predefined set of validation test cases to be completed after any Proof of Concept, Production Deployment, or expansion of an existing system. The Hyper-V Cloud Practice Builder is available to all partners that are members of the Microsoft Partner Network.

    You can download the Hyper-V Cloud Practice Builder from here:

    You can find more information about Hyper V Cloud Practice Accelerator here.

    Hyper-V Cloud Accelerate:
    Hyper-V Cloud Accelerate is an offer to customers and partners to fund Microsoft cloud assessments, proofs of concept, and deployments. You must be nominated by your Microsoft Partner Account Manager to participate in this initiative; selection is based on attainment of the Microsoft Virtualization competency and on the level of your skills, experience, and resources to help customers plan, build, and deploy private and public cloud solutions that use Windows Server 2008 R2, Hyper-V, System Center, and related products. Contact your Partner Account Manager for more information.

    Virtualization is a stepping stone to cloud computing, but private cloud computing is much more than virtualization alone. Some of the benefits commonly associated with cloud computing include elasticity, metered usage, and self-service provisioning. This is true for private clouds as well—private clouds deliver these benefits, while giving customers more control over things like physical infrastructure and security policies and you as a Microsoft Partner have a greater role to play to help your customers to realize these benefits of the cloud to help them achieve better business agility and continuity.

    Please feel free to contact myself or our GPS team if you have any questions regarding Microsoft Hyper V Cloud Offerings


  • Microsoft Partner Blogs

    While the focus of the Partner Technical Services blog is to share information that focuses more on the technical side of the business, I was informed today of an excellent resource that the MPN team has put together to collect blog posts from our Partners. 

    What better way to gain perspective on large deployments from Partners like Accenture or Avanade, or dive into the deep technical expertise of MVPs like Shane Young (SharePoint) or Susan Bradley (Small Business Server)?  Who better to learn about the focus of the Microsoft Partner Network than to subscribe to Jon Roskill or Eric Ligman’s blogs?

    The following site links to 144 different blogs focused on Microsoft Partners, and a team (of humans!) comb through every post and hand-select the best posts to aggregate into the Microsoft Partner Network Blogger RSS feed.

    Check it out!


  • Partner Technical Services at TechEd Europe 2010


    (This post courtesy Iftekhar Hussain)

    Last month in TechEd Europe in Berlin, I got an opportunity to present couple of sessions on Advanced Virtualization Management and meet customers, partners. Through this post, I would like to share my experience and bring out the highlights and messaging from the event to everyone’s attention.

    The theme of this year’s TechEd Europe was Private Cloud. We announced Hyper-V Cloud, which is a set of programs and initiatives to help our customers and partners deploy private and public clouds to deliver IaaS based on Windows Server Hyper-V, System Center, and related products.

    You can see my earlier post about Virtualization and Private Cloud [Part 1] [Part 2] for more information.

    In the keynote speech, Brad Anderson, Corporate Vice President, spoke about the transformation IT Pros and developers are experiencing with the cloud including:

    • The sweeping change from mobile phones to the datacenter
    • How the cloud is changing the face of productivity for IT and business with Office365 and Intune
    • How to achieve IT as a service with Infrastructure as a service, platform as a service and Software as a service

    You can watch the entire keynote speech on demand here:

    Get Microsoft Silverlight

    I had a pretty busy schedule in Berlin with three of my sessions which I delivered on Advanced Virtualization Management and Microsoft Desktop Virtualization Solutions.


    You can watch my breakout session on demand here:

    Get Microsoft Silverlight

    Despite my busy schedule in preparing and delivering these sessions and meeting attendees in the TLC booth, I was also able to attend a few other sessions. There were some great sessions delivered by Microsoft teams on Virtualization and future management products which enable the private cloud-based infrastructure and its management.

    The key highlight in the Virtualization track was the unveiling of SCVMM vNext or SCVMM 2012, which provides next generation virtualization and datacenter management. With VMM 2012 you will be able to:

    • Manage the Fabric – Deploy bare-metal Hyper-V server and cluster configuration, network and storage management!
    • Deploy and Manage Services – end-to-end service lifecycle management via Service Templates and powerful application virtualization technologies such as Server App-V.
    • Deploy and Manage Clouds – create private clouds, delegate and provide self-service user access.

    You can watch both the sessions on VMM 2012 here:

    System Center Virtual Machine Manager vNext: Fabric Management for the Private Cloud

    Get Microsoft Silverlight

    System Center Virtual Machine Manager vNext: Service Lifecycle Management for the Private Cloud

    Get Microsoft Silverlight

    All these breakout sessions are uploaded on TechEd Online and you can watch them at NO COST!

    If you could not attend Microsoft TechEd Europe 2010 in Berlin and you are keen to learn Virtualization technologies, you can’t afford to miss these sessions. Go to TechEd Online and search for these sessions with the session codes show below.


    I also had an opportunity to meet a lot of you partners and discuss latest technologies, product roadmaps, and the kinds of solutions they are building for their customers. It’s great to see the enthusiasm among partners about opportunities in the Private Cloud and how it helps the IT and businesses of our customers. We here in GPS are committed to assisting and supporting you as you build Virtualization and private cloud solutions for your customers. Please feel free to contact us if you need more information.



  • Virtualization and Private Cloud- Part 1


    Hello Everyone and welcome to the PTS Blog. My name is Iftekhar Hussain, and I am a Partner Technical Consultant here in the Microsoft Partner Technical Services team specializing in Virtualization technologies. Today I would like to talk about how Microsoft Virtualization can fuel private cloud within an organization and how Microsoft partners can tap this opportunity to help customers build their own private clouds.

    Cloud: Aren’t we hearing this word a lot these days? In almost every technical conversation, in journals and magazines, at conferences—everybody is talking about the cloud. Though there are a large number of companies, groups, and individuals talking about cloud technologies, everybody has their own understanding and interpretation of the cloud.

    So What Is Cloud Computing?

    A very simple way to explain cloud computing, is that the cloud is a service with a certain set of tools and resources on the Internet or in-house where you can perform all your computing tasks, save your data, generate and analyze reports, connect with people, or even have fun like playing games or watching TV or movies from any device like PC, TV, phone, or from any place.

    Cloud Computing Is Based on These Fundamentals:

    • Virtualization and automation
    • Interchangeable (fungible) resources such as servers, storage, and networks
    • Management of these resources as a single fabric
    • Elastic capacity (scale up or down) to respond to business demands
    • Applications (and the tools to develop them) that can truly scale out
    • Focused on the service delivered to the business

    There are two types of Clouds:

    Private Cloud:
    This is an internal service that can be hosted in-house with set of tools like Windows Server, Virtualization, and management solutions like System Center. It provides compatibility with local applications and keeps your data and information within the premises.
    Public Cloud:
    Provided by service providers, public cloud offers customers the ability to deploy and consume services. In this category, Azure™ is a highly scalable services platform providing pay-as-you-go flexibility delivered from Microsoft’s datacenters.

    In the cloud, automation is a great driver—without automation the whole purpose of the cloud is defeated and its true potential cannot be realized. The following automation is critical in the cloud:

    • Automatic provisioning of operating systems and applications as and when user demand arises.
    • Automatically provision new servers and other hardware when required.
    • Applications can be scaled up with more memory and processor power and other resources whenever load increases.
    • Dynamically shifting of load from one workload to another depending upon certain scenarios.

    And thus Virtualization and an integrated management solution becomes a super-critical component of a Cloud Platform.

    So What Does it Take to Build a Private Cloud of My Own?

    These technologies from Microsoft can help creating a fully automated cloud service:

    • Windows Server 2008 R2 Hyper-V:

    Hyper-V, the Windows Server 2008 R2 hypervisor-based server virtualization technology, is a core component of the Microsoft private cloud which hosts multiple Virtual Machines running business-critical applications increasing the utilization of your hardware, saving cost in terms of power, space, and management.

    • Microsoft System Center:

    System Center delivers cost-effective and agile datacenter services to manage physical, virtual, and cloud environments in an integrated manner.

    • System Center Virtual Machine Manager Self Service Portal 2.0:

    VMMSSP 2.0 is an extensible, turnkey solution that empowers datacenters to dynamically pool, allocate, and manage resources to enable on-premises private cloud computing.

    A couple of months ago in TechEd Europe 2010 in Berlin, we announced Hyper-V Cloud: a new set of programs that make it easier for customers and partners to build their own cloud infrastructures using the Windows Server platform. There are several programs associated with Hyper-V Cloud.

    In my next post, we'll go through what is included in Hyper-V Cloud offerings and learn about these programs in detail:

    • Hyper-V Cloud Fast Track
    • Hyper-V Cloud Service Provider Program
    • Hyper V Cloud Practice Builder
    • Hyper V Cloud Accelerate

    Stay tuned :)

  • Hello World

    Welcome to the New Partner Technical Services (PTS) Blog!

    PTS is composed a worldwide group of consultants who focus on helping Microsoft Partners succeed throughout the business cycle. We’re here to help you build a practice, answer your presales questions, help you position your business against the competition to win more deals, and consult on technical best practices during your deployment projects. We have both packaged and custom solutions that are designed to help increase revenue as well as expand your skill set to make your business win more throughout the business cycle.


    As a Microsoft Partner, you are entitled to free, competitive presales assistance and Advisory Services each year. You have access to 10, 20, or 50 hours of advisory assistance based on your partner level or competencies. In addition, partners have access to no-charge, unlimited online technical support in Online Technical Communities.

    Partner Level, Competency, Network Membership, or Subscription
    Partner Advisory Hours per Membership Year
    Partners with a gold competency
    50 hours
    Partners with a silver competency
    20 hours
    Subscribers to Microsoft Action Pack Development and Design
    10 hours
    All Microsoft Partner Network members, including those who do not receive Partner Advisory Hours through their Partner Network or Microsoft competency benefits, may purchase Partner Advisory Hours.
    Additional advisory hours are available for purchase at any time. Contact your local Partner Technical Services team for details.

    You’ll meet some of our Partner Technical Consultants here, as they share some of their industry knowledge that they think will be useful to you as a partner. Because we have the opportunity to work with a huge range of implementations and deployments with our Partners, we come across some rather interesting problems and solutions, which we suspect might be useful to others in such a large community. We hope you enjoy learning about these issues as much as we do! image

    Our consultants are located around the globe and can deliver benefits to you in several languages. But you can also reach out directly to find your local Partner Technical Services team ( to see specifically how we can help you and your business.

    Partners, if you have anything you’d like to read about, please let us know! We look forward to sharing our information, and to your input and interaction in the blog comments.