นำไปใช้กับ
Microsoft Dynamics NAV 2009 R2 Dynamics NAV 2009 Service Pack 1

บทความนี้นำไปใช้กับ Microsoft Dynamics NAV สำหรับระบบภาษาอิตาลี (it)

อาการ

หลัง จากที่คุณลงรายการบัญชีการคืนเงินกับใบลดหนี้ของผู้จัดจำหน่าย รายงานรายการเรียกเก็บเงินจากบัญชีของผู้จัดจำหน่าย (12116) ไม่แสดงใบลดหนี้ ปัญหานี้เกิดขึ้นในผลิตภัณฑ์ต่อไปนี้:

  • Microsoft Dynamics NAV 2009 R2 รุ่นภาษาอิตาลี

  • รุ่นภาษาอิตาลีของ Microsoft Dynamics NAV 2009 Service Pack 1

การแก้ปัญหา

ข้อมูลโปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนจะพร้อมใช้งานได้ในขณะนี้จาก Microsoft อย่างไรก็ตาม มีเป้าหมายเพียงเพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้ นำวิธีนี้ไปใช้กับระบบที่ประสบกับปัญหาที่เฉพาะเจาะจงเท่านั้น โปรแกรมแก้ไขด่วนนี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณจะไม่รุนแรงได้รับผลกระทบจากปัญหานี้ เราขอแนะนำให้ คุณรอ service pack ถัดไปของ Microsoft Dynamics NAV 2009 หรือเวอร์ชันถัดไป Microsoft Dynamics NAV ที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้หมายเหตุ ในกรณีพิเศษ ค่าธรรมเนียมค่าใช้จ่ายสำหรับการสนับสนุนโทรศัพท์อาจถูกยกเลิกถ้า Technical Support Professional สำหรับ Microsoft Dynamics และผลิตภัณฑ์ที่เกี่ยวข้องตรวจพบว่าการปรับปรุงเฉพาะจะแก้ปัญหาของคุณ ค่าใช้จ่ายในการสนับสนุนตามปกติจะใช้กับคำถามและปัญหาในการสนับสนุนเพิ่มเติมซึ่งไม่สอดคล้องตามเกณฑ์สำหรับโปรแกรมปรับปรุงเฉพาะที่เกี่ยวข้อง

ข้อมูลการติดตั้ง

Microsoft ให้ตัวอย่างการเขียนโปรแกรมไว้สำหรับประกอบการอธิบายเท่านั้นโดยไม่มีการรับประกันไม่ว่าจะโดยชัดแจ้งหรือโดยนัย กรณีนี้รวมถึงแต่มิได้จำกัดเพียงแค่การการรับประกันโดยนัยเกี่ยวกับการจำหน่ายเป็นสินค้าหรือความเหมาะสำหรับวัตถุประสงค์เฉพาะ บทความนี้ตั้งสมมติฐานว่าคุณมีความคุ้นเคยกับภาษาการเขียนโปรแกรมที่กำลังแสดงและคุ้นเคยกับเครื่องมือที่ใช้ใน การสร้างและแก้จุดบกพร่องของขั้นตอนการดำเนินการ วิศวกรฝ่ายสนับสนุนของ Microsoft สามารถช่วยอธิบายเกี่ยวกับหน้าที่การใช้งานของกระบวนการเฉพาะ อย่างไรก็ตาม จะไม่แก้ไขตัวอย่างเหล่านี้เพื่อเพิ่มฟังก์ชัน หรือสร้างขั้นตอนเพื่อตอบสนองความต้องการเฉพาะของคุณหมายเหตุ ก่อนที่คุณติดตั้งโปรแกรมแก้ไขด่วนนี้ โปรดตรวจสอบว่า ผู้ใช้ไคลเอนต์ของ Microsoft Navision ทั้งหมดเข้าสู่ระบบออกจากระบบ ข้อมูลนี้รวมถึงผู้ใช้ไคลเอ็นต์บริการแอพลิเคชัน Navision Microsoft (NAS) คุณควรไคลเอ็นต์เฉพาะผู้ใช้ที่เข้าสู่ระบบเมื่อคุณใช้โปรแกรมแก้ไขด่วนนี้เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมีสิทธิ์การใช้งานสำหรับนักพัฒนาเราขอแนะนำว่า บัญชีผู้ใช้ ในหน้าต่างล็อกอินของ Windows หรือ ในหน้าต่างล็อกอินฐานข้อมูลสามารถกำหนดรหัสการเข้าถึงข้อมูล "ขั้นสูง" ถ้าบัญชีผู้ใช้ไม่สามารถกำหนดรหัสการบทบาท "SUPER" คุณต้องตรวจสอบว่า บัญชีผู้ใช้มีสิทธิ์ต่อไปนี้:

  • สิทธิ์การปรับเปลี่ยนสำหรับออปเจ็กต์ที่คุณจะสามารถเปลี่ยน

  • สิทธิ์ Execute สำหรับออบเจ็กต์5210 รหัสวัตถุของระบบและ สำหรับออบเจ็กต์ระบบ 9015 ID ของวัตถุ

หมายเหตุ คุณไม่จำเป็นต้องมีสิทธิ์ไปยังร้านค้าข้อมูลยกเว้นว่าคุณจำเป็นต้องซ่อมแซมข้อมูล

การเปลี่ยนแปลงรหัส

หมายเหตุทดสอบรหัสแก้ไขในสภาพแวดล้อมการควบคุมเสมอก่อนที่คุณแก้ไขการนำไปใช้กับคอมพิวเตอร์ของคุณผลิต เมื่อต้องการแก้ไขปัญหานี้ ให้ทำตามขั้นตอนเหล่านี้:

  1. เปลี่ยนรหัสในรายงานรายการบิลของบัญชีผู้จัดจำหน่าย (12116) เป็นดังนี้:รหัสที่อยู่ 1

    ...        OnAfterGetRecord=BEGIN                           CALCFIELDS("Amount (LCY)","Remaining Amt. (LCY)");// Delete the following line.                           IF ((OnlyOpened) OR ("Document Type" IN ["Document Type"::Payment,"Document Type"::"Credit Memo","Document Type"::" "])) AND                             ("Remaining Amt. (LCY)" = 0)                           THEN                             CurrReport.SKIP;...

    รหัสแทนที่ 1

    ...        OnAfterGetRecord=BEGIN                           CALCFIELDS("Amount (LCY)","Remaining Amt. (LCY)");// Add the following line.                           IF ((OnlyOpened) OR ("Document Type" IN ["Document Type"::Payment,"Document Type"::Refund,"Document Type"::" "])) AND                             ("Remaining Amt. (LCY)" = 0)                           THEN                             CurrReport.SKIP;...

    รหัสที่มีอยู่ 2

    ...                           RemainingAmountLCY := 0;                           VendorBillAmnt := 0;// Delete the following lines.                           IF ("Document Type" = "Document Type"::Invoice) OR                              ("Document Type" = "Document Type"::"Finance Charge Memo") OR                              ("Document Type" = "Document Type"::Reminder)// End of the lines.                           THEN BEGIN                             //TotalClosedByAmntLCY := "Remaining Amt. (LCY)"; //IT0002 - IT0004                             TotalForVendor := TotalForVendor + "Amount (LCY)";...

    รหัสแทนที่ 2

    ...                           RemainingAmountLCY := 0;                           VendorBillAmnt := 0;// Add the following lines.                            IF "Document Type" IN                               ["Document Type"::Invoice,                                "Document Type"::"Credit Memo",                                "Document Type"::"Finance Charge Memo",                                "Document Type"::Reminder]// End of the lines.                           THEN BEGIN                             //TotalClosedByAmntLCY := "Remaining Amt. (LCY)"; //IT0002 - IT0004                             TotalForVendor := TotalForVendor + "Amount (LCY)";...

    รหัสที่มีอยู่ 3

    ...                      END;        OnAfterGetRecord=BEGIN                           // IT0003.begin                           VendLedgEntry3.GET("Applied Vend. Ledger Entry No.");                           VendLedgEntry3.CALCFIELDS("Original Amt. (LCY)");...

    รหัสแทนที่ 3

    ...                      END;        OnAfterGetRecord=BEGIN// Add the following lines.                            IF ("Entry No." = 0) OR ("Unapplied by Entry No." <> 0) OR                               ("Document Type" IN ["Document Type"::Payment,"Document Type"::Refund,"Document Type"::" "])                            THEN                              ShowDetailedVendorLedgerEntry := TRUE                            ELSE                              ShowDetailedVendorLedgerEntry := FALSE;// End of the lines.                           // IT0003.begin                           VendLedgEntry3.GET("Applied Vend. Ledger Entry No.");                           VendLedgEntry3.CALCFIELDS("Original Amt. (LCY)");...

    รหัสที่มีอยู่ 4

    ...            SectionWidth=27750;            SectionHeight=846;            OnPreSection=BEGIN// Delete the following lines.                            // IT0008.begin                            // IT0011.begin                            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                            // IT0011.end                              CurrReport.SHOWOUTPUT(FALSE)                            ELSE                              CurrReport.SHOWOUTPUT(TRUE);                            // IT0008.end                            // IT0009.begin                            //IF ("Unapplied by Entry No." <> 0) THEN                            //  CurrReport.SHOWOUTPUT(FALSE);                            // IT0009.end// End of the lines.                         END;          }...

    รหัสแทนที่ 4

    ...            SectionWidth=27750;            SectionHeight=846;            OnPreSection=BEGIN// Add the following line.                            CurrReport.SHOWOUTPUT(ShowDetailedVendorLedgerEntry)                         END;          }...

    รหัสที่มีอยู่ 5

    ...                                                         ForeColor=65535;                                                         SourceExpr="Unapplied by Entry No.";                                                         DataSetFieldName=Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__ }          }           }        { PROPERTIES...

    รหัสแทนที่ 5

    ...                                                         ForeColor=65535;                                                         SourceExpr="Unapplied by Entry No.";                                                         DataSetFieldName=Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__ }// Add the following lines.             { 1130084;TextBox   ;27150;0    ;150  ;423  ;Visible=No;                                                          SourceExpr=ShowDetailedVendorLedgerEntry;                                                          DataSetFieldName=ShowDetailedVendorLedgerEntry }// End of the lines.          }           }        { PROPERTIES...
  2. เปลี่ยนรหัสของตัวแปรส่วนกลางในรายงานรายการบิลของบัญชีผู้จัดจำหน่าย (12116) เป็นดังนี้:รหัสที่มีอยู่

    ...      TotalVendorBillAmnt@1130010 : Decimal;      VendLedgEntry3@1130011 : Record 25;      VendorLedgerEmtryTypeINT@1102601000 : Integer;    BEGIN    {...

    รหัสแทน

    ...      TotalVendorBillAmnt@1130010 : Decimal;      VendLedgEntry3@1130011 : Record 25;      VendorLedgerEmtryTypeINT@1102601000 : Integer;// Add the following line.       ShowDetailedVendorLedgerEntry@1130012 : Boolean INDATASET;    BEGIN    {...
  3. เปลี่ยนรหัสในรายงานรายการบิลของบัญชีผู้จัดจำหน่าย (12116) เป็นดังนี้:รหัสที่อยู่ 1

    ...                    </TableCell>                  </TableCells>                  <Visibility>// Delete 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>...

    รหัสแทนที่ 1

    ...                    </TableCell>                  </TableCells>                  <Visibility>// Add the following line.                     <Hidden>=IIF(Fields!ShowDetailedVendorLedgerEntry.Value,TRUE,FALSE)</Hidden>                  </Visibility>                </TableRow>                <TableRow>...

    รหัสที่มีอยู่ 2

    ...        <Field Name="Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_">          <DataField>Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_</DataField>        </Field>      </Fields>      <Query>        <CommandText />...

    รหัสแทนที่ 2

    ...        <Field Name="Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_">          <DataField>Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_</DataField>        </Field>// Add the following lines.         <Field Name="ShowDetailedVendorLedgerEntry">           <DataField>ShowDetailedVendorLedgerEntry</DataField>         </Field>// End of the lines.      </Fields>      <Query>        <CommandText />...

ข้อกำหนดเบื้องต้น

คุณต้องมีหนึ่งผลิตภัณฑ์ต่อไปนี้ติดตั้งอยู่เพื่อใช้โปรแกรมแก้ไขด่วนนี้:

  • Microsoft Dynamics NAV 2009 R2 รุ่นภาษาอิตาลี

  • รุ่นภาษาอิตาลีของ Microsoft Dynamics NAV 2009 Service Pack 1

ข้อมูลการเอาออก

คุณไม่สามารถเอาโปรแกรมแก้ไขด่วนนี้

สถานะ

Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"

หมายเหตุ นี่คือบทความ "เผยแพร่เร็ว" ที่สร้างขึ้นโดยตรงจากภายใน Microsoft สนับสนุนองค์กร ข้อมูลในที่นี้ให้ไว้ตามสภาพ เพื่อตอบสนองกับปัญหาที่เกิดขึ้นใหม่ เป็นผลมาจากความเร็วในการทำให้พร้อมใช้งาน วัสดุอาจรวมถึงข้อผิดพลาดการพิมพ์ผิด และอาจแก้ไขได้ตลอดเวลาโดยไม่ต้องแจ้งให้ทราบ ดูข้อตกลงการใช้สำหรับข้อควรพิจารณาอื่น ๆ

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ