Bu makale Microsoft Dynamics NAV için tüm dil yerel ayarları için geçerlidir.
Belirtiler
Talep çalışma sayfasının bir satınalma siparişi veya satınalma siparişi el ile oluşturduğunuzda oluşturmak için kullandığınızda Microsoft Dynamics NAV, sevkiyat ve özel siparişler ilgili satış siparişindeki tanımlanan bilgileri dikkate almaz. Bu nedenle, açıklama, Açıklama 2 ve satış siparişi başlığı ve satırları sevkiyat adresi değil izleyin pegged sipariş satın.
Bu sorun aşağıdaki ürünlerde oluşur:-
Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
-
Microsoft Dynamics NAV 2009 R2
Çözüm
Düzeltme bilgileri
Artık Microsoft tarafından desteklenen bir düzeltme sağlanmaktadır. Ancak bunun yalnızca bu makalede anlatılan sorunu düzeltmesi amaçlanmıştır. Yalnızca bu özel sorunla karşılaşmış olan sistemlere uygulayın. Bu düzeltme ek sınama uygulanabilir. Bu nedenle, bu sorundan ciddi bir şekilde etkilenmiyorsanız, Microsoft Dynamics NAV 2009 sonraki hizmet paketini veya, bu düzeltmeyi içeren bir sonraki Microsoft Dynamics NAV sürümü için beklemek öneririz.
Not: Özel durumlarda, destek aramaları teknik destek uzmanı Microsoft Dynamics ve ilgili ürünlere yönelik iptal edilebilir çözeceğini giderleri belirleyen belirli bir güncelleştirmenin sorununuzu. Ek destek sorularına ve söz konusu güncelleştirme için geçerli olmayan sorunlara normal destek ücretleri uygulanır.
Yükleme bilgileri
Microsoft, programlama örneklerini yalnızca gösterim amacıyla zımni veya açık garanti olmadan sağlar. Bu, satılabilirlik veya belirli bir amaca uygunluk açısından zımni garantileri içerir ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama dilini, yordamları oluşturmak ve yordamlardan hata ayıklamak için kullanılan araçları bildiğinizi varsayar. Microsoft destek mühendisleri belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilirler, ancak ilave işlevsellik sağlamak için bu örnekleri değiştirmezler veya belirli gereksinimlerinizi karşılayacak şekilde yordamları yapılandırmazlar.
Not: Bu düzeltmeyi yüklemeden önce tüm Microsoft Navision istemcisi kullanıcılar sistem oturum doğrulayın. Bu, Microsoft Navision uygulama Hizmetleri (NAS) istemci kullanıcıları içerir. Bu düzeltmeyi uyguladığınızda yalnızca istemci kullanıcının oturum açmış olması gerekir. Bu düzeltmeyi uygulamak için bir geliştirici lisansı olması gerekir. Kullanıcı hesabının Windows oturumu açma penceresini veya veritabanı oturumu açma penceresi "Süper" rol kimliği atanması öneririz Kullanıcı hesabı "Süper" rol Kimliği atanamaz, kullanıcı hesabı aşağıdaki izinlere sahip olduğunu doğrulamanız gerekir:-
Nesnenin, değiştirme değişiklik yapma izni.
-
Execute izni Sistem nesne kimliği 5210 nesnenin ve nesne kimliği 9015 sistem nesnesi için.
Not: Veri onarım gerçekleştirmek zorunda sürece veri depoları haklarına sahip olmanız gerekmez.
Kod değişiklikleri
Not: Her zaman, uygulamadan önce test kodu denetimli bir ortamda üretim bilgisayarlarınıza düzeltmeler giderir.
Bu sorunu gidermek için şu adımları izleyin: Not: Kuzey Amerika sürümü W1 için farklı olduğu için kod birimi (333) eriştiğinizde okuyun. Her ikisi için başlatma ve durdurma her sürümün etiketlerle burada bulunmaktadır.-
Satınalma Başlığı tablosundaki (38) kodu aşağıdaki gibi değiştirin:
-
Aşağıdaki genel metin sabiti ekleyin:
Text051@1091: TextConst ' trk = %1 satınalma siparişi %2 alanının %3 satış siparişi aynı olması gerekir.'; -
Aşağıdaki genel değişkenleri ekleyin:
-
Adı: NameAddressDetails; Veri türü: Metin [512];
-
Adı: NameAddressDetails2; Veri türü: Metin [512];
-
-
Aşağıdaki işlev ekleyin:
CheckAndAddShipToAdd@46 (SalesHeader@1000: 36; kaydetme ShowError@1001: Boolean): Boole; VAR PurchLine2@1002: Kayıt 39; İşlev için aşağıdaki kodu ekleyin:IF ShowError THEN BEGIN PurchLine2.RESET;
PurchLine2.SETRANGE("Document Type","Document Type"::Order); PurchLine2.SETRANGE("Document No.","No."); IF NOT PurchLine2.ISEMPTY THEN BEGIN IF "Ship-to Name" <>SalesHeader."Ship-to Name" THEN ERROR(Text051,FIELDCAPTION("Ship-to Name"),"No.",SalesHeader."No."); IF "Ship-to Name 2" <>SalesHeader."Ship-to Name 2" THEN ERROR(Text051,FIELDCAPTION("Ship-to Name 2"),"No.",SalesHeader."No."); IF ("Ship-to Address" <>SalesHeader."Ship-to Address") THEN ERROR(Text051,FIELDCAPTION("Ship-to Address"),"No.",SalesHeader."No."); IF ("Ship-to Address 2" <> SalesHeader."Ship-to Address 2") THEN ERROR(Text051,FIELDCAPTION("Ship-to Address 2"),"No.",SalesHeader."No."); IF ("Ship-to Post Code" <>SalesHeader."Ship-to Post Code") THEN ERROR(Text051,FIELDCAPTION("Ship-to Post Code"),"No.",SalesHeader."No."); IF ("Ship-to City" <>SalesHeader."Ship-to City") THEN ERROR(Text051,FIELDCAPTION("Ship-to City"),"No.",SalesHeader."No."); IF ("Ship-to Contact" <>SalesHeader."Ship-to Contact") THEN ERROR(Text051,FIELDCAPTION("Ship-to Contact"),"No.",SalesHeader."No."); END ELSE BEGIN // no purchase line exists "Ship-to Name" := SalesHeader."Ship-to Name"; "Ship-to Name 2" := SalesHeader."Ship-to Name 2"; "Ship-to Address" := SalesHeader."Ship-to Address"; "Ship-to Address 2" := SalesHeader."Ship-to Address 2"; "Ship-to Post Code" := SalesHeader."Ship-to Post Code"; "Ship-to City" := SalesHeader."Ship-to City"; "Ship-to Contact" := SalesHeader."Ship-to Contact"; END; END ELSE BEGIN NameAddressDetails := SalesHeader."Ship-to Name" + SalesHeader."Ship-to Name 2" + SalesHeader."Ship-to Address" + SalesHeader."Ship-to Address 2" + SalesHeader."Ship-to Post Code" + SalesHeader."Ship-to City" + SalesHeader."Ship-to Contact"; IF NameAddressDetails2 = '' THEN NameAddressDetails2 := NameAddressDetails; EXIT(NameAddressDetails2 = NameAddressDetails); END; -
Aşağıdaki işlev ekleyin:
DropShptSplOrderExists@48 (SalesHeader@1000: 36 kayıt): Boole; VAR SalesLine2@1001: Kayıt 37; İşlev için aşağıdaki kodu ekleyin:// returns TRUE if sales is either Drop Shipment of Special OrderSalesLine2.RESET;
SalesLine2.SETRANGE("Document Type",SalesLine2."Document Type"::Order); SalesLine2.SETRANGE("Document No.",SalesHeader."No."); SalesLine2.SETRANGE("Drop Shipment",TRUE); IF NOT SalesLine2.ISEMPTY THEN EXIT(TRUE); SalesLine2.SETRANGE("Drop Shipment"); SalesLine2.SETRANGE("Special Order",TRUE); EXIT(NOT SalesLine2.ISEMPTY);
-
-
Satış Siparişlerini Getir raporu (698) InsertReqWkshLine işlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... Quantity,
ROUND(SalesLine."Outstanding Quantity" * SalesLine."Qty. per Unit of Measure" / "Qty. per Unit of Measure",0.00001)); "Sales Order No." := SalesLine."Document No."; "Sales Order Line No." := SalesLine."Line No."; "Sell-to Customer No." := SalesLine."Sell-to Customer No."; SalesHeader.GET(1,SalesLine."Document No."); IF SpecOrder <>1 THEN "Ship-to Code" := SalesHeader."Ship-to Code"; "Item Category Code" := SalesLine."Item Category Code"; Nonstock := SalesLine.Nonstock; ...Kod değiştirme
... Quantity,
ROUND(SalesLine."Outstanding Quantity" * SalesLine."Qty. per Unit of Measure" / "Qty. per Unit of Measure",0.00001)); "Sales Order No." := SalesLine."Document No."; "Sales Order Line No." := SalesLine."Line No."; "Sell-to Customer No." := SalesLine."Sell-to Customer No."; // Add the following lines. Description := SalesLine.Description; "Description 2" := SalesLine."Description 2"; // End of the added lines. SalesHeader.GET(1,SalesLine."Document No."); IF SpecOrder <>1 THEN "Ship-to Code" := SalesHeader."Ship-to Code"; "Item Category Code" := SalesLine."Item Category Code"; Nonstock := SalesLine.Nonstock; ... -
Kod işlevi kodunda değiştirmek Satınalma-bırak sevk almak (76) kod aşağıdaki gibi:
Varolan kodu... IF RECORDLEVELLOCKING THEN
LOCKTABLE; SalesHeader.TESTFIELD("Document Type",SalesHeader."Document Type"::Order); TESTFIELD("Sell-to Customer No.",SalesHeader."Sell-to Customer No."); TESTFIELD("Ship-to Code",SalesHeader."Ship-to Code"); PurchLine.LOCKTABLE; IF NOT RECORDLEVELLOCKING THEN LOCKTABLE(TRUE,TRUE); // Only version check SalesLine.LOCKTABLE; ... PurchLine."Document Type" := PurchLine."Document Type"::Order; PurchLine."Document No." := "No."; PurchLine."Line No." := NextLineNo; CopyDocMgt.TransfldsFromSalesToPurchLine(SalesLine,PurchLine); PurchLine.Description := SalesLine.Description; PurchLine."Sales Order No." := SalesLine."Document No."; PurchLine."Sales Order Line No." := SalesLine."Line No."; PurchLine."Drop Shipment" := TRUE; EVALUATE(PurchLine."Inbound Whse. Handling Time",'<0D>'); PurchLine.VALIDATE("Inbound Whse. Handling Time"); ...Kod değiştirme
... IF RECORDLEVELLOCKING THEN
LOCKTABLE; SalesHeader.TESTFIELD("Document Type",SalesHeader."Document Type"::Order); TESTFIELD("Sell-to Customer No.",SalesHeader."Sell-to Customer No."); TESTFIELD("Ship-to Code",SalesHeader."Ship-to Code"); // Add the following lines. IF DropShptSplOrderExists(SalesHeader) THEN CheckAndAddShipToAdd(SalesHeader,TRUE); // End of the added lines. PurchLine.LOCKTABLE; IF NOT RECORDLEVELLOCKING THEN LOCKTABLE(TRUE,TRUE); // Only version check SalesLine.LOCKTABLE; ... PurchLine."Document Type" := PurchLine."Document Type"::Order; PurchLine."Document No." := "No."; PurchLine."Line No." := NextLineNo; CopyDocMgt.TransfldsFromSalesToPurchLine(SalesLine,PurchLine); PurchLine.Description := SalesLine.Description; // Add the following line. PurchLine."Description 2" := SalesLine."Description 2"; // End of the added line. PurchLine."Sales Order No." := SalesLine."Document No."; PurchLine."Sales Order Line No." := SalesLine."Line No."; PurchLine."Drop Shipment" := TRUE; EVALUATE(PurchLine."Inbound Whse. Handling Time",'<0D>'); PurchLine.VALIDATE("Inbound Whse. Handling Time"); ... -
ReqJnlManagement kod (330) GetDescriptionAndRcptName işlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... ReqLine.Type::"G/L Account":
IF GLAcc.GET(ReqLine."No.") THEN Description := GLAcc.Name ELSE Description := ''; // Delete the following lines. ReqLine.Type::Item: IF Item.GET(ReqLine."No.") THEN Description := Item.Description ELSE Description := ''; // End of the deleted lines. END; END; IF ReqLine."Vendor No." = '' THEN BuyFromVendorName := '' ...Kod değiştirme
... ReqLine.Type::"G/L Account":
IF GLAcc.GET(ReqLine."No.") THEN Description := GLAcc.Name ELSE Description := ''; END; END; IF ReqLine."Vendor No." = '' THEN BuyFromVendorName := '' ... -
Not Kod birimi (333), dünya çapında sürüm vs Kuzey Amerika sürümünde farklı kod vardır. Doğru bölüm, yüklemek için kullanın.
Kuzey Amerika sürümü BAŞLAMADAN kod (333) kodunda değiştirmek Talep Çlş.-Sipariş Oluştur aşağıdaki gibi:-
Aşağıdaki genel değişkeni ekleyin:
-
Adı: DropShptSpecialOrderExists;
-
Veri türü: Boolean;
-
-
InsertPurchOrderLineişlevinde aşağıdaki yerel değişkenleri ekleyin:
-
Adı: SalesHeader; Veri türü: Kayıt (36);
-
Adı: DropShptSplOrderDiffAddress; Veri türü: Boolean;
-
Adı: CreateNewRecord; Veri türü: Boolean;
-
-
InsertPurchOrderLineişlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu...// Delete the following lines.
WITH ReqLine2 DO BEGIN IF ("No." = '') OR ("Vendor No." = '') OR (Quantity = 0) THEN EXIT; IF NOT PurchasingCode.GET("Purchasing Code") THEN PurchasingCode."Special Order" := FALSE; IF (PurchasingCode."Special Order" AND (PurchSetup."Combine Special Orders Default" = PurchSetup."Combine Special Orders Default"::"Always Combine") AND ((PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Location Code" <> "Location Code") OR (PurchOrderHeader."Currency Code" <>"Currency Code") OR (PrevPurchCode <>"Purchasing Code"))) OR (NOT PurchasingCode."Special Order" AND ((PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Location Code" <>"Location Code") OR (PurchOrderHeader."Sell-to Customer No." <>"Sell-to Customer No.") OR (PrevShipToCode <>"Ship-to Code") OR (PurchOrderHeader."Order Address Code" <> "Order Address Code") OR (PurchOrderHeader."Currency Code" <> "Currency Code") OR (PrevPurchCode <>"Purchasing Code"))) THEN BEGIN InsertHeader(ReqLine2); LineCount := 0; NextLineNo := 0; PrevPurchCode := "Purchasing Code"; PrevShipToCode := "Ship-to Code"; END; IF (PurchasingCode."Special Order") AND (PurchSetup."Combine Special Orders Default" = PurchSetup."Combine Special Orders Default"::"Never Combine") AND ((PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Location Code" <> "Location Code") OR (PurchOrderHeader."Currency Code" <>"Currency Code") OR (PrevPurchCode <> "Purchasing Code")) THEN BEGIN InsertHeader(ReqLine2); END; // End of the deleted lines. LineCount := LineCount + 1; IF NOT PlanningResiliency THEN Window.UPDATE(4,LineCount); ...Kod değiştirme
...// Add the following lines.
WITH ReqLine2 DO BEGIN IF ("No." = '') OR ("Vendor No." = '') OR (Quantity = 0) THEN EXIT; DropShptSpecialOrderExists := FALSE; IF SalesHeader.GET(SalesHeader."Document Type"::Order,"Sales Order No.") THEN BEGIN DropShptSpecialOrderExists := PurchOrderHeader.DropShptSplOrderExists(SalesHeader); IF DropShptSpecialOrderExists THEN DropShptSplOrderDiffAddress := NOT PurchOrderHeader.CheckAndAddShipToAdd(SalesHeader,FALSE); END; IF NOT PurchasingCode.GET("Purchasing Code") THEN PurchasingCode."Special Order" := FALSE; CreateNewRecord := (PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Location Code" <> "Location Code") OR (PurchOrderHeader."Currency Code" <> "Currency Code") OR (PrevPurchCode <>"Purchasing Code") OR DropShptSplOrderDiffAddress; IF PurchasingCode."Special Order" AND CreateNewRecord THEN BEGIN InsertHeader(ReqLine2); IF PurchSetup."Combine Special Orders Default" = PurchSetup."Combine Special Orders Default"::"Always Combine" THEN BEGIN LineCount := 0; NextLineNo := 0; PrevPurchCode := "Purchasing Code"; PrevShipToCode := "Ship-to Code"; END; END; IF NOT PurchasingCode."Special Order" AND (CreateNewRecord OR (PurchOrderHeader."Sell-to Customer No." <>"Sell-to Customer No.") OR (PrevShipToCode <>"Ship-to Code") OR (PurchOrderHeader."Order Address Code" <>"Order Address Code")) THEN BEGIN InsertHeader(ReqLine2); LineCount := 0; NextLineNo := 0; PrevPurchCode := "Purchasing Code"; PrevShipToCode := "Ship-to Code"; END; // End of the added lines. LineCount := LineCount + 1; IF NOT PlanningResiliency THEN Window.UPDATE(4,LineCount); ... -
InsertHeader işlevinde kodu aşağıdaki gibi değiştirin:
Aşağıdaki yerel değişken ekleyin:-
Adı: SalesHeader;
-
Veri türü: Kayıt (36);
Varolan kodu
... WITH ReqLine2 DO BEGIN
OrderCounter := OrderCounter + 1; IF NOT PlanningResiliency THEN Window.UPDATE(3,OrderCounter); PurchSetup.GET; PurchSetup.TESTFIELD("Order Nos."); // Delete the following line. CLEAR(PurchOrderHeader); // End of the deleted line. PurchOrderHeader.INIT; PurchOrderHeader."Document Type" := PurchOrderHeader."Document Type"::Order; PurchOrderHeader."No." := ''; ... PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); END ELSE BEGIN PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); PurchOrderHeader.SetShipToForSpecOrder; END; PurchOrderHeader.MODIFY; COMMIT; IF RECORDLEVELLOCKING THEN LOCKTABLE; PurchOrderHeader.MARK(TRUE); END; ...Kod değiştirme
...WITH ReqLine2 DO BEGIN
OrderCounter := OrderCounter + 1; IF NOT PlanningResiliency THEN Window.UPDATE(3,OrderCounter); PurchSetup.GET; PurchSetup.TESTFIELD("Order Nos."); PurchOrderHeader.INIT; PurchOrderHeader."Document Type" := PurchOrderHeader."Document Type"::Order; PurchOrderHeader."No." := ''; ... PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); END ELSE BEGIN PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); PurchOrderHeader.SetShipToForSpecOrder; END; // Add the following lines. IF DropShptSpecialOrderExists THEN BEGIN SalesHeader.GET(SalesHeader."Document Type"::Order,"Sales Order No."); PurchOrderHeader."Ship-to Name" := SalesHeader."Ship-to Name"; PurchOrderHeader."Ship-to Name 2" := SalesHeader."Ship-to Name 2"; PurchOrderHeader."Ship-to Address" := SalesHeader."Ship-to Address"; PurchOrderHeader."Ship-to Address 2" := SalesHeader."Ship-to Address 2"; PurchOrderHeader."Ship-to Post Code" := SalesHeader."Ship-to Post Code"; PurchOrderHeader."Ship-to City" := SalesHeader."Ship-to City"; PurchOrderHeader."Ship-to Contact" := SalesHeader."Ship-to Contact"; END; // End of the added lines. PurchOrderHeader.MODIFY; COMMIT; IF RECORDLEVELLOCKING THEN LOCKTABLE; PurchOrderHeader.MARK(TRUE); END; ... -
W1 sürüm başlamak kod (333) kodunda değiştirmek Talep Çlş.-siparişe aşağıdaki gibi:
-
Aşağıdaki genel değişkeni ekleyin:
-
Adı: DropShptSpecialOrderExists;
-
Veri türü: Boolean;
-
-
InsertPurchOrderLineişlevinde aşağıdaki yerel değişkenleri ekleyin:
-
Adı: SalesHeader; Veri türü: Kayıt (36);
-
Adı: DropShptSplOrderDiffAddress; Veri türü: Boolean;
-
-
InsertPurchOrderLineişlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... WITH ReqLine2 DO BEGIN
IF ("No." = '') OR ("Vendor No." = '') OR (Quantity = 0) THEN EXIT; IF (PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Sell-to Customer No."<> "Sell-to Customer No.") OR (PrevShipToCode <> "Ship-to Code") OR (PurchOrderHeader."Order Address Code" <>"Order Address Code") OR (PurchOrderHeader."Currency Code" <>"Currency Code") OR // Delete the following line. (PrevPurchCode <>"Purchasing Code") // End of the deleted line. THEN BEGIN InsertHeader(ReqLine2); LineCount := 0; NextLineNo := 0; PrevPurchCode := "Purchasing Code"; PrevShipToCode := "Ship-to Code"; END; ...Kod değiştirme
... WITH ReqLine2 DO BEGIN
IF ("No." = '') OR ("Vendor No." = '') OR (Quantity = 0) THEN EXIT; // Add the following lines. DropShptSpecialOrderExists := FALSE; IF SalesHeader.GET(SalesHeader."Document Type"::Order,"Sales Order No.") THEN BEGIN DropShptSpecialOrderExists := PurchOrderHeader.DropShptSplOrderExists(SalesHeader); IF DropShptSpecialOrderExists THEN DropShptSplOrderDiffAddress := NOT PurchOrderHeader.CheckAndAddShipToAdd(SalesHeader,FALSE); END; // End of the added lines. IF (PurchOrderHeader."Buy-from Vendor No." <>"Vendor No.") OR (PurchOrderHeader."Sell-to Customer No."<> "Sell-to Customer No.") OR (PrevShipToCode <> "Ship-to Code") OR (PurchOrderHeader."Order Address Code" <>"Order Address Code") OR (PurchOrderHeader."Currency Code" <>"Currency Code") OR // Add the following lines. (PrevPurchCode <> "Purchasing Code") OR (DropShptSplOrderDiffAddress) // End of the added lines. THEN BEGIN InsertHeader(ReqLine2); LineCount := 0; NextLineNo := 0; PrevPurchCode := "Purchasing Code"; PrevShipToCode := "Ship-to Code"; END; ... -
InsertHeader işlevinde kodu aşağıdaki gibi değiştirin:
Aşağıdaki yerel değişken ekleyin:-
Adı: SalesHeader;
-
Veri türü: Kayıt (36);
Varolan kodu
... END ELSE BEGIN
PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); PurchOrderHeader.SetShipToForSpecOrder; END; PurchOrderHeader.MODIFY; COMMIT; IF RECORDLEVELLOCKING THEN LOCKTABLE; PurchOrderHeader.MARK(TRUE); END; ...Kod değiştirme
... END ELSE BEGIN
PurchOrderHeader.VALIDATE("Location Code",ReqLine2."Location Code"); PurchOrderHeader.SetShipToForSpecOrder; END; // Add the following lines. IF DropShptSpecialOrderExists THEN BEGIN IF SalesHeader.GET(SalesHeader."Document Type"::Order,"Sales Order No.") THEN BEGIN PurchOrderHeader."Ship-to Name" := SalesHeader."Ship-to Name"; PurchOrderHeader."Ship-to Name 2" := SalesHeader."Ship-to Name 2"; PurchOrderHeader."Ship-to Address" := SalesHeader."Ship-to Address"; PurchOrderHeader."Ship-to Address 2" := SalesHeader."Ship-to Address 2"; PurchOrderHeader."Ship-to Post Code" := SalesHeader."Ship-to Post Code"; PurchOrderHeader."Ship-to City" := SalesHeader."Ship-to City"; PurchOrderHeader."Ship-to Contact" := SalesHeader."Ship-to Contact"; END; // End of the added lines. PurchOrderHeader.MODIFY; COMMIT; IF RECORDLEVELLOCKING THEN LOCKTABLE; PurchOrderHeader.MARK(TRUE); END; ... -
-
-
Dist. tümleştirme kod (5702) EnterPurchaseItemCrossRef işlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... IF Found THEN BEGIN
"Cross-Reference No." := ItemCrossReference."Cross-Reference No."; "Unit of Measure (Cross Ref.)" := ItemCrossReference."Unit of Measure"; "Cross-Reference Type" := ItemCrossReference."Cross-Reference Type"; // Delete the following lines. IF ItemCrossReference.Description <>'' THEN BEGIN Description := ItemCrossReference.Description; "Description 2" := ''; END; END ELSE BEGIN "Cross-Reference No." := ''; "Cross-Reference Type" := "Cross-Reference Type"::" "; "Cross-Reference Type No." := ''; IF "Variant Code" <>'' THEN BEGIN ItemVariant.GET("No.","Variant Code"); Description := ItemVariant.Description; "Description 2" := ItemVariant."Description 2"; END ELSE BEGIN Item.GET("No."); Description := Item.Description; "Description 2" := Item."Description 2"; END; // End of the deleted lines. GetItemTranslation; END; END; ...Kod değiştirme
... IF Found THEN BEGIN
"Cross-Reference No." := ItemCrossReference."Cross-Reference No."; "Unit of Measure (Cross Ref.)" := ItemCrossReference."Unit of Measure"; "Cross-Reference Type" := ItemCrossReference."Cross-Reference Type"; // Add the following lines. "Cross-Reference Type No." := ItemCrossReference."Cross-Reference Type No."; END ELSE BEGIN "Cross-Reference No." := ''; "Cross-Reference Type" := "Cross-Reference Type"::" "; "Cross-Reference Type No." := ''; // End of the added lines. GetItemTranslation; END; END; ... -
Dist. tümleştirme kod (5702) GetSpecialOrders işlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... IF RECORDLEVELLOCKING THEN
LOCKTABLE; SalesHeader.TESTFIELD("Document Type",SalesHeader."Document Type"::Order); TESTFIELD("Sell-to Customer No.",SalesHeader."Sell-to Customer No."); TESTFIELD("Ship-to Code",SalesHeader."Ship-to Code"); // Delete the following line. PurchHeader.SetShipToForSpecOrder; // End of the deleted line. PurchLine.LOCKTABLE; IF NOT RECORDLEVELLOCKING THEN LOCKTABLE(TRUE,TRUE); // Only version check SalesLine.LOCKTABLE; ...Kod değiştirme
... IF RECORDLEVELLOCKING THEN
LOCKTABLE; SalesHeader.TESTFIELD("Document Type",SalesHeader."Document Type"::Order); TESTFIELD("Sell-to Customer No.",SalesHeader."Sell-to Customer No."); TESTFIELD("Ship-to Code",SalesHeader."Ship-to Code"); // Add the following lines. IF DropShptSplOrderExists(SalesHeader) THEN CheckAndAddShipToAdd(SalesHeader,TRUE); // End of the added lines. PurchLine.LOCKTABLE; IF NOT RECORDLEVELLOCKING THEN LOCKTABLE(TRUE,TRUE); // Only version check SalesLine.LOCKTABLE; ... -
Kopya belge yönetimi kod (6620) TransfldsFromSalesToPurchLine işlevinde kodu aşağıdaki gibi değiştirin:
Varolan kodu... "Expected Receipt Date" := FromSalesLine."Shipment Date";
"Bin Code" := FromSalesLine."Bin Code"; VALIDATE(Quantity,FromSalesLine."Outstanding Quantity"); VALIDATE("Return Reason Code",FromSalesLine."Return Reason Code"); VALIDATE("Direct Unit Cost"); END; ...Kod değiştirme
... "Expected Receipt Date" := FromSalesLine."Shipment Date";
"Bin Code" := FromSalesLine."Bin Code"; VALIDATE(Quantity,FromSalesLine."Outstanding Quantity"); VALIDATE("Return Reason Code",FromSalesLine."Return Reason Code"); VALIDATE("Direct Unit Cost"); // Add the following lines. Description := FromSalesLine.Description; "Description 2" := FromSalesLine."Description 2"; // End of the added lines. END; ...
Önkoşullar
Bu düzeltmeyi uygulamak için aşağıdaki ürünlerden birine sahip olmalıdır:
-
Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
-
Microsoft Dynamics NAV 2009 R2
Kaldırma bilgileri
Bu düzeltmeyi kaldıramazsınız.
Durum
Microsoft bu sorunun "Aşağıdakilere Uygulanır" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Başvurular
SE VSTF DynamicsNAV: 238210
Not: Bu, doğrudan Microsoft destek kuruluşu bünyesinde oluşturulan bir "HIZLI YAYIN" makalesidir. Burada yer alan bilgiler, oluşan sorunlara yanıt olarak olduğu gibi sağlanmıştır. Makale hızla kullanıma sunulduğu için materyallerde yazım hataları olabilir ve materyaller bildirilmeksizin herhangi bir zamanda revize edilebilir. Diğer konular için bkz. Kullanım koşulları.