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


Αυτό το άρθρο ισχύει για το Microsoft Dynamics NAV για όλες τις περιοχές.

Συμπτώματα


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

Επιπλέον, όταν καταχωρείτε μια παραλαβή αναίρεσης για την παραγγελία αγοράς, τις εγγραφές καθολικού ειδών ενημερώνονται σωστά. Αναμένετε το σύστημα για να ενημερώσετε την αποθήκη και σημείο εξίσου εγγραφές.
Αυτό το ζήτημα παρουσιάζεται μετά την εφαρμογή της επείγουσας επιδιόρθωσης στο KB 2159936.
Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
2159936 να απροσδόκητα καταχωρείτε μια παραγγελία αγοράς ως παραλαβή για μια υποχρεωτική θέση Κάδου με μια εργασία στο Microsoft Dynamics NAV 2009 Service Pack 1

Αυτό το ζήτημα παρουσιάζεται στα ακόλουθα προϊόντα:
  • 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. Αλλάξτε τον κωδικό στη συνάρτηση FromPurchaseLineToJnlLine στη μονάδα κώδικα (1004) ως εξής:

    Υπάρχοντα κώδικα
    ...    JobJnlLine."Line Discount Amount" :=
    ROUND("Job Line Discount Amount" * Factor,Currency."Amount Rounding Precision");
    END;

    JobJnlLine."Location Code" := "Location Code";
    JobJnlLine."Line Type" := "Job Line Type";
    ...
    Αντικατάσταση κώδικα
    ...      JobJnlLine."Line Discount Amount" :=
    ROUND("Job Line Discount Amount" * Factor,Currency."Amount Rounding Precision");
    END;

    JobJnlLine."Location Code" := "Location Code";

    // Add the following line.
    JobJnlLine."Bin Code" := "Bin Code";
    // End of the added line.

    JobJnlLine."Line Type" := "Job Line Type";
    ...
  2. Να αλλάξετε τον κωδικό του εναύσματος OnRun στο το Αγορές-Post μονάδα κώδικα (90) ως εξής:

    Σημείωση Ο κωδικός για να καταργήσετε προστέθηκε με KB 2159936, έτσι ώστε να μπορεί ή δεν μπορεί να είναι απαραίτητο να αλλάξετε τον ακόλουθο κώδικα.

    Υπάρχοντα κώδικα
    ...      IF PurchLine.Type = PurchLine.Type::"Charge (Item)" THEN BEGIN
    PurchLine.TESTFIELD(Amount);
    PurchLine.TESTFIELD("Job No.",'');
    END;

    // Delete the following lines.
    IF (PurchLine."Job No." <> '') AND (PurchLine.Type = PurchLine.Type::Item) THEN
    PurchLine.TESTFIELD("Bin Code",'');
    // End of the deleted lines.
    ...
    Αντικατάσταση κώδικα
    ...        IF PurchLine.Type = PurchLine.Type::"Charge (Item)" THEN BEGIN
    PurchLine.TESTFIELD(Amount);
    PurchLine.TESTFIELD("Job No.",'');
    END;
    ...
  3. Να αλλάξετε τον κωδικό στη συνάρτηση PostItemJnlLine στο το Αγορές-Post μονάδα κώδικα (90) ως εξής:

    Υπάρχοντα κώδικα
    ...   IF PostWhseJnlLine THEN BEGIN
    ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE);
    IF TempWhseJnlLine2.FIND('-') THEN
    REPEAT
    WhseJnlPostLine.RUN(TempWhseJnlLine2);
    UNTIL TempWhseJnlLine2.NEXT = 0;
    ...
    Αντικατάσταση κώδικα
    ...   IF PostWhseJnlLine THEN BEGIN
    ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE);
    IF TempWhseJnlLine2.FIND('-') THEN
    REPEAT
    WhseJnlPostLine.RUN(TempWhseJnlLine2);
    // Add the following lines.
    IF RevertWarehouseEntry(TempWhseJnlLine2,"Job No.",PostJobConsumptionBeforePurch) THEN
    WhseJnlPostLine.RUN(TempWhseJnlLine2);
    // End of the added lines.

    UNTIL TempWhseJnlLine2.NEXT = 0;
    ...
  4. Προσθέστε την ακόλουθη τοπική λειτουργία: RevertWarehouseEntry@92 (VAR TempWhseJnlLine@1000: 7311 ΠΡΟΣΩΡΙΝΉ εγγραφή; JobNo@1001: Κωδικός [20] PostJobConsumptionBeforePurch@1002: Δυαδική τιμή). Στη συνέχεια, προσθέστε τον ακόλουθο κώδικα για τη συνάρτηση:
    IF PostJobConsumptionBeforePurch OR (JobNo = '') THEN  EXIT(FALSE);
    WITH TempWhseJnlLine DO BEGIN
    "Entry Type" := "Entry Type"::"Negative Adjmt.";
    Quantity := -Quantity;
    "Qty. (Base)" := -"Qty. (Base)";
    "From Bin Code" := "To Bin Code";
    "To Bin Code" := '';
    END;
    EXIT(TRUE);


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

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


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

Δεν μπορείτε να καταργήσετε αυτήν την επείγουσα επιδιόρθωση.

Κατάσταση


Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Αναφορές


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