Εμφανίζεται το μήνυμα λάθους "Ποσό πρέπει να είναι θετικός στη γραμμή εγγραφών γ / λ" όταν καταχωρείτε ένα τιμολόγιο προπληρωμής στο Microsoft Dynamics NAV 2009

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο έχει μεταφραστεί χρησιμοποιώντας λογισμικό μηχανικής μετάφρασης της Microsoft και μπορείτε να το διορθώσετε χρησιμοποιώντας την τεχνολογία Community Translation Framework (CTF) (Πλαίσιο μετάφρασης κοινότητας). Η Microsoft παρέχει μηχανική μετάφραση, επεξεργασία μετά τη μηχανική μετάφραση από την κοινότητα και άρθρα μεταφρασμένα από επαγγελματίες προκειμένου να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής βάσης σε πολλές γλώσσες. Τα άρθρα μηχανικής μετάφρασης και αυτά που επεξεργάζονται ύστερα από μηχανική μετάφραση ενδέχεται να περιέχουν σφάλματα στο λεξιλόγιο, στη σύνταξη ή/και στη γραμματική. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες μας. Για περισσότερες πληροφορίες σχετικά με το CTF, μεταβείτε στην τοποθεσία http://support.microsoft.com/gp/machine-translation-corrections/el.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη: 2893954
Αυτό το άρθρο ισχύει για το Microsoft Dynamics NAV για όλες τις χώρες και για όλες τις τοπικές ρυθμίσεις γλώσσας.
Συμπτώματα
Ας υποθέσουμε ότι οι τιμές με ΦΠΑ ορίζεται και τιμολόγια προπληρωμής δεν συμπιέζονται στο Microsoft Dynamics NAV 2009. Όταν καταχωρείτε ένα τιμολόγιο προπληρωμής, λαμβάνετε το ακόλουθο μήνυμα λάθους:
Ποσό πρέπει να είναι θετικός στη γραμμή εγγραφών γ / λ.
Αυτό το ζήτημα παρουσιάζεται στα ακόλουθα προϊόντα:
  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
  • Microsoft Dynamics NAV 2009 R2
Προτεινόμενη αντιμετώπιση

Πληροφορίες άμεσης επιδιόρθωσης

Μια υποστηριζόμενη άμεση επιδιόρθωση είναι τώρα διαθέσιμη από τη Microsoft. Ωστόσο, προορίζεται μόνο για τη διόρθωση του ζητήματος που περιγράφεται σε αυτό το άρθρο. Eφαρμόστε τη μόνο σε συστήματα που αντιμετωπίζουν το συγκεκριμένο ζήτημα. Αυτή η επείγουσα επιδιόρθωση ενδέχεται να υποβληθεί σε πρόσθετο έλεγχο. Επομένως, εάν αυτό το ζήτημα δεν σας επηρεάζει ιδιαίτερα, σας συνιστούμε να περιμένετε έως το επόμενο service pack του Microsoft Dynamics NAV 2009 ή την επόμενη έκδοση του Microsoft Dynamics NAV που περιέχει αυτήν την επείγουσα επιδιόρθωση.

Σημείωση Σε ειδικές περιπτώσεις, οι χρεώσεις που υφίστανται κανονικά για κλήσεις υποστήριξης ενδέχεται να να ακυρωθούν, εάν έναν επαγγελματία τεχνικής υποστήριξης για το Microsoft Dynamics και σχετικά προϊόντα προσδιορίζει ότι μια συγκεκριμένη ενημερωμένη έκδοση θα επιλύσει το ζήτημά σας. Οι συνηθισμένες χρεώσεις υποστήριξης θα ισχύει για πρόσθετες ερωτήσεις υποστήριξης και για θέματα που δεν αφορούν τη συγκεκριμένη ενημερωμένη έκδοση.



Πληροφορίες εγκατάστασης

Η Microsoft παρέχει παραδείγματα προγραμματισμού μόνο για επεξήγηση, χωρίς καμία εγγύηση, είτε σιωπηρή είτε ρητή. Αυτό περιλαμβάνει, αλλά δεν είναι ενδεικτικά, των σιωπηρών εγγυήσεων εμπορευσιμότητας ή καταλληλότητας για συγκεκριμένο σκοπό. Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τη γλώσσα προγραμματισμού που παρουσιάζεται, καθώς και με τα εργαλεία που χρησιμοποιούνται για τη δημιουργία και τον εντοπισμό σφαλμάτων διαδικασιών. Οι μηχανικοί υποστήριξης της Microsoft μπορούν να σας εξηγήσουν τη λειτουργικότητα μιας συγκεκριμένης διαδικασίας, αλλά δεν θα τροποποιήσουν αυτά τα παραδείγματα για να παράσχουν πρόσθετες λειτουργίες, ούτε θα δημιουργήσουν διαδικασίες για να καλύψουν τις συγκεκριμένες απαιτήσεις σας.

Σημείωση Πριν να εγκαταστήσετε αυτήν την επείγουσα επιδιόρθωση, επιβεβαιώστε ότι όλοι οι χρήστες προγράμματος-πελάτη Microsoft Navision έχουν αποσυνδεθεί από το σύστημα. Σε αυτές περιλαμβάνονται οι χρήστες του προγράμματος-πελάτη Microsoft Navision εφαρμογής υπηρεσιών (NAS). Θα πρέπει να το πρόγραμμα-πελάτη μόνο χρήστη που είναι συνδεδεμένος κατά την εφαρμογή αυτής της επείγουσας επιδιόρθωσης.

Για να εφαρμόσετε αυτήν την επείγουσα επιδιόρθωση, πρέπει να έχετε μια άδεια χρήσης του προγραμματιστή.

Συνιστούμε ότι ο λογαριασμός χρήστη στο παράθυρο "Συνδέσεις Windows" ή στο παράθυρο συνδέσεις βάσης δεδομένων να αντιστοιχιστεί το "SUPER" αναγνωριστικό ρόλου. Εάν ο λογαριασμός χρήστη δεν μπορεί να αντιστοιχιστεί το Αναγνωριστικό ρόλου "SUPER", πρέπει να επαληθεύσετε ότι ο λογαριασμός χρήστη έχει τα ακόλουθα δικαιώματα:
  • Το δικαίωμα "Τροποποίηση" για το αντικείμενο που θα αλλάξετε.
  • Τα δικαιώματα εκτέλεσης για το αντικείμενο 5210 Αναγνωριστικό αντικειμένου συστήματος και για το αντικείμενο 9015 Αναγνωριστικό αντικειμένου συστήματος .

Σημείωση Δεν πρέπει να έχετε δικαιώματα για τους χώρους αποθήκευσης δεδομένων, εκτός και αν έχετε να εκτελέσετε επιδιόρθωση δεδομένων.

Αλλαγές κώδικα

Σημείωση Πάντα δοκιμή κώδικα διορθώνει σε ελεγχόμενο περιβάλλον πριν να εφαρμόσετε τις ενημερώσεις κώδικα στους υπολογιστές παραγωγής.
Για να επιλύσετε αυτό το ζήτημα, ακολουθήστε τα εξής βήματα:
  1. Αλλάξτε τον κωδικό στη συνάρτηση AdjustPrepmtAmountLCY στο το Codeuint καταχώρηση πωλήσεων (80) ως εξής:
    Υπάρχοντα κωδικό 1
    ...TotalPrepmtAmount@1002 : ARRAY [2] OF Decimal;      BEGIN...
    Αντικατάσταση κώδικα 1
    ...TotalPrepmtAmount@1002 : ARRAY [2] OF Decimal;// Add the following line.       PricesInclVATRoundingAmount@1170000000 : ARRAY [2] OF Decimal;// End of the added line.      BEGIN...
    Υπάρχοντα κώδικα 2
    ...TotalPrepmtAmount[1] += "Prepmt. Amount Inv. (LCY)";...
    Αντικατάσταση κώδικα 2
    ...// Add the following lines.IF SalesHeader."Prices Including VAT" THEN                 IF (("Prepayment %" <> 100) OR IsFinalInvoice) AND (DeductionFactor = 1) THEN BEGIN                   PricesInclVATRoundingAmount[1] := TotalRoundingAmount[1];                   PricesInclVATRoundingAmount[2] := TotalRoundingAmount[2];                 END;// End of the added lines.                 TotalPrepmtAmount[1] += "Prepmt. Amount Inv. (LCY)";...
    Υπάρχοντα κώδικα 3
    ...UpdatePrepmtSalesLineWithRound(// Delete the following line.           PrepmtSalesLine,TotalRoundingAmount,TotalPrepmtAmount,TempPrepmtDeductLCYSalesLine.IsFinalInvoice);// End of the deleted line.        END;...
    Αντικατάσταση κώδικα 3
    ...UpdatePrepmtSalesLineWithRound(// Add the following lines.           PrepmtSalesLine,TotalRoundingAmount,TotalPrepmtAmount,           TempPrepmtDeductLCYSalesLine.IsFinalInvoice,PricesInclVATRoundingAmount);// End of the added lines.        END;...
  2. Αλλάξτε τον κωδικό στη συνάρτησηUpdatePrepmtSalesLineWithRound στην καταχώρηση theSales Codeuint (80) ως εξής:
    Υπάρχοντα κωδικό 1
    ...// Delete the following line.LOCAL PROCEDURE UpdatePrepmtSalesLineWithRound@89(VAR PrepmtSalesLine@1002 : Record 37;TotalRoundingAmount@1001 : ARRAY [2] OF Decimal;TotalPrepmtAmount@1000 : ARRAY [2] OF Decimal;FinalInvoice@1170000000 : Boolean);// End of the deleted line.      VAR...
    Αντικατάσταση κώδικα 1
    ...// Add the following line.LOCAL PROCEDURE UpdatePrepmtSalesLineWithRound@89(VAR PrepmtSalesLine@1002 : Record 37;TotalRoundingAmount@1001 : ARRAY [2] OF Decimal;TotalPrepmtAmount@1000 : ARRAY [2] OF Decimal;FinalInvoice@1170000000 : Boolean;PricesInclVATRoundingAmount@1170000001 : ARRAY [2] OF Decimal);// End of the added line.      VAR...
    Υπάρχοντα κώδικα 2
    ...// Delete the following line.IF (ABS(TotalRoundingAmount[2]) <= GLSetup."Amount Rounding Precision") OR FinalInvoice THEN BEGIN// End of the deleted line.            IF ("Prepayment %" = 100) AND ("Prepmt. Amount Inv. (LCY)" = 0) THEN...
    Αντικατάσταση κώδικα 2
    ...// Add the following lines.IF (PricesInclVATRoundingAmount[1] <> 0) AND (TotalRoundingAmount[1] = 0) THEN BEGIN           Prepmt100PctVATRoundingAmt := 0;           PricesInclVATRoundingAmount[1] := 0;         END;          IF (ABS(TotalRoundingAmount[2]) <= GLSetup."Amount Rounding Precision") OR            (FinalInvoice AND (TotalRoundingAmount[1] = 0))         THEN BEGIN// End of the added lines.            IF ("Prepayment %" = 100) AND ("Prepmt. Amount Inv. (LCY)" = 0) THEN...
    Υπάρχοντα κώδικα 3
    ...END;// Delete the following lines.         "Prepmt. VAT Amount Inv. (LCY)" := TotalRoundingAmount[2] + Prepmt100PctVATRoundingAmt;         NewAmountIncludingVAT := Amount + TotalPrepmtAmount[2] + TotalRoundingAmount[2];         Increment(TotalSalesLineLCY."Amount Including VAT","Amount Including VAT" - NewAmountIncludingVAT - Prepmt100PctVATRoundingAmt);// End of the deleted lines.          IF "Currency Code" = '' THEN...
    Αντικατάσταση κώδικα 3
    ...END;// Add the following lines.          IF (PricesInclVATRoundingAmount[2] <> 0) AND (TotalRoundingAmount[2] = 0) THEN BEGIN           Prepmt100PctVATRoundingAmt := 0;           PricesInclVATRoundingAmount[2] := 0;         END;          "Prepmt. VAT Amount Inv. (LCY)" := TotalRoundingAmount[2] + Prepmt100PctVATRoundingAmt;         NewAmountIncludingVAT := Amount + TotalPrepmtAmount[2] + TotalRoundingAmount[2];         IF (PricesInclVATRoundingAmount[1] = 0) AND (PricesInclVATRoundingAmount[2] = 0) THEN           Increment(TotalSalesLineLCY."Amount Including VAT","Amount Including VAT" - NewAmountIncludingVAT - Prepmt100PctVATRoundingAmt       );// End of the added lines.          IF "Currency Code" = '' THEN...
  3. Να αλλάξετε τον κωδικό στη συνάρτηση AdjustPrepmtAmountLCY αγορές.-καταχώρηση μονάδα κώδικα (90) ως εξής:
    Υπάρχοντα κωδικό 1
    ...TotalPrepmtAmount@1003 : ARRAY [2] OF Decimal;      BEGIN...
    Αντικατάσταση κώδικα 1
    ...TotalPrepmtAmount@1003 : ARRAY [2] OF Decimal;// Add the following line.       PricesInclVATRoundingAmount@1170000000 : ARRAY [2] OF Decimal;// End of the added line.      BEGIN...
    Υπάρχοντα κώδικα 2
    ...TotalPrepmtAmount[1] += "Prepmt. Amount Inv. (LCY)";...
    Αντικατάσταση κώδικα 2
    ...// Add the following lines.               IF PurchHeader."Prices Including VAT" THEN                 IF (("Prepayment %" <> 100) OR IsFinalInvoice) AND (DeductionFactor = 1) THEN BEGIN                   PricesInclVATRoundingAmount[1] := TotalRoundingAmount[1];                   PricesInclVATRoundingAmount[2] := TotalRoundingAmount[2];                 END;// End of the added lines.                 TotalPrepmtAmount[1] += "Prepmt. Amount Inv. (LCY)";...
    Υπάρχοντα κώδικα 3
    ...// Delete the following line.UpdatePrepmtPurchLineWithRound(PrepmtPurchLine,TotalRoundingAmount,TotalPrepmtAmount);// End of the deleted line.        END;...
    Αντικατάσταση κώδικα 3
    ...// Add the following lines.UpdatePrepmtPurchLineWithRound(           PrepmtPurchLine,TotalRoundingAmount,TotalPrepmtAmount,           TempPrepmtDeductLCYPurchLine.IsFinalInvoice,PricesInclVATRoundingAmount);// End of the added lines.        END;...
  4. Να αλλάξετε τον κωδικό στη συνάρτησηUpdatePrepmtPurchLineWithRound στο thePurch.-μονάδα κώδικα Post (90) ως εξής:
    Υπάρχοντα κωδικό 1
    ...// Delete the following line.LOCAL PROCEDURE UpdatePrepmtPurchLineWithRound@89(VAR PrepmtPurchLine@1002 : Record 39;TotalRoundingAmount@1001 : ARRAY [2] OF Decimal;TotalPrepmtAmount@1000 : ARRAY [2] OF Decimal);// End of the deleted line.      VAR...
    Αντικατάσταση κώδικα 1
    ...// Add the following line.LOCAL PROCEDURE UpdatePrepmtPurchLineWithRound@89(VAR PrepmtPurchLine@1002 : Record 39;TotalRoundingAmount@1001 : ARRAY [2] OF Decimal;TotalPrepmtAmount@1000 : ARRAY [2] OF Decimal;FinalInvoice@1170000001 : Boolean;PricesInclVATRoundingAmount@1170000000 : ARRAY [2] OF Decimal);// End of the added line.      VAR...
    Υπάρχοντα κώδικα 2
    ...// Delete the following line.IF ABS(TotalRoundingAmount[2]) <= GLSetup."Amount Rounding Precision" THEN BEGIN// End of the deleted line.            IF ("Prepayment %" = 100) AND ("Prepmt. Amount Inv. (LCY)" = 0) THEN...
    Αντικατάσταση κώδικα 2
    ...// Add the following lines.         IF (PricesInclVATRoundingAmount[1] <> 0) AND (TotalRoundingAmount[1] = 0) THEN BEGIN           Prepmt100PctVATRoundingAmt := 0;           PricesInclVATRoundingAmount[1] := 0;         END;          IF (ABS(TotalRoundingAmount[2]) <= GLSetup."Amount Rounding Precision") OR            (FinalInvoice AND (TotalRoundingAmount[1] = 0))         THEN BEGIN// End of the added lines.            IF ("Prepayment %" = 100) AND ("Prepmt. Amount Inv. (LCY)" = 0) THEN...
    Υπάρχοντα κώδικα 3
    ...END;// Delete the following lines.         "Prepmt. VAT Amount Inv. (LCY)" := -(TotalRoundingAmount[2] + Prepmt100PctVATRoundingAmt);         NewAmountIncludingVAT := Amount - (TotalPrepmtAmount[2] + TotalRoundingAmount[2]);         Increment(           TotalPurchLineLCY."Amount Including VAT",-("Amount Including VAT" - NewAmountIncludingVAT + Prepmt100PctVATRoundingAmt));// End of the deleted lines.          IF "Currency Code" = '' THEN...
    Αντικατάσταση κώδικα 3
    ...END;// Add the following lines.         IF (PricesInclVATRoundingAmount[2] <> 0) AND (TotalRoundingAmount[2] = 0) THEN BEGIN           Prepmt100PctVATRoundingAmt := 0;           PricesInclVATRoundingAmount[2] := 0;         END;          "Prepmt. VAT Amount Inv. (LCY)" := -(TotalRoundingAmount[2] + Prepmt100PctVATRoundingAmt);         NewAmountIncludingVAT := Amount - (TotalPrepmtAmount[2] + TotalRoundingAmount[2]);         IF (PricesInclVATRoundingAmount[1] = 0) AND (PricesInclVATRoundingAmount[2] = 0) THEN           Increment(             TotalPurchLineLCY."Amount Including VAT",-("Amount Including VAT" - NewAmountIncludingVAT + Prepmt100PctVATRoundingAmt));// End of the added lnies.          IF "Currency Code" = '' THEN...

Προϋποθέσεις

Πρέπει να έχετε ένα από τα ακόλουθα προϊόντα, για να εφαρμόσετε αυτήν την επείγουσα επιδιόρθωση:
  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
  • Microsoft Dynamics NAV 2009 R2


Πληροφορίες κατάργησης

Δεν μπορείτε να καταργήσετε αυτήν την επείγουσα επιδιόρθωση.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Σημείωση Αυτό είναι ένα άρθρο "ΤΑΧΕΙΑΣ ΔΗΜΟΣΙΕΥΣΗΣ" που έχει δημιουργηθεί απευθείας από την εταιρεία υποστήριξης της Microsoft. Οι πληροφορίες που περιέχονται στο παρόν έγγραφο παρέχονται ως έχουν, ως απάντηση σε ζητήματα που προέκυψαν. Ως αποτέλεσμα της ταχύτητας διαθεσιμότητάς του, το υλικό ενδέχεται να περιλαμβάνει τυπογραφικά λάθη και μπορεί να αναθεωρηθεί οποιαδήποτε στιγμή, χωρίς προειδοποίηση. Ανατρέξτε στην ενότητα Όροι χρήσης για άλλα θέματα.

Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 2893954 - Τελευταία αναθεώρηση: 08/09/2016 05:24:00 - Αναθεώρηση: 2.0

Microsoft Dynamics NAV 2009

  • kbqfe kbmbsmigrate kbmbscodefix kbsurveynew kberrmsg kbmt KB2893954 KbMtel
Σχόλια