XMLPORT Sales Order

b2amolb2amol Member Posts: 64
Hi,

I have an xmlport using which i first exported few fields from Sales Header & Lines; changed some values and tried the import. On import i get this message:

Microsoft Dynamics NAV Classic
Type must not be in Sales Line Document Type='Quote',Document No.='SQO0001',Line No.='0'.

OK

The values in error are not correct - in my xml the Type is Item, Doc type is Order & the document number should be different (generated from Sales order number series).
Linked table property is set on Sales Line node to "Sales Header" & Force insert = yes. Link Fields = "Document No.=FIELD(No.),Document Type=FIELD(Document Type),Sell-to Customer No.=FIELD(Sell-to Customer No.)"

Appreciate any help.

Thanks,

Amol

Comments

  • kamranshehzadkamranshehzad Member Posts: 165
    Are you using it through some codeunit to import from xml file?

    try removing " Document Type=FIELD(Document Type) " from Link Fields as it throws exception when i import it but when I call the code unit from some webservice i do need the above statement.

    * also remove Sell-to Customer No.=FIELD(Sell-to Customer No.)"

    let me know whether it works or not.


    regards,
    KS
  • b2amolb2amol Member Posts: 64
    Yes I am using a codeunit to call the xmlport.
    TestFile.OPEN('C:\SalesExport.xml');
    TestFile.CREATEINSTREAM(InStreamObj);
    XMLPORT.IMPORT(50001,InStreamObj);
    TestFile.CLOSE;

    I removed two Type & Customer No. Linked fields, but the error remains.

    Thanks,

    Amol
  • kamranshehzadkamranshehzad Member Posts: 165
    this is my code....to import sales invoice ( 50003 was my xml port code given below)

    // CODEUNIT TO IMPORT

    IF XmlData.LENGTH > 0 THEN BEGIN

    CLEAR(TmpRecord); // clear temp record
    TmpRecord.Blob.CREATEOUTSTREAM(XmlOutStream); // create output stream for temp record
    XmlData.WRITE(XmlOutStream); // write into temp record
    TmpRecord.Blob.CREATEINSTREAM(XmlInStream); // read from temp record
    Status := XMLPORT.IMPORT(50003,XmlInStream); // import into system using xmlport

    IF Status = TRUE THEN BEGIN
    RetMsg := 'TRUE';
    END ELSE BEGIN
    RetMsg := GETLASTERRORTEXT;
    END;
    END;


    // XML PORT CODE (CAN SAVE IN NOTE PAD AND IMPORT IT IN NAVISION OBJECT DESIGNER

    OBJECT XMLport 50003 EE Sales Import Port
    {
    OBJECT-PROPERTIES
    {
    Date=19/08/09;
    Time=10:21:44;
    Modified=Yes;
    Version List=NPV1.5.2;
    }
    PROPERTIES
    {
    }
    ELEMENTS
    {
    { [{7F16EC80-2873-46DF-B46C-F44E1CE0D927}]; ;SalesDocuments ;Element ;Text }

    { [{F37B991F-B86A-4616-B30F-0FD962226E57}];1 ;SalesDocument ;Element ;Table ;
    VariableName=<Sales Header>;
    SourceTable=Table36;
    SourceTableView=SORTING(Field1,Field3)
    ORDER(Ascending)
    WHERE(Field1=FILTER(2)) }

    { [{CB14F7A2-2F64-43E4-9B2C-2624C9BE703D}];2 ;DocumentNumber ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::No. }

    { [{80B3FDC1-2FB3-44CF-ABCE-114AAD60C0F2}];2 ;DocumentType ;Element ;Field ;
    DataType=Option;
    SourceField=<Sales Header>::Document Type }

    { [{02C8F3B5-2923-4B6A-AA18-DBBED6888354}];2 ;CustomerOrderRerence;Element ;Field ;
    DataType=Text;
    SourceField=<Sales Header>::Your Reference }

    { [{4CD9216D-A78B-4AF5-A53F-5CB517655F29}];2 ;PaymentTermsCode ;Element ;Field ;
    DataType=Code;
    FieldValidate=No;
    SourceField=<Sales Header>::Payment Terms Code }

    { [{1AEF331A-8047-46DE-8B91-2CC11814DFA3}];2 ;OrderDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Header>::Order Date }

    { [{11B34E2A-B6A5-4537-991E-3F7B912D9E46}];2 ;PostDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Header>::Posting Date }

    { [{3DEC794D-CE48-4F2B-8B61-EB7153832277}];2 ;DueDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Header>::Due Date }

    { [{30F9DE8B-8A69-49ED-B34F-B3E040B4F458}];2 ;ShipmentDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Header>::Shipment Date }

    { [{C5622802-EF91-4E03-8242-1FB15F18C2D9}];2 ;LocationCode ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Location Code }

    { [{627F2639-D7F1-4CDA-89B3-B2B1B45C57B5}];2 ;ShortcutDimensionCode1;Element;Field ;
    DataType=Code;
    FieldValidate=No;
    SourceField=<Sales Header>::Shortcut Dimension 1 Code }

    { [{A8B4852B-548E-4FC1-82AC-32F67AD4F546}];2 ;ShortcutDimensionCode2;Element;Field ;
    DataType=Code;
    FieldValidate=No;
    SourceField=<Sales Header>::Shortcut Dimension 2 Code }

    { [{C02FBDCB-3930-4642-969B-DF35CEC9512C}];2 ;CustomerPostingGroup;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Customer Posting Group }

    { [{B7A2AE42-13FB-4CDD-932C-D4618AD8CF83}];2 ;CurrencyCode ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Currency Code }

    { [{00625CB1-D0F3-4280-AA22-4BE080290ACD}];2 ;SalesPersonCode ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Salesperson Code }

    { [{E8EC9246-6235-4875-9108-605832C20EC3}];2 ;VATRegNo ;Element ;Field ;
    DataType=Text;
    SourceField=<Sales Header>::VAT Registration No. }

    { [{B54B784F-9E10-4BB0-A8D8-54F34A309AF7}];2 ;SellToCustomerNo ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Sell-to Customer No. }

    { [{E5EFC106-B341-42EB-B798-58D17FC01957}];2 ;GenBusPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::Gen. Bus. Posting Group }

    { [{E43A232E-CCDA-4265-988D-933D6B81555C}];2 ;VATCountryRegionCode;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::VAT Country/Region Code }

    { [{84FBBB73-585C-47C9-8991-162E7B2DE0B4}];2 ;DocumentDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Header>::Document Date }

    { [{8101C5C6-9CFB-4EF8-B28C-6FD2E79F1897}];2 ;VATBusPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::VAT Bus. Posting Group }

    { [{8CF7E1CC-EBF8-4019-8909-AF131687E3B6}];2 ;ExternalDocNo ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Header>::External Document No. }

    { [{022242A0-E2E9-425B-BA9D-B33FA1798065}];2 ;ERPDocID ;Element ;Field ;
    DataType=Integer;
    SourceField=<Sales Header>::ERPDocID }

    { [{D426C293-B889-4856-B3A1-29BE98DE743E}];2 ;ERPDocAlias ;Element ;Field ;
    DataType=Text;
    SourceField=<Sales Header>::ERPDocAlias }

    { [{8A5487A4-94F3-46C7-B5B6-C5BCA3D2E468}];2 ;EEAmount ;Element ;Field ;
    DataType=Decimal;
    SourceField=<Sales Header>::EE Amount;
    MinOccurs=Zero }

    { [{3049EDBA-F7CA-436A-86E1-CA136A42FDD0}];2 ;LineItems ;Element ;Table ;
    VariableName=<Sales Line>;
    SourceTable=Table37;
    SourceTableView=SORTING(Field1,Field3,Field4)
    ORDER(Ascending)
    WHERE(Field1=FILTER(2));
    LinkFields=Field3=FIELD(Field3),
    Field1=FIELD(Field1);
    LinkTable=<Sales Header> }

    { [{B2D77346-04D0-4F50-A3BB-17D38DEF21BB}];3 ;LineDocType ;Element ;Field ;
    DataType=Option;
    SourceField=<Sales Line>::Document Type }

    { [{15447070-3B36-4CB1-B6F6-44C00F04F7BD}];3 ;DocumentNo ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Document No. }

    { [{B88B408F-25AE-4418-B5F5-45214789E003}];3 ;LineNo ;Element ;Field ;
    DataType=Integer;
    SourceField=<Sales Line>::Line No. }

    { [{991F1AC2-9D97-4463-8F45-7BB486959149}];3 ;BillToCustomerNo ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Sell-to Customer No. }

    { [{4DA03DAF-4AE8-4184-BBCE-E5AB158961FA}];3 ;LineItemType ;Element ;Field ;
    DataType=Option;
    SourceField=<Sales Line>::Type }

    { [{7B741589-79FD-4535-95C8-C5F9076695CA}];3 ;ItemNumber ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::No.;
    Import::OnAfterAssignField=VAR
    RecItem@1000000000 : Record 27;
    EEItemNo@1000000001 : Code[60];
    ItemNo@1000000002 : Code[20];
    BEGIN
    END;

    Export::OnBeforePassField=BEGIN
    // RecItem.SETRANGE(RecItem.EEItemNo);
    // RecItem.FINDFIRST;
    END;
    }

    { [{E18AE688-8DFB-4CE4-9571-FA36128D6050}];3 ;LocationCode ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Location Code }

    { [{B9CEFC80-3382-40AF-A498-FDBEF9D9CA79}];3 ;PostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Posting Group }

    { [{D9A6A848-4393-4451-85F1-F529A88945EC}];3 ;ShipmentDate ;Element ;Field ;
    DataType=Date;
    SourceField=<Sales Line>::Shipment Date }

    { [{7EA64F5A-0EF7-4ECA-8E6D-7AA4F1437C14}];3 ;Quantity ;Element ;Field ;
    DataType=Decimal;
    SourceField=<Sales Line>::Quantity }

    { [{A722CBAC-EC67-451F-91A3-D824236956CD}];3 ;UnitPrice ;Element ;Field ;
    DataType=Decimal;
    SourceField=<Sales Line>::Unit Price }

    { [{88148823-B0CE-4CBA-BE6C-62CFDEF151D3}];3 ;UnitCostLCY ;Element ;Field ;
    DataType=Decimal;
    SourceField=<Sales Line>::Unit Cost (LCY) }

    { [{0BF605F5-36F0-4EA4-96D7-F1E77FC36C7E}];3 ;ShortcutDimensionCode1;Element;Field ;
    DataType=Code;
    FieldValidate=No;
    SourceField=<Sales Line>::Shortcut Dimension 1 Code }

    { [{2BE59EBA-574A-4768-AE1B-575B15834396}];3 ;ShortcutDimensionCode2;Element;Field ;
    DataType=Code;
    FieldValidate=No;
    AutoCalcField=Yes;
    SourceField=<Sales Line>::Shortcut Dimension 2 Code }

    { [{FFE717CF-7113-4422-916B-C0C4B81E12A6}];3 ;GenBusPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Gen. Bus. Posting Group }

    { [{B256ADBF-245C-4744-BCCB-50EAD506EB80}];3 ;GenProdPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::Gen. Prod. Posting Group }

    { [{5AC55EB4-DC36-481D-AAD5-B0DC67C5637F}];3 ;VATBusPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::VAT Bus. Posting Group }

    { [{745392CB-491E-4A9F-95A7-8FFC1DF49602}];3 ;VATProdPostingGroup ;Element ;Field ;
    DataType=Code;
    SourceField=<Sales Line>::VAT Prod. Posting Group }

    }
    EVENTS
    {
    }
    REQUESTPAGE
    {
    PROPERTIES
    {
    }
    CONTROLS
    {
    }
    }
    CODE
    {

    BEGIN
    {
    // Test Version 0.1
    }
    END.
    }
    }
    KS
  • kamranshehzadkamranshehzad Member Posts: 165
    Also can you quickly check something weired that i experienced but dont know why this causes this error... is there any sales quote witout any details.
    KS
  • b2amolb2amol Member Posts: 64
    Hello Kamran,

    Thank you so much for helping me out.

    I tried importing the XML port, but without indentation i believe i am not getting it right. Could you please post the indented code?

    Thanks,

    Amol
  • SavatageSavatage Member Posts: 7,142
    Figured I'd link this download here for those with XMLPort issues
    Dynamics NAV XMLport Generator v1.1.0.0
    http://www.mibuso.com/dlinfo.asp?FileID=910
  • helmhelm Member Posts: 46
    According to the error message. The Line No. is 0. Is this correct.
  • kamranshehzadkamranshehzad Member Posts: 165
    give me your email address ill email you the .fob.. as i dont know how to upload attachments here... can't see any option
    regards,
    KS
  • CraineGACraineGA Member Posts: 28
    would it be possible to send me the fob also? I am looking for a simple example of using an XML port to import a Sales Order into Sales Header and Sales Line tables.

    Thanks in advance

    email: gary.craine@acumen-consultancy.co.uk
  • kamranshehzadkamranshehzad Member Posts: 165
    ill do that tomorrow morning...regards,
    KS
Sign In or Register to comment.