Auxiliar informații lipsește din raportul (10885) în versiunea franceză din Microsoft Dynamics NAV 2009

Șablon: CPR - Navision cod Fiacx șablon

Număr eroare: 207147 (întreținere conținut)

Sub contul exprimate, cantitatea de monedă, şi monede sunt câmpuri opționale în fișierul FEC în versiunea franceză din Microsoft Dynamics NAV 2009. Dar aceasta nu este opțională când intrările este validat în registrul general. Urmați pașii din secțiunea modificări de cod pentru a rezolva această problemă. Această problemă se produce în următoarele produse:

  • Versiunea franceză de Microsoft Dynamics NAV 2009 R2

  • Versiunea franceză Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Rezolvare

Informații despre remedierea rapidă

Un hotfix acceptat este acum disponibil de la Microsoft. Cu toate acestea, acesta este destinat numai corectării problemei descrise în acest articol. Aplicați-o numai pe sistemele care întâmpină această problemă anume. Această remediere rapidă poate să necesite testare suplimentară. De aceea, dacă nu sunteți grav afectat de această problemă, vă recomandăm să așteptați următorul pachet service pack Microsoft Dynamics NAV 2009 sau versiunea Microsoft Dynamics NAV următoare, care conține această remediere rapidă.

Notă În cazuri speciale, costurile implicate de obicei pentru asistență apeluri pot fi anulate dacă un specialist în asistență tehnică pentru Microsoft Dynamics și produse asociate stabilește că o anumită actualizare va rezolva problema. Se vor aplica costurile uzuale de asistenţă pentru întrebări suplimentare de asistenţă şi pentru probleme ce nu fac obiectul actualizării în cauză.

Dacă această remediere rapidă nu este publicată pentru descărcare publică (ceea ce înseamnă că un URL public pentru această remediere rapidă nu este furnizat în acest articol), distribuția necesită aprobarea manager, membru din echipa de implementare sau conducerii tehnice și se aplică următoarele informații:

  • Pentru a primi această remediere rapidă, clienții trebuie să se confrunte cu eroarea menționată în secțiunea "simptome".

  • Trebuie să urmăriți clienții să trimiteți și să le furnizați următorul pachet service pack când acesta va fi disponibil (dacă se lansează un pachet service pack).

Această remediere rapidă nu este planificată să fie inclusă într-o Microsoft Dynamics NAV Service Pack.

Informaţii despre instalare

Microsoft furnizează exemple de programare scop ilustrativ, fără nicio garanţie explicită sau implicită. Aceasta include, dar nu se limitează la, garanţiile implicite de vandabilitate sau de potrivire pentru un anumit scop. Acest articol presupune că sunteţi familiarizat cu limbajul de programare care este prezentat şi cu instrumentele utilizate pentru a crea şi a depana proceduri. Specialiștii în asistență Microsoft pot ajuta la explicarea funcționalității unei anumite proceduri. Cu toate acestea, nu vor modifica aceste exemple pentru a furniza funcționalitate suplimentară construi proceduri pentru a răspunde cerințelor dvs. specifice.

Notă Înainte de a instala această remediere rapidă, verificați dacă toți utilizatorii de client Microsoft Dynamics NAV sunt log off sistemul. Aceasta include servicii Microsoft Dynamics NAV Application Server (NAS). Ar trebui să fie singurul client utilizatorului care este conectat când implementați această remediere rapidă.

Pentru a implementa această remediere rapidă, trebuie să aveți o licență de dezvoltare.

Vă recomandăm că contul de utilizator în fereastra Conectări Windows sau în fereastra Conectări bază de date se atribuie "SUPER" rolul ID-ul. În cazul în care contul de utilizator nu poate fi atribuit ID-ul "SUPER" rolul, trebuie să verificați că contul de utilizator are următoarele permisiuni:

  • Modify permisiunea pentru obiectul care se va schimba.

  • Permisiunea de executare pentru obiectul sistem obiect ID 5210 și sistem obiect ID 9015

    obiect.

Notă Nu trebuie să aveți drepturi de la magazine de date decât dacă trebuie să efectuați o reparare de date.

Modificări de cod

Notă Întotdeauna test cod remediază într-un mediu controlat înainte de a aplica remedieri pentru computerele de producție.

Pentru a rezolva această problemă, urmați acești pași:

  1. Modificați codul din funcția GetCustomerLedgerEntryData Export contabil intrări - raport de Audit fiscal (10885) după cum urmează:
    Cod existent

    ...PartyName := Customer.Name;
    END;

    // Delete the following line.
    PayRecAccount := GetReceivablesAccount(CustLedgerEntry."Customer Posting Group");

    CountOfGLEntriesInTransaction := GetTransPayRecEntriesCount(GLEntry."Transaction No.",PayRecAccount);

    IF (CustLedgerEntry."Currency Code" <> '') AND (CountOfGLEntriesInTransaction = 1) THEN BEGIN
    ...

    Cod de înlocuire

    ...PartyName := Customer.Name;
    END;

    CountOfGLEntriesInTransaction := GetTransPayRecEntriesCount(GLEntry."Transaction No.",PayRecAccount);

    IF (CustLedgerEntry."Currency Code" <> '') AND (CountOfGLEntriesInTransaction = 1) THEN BEGIN
    ...
  2. Modificați codul din funcția GetVendorLedgerEntryData Export contabil intrări - raport de Audit fiscal (10885) după cum urmează:
    Cod existent

    ...PartyNo := Vendor."No.";
    PartyName := Vendor.Name;
    END;

    // Delete the following line.
    PayRecAccount := GetPayablesAccount(VendorLedgerEntry."Vendor Posting Group");

    CountOfGLEntriesInTransaction := GetTransPayRecEntriesCount(GLEntry."Transaction No.",PayRecAccount);

    IF (VendorLedgerEntry."Currency Code" <> '') AND (CountOfGLEntriesInTransaction = 1) THEN BEGIN
    ...

    Cod de înlocuire

    ...
    PartyNo := Vendor."No.";
    PartyName := Vendor.Name;
    END;
    CountOfGLEntriesInTransaction := GetTransPayRecEntriesCount(GLEntry."Transaction No.",PayRecAccount);

    IF (VendorLedgerEntry."Currency Code" <> '') AND (CountOfGLEntriesInTransaction = 1) THEN BEGIN
    ...
  3. Modificați codul din funcția GetLedgerEntryDataForCustVend Export contabil intrări - raport de Audit fiscal (10885) după cum urmează:
    Cod existent 1

    ...END
    END;

    // Delete the following line.
    PROCEDURE GetLedgerEntryDataForCustVend@1120007(TransactionNo@1120000 : Integer;VAR PartyNo@1120011 : Code[20];VAR PartyName@1120012 : Text[50];VAR FCYAmount@1120013 : Text[250];VAR CurrencyCode@1120014 : Code[10];VAR PayRecAccount@1120044 : Code[20]);

    VAR
    CustLedgerEntry@1120005 : Record 21;
    VendorLedgerEntry@1120006 : Record 25;
    ...

    Înlocuirea cod 1

    ...END
    END;

    // Add the following line.
    PROCEDURE GetLedgerEntryDataForCustVend@1120007(TransactionNo@1120000 : Integer;VAR PartyNo@1120011 : Code[20];VAR PartyName@1120012 : Text[50];VAR FCYAmount@1120013 : Text[250];VAR CurrencyCode@1120014 : Code[10]);

    VAR
    CustLedgerEntry@1120005 : Record 21;
    VendorLedgerEntry@1120006 : Record 25;
    ...

    Cod existent 2

    ...VAR
    CustLedgerEntry@1120005 : Record 21;
    VendorLedgerEntry@1120006 : Record 25;

    // Delete the following lines.
    CountOfGLEntriesInTransaction@1120001 : Integer;
    BEGIN
    CustLedgerEntry.SETRANGE("Transaction No.",TransactionNo);
    IF CustLedgerEntry.FINDFIRST AND (CustLedgerEntry.COUNT = 1) THEN BEGIN
    // End of the deleted lines.

    GetCustomerLedgerEntryData(CustLedgerEntry,PartyNo,PartyName,FCYAmount,CurrencyCode);
    EXIT;
    END;
    ...

    Înlocuirea cod 2

    ...VAR
    CustLedgerEntry@1120005 : Record 21;
    VendorLedgerEntry@1120006 : Record 25;

    // Add the following lines.
    BEGIN
    CustLedgerEntry.SETRANGE("Transaction No.",TransactionNo);
    IF CustLedgerEntry.FINDFIRST THEN BEGIN
    PayRecAccount := GetReceivablesAccount(CustLedgerEntry."Customer Posting Group");
    CustLedgerEntry.SETFILTER("Customer No.",'<>%1',CustLedgerEntry."Customer No.");
    IF CustLedgerEntry.FINDFIRST THEN BEGIN
    PartyName := 'multi-clients';
    PartyNo := '*';
    END ELSE
    // End of the added lines.

    GetCustomerLedgerEntryData(CustLedgerEntry,PartyNo,PartyName,FCYAmount,CurrencyCode);
    EXIT;
    END;
    ...

    Cod existent 3

    ...END;

    VendorLedgerEntry.SETRANGE("Transaction No.",TransactionNo);

    // Delete the following line.
    IF VendorLedgerEntry.FINDFIRST AND (VendorLedgerEntry.COUNT = 1) THEN BEGIN

    GetVendorLedgerEntryData(VendorLedgerEntry,PartyNo,PartyName,FCYAmount,CurrencyCode);
    END
    END;
    ...

    Înlocuirea cod 3

    ...END;

    VendorLedgerEntry.SETRANGE("Transaction No.",TransactionNo);

    // Add the following lines.
    IF VendorLedgerEntry.FINDFIRST THEN BEGIN
    PayRecAccount := GetPayablesAccount(VendorLedgerEntry."Vendor Posting Group");
    VendorLedgerEntry.SETFILTER("Vendor No.",'<>%1',VendorLedgerEntry."Vendor No.");
    IF VendorLedgerEntry.FINDFIRST THEN BEGIN
    PartyName := 'multi-fournisseurs';
    PartyNo := '*';
    END ELSE
    // End of the added lines.

    GetVendorLedgerEntryData(VendorLedgerEntry,PartyNo,PartyName,FCYAmount,CurrencyCode);
    END
    END;
    ...
  4. Modificați codul din funcția ProcessGLEntry Export contabil intrări - raport de Audit fiscal (10885) după cum urmează:
    Cod existent 1

    ...CustVendLedgEntryPartyNo,
    CustVendLedgEntryPartyName,
    CustVendLedgEntryFCYAmount,

    // Delete the following lines.
    CustVendLedgEntryCurrencyCode,
    PayRecAccount);
    // End of the deleted lines.

    CurrentTransactionNo := GLEntry."Transaction No.";
    END;
    ...

    Înlocuirea cod 1

    ...CustVendLedgEntryPartyNo,
    CustVendLedgEntryPartyName,
    CustVendLedgEntryFCYAmount,

    // Add the following line.
    CustVendLedgEntryCurrencyCode);

    CurrentTransactionNo := GLEntry."Transaction No.";
    END;
    ...
  5. Modificați codul din funcția WriteHeaderToFile Export contabil intrări - raport de Audit fiscal (10885) după cum urmează:
    Cod existent

    ...LOCAL PROCEDURE WriteHeaderToFile@1120040();
    BEGIN

    // Delete the following line.
    OutputTextStream.WriteLine('JournalCode|JournalLib|EcriturNum|EcritureDate|CompteNum|CompteLib|CompAuxNum|CompAuxLib|PieceRef|' +

    'PieceDate|EcritureLib|Debit|Credit|EcritureLet|DateLet|ValidDate|Montantdevise|Idevise');
    END;
    ...

    Cod de înlocuire

    ...LOCAL PROCEDURE WriteHeaderToFile@1120040();
    BEGIN

    // Add the following lines.
    OutputTextStream.WriteLine(
    'JournalCode|JournalLib|EcritureNum|EcritureDate|CompteNum|CompteLib|CompAuxNum|CompAuxLib|PieceRef|' +
    // End of the added lines.

    'PieceDate|EcritureLib|Debit|Credit|EcritureLet|DateLet|ValidDate|Montantdevise|Idevise');
    END;
    ...


Cerințe preliminare

Trebuie să aveți unul dintre următoarele produse instalate pentru a aplica această remediere rapidă:

  • Versiunea franceză de Microsoft Dynamics NAV 2009 R2

  • Versiunea franceză Microsoft Dynamics NAV 2009 SP1

Eliminare informaţii

Nu se poate elimina această remediere rapidă.

Stare

Microsoft a confirmat că aceasta este o problemă cu produsele Microsoft enumerate în secţiunea „Se aplică la".

Referințe

VSFT DynamicsNAVSE: 359441

Notă Acesta este un articol "rapid publicat" creat direct în cadrul organizației de asistență Microsoft. Informațiile conținute în acest document sunt furnizate ca răspuns la problemele care apar. Ca rezultat al vitezei în a-l face disponibil, materialele pot include erori tipografice și pot fi revizuite în orice moment, fără notificare. Consultați Termenii de utilizarepentru alte considerații.

Autor: avannini
Writer: v-six
Examinare tehnică: avannini
Editor:

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă la Microsoft Insider

V-a fost de ajutor această informație?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×