Maksumuse korrigeerimine sisestatakse valed kahjude või kasumi konto pearaamatu Portugali versioonis Microsoft Dynamics nav-i 2009

Mall: CPR - Navision koodi Fix Mall

VEA nr: 186310 (Content Maintenance)

Käesolev artikkel kehtib Microsoft Dynamics NAV Portugali (pt) keele locale.

Sümptomid

Kui mitu rida on erinevad varude sisestamise sõprade ja muu kahju või tulu konto inventuuri töölehe Portugali versioonis Microsoft Dynamics nav-i 2009, kulu kohanduse sisestatakse valed kahjude või kasumi konto pearaamatu.

See probleem ilmneb järgmiste toodetega:

  • Portugali versioonis Microsoft Dynamics nav-i 2009 R2

  • Portugali versioonis Microsoft Dynamics nav-i 2009 Service Pack 1 (SP1)


Lahendus

Kiirparanduse teave

Lasknud välja toetatava käigultparanduse on nüüd Microsoftilt saadaval. Aga see on ette nähtud ainult selles artiklis kirjeldatud probleemi kõrvaldamiseks. Rakendage seda ainult süsteemides, kus ilmneb see konkreetne probleem. Seda käigultparandust võidakse täiendavalt testida. Kui see probleem teie tööd tõsiselt ei kahjusta, soovitame oodata järgmist hoolduspaketti Microsoft Dynamics nav-i 2009 või järgmise Microsoft Dynamics nav-i versiooni, mis sisaldab seda kiirparandust.

Märkus. Erijuhtudel kulud, mis tekivad teatud palub tühistada saab kui tehniline toetus Professional Microsoft Dynamics ja nendega seotud toodete leiab, et mõni konkreetne värskendus lahendab teie probleemi. Tavaline tugiteenuste kohaldatakse täiendavat tugiteenust vajavatele küsimustele ning probleemidele, mis pole lahendatavad konkreetse värskenduse installimisega.

Kui see käigultparandus pole sisestatud avalikkusele allalaadimiseks (st avalik URL See kiirparandus ei ole selles artiklis toodud), jaotus vajab, laiendamine meeskonna liige, või halduri kinnitamise ja järgmine teave kehtib:

  • Käigultparanduse saamiseks peavad kliendid esineda jaotises "Tunnused" kirjeldatud tarkvaraveaga.

  • Peate jälgima kliente, selle paranduse saadate, ning saatma neile järgmise hoolduspaketi kohe, kui see on saadaval (kui hoolduspakett välja antakse).

Seda käigultparandust ei plaanita Microsoft Dynamics nav-i hoolduspaketti kaasata.

Installiteave

Microsoft pakub programmeerimisnäiteid ainult artikli illustreerimiseks ilma igasuguse otsese või kaudse garantiita. See hõlmab, kuid ei piirdu kaudseid garantiisid turustatavuse või kindlaks otstarbeks sobivusega. See artikkel eeldab, et olete demonstreeritava programmeerimiskeelega programmeerimise keel ning luua protseduuride ja silumiseks kasutatavate tööriistadega tuttav. Microsofti tugitehnikud võivad aidata mõne konkreetse protseduuri talitlust selgitada. Siiski ei muuda nad neid näiteid lisafunktsioonide pakkumiseks ega Koosta vastavaid protseduure teie konkreetsetele nõuetele.

Märkus. Enne selle kiirparanduse installimist veenduge, et kõik Microsoft Dynamics nav-i kliendi kasutajat sisse loginud süsteem välja. See hõlmab Microsoft Dynamics nav-i rakenduste Server (NAS) teenuseid. Peaks olema ainult kliendi kasutaja on sisse logitud, kui otsustate seda käigultparandust.

Selle kiirparanduse rakendamiseks peab teil olema arendaja litsentsi.

Soovitame Windowsi sisselogimise aken või aken andmebaasi logimine kasutajakonto määrata "SUPER" rolli ID. Kui "SUPER" rolli ID-d ei saa määratud kasutajakonto, peate veenduma, et kasutaja konto on järgmised õigused:

  • Sa muutuvad objekti Muuda õigusi.

  • Käivita luba süsteemi objekti ID 5210 objekti ja süsteemi objekti ID 9015

    objekti.

Märkus. Teil pole õigust andmeid talletab enne, kui olete andmete parandamiseks.

Koodi muudatusi

Märkus. Alati test koodi lahendab kontrollitavas keskkonnas enne rakendamist tootmine arvutite parandused.

Selle probleemi lahendamiseks muuta koodi GetPhysicalInv funktsioon GetLocation-Post LineCodeunit (22) järgmiselt:

Kood 1

...VAR
PhysInvLedgEntry@1110002 : Record 281;
IsPhysInventory@1110003 : Boolean;
PrevAdjAcc@1110004 : Text[20];
GLEntry@1110005 : Record 17;
BEGIN
WITH ValueEntry DO BEGIN
IsPhysInventory := FALSE;
PhysInvLedgEntry.SETCURRENTKEY("Document No.","Posting Date");
PhysInvLedgEntry.SETRANGE(PhysInvLedgEntry."Document No.","Document No.");
...

Kood 1

...VAR
PhysInvLedgEntry@1110002 : Record 281;
IsPhysInventory@1110003 : Boolean;
PrevAdjAcc@1110004 : Text[20];
GLEntry@1110005 : Record 17;

// Add the following line.
GLItemLedgRelation@1110006 : Record 5823;
// End of the added line.

BEGIN
WITH ValueEntry DO BEGIN
IsPhysInventory := FALSE;
PhysInvLedgEntry.SETCURRENTKEY("Document No.","Posting Date");
PhysInvLedgEntry.SETRANGE(PhysInvLedgEntry."Document No.","Document No.");
...

Kood 2

...IsPhysInventory := FALSE;
PhysInvLedgEntry.SETCURRENTKEY("Document No.","Posting Date");
PhysInvLedgEntry.SETRANGE(PhysInvLedgEntry."Document No.","Document No.");
IF PhysInvLedgEntry.FINDSET THEN BEGIN
IsPhysInventory := TRUE;

// Delete the following lines.
GLEntry.SETCURRENTKEY("Document No.","Posting Date");
GLEntry.SETRANGE(GLEntry."Document No.","Document No.");
IF GLEntry.FINDSET THEN BEGIN
GLEntry.FINDLAST;
IF CalledFromAdjustment THEN
PrevAdjAcc := GLEntry."G/L Account No.";
END;
// End of the deleted lines.

END;

IF (("Item Ledger Entry Type" IN ["Item Ledger Entry Type"::"Negative Adjmt.","Item Ledger Entry Type"::"Positive Adjmt."]) AND
("Entry Type" = "Entry Type"::"Direct Cost") AND Adjustment AND IsPhysInventory) OR ItemJnlLine."Phys. Inventory" THEN
InvtPost.GetPhysicalInventory(TRUE,ItemJnlLine."Location Code",ItemJnlLine."Inventory Posting Group",PrevAdjAcc)
...

Asendamine kood 2

...IsPhysInventory := FALSE;
PhysInvLedgEntry.SETCURRENTKEY("Document No.","Posting Date");
PhysInvLedgEntry.SETRANGE(PhysInvLedgEntry."Document No.","Document No.");
IF PhysInvLedgEntry.FINDSET THEN BEGIN
IsPhysInventory := TRUE;

// Add the following lines.
IF CalledFromAdjustment THEN BEGIN
GLItemLedgRelation.SETCURRENTKEY("Value Entry No.");
GLItemLedgRelation.SETRANGE("Value Entry No.",ItemJnlLine."Applies-to Value Entry");
IF GLItemLedgRelation.FINDLAST THEN BEGIN
GLEntry.GET(GLItemLedgRelation."G/L Entry No.");
PrevAdjAcc := GLEntry."G/L Account No.";
END;
END;
// End of the added lines.

END;

IF (("Item Ledger Entry Type" IN ["Item Ledger Entry Type"::"Negative Adjmt.","Item Ledger Entry Type"::"Positive Adjmt."]) AND
("Entry Type" = "Entry Type"::"Direct Cost") AND Adjustment AND IsPhysInventory) OR ItemJnlLine."Phys. Inventory" THEN
InvtPost.GetPhysicalInventory(TRUE,ItemJnlLine."Location Code",ItemJnlLine."Inventory Posting Group",PrevAdjAcc)
...

Eeltingimused

Teil peab olema üks installitud järgmised tooted ja selle kiirparanduse rakendamist järgmine kiirparandus:

  • Portugali versioonis Microsoft Dynamics nav-i 2009 R2

  • Portugali versioonis Microsoft Dynamics nav-i 2009 Service Pack 1

Lisaks peab teil olema 2845151 selle kiirparanduse installinud käigultparanduse. Käigultparanduste 2845151 kohta lisateabe saamiseks klõpsake Microsofti teabebaasi (Knowledge Base) artikli kuvamiseks järgmist artiklinumbrit:

varude vähenemine 2845151 ei peeta Portugali versioonis Microsoft Dynamics nav-i 2009

Eemaldamise teave

See käigultparandus ei saa eemaldada.

Olek

Microsoft on kinnitanud, et see probleem esineb jaotises "Kehtib järgmiste toodete kohta" loetletud Microsofti toodetel.

Viited

VSFT DynamicsNAVSE: 326877

Märkus. See on "Kiire avaldamise" artikli loonud otse Microsofti tugiteenuse pakkujalt. Siintoodud teave on esitatud lähtudes-olemasoleval kujul vastusena ilmnenud probleemidele. Kiire avaldamise materjalides esineda trükivigu ja võidakse muuta ette teatamata. Vaadake Kasutustingimusedmuid kaalutlusi.

Autor: hholmin
Writer: v-six
Tech Reviewer: hholmin
Editor:

Kas vajate veel abi?

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liitu Microsofti Insideri programmis osalejad

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×