โปรแกรมแก้ไขด่วนนี้ใช้กับบริการการรายงาน Microsoft SQL Server 2012 (SSRS 2012) และบริการการรายงาน SQL Server 2014 (SSRS 2014)
อาการ
ลองทำตามสถานการณ์ต่อไปนี้:
คุณมีรายงานที่มีกล่องข้อความเพียงกล่องเดียวใน Microsoft SQL Server 2012 Reporting Services (SSRS 2014)
คุณตั้งค่านิพจน์สําหรับกล่องข้อความเป็น Chr (n) โดย n คือโค้ดควบคุม C0 (โค้ดที่ไม่สามารถพิมพ์ได้) ค่าอื่นที่ไม่ใช่ค่าใดค่าหนึ่งต่อไปนี้:
9 (แท็บ U+0009)
10 (U+000A ของตัวดึงข้อมูลบรรทัด),
13 (U+000D CARRIAGE RETURN),
ค่าอักขระควบคุม C0 (0 ถึง 31)แสดงรายงาน ส่งออกไปยัง Excel (รูปแบบ Office Open XML - xlsx) แล้วเปิดเวิร์กบุ๊ก Excel
ถ้ารายงานมีโค้ดตัวควบคุม C0 ในสถานการณ์นี้ ส่วนขยายการแสดง OpenXML ของ Excel ที่รวมอยู่ใน SSRS 2012 จะสร้างเวิร์กบุ๊กที่ Excel รับรู้ว่าไม่ถูกต้อง
หมายเหตุ ปัญหานี้ยังเกิดขึ้นใน SSRS 2008 R2 ด้วย
การแก้ปัญหา
ปัญหานี้ได้รับการแก้ไขครั้งแรกในการอัปเดตแบบสะสมของ SQL Server ต่อไปนี้
การอัปเดตสะสม 1 สําหรับ SQL Server 2014 /en-us/help/2931693
การอัปเดตสะสม 9 สําหรับ SQL Server 2012 SP1 /en-us/help/2931078
เกี่ยวกับการอัปเดตสะสมสําหรับ SQL Server
การอัปเดตแบบสะสมใหม่แต่ละรายการสําหรับ SQL Server จะมีโปรแกรมแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตแบบสะสมครั้งก่อนหน้า ตรวจดูการอัปเดตแบบสะสมล่าสุดสําหรับ SQL Server:
สถานะ
Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"