Belirtiler
"Hayır" kayıtları, bu tutarı sıfır olarak geçerli faturalar ve Microsoft Dynamics NAV 2009 İspanyolca sürümünde bu faturalar dahil olmak üzere toplam sayısını verir sayar. Faturaları tutardır sıfır 340 model dosyasında gösterilmeyen gerekir ve "Hayır, kayıtları" toplama ya da dahil değildir. Bu sorunu çözmek için kod değişiklikleri bölümündeki adımları izleyin. Bu sorun aşağıdaki ürünlerde oluşur:
-
İspanyolca sürümü için Microsoft Dynamics NAV 2009 R2
-
İspanyolca sürümü için Microsoft Dynamics NAV 2009 SP1
Çö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ı olabilir. Ancak, işlevsellik sağlamak veya yordamlar, belirli gereksinimlerinizi karşılayacak şekilde geliştirmek amacıyla bu örnekleri değiştirmezler.
Not: Bu düzeltmeyi yüklemeden önce tüm Microsoft Dynamics NAV istemci kullanıcıların sistem kaydedildiğini doğrulayın. Bu, Microsoft Dynamics NAV uygulama sunucusu (NAS) hizmetleri 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.
-
Sistem nesne kimliği 9015 ve Sistem nesnesi kimliği 5210 nesne için Execute izni
nesne.
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:
-
CalcTotals işlevinde olun 340 bildirimi raporu (10743) kodu aşağıdaki gibi değiştirin:
Varolan kodu 1...VAR
VATEntry6@1100000 : Record 254;
VATEntry7@1100002 : Record 254;
BEGIN
VATEntryTemporary.DELETEALL;
VATEntry6.RESET;
...Değiştirme kodu 1
...VAR
VATEntry6@1100000 : Record 254;
VATEntry7@1100002 : Record 254;
// Add the following line.
TempUnrealVATBuffer@1100001 : TEMPORARY Record 10704;
// End of the added line.
BEGIN
VATEntryTemporary.DELETEALL;
VATEntry6.RESET;
...Varolan kodu 2
...VATEntry7.SETRANGE(VATEntry7.Type,VATEntryTemporary.Type);
IF VATEntry7.FINDFIRST THEN
VATBuffer.DELETEALL;
REPEAT
VATBuffer."VAT %" := VATEntry7."VAT %";
VATBuffer."EC %" := VATEntry7."EC %";
...Değiştirme kodu 2
...VATEntry7.SETRANGE(VATEntry7.Type,VATEntryTemporary.Type);
IF VATEntry7.FINDFIRST THEN
VATBuffer.DELETEALL;
// Add the following line.
TempUnrealVATBuffer.DELETEALL;
// End of the added line.
REPEAT
VATBuffer."VAT %" := VATEntry7."VAT %";
VATBuffer."EC %" := VATEntry7."EC %";
...Varolan kodu 3
... IF VATEntry7.Type = VATEntry7.Type::Sale THEN BEGIN
VATEntry7.Base := -VATEntry7.Base;
VATEntry7.Amount := -VATEntry7.Amount;
// Delete the following lines.
END;
IF VATBuffer.FIND THEN BEGIN
VATBuffer.Base := VATBuffer.Base + VATEntry7.Base;
VATBuffer.Amount := VATBuffer.Amount + VATEntry7.Amount;
IF (VATEntry7.Type = VATEntry7.Type::Sale) AND (VATEntry7."EC %" <> 0) THEN
VATBuffer."EC Amount" := VATBuffer."EC Amount" + ROUND(VATEntry7.Base * VATEntry7."EC %" / 100);
VATBuffer.MODIFY;
END ELSE BEGIN
VATBuffer.Base := VATEntry7.Base;
VATBuffer.Amount := VATEntry7.Amount;
VATBuffer."EC Amount" := 0;
IF (VATEntry7.Type = VATEntry7.Type::Sale) AND (VATEntry7."EC %" <> 0) THEN
VATBuffer."EC Amount" := ROUND(VATEntry7.Base * VATEntry7."EC %" / 100);
VATBuffer.INSERT;
END;
// End of the deleted lines.
UNTIL VATEntry7.NEXT = 0;
IF VATBuffer.FINDFIRST THEN
NoofRecords := NoofRecords + VATBuffer.COUNT;
...Değiştirme kodu 3
...IF VATEntry7.Type = VATEntry7.Type::Sale THEN BEGIN
VATEntry7.Base := -VATEntry7.Base;
VATEntry7.Amount := -VATEntry7.Amount;
// Add the following lines.
VATEntry7."Unrealized Base" := -VATEntry7."Unrealized Base";
VATEntry7."Unrealized Amount" := -VATEntry7."Unrealized Amount";
END;
IF VATBuffer.FIND THEN BEGIN
UpdateVATBuffer(VATBuffer,VATEntry7);
VATBuffer.MODIFY;
END ELSE BEGIN
VATBuffer.INIT;
UpdateVATBuffer(VATBuffer,VATEntry7);
VATBuffer.INSERT;
END;
TempUnrealVATBuffer := VATBuffer;
IF TempUnrealVATBuffer.FIND THEN BEGIN
UpdateUnrealVATBuffer(TempUnrealVATBuffer,VATEntry7);
TempUnrealVATBuffer.MODIFY;
END ELSE BEGIN
TempUnrealVATBuffer.INIT;
UpdateUnrealVATBuffer(TempUnrealVATBuffer,VATEntry7);
TempUnrealVATBuffer.INSERT;
END;
IF IsEmptyVATBuffer(VATBuffer) AND IsEmptyVATBuffer(TempUnrealVATBuffer) THEN BEGIN
VATBuffer.DELETE;
TempUnrealVATBuffer.DELETE;
END;
// End of the added lines.
UNTIL VATEntry7.NEXT = 0;
IF VATBuffer.FINDFIRST THEN
NoofRecords := NoofRecords + VATBuffer.COUNT;
... -
IsEmptyVATBuffer işlevinde olun 340 bildirimi raporu (10743) kodu aşağıdaki gibi değiştirin:
Varolan kodu...UNTIL VATEntryTemporary.NEXT = 0;
END;
PROCEDURE GetSalesShipmentDate@1100022(DocumentNo@1100000 : Code[20]) : Date;
VAR
SalesShipmentHeader@1100001 : Record 110;
...Kod değiştirme
...UNTIL VATEntryTemporary.NEXT = 0;
END;
// Add the following lines.
LOCAL PROCEDURE IsEmptyVATBuffer@1100065(TempVATBuffer@1100000 : Record 10704) : Boolean;
BEGIN
WITH TempVATBuffer DO
EXIT((Base = 0) AND (Amount = 0) AND ("EC Amount" = 0));
END;
LOCAL PROCEDURE UpdateVATBuffer@1100061(VAR TempVATBuffer@1100000 : Record 10704;AddedVATEntry@1100001 : Record 254);
BEGIN
WITH TempVATBuffer DO BEGIN
Base += AddedVATEntry.Base;
Amount += AddedVATEntry.Amount;
IF (AddedVATEntry.Type = AddedVATEntry.Type::Sale) AND (AddedVATEntry."EC %" <> 0) THEN
"EC Amount" += ROUND(AddedVATEntry.Base * AddedVATEntry."EC %" / 100);
END;
END;
LOCAL PROCEDURE UpdateUnrealVATBuffer@1100063(VAR TempVATBuffer@1100000 : Record 10704;AddedVATEntry@1100001 : Record 254);
BEGIN
WITH TempVATBuffer DO BEGIN
Base += AddedVATEntry."Unrealized Base";
Amount += AddedVATEntry."Unrealized Amount";
IF (AddedVATEntry.Type = AddedVATEntry.Type::Sale) AND (AddedVATEntry."EC %" <> 0) THEN
"EC Amount" += ROUND(AddedVATEntry."Unrealized Base" * AddedVATEntry."EC %" / 100);
END;
END;
// End of the added lines.
PROCEDURE GetSalesShipmentDate@1100022(DocumentNo@1100000 : Code[20]) : Date;
VAR
SalesShipmentHeader@1100001 : Record 110;
...
Önkoşullar
Bu düzeltmeyi uygulamak için aşağıdaki ürünlerden birine sahip olmalıdır:
-
İspanyolca sürümü için Microsoft Dynamics NAV 2009 R2
-
İspanyolca sürümü için Microsoft Dynamics NAV 2009 SP1
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.
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. Kullanım koşullarıdiğer konular için bkz.