Microsoft Dynamics NAV

Team Blog

  • Microsoft Dynamics NAV Team Blog

    Outlook Addin generates an error: This attendee already exists

    • 0 Comments

    There are two ways to create meetings in Outlook:
    1. directly from the Calendar folder
    2. directly from the Contact, right click on the contact, press Create and then select Meeting

    The latter would open a new form where you can enter the required data, etc. Not a big deal but after synchronization from Outlook to Dynamics NAV, the Outlook Addin gives an error:

      This attendee already exists

    When creating a meeting by right clicking a contact, a link is added to a meeting for that contact. In order to see the linked contacts, go to Tools, Options, Contact Options, Show Linking on all forms. It is then visible at the bottom of a meeting form.

    Linked contacts are synchronized as to-do antendees (tab5199) with a flag attendance type (field 3) set to false. While normal contacts have this flag set to true. If there is the same contact present as a meeting attendee in Outlook and as a linked contact, the error occurs when synching, "This attendee already exists".

    It is not supported to have multiple attendees with the same email in outlook, added as recipients or as links since this prevents a correct synchronization to Dynamisc NAV.  As a workaround, Links should be removed from the APP entity, alternatively a duplicate attendee or a link should be removed from a meeting in Oultook before synchronizing the meeting.

    To remove the Links from the APP entity, the following needs to be done:
    - go to Administration, Application Setup, Microsoft Office Outlook Integration, Outlook Synch. User Setup
    - select the APP entity, select No. of Elements and press F6
    - select Links and press F4, Yes to delete the Links Outlook Collection from the APP entity in the Outlook Synch. Entity APP - Outlook Synch. Setup Details form

    Marco Mels
    CSS EMEA

    This posting is provided "AS IS" with no warranties, and confers no rights

  • Microsoft Dynamics NAV Team Blog

    Outlook Addin error: The related item for the synchronized Outlook item is not found in the specified folders. The following values were expected:.

    • 6 Comments

    When working with tasks and appointments, the following error could show up:

      The related item for the synchronized Outlook item is not found in the specified folders. The following values were expected:.

    It took us a while to find out why this error occurred. Let me first describe how this can be reproduced:

    First of all, create two contacts in the Contacts table in Dynamics NAV and use the following data:

    First Contact:
    John Doe
    Downingstreet 10
    1234 XX NL
    johndoe@dummy.nl

    Second Contact:
    John Doe
    Johningstreet 12
    5678 XX NL
    doejohn@123.nl

    - then install Demo installation of Dynamics NAV 2009 SP1 using domain user account called DOMAIN\Administrator
    - install NAS of Dynamics NAV 2009 Sp1 and populate it with the correct values
    - go to Administration / Application Setup / General / Change Log Setup
    - enable Change Log Activated
    - go to Sales & Marketing / Sales / Salespeople
    - press F3 and use the following data to create a salesperson

    MME
    Marco Mels

    - go to Administration / Microsoft Office Outlook Integration / Outlook Synch. User Setup
    - add the following to the Outlook Synch. User Setup window (Bidirectional):

    mmels CONT_SP        
    mmels CONT_COMP WHERE(Salesperson Code=CONST(MME))
    mmels CONT_PERS WHERE(Salesperson Code=CONST(MME))
    mmels TASK WHERE(Salesperson Code=CONST(MME))             1
    mmels APP WHERE(Salesperson Code=CONST(MME))               1

    - press Setup, select Register in Change Log Setup for CONT_SP, CONT_COMP, CONT_PERS, TASK and APP
    - start up Outlook and configure the Outlook profile with the correct settings for Mailbox enabled user account called Marco Mels
    - configure the Outlook Addin with the following folders:

    CONT_SP: Mailbox - Marco Mels\Contacts\Salespeople
    CONT_COMP: Mailbox - Marco Mels\Contacts\Company Contacts
    CONT_PERS: Mailbox - Marco Mels\Contacts\Person Contacts
    TASK: Mailbox - Marco Mels\Task
    APP: Mailbox - Marco Mels\Calendar

    - perform a Full Synchronization
    - go to the synchronized contact Marco Mels and populate it with an E-mail address
    - perform a normal Synchronization
    - go to Sales & Marketing / Sales / Salespeople
    - create a ToDo of Meeting type for salesperson Marco Mels
    - add a Contact attendee called John Doe (
    johndoe@dummy.nl) and finish the meeting creation
    - go to Sales & Marketing / Sales / Salespeople 
    - create a ToDo of Meeting type for salesperson Marco Mels
    - add a Contact attendee called John Doe (
    doejohn@123,nl) and finish the meeting creation
    - synchronize the ToDo's

    Result:
    The ToDo is created as a meeting in Outlook
    The Outlook Addin contains a red light showing an error for the created meeting:

    The related item for the synchronized Outlook item is not found in the specified folders. The following values were expected:.

    The Scheduling tab of the synchronized meeting contains one underlined entry:
    Marco Mels: underlined
    John Doe: not underlined

    - press CTRL+K and select the correct John Doe and press OK
    - synchronize the meeting requests, etc.

    Result:
    The ToDo is created as a meeting in Outlook.
    The Outlook Addin now does not contain a red light showing an error for the created meeting:

    In the beginning of the analysis we thought that this behavior was only seen if you had contacts with the same name, but with different email addresses. Then it would be natural Outlook behavior and the error message would just indicate that the user should verify the meeting and ensure the right contacts. The proposed solution to prevent the error message when it is not needed. The suggested fix now also ensures the the email address is being used in the attendee field. Combining the two fields name and email address would ensure that Outlook has enough information to actually resolve who is the contact.

    A hot fix exists for this issue and is described in KB article:
    983614 The related item for the synchronized Outlook item is not found in the specified folders. The following values were expected:.
    https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?scid=kb;EN-US;983614

    Marco Mels
    CSS EMEA

    This posting is provided "AS IS" with no warranties, and confers no rights

  • Microsoft Dynamics NAV Team Blog

    Outlook Addin invisible or inactive with error in debug log Dump of exception type 'System.IO.FileLoadException'

    • 0 Comments

    Sometimes the Outlook Addin, especially after a reinstall, becomes inactive or the Outlook Addin does not show up at all. The reason behind this is that the two below mentioned files have different build releases which causes the assemblies not to be loaded. After enabling the debug log file, the following error log can be seen:

    Error: 23.04.2009 11:51:47 [1] Dump of exception type 'System.IO.FileLoadException'
    Message: Could not load file or assembly 'Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn.resources, Version=5.0.26084.0, Culture=nb-NO, PublicKeyToken=4d69abd5d321bc2b' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
    Stack trace: at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
    at System.Reflection.Assembly.InternalGetSatelliteAssembly(CultureInfo culture, Version version, Boolean throwOnFileNotFound)
    at System.Resources.ResourceManager.GetSatelliteAssembly(CultureInfo lookForCulture)
    at Microsoft.Office.Core.CommandBarsClass.get_Item(Object Index)
    at Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn.Connect.OnStartupComplete(Array& custom)
    Inner exception: System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn.resources, Version=5.0.26084.0, Culture=nb-NO, PublicKeyToken=4d69abd5d321bc2b' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
    File name: 'Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn.resources, Version=5.0.26084.0, Culture=nb-NO, PublicKeyToken=4d69abd5d321bc2b'

    The following two files have different build releases:
    - Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn.resources.dll 5.0.25791.0
    - Microsoft.Dynamics.NAV.OLSync.NAVSyncAddIn .dll 5.0.26084.0

    A hot fix exists for this issue and is described in KB article:
    974581 The Microsoft Dynamics NAV Sync Add-in is not displayed or unavailable in Outlook and an error message is logged in the debug log: "Could not load file or assembly"
    https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?scid=kb;EN-US;974581

    Marco Mels
    CSS EMEA

    This posting is provided "AS IS" with no warranties, and confers no rights

     

  • Microsoft Dynamics NAV Team Blog

    Understanding RoleTailored Client Terminology

    • 0 Comments

    The RoleTailored client in Microsoft Dynamics NAV 2009 is designed to help users focus on their tasks by tailoring their application experience to the needs of their role. To help our customers better understand this new paradigm, and to help partners more easily create RoleTailored solutions, we’ve released an overview of terminology used in the RoleTailored client user interface. Customers can download the slide deck from the Microsoft Download Center. Partners can also read more information on PartnerSource (LINK).

    This terminology overview complements the User Experience Guidelines. These UX Guide provides guidance to partners on how to design user-friendly RoleTailored solutions. You can download the UX Guide from the Microsoft Download Center.

  • Microsoft Dynamics NAV Team Blog

    Microsoft Dynamics NAV 2009 R2

    • 0 Comments

    Just a few minutes ago at Directions EMEA in Prague, Jan Silleman and Dan Brown announced Microsoft Dynamics NAV 2009 R2. It will be available in the last quarter of 2010. The R2 release will contain several cool features (most of which were demo'd duing the keynote):

    • Integration with Microsoft Dynamics CRM.
    • RTC over the internet. 
    • Microsoft Application Virtualization. 
    • Online payment services. 
    • Treemap visualization.
    • Windows 7 enhancements.

    You can read the whole press release here.

  • Microsoft Dynamics NAV Team Blog

    Visual Studio 2010 and SSRS (RDLC) reports in NAV 2009

    • 5 Comments

    A couple of weeks ago Microsoft Visual Studio 2010 was released. Unfortunately we will not be able to support Visual Studio 2010 in Dynamics NAV 2009 when developing SSRS (RDLC) reports.

    When you are designing RDLC reports in NAV 2009 you are creating reports in a format known as the “RDL 2005” format.
    Both Visual Studio 2005 and 2008 supports this format, but not Visual Studio 2010. Visual Studio 2010 is able to open the “RDL 2005” format but will immediately convert the report to “RDL 2008” format. This conversion gives us the some challenges:

    1. To view an “RDL 2008” format report you will need to have to have the “Microsoft Report Viewer 2010” installed on all Role Tailored client (RTC) machines, currently the “Microsoft Report Viewer 2008” is installed by the NAV 2009 installation program.
    2. If we opened up for Visual Studio 2010 you will convert the reports you design to “RDL 2008” format, and leave the unopened reports in “RDL 2005” format. So i.e. are developing an add on and share this with other partners you will need to inform these partners that Report Viewer 2010 is a requirement for all RTC machines. And if these partners are to modify any of your reports, Visual Studio 2010 is a requirement as well.
    3. We need change our code to now compile to “RDL 2008” format when importing the RDLC layout back to NAV.

    So to avoid this confusion we will not open up for Visual Studio 2010 support before our next major version of Dynamics NAV.

    If you for other reasons want to use Visual Studio 2010 you can easily have Visual Studio 2008 and Visual Studio 2010 installed on the same machine. We will just open the Visual Studio 2008 version when you select “View / Layout” in the Object Designer.

    If you only have Visual Studio 2010 installed you will see this message:

    An error occurred when opening Report Designer. A supported version of Visual Studio could not be found.

    This is the same message you get when you have no Visual Studio installed, because we search for the following Visual Studio versions and in prioritized order. So in case you have both Visual Studio 2005 and 2008 installed, we will use the 2008 version:

    1. Microsoft Visual Studio 2008
    2. Microsoft Visual Web Developer 2008 Express edition with SP1.
    3. Microsoft Visual Studio 2005 with SP1
    4. Microsoft Visual Web Developer 2005 Express edition with SP1.

    In a previous blog post I outlined the Visual Studio options you have for designing RDLC reports for NAV 2009, and this list is still valid.

    Hint: If you are using Windows 7 and want to use “Microsoft SQL Server 2008 Express with Advanced Services ” you need to install “Microsoft SQL Server 2008 R2 Express with Advanced Services” to have a successful installation.

    Thanks,

    Claus Lundstrøm, Program Manager, Microsoft Dynamics NAV

  • Microsoft Dynamics NAV Team Blog

    Dynamics NAV Test Drive

    • 0 Comments

    Check out the updated Microsoft Dynamics NAV Test Drive site, where potential customers can log onto our Test Drive environment using their web browser and experience Microsoft Dynamics NAV 2009 first hand without the need of installing it themselves. On the site, you'll also find case studies, demos, videos, white papers, and other resources for learning about Microsoft Dynamics NAV solutions.

    http://www.dynamicsnavtestdrive.com/

  • Microsoft Dynamics NAV Team Blog

    Three Weeks to Directions EMEA

    • 0 Comments
    There is still time to register for Directions EMEA, the prime conference for Microsoft Dynamics NAV partners! The agenda includes:
    • An opening keynote by Jan Sillemann, Director of Microsoft Dynamics NAV Global Product Management, and Dan Brown, Microsoft General Manager of NAV R&D.
    • A keynote by Wim Jansen about the Microsoft Partner Program
    • 36 different sessions, divided into a business track, a technical track, and a presentation track
    • A RoleTailored client competition where you can show off your own implementation/solution
    • Several Hands-On Labs, featuring
      • Form Transformation
      • Web Services
      • RoleTailoring
      • Client Extensibility
    • Three round table discussions, where you can share ideas in a small (10-12 people) setting
    • Countless opportunities for networking, learning, listening, promoting, sharing, solving problems, and growing your business

    Register today!

  • Microsoft Dynamics NAV Team Blog

    How We Use MSDN Feedback to Improve Help

    • 3 Comments

    Have you ever submitted feedback on a page in the MSDN library for Dynamics NAV and wondered what happens to it? If you give a rating by clicking the stars in the top right corner of any topic, a feedback text box opens.* 

    FeedbackStars

    You click Send, and then what?

    We read and analyze every piece of feedback that comes in. We look at ratings for individual topics, average ratings for all NAV Developer and IT Pro Help that is published on MSDN, and changes in ratings over time. Unfortunately, we don't get very many ratings, but we use whatever we get. We also review the text feedback. Here's how we've categorized all 46 comments that we've gotten since we started publishing content on MSDN in December of 2008:

    • Fixed (12) - We made changes to the topic based on the feedback.
    • In Progress (8) - We currently have active work items assigned to writers.
    • No Action (26)

    Let me explain a little more about the "No Action" pieces of feedback. Out of those 26, we categorized 6 as "negative," 11 as "positive" and 9 as “neutral.” We still learn something about what's helpful or not helpful to you from (almost) all pieces of feedback, but they don't require any action from us.

    Here are a few examples of text feedback that we’ve received.

    You told us that the topic How to: Redesign Matrix Forms was "not thorough, there should have been more detail." So we added a new Walkthrough about redesigning a matrix form and linked from How to: Redesign Matrix Forms to the new Walkthrough. This feedback now goes in the Fixed bucket.

    The "neutral" No Action bucket usually contains incomplete comments. We’ve gotten comments like "..." or "ths." Another example of neutral feedback is a comment about MSDN, not about NAV Help, such as "ScriptFree is much easier to read and navigate." (Yeah, I like the Lightweight and ScriptFree options for the MSDN experience, too!)

    The feedback in the "positive" No Action bucket makes my day. It's great to hear that topics are helpful. Comments like, "excellent article, explained well and clear, very helpful" or "good one" are a nice pat on the back for me and the other writers. We track these as an indication of what areas of Help to continue to focus on in future versions.

    The ones in the "negative" No Action bucket are the most difficult. The information that "This is a hopeless article" or that a topic is "bad" or occasionally, a word that is not fit to print here, is definitely good information. We know we've missed the mark. But there's not enough information to know exactly what you didn't like or what we can do to improve the topic. That's why these go into the no action bucket. I wish I could chat with everyone who submitted something that lands in this bucket and ask for more detail. We can tell you're frustrated with the topic and we want to help, just tell us how!

    The next time you read something in the MSDN library, take a second to give us your honest feedback. We’re listening!

    -Jill Frank

    UPDATE July 23, 2010

    *Only the Classic view on MSDN has the "Click to Rate and Give Feedback" stars. If you are using the Lightweight view, click Preferences in the top right corner, select Classic, and then click OK to switch to the Classic view. If you are using the ScriptFree view, click Classic in the top right corner to switch the view. Now you can submit your feedback about Microsoft Dynamics NAV Help.

  • Microsoft Dynamics NAV Team Blog

    Convergence Atlanta Event: Partner Roundtable on Readiness Training

    • 0 Comments

    Calling all Convergence-Atlanta-bound partners! Training feedback wanted!

    Join the Microsoft Dynamics Worldwide Partner Readiness team at a roundtable discussion on April 26, from 3:30-4:30 pm at the Atlanta Omni Hotel. We'd like to get YOUR feedback on readiness training.

    For more details and to RSVP, please contact mctdyn@microsoft.com.

    --------------------------------------

    Convergence Atlanta 2010

  • Microsoft Dynamics NAV Team Blog

    Saying Farewell to the Native Database

    • 14 Comments
    I've met many people who imagine that everyone who works at Microsoft must be of a single mind, with one goal - much like a hive mentality. Nothing could be further from the truth. We are an organization of individuals, often passionate about our beliefs and very emotionally invested in the work that we do. We're very proud of our successes and we want to learn from our failures. We're very human. And as such, when I was asked to work with a team that would decouple the NAV product from our native database, it was with an element of sadness that I agreed. I can also admit that I wanted to do the job because, like many of you, I've worked with this product for over a decade and I wanted this one to happen by someone who understood what we were saying farewell to.    

    You shouldn't be burdened with the technical details about decoupling the files from our build system, generating the lists of extra dlls that we no longer need to install, or reviewing documentation that has references to the database format. When we are about to commit a huge change like this to our internal systems, we send an email to all team members informing them of an impending ‘Breaking Change' and to give teams a last chance to speak up about the impact this will have in their work cycles. There were almost no issues raised but I did receive a large number of comments from team members along the lines of "are you sure we want to take this away," "aren't we giving up the NAV simplicity," and "this is sad."  And a part of me agreed.

    But it's not really sad. The day we committed this change was a bit like the last day of High School. We've all had a fabulous time but our future is ahead.

    It's not sad because the original goal of Navision was not to become a best of breed database product - we wanted to build business applications. We happened to build a very clever little database at the same time but it was never the goal to have the database as the reason that people buy NAV.

    It's not sad because now we focus on SQL Server and we can ensure that SQL is the platform we do our enhancements on. And aim to improve performance on. And benchmark on.

    We can spare our Quality Assurance (Test) organization the pain of testing on a legacy platform and double our efforts into the SQL stack. We can spare our developers from maintaining data connections for two different platforms and spare ourselves the discussion about how to take advantage of SQL features without impacting the way the native database is used. 

    I'm looking forward to everything we can now do and I hope you will join us too.

    -Stuart Glasson

    For more information about the Statement of Direction for Microsoft Dynamics NAV where we talk about ending support for the native NAV database, see this blog post.

  • Microsoft Dynamics NAV Team Blog

    How to create/read xml file from Microsoft Dynamics NAV without using xmlports

    • 9 Comments

    Periodically we receive support requests about XMLport errors, which really are missing features in xmlport's functionality.
    However most of these requests are rejected because: xmlports are not supposed to fulfill all possible xml standard scenarios.
    So there always will be xml file which can't be created or readed by NAV xmlport.
    Possible workaround could be to use XML DOM automations.

    Create it by codeunit:

    ----------------------------------------

     OBJECT Codeunit 50052 xml create
    {
      OBJECT-PROPERTIES
      {
        Date=03/24/10;
        Time=[ 1:33:31 PM];
        Modified=Yes;
        Version List=;
      }
      PROPERTIES
      {
        OnRun=BEGIN
                CREATE(xmlDoc);
                xmlMgt.SetNormalCase;
                xmlProcessingInst:=xmlDoc.createProcessingInstruction('xml','version="1.0" encoding="UTF-8" standalone="yes"');

                CurrNode := xmlDoc.appendChild(xmlProcessingInst);
                CurrNode := xmlDoc.createElement('soapenv:Envelope');
                CurrNode := xmlDoc.appendChild(CurrNode);


                xmlMgt.AddAttribute(CurrNode,'xmlns:soapenv','http://schemas.xmlsoap.org/soap/envelope/');
                xmlMgt.AddAttribute(CurrNode,'xmlns:mbs','http://www.microsoft.com/mbs/xml');

                xmlMgt.AddElement(CurrNode,'soapenv:Header','','soapenv',NewChild);
                  CurrNode:=NewChild; //One level deeper
                  xmlMgt.AddElement(CurrNode,'soapenv:Body','','soapenv',NewChild);
                       CurrNode:=NewChild; //one level deeper
                       xmlMgt.AddElement(CurrNode,'mbs:enumeration','','mbs',NewChild);
                            CurrNode:=NewChild; //one level deeper
                            xmlMgt.AddElement(CurrNode,'mbs:table','Customers','mbs',NewChild);

                         recCustomer.SETRANGE("No.", '10000','20000'); //Filter only few records
                         IF recCustomer.FINDFIRST THEN BEGIN
                           REPEAT
                            vName   :=recCustomer.Name;
                            vNo     :=recCustomer."No.";
                            vContact:=recCustomer.Contact;
                              recCustomer.CALCFIELDS("Balance (LCY)");
                              vBalance:= FORMAT(recCustomer."Balance (LCY)");
                            vSPcode :=recCustomer."Salesperson Code";


                            xmlMgt.AddElement(CurrNode,'mbs:Customer','','mbs',NewChild);
                                  CurrNode1:=NewChild; //One level deeper, but keep current level too
                                  xmlMgt.AddElement(CurrNode1,'mbs:CustomerAuthentication','','mbs',NewChild);
                                         CurrNode2:=NewChild; //One level deeper to sublevel
                                         xmlMgt.AddElement(CurrNode2,'mbs:No',vNo,'mbs',NewChild);
                                         xmlMgt.AddElement(CurrNode2,'mbs:Name',vName,'mbs',NewChild);

                                  xmlMgt.AddElement(CurrNode1,'mbs:CustomerData','','mbs',NewChild);
                                         CurrNode2:=NewChild; //One level deeper to sublevel
                                         xmlMgt.AddElement(CurrNode2,'mbs:Balance',vBalance,'mbs',NewChild);
                                         xmlMgt.AddElement(CurrNode2,'mbs:SalespersonCode',vSPcode,'mbs',NewChild);
                                         xmlMgt.AddElement(CurrNode2,'mbs:Contacts','','mbs',NewChild);
                                             CurrNode1:=NewChild;//One level deeper
                                             xmlMgt.AddElement(CurrNode1,'mbs:Contact',vContact,'mbs',NewChild);


                            CLEAR(vName);
                            CLEAR(vNo)  ;
                            CLEAR(vContact);
                            CLEAR(vBalance);
                            CLEAR(vSPcode);

                           UNTIL recCustomer.NEXT=0;


                           xmlDoc.save('D:\xmlFile.xml');
                           CLEARALL;
                           MESSAGE('xmlFile.xml is created');
                         END;
              END;

      }
      CODE
      {
        VAR
          xmlDoc@1000 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{F6D90F11-9C73-11D3-B32E-00C04F990BB4}:'Microsoft XML, v6.0'.DOMDocument";
          CurrNode@1003 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF80-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNode";
          CurrNode1@1005 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF80-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNode";
          CurrNode2@1013 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF80-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNode";
          NewChild@1004 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF80-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNode";
          xmlProcessingInst@1001 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF89-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMProcessingInstruction";
          xmlMgt@1002 : Codeunit 6224;
          "---- Variables----"@1006 : Integer;
          recCustomer@1012 : Record 18;
          vName@1007 : Text[30];
          vNo@1008 : Text[30];
          vContact@1009 : Text[30];
          vBalance@1010 : Text[30];
          vSPcode@1011 : Text[30];

        EVENT xmlDoc@1000::ondataavailable@198();
        BEGIN
        END;

        EVENT xmlDoc@1000::onreadystatechange@-609();
        BEGIN
        END;

        BEGIN
        END.
      }
    }

    ---------------------------------------

    And can be read by codeunit: 

    OBJECT Codeunit 50050 xml read
    {
      OBJECT-PROPERTIES
      {
        Date=03/24/10;
        Time=12:25:26 PM;
        Modified=Yes;
        Version List=;
      }
      PROPERTIES
      {
        OnRun=BEGIN
                ffile.OPEN('D:\XmlFile.xml'); //this must be your file name
                ffile.CREATEINSTREAM(strInStream);

                IF ISCLEAR(xmldomDoc) THEN CREATE(xmldomDoc);

                xmldomDoc.load(strInStream);

                xmlNodeList1 := xmldomDoc.getElementsByTagName('mbs:Customer');

                ii:=xmlNodeList1.length();

                FOR i:=0 TO xmlNodeList1.length()-1 DO BEGIN
                 xmldomElem1:= xmlNodeList1.item(i); //mbs:Customer
                 IF xmldomElem1.hasChildNodes() THEN
                    BEGIN
                      xmlNodeList2:= xmldomElem1.childNodes();
                      IF NOT ISCLEAR(xmlNodeList2) THEN
                      xmldomElem2:= xmlNodeList2.item(0); //mbs:CustomerAuthentication
                      IF NOT ISCLEAR(xmldomElem2) THEN
                      IF xmldomElem2.hasChildNodes() THEN
                         BEGIN
                         xmlNodeList3:= xmldomElem2.childNodes();
                         IF NOT ISCLEAR(xmlNodeList3) THEN
                          xmldomElem3:= xmldomElem2.firstChild();//mbs:No
                         IF NOT ISCLEAR(xmldomElem3) THEN
                          txtNo:=xmldomElem3.text();
                         xmldomElem3:=xmlNodeList3.item(1); //mbsName
                         IF NOT ISCLEAR(xmldomElem3) THEN
                          txtName:=xmldomElem3.text();

                      xmldomElem2:= xmlNodeList2.item(1); //mbs:CustomerData
                      IF NOT ISCLEAR(xmldomElem2) THEN
                      IF xmldomElem2.hasChildNodes() THEN
                         BEGIN
                         xmlNodeList3:= xmldomElem2.childNodes();
                         IF NOT ISCLEAR(xmlNodeList3) THEN
                          xmldomElem3:= xmldomElem2.firstChild();//mbs:Balance
                         IF NOT ISCLEAR(xmldomElem3) THEN
                          txtBalance:=xmldomElem3.text();
                         xmldomElem3:=xmlNodeList3.item(1); //mbsSalesPersonCode
                         IF NOT ISCLEAR(xmldomElem3) THEN
                          txtSPcode:=xmldomElem3.text();
                         END;

                         xmldomElem3:=xmlNodeList3.item(2); //mbs:Contacts
                         IF NOT ISCLEAR(xmldomElem3) THEN
                            txtContact:=xmldomElem3.text();

                     END;
                END;
                      MESSAGE('This is record "%1"\No "%2"\Name "%3"\Contact "%4"\Balance "%5"\Salesperson code "%6"\of Total "%7"',
                      FORMAT(i+1),
                      txtNo,
                      txtName,
                      txtContact,
                      txtBalance,
                      txtSPcode,
                      ii);

                END;
                ffile.CLOSE;
                CLEARALL;
              END;

      }
      CODE
      {
        VAR
          xmldomDoc@1000 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{F6D90F11-9C73-11D3-B32E-00C04F990BB4}:'Microsoft XML, v6.0'.DOMDocument";
          xmlNodeList1@1005 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF82-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNodeList";
          xmlNodeList2@1017 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF82-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNodeList";
          xmlNodeList3@1019 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF82-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMNodeList";
          xmldomElem1@1007 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF86-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMElement";
          xmldomElem2@1010 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF86-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMElement";
          xmldomElem3@1011 : Automation "{F5078F18-C551-11D3-89B9-0000F81FE221} 6.0:{2933BF86-7B36-11D2-B20E-00C04F983E60}:'Microsoft XML, v6.0'.IXMLDOMElement";
          txtNo@1001 : Text[30];
          txtName@1002 : Text[30];
          txtContact@1009 : Text[30];
          txtBalance@1012 : Text[30];
          txtSPcode@1013 : Text[30];
          ffile@1003 : File;
          strInStream@1004 : InStream;
          i@1006 : Integer;
          ii@1018 : Integer;

        EVENT xmldomDoc@1000::ondataavailable@198();
        BEGIN
        END;

        EVENT xmldomDoc@1000::onreadystatechange@-609();
        BEGIN
        END;

        BEGIN
        END.
      }
    }

    That's all
    Special thanks to
    Rainer Kuhnlein

    Gedas Busniauskas (gediminb)
    Microsoft Customer Service and Support (CSS) EMEA

     

  • Microsoft Dynamics NAV Team Blog

    New Training Titles Released for Microsoft Dynamics NAV 2009 SP1

    • 0 Comments
    The following training titles have been released  and are available on PartnerSource and CustomerSource (log-in required):

    What's New in Microsoft Dynamics® NAV 2009 Service Pack 1 - Application:

    A one-day instructor-led training (ILT) course that provides students with the knowledge and skills to recognize the key differences in the application features for Microsoft Dynamics NAV 2009 SP1.

    CustomerSource: https://mbs.microsoft.com/customersource/training/trainingmaterials/student/course80237

    PartnerSource: https://mbs.microsoft.com/partnersource/communities/training/trainingmaterials/student/course80237

    What's New in Microsoft Dynamics® NAV 2009 Service Pack 1 - Installation and Development:

    A one-day instructor-led course that provides students with the knowledge of what is new in Microsoft Dynamics NAV 2009 Service Pack 1 (SP1). The course provides an explanation of how to install and configure Microsoft Dynamics NAV 2009 SP1, and describes new features in the Page and Report Designers, changes in developing Web services solutions, and other partner productivity features.

    CustomerSource: https://mbs.microsoft.com/customersource/training/trainingmaterials/student/course80236

    PartnerSource: https://mbs.microsoft.com/partnersource/communities/training/trainingmaterials/student/course80236

    Data Upgrade and Code Upgrade from Microsoft® Business Solutions-Navision® 3.7 to Microsoft Dynamics® NAV2009 SP1:

    A two-day instructor-led course that provides students with the necessary tools to help them perform an upgrade from Microsoft Business Solutions-Navision 3.70, Microsoft Dynamics NAV 4.0, or Microsoft Dynamics NAV 5.0, to Microsoft Dynamics NAV 2009 SP1. This includes planning and performing data and code upgrades of Microsoft Dynamics NAV with customizations, in addition to testing the upgraded solution. The training is designed to offer students best practices to address the typical pain points of an upgrade.

    CustomerSource: https://mbs.microsoft.com/customersource/training/trainingmaterials/student/course80234

    PartnerSource: https://mbs.microsoft.com/partnersource/communities/training/trainingmaterials/student/course80234

    The Microsoft Dynamics NAV 2009 SP1 What's New training is also available as E-Learning in the Element K Catalog for partners and customers on a service plan.

    In addition, the following translated trainings have been made available; these trainings apply to Microsoft Dynamics NAV 2009:

    Title Language Type Available on PartnerSource and CustomerSource

    Finance in Microsoft Dynamics® NAV 2009 Extension for Italy

    French

    Extension

    2/1/2010

    Gestion des stocks dans Microsoft Dynamics® NAV 2009

    French

    ILT

    2/5/2010

    Commerce dans Microsoft Dynamics® NAV 2009

    French

    ILT

    2/5/2010

    Lagerverwaltung in Microsoft Dynamics® NAV 2009

    German

    ILT

    2/5/2010

    Handel in Microsoft Dynamics® NAV 2009

    German

    ILT

    2/5/2010

    Gestión de inventarios en Microsoft Dynamics® NAV 2009

    Spanish

    ILT

    2/5/2010

    Operaciones comerciales en Microsoft Dynamics® NAV 2009

     

    Spanish

    ILT

    2/5/2010

    Lager i Microsoft Dynamics® NAV 2009

    Danish

    ILT

    2/5/2010

    Handel i Microsoft Dynamics® NAV 2009

    Danish

    ILT

    2/5/2010

    Voorraadbeheer in Microsoft Dynamics® NAV 2009

    Dutch

    ILT

    2/5/2010

    Handel in Microsoft Dynamics® NAV 2009

    Dutch

    ILT

    2/5/2010

    Gestione magazzino in Microsoft Dynamics® NAV 2009

    Italian

    ILT

    2/5/2010

    Acquisti e vendite in Microsoft Dynamics® NAV 2009

    Italian

    ILT

    2/5/2010

    Finance in Microsoft Dynamics® NAV 2009 Extension for Denmark

    Danish

    Extension

    2/12/2010

    Microsoft Dynamics® NAV 2009 Produktion I

    Danish

    ILT

    2/16/2010

    Microsoft Dynamics® NAV 2009 Produktion II

    Danish

    ILT

    2/16/2010

    Production I dans Microsoft Dynamics® NAV 2009

    French

    ILT

    2/16/2010

    Production II dans Microsoft Dynamics® NAV 2009

    French

    ILT

    2/16/2010

    Produktion I in Microsoft Dynamics® NAV 2009

    German

    ILT

    2/16/2010

    Produktion II in Microsoft Dynamics® NAV 2009

    German

    ILT

    2/16/2010

    Fabricación I en Microsoft Dynamics® NAV 2009

    Spanish

    ILT

    2/16/2010

    Fabricación II en Microsoft Dynamics® NAV 2009

    Spanish

    ILT

    2/16/2010

     

  • Microsoft Dynamics NAV Team Blog

    Directions EMEA 2010 (May 19-21)

    • 1 Comments

    Directions EMEA 2010 is a partner conference focused entirely on Microsoft Dynamics NAV, with an expected attendance of 500 people from over 30 Countries, taking place in the beautiful city of Prague, May 19-21, 2010.

    Over the years, the Directions EMEA event has grown to become a prime conference for our Microsoft Dynamics NAV partners creating a platform where you can meet and connect, share knowledge and engage in new business opportunities as well as network with Microsoft representatives and executives.

    The primary goals of this event are to:

    • Help build a stronger and more engaged Microsoft Dynamics NAV community.
    • Enhance the relationship between Microsoft and you, our Microsoft Dynamics NAV partners.
    • Provide you with the latest product and business information helping you win in the market.

    Since there is a mutual interest within a community consisting solely of Microsoft Dynamics NAV partners, the dialog with Microsoft is direct and open. Often this has a direct effect on development and strategy concerning the future of Microsoft Dynamics NAV.

    In order to achieve this, the agenda contains:

    • Keynotes: covering areas of general interest, based on input from the channel, and latest information about product and business development.
    • Technical sessions: providing you with background information and knowledge.
    • Sales/Marketing sessions: giving insight into go-to-market strategies, positioning and selling tactics.
    • ISV sessions: where partners present their products and services to an EMEA audience.
    • Partner exhibitions: to show solutions and build contacts.
    • And of course lots of opportunity to partner and network.

    I therefore encourage you to attend this year's event in Prague and take advantage of the great possibilities provided to you. Registration has already begun and the complete agenda can be found at: http://www.directionsemea.com/.

  • Microsoft Dynamics NAV Team Blog

    Convergence 2010 Atlanta (April 24-27)

    • 0 Comments

    Convergence 2010 Atlanta, the premier Microsoft Dynamics event, offers "a unique opportunity to network with your peers, partners, Microsoft team members, and industry experts together to share ideas and knowledge—all in one place." For more information and registration details, see the Convergence 2010 Atlanta site.

    Also on this site, check out the Session Catalog to find the latest and greatest information about sessions, roundtables, workshops, labs, and interactive discussions. You can filter on the Microsoft Dynamics NAV track to see all things NAV-related.

    Finally, take a look at the Microsoft Dynamics ERP Community Team Blog and select the Convergence 2010 Atlanta tag to read blog posts that are sure to get you excited for the event.

    Hope to see you there in April!

Page 32 of 49 (728 items) «3031323334»