Jūs varat neparedzēti palaist valūtas kursa atšķirību aprēķināšanas atskaiti (12302) pēc tam, kad esat palaidis valūtas kursa pielāgošanas paketi bankas kontam Microsoft Dynamics NAV 2009 R2 poļu versijā

Attiecas uz
Microsoft Dynamics NAV 2009 R2

Šis raksts attiecas uz Microsoft Dynamics NAV poļu (pl) valodas lokalizācijai.

Pazīmes

Pieņemsim, ka palaižat valūtas kursa korekcijas paketi bankas kontam Microsoft Dynamics NAV 2009 R2 poļu versijā. Šādā gadījumā var neparedzēti palaist valūtas kursa starpību aprēķināšanas atskaiti (12302) bankas kontam.

Risinājums

Informācija par labojumfailu

Atbalstīts labojumfails tagad ir pieejams no Microsoft. Tomēr tas ir paredzēts tikai šajā rakstā aprakstītās problēmas novēršanai. Lietojiet to tikai sistēmām, kurās rodas šī konkrētā problēma. Šim labojumfailam var tikt veiktas papildu pārbaudes. Tāpēc, ja šī problēma jūs nopietni neietekmē, ieteicams gaidīt nākamo Microsoft Dynamics NAV 2009 servisa pakotni vai nākamo Microsoft Dynamics NAV versiju, kurā ir šis labojumfails.

Piezīme Īpašos gadījumos maksa, kas parasti tiek piemērota par atbalsta zvaniem, var tikt atcelta, ja Microsoft Dynamics un saistīto produktu tehniskā atbalsta speciālists nosaka, ka problēma tiks novērsta, instalējot noteiktu atjauninājumu. Parasti atbalsta izmaksas attiecas uz jautājumiem par papildu atbalstu un problēmām, kas neskar specifisko atjauninājumu apspriešanu.

            
          

Informācija par instalāciju

Microsoft sniedz programmēšanas piemērus tikai ilustrācijai, bez tiešas vai netiešas garantijas. Tas ietver, bet neaprobežojas ar netiešām garantijām par piemērotību pārdošanai vai piemērotībai noteiktam mērķim. Šajā rakstā tiek pieņemts, ka pārzināt demonstrējamo programmēšanas valodu un rīkus, kas tiek izmantoti procedūru izveidei un atkļūdošanai. Microsoft atbalsta inženieri var palīdzēt izskaidrot konkrētās procedūras funkcionalitāti, bet viņi šos piemērus nemodificēs, lai nodrošinātu papildu funkcionalitāti vai veidotu procedūras, kas atbilst jūsu specifiskajām prasībām.

Piezīme Pirms šī labojumfaila instalēšanas pārliecinieties, vai visi Microsoft Navision klienta lietotāji ir atteikušies no sistēmas. Tas ietver Microsoft Navision lietojumprogrammu pakalpojumu (NAS) klienta lietotājus. Jūs esat vienīgais klienta lietotājs, kurš ir pieteicies, ieviešot šo labojumfailu.

Lai ieviestu šo labojumfailu, ir nepieciešama izstrādātāja licence.

Iesakām lietotāja kontam logā Windows pieteikšanās vai datu bāzes pieteikšanās logā piešķirt lomas ID "SUPER". Ja lietotāja kontam nevar piešķirt "SUPER" lomas ID, jums ir jāpārbauda, vai lietotāja kontam ir šādas atļaujas:

  • Modificēt objektu, kuru mainīsit.
  • Izpildes atļauja sistēmas objekta ID 5210 un sistēmas objekta ID 9015.

                
Piezīme. Jums nav tiesību uz datu krātuvēm, ja vien jums nav jāveic datu labošana.

Koda izmaiņas

Piezīme Pirms labojumu lietošanas ražošanas datoros vienmēr pārbaudiet koda labojumus kontrolētā vidē.
Lai atrisinātu šo problēmu, veiciet tālāk norādītās darbības.

  1. Mainiet kodu sadaļā Lauki tabulā Bankas konts (270) šādi:
    Esošais kods

    ...
    { 111 ; ;SWIFT Code ;Code20 ;CaptionML=ENU=SWIFT Code }
    
    // Delete the following lines.
    { 12301; ;Cash/Bank Report Mandatory;Boolean ;OnValidate=VAR
    CashBankReport@1170000 : Record 12300;
    BEGIN
    IF NOT "Cash/Bank Report Mandatory" THEN BEGIN
    BankAccLedgEntry.SETCURRENTKEY("Bank Account No.","Cash/Bank Report Cons. No.","Cash/Bank Report Position");
    BankAccLedgEntry.SETRANGE("Bank Account No.","No.");
    BankAccLedgEntry.SETFILTER("Cash/Bank Report Cons. No.",'<>0');
    IF BankAccLedgEntry.FIND('-') THEN
    ERROR(Text12300,"Cash/Bank Report Mandatory",FIELDNAME("Cash/Bank Report Mandatory"),
    BankAccLedgEntry.TABLENAME,CashBankReport.TABLENAME);
    END;
    // End of the lines.
    
    END;
    ...
    

    Aizstāšanas kods

    ...
    { 111 ; ;SWIFT Code ;Code20 ;CaptionML=ENU=SWIFT Code }
    
    // Add the following lines.
    { 12301; ;Cash/Bank Report Mandatory;Boolean ;OnValidate=BEGIN
    CheckCashBankRepMandatory;
    // End of the lines.
    
    END;
    ...
    
  2. Mainiet kodu funkcijas CheckCashBankRepMandatory tabulā Bankas konts (270) šādi:
    Esošais kods

    ...
    BEGIN
    ...
    

    Aizstāšanas kods

    ...
    // Add the following lines.
    LOCAL PROCEDURE CheckCashBankRepMandatory@1170000();
    VAR
    CashBankReport@1170000 : Record 12300;
    ExchRateAdjmtReg@1170001 : Record 86;
    BEGIN
    IF "Cash/Bank Report Mandatory" THEN BEGIN
    IF HasExchRateAdjmtReg THEN
    RaiseCashBankRepErr(ExchRateAdjmtReg.TABLECAPTION)
    END ELSE
    IF HasCashBankLedgEntries THEN
    RaiseCashBankRepErr(CashBankReport.TABLECAPTION);
    END;
    LOCAL PROCEDURE HasExchRateAdjmtReg@1170006() : Boolean;
    VAR
    ExchRateAdjmtReg@1170000 : Record 86;
    BEGIN
    ExchRateAdjmtReg.SETRANGE("Account Type",ExchRateAdjmtReg."Account Type"::"Bank Account");
    ExchRateAdjmtReg.SETRANGE("Account No.","No.");
    EXIT(NOT ExchRateAdjmtReg.ISEMPTY);
    END;
    LOCAL PROCEDURE HasCashBankLedgEntries@1170007() : Boolean;
    VAR
    BankAccLedgEntry@1170000 : Record 271;
    BEGIN
    IF NOT BankAccLedgEntry.RECORDLEVELLOCKING THEN
    BankAccLedgEntry.SETCURRENTKEY("Bank Account No.","Cash/Bank Report Cons. No.","Cash/Bank Report Position");
    BankAccLedgEntry.SETRANGE("Bank Account No.","No.");
    BankAccLedgEntry.SETFILTER("Cash/Bank Report Cons. No.",'<>0');
    EXIT(NOT BankAccLedgEntry.ISEMPTY);
    END;
    LOCAL PROCEDURE RaiseCashBankRepErr@1170001(RelatedTableCaption@1170000 : Text[80]);
    BEGIN
    ERROR(
    Text12300,"Cash/Bank Report Mandatory",FIELDCAPTION("Cash/Bank Report Mandatory"),
    BankAccLedgEntry.TABLECAPTION,RelatedTableCaption)
    END;
    // End of the lines.
    
    BEGIN
    ...
    
  3. Mainiet kodu atskaites par valūtas kursu koriģēšanu (595) sadaļā Datu vienuma numurs 3 šādi:
    Esošais kods

    ...
    DataItemTable=Table270;
    
    // Delete the following line.
    DataItemTableView=SORTING(Bank Acc. Posting Group);
    
    OnPreDataItem=BEGIN
    ...
    

    Aizstāšanas kods

    ...
    DataItemTable=Table270;
    
    // Add the following lines.
    DataItemTableView=SORTING(Bank Acc. Posting Group)
    WHERE(Cash/Bank Report Mandatory=FILTER(No));
    // End of the lines.
    
    OnPreDataItem=BEGIN
    ...
    
  4. Mainiet kodu sadaļas Datu vienuma numurs 1 atskaites Aprēķināt valūtas kursa atšķirības (12302) šādi:
    Esošais kods

    ...
    DataItemTable=Table270;
    OnPreDataItem=BEGIN
    ...
    

    Aizstāšanas kods

    ...
    DataItemTable=Table270;
    
    // Add the following lines.
    DataItemTableView=SORTING(No.)
    WHERE(Cash/Bank Report Mandatory=FILTER(Yes));
    // End of the lines.
    
    OnPreDataItem=BEGIN
    ...
    

          

Priekšnosacījumi

Lai lietotu šo labojumfailu, jābūt instalētai Microsoft Dynamics NAV 2009 R2 poļu versijai.

Noņemšanas informācija

Šo labojumfailu nevar noņemt.

Statuss

Microsoft apstiprināja, ka šī ir problēma Microsoft produktos, kas norādīti sadaļā "attiecas uz".

Piezīme Šis ir "ĀTRĀS PUBLICĒŠANAS" raksts, kas izveidots tieši Microsoft atbalsta organizācijā. Šeit ietvertā informācija tiek sniegta tāda, kāda tā ir, reaģējot uz jauniem jautājumiem. Ātrās pieejamības rezultātā materiālos var būt drukas kļūdas, un tos var pārskatīt jebkurā laikā bez iepriekšēja brīdinājuma. Citus apsvērumus skatiet lietošanas nosacījumos .