Bu makale, İtalyanca (it) dil yerel ayarı için Microsoft Dynamics NAV için geçerlidir.
Belirtiler
Microsoft Dynamics NAV 2009 Service Pack 1'in (SP1) İtalyanca sürümünde iade faturası uygulanan bir fatura kullandığınızı varsayalım. Müşteri Faturaları Listesi raporunu (12117) ve Satıcı Hesabı Faturaları Listesi raporunu (12116) çalıştırdığınızda, raporlar faturaya uygulanan iade dekontlarını beklenmedik şekilde iki kez yazdırır.
Çözüm
Düzeltme bilgileri
Artık Microsoft, desteklenen bir düzeltme sunmaktadır. Ancak, yalnızca bu makalede açıklanan sorunu düzeltmeye yöneliktir. Bunu yalnızca bu özel sorunun yaşandığı sistemlere uygulayın. Bu düzeltme için ek sınamalar gerekebilir. Bu nedenle, bu sorundan ciddi bir şekilde etkilenmiyorsanız, bir sonraki Microsoft Dynamics NAV 2009 hizmet paketini veya bu düzeltmeyi içeren bir sonraki Microsoft Dynamics NAV sürümünü beklemenizi öneririz.
Not Özel durumlarda, Microsoft Dynamics ve ilgili ürünler için bir Teknik Destek Uzmanı belirli bir güncelleştirmenin sorunu çözeceğini belirlerse, normalde destek aramaları için yapılan ücretler iptal edilebilir. Ek destek soruları ve söz konusu güncelleştirme için uygun olmayan sorunlara normal destek ücretleri uygulanır.
Yükleme bilgileri
Microsoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; açık veya zımni hiçbir garanti vermez. Bu, satılabilirlik veya belirli bir amaca uygunluk ile ilgili zımni garantileri içerir, ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama diline ve prosedürler oluşturmak ve prosedürlerde hata ayıklamak için kullanılan araçlara aşina olduğunuzu varsaymaktadır. Microsoft destek mühendisleri, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler.
Not Bu düzeltmeyi yüklemeden önce, tüm Microsoft Navision istemcisi kullanıcılarının sistem oturumunu kapattığını doğrulayın. Bu, Microsoft Navision Application Services (NAS) istemci kullanıcılarını içerir. Bu düzeltmeyi uyguladığınızda oturum açan tek istemci kullanıcı siz olmalısınız.
Bu düzeltmeyi uygulamak için bir geliştirici lisansınız olmalıdır.
Windows Oturum Açma veya Veritabanı Oturum Açma penceresindeki kullanıcı hesabına "SUPER" rol kimliğinin atanmasını öneririz. Kullanıcı hesabına "SUPER" rol kimliği atanamıyorsa, kullanıcı hesabının aşağıdaki izinlere sahip olduğunu doğrulamanız gerekir:
- Değiştireceğiniz nesnenin Değiştirme izni.
- Sistem Nesne Kimliği 5210 nesnesi ve Sistem Nesne Kimliği 9015 nesnesi için Yürütme izni.
Not: Veri onarımı gerçekleştirmeniz gerekmediği sürece, veri depoları üzerinde haklarınız olması gerekmez.
Kod değişiklikleri
Not: Kod düzeltmelerini üretim bilgisayarlarınıza uygulamadan önce her zaman denetimli bir ortamda sınayın.
Bu sorunu gidermek için aşağıdaki adımları izleyin:
Satıcı Hesabı Faturaları Listesi raporundaki (12116) 2 Numaralı Veri Kaleminin kodunu aşağıdaki gibi değiştirin:
Mevcut kod... END; OnAfterGetRecord=BEGIN // Delete the following lines. IF (("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ")) AND (Open = FALSE) THEN // End of the lines. CurrReport.SKIP; CALCFIELDS("Amount (LCY)","Remaining Amt. (LCY)"); ...Değişim kodu
... END; OnAfterGetRecord=BEGIN // Add the following lines. IF (("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ") OR ("Document Type" = "Document Type"::"Credit Memo")) AND NOT Open THEN // End of the lines. CurrReport.SKIP; CALCFIELDS("Amount (LCY)","Remaining Amt. (LCY)"); ...Satıcı Hesabı Faturaları Listesi raporundaki (12116) Veri Maddesi Numarası 2 Bölümlerinin kodunu aşağıdaki gibi değiştirin:
Mevcut kod... DataSetFieldName=VendLedgEntry1__External_Document_No___Control1130023 } { 1130024;TextBox ;1950 ;423 ;1350 ;423 ;SourceExpr="Document Type"; DataSetFieldName=VendLedgEntry1__Document_Type__Control1130024 } } } { PROPERTIES ...Değişim kodu
... DataSetFieldName=VendLedgEntry1__External_Document_No___Control1130023 } { 1130024;TextBox ;1950 ;423 ;1350 ;423 ;SourceExpr="Document Type"; DataSetFieldName=VendLedgEntry1__Document_Type__Control1130024 } // Add the following lines. { 1130082;TextBox ;27600;0 ;150 ;423 ;Visible=No; ForeColor=65535; SourceExpr=FORMAT("Document Type",0,2); DataSetFieldName=VendLedgEntry1_DocumentType } // End of the lines. } } { PROPERTIES ...Satıcı Hesabı Faturaları Listesi raporundaki (12116) Veri Maddesi Numarası 4 Bölümlerinin kodunu aşağıdaki gibi değiştirin:
Mevcut kod 1... SectionWidth=27750; SectionHeight=846; OnPreSection=BEGIN // Delete the following lines. IF (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::Payment) OR (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::" ") THEN // End of the lines. CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); ...Değiştirme kodu 1
... SectionWidth=27750; SectionHeight=846; OnPreSection=BEGIN // Add the following lines. IF (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::Payment) OR (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::"Credit Memo") OR (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::" ") OR ("Unapplied by Entry No." <> 0) THEN // End of the lines. CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); ...Mevcut kod 2
... CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); // Delete the following lines. IF ("Unapplied by Entry No." <> 0) THEN CurrReport.SHOWOUTPUT(FALSE); // End of the lines. END; } ...Değiştirme kodu 2
... CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); END; } ...Satıcı Hesabı Faturaları Listesi raporundaki (12116) Belgelerin kodunu aşağıdaki gibi değiştirin:
Mevcut kod 1... </TableCell> </TableCells> <Visibility> // Delete the following line. <Hidden>=IIF((Fields!Detailed_Vendor_Ledg__Entry_Entry_No_.Value=0 or Fields!Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__.Value<>0),TRUE,FALSE)</Hidden> // End of the line. </Visibility> </TableRow> <TableRow> ...Değiştirme kodu 1
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!Detailed_Vendor_Ledg__Entry_Entry_No_.Value=0 OR Fields!Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__.Value<>0 OR Fields!VendLedgEntry1_DocumentType.Value="1" OR Fields!VendLedgEntry1_DocumentType.Value="3" OR Fields!VendLedgEntry1_DocumentType.Value="0", TRUE,FALSE)</Hidden> // End of the lines. </Visibility> </TableRow> <TableRow> ...Mevcut kod 2
... </TableCell> </TableCells> <Visibility> // Delete the following lines. <Hidden>=IIF(Fields!VendLedgEntry1__Document_Type_.Value="Invoice" OR Fields!VendLedgEntry1__Document_Type_.Value="Finance Charge Memo" OR Fields!VendLedgEntry1__Document_Type_.Value="Reminder" OR Fields!VendLedgEntry1__Document_Type_.Value="Credit Memo", // End of the lines. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...Değiştirme kodu 2
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!VendLedgEntry1_DocumentType.Value="2" OR Fields!VendLedgEntry1_DocumentType.Value="4" OR Fields!VendLedgEntry1_DocumentType.Value="5" OR Fields!VendLedgEntry1_DocumentType.Value="3", // End of the lines. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...Mevcut kod 3
... </TableCell> </TableCells> <Visibility> // Delete the following lines. <Hidden>=IIF(Fields!VendLedgEntry1__Document_Type_.Value<>"Invoice" AND Fields!VendLedgEntry1__Document_Type_.Value<>"Finance Charge Memo" AND Fields!VendLedgEntry1__Document_Type_.Value<>"Reminder" AND Fields!VendLedgEntry1__Document_Type_.Value<>"Credit Memo" AND // End of the lines. Fields!VendLedgEntry1__Remaining_Amt___LCY__.Value<>0, FALSE,TRUE)</Hidden> </Visibility> ...Değiştirme kodu 3
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!VendLedgEntry1_DocumentType.Value<>"2" AND Fields!VendLedgEntry1_DocumentType.Value<>"4" AND Fields!VendLedgEntry1_DocumentType.Value<>"5" AND Fields!VendLedgEntry1_DocumentType.Value<>"3" AND // End of the lines. Fields!VendLedgEntry1__Remaining_Amt___LCY__.Value<>0, FALSE,TRUE)</Hidden> </Visibility> ...Mevcut kod 4
... <Field Name="VendLedgEntry1__Amount__LCY___Control1130017Format"> <DataField>VendLedgEntry1__Amount__LCY___Control1130017Format</DataField> </Field> <Field Name="Vendor_BalanceCaption"> <DataField>Vendor_BalanceCaption</DataField> </Field> ...Değiştirme kodu 4
... <Field Name="VendLedgEntry1__Amount__LCY___Control1130017Format"> <DataField>VendLedgEntry1__Amount__LCY___Control1130017Format</DataField> </Field> // Add the following lines. <Field Name="VendLedgEntry1_DocumentType"> <DataField>VendLedgEntry1_DocumentType</DataField> </Field> // End of the lines. <Field Name="Vendor_BalanceCaption"> <DataField>Vendor_BalanceCaption</DataField> </Field> ...Müşteri Faturaları Listesi raporundaki (12117) 2 Numaralı Veri Kaleminin kodunu aşağıdaki gibi değiştirin:
Mevcut kod... END; OnAfterGetRecord=BEGIN // Delete the following lines. IF (("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ")) AND (Open = FALSE) THEN // End of the lines. CurrReport.SKIP; ...Değişim kodu
... END; OnAfterGetRecord=BEGIN // Add the following lines. IF (("Document Type" = "Document Type"::Payment) OR ("Document Type" = "Document Type"::" ") OR ("Document Type" = "Document Type"::"Credit Memo")) AND NOT Open THEN // End of the lines. CurrReport.SKIP; CALCFIELDS("Amount (LCY)","Remaining Amt. (LCY)"); ...Müşteri Faturaları Listesi raporundaki (12117) Veri Öğesi Numarası 2 Bölümlerinin kodunu aşağıdaki gibi değiştirin:
Mevcut kod... ForeColor=65535; SourceExpr=CustLedgEntry1."Bank Receipt"; DataSetFieldName=CustLedgEntry1_CustLedgEntry1__Bank_Receipt_ } } } { PROPERTIES ...Değişim kodu
... ForeColor=65535; SourceExpr=CustLedgEntry1."Bank Receipt"; DataSetFieldName=CustLedgEntry1_CustLedgEntry1__Bank_Receipt_ } // Add the following lines. { 1130008;TextBox ;24150;423 ;150 ;423 ;Visible=No; ForeColor=65535; SourceExpr=FORMAT("Document Type",0,2); DataSetFieldName=CustLedgEntry1_DocumentType } // End of the lines. } } { PROPERTIES ...Müşteri Faturaları Listesi raporundaki (12117) Veri Kalemi Numarası 4 Bölümlerinin kodunu aşağıdaki gibi değiştirin:
Mevcut kod 1... SectionWidth=24450; SectionHeight=846; OnPreSection=BEGIN // Delete the following lines. IF (CustLedgEntry1."Document Type" = CustLedgEntry1."Document Type"::Payment) OR (CustLedgEntry1."Document Type" = CustLedgEntry1."Document Type"::" ") THEN // End of the lines. CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); ...Değiştirme kodu 1
... SectionWidth=24450; SectionHeight=846; OnPreSection=BEGIN // Add the following lines. IF (CustLedgEntry1."Document Type" = CustLedgEntry1."Document Type"::Payment) OR (CustLedgEntry1."Document Type" = CustLedgEntry1."Document Type"::"Credit Memo") OR (CustLedgEntry1."Document Type" = CustLedgEntry1."Document Type"::" ") OR ("Unapplied by Entry No." <> 0) THEN // End of the lines. CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); ...Mevcut kod 2
... CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); // Delete the following lines. IF ("Unapplied by Entry No." <> 0) THEN CurrReport.SHOWOUTPUT(FALSE); // End of the lines. END; } ...Değiştirme kodu 2
... CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); END; } ...Müşteri Faturaları Listesi raporundaki (12117) Belgelerin kodunu aşağıdaki gibi değiştirin:
Mevcut kod 1... </TableCell> </TableCells> <Visibility> // Delete the following line. <Hidden>=IIF(Fields!Detailed_Cust__Ledg__Entry_Entry_No_.Value=0,TRUE,FALSE)</Hidden> // End of the line. </Visibility> </TableRow> <TableRow> ...Değiştirme kodu 1
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!Detailed_Cust__Ledg__Entry_Entry_No_.Value=0 OR Fields!CustLedgEntry1_DocumentType.Value="0" OR Fields!CustLedgEntry1_DocumentType.Value="1" OR Fields!CustLedgEntry1_DocumentType.Value="3", TRUE,FALSE)</Hidden> // End of the lines. </Visibility> </TableRow> <TableRow> ...Mevcut kod 2
... </TableCell> </TableCells> <Visibility> // Delete the following lines. <Hidden>=IIF(Fields!CustLedgEntry1__Document_Type_.Value="Invoice" OR Fields!CustLedgEntry1__Document_Type_.Value="Finance Charge Memo" OR Fields!CustLedgEntry1__Document_Type_.Value="Reminder" OR Fields!CustLedgEntry1__Document_Type_.Value="Credit Memo", // End of the lines. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...Değiştirme kodu 2
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!CustLedgEntry1_DocumentType.Value="2" OR Fields!CustLedgEntry1_DocumentType.Value="4" OR Fields!CustLedgEntry1_DocumentType.Value="5" OR Fields!CustLedgEntry1_DocumentType.Value="3", // End of the lines. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...Mevcut kod 3
... </TableCell> </TableCells> <Visibility> // Delete the following lines. <Hidden>=IIF(Fields!CustLedgEntry1__Document_Type_.Value<>"Invoice" AND Fields!CustLedgEntry1__Document_Type_.Value<>"Finance Charge Memo" AND Fields!CustLedgEntry1__Document_Type_.Value<>"Reminder" AND Fields!CustLedgEntry1__Document_Type_.Value<>"Credit Memo" AND // End of the lines. Fields!CustLedgEntry1__Remaining_Amt___LCY__.Value<>0 AND Fields!CustLedgEntry1_CustLedgEntry1__Bank_Receipt_.Value=FALSE, FALSE,TRUE)</Hidden> ...Değiştirme kodu 3
... </TableCell> </TableCells> <Visibility> // Add the following lines. <Hidden>=IIF(Fields!CustLedgEntry1_DocumentType.Value<>"2" AND Fields!CustLedgEntry1_DocumentType.Value<>"4" AND Fields!CustLedgEntry1_DocumentType.Value<>"5" AND Fields!CustLedgEntry1_DocumentType.Value<>"3" AND // End of the lines. Fields!CustLedgEntry1__Remaining_Amt___LCY__.Value<>0 AND Fields!CustLedgEntry1_CustLedgEntry1__Bank_Receipt_.Value=FALSE, FALSE,TRUE)</Hidden> ...Mevcut kod 4
... <Field Name="CustLedgEntry1_CustLedgEntry1__Bank_Receipt_"> <DataField>CustLedgEntry1_CustLedgEntry1__Bank_Receipt_</DataField> </Field> <Field Name="Customer_BalanceCaption"> <DataField>Customer_BalanceCaption</DataField> </Field> ..Değiştirme kodu 4
... <Field Name="CustLedgEntry1_CustLedgEntry1__Bank_Receipt_"> <DataField>CustLedgEntry1_CustLedgEntry1__Bank_Receipt_</DataField> </Field> // Add the following lines. <Field Name="CustLedgEntry1_DocumentType"> <DataField>CustLedgEntry1_DocumentType</DataField> </Field> // End of the lines. <Field Name="Customer_BalanceCaption"> <DataField>Customer_BalanceCaption</DataField> </Field> ...
Önkoşullar
Bu düzeltmeyi uygulamak için Microsoft Dynamics NAV 2009 Service Pack 1'in İtalyanca sürümü yüklü olmalıdır.
Kaldırma bilgileri
Bu düzeltmeyi kaldıramazsınız.
Durum
Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.
Not: Bu, doğrudan Microsoft destek kuruluşu tarafından hazırlanmış bir "HIZLI YAYIMLAMA" makalesidir. Burada yer alan bilgiler acil sorunlar karşısında bu şekliyle verilir. Kullanıma sunma hızının bir sonucu olarak, materyaller yazım hataları içerebilir ve herhangi bir zamanda önceden haber verilmeksizin revize edilebilir. Göz önünde bulundurulması gereken diğer hususlar için Kullanım Koşulları'na bakın.