"Förskottsbetalning måste vara Nej i Cust. Bokföringspost Nr.='[XXXX]'" felmeddelande när du avanvänder en tillämpad betalning eller återbetalning som bokfördes som en förskottsbetalning i den östeuropeiska versionen av Microsoft Dynamics NAV 2009 R2

Gäller för
Microsoft Dynamics NAV 2009 R2

Den här artikeln gäller microsoft Dynamics NAV för språkspråket östeuropeiska (ee).

Symptom

Anta att du skapar en kassakvittojournal för en betalning eller återbetalning i den östeuropeiska versionen av Microsoft Dynamics NAV 2009 R2. Du bokför kassakvittojournalen som en förskottsbetalning. I det här fallet får du följande felmeddelande när du kör funktionen Oanvända poster på den tillämpade betalningen eller återbetalningen:

Obs

Förskottsbetalning måste vara Nej i Cust. Bokföringspost nr.='XXXX'.

Lösning

Snabbkorrigeringsinformation

En snabbkorrigering som stöds är nu tillgänglig från Microsoft. Det är dock bara avsett att åtgärda problemet som beskrivs i den här artikeln. Använd den bara på system som har det här specifika problemet. Den här snabbkorrigeringen kan få ytterligare tester. Om du inte drabbas hårt av det här problemet rekommenderar vi därför att du väntar på nästa Microsoft Dynamics NAV 2009 Service Pack eller nästa Microsoft Dynamics NAV-version som innehåller den här snabbkorrigeringen.

Obs! I särskilda fall kan avgifter som vanligtvis uppkommer för supportsamtal avbrytas om en teknisk supporttekniker för Microsoft Dynamics och relaterade produkter fastställer att en specifik uppdatering löser problemet. De vanliga supportkostnaderna gäller för ytterligare supportfrågor och problem som inte är berättigade till den aktuella uppdateringen.

            
          

Installationsinformation

Microsoft tillhandahåller endast programmeringsexempel i visningssyfte, utan att någon form av garanti uttrycks eller är underförstådd. Detta omfattar men är inte begränsat till underförstådda garantier för säljbarhet eller lämplighet för ett visst ändamål. Den här artikeln förutsätter att du är bekant med programmeringsspråket som demonstreras och med de verktyg som används för att skapa och felsöka procedurer. Microsofts supporttekniker kan hjälpa till att förklara funktionaliteten i en viss procedur, men de ändrar inte de här exemplen för att tillhandahålla ytterligare funktioner eller konstruera procedurer för att uppfylla dina specifika krav.

Obs! Innan du installerar den här snabbkorrigeringen kontrollerar du att alla Microsoft Navision-klientanvändare loggas ut från systemet. Detta omfattar användare av Microsoft Navision Application Services (NAS). Du bör vara den enda klientanvändare som är inloggad när du implementerar snabbkorrigeringen.

Om du vill implementera den här snabbkorrigeringen måste du ha en utvecklarlicens.

Vi rekommenderar att användarkontot i fönstret Windows-inloggningar eller i fönstret Databasinloggningar tilldelas roll-ID:t "SUPER". Om användarkontot inte kan tilldelas superroll-ID måste du kontrollera att användarkontot har följande behörigheter:

  • Behörigheten Ändra för det objekt som du kommer att ändra.
  • Körbehörigheten för systemobjekt-ID 5210-objektet och för 9015-objektet Systemobjekt-ID.

                
Obs! Du behöver inte ha rättigheter till datakällorna om du inte behöver utföra datareparation.

Kodändringar

Obs! Testa alltid korrigeringar av kod i en kontrollerad miljö innan du tillämpar korrigeringarna på produktionsdatorerna.
Lös problemet genom att följa de här stegen:

  1. Ändra koden i funktionen UnapplyCustLedgEntry i gen. Jnl.-Post Line codeunit (12) enligt följande:
    Befintlig kod 1

    ...
    NextDtldLedgEntryEntryNo := DtldCustLedgEntry2."Entry No." + 1;
    DtldCustLedgEntry2.SETCURRENTKEY("Transaction No.","Customer No.","Entry Type");
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    DtldCustLedgEntry2.SETRANGE("Transaction No.",GenJnlLine."Prepmt. Appl. Transaction No.",DtldCustLedgEntry."Transaction No.")
    
    ELSE
    DtldCustLedgEntry2.SETRANGE("Transaction No.",DtldCustLedgEntry."Transaction No.");
    DtldCustLedgEntry2.SETRANGE("Customer No.",DtldCustLedgEntry."Customer No.");
    DtldCustLedgEntry2.SETRANGE("Entry Type",DtldCustLedgEntry."Entry Type"::Application);
    DtldCustLedgEntry2.FINDSET;
    ...
    

    Ersättningskod 1

    ...
    NextDtldLedgEntryEntryNo := DtldCustLedgEntry2."Entry No." + 1;
    DtldCustLedgEntry2.SETCURRENTKEY("Transaction No.","Customer No.","Entry Type");
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    
    // Add the following line. 
    IF GenJnlLine."Prepmt. Appl. Transaction No." < DtldCustLedgEntry."Transaction No." THEN
    
    DtldCustLedgEntry2.SETRANGE("Transaction No.",GenJnlLine."Prepmt. Appl. Transaction No.",DtldCustLedgEntry."Transaction No.")
    
    // Add the following lines. 
    ELSE
    DtldCustLedgEntry2.SETRANGE("Transaction No.",DtldCustLedgEntry."Transaction No.",GenJnlLine."Prepmt. Appl. Transaction No.")
    // End of the lines. 
    
    ELSE
    DtldCustLedgEntry2.SETRANGE("Transaction No.",DtldCustLedgEntry."Transaction No.");
    DtldCustLedgEntry2.SETRANGE("Customer No.",DtldCustLedgEntry."Customer No.");
    DtldCustLedgEntry2.SETRANGE("Entry Type",DtldCustLedgEntry."Entry Type"::Application);
    DtldCustLedgEntry2.FINDSET;
    ...
    

    Befintlig kod 2

    ...
    IF DtldCustLedgEntry2."Entry Type" = DtldCustLedgEntry2."Entry Type"::Application THEN
    PrepareAdvCustUnapply(
    DtldCustLedgEntry2."Cust. Ledger Entry No.",TempCustLedgEntryForAppln,
    UnapplyAdvVATEntries,ReverseAdvVATTransNo,ApplCustLedgEntryNo,CurrencyCode);
    ...
    

    Ersättningskod 2

    ...
    IF DtldCustLedgEntry2."Entry Type" = DtldCustLedgEntry2."Entry Type"::Application THEN
    
    // Add the following line. 
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    
    PrepareAdvCustUnapply(
    DtldCustLedgEntry2."Cust. Ledger Entry No.",TempCustLedgEntryForAppln,
    UnapplyAdvVATEntries,ReverseAdvVATTransNo,ApplCustLedgEntryNo,CurrencyCode);
    ...
    

    Befintlig kod 3

    ...
    NegativeLCYAppAmt := NegativeLCYAppAmt + DtldCVLedgEntryBuf."Amount (LCY)";
    NegativeACYAppAmt :=
    NegativeACYAppAmt + DtldCVLedgEntryBuf."Additional-Currency Amount";
    END;
    IF GenJnlLine."Prepmt. Appl. Transaction No." = 0 THEN BEGIN
    CustLedgEntry.GET(DtldCustLedgEntry2."Cust. Ledger Entry No.");
    IF DtldCVLedgEntryBuf.Advance AND (CustLedgEntry."Document Type" = CustLedgEntry."Document Type"::Payment) THEN
    SalesPostAdvances.InsertTempApplnAdvanceLink(DtldCVLedgEntryBuf."Entry No.")
    END;
    END;
    ...
    

    Ersättningskod 3

    ...
    NegativeLCYAppAmt := NegativeLCYAppAmt + DtldCVLedgEntryBuf."Amount (LCY)";
    NegativeACYAppAmt :=
    NegativeACYAppAmt + DtldCVLedgEntryBuf."Additional-Currency Amount";
    END;
    IF GenJnlLine."Prepmt. Appl. Transaction No." = 0 THEN BEGIN
    CustLedgEntry.GET(DtldCustLedgEntry2."Cust. Ledger Entry No.");
    IF DtldCVLedgEntryBuf.Advance AND (CustLedgEntry."Document Type" = CustLedgEntry."Document Type"::Payment) THEN
    SalesPostAdvances.InsertTempApplnAdvanceLink(DtldCVLedgEntryBuf."Entry No.")
    END;
    END;
    ...
    
  2. Ändra koden i funktionen AutoEntrForDtldCustLedgEntries i genen. Jnl.-Post Line codeunit (12) enligt följande:
    Befintlig kod

    ...
    CASE DtldCVLedgEntryBuf."Entry Type" OF
    DtldCVLedgEntryBuf."Entry Type"::"Initial Entry":;
    DtldCVLedgEntryBuf."Entry Type"::Application:
    
    IF MultiplePostingGrApplied THEN BEGIN
    InitGLEntry(AccNo,DtldCVLedgEntryBuf."Amount (LCY)",0,FALSE,TRUE);
    InsertGLEntry(TRUE);
    
    END;
    DtldCVLedgEntryBuf."Entry Type"::"Unrealized Loss":
    ...
    

    Ersättningskod

    ...
    CASE DtldCVLedgEntryBuf."Entry Type" OF
    DtldCVLedgEntryBuf."Entry Type"::"Initial Entry":;
    DtldCVLedgEntryBuf."Entry Type"::Application:
    
    // Add the following line. 
    BEGIN
    
    IF MultiplePostingGrApplied THEN BEGIN
    InitGLEntry(AccNo,DtldCVLedgEntryBuf."Amount (LCY)",0,FALSE,TRUE);
    InsertGLEntry(TRUE);
    
    // Add the following lines. 
    END;
    SalesPostAdvances.InsertApplnAdvanceLink(DtldCVLedgEntryBuf); // EAST0001
    // End of the lines. 
    
    END;
    DtldCVLedgEntryBuf."Entry Type"::"Unrealized Loss":
    ...
    
  3. Ändra koden i funktionen UnapplyVendLedgEntry i gen. Jnl.-Post Line codeunit (12) enligt följande:
    Befintlig kod 1

    ...
    DtldVendLedgEntry2.SETCURRENTKEY("Transaction No.","Vendor No.","Entry Type");
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    DtldVendLedgEntry2.SETRANGE(
    "Transaction No.",GenJnlLine."Prepmt. Appl. Transaction No.",DtldVendLedgEntry."Transaction No.")
    ELSE
    DtldVendLedgEntry2.SETRANGE("Transaction No.",DtldVendLedgEntry."Transaction No.");
    DtldVendLedgEntry2.SETRANGE("Vendor No.",DtldVendLedgEntry."Vendor No.");
    ...
    

    Ersättningskod 1

    ...
    DtldVendLedgEntry2.SETCURRENTKEY("Transaction No.","Vendor No.","Entry Type");
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    
    // Add the following line.
    IF GenJnlLine."Prepmt. Appl. Transaction No." < DtldVendLedgEntry."Transaction No." THEN
    
    DtldVendLedgEntry2.SETRANGE(
    "Transaction No.",GenJnlLine."Prepmt. Appl. Transaction No.",DtldVendLedgEntry."Transaction No.")
    ELSE
    
    // Add the following lines. 
    DtldVendLedgEntry2.SETRANGE(
    "Transaction No.", DtldVendLedgEntry."Transaction No.", GenJnlLine."Prepmt. Appl. Transaction No.")
    ELSE
    // End of the lines. 
    
    DtldVendLedgEntry2.SETRANGE("Transaction No.",DtldVendLedgEntry."Transaction No.");
    DtldVendLedgEntry2.SETRANGE("Vendor No.",DtldVendLedgEntry."Vendor No.");
    ...
    

    Befintlig kod 2

    ...
    IF DtldVendLedgEntry2."Entry Type" = DtldVendLedgEntry2."Entry Type"::Application THEN
    PrepareAdvVendUnapply(
    DtldVendLedgEntry2."Vendor Ledger Entry No.",TempVendLedgEntryForAppln,
    UnapplyAdvVATEntries,ReverseAdvVATTransNo,ApplVendLedgEntryNo,CurrencyCode);
    UNTIL DtldVendLedgEntry2.NEXT = 0;
    ...
    

    Ersättningskod 2

    ...
    IF DtldVendLedgEntry2."Entry Type" = DtldVendLedgEntry2."Entry Type"::Application THEN
    
    // Add the following line. 
    IF GenJnlLine."Prepmt. Appl. Transaction No." <> 0 THEN
    
    PrepareAdvVendUnapply(
    DtldVendLedgEntry2."Vendor Ledger Entry No.",TempVendLedgEntryForAppln,
    UnapplyAdvVATEntries,ReverseAdvVATTransNo,ApplVendLedgEntryNo,CurrencyCode);
    UNTIL DtldVendLedgEntry2.NEXT = 0;
    ...
    

    Befintlig kod 3

    ...
    NegativeACYAppAmt :=
    NegativeACYAppAmt + DtldCVLedgEntryBuf."Additional-Currency Amount";
    END;
    END;
    IF NOT SkipCollectAmount THEN
    IF NOT (DtldCVLedgEntryBuf."Entry Type" IN [
    ...
    

    Ersättningskod

    ...
    NegativeACYAppAmt :=
    NegativeACYAppAmt + DtldCVLedgEntryBuf."Additional-Currency Amount";
    END;
    
    // Add the following lines. 
    IF GenJnlLine."Prepmt. Appl. Transaction No." = 0 THEN BEGIN
    VendLedgEntry.GET(DtldVendLedgEntry2."Vendor Ledger Entry No.");
    IF DtldCVLedgEntryBuf.Advance AND (VendLedgEntry."Document Type" = VendLedgEntry."Document Type"::Payment) THEN
    PurchPostAdvances.InsertTempApplnAdvanceLink(DtldCVLedgEntryBuf."Entry No.")
    END;
    // End of the lines. 
    
    END;
    IF NOT SkipCollectAmount THEN
    IF NOT (DtldCVLedgEntryBuf."Entry Type" IN [
    ...
    
  4. Ändra koden i funktionen AutoEntrForDtldVendLedgEntries i genen. Jnl.-Post Line codeunit (12) enligt följande:
    Befintlig kod

    ...
    CASE DtldCVLedgEntryBuf."Entry Type" OF
    DtldCVLedgEntryBuf."Entry Type"::"Initial Entry":;
    DtldCVLedgEntryBuf."Entry Type"::Application:
    IF MultiplePostingGrApplied THEN BEGIN
    InitGLEntry(AccNo,DtldCVLedgEntryBuf."Amount (LCY)",0,FALSE,TRUE);
    InsertGLEntry(TRUE);
    
    END;
    DtldCVLedgEntryBuf."Entry Type"::"Unrealized Loss":
    ...
    

    Ersättningskod

    ...
    CASE DtldCVLedgEntryBuf."Entry Type" OF
    DtldCVLedgEntryBuf."Entry Type"::"Initial Entry":;
    DtldCVLedgEntryBuf."Entry Type"::Application:
    
    // Add the following line.
    BEGIN
    
    IF MultiplePostingGrApplied THEN BEGIN
    InitGLEntry(AccNo,DtldCVLedgEntryBuf."Amount (LCY)",0,FALSE,TRUE);
    InsertGLEntry(TRUE);
    
    // Add the following lines. 
    END;
    PurchPostAdvances.InsertApplnAdvanceLink(DtldCVLedgEntryBuf);
    // End of the lines. 
    
    END;
    DtldCVLedgEntryBuf."Entry Type"::"Unrealized Loss":
    ...
    
  5. Ändra koden i funktionen PostUnApplyCustomer i koduniten CustEntry-Apply postnummer (226) enligt följande:
    Befintlig kod 1

    ...
    DtldCustLedgEntry.LOCKTABLE;
    CustLedgEntry.LOCKTABLE;
    CustLedgEntry.GET(DtldCustLedgEntry2."Cust. Ledger Entry No.");
    
    // Delete the following line. 
    CustLedgEntry.TESTFIELD(Prepayment,FALSE); // EAST0001
    
    CheckPostingDate(PostingDate,'',0);
    IF PostingDate < DtldCustLedgEntry2."Posting Date" THEN
    ERROR(Text003,
    ...
    

    Ersättningskod 1

    ...
    DtldCustLedgEntry.LOCKTABLE;
    CustLedgEntry.LOCKTABLE;
    CustLedgEntry.GET(DtldCustLedgEntry2."Cust. Ledger Entry No.");
    CheckPostingDate(PostingDate,'',0);
    IF PostingDate < DtldCustLedgEntry2."Posting Date" THEN
    ERROR(Text003,
    ...
    

    Befintlig kod 2

    ...
    CustLedgEntry.TABLECAPTION,
    DtldCustLedgEntry."Cust. Ledger Entry No.",
    CustLedgEntry.FIELDCAPTION("Transaction No."));
    
    // Delete the following line. 
    DtldCustLedgEntry.TESTFIELD(Advance,FALSE);
    
    GetPrepmtApplTransNo(DtldCustLedgEntry."Cust. Ledger Entry No.",GenJnlLine."Prepmt. Appl. Transaction No.");
    END;
    UNTIL DtldCustLedgEntry.NEXT = 0;
    ...
    

    Ersättningskod 2

    ...
    CustLedgEntry.TABLECAPTION,
    DtldCustLedgEntry."Cust. Ledger Entry No.",
    CustLedgEntry.FIELDCAPTION("Transaction No."));
    
    // Add the following line.
    DtldCustLedgEntry.TESTFIELD(Advance,CustLedgEntry.Prepayment);
    
    GetPrepmtApplTransNo(DtldCustLedgEntry."Cust. Ledger Entry No.",GenJnlLine."Prepmt. Appl. Transaction No.");
    END;
    UNTIL DtldCustLedgEntry.NEXT = 0;
    ...
    
  6. Ändra koden i funktionen GetPrepmtApplTransNo i koduniten CustEntry-Apply Postade poster (226) enligt följande:
    Befintlig kod

    ...
    CustLedgEntry.GET(CustLedgEntryNo);
    
    // Delete the following lines. 
    IF NOT CustLedgEntry.Prepayment AND
    (CustLedgEntry."Prepayment Type" = CustLedgEntry."Prepayment Type"::Advance)
    THEN BEGIN
    TransactionNo := CustLedgEntry."Transaction No." - 1;
    END;
    // End of the lines.
    ...
    

    Ersättningskod

    ...
    CustLedgEntry.GET(CustLedgEntryNo);
    
    // Add the following lines. 
    IF CustLedgEntry."Prepayment Type" = CustLedgEntry."Prepayment Type"::Advance THEN
    IF CustLedgEntry.Prepayment THEN BEGIN
    CustLedgEntry.SETCURRENTKEY("Transaction No.");
    CustLedgEntry.SETRANGE("Transaction No.",CustLedgEntry."Transaction No." + 1);
    IF CustLedgEntry.FINDFIRST THEN
    IF NOT CustLedgEntry.Prepayment AND (CustLedgEntry."Prepayment Type" = CustLedgEntry."Prepayment Type"::Advance) THEN
    TransactionNo := CustLedgEntry."Transaction No.";
    END ELSE
    TransactionNo := CustLedgEntry."Transaction No." - 1;
    // End of the lines. 
    ...
    
  7. Ändra koden i funktionen PostUnApplyVendor i koduniten VendEntry-Apply Postnummer (227) enligt följande:
    Befintlig kod

    ...
    DtldVendLedgEntry."Vendor Ledger Entry No.",
    VendLedgEntry.FIELDCAPTION("Transaction No."));
    
    // Delete the following line. 
    DtldVendLedgEntry.TESTFIELD(Advance,FALSE);
    
    GetPrepmtApplTransNo(DtldVendLedgEntry."Vendor Ledger Entry No.",GenJnlLine."Prepmt. Appl. Transaction No."); 
    END;
    UNTIL DtldVendLedgEntry.NEXT = 0;
    ...
    

    Ersättningskod

    ...
    DtldVendLedgEntry."Vendor Ledger Entry No.",
    VendLedgEntry.FIELDCAPTION("Transaction No."));
    
    // Add the following line. 
    DtldVendLedgEntry.TESTFIELD(Advance, VendLedgEntry.Prepayment);
    
    GetPrepmtApplTransNo(DtldVendLedgEntry."Vendor Ledger Entry No.",GenJnlLine."Prepmt. Appl. Transaction No.");
    END;
    UNTIL DtldVendLedgEntry.NEXT = 0;
    ...
    
  8. Ändra koden i funktionen GetPrepmtApplTransNo i koduniten VendEntry-Apply Publicerade poster (227) enligt följande:
    Befintlig kod

    ...
    // Delete the following lines.
    VendLedgEntry.GET(VendLedgEntryNo);
    IF NOT VendLedgEntry.Prepayment AND
    (VendLedgEntry."Prepayment Type" = VendLedgEntry."Prepayment Type"::Advance)
    THEN BEGIN
    TransactionNo := VendLedgEntry."Transaction No." - 1;
    END;
    // End of the lines.
    ...
    

    Ersättningskod

    ...
    // Add the following lines.
    VendLedgEntry.GET(VendLedgEntryNo);
    IF VendLedgEntry."Prepayment Type" = VendLedgEntry."Prepayment Type"::Advance THEN
    IF VendLedgEntry.Prepayment THEN BEGIN
    VendLedgEntry.SETCURRENTKEY("Transaction No.");
    VendLedgEntry.SETRANGE("Transaction No.", VendLedgEntry."Transaction No." + 1);
    IF VendLedgEntry.FINDFIRST THEN
    IF NOT VendLedgEntry.Prepayment AND (VendLedgEntry."Prepayment Type" = VendLedgEntry."Prepayment Type"::Advance) THEN
    TransactionNo := VendLedgEntry."Transaction No.";
    END ELSE
    TransactionNo := VendLedgEntry."Transaction No." - 1;
    // End of the lines. 
    ...
    
  9. Lägg till en ny global variabel i koduniten Purchase-Post Advances (26586) och ange sedan variabeln enligt följande:

    • Namn: TempAdvanceLink

    • DataType: Post

    • Undertyp: Advance Link

  10. Skapa funktionen InsertTempApplnAdvanceLink i koduniten Förflyttningar Purchase-Post (26586) enligt följande:

    PROCEDURE InsertTempApplnAdvanceLink@1470034(DtldEntryBufEntryNo@1470002 : Integer);
    BEGIN
    TempAdvanceLink.INIT;
    TempAdvanceLink."Entry No." := DtldEntryBufEntryNo;
    TempAdvanceLink.INSERT;
    END;
    
    
  11. Skapa funktionen InsertApplnAdvanceLink i koduniten Purchase-Post Advances (26586) enligt följande:

    PROCEDURE InsertApplnAdvanceLink@140049(DtldCVLedgEntryBuf@1102601000 : Record 383);
    VAR
    AdvanceLink@1470001 : Record 26590;
    BEGIN
    WITH AdvanceLink DO BEGIN
    IF TempAdvanceLink.GET(DtldCVLedgEntryBuf."Entry No.") THEN BEGIN
    IF FINDLAST THEN
    NextLinkEntryNo := AdvanceLink."Entry No." + 1
    ELSE
    NextLinkEntryNo := 1;
    INIT;
    "Entry No." := NextLinkEntryNo;
    "Entry Type" := "Entry Type"::Application;
    "Document No." := DtldCVLedgEntryBuf."Document No.";
    "CV Ledger Entry No." := DtldCVLedgEntryBuf."Cust. Ledger Entry No.";
    Amount := DtldCVLedgEntryBuf.Amount;
    "Amount (LCY)" := DtldCVLedgEntryBuf."Amount (LCY)";
    INSERT;
    TempAdvanceLink.DELETE;
    END;
    END;
    END;
    

Krav

Du måste ha den östeuropeiska versionen av Microsoft Dynamics NAV 2009 R2 installerad för att kunna använda den här snabbkorrigeringen.

Information om borttagning

Du kan inte ta bort den här snabbkorrigeringen.

Mer information

Om du vill ha mer information om snabbkorrigering 2543219 klickar du på följande artikelnummer för att visa artikeln i Microsoft Knowledge Base:

2543219 Du kan inte behandla förbetalda förskottsbetalningar som förväntat i den östeuropeiska versionen av Microsoft Dynamics NAV 2009 R2

Status

Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".

Obs! Det här är en "FAST PUBLISH"-artikel som skapats direkt från Microsofts supportorganisation. Den information som finns häri tillhandahålls i befintligt format som svar på framväxande problem. Till följd av hur snabbt materialet blir tillgängligt kan materialet innehålla typografiska fel och kan komma att revideras när som helst utan föregående meddelande. Se användningsvillkor för andra överväganden.